Hi

Since there is a lot of political discussion lately, I thought a post on
our development might be refreshing.

The last of the "big 6" modules, Calc (in main/sc), has been ported to
gbuild, and 68 of 187 modules in total or about 36%, are now in gbuild. If
externals are not counted as modules, then we're on 49.63%. Work remains to
integrate yacc, flex, javamaker, cppumaker and a few other tools into
gbuild, so that the modules that use them can also be ported. I've also
done some calculations with module dependencies in an attempt to split the
build into an early bad build.pl/dmake phase, and a late
fast/correct/reproducible gbuild phase, in which all gbuild modules are
built in one make instance, and build.pl/dmake are not used, however it's
not clear how best to do this, as you can't call make with full concurrency
from build.pl when it is itself threaded.

Our testing also received some improvement. I've resurrected parts of the
main/test directory which I believe were deleted in error, as the test.jar
and test-tools.jar they produce are used by our subsequent tests, yet were
missing. Also I've added an optional --with-hamcrest-core option to
configure, for those using new versions of JUnit that require Hamcrest, and
gotten this to be used in gbuild modules. The subsequent tests were relying
on a makefile in smoketest to unpack the "archive" package format zip file
to use as the default office instance to test, and I've changed them to
directly use the "installed" package format instead, without relying on the
smoketest makefile which is currently broken anyway. Paths to it have also
been updated from OpenOffice 3 to 4. Subsequent tests can now be run (in
gbuild modules anyway) and I am working on debugging a few that fail.
Smoketest itself should move to the test/ directory instead, as an old copy
of its document is run as part of the bvt tests, yet the main/ document
isn't built there nor used at all.

I think the idea should be to get tests working on the buildbots, so that
we don't only build every day, but build and test, which is important to
prevent regressions, which are invariably introduced through new versions
of dependencies, the move to gbuild, etc.

I've also been looking at other languages to add for AOO development.
Google Go seems interesting, but doesn't support exceptions, making it
incapable of being a first class UNO language (just like our StarBasic
isn't). Google did translate Python to Go recently though, so they must
have done exceptions somehow. .NET is more open and free than Java nowdays,
and we do have some UNO .NET support, but it's almost undocumented.

Damjan

Reply via email to