May 12th 2012  ivtools-1.2.10

Many practical and small extensions to comterp, the scripting language embedded in
comdraw, flipbook, graphdraw, and drawserv.

Dropped complete support for gcc 3.0 and earlier. Things still might work but you'd be better off
upgradeing to gcc 4.0 or staying with ivtools-1.2.9.

Feb. 23rd, 2010  ivtools-1.2.9

- Debian related changes suggested by Agustin Martin.

- usec timeout on comdraw pause command -- allows for writing loops
  that can be exited.

- option for an end-of-line token introduced to LexScan.

- port to 64 bit Fedora

- fix problem with negative numbers in attribute editor

- make File/Save and File/Revert always work regardless of modified flag

Nov. 21st, 2009  ivtools-1.2.8

- significant work on keeping up with gcc and libstdc++.  A wrapper
  for stdio.h was inadvertently getting pulled in by /usr/include
  files, causing a lot of trouble.  Now builds with gcc-4.4 on Ubuntu
  9.10.

August 25th, 2009  ivtools-1.2.7

- series of memory leak checking commands: alistleak, attrvleak, commandleak, compleak, graphlicleak, mlineleak, viewleak.  Each returns the current number of allocated objects of that type (AttributeValueList, AttributeValue, Command, OverlayComp, Graphic, MultiLineObj, and OverlayView).

- added reference counting to OverlayView's (ComponentView's) referred from AttributeValue's (#define RESOURCE_COMPVIEW)

- fixed attrname func.

- fixed stddev func.

- added BooleanType to NumFunc promotion method.

- fixed graphdraw copy/paste of graph fragments

- new SocketObj for use comterp

- fix behavior of symbol manipulating funcs, by using internal bquote.

- port to Ubuntu Heron

- applied (most of) patch to build on Fedora 10 contributed by John Heidemann

- balance of changes to support ipl-1.0.4

July 9th, 2008  ivtools-1.2.6

- Debian contributed patch for iostreams backward compatibility

- bug fix for dispatcher.c contributed by Damon Permezel

- add mute command to comterp

- balance of changes to support ipl-1.0.2

March 4th, 2008  ivtools-1.2.5

- overall evolution to support use by ipl-1.0.1 (see
  http://sf.net/projects/ipl for further details)

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


