July 20th, 2006 ivtools-1.2.4 - changes for compiling with gcc-4.0 - changes to socket-driven (ACE) use of comterp to support multi-line commands - changes to allow re-use of scanner/parser with multiple operator tables October 7th, 2005 ivtools-1.2.3 - add support for an external libtiff with a --with-tiff (and -with-tiff-lib) configure arguments. - changes necessary to compile with gcc-4.0 - changes necessary to compile with gcc-4.0 on top of ACE-5.4.7 - changes necessary to compile on suse-9.3 linux (amd64 platform). Contributed by Paul Vixie. - fixed bug in "addtool" command/mechanism in graphdraw and drawserv - added support for color expressions to graphdraw (:colexpr), to allow attribute-sensitive computation of a node's color. January 25th, 2005 ivtools-1.2.2 If you submitted a patch in the past half year to ivtools that you don't see reflected here, please resubmit. I lost that e-mail. - fix for problem writing to /tmp - compilation fix on NetBSD for comterp.c - compilation patch submitted by Michal Palczew. July 13th, 2004 ivtools-1.2.1 Two crashes discovered and fixed by Michal Palczewski (mpalczew at users.sourceforge.net). One was a crash on exit after a delete with idraw/drawtool, the other was a crash upon delete with graphdraw. They turned out to be long-standing bugs in the order of object deletion, problems that hadn't appeared with other versions of gcc. RedHat must have adopted a more aggressive recycling of freed space in a recent release. Thanks Michal. June 3rd, 2004 ivtools-1.2 ivtools-1.2 sets a new direction for the package, toward peer-to-peer drawing chat. ivtools' drawserv, the editor that incorporates every ivtool mechanism to date (multi-frame, graph-editing, integrated scripting language) has been extended to support a unique kind of small-granularity shared whiteboard. This work was based on the pre-existing networked scripting capability of ivtools' comdraw. Then the pasting of any graphic was intercepted, and the graphic serialized into a command that could be communicated to other drawing editors to keep them in sync. Then a connection management system was established, that supported two-way peer-to-peer links between drawing editors. In addition the return path on each socket was used for detecting timeout, which causes the connection to be dropped. Finally, a distributed mutually-exclusive graphic selection mechanism was created, where every drawing editor is aware of who currently has a graphic selected or who had it selected last if it is not currently selected. When one drawing editor tries to select a graphic, it first requests that permission from the last selector (after determining it is unselected). Now you can link to other drawing editors, draw graphics and see them appear remotely (although only in black and white), and exercise the distributed selection mechanism. Four pieces remain to be developed: 1) support for full-up graphic state transmittal (it is sent, but not interpreted on the remote end);, 2) support for transmission of the complete set of drawing editor commands; 3) extending the distributed mutual-exclusion mechanism to select pseudo-graphics to acquire global permission for connection, pasting, moving front-to-back, and grouping; and 4) a two-tier mechanism for invoking select(), that will allow the bypass of selection requests while engaged in lengthy direct manipulations. If all this interests you, and you'd like to help, build this version of ivtools with ACE support, subscribe to the ivtools-dev mailing, and help me do some testing, programming, thinking, whatever. Or visit http://www.ivtools.org to make a donation to support this work. Thanks. Scott Johnston