OpenOffice.org
Development digest
30th November 2003
by C.P. Hennessy
Welcome to what I hope will become the weekly digest of OpenOffice.org development.- Introduction
- This weeks summary
- CVS statistics
- Branches with changes this week
- Projects which were changed
- Detailed changes on each branch
Introduction
Following what's happening in OpenOffice.org code development is not so easy, not because there is no information, but rather because that there is so much information and it is so spread out. Hopefully this digest will help to summarize all of that information into something reasonably readable and useful.Most of this digest will be concerned with what code has changed in CVS, and presenting that info in a readable format, but I also hope to include news and information from other OpenOffice.org projects including QA, native language projects, API, and any other interesting projects.
Obviously I could really use help with all of this so if you have something you would like to contribute, or you see omissions or mistakes please email me your contribution to the digest.
Some of the areas which are not related to development I do not plan on covering, these include marketing, documentation, and the website. However, I will obviously include any news sent to me about these projects.
So how can I help?
There are several teams who could do with your help :- for anyone there is the QA team where you can help to get enough details to reproduce bugs and triage them, help the documentation project by contributing templates and clipart, and the localization projects ( e.g. help to improve compound word spellchecking );
- for the script programmer there is the API project where you can develop on top of OpenOffice.org and program in StarBasic ( very similar to VBA ), java, python, C++, and perl. A good project to learn the object model on and improve your OpenOffice.org scripting skills might be the bibliographic project where a programmer new to python and OpenOffice.org APIs was able to help after only a few days!;
- for the XML programmer, there are also interesting projects which you could help write using various technologies to transform OpenOffice.orgs based XML based to other formats. Two transforms which come with OpenOffice.org 1.1 are DocBook, and XHTML, have a look at the XML project for more details. There is infrastructure to use XSLT directly from OpenOffice.org. It is of course possible to generate OpenOffice.org file formats without ever having OpenOffice.org installed. There are several projects already doing this, some of these will be covered in future issues. To help get you started, OpenOffice.org XML Essentials - Using OpenOffice.org's XML Data Format is a book in progress written by J. David Eisenberg for O'Reilly & Associates using the Creative Commons License.
- for the budding OpenOffice.org developer there are many areas to get involved in including a call for helping to improve the code for the spellchecker ( especially for German)(which is also use in Mozilla.org), and help to increase the number of rows Calc can handle.
It is not always necessary to recompile all of OpenOffice.org to work on only one of its components, but if you do then a very good place to start would be the Unofficial OpenOffice Hacker's guide which explains how to build and work on OpenOffice.org source code. If you have development related questions then please send an email to the development project.
So what are all these branches?
There is alot of OpenOffice.org development happening as can be seen from the details below.As with many very large projects with many developers, development is going on independently in parallel. To help manage the code in a reasonable way a feature of CVS called branches is used quite extensively. Basically each makor feature is developed on a branch by one developer (or a small team of developers).
This type of branch is called a "child workspaces"(CWS). Usually when a feature has been completed and some fundamental testing has been performed, the branch is then marked as ready for merging to a master branch.
Sometime later the developers branch with the feature is then merged to the master branch where further testing happens to make sure that features from different branches do not conflict and cause errors.
At some point a master branch is labelled and a public release of code is made.
An overview of which features will be implement on which branches can be found here. There is a more complete (and accurate) description of important branches currently used.
Current organization and contents of the CVS log
The CVS summary below is organized into what has changed on a particular branch by a each developer. There is currently a color coding on the left side to make it easier to see what type of change has occurred. For each change you should see :- a link to the relevant bug in Issuezilla (except for bugs over 100000 as these are currently Sun internal);
- a comment the developer made while checking in those changes; and
- a link to the difference of each change in webcvs.
There is also two indexes, the first lists all of the development branches and logically groups these branches.
The second index lists all of the OpenOffice.org components which were worked on and lists those branches which have changes on those components.
This weeks summary
A developers release (read do not even consider this alpha quality) called 680_m13 is now available and contains many fixes and some new features including the new VCL plug (which will allow native toolkits to be used instead of the OpenOffice.org one), improvements to the scripting framework(you can start to use JavaScript now), lots of compatibility and rtl fixes), improvement in graphics handling and the draw tool, and changes in the installation process. Note the temporary splash screen! ( Maybe you can contribute? )Note: this IS a developers release so be careful and do not complain if it crashes, burns and/or eats your computer!
As progress to the next major release there should be development snapshots every 2 weeks with more features for you to examine.
Many bugs have been worked on and resolved ( as of Dec 01 2003 ):
No this week | Change from last week | |
---|---|---|
Issues submitted in the week before for all projects | 267 | 0 |
Issues which have the status UNCONFIRMED | 650 | +3 |
Issues which have the status NEW | 686 | -9 |
Issues which have the status STARTED | 873 | +55 |
Issues which have the status FIXED | 7096 | +60 |
Issues submitted in last week resolved or closed | 60 | +12 |
Some of the interesting developments over the last week include:
- the merge of bug fixes in branches for 1.1.1 is ongoing
- working on converting OpenOffice.org's widget set so that it can use the platforms native widgets is going very well. Most of the work is concentrating on the Win32 and GTK widgets ( if you are interested in contributing to this please join the mailing lists of the Graphics System Layer project. Some work has started on the Qt/KDE widget integration. Nothing yet has started for the Aqua port, but the work on GTK/Win32 widgets will make it relatively easy and if you are interested please join the dev mailing list of the porting project
- more work on the new layout manager for custom toolbars and menus
- xml security, xpath, and dom APIs and features were worked on
- nice alpha artwork and fixes added by Ximian
- continued improvements on compatibility : drogheda, mullingar, portlaoise
- Catalan, Hungarian, Finnish and Slovenian changes were added
- the work to split a table row over a page boundary continues
- more reworking of the installation mechanism
- the developers guide was also updated
- and finally alot of integration of branches : 1, 2 and 3.