I've been working extensively on the Umbraco core lately so I'm pretty familiar with the patch process.
First, if you're not already registered on Codeplex, do so here.
Second, if it's a new feature rather than a bug fix, then create a new issue here, which once saved will give you a work item number.
Third, once you've downloaded the Umbraco source (latest version here, under branches/rb403 - you need to download the whole source tree though, which is 100MB+) and written your modification to the umbraco core, you then create a patch here and upload the modified file along with a detailed description of the modification you've made, and associate it with the work item # you created in step 2.
Job done. Umbraco core will then review your suggestion and associated core changes and either approve or decline them. If it's a popular feature (which yours sounds like it could well be) then reply here with the link to the issue so other forum users can vote for it if they feel it's a good idea (my work item for getting Umbraco to work in Medium Trust has five votes, and you can see the associated patches I've submitted in the Codeplex patch list).
As far as I know you can submit anything you want as a patch providing your attachment is less than 250MB. As the current Umbraco source is less than 100MB this gives you plenty of scope :-) but I'd personally suggest uploading only the files you have changed. If you've made extensive modifications to a single project inside Umbraco (such as umbraco.businesslogic or umbraco.providers etc.) I suggest uploading the whole project, that way the Umbraco team can then do an SVN diff against your files to see what's changed in the entire project.
P.S. A patch file can either be a single .cs file or it can be a ZIP of an entire project, Codeplex doesn't place a restriction on that. If you're modifying more than half-a-dozen files, I'd suggest uploading a ZIP file of the individual core project (not the whole source). Luckily my changes so far have just been single-file ones :-)
We're working on a whole new media library for 4.1 which supports caching, so in this case I wouldn't spend too many resources - we'll be publishing the updated roadmap for v4.1 the coming week :-)
In general patches for bugfixes/minor features are reviewed, but when it comes to bigger features get in touch with the core team first instead. That said we should have a page somewhere on how to contribute to the core!
Thanks to Ben for his useful explaination, it is a question that I have also tried to ask a few times and this is definitely the clearest answer.
@Niels / @Sebastiaan it would be great to have a page on the wiki, good idea.. if you do create it Sebastiaan, it would be good to add a link to this thread for anyone who finds it in the future.
How to submit patches to the core?
As much as I enjoy creating useful packages for Umbraco, I do feel that media caching should actually be available from the Umbraco core.
I'm not entirely certain about the process of submitting patches and getting them approved.
First of all, what does a patch file consist of? How would I create one? I seem to be having difficulty finding documentation about that.
Second of all, would my patch even get considered, is this something that the core team would be interested in, and how should I know?
Hi Sebastiaan,
I've been working extensively on the Umbraco core lately so I'm pretty familiar with the patch process.
First, if you're not already registered on Codeplex, do so here.
Second, if it's a new feature rather than a bug fix, then create a new issue here, which once saved will give you a work item number.
Third, once you've downloaded the Umbraco source (latest version here, under branches/rb403 - you need to download the whole source tree though, which is 100MB+) and written your modification to the umbraco core, you then create a patch here and upload the modified file along with a detailed description of the modification you've made, and associate it with the work item # you created in step 2.
Job done. Umbraco core will then review your suggestion and associated core changes and either approve or decline them. If it's a popular feature (which yours sounds like it could well be) then reply here with the link to the issue so other forum users can vote for it if they feel it's a good idea (my work item for getting Umbraco to work in Medium Trust has five votes, and you can see the associated patches I've submitted in the Codeplex patch list).
Hope this helps.
Benjamin
Thank you, fantastic explanation Benjamin! I will start working on this soon.
Do you know if I can submit a whole changeset as a patch, or do I need to submit a patch per file?
As far as I know you can submit anything you want as a patch providing your attachment is less than 250MB. As the current Umbraco source is less than 100MB this gives you plenty of scope :-) but I'd personally suggest uploading only the files you have changed. If you've made extensive modifications to a single project inside Umbraco (such as umbraco.businesslogic or umbraco.providers etc.) I suggest uploading the whole project, that way the Umbraco team can then do an SVN diff against your files to see what's changed in the entire project.
P.S. A patch file can either be a single .cs file or it can be a ZIP of an entire project, Codeplex doesn't place a restriction on that. If you're modifying more than half-a-dozen files, I'd suggest uploading a ZIP file of the individual core project (not the whole source). Luckily my changes so far have just been single-file ones :-)
Thanks! I probably would only need to update one file, so I should be fine, but I thought maybe patch files have some kind of format or something.
We're working on a whole new media library for 4.1 which supports caching, so in this case I wouldn't spend too many resources - we'll be publishing the updated roadmap for v4.1 the coming week :-)
In general patches for bugfixes/minor features are reviewed, but when it comes to bigger features get in touch with the core team first instead. That said we should have a page somewhere on how to contribute to the core!
That's good news Niels! And yes, it would be convenient to have this information available somewhere, or maybe I can create a wiki page?
Hi All,
Thanks to Ben for his useful explaination, it is a question that I have also tried to ask a few times and this is definitely the clearest answer.
@Niels / @Sebastiaan it would be great to have a page on the wiki, good idea.. if you do create it Sebastiaan, it would be good to add a link to this thread for anyone who finds it in the future.
Cheers,
Chris
One wiki page here.
Enjoy :-)
Hi Benjamin,
I've only just seen your last comment and the Wiki post, Just wanted to say thanks for creating the post :)
Cheers,
Chris
is working on a reply...