Difference between revisions of "Push patches upstream"
Revision as of 07:49, 24 November 2010
OE has quite many patches that are just too valuable to keep to ourselves. OE encourages the following soft policy for adding patches to the repository.
1) first line in a patch starts with upstream: and goes on to list the URL where the bug has been reported upstream or "OE-only" if the patch is just a hack or applicable only to OE. 2) further information can optionally be listed in the following fields. Adding them is strongly encouraged where appropriate. * status: pending, accepted in XXX, rejected (upstream) * origin: where the patch has been stolen ;-) * comment: any further detail such as description or reason for application of the patch
Take a look at an example
These are sprints in the spirit of our bug-squashing weekends when we try to push our patches to the upstream projects. The first such sprint was held on short notice from Friday, February 15th 2008 to Monday, the 18th. A few patches were already pushed upstream. Second sprint is scheduled for first weekend in August.
Pushing our bugs upstream is beneficial for us (easier maintainability) and them (we give back our work). The following two commands can give you a list of patches still in need of being documented in line with above policy.
find recipes/ \( -name '*.patch' -or -name '*.diff' \) -print0 | xargs -0 egrep -L \^upstream\:
You can push those patches upstream even if you are only a normal user of OE. Let us know via the bug tracker if you have reported one of our patches upstream. Please be sure to test if the patch is still being applied to the most recent version of the package in OE.
sample text for upstream reports
Hi, thank you for sharing your work in $project. Openembedded.org includes recipes to cross-compile $project for a large number of target devices. I would like to make you aware of some of the changes that we at the openembedded.org project did to the sources you publish. Patch: http://cgit.openembedded.org/cgit.cgi?url=openembedded/tree/recipes/$project/$patch-url Comment: $explanation You can find all our patches for $project at http://cgit.openembedded.org/cgit.cgi?url=openembedded/tree/recipes/$project/ Thank you again for your work. Regards $name