[opensuse-packaging] How to reduce conflicts in devel projects and Factory?
Hi, could you please suggest the right process to avoid conflicts between the local package copy, devel project, and Factory? I committed the 19 OOo source packages and got many conflicts. It drives me mad a bit ;-) See the attached files for more details. Also see description of my workflow below. I have got the following types of conflicts: a) package version conflict in OpenOffice_org-icon-themes.spec: + probably caused by three different versions in all three locations (local copy, devel project, factory) + caused two level conflict !!!: + one during "osc up" to be able to commit into the devel project + second during "osc pull" to resolve conflict with factory and unblock the build in the devel project b) package version conflict in OpenOffice_org-extensions.spec: + probably caused by different release number in Factory c) license tag conflict in OpenOffice_org-extensions.spec: + the shorter license was either from older spec or from PDB or ? + do we still update it by prepare_spec? d) license tag conflict in OpenOffice_org-libs-core.spec + I have no idea where the "LGPLv3" is taken from; IMHO, it is neither from PDB nor from older spec + is it possible that it was wrongly taken from a subpackage? + what tool actually put the "LGPLv3" there? e) header conflict in OpenOffice_org-help-group2.spec: + the problem is that I regenerated the spec from OpenOffice_org-help-groupX.spec.in => it included the hardcoded group1 while prepare_spec put the right "group2" there in Factory + I might update OpenOffice_org-help-groupX.spec.in and ooo-help-gen-spec but is it really needed? f) changelog conflict in OpenOffice_org-icon-themes.changes: + same problem as with the first mentioned version conflict; probably caused by three different versions in all three locations (local copy, devel project, factory) + again it caused two level conflict (up and pull) I use the following workflow: 1. submit changes into the devel project 2. create submit request into factory when it builds 3. immediately start doing changes locally 4. put a hotfix into the devel project and factory because a critical bug is found; do it from the same local copy; just temporary remove the other changes that are not finished yet; merge them back after the hotfix is committed; this probably caused the conflict "b" (release number) 5. packages are accepted in Factory in the mean time (the branch id get broken) 6. run "osc up"; otherwise "osc commit" complains about different branch IDs 7. take some pills to keep me quiet :-) 8. resolve conflicts with the devel project (something pushed back from factory or so) 9. run "osc commit" 10. take more pills :-) 11. run "osc pull" if BS complain about conflicts with factory 12. resolve conflicts with factory 13. call my psychiatrist if there is a free room in a mad-house; she tells me that everything is great; this is 13th step and it is my lucky number ;-) 14. continue with the step 2 and 3 Questions and hints: + do I anything wrong? + is there a better supported workflow? + do we really need to update license, release tags, header in the factory repo? + would be possible to call prepare spec locally before or during "osc commit"? + does anyone understand the 2 level conflicts "a" and "f"? + is it possible that the merge functionality is broken? You know, it sounds a bit crazy if I am the only one doing changes in the OOo packages and still have to resolve conflicts :-) Please, do not tell me that I should wait for commit into factory before doing more changes ;-) -- Best Regards, Petr Mladek software developer --------------------------------------------------------------------- SUSE LINUX, s. r. o. e-mail: pmladek@suse.cz Lihovarská 1060/12 tel: +420 284 028 952 190 00 Prague 9 fax: +420 284 028 951 Czech Republic http://www.suse.cz/
Am Freitag, 14. Mai 2010, 20:58:39 schrieb Petr Mladek:
Hi Petr, I know it's hard, but what I want to thank you most for is bringing this up to give everyone a chance to improve the situation instead of you suffering silently.
Questions and hints:
+ do I anything wrong?
The only thing I can see wrong here is that your OpenOffice_org-icon-themes conflict shouts "old osc!" to me - the new one uses a better merging that should have catched this case.
+ is there a better supported workflow? + do we really need to update license, release tags, header in the factory repo? I think we need to as it brings some consistency to our spec files and not everyone names its license differently.
The license and the header shouldn't change that often and the release tag should only change
+ would be possible to call prepare spec locally before or during "osc commit"? It would be possible for you, but it shouldn't be neccessary.
+ does anyone understand the 2 level conflicts "a" and "f"? + is it possible that the merge functionality is broken?
You know, it sounds a bit crazy if I am the only one doing changes in the OOo packages and still have to resolve conflicts :-)
Please, do not tell me that I should wait for commit into factory before doing more changes ;-) No, this is definitely not wanted. What I don't understand how you can get conflicts in release tag if factory is the only repo where it changes.
Running osc pull could be part of the work flow and shouldn't worry you - only if it creates conflicts you have to resolve manually it's a problem IMO. So my suggestion to your work flow would be: - use osc 0.126 - run osc pull after you're ware of factory checkins Greetings, Stephan -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
On Saturday 15 May 2010, Stephan Kulow wrote:
So my suggestion to your work flow would be: - use osc 0.126 - run osc pull after you're ware of factory checkins
if osc 0.126 solves those issues,can we please release it as a maintenance update? Thanks, Dirk -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
participants (3)
-
Dirk Müller
-
Petr Mladek
-
Stephan Kulow