<< Weekly Status Report, W23/2007 | The roads I take... | More than you wanted to know... >>

The trouble with forking

As you might know, a long time ago, some group of people decided to fork some parts of Mozilla and create a lean, shiny, new browser. What came out of that was not only Firefox but also a "new toolkit" that was used instead of the "old xpfe" as a backend for this new generation of applications that Firefox and Thunderbird spearheaded. What started as a fork of xpfe became the main toolkit over time and now is one of the core parts of the XULRunner environment.

Nowadays that SeaMonkey has been ported over to this new toolkit, we're trying to do some housekeeping and cleaning up the old code. But, as it turns out, not all of the "old code" is older than the "new code". In fact, some fixes and improvements were done on the "old" fork but haven't made it into the "new" one. This means that the old xpfe code includes some good, newer work than the new toolkit code, and deleting the old code would throw away a version that has valuable fixes. :(

While the old code will live on in the history of the mozilla.org code repository and can be retrieved from there any time, people usually don't look up code there that has been deleted from the mainline.

So, what we need to do is at least file bugs, possibly with patches to toolkit, to have some tracking of what needs to be done, before we can put the "old" code to rest.

We could need your help for this unforking work, which might be a good starting point for new contributors, as the code for most of the work is already there. Good starting points are the pointers in the themes cleanup bug and the dependencies on the resync xpfe bindings with toolkit widgets bug - we might be able to give you even more pointers on IRC.

Hope to get some helping hands on that, it will improve the toolkit we all are using!

Entry written by KaiRo and posted on June 11th, 2007 18:22 | Tags: Mozilla, SeaMonkey | no comments | TrackBack

Comments

No comments found.

Add comment