Older blog entries for Jody (starting at number 48)

The initial jump to GtkAction is in CVS. Its given me a chance to clean up some really ancient code. Things don't work completely but the basic elements are there. This new interface has promise. Now that the jumbo patch is out of my tree I can commit a few of the pending patches
- Nick's xor's encryption import for xls
- JGill's re-freeze option
- JHM's header fix for the ia64 breakage on 1.2
The single element charting extension is not quite ready to go in. However, a new patch from Jean to enable bubbles looks good. Next step error bars.
Andreas has been going full steam ahead on improving the ui for the analytics, JonKare has been patching the python bindings and Morten is doing his usual job of making sure things actually work.

Its probably still too early to start on the menu re-org yet. First we need to get the combos working again.

6 Jan 2004 (updated 6 Jan 2004 at 16:05 UTC) »

Up early and had a 'frank exchange of views' with Michael on the appropriateness of adding OOo to the gnome-office web page. They have ten gazillion marking pages and vast resources. GNOME-Office had one teenly little page, that we can never update because we don't remember where it lives. Oh well, we've agreed to disagree on this topic. At least we found the module and I've updated it a smidge.

More poking in Gtk, submitted a patch for indent/un-indent icons. Some discussion on GtkAction and whether it was appropriate to enforce a 1-1 correspondence between GtkAction and GtkActionGroup. I think that will make life easier.

Looked at printing pango layouts to help the bangalorians (I wonder what they call themselves). Was not enthused to see how badly we handle this now. What an embarassment.

Fixed a matched set of xls import/export bugs when handling selections in frozen panes. Hung my head in shame realizing that the fixes for a few bugs just before 1.2.0 only patched part of the problems, and patched cursor movement during range selection with frozen panes. Also took some time to chae down the missing redraw in the presence of autofilled expressions during manual recalc. I've got a patch for that that seems to do no additional harm, however this problem is actually fairly fundamental. Up till now there were only two states 1) calculated 2) needs recalc. Truely honouring manual recalc adds a third 3) needs recalc before display. I'm not sure on the exact semantics of manual recalc, but my gut tells me that (3) should not force eval of (2). Pretty obscure, but we'll need to solve it to handle thing correctly.

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')

39 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!