Older blog entries for Jody (starting at number 46)

Resolution #3 blog or find a sock puppet and train it to blog

Released 1.2.3 with the long awaited axis value formatting. Just after it went out I got confirmation on bug 128524 and played guess the bit pattern until it was solved. As a result 1.2.3 was not announced and we jump right to 1.2.4 which just went out. In the mean time Gnumeric branched and the 1.3.0 tree is seeing lots of HIG and ui improvements. In the background I'm pounding away to get it converted to GtkAction before the gtk api freeze. There are almost too many cool toys in the pipe line to list. Chief among them being the long awaited semi-mythical win32 port. I can almost taste it.
There will be some nice speedups in the form of the SAX import/export by default and plans for scripting and a11y. Blah enough talk. First I need to finish the code.
There's also quite a bit of cleanup going on in preparation for splitting the goffice code out of gnumeric for use by other apps. The only real questions that remain are
1) do we call it liboffice or libgoffice ?
2) When will I get off my butt and ship it :-)

Control Center
Released 2.5.1 with the new gswitchit stuff, promptly broke that and released to fix it. Sergey and Shooby have reached some agreement on how to merge gkb and gswitchit, which will let the user 'do the right thing' as they move across different qualities of X server. The main fly in the ointment is icon-theme support. Things still smell bad there. We'll meet next week to get a plan.

Happy new year to all. The last few months have hurt. Go hug the people around you and remind that you care.

Lots of patching to HEAD recently. There's not alot of forward looking vision just yet, but we are at least starting to maintain the damn thing again. Things are getting fixed, and some of the most egregious of bugs have been been resolved. I'm pretty excite to finally start seeing some momentum here, but I keep wanting to call Chema to discuss it, which tends to deflate things.

Michael pointed me at the new anoncvs server and I was finally able to update my local copy. Looks like some major changes are going on the xls import/export. He asked me to have a look at why functions defined in macros are not being exported correctly. Names and macros are probably the two muddiest areas in xls, so I started poking around. That code base makes my head spin. OOo handles exporting the macros correctly, but appears to lose the connection between the macro and the function call on the import side. Gnumeric maintains the link internally, but was missing the \1CompObj stream on export which seemed to disable the macros. 3 lines later and Gnumeric was exporting the macros, but doesn't seem to get the linkage right for the macro function. It was fairly illuminating w.r.t. the relationship between the document property stream, the CompObj stream and a couple of hither too unused biff records. Now I just need to see why the xtl ref is negative... We may be able to patch OO, but I'm not sure where to hook the internal function info.

Yay! The first portion of the merge is in CVS. We'll wait for the inevitable build breakage and XKB problems. Hopefully the worst is behind us and Sergey can get down to the meat of the issue.

Fixed a few more little bugs in preparation for a 1.2.2 release next weekend. This time I _reallly_ mean it. If the wee lassie is peaceful again tonight (now that she's finally pooped again) I may even be able to finish Z order editability before the branch. Morten was a huge help in finishing more of the grand rename. We look ready to branch, and I'm itching to start on the new toys.
There is something macabre about triaging gnomeprint bugs today. Reading little notes from Chema to himself and others. Having spent so much time interacting with him remotely the unread msgs provide a painful simulation of life.

Work on the layout of the new merged keyboard capplet is going nicely. Sergey is churning through things. There are stil la few teething pains on exactly how to handle the integration issues, but that's why we added them up front. We should have lots of time to smooth them out.

Gnumeric The wee lassie was peaceful last night, so I had a few hours to do some work before the latest cold knocked me down. I appear to have added one (hopefully) simple bug, and fixed a pile of theming issues. As soon as this last bug is fixed we're ready for a release. We now support plot level configuration of default styles. Which allows us to support things like XY plots that default to no markers. I've also worked on the auto logic a bit, so that the user can now select auto marker shapes, auto patterns, and auto colurs. Still more work to do to provide comfortable semantics for things like no lines.

10 Nov 2003 (updated 11 Nov 2003 at 17:06 UTC) »

Chema Celorio, a long time friend was killed in a skydiving accident this weekend. He was one of those rare people gifted with an infectious enthusiasm. A conversation with him invariably left you wanting to smile and share the excitement. As a bonus he also had just the right type of perse mind to do really effective QA. Having once razzed him that my grandmother could find more bugs, he turned around and filed 30+, nice, repeatable, coherent reports in one weekend.

I'll miss him.

/me heads off to hug the kids.

The 1.2.2 release is shaping up nicely. Fixed lots of minor silly bugs, and even merged in a few performance tweaks. This will be the branch point. If I can get enough sleep this week, it will go out on the weekend. Lots of nice patches are coming in from Jean and Emmanuel for the charting engine. Shortly after we branch it and big chunks of gnumeric's utility layer will get pulled out into a GOffice lib.
Lack of sleep is still keeping me from making major changes in things, but it does give me some time to triage gnome-print and control-centre bugs. Focusing down on one teeny little bug seems more managable than big picture thinking when you're sleep deprived.

Did a 1.2.1 release to get the accumulated polish out into the world. Things are looking good. Only a couple of crash reports, lots of enhancement requests. Sleep has been at a premium with the new baby, so I've taken to doing the massive rename that we'll need to support libgnumeric during the 1.3 cycle. That's a nice simple, mindless exercise. Basicly s/Foo/GnmFoo/ everywhere. It's also a good chance to do some api review. We appear to have a new version of grandma-chema, grandma-lukeh. He's filed a swath of nice crisp bug reports to keep me honest. Having a good collection of bug reporters is tremendously valuable.

GNOME Print:

The main source of complaints and problems we're seeing in Gnumeric are related to printing. Chema just hasn't been interested in doing much maintenance in there for far too long. Out of desperation we're joining the maintainer team for the project. Hopefully, we can get things back onto an even keel.


Things have been busy since my daughter arrived 2 weeks ago. She's treating us nicely, and has been much easier to take care of (feed change repeat) now that we're not afraid of breaking her. Of course its never quite that easy. The first munchkin is still only two, and while he seems to really like her ('can I pat her head') he also has absolutely no notion of gentleness. So a statement like 'look at the little eyes' is usually done with a small finger jabbing towards the eyes :-)

26 Sep 2003 (updated 26 Sep 2003 at 14:30 UTC) »

ssconvert lands in CVS.

People have been asking for cmdline access to gnumeric's importers and exporters for years. I've always resisted writing it because it seemed like such a perfect starter project for someone. After receiving three requests in one day I broke down and knocked off a quick wrapper.

150 lines of code, with attribution and fancy white space for the exporter list.

To be honest it did take a bit of tweaking to force it to work without a DISPLAY, and there are definitely lots of bells and whistles to be added. However, if you need to convert to or from xls it'll get the job done.

xls -> html
xls -> latex
OO -> ... well you get the idea

Now we need to add support for command line flags to configure the importers and exports.

24 Sep 2003 (updated 24 Sep 2003 at 16:44 UTC) »

Gnumeric 1.2.0 has been surprisingly stable given the amount of last minute churn. We really violated every tenet of a release freeze except the test suite validations. A couple of moderate crashers have shown up but nothing really major. We're getting some useful feedback on performance now. Things look good, but a few cases for large data sets have forced us to tweak things.

1) row height autosizing was being very stupid. Why bother rendering a cell to calculate its height if it doesn't wrap. By definition all we need there is the font height. Huge space saver when reformating 1 million cells

2) Do not call _() in your value parsing routines. DOH! gettext is expensive with that many calls.

The relative quiet has given me time to get caught up on all the pending patches. Improved svg export for the charts, better heuristics for auto selecting range for autofilter, and more ATK relations for the dialogs.

Probably do a 1.2.1 this weekend to get some of the patches and tweaks out.

Of course that schedule is pretty flexible, depending on the arrival time of goldberg-v2.2 (potential code name 'pretty in pink')

Gnumeric 1.2.0

That was painful. Its been almost 20 months since the 1.0.x series came out and we've spent alot of time tuning the engine adding features and puttering along waiting to get the charting engine back on line. I'd have prefered to have done 2 possibly even 3 stable releases in that time frame.

The new engine is now at the point where its architecture seems to have proven itself, and there are enough features implemented that its useful. sample

So what does the future hold ?

I'm dividing goals into 3 broad catagories

1) Improving Gnumeric

  • Split out libgnumeric
  • Finish implicit iteration for operators
  • XL export for charts
  • Conditional Formats
  • Pivot Tables
  • Scripting
  • Accessability
  • Make the jump to using the SAX parsers by default
2) Improving GNOME Office
  • Polish clipboard interaction to a high gloss
  • split out libgoffice
  • Integrate better with GNOME mime handling and release cycles
3) Improving interaction with other projects
  • Continue exporing use of uno. If we can embed lets embed gnumeric in Impress...
  • A VBA stream parser
  • Pie in the sky talk to OO folk about sharing the charting library. They need to write one, and complain that theirs is currently scatted throuht their system. Ours is designed specificly to enable new types as plugins. The is a weak point for MS Excel. If we combine efforts we might knock them down a peg sooner.
25 May 2003 (updated 26 May 2003 at 01:24 UTC) »

Its been a grind to get charting back in Gnumeric but at long last there is a framework in place. Its still a touch rough around the edges, with some tuning necessary in the libart backend, and lots of unfinished bells and whistles. However, it is quite modular, easy to understand, and has a decent interface to Gnumeric.

Here's a sample imported from xls

I'm not thrilled with the bleed through on bars with 0 separation due to antialiasing, and the fringing should also be tuned.

In other news Morten has been banging away at full throttle and has us mostly multi-head aware. He and Andreas have also been scrubbing text import/export to get tie down utf8 issues. The rest of the system is pretty much ready to freeze. Although 1.1.17 was not announced due to late breaking bugs, 1.1.18 is shaping up very nicely.

37 older entries...

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!