Process to solve the DaD and MoM issue:
- Write this wiki page
- Send and RFC to ubuntu-motu mailing-list
- Discuss it during the MOTU meeting
- Bring it to the Technical Board
History and current issue
At first there was only one official merge system: MoM (Merge-o-Matic). Albin Tonnerre and Adrien Cunin started developing DaD because MoM was not updated since weeks (hardware problem it seems) and its lack of some features. This was at the beginning of the gutsy development cycle.
Nowadays, it seems that the availability of two merge systems creates confusion, especially for new contributors: which one to use? why are there *two* merge systems? This issue has often been raised in #ubuntu-motu and has created discussions between pro-MoM and pro-DaD. It has been once again recently, and we finally decided to try to make this clearer.
Which one should we use?
Why use MoM?
- Official tool
MoM is the official merge system, hosted on merges.ubuntu.com, written by Canonical employees, and has been the only one used by all the developers until DaD's arrival.
MoM is older than DaD, has been used by Ubuntu developers for more time than DaD, therefore we can trust it more than DaD because of its maturity.
Why use DaD?
DaD is free, open-source, which seems more appropriate to a free OS development context.
Therefore it benefits from patches and contributions from everyone to make it better and better.
DaD has useful features which MoM hasn't.
The more important one is the ability to put a comment for each merge: it is used for assigning, giving the status of the work being done, linking to a bug report (sponsor request, sync request).
Another is the automatic maintainer field update when needed (DebianMaintainerField spec).
Proposals to solve this issue
1. and 2. are the best solutions from DaD's developers' point of view.
- Free MoM
With a free MoM, we could join our efforts to make the best merge system ever.
In this case DaD's developers would immediately shutdown DaD and volunteer to help implementing the missing features to MoM.
- Put DaD in replacement of MoM on merges.ubuntu.com
Drop completely MoM and put DaD instead, why not...
Why not number 1 is there are cases DaD does not support (-0ubuntu1 packages). While I use DaD for most merges, I don't think it's mature enough to replace MoM. I'd suggest removing this option. (ScottKitterman)
Right, except that the -0ubuntu1 was fixed a long time ago. The only case where DaD fails currently is when the orig.tar.gz are not the same in Debian and Ubuntu. (AdrienCunin) This has (or should have) been fixed a while back. The main issue atm is that the merges got broken if snapshots.debian.net doesn't have the orig.tar.gz of the 'base' or the current debian version. (AlbinTonnerre)
- Add DaD's features to MoM, and keep MoM closed
MoM's developers could implement DaD's features to MoM, without making MoM free.
- Free only part(s) of MoM, such as the UI
Free part(s) of MoM would allow contributions to improve them.
- Something else?
Mark Shuttleworth said once: We’re committed to reinventing everything we need until the free software stack is a genuinely complete computing universe. Let's get rid of that horrible closed-source MoM! (And then launchpad...) Why would we push free software to people but keep using proprietary software ourselves? Hypocrisy? --TormodVolden
Option 1 got done. They've been merged. DaD is history. Case closed.