Older blog entries for gadek (starting at number 8)

16 Sep 2004 (updated 16 Sep 2004 at 22:36 UTC) »

Prepearing SableVM 1.1.7, Generational GC and so on...

As I mentioned last time, the busy-but-quiet vacation season is finished and SableVM development will look active again. We've started preparations to SableVM 1.1.7. My personal list of things to be included would be something like:

  • SableVM-Classpath based on new GNU Classpath 0.11 release (and possibly further CVS changes). Etienne has just merged latest code into his private branch to test it before merging into out development branch (staging). I hope to see some more Swing working :-)
  • Generational Garbage Collector recently contributed by Carl Lebsack. Preliminary tests show that it improves overall performance a couple of percent (depending on a program). There's still a couple of little things to discuss and iron out before the code makes it into staging, but it should happen soon.
  • Support for compressed (.jar/.zip) bootclasspath. I already have working implementation in my sandbox, but it needs cleaning up before it's merged. It will make a big difference for embedded systems with limited storage. I also implemented support for many elements in bootclasspath (previously only one path was possible) so it'll make it easier to override certain base clases when needed.

This is by no means final, full or official list. I just think these elements will most probably be the most important improvements in 1.1.7. Stay tuned!

30 Aug 2004 (updated 30 Aug 2004 at 14:05 UTC) »

Die, doubles, die!

Yeah, well... It seems that SableVM 1.1.6-6 Debian package should hit testing in next 20 hours. This is very good because this version fixes a couple of sometimes serious problems, mainly related to handling of floating point values (especially doubles). As soon as I have a free hour I'll merge these changes into staging branch. Besides, I am very happy that we finally have fully functional JVM on ARM architecture. Users of embedded systems should be happier now too :)

The summer break is finished and hopefuly as soon as the early-term workload peek passes we should see 1.1.7 release. The latest GNU Classpath has been imported into staging lately, so we'll hopefuly see some improvements in Swing support. We also plan to merge sablevm-classpath content into one singe sablevm tar archive to make the deployment more convinient. We'll see about that.

26 May 2004 (updated 12 Jan 2008 at 08:19 UTC) »

SableVM 1.1.4 released

This is what I would call a perfect release. Just in time, when the list of improvements grew enough to justify it :). So, what's new in 1.1.4?

  • Updated to the recent GNU Classpath 0.09 release with later CVS changes.
  • Improved support for AWT and Swing.
  • Eliminated the dependency lt_dlopen(NULL) which seems broken on some platforms such as Cygwin and some *BSD.
  • Switched to new, complete implementation of VMProcess/Process from GNU Classpath instead of using our own previous partial implementation.
  • Added x86_64/Linux (AMD64) support.
  • Improved autodetection of build parameters on non-GNU/Linux systems.
  • Updated and improved manual pages.
  • Made some other little improvements and applied a few bug fixes.

See details and installation instructions on www.sablevm.org. I didn't have time to prepare Debian packages yet, so please simply use the sources.

There are also some other news at our development sub-site.

Personal note...

I was quite quiet lately. Lots of other unfun stuff to do. But I am almost finished now. Just a few hours (and pages of text) more... and I should finally have time to actively work on SableVM, finish configuring our new servers (I am putting SELinux on them), and so on. This will be very, very interesting (and busy) summer!

13 Apr 2004 (updated 13 Apr 2004 at 06:33 UTC) »

SableVM 1.1.3 released

It was supposed to be 1.1.2 but... while I released 1.1.2-pre Etienne silently uploaded 1.1.2 tarballs on sourceforge, then we decided to add some features (see below), so to avoid any possible confusion we decided to release 1.1.3. Ah, what we do for our users! ;)

In any case 1.1.3 is the best release to the date. The only pity is that the release announcement was weak. Much too weak I'd say. But I am sure we'll fix that in 1.1.4. So for 1.1.3 the most IMO important features include:

  • uses code from GNU Classpath 0.08 + very recent CVS changes (merged only few days ago)
  • fixed a few little but sometimes painful bugs reported by users
  • Swing starts to work and AWT works quite nicely! (See the new screenshots section)
  • This is the first version where configure && make && make install will "just work" for both sablevm and sablevm-classpath tarballs w/o need to specify any additional parameters or using build scripts.
Obviously, Debian packages have been just uploaded, they're in incoming and should hit unstable in some 12 hours.

Please try them on and report your experiences. So far from the problems reported we've really fixed all of the issues directly related to SableVM and a few related to Classpath. You can give us some more.

Happy testing!

A spirit needs body...

On friday we ordered our new servers, with SATA disks, hardware RAID, fully blown CPU and RAM... Software is important but it cannot live w/o hardware!

Next weekend I should be installing Linux on these machines. I only hope that the Linux support for the mainboard features will be good enough (it is, from what I've read on the web, but you never know). I think I'll install Debian Sarge not Woody though this will require me to track security problems by hand. That's the only thing that still makes me undecided.

But in any case - I'll finally be able to install new, fresh, system with all our services on it: subversion repository, mailing lists, mail @sablevm.org aliases system, bug tracking system, web server, irc bot, web archives, wiki pages, daily snapshots... We have most of these already, but not working exactly the way we would like it to be. It'd be perfect, if I could have all the existing services moved in 2 weeks from now.

SableVM 1.1.2 preparations

Etienne tagged sablevm-1.1.2 and sablevm-classpath-1.1.2 so that they could be tested before the release. I've created 1.1.2-pre tarballs and they're at http://gadek.debian.net/1.1.2-pre/. You need both sablevm-1.1.2-pre.tar.gz and sablevm-classpath-1.1.2-pre.tar.gz , then read installation instructions and you're ready to tell us about your experiences! :)

PS: 1.1.2 contains all this cute AWT and Swing stuff you could see on screenshots linked from http://devel.sablevm.org/

Ufff.... what a weekend....

But maybe I should start with the good news first. I've just taken a look at our main/own download statistics of SableVM and added the numbers to the results from SourceForge (where we've also put up our tarballs) and...... apparently SableVM 1.1.1 source has been downloaded over a hundred of times since its official release about week ago!!!

The other news? Well, it was bad weekend. We've tried to put some of our improvements into GNU Classpath CVS, but pretty much any change caused protests. The same for any proposals for various (and quite obvious IMO) improvements. It probably is human's nature to be resistant to changes, but still... Especially the current misery of what GNU CP <-> JVM interface is, is something that I have troubles to agree for.

We didn't give up, though. I think we will get some of these things implemented anyway. Then, when people can see the full picture they will be able to choose more consciously: to use our improvements for common good or to stick to what they're used to. It will take a while.

Stay tuned.

SableVM 1.1.1 is officially released!

Nuff said. Hot stuff. See full release announcement and http://devel.sablevm.org for yourself.

SableVM 1.1.1 was released this weekend, tarballs were created, tested and uploaded, but the official announcement is still missing. I guess I am gonna write one today and finally send it. The most important thing - not to forget to put http://devel.sablevm.org/download/1.1.1 URL into it ;-)

So what has changed? 1.1.1 release contains a few important improvements over the previous version:

  • Update to the latest GNU Classpath release 0.08
  • Fills in JNI interface (includes automatic adding of native local references, which is needed ex. for java-gnome, which leaks them terribly!)
  • Thread.interrupt() and friends are implemented
  • Small but important bugfixes (ex. exec/waitFor oneliner fix, but also some stuff in class loading)

What's interesting is that 0.08 plus Thread.interrupt() give you as well working AWT (and Swing) as 0.08 has implemented. Speaking of Swing... After 1.1.1 release I merged the newest changes done in Classpath CVS which included big Swing update from GCJ and some things really started working!

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!