1started 8.7.1 13/11/18
2- fix uint status bar pixels >2**31 [Rob Erdmann]
3- fix crash on redhat [bgilbert]
4
5started 8.7.0 22/5/18
6- added vips7compat.h include for libvips 8.7
7- more output for -V to help debugging CLI mode
8- revised Text widget
9- added Canny
10- Sobel uses the new vips_sobel() operator
11- add mitchell kernel
12- add 8.6 compat
13
14started 8.6.1 1/5/18
15- better enum display in header
16
17started 8.6.0 16/8/17
18- add scRGB support
19- improve radiance support
20- add composite to alpha menu
21- add Image / Select / Fill
22- add combine mode to indexed histogram
23- better compat handling
24
25started 8.5.1 22/1/17
26- fix a crash bug
27- make separate Image / Alpha menu, add Add, Extract, Drop
28
29started 8.5 24/1/17
30- add max_slope to lhist
31- gaussnoise goes via vips8 now
32- add snake option to array join [Joe Padfield]
33- parse_float was broken for numbers starting "0."
34- add alpha section to Image / Band menu ... Flatten, Premultiply,
35  Unpremultiply, Blend
36- add Entropy to hist menu
37
38started 8.4.1 25/9/16
39- simplify nip2-icon.rc build, bgilbert
40
41started 8.4
42- added Perlin and Worley menu items
43
44started 8.3.1 on 19/5/16
45- disable debug by default, thanks Benjamin
46- configure changes to help win64
47- improve middle-drag in ws and image view
48- be more careful about the name of the image file we remove on close
49- simpler system for positioning new columns
50- rename boostrap.sh as autogen to help snapcraft
51
52started 8.3.0 on 28/3/16
53- move path search stuff into _convert from _magick
54- added autotrace menu item
55- resize now uses vips_resize() behind the scenes
56- added Kernel type for picking interpolators
57
58started 8.2.1 on 4/12/16
59- tiny improvement to idle handling
60- added R2 to linreg and linregw
61- fixed vips_call for image array args
62- changed default unsharp settings to be less brutal and to ban -ve sharpness
63
64started 8.2 on 4/11/15
65- version bump to match vips
66- fix icc_import with RGBA images
67- added mapim and Image / Transform / Map
68- added Filter / Coordinate Transform ... polar and rect in there
69
70started 8.0 on 3/5/15
71- version bump for vips-8.0 release
72- fix a race in Makefile.am, thanks nieder
73- get rid of run-nip2.sh, mostly useless, thanks nieder
74
75started 7.42.1 started 30/12/14
76- add fftw3 configure
77- fix gvc configure
78
79started 7.42.0 started 4/11/14
80- removed the non-nip2 bits of the test suite, they are in vips now
81
82started 7.41.0 8/10/14
83- remove greyc stuff
84
85started 7.40.5 17/9/14
86- improve .desktop file
87- fix Lch -> Yxy conversion
88
89started 7.40.4 19/8/14
90- swap the HP printer profile for a freer one
91- swap lena for a PD sample
92
93started 7.40.3 4/7/14
94- fix compile with older libvipes, now goes back to at least 7.30
95- fix more bash-isms to help freebsd
96- don't test IM by default, in case it's not installed
97- get graph display working again with latest libgvc
98
99started 7.40.2 30/6/14
100- fix quoting in magick commands
101- auto-fallback to gm if no convert found
102- use libxml2 pretty-printer
103
104started 7.40.1 24/6/14
105- update copyright date
106- larger max size for dialog text
107- fix popen()pclose() warnings on win
108
109started 7.40.0 23/6/14
110- version bump
111
112started 7.39.0 28/1/14
113- add optional libgsf dependency
114- added export-to-file to plotwindow
115- added graph_export_image
116- added .to_image to Plot
117- added .caption / .xcaption / .ycaption options to Plot
118- added caption / xcaption / ycaption options to Plot_object
119- added snibgo's much better ImageMagick menu items
120- added test_magick.ws to make check
121- added series_captions option to Plot_object
122- support imagevec as a vips_call argument
123- added system2 and system3
124- added Magick.version detector
125- better image cache menu item
126- added hough_line and hough_circle
127- removed tear-off menus, gtk+ has deprecated them
128
129started 7.38.4 23/6/14
130- fix memccpy() in tool.c, thanks khindenburg
131
132started 7.38.3 16/5/14
133- fix tiny timeout error
134
135started 7.38.2 21/1/14
136- fix a tiny mem leak
137
138started 7.38.1 20/1/14
139- fix scRGB display
140
141started 7.38.0 18/1/14
142- version bump
143
144started 7.36.6 9/1/14
145- fix some clang warnings
146- add some brackets to find_colour-calib, seems to help clang builds with
147  optimiser, strangely
148
149started 7.36.5 19/12/13
150- add "merge into ws" item to rmb tab gutter menu
151- oops, progress feedback was accidentally disabled
152- error boxes were accidentally supressed
153
154started 7.36.4 18/10/13
155- fix bootstrap warnings
156- use g_mkdir()
157- better load of workspaces with closed columns
158
159started 7.36.2 8/10/13
160- add --profile option
161- fix + button on wsgv
162
163started 7.36.1 7/10/13
164- better ^Q behaviour, thanks MvGulik
165
166started 7.36.0 3/10/13
167
168started 7.35.0 9/8/13
169- removed old thing to show API docs (thanks Benjamin)
170- measure now lets you pick the area to measure, and draws sample patches
171- new column now goes to right of current column, not alphabetically
172- detect doubleclick on ws tab label background
173- tabs can be locked
174- tabs have error indicators
175
176started 7.34.1 28/6/13
177- fix build on older gtk, thanks Joe
178
179started 7.34.0 7/6/13
180- version bump
181- drag col to far left to insert
182- fix compat warning text
183- fix prefs revert to default
184- reenable scroll-wheel slider change in paintbox and conversionview
185- insert new columns in alphabetical position
186
187started 7.33.0 14/3/13
188- add tabs
189- get_* work on Groups
190- columns snap to a grid
191
192started 7.32.2 12/3/13
193- add a test for seq mode
194
195started 7.32.1 7/3/13
196- remove "fred" from dist
197- license updates, thanks Benjamin
198
199started 7.32.0 22/1/13
200- added colour temperature to colour and colour to colour temperature
201- removed gtksheet, broken on windows, no future on anywhere
202- added histogram invert
203- much better Matrix / New items
204
205started 7.31 3/9/12
206- don't show tooltips for toolkit menu items with submenus (thanks MvGulik)
207- better definition of foldr1
208- better definition of to_group (thanks MvGulik)
209- better defintion of scan, renamed as scanl
210- don't clear def browser filter on text buffer ::changed in program window
211- update program window filter on cursor move
212
213started 7.30.2  24/12/12
214- small fix for OS X ML
215
216started 7.30.1  7/8/12
217- update rectangle select (thanks Joe)
218- group save was broken (thanks John VV)
219
220started 7.30.0  20/7/12
221- update for new version
222
223started 7.29.0  20/6/12
224- added skew and kurtosis
225- added Definition Browser to program window, shows stuff as you program
226- program window cleanups
227- Find calib is much faster and handles linear float input better
228- Find calib optionally leaves brightness untouched
229- Apply calib handles linear float input better
230- add a 7.28 compat area
231
232started 7.28.5, 8/5/12
233- change keybinding for Delete to ctrl+bsp to work around a GTK bug
234- rewrite filenames on workspace load, file selection and file drag-drop
235
236started 7.28.4, 6/5/12
237- added bigtiff save option
238
239started 7.28.3, 17/4/12
240- up max size of user defs, lets you work with larger groups
241
242started 7.28.2, 10/4/12
243- complex constant divided by real constant was wrong
244- more self-tests
245- disable the libvips operation cache, it doesn't know about invalidate and
246  breaks various things
247
248started 7.28.1, 12/3/12
249- oop, add Array to private Type decoder (thanks MvGulik)
250- new version of Draw / Scale (thanks Joe)
251
252started 7.28.0, 30/1/12
253- bump for new stable version
254- better "make check"
255- disable asserts and cast checks in production builds
256- much faster draw_rect
257- remove background stipple from image display (helps win32)
258- Draw / Rect lets you adjust line thickness
259- added Draw / Scale (thanks Joe)
260- added VipsStats test (thanks Rebecca)
261
262started 7.27.0, 23/8/11
263- bump for new cycle
264- add raw load/save test
265- test fits load/save
266- better image header display, now on right-click rowview menu
267- search image header
268- rmb popup menu on imageview windows
269- popup menu button widget
270- added "vips_call" builtin to call any vips8 operation
271- added Matrix / New / Series
272- added Matrix / Sort
273
274started 7.26.5, 31/12/11
275- fix possible security thing in yyerror(), thanks Jay
276
277started 7.26.4, 14/9/11
278- better error messages for print-main
279
280started 7.26.3, 15/8/11
281- tidier cancel messages
282- disable dump.c debug
283
284started 7.26.2, 10/8/11
285- update threading test for fixed benchmark
286- fix blocking in progress update (thanks M. v. Gulik)
287- search returns empty list for file not found rather than throwing an
288  exception
289- magick_command tries to use $VIPSHOME/bin/convert.exe, if it exists
290- magick_command tries quotes filenames
291
292started 7.26.1, 28/7/11
293- much better threading test, based on im_benchmarkn()
294
295started 7.26.0, 26/7/11
296- version bump
297
298started 7.25.0, 7/1/11
299- version bump
300- oop spelling
301- fix a crash with resizing dirty matrices
302- minor fix to vips_call error messages
303- more tests in "make check"
304- moved vips_cache and vips_call out of the vips_ namespace
305- added approx. option to blur/sharpen
306- added Matrix / New Circular / Square / Identity
307- removed the splash screen, all machines are fast enough now
308- added EXEEXT env var
309- better "bad superclass" error
310- changed order of args for Option_enum
311- added Option_list
312- added a simple Magick menu
313- better compat handling
314- added a 7.24 compat dir
315- removed the "already open for read" error on save, too annoying for the
316  small amount of safety it gave you
317- test pfm load/save
318- also test cmyk jpeg/tif load/save
319- allow file modes in filenames, so "nip2 wtc_pyr.tif:2" works
320- show main window much sooner during workspace load and startup
321- better progress feedback
322- added Image / Select / Rectangle
323- added Image / Draw menu
324
325started 7.24.0, 30/11/10
326- bump for 7.24
327- fix build without graphviz
328- much faster colour atlas menu item
329- fix make check, again
330- fix debug everywhere
331- fix a va_args problem on Windows
332
333started 7.23.0, 2/8/10
334- fix a crash in thumbnail preview with large images
335- doublelick while painting with a rect (eg. text) would crash (thanks
336  M.v.Gulik)
337- drag multiple workspaces to the mainw could get stuck (thanks M.v.Gulik)
338- find-again before find would crash (thanks M.v.Gulik)
339- open multiple ws in file browser would crash
340- added filemodel_set_window_hint() and filemodel_get_window_hint() to help ^Q
341  display popups on the right window
342- split vips_call.c to vips_call / vips_cache
343- added IM_TYPE_RW support to vips_call.c: you can call paintbox operations
344  directly now
345- gtk_window_present() parents when we show children in iwindow.c
346- fix a crash with win32 and two PRESS on a window while in rect mode
347  (thanks M.v.Gulik)
348- fix a crash with duplicate Colour (thanks M.v.Gulik)
349- fix an occasional crash with ^Q in imageview
350- added high-quality thumbnail option (thanks Martin)
351- set lib env var more carefully (thanks Jay)
352- configure tests for libgvc, the graphviz library
353- added "Workspace as graph" view option
354- better "segment" menu item
355- "value" menu item
356- rename stuff to avoid name clashes with cfitsio
357- "make check" runs twice, with and without vector stuff
358- better infobar behaviour
359- test_conv.ws tests convolution carefully
360- nib radius slider replaces the old 1-10 dropdown, nibs above radius 0 are
361  anti-aliased
362- changes to help rhel5
363- oop, could delete vips files accidentally
364- better file search
365
366started 7.22.2, 5/7/10
367- show nthreads in space free tooltip
368- fix win32 button order, again
369- fix duplicate workspace
370- added ^Q, for quit nip2, to all windows
371- rename gtk_entry_*() to gtk_item_entry_*() in gtkitementry.c, thanks Adam
372
373started 7.22.1, 13/6/10
374- relax tolerances in test_colour.ws, thanks Peter
375- improve region repaint during drag, thanks Ruven
376- test relational constants
377- test load / save in various file formats
378- test threading system
379- removed malkovich locale, oops
380
381started 7.22.0, 12/5/10
382- version bump
383- gtksheet sizing changes, again
384- plot window destroy cleanup
385
386started 7.21.0, 8/12/09
387- 7.16 ws load could fail (thanks Jim)
388- "make check" tests the example workspaces too
389- nip2-cli.c improvements (thanks Leo)
390- leak test improvements
391- set double-click time from the system
392- don't copy to file for paintbox, it makes dangling pointers if you use it in
393  complex workspaces
394- thumbnail updates on paint actions, woo
395- rect and text tools have a working preview box
396- safer handling of missing exprs in formula
397- handle im_invalidate() in paintbox ourselves
398- much faster and smarter image window repaints, especially with the paintbox
399  active
400- #CPUs in prefs defaults to zero, meaning autodetect
401- works without GtkInfoBar
402- better show/hide behaviour for paned
403- progress feedback for paintbox open
404
405started 7.20.5, 27/11/09
406- fixed up GtkInfoBar support
407- oop, help was rather broken
408
409started 7.20.4, 26/11/09
410- removed 'browse thumbnails' button from filesel
411- added 'preview' widget to file open
412- added some basic GtkInfoBar support
413
414started 7.20.3, 25/11/09
415- argh, button order error in dialogs on win32
416- updated help index
417- initial window size was too large
418
419started 7.20.2, 11/11/09
420- make GRegex optional so we can work with older glibs
421- fix a crash with "-p" and Managedstring
422
423started 7.20.1, 11/11/09
424- add "convf" operator
425- default number of CPUs bumped to 4
426- plot.c can work with goffice-0.7.15
427
428started 7.20.0, 9/11/09
429- version bump
430- "make dist" fixes
431
432started 7.19.0
433- remove deprecated use of GtkList in option edit ... needs replacing
434- dropped in new Joe defs (thanks Joe)
435- reverse dialog button order on win32
436- fix memleak with IMAGEVEC args to VIPS
437- _check_all etc. no longer chain up, for a slight speed increase
438- fix crash with "" as LHS for various copy operations, eg. ("" ++ "a")
439- add test_snip.def to test language features
440- replace-from-file marks a workspace as modified
441- Arrow and Mark grab handles improved
442- "don't attach a profile" option for jpeg save
443- fixes for gtkdoc merge
444- set TMPDIR on startup to help im_system()
445- add RAD as a coding type (thanks Roland)
446- add Filter / Morphology / Segment menu item
447- much faster meanze for 8 & 16-bit unsigned images
448- added a "rotate" option to custom convolution
449- added Histogram / Find / Indexed
450- Cache defaults to 128x128 tiles
451- use libgoffice to display plots
452- use new gtksheet widget, fall back to treeview if we can't build it
453- better regexp searching in Program window (now full PCRE)
454- oop horrible tree_map() bug with uops caused a variety of strangeness
455- group image save now sets image save options (thanks Joe)
456- sum and product now work for any object
457- don't set non-existant properties in vips_object_new
458- faster constant image maker with im_embed()
459- added "join image array from list", thanks Joe
460- phew, label backgrounds are back
461- added raw import (thanks Jim)
462
463started 7.18.0
464- bumped version numbers
465- added 7.16 compat mode
466- revised manual
467- added snohalo1 wrapper
468- dropper did not update inkwell picture
469- better button colour changes
470- fix examples
471
472started 7.17.2
473- added progress.[hc] for a better progress/cancel system (again)
474- splash screen uses new progress system
475- added list delete, difference, "--" operator
476- fixed a bug with startup recomps not happening (it was trying to do them
477  in the background, argh)
478- buildlut makes Plot, not Image
479- much faster gaussian mask build for large masks
480- "Size To" has a "break aspect ratio" option
481- better error message for "[1, 2] < [3, 4]"
482- support RAD coding
483- added Radiance menu
484
485started 7.17.0
486- merged 7.16 branch back into trunk
487- bumped version number
488- manual version number was wrong
489- removed vips8 link, we've started moving that stuff into vips7 now
490- patches for ubuntu 8.10
491- added yafr interp
492- rotate etc. now have an interp param
493- revised "resize" to use new modes
494- transform menu items have inter options
495- configure fails if bison is not found
496- fix the filesel filter after a filename change
497- nicer message on cancel
498- new VipsFormat stuff
499- LEXLIBS->LEXLIB (thanks Adam)
500- added Managedstring, removed old static string system
501- caption columns can be null, display "doubleclick to edit .." message if
502  they are
503- added vipsobject builder from old call8 code
504- added vips_object_new builtin
505- moved BufInfo down into vips
506- added IM_INTERPOLATE to vips_call
507- added Interpolate class and Interpolate_picker
508- error window output no longer truncates on symbols with many errors
509- renamed 'Recover After Crash' as 'Search for Workspace Backups'
510- better Scale alignment in display
511- regions and scales default to live dragging
512- better image display defaults (no ruler, no display bar etc.)
513- thumbnails are transparent when you drag them
514- side panes have titlebars and close buttons
515- block attempts to OK on directories in file dialogs
516- we have a copyright symbol! nicer 'about' box too
517- better region label positioning
518- double images ignored rgb16/grey16 hints
519- configure dies if flex/lex not found
520- Managedgobject."property" works
521- added (dir gtype), (dir gobject)
522- oops, rank filters were off by one by default
523
524started 7.16.3
525- fixed cancel system (again)
526
527started 7.16.2
528- argh, "-o" was broken
529- oops, some left over code for function overloading in the parser
530- init builtins earlier, so we can spot accidental redefinition
531- added a NULL type, Group now uses it to indicate an empty slot
532- another stab at fixing the order of startup actions
533
534started 7.16.1
535- better pointer set
536- fixed a couple of notify snafus
537- use g_assert() instead of assert() to avoid abort() death
538
539branch for 7.16
540- bumped version
541- grey16/rgb16 not always set on colour space conversion
542- revamped test system
543- set GValue strings as refstrings
544- try to transform gvalues we get to strings, if we can
545- added Joe's shrink within macro
546- removed the last of the fade stuff for faster repaint
547- open multiple now makea a group, so we can process more files at once
548- revamped 'make check', much nicer and more useful
549- better file type guessing
550- better progress feedback
551- revised image write code gives better feedback
552- better group-save, again
553- fixed a problem with recalc backtracking
554
555started 7.15.0
556- fixed segv with making tools for non-toplevels
557- expand the heap if more than 50% full after a GC (was 70%)
558- added nip2-cli.c (thanks Leo)
559- updated README
560- more HIGgy titlebar text in mainw/program
561- refactor: IWINDOW_TRUE/_FALSE renamed to _YES/_NO
562- adjustable panes in image header view
563- histdif was broken for unsigned image types
564- fix memleak in compile_lcomp()
565- better --help text
566- get rid of intltool
567- use g_idle_add() instead of GAsyncQueue for render notify
568- fix a segv in imageview destroy
569- == did not always find the best method
570- better time debugging in symbol recalc
571- added $var for string constants
572- added s => v syntax
573- fixed recursive invocation bug in vips_call.c
574- much better hashing of vips calls
575- configure shows a summary at the end
576- syntax change :-( lcomps now use [expr :: generators] to reduce ambiguity
577  the old syntax failed for things like [a || b | a <- [true]; b <- [false]]
578- added --test, so we can check test_toolkits automatically
579- added --prefix, so we can run without installing
580- added "make check" support
581- got rid of the annoying progress popup, it's back in the status bar now
582- status bar tells you which sym it is computing
583- revised busy system does all busy feedback
584- configure switch to stop update of desktop database (thanks Adam)
585- vips_call hashing improvements
586- images are GCd after 60s of inactivity, rather than immediately, giving
587  the call cache a chance to revive them ... speedup in some cases
588- added a 7.14 compat area
589- join_lr/_tb args swapped
590- check_args now does not recurse up a class, instead all _check members have
591  to chain up ... a bit quicker
592- watch "invalidate" in vips_call.c cache ... so paint actions now decache
593  indirect results as well
594- added Math / Cluster, though it needs a bit of work
595- insert now format-alikes
596- another go at removing refresh flicker ... region dragging flickers a bit
597  instead
598- added Image / Header / Get / Custom
599- recurse for save groups of groups
600- added Image / Cache menu item
601- merged loadable-formats branch
602
603started 7.14.0
604- updated docs
605- added 7.12 compat
606- check for update-mime-database and friends (thanks Tom)
607- more leak fixes
608- updated examples and prefs workspaces
609- break _Object.def out of _types.def
610- better "if image then constant else constant" behaviour
611- fixed segvs with IMAGE lifetime and progress dialogs
612- use xdg-open to show help pages, if available
613- fixed segvs with IMAGE lifetime and progress dialogs
614- fixed segvs with outdated iimage change callbacks
615- some tweaking of the toolkits menu
616- fixed another lcomp bug
617- intercept from greyscale option in find_calib
618- removed unnecessaary assert() from parser
619- recomp all on startup even in batch mode fixes some strange bugs
620- apply calib works for groups of images
621- renamed Error as iError to help windows
622- more small windows fixes
623- more small os x fixes
624
625started 7.13.3
626- save image was broken, weakrefs were not being updated
627- wrongly setting vips-7.8 region compat mode on all old WS load
628- "Close" in ws defs pane menu was not working
629- removed image window / plot window transient-for behaviour, we lost maximise
630  buttons :(
631- block ungroup of things larger than 100 elements
632- allow +/- for zoom in and out shortcuts
633- mainw rmb menu has open/merge items
634- merge ws doesn't add extra space
635- added LHS patterns, eg. "[a, b] = fred 12;"
636- better spacing in merge ws / load ws
637- added is_list_len and friends ... faster then len for long lists
638- compile on demand, saves 25% of startup time
639- now bison only, we won't work with yacc (will package deps need updating?)
640- added lcomp patterns, eg. "[x*y|[x,y]<-zip2[1..10][11..20]]"
641- use LHS patterns in defs
642- oop, dist typechecking could segv
643- split trace.c to make log.c, base class for logging windows
644- added error ... error logging window
645- added destory_if_destroyed() and done some cleanups
646- oop, im_and_image etc. refs remaining in compat
647- disallow const-only LHS patterns, eg. "12 = fred;"
648
649started 7.13.2
650- remove Application from nip2.desktop.in
651- revised progress system ... works for "max" now!
652- fix reporting of parse errors in inner scopes
653- lcomps now nest correctly ... try "Matrix [[x*y|x<-[1..10]]|y<-[1..10]]"
654- workspaces loaded from stdin with -w save more sensibly
655
656started 7.13.1
657- you can type "fred = 12" into a columnview, woo
658- gah, lcomps had "undefined" set on various members because of trimming off
659  parser temps
660- more visible arrow dashes
661- added pane.[hc]
662- added a left pane to mainw to hold ws-local defs
663- ws-local defs sort-of work
664- added workspacedefs.[hc]
665- print all workspace mains on exit too
666- renamed lor/land as any/all, in line with Haskell
667- added INTVEC and DOUBLEVEC output
668- added greyc filter
669- added "--set" command-line option
670- better left/right pane widget
671- resize tk browser search box with pane
672- nicer widget colour change ... use "*xx*" in style file rather than setting
673  names and contained names
674
675started 7.13.0
676- woo, fork for new development version
677- started cleaning up parse.y
678- simpler DOT syntax ... A1."poop" works now
679- added lambdas ... \x x + 1
680- added listcomp syntax ... [x | x <- [1..]; x > 12]
681- recomb was broken for >3 band images (thanks km)
682- lambdas were not being marked as locals correctly, oops
683- added listcomp code generator
684
685started 7.12.5
686- tiny win32 cleanups
687- nicer formula widget, better view switching
688- better file filter lookup
689- oops, min and max only worked for rectangular lists
690
691started 7.12.4
692- cleaner Makefile.ams
693- transform was only working for [[real]] :-( (thanks Mikkel)
694
695started 7.12.3
696- added right click / save for plot widgets
697- remove .svn dirs from dist
698
699started 7.12.2
700- added support for TIFF predictor
701- added Tasks / Capture / Plot Bands
702
703started 7.12.1 9/5/07
704- custom convolution of Plot no longer loses Plot wrapper
705- better plot colours
706- better spacing in plot status bar
707- added histogram differentiate, zero crossings
708- better ifthenelse on groups
709- added "expr.(expr)" form, removed builtin get_member
710- larger sensitive area for arrow crosshairs
711- added region-on-image-from-region, again
712- minpos/maxpos work for lists
713- Math / List works for Groups
714- maxpos/minpos return -1 for []
715- max/min error for []
716- stricter about the empty matrix being [[]]
717- image/Image ==/!= list was broken
718- empty groups were broken
719- remove special case for assemble on groups ... you now need to group->list
720  first
721- [] as a group member means no-value
722- better Group insides
723
724started 7.12.0 28/4/07
725- fix up 7.10 compat mode
726- more fixes to the convert.sed script
727- small fixes to 7.12 toolkits for test_toolkits.ws
728
729started 7.11.18 10/3/07
730- added plotwindow, floatwindow
731- duplicate plot was broken
732- floating plots have stuff
733- gtkplotcanvas.c only swallows motion/buttonpress events it handles
734- gtkplotcanvas.c no longer tries to do focus handling
735- plotwindow status bar
736- added plotmodel.[hc], plotpresent.[hc]
737- plotview has a caption, displays class name
738- better captions for real/group/vector in heapmodel
739- gtk_plot_canvas_destroy() was not unreffing the pixmap (thanks Simon)
740- added next error stock item
741- better clock value display
742- added keep-child-windows-in-front pref (thanks Rachel)
743- gtkplotcanvas.c has new cursor handling stuff to help nip do cursor changes
744  for middle-drag scrolling
745- lots of toolkit tweaks
746- revised the manual
747- ooop, increment_filename fix, it was putting the number at the start of the
748  filename if there was no number there
749- better batch mode error messages, added -V flag for verbose messages
750- oop, variable name from filename was a bit broken
751- started revising the examples
752- increment on save and browse thumbnails were broken by gtk-2.10, gah
753- removed debugging menus
754- bump for 7.12! w00t
755
756started 7.11.17 26/1/07
757- snap hdrag of columns to make lining up easier
758- better CSV import
759- added zero-excluding mean and deviation to Math
760- better set-workspace-name on ws load
761- started a ws background popup menu
762- grey ramp orientation swaps w/h
763- better display control bar scale/offset for HDR XYZ/Lab/etc. images
764- possible fix for intermittent fail to recomp on edit bug
765- fix for image * group
766- paste in gtkplot sources (we will probably need to hack it about a little)
767- added plot/plotview
768- oop, memleak in icontainer
769- added a temporary Plot menu for testing
770- set plot tick step to avoid mad mallocs on large ranges
771
772started 7.11.16 21/12/06
773- look for release on rulers as well as press
774- adapt for new Hist system
775- use im_concurrency_set()
776- add im_get_option_group()
777- oop, recursive invocation gah
778- slightly better error messages
779- better mainw title bar text
780- added 'splits'
781- better trace / profile / leak options
782- more robust find chart calib
783- only interpret RGB16 for display for int formats
784- change im_histgr args
785- oops, paintbox could set delete-on-close sometimes
786- custom blur has many more controls
787- better inter-workspace "depends on ..." messages
788- chop/assemble image arrays now work on groups of groups, not list of lists
789  so you can process the chopped up image
790- added 7.11 toolkit_tester, plus a little sed sscript to update old workspaces
791
792started 7.11.15 6/12/06
793- tiny fixes to startup code
794
795started 7.11.14 6/12/06
796- Vector arithmetic fix
797- Vector display class
798- more Matrix fixes
799
800started 7.11.12 8/9/06
801- Image Rank no longer rounds up
802- only obey IM_CONCURRENCY pref in GUI mode
803- added GVALUE input/output args
804- added set_header, Set Metadata
805- use LC_ALL rather then LC_MESSAGES (thanks Simon)
806- better range == 0 check in conversionview
807- re-added make-named-column action
808- better textview reset during background recomp behaviour
809- added LUT from scatter
810- added AC_CHECK_TOOL to configure to find tools for cross-compilation.
811- added map_nary, Crop now loops on all args
812- test for glibtoolize during configure
813- added tag image as hist, set type, image->matrix more flexible
814- added get header field
815- added Real displayer
816- reordered Image menu
817- optionview refresh was a bit broken
818- ruler resize was a bit broken
819- map_nary recurses
820- make image windows children of the mainw ... so they can't pop behind
821- "mean" can do lists of images etc.
822- move ->parent from idialog into iwindow
823- revised to_list behaviour, added to_Group
824- show save prefs automatically on save
825- removed broken scroll on focus code in columnview
826- map_*ary no longer loop over lists ... they often represent compound
827  objects, eg. "mean [1, 2, 3]"
828- new preferences viewer
829- kill parent of nested dialog now kills dialog as well
830- more JPEG save prefs
831- CSV save prefs
832
833started 7.11.11 18/7/06
834- small polishes from gtkdisp3
835- tweak for im_init_world() changes
836- better behaviour for scale == 0 in conversionview
837- better original-filename handling
838- use im_msb() for GREY16/RGB16 images
839- csv2vips wrapper update
840- added parse_time
841- fontname defaults to "Sans" ... stops a warning on load
842- set window title less often
843- update i18n infrastructure
844
845started 7.11.10 23/6/06
846- sync CVS again
847- oop, selected closed columns caused kb grab confusion
848- added call8.[hc].. vips8 interface
849- new builtins vips_image_new, vips_call
850- reworked doc build again, seems to work in dapper now
851- added missing .br to man page
852- allow '_' in environment variables in "expand"
853- mainw tooltip reports operation cache size
854- upped default memoisation cache max to 10000
855- better caption for Group objects
856- oop, mac os x detect was broken
857- GSL error handler
858- more work on vips8 interface
859- add gcc attributes for varargs and noreturn
860- mac build fixes
861- keep prefs in ~/Library on mac
862- vips8 interface done
863- more tweaking for vips_call for robustness
864- quick stab at background recomp in workspaces ... some stability problems
865- tiny Toolitem fixes
866- "Calculating ..." appears in status bar during a background recomp
867- is_image builtin says yes to vips8 images too
868- added Analyze and Vips8 menus
869- added vips8_get_header builtin
870- better ifthenelse behaviour for image/constant mixes
871
872started 7.11.9 15/5/06
873- reverse order of decls in image_name etc. to sensibleify Change Header
874  options
875- better HIST preserving
876- bug in complex display control bar (thanks Jean)
877- use gtk_disable_setlocale() to preserve LC_NUMERIC setting (thanks Peter)
878- more g_ascii_strtod() and friends for double parse/print
879- disallow vips funcs with no input args
880- gtksheet was freeing pixmaps with g_free(), not g_object_unref()
881- better matrix type guesser
882- optional link to vips8 for testing
883- CSV load/save
884- strict reduction of vips_call arguments prevents GC during argument gather
885  and dangling pointers
886- oop, problem in Transform in Image.def
887- added "dir" builtin
888- always grab focus for bottom entry widget on column select
889- even more test view reset tweaks
890- added "objects in workspace" count to main status tooltip
891- limit number of cursor shape updates
892
893started 7.11.8  22/4/06
894- added gravity, Find Projections now shows centre
895- added project
896- added OpenEXR read support
897- fewer int/void* tricks to help x64
898- call im_existsf() more sanely
899- better Group caption
900- don't save/load ->name automatically ... better 7.10 compat
901- better pointer printing
902- added support for RGB16 and GREY16 image types
903- workspace window size is saved in ws file and overrides the global default
904- some edit dialogs now done with member automation
905- fixed NO_SPLASH
906- fixed scroll to row on error, for closed columns
907
908started 7.11.7  11/3/06
909- allow complex constants of the form "12j", cf. python (also allow i)
910- optionally display complex as "x + yj"
911- ifdef'd out some more debugging code .. saved 30kb!
912- new Managed class abstracts out code for GC/C managed objects
913- Imageinfo now sits on this
914- Managedfile object replaces the thing we had for read
915- split trims trailing fails too
916- scrapped ELEMENT_IMAGE .. we just have managed objects now
917- added managedgobject
918- added experimental Clock class
919- moved some views into modelview.c
920- delay showing the hglass for 0.2s
921- change clock to seconds, subclass off Real
922- modelview now has a right-button menu
923- disable tile fade animation for thumbnails
924- model _get()/_set()/_load()/_save() now automated
925- sort column jump widget
926- better scroll-to-column behaviour
927- column jump is tear-off-able
928- column jump is sorted by column name and name length
929- added geometric mean
930- added sum, product
931- added linear regression
932- fixed assert( 0 ) for VIPS operations with an implicit DISPLAY param
933- added optional dependency on GSL, added gammq builtin
934- print_base was broken for some argument combinations
935- shift + mwheel scrolls left-right in workspaces
936- update thumbnail on falsecolour / type changes in display bar
937- matrix now uses member automation
938- main uses GOption command-line parser
939- make sure we don't clear dirty on rows coontain errors
940- optionview only rebuilds the menu on change
941- 7.10 compat defs updated
942- itextview/clock fixes to make editing members easier
943- added -o cmdline switch
944- scrapped print-last mechanism ... printing main from an associated .def file
945  is much better
946- always set argv, allow save of Image, split save to file and print value
947- save Matrix as well with -o
948- added -e option
949- revised man page
950- added Find Projections
951- raised default memoisation cache size and heap size
952
953started 7.11.6  18/2/06
954- custom morph was broken, grid was broken (thanks Dave)
955- Matrix_file now uses "search"
956- reorganised morph menu slightly
957- added Format / CSV import
958- better handling of display of very long strings
959- added lazy (read "filename") builtin
960- \n was missing in expr_info error report
961- removed "save successful" info box for great HIG-ness
962- added is_prefix, is_suffix, is_substr
963- Pathname widgets add to session path
964- widgets like Group, Toggle, etc no longer add annoying stuff to tooltips
965- readded "auto-recalc" menu item
966- renamed Slider as Scale and added a caption field
967- oops, string constant "\\" failed
968- drag from konqueror might work now
969- added hist_thresh, added threshold items to Image / Levels menu
970- prettier Scale display, better display of multiline class member formula
971- added correlate, correlate_fast, Filter / Correlate
972- added "jump to column" menu item, handy for navigation in large workspaces
973
974started 7.11.5  15/2/06
975- added "search" builtin
976- (c) line changed
977- itextview mouse enter/exit now does help/highlight
978- itextview insensitive in noedit mode
979- tweak formula to stop resize with clearlooks theme
980
981started 7.11.4 18/11/05
982- added tile fade pref for Kirk ... it is a bit slow on win32
983- fix compiler crash for [1..2] (thanks Jay)
984- automatically add an icon to the win32 .exe
985- added -main_load_args switch ... just a temp hack
986- better -main printing
987- added "path_separator" ... either '/' or '\\' depending on platform
988- better char constant parsing
989- better char constant display
990- added path_relative/_absolute/_parse
991- prefs now switch between / and \ automatically
992
993started 7.11.3 26/9/05
994- display original filename only for iimage which really were loaded from a
995  file
996- ppm read uses direct open, rather than converting to vips
997- fixed used-before-set problem in option ... could cause segvs when
998  displaying rows built from .defs containing errors
999- added Filter / Blend / Alpha Blend (thanks rich)
1000- added Edit / Info (Ctrl-I) to mainw, some stuff there now, space for more to
1001  go in
1002- removed nip2-7.11.ebuild now that nip2 is in gentoo portage
1003- desktop integration binds .v files to nip2 (thanks Ruven)
1004- align cols marks the ws as modified
1005- configure.in magic stolen from pango ... we now automatically disable
1006  gobject cast checks in production builds
1007- display formula rather than value if there's a visible graphic
1008- falsecolour and type applied to thumbnails
1009- fix gcc4 warnings
1010- use g_mem_profile()
1011- plot slice can now plot along any arrow
1012- oop, some filters inadvertantly overrode width/height
1013- fix isclass is_class confusion
1014- itextview only shows value for non-class rows ... we assume members /
1015  graphic will show the value, so we show the formula
1016- don't apply scale/offset displaybar controls to histograms / fourier images
1017  if Interpret Types is on
1018- better initial kb focus for file load/save dialogs
1019- better tooltip for iimageview
1020- tooltips on demand function added
1021- colourdisplay, ... adapted to new dynamic tooltip API
1022- use input-only eventboxes for spinbuttons
1023- better rowview tooltip
1024- oops, buf_appendc() was a bit broken, fixed in vips too
1025
1026started 7.11 (1/6/05)
1027- view image header now shows meta fields too
1028- does INTVEC args to vips
1029- now in CVS
1030- added Analyze format
1031- added name2gtype, gtype2name builtins
1032- added get_header, grid, matrix lr/tb join
1033- slice into tiles was broken for case tile size == image size
1034- removed led.[hc], now uses stock system
1035- always define our own strcasestr
1036- icc import offers to use embedded profile
1037- added 7.10 compat mode
1038- "reset" in display bar resets to workspace default, not to 1/0
1039- column titlebars reorganised
1040- reenable gtksheet support now gtkextra-2.0 is out
1041- original-filename tracks name loaded at
1042- bumped version to 7.11.2
1043- oop, fixed a nasty refresh bug
1044- configure now adds LEXLIB to link line
1045- pasted gtksheet code in so we can hack it
1046- added matrix area selects
1047- added Matrix / Extract / Area
1048- slightly better default widget handliing in dialogs
1049
1050started 7.10.11
1051- docs no longer contain absolute nav links
1052- increment filename on save works again
1053- hide closed columns in NOEDIT mode
1054- install a .desktop file for GNOME (thanks Denis)
1055- group, right click, ungroup, no longer pops a spurious error dialog
1056- new pref lets you not use the crosshair in image display windows ... some
1057  desktop themes have very annoying crosshair cursors
1058- call libMagick less to reduce segvs from the file open dialog with broken
1059  ImageMagick libs
1060- show args in vips history
1061- fixed a rounding bug in image resize which sometimes made it miss by a
1062  pixel
1063
1064started 7.10.10
1065- fixed crash in vips_call with repeated calls to fns with large image vectors
1066- fixed crash replacing a region with an image
1067- fixed exit if temp area was missing (thanks Denis)
1068
1069started 7.10.9
1070- allow filenames containing ':' chars
1071- uses im_render_fade() for prettier image display
1072- added CCITTFAX4 compression mode for TIFF save
1073- oops, image save options were being ignored :-(
1074- fix 64-bit compiler warnings
1075- fixed problem with very long filenames
1076- recover-after-crash no longer messes up recent menu
1077- "Jump to" in program window was broken
1078- fixed a crash with very large objects (thanks David)
1079- swap shift/control scroll modifiers to match HIG
1080- rotate matrix works for any size matrix
1081- rotate quadrants works for matrix as well as image
1082- added recalc after reload start stuff
1083- use auto label wrap
1084- firefox is now the default HTML viewer on *nix
1085- limit matrix display size to 10x10 unless we have gtksheet
1086- small startup speedups
1087- destroy views when a column is folded away to save some memory
1088- added Image Rank
1089- band join is much faster at joining many bands
1090- safer empty temp area
1091- added cute column open/close animation
1092- fixed a couple of problems with region dragging in compatibility mode
1093- removed column name dialog (thanks Joe)
1094- program window now lets you collapse the current kit
1095- allow \r in .def files (so we work with DOS edited files)
1096- added Image / Tile / Chop Into Tiles
1097- added 'Open Examples'
1098
1099started 7.10.8
1100- explicit gthread dependency makes us work even if vips is built without
1101  threads
1102- tiny .def fixes
1103- "-time_save" switch turns on image save timer for benchmarking
1104- mainw, trace, imageview, program now use gtkaction / gtkuimanager
1105- mainw and imagewindow 'view' settings now update prefs for you
1106- trace window uses new gtk_text_buffer/view widget
1107- image header uses GtkTextView for history display
1108- program window uses GtkTextView / GtkTreeView
1109- windows remember their size and pane positions
1110- fix a crash for edit defs of live widgets in prog window
1111- removed default file type pref ... now remembers last image and matrix file
1112  type
1113- added "Set As Workspace Default" to conversion bar
1114- mnemonics for more popups
1115- fixed a crash if you quit mainw with an image window open (thanks Jay)
1116- new default cursor for imageview windows (thanks Jay)
1117- regions only update when grabbed
1118- now passes distcheck
1119- use g_setenv(), g_mkstemp(), IM_FREE*(), g_set_application_name(),
1120  g_set_prgname()
1121- better cursor change layering
1122- better initial toolkitbrowser size
1123- absoluteize & canonicalize VIPSHOME (so we work with a relative path for
1124  VIPSHOME)
1125- better time-to-go text
1126- more fixes to help compiles on 64-bit systems
1127- invalidate operation cache on paintbox actions ... makes paint on FFT work
1128  again
1129- save settings in APPDIR on win32 rather than a dotfile
1130- added SAVEDIR environment variable
1131
1132started 7.10.7
1133- tiny build fixes
1134- added "_" builtin function for i18n of toolkit menus
1135- softer 'unpainted' checkerboard (thanks Kirk)
1136- added "-i18n" command-line switch ... outputs constant _() strings and quits
1137- compiled string constants are automatically shared between all defs
1138- (_ "kjh") substituted at compile time
1139- started marking up .defs for i18n
1140- trace_args() was printing backwards
1141
1142started 7.10.6
1143- uses fftw3 if available
1144
1145started 7.10.5 19 oct 04
1146- removed "beta" from version
1147- perspective distort works on groups (thanks Joe)
1148- added get_left/get_top
1149- chaneg and tag colourspace now have option boxes
1150- new enum class and option builder cleans up some stuff
1151- fixed crash for display control bar scale on black image (thanks Mikkel)
1152- fixed image windows appearing off screen for workspaces made on large
1153  displays being used on small displays (thanks Mikkel)
1154- un-offset regions during create in compatibility mode (thanks Rachel)
1155- fixed a race in vips history memo-isation (thanks Joe)
1156- speedups to vips function call history too
1157
1158started 7.10.4 4 oct 04
1159- always include formatted html in dist, and install on install
1160- enable line crawl on win32
1161- prefs now autolayout, so look sensible even with font changes
1162- added Image/Bands/Extract|Insert|Delete
1163- linear match now works for groups
1164- prefs were not always saving automatically
1165- white_balance now takes two args: uses band ratios in small image to
1166  fix large image ... makes using one image to fix a group of images much
1167  easier
1168- also, works in XYZ, has adjustable white point target
1169- new icon (also used in About)
1170- LabQ and LabS conversions were broken
1171- check for strcasestr in libc
1172- display symbolic names in iimage caption
1173- oops, custom rank menu item was broken
1174- use a dumber sort algorithm for row recomp order ... glib was skipping too
1175  many tests
1176- thumbnail convert settings update is smarter
1177- much faster display convert bar
1178- Joe's .defs are in
1179- image blend is smarter about reordering args
1180- small win32 fixes
1181- oops, did not remove all temp files if debugging was turned off
1182
1183started 7.10.3 13 sep 04
1184- to_real now works for toggle & bool
1185- Rubber menu items were b0rked (thanks Joe)
1186- Rubber scale removed (rubber transforms now automatically rescale)
1187- fixed crash if you gave a number as a superclass (thanks Joe)
1188- win32: block log output to prevent annoying console window appearing
1189- shared model for toolkits menu and toolkitbrowser for big speed-up on main
1190  window build and better update behaviour
1191- tk browser columns are reorderable (thanks Joe)
1192- better image type guessing (thanks Joe)
1193- thumbnails now use Type hint (thanks Joe)
1194- added simple number base conversion
1195- compound unary ops on Rect now work on width/height rather than left/top ...
1196  so abs(Arrow) now gives the expected result
1197- repaint regionview immediately for better feedback
1198- group save can save unboxed images and will iterate over nested lists
1199- added trace VIPS operations, including cache hits/misses
1200- small menu polishing
1201- better 'revert to defaults' in prefs (thanks Jay)
1202- documentation revised
1203- fixed dependency tracking inside zero-arg hidden classes (thanks Joe)
1204- help system updated
1205
1206started 7.10.2 23 aug 04
1207- convert bar settings now affect thumbnails too (thanks John VanVliet)
1208- show hglass cursor more often
1209- free rotate is now -180 to 180 (thanks Jay)
1210- added 'toolkit browser'
1211- work on docs
1212- small toolkit fixes
1213- better mainw decoration handling
1214- minor main window menu rearranging
1215
1216started 7.10.1 28 july 04
1217+ top-bottom 2 point mos was broken (thanks Joe)
1218+ added aliases for resample and estpar to help compat mode rubber sheet
1219+ colour ops on LABQ were broken by the alpha channel stuff
1220+ larger default max heap size (thanks Mikkel)
1221+ added ebuild (thanks Ruven)
1222+ oop, fftw includes missing from IP_CFLAGS
1223+ added Expression widget
1224+ suppress unneeded textview in NOEDIT mode
1225+ better textview layout
1226+ indent subcolumns in NOEDIT mode
1227+ better regionview text layout
1228+ Image/Format reamed to Image/Number Format (thanks Joe)
1229+ prelight for rows, expressions and spinbuttons
1230+ better row label layout
1231+ menus reworked (again) for Expression class
1232+ oops, resample renamed as transform_search
1233+ win32 build fixes
1234+ added "Align Columns To Grid"
1235+ better focus handling in imageview (thanks Mikkel)
1236
1237started 7.10.0 21 june 04
1238+ toolkit menu is now built dynamically from heap ... you can write functions
1239  that generate menus
1240+ menu items can have tooltips, icons and labels
1241+ reorganised all menus
1242+ added "scope" keyword ... helps remove "root" from toolkits and makes them
1243  relocatable
1244+ added "solarise" filter for fun
1245+ added "diffuse glow" filter for fun
1246+ slight improvement to references to non-local members in deeply nested
1247  classes
1248+ ungroup will now also unpack lists
1249+ fixed segv if option menus were rebuilt while posted
1250+ added vips function call cache ... memoisation!
1251+ added prefs for #cpus and #memoise
1252+ gah, had forgotten to add several new widgets to model_base_init(), so they
1253  were not loading correctly if used in prefs
1254+ put tearoffs back and fixed accels
1255+ added empty-temps yesno on startup
1256+ -main can output many images correctly
1257+ display control bar false colour works on RGB images
1258+ regionviews are offset in compatibility mode
1259
1260started 7.9.7 1 jun 04
1261+ enable broken for gtk all the time in program.h (thanks Ruven)
1262+ now uses im_text() to paint paintbox text (imageinfo.c:2185)
1263+ better zooming from menu items (imageview.c, imagepresent.c, imagepresent.h)
1264+ extra recalc on startup to build classes before we load args (main.c)
1265+ set_output() was missing an "!" before imageinfo_file (graph.c)
1266+ saner startup error logging (main.c)
1267+ expr_error_print_all() now goes to a buffer (expr.[hc])
1268+ program.c has an error lister
1269+ main.c knows about new error lister
1270+ prefs.ws had max_undo broken by precedence change
1271+ String now interprets and expands C escape chars (eg. \n)
1272+ fixed close program window with selected text crash
1273+ fixed edit of row with error itext crash
1274+ added tile and Tile (replicate/mirror ... using im_replicate)
1275+ leak testing only in DEBUG builds
1276+ binary and unary operators now track the function they were called from, for
1277  slightly better error messages
1278+ Number spots trailing characters
1279+ shadow and text paint work on labq
1280+ added resize longest axis mode to Shrink_to
1281+ fixed up menu dumper
1282+ don't track load/save progress in command-line mode (thanks Joe)
1283+ arithmetic and relational ops now work on images with a mixed number of
1284  bands
1285+ UI polish suggestions from Joe are in or noted on the TODO
1286+ better update of visible hints in imagedisplay
1287+ new menu item system with "action" member lets you have icons, mnenonics
1288  and i18n for toolkits
1289+ compatibility system for 7.8 workspaces
1290+ better recent menu
1291
1292started 7.9.6 8 mar 04
1293+ added Group class
1294+ .def files rewritten for Groups, also many enhancements
1295+ oops, imageview=>file=>view header was broken
1296+ prefs option for 1 bit TIFF write
1297+ scale in display control bar was broken (thanks Ruven)
1298+ removed on-demand compile, caused strange recomp problems :-(
1299+ value display no longer decompiles class args
1300+ tracks lineno for tools
1301+ better "not defined" error message
1302+ better "bad parent class" error message
1303+ better error messages from calling VIPS functions
1304+ better "link report" error message
1305+ relaxed the restriction on superclasses ... you can now have anything as a
1306  superclass, including a full constructed multi-arg class
1307+ detects redefinition of syms within a single parse action
1308+ precedence change: "?" and "." now the same precedence, like C
1309+ better "member not found" error message
1310+ spots nested comments
1311+ visualise image can handle labq hist
1312+ case ignored for class names in ws save files
1313+ SHIFT-mwheel now zooms in and out, like gimp-2.0; CTRL-mwheel scrolls
1314  left-right
1315+ autosave does not back up system workspaces (eg. prefs) (thanks Joe)
1316+ raised arrow/region create threshold
1317+ optionmenu swapped for gtk-2.4's combobox
1318+ now gtk 2.4 only, gah! too annoying to have lots of ifdefs
1319+ uses GtkFileChooser
1320+ oops, String/Number did not implement load/save
1321+ much polishing
1322+ row.c no longer tries to recomp all rows that ref "this", was causing
1323  confusion ... so, much faster, but will change row recomp order in some cases
1324+ hmm, trace was a bit broken
1325+ auug, instanceof_exact was broken for deeply nested classes, must have been
1326  like that forever
1327+ fixed a nasty and long-standing bug with shared classes ... we now always
1328  copy code rather than trying to cache it
1329+ ruler menus now have mm and offset setting
1330+ got rid of all xoffset/yoffset stuff, what a pain it was
1331+ Rect (and hence Arrow, Point, etc.) now behaves (roughly) like a complex for
1332  arithmetic
1333+ better select behavior on thumbnail drag
1334+ renamed Point as Mark, Point is now a subclass that lets old nip workspaces
1335  load
1336+ added Fontname widget
1337+ colour picker can be pinned up
1338+ better image thumbnail in workspace sizing
1339+ renamed Filename as Pathname and added a caption
1340+ all menus items rewritten for new batch system
1341
1342started 7.9.5 6 feb 04
1343+ Rotate_fixed now has an option menu for the angle
1344+ imagearray_chop was broken
1345+ image thumbnail drags no longer embed the workspace name (unless they have
1346  to)
1347+ merge workspace now shows an error dialog on failure
1348+ statusview does not display more than 8 bands
1349+ workspace saves view mode in files, and mainw knows about it
1350+ now uses pkg-config to find vips
1351+ splash does not focus "remove" toggle by default
1352+ oop, hourglass was broken
1353+ better hourglass animation
1354+ select/extend select now works on image thumbnails again
1355+ PRINT_LAST now done in workspace _dispose()
1356+ drag image thumbnail to background to make a new column and put in a link
1357+ compile now delayed until value needed ... saves 10% on startup time
1358+ value pointers only registered for GC if necessary .. saves another 3%
1359
1360started 7.9.4 9 dec 03
1361+ removed last gtk_timeout*()s
1362+ fixed some memleaks
1363+ views now _sink() their child views, so even if views don't ever get added
1364  to containers (eg. toolview, rowview), they still get freed properly
1365+ niprc now sets gtk-can-change-accels ... no one will discover this otherwise
1366+ added Custom_blur, dropshadow now uses a gaussian blur
1367+ some better error messages
1368+ Toolkits=>New items for filename, number, string
1369+ usage and About have version info
1370+ row delete now asks for confirmation
1371+ faster and more comprehensive common subexpression removal ... removed the
1372 'optimise' option, might as well have it on always
1373+ better session path behaviour
1374+ much better open recent menu
1375+ better graphic save/replace scheme ... image filenames now change in a much
1376  more sensible way
1377+ better iimage/iregion/iarrow caption scheme
1378+ can now drag from image thumbnails, cool drag icons
1379+ progress feedback on non-vips saves, and you can cancel too (!)
1380+ added extract_row, extract_column, extract_band, join_lr join_tb
1381+ extract_area now works for matricies too
1382+ better ruler tracking at high magnifications
1383+ defines HAVE_FFTW so we actually save and load wisdom now
1384+ "pos_changed" signal stops all the suprious imageinfo changed signals
1385+ "file_changed" signal lets iimage know when files are swapped about
1386+ better vips_call error messages
1387+ image cache is on mtime as well as filename, so loading changed files gets
1388  the new version
1389+ auto-reload on file change preference
1390+ reorganised main window menus and scrapped "Insert"
1391+ done a simple splash screen with some startup feedback
1392
1393started 7.9.3 20 oct 03
1394+ better welcome message
1395+ command-line mode with -main/-script/-workspace/-benchmark flags
1396+ better middle drag scroll
1397+ fixed the annoying race condition in repaint
1398+ fixed annoying rounding problems with colour drag
1399+ added TRUE/FALSE as synonyms for true/false
1400+ better image zoom shortcuts
1401+ more HIG-y layout in NOEDIT mode
1402+ added String/Number types
1403+ windows have icons, yea
1404+ fixed browse icons window
1405+ message internationalisation done
1406+ en_GB translation file
1407+ more higgy Stringset class
1408+ better help system for dialog boxes
1409+ paintbox now has buttons for tool select
1410+ cursor shape change in subwindows
1411+ load and save accelerators
1412+ configurable accelerators on the toolkit menu
1413+ more HIGgy dialogs for sliders, regions and matricies
1414+ basic "Open Recent" thing on workspace file menu
1415+ better keyboard nav for workspaceview
1416+ reworked image viewer for more model-view-ness
1417+ unified image view state
1418+ hmm, row_new_heap had a double paste, wonder how long that's been there ...
1419  should be a bit faster at recomps
1420
1421started 7.9.2 (30 sep 03)
1422+ toolbar accelerators done
1423+ image display, colour display, region display all reworked for gtk2-ness
1424
1425started 7.9.1
1426+ HIG-ified (I hope)
1427+ broken into SDI interface
1428+ prefs dialog
1429+ toolbar in mainw
1430+ progress dialogs for image load/save
1431+ new error message system
1432+ live watch system
1433
1434started 7.9.0 (1 aug 03)
1435+ compiles with gtk2!
1436+ lots of cleaning up
1437
1438started 7.8.11 (30 jul 03)
1439+ better run-nip.sh start script
1440+ tiny fix to Calibrate_chart, thanks haida
1441+ big LED stolen from mozilla, just one of them now
1442+ add "%s" to existsf() calls for filenames with % in, thanks Clare
1443
1444started 7.8.10 (22 may 03)
1445+ icc profile JPEG save option
1446+ "." now on end of datapath in prefs
1447+ fixed a race condition in regionview ... could crash during paint on slow
1448  machines
1449+ better vector/image ops
1450+ D65 <-> D50 conversions improved
1451+ added d50 macbeth data file
1452+ added "measure" to _stdenv
1453+ added "insert", "extract_area" to _stdenv
1454+ "recomb" now works on matrix, vector etc.
1455+ more use of extract_area
1456+ mark_tree() is now iterative, so no stack overflow on large heaps
1457+ reduce_spine() is (slightly) less stack-hungry
1458+ recomp_row() will not rebuild models for rows with errors ... is this the
1459  best way to stop it though?
1460+ calib_chart now works on 16 bit images
1461+ bumped version to 7.8.10 to match vips ... less confusing
1462+ changed doc builds so that we can include formatted documentation in the
1463  make dist
1464+ fix to drag-n-drop code on winders (thanks Jim)
1465+ fix to incorrect error message in file info view
1466+ blocked dash crawl on winders, does nothing but flicker
1467+ "config" help option (thanks Kirk)
1468+ columns resize on close
1469+ middle-drag in workspace scrolls
1470+ new version of Joe's x-ray stuff
1471+ spec/ now has RPM .spec file
1472+ added a "run-nip.sh" startup script
1473+ moved reload to program window
1474+ drag column and workspace gets a + cursor
1475+ added "Match" to Image menu
1476+ added "Tone_for_print" to Print menu
1477+ new macos icon, thanks denis
1478
1479started 7.8.7 (10 feb 03)
1480+ added set of relative constructors for point/region/arrow/etc.
1481+ used in various places to fix problems with dialogs on images with displaced
1482  origins
1483+ _vislevel member sets default visibility level
1484+ updated widget menu items to set vislevel
1485+ added has_member, get_member builtins
1486+ add "%s" to everror() calls so we can have "%" in error messages safely
1487+ better if-then-else overloading
1488+ add "." to the end of the default search path
1489+ added "Area", a non-resizeable region
1490+ option.c was not initing value edit correctly
1491+ better initial size for option edit dialog
1492+ added orderlist_scan()
1493+ better title for region edit dialog
1494+ better row_save_test() means member ordering does not get lost on clone of
1495  edited rows
1496+ imagedisplay_link() no longer makes conversion for you ... change to
1497  iimageview.c _init() in step (removes redundant create/destroy pair)
1498+ imageview_new_area() could pick shrink == -1 in some circumstances (thanks
1499  Joe)
1500+ drag file to imageview or thumbnail does replace-image
1501+ Region can now never fail (thanks Clare)
1502+ better feedback during paint image creation
1503+ better imageview File=>New=>* for images with displaced origins
1504+ added Edit_header to Image menu
1505+ catch errors from libxml2
1506+ Image == Vector was broken
1507+ Overlay has a "lock size" toggle
1508+ added Image=>Insert
1509+ renamed "Clear edits" as "Reset"
1510+ saves/restores fftw wisdom for first fft speedup
1511+ snap-to-* on region drag could resize region for zoom != 1
1512+ statusbar gave bad numbers for FFT and histogram images
1513+ use im_invfftr() for speedup
1514+ better ruler display at high magnification
1515+ oops, program=>find was broken
1516+ pin-up now part of dialog
1517
1518started 7.8.6 (23 dec 02)
1519+ swapped list for hash table in heap set of managed pointers ... startup time
1520  fallen from 2.4s to 1s!
1521+ much better heap-full reporting
1522+ knows about png
1523+ patch from Hans Breuer:
1524	+ paintbox sort-of hacked back in
1525	+ fixes to file selector on win32
1526	+ misc. win32 #include fixes
1527+ OK buttons in dialogs now verbs
1528+ knows about magick
1529+ oops, Colour_chart_from_matrix and New_CRT_test_chart were broken in 7.8.5
1530+ new heap_is*() function style handles eval errors better
1531+ paintbox rewritten ... now paint bar
1532+ snap to guide added
1533+ much smarter region repaint system now does true xor animation
1534+ dash lines crawl in the background
1535+ Rect/Region/Arrow etc. can now have float args and won't barf on images with
1536  strange offsets
1537+ default image file format preference
1538+ colour temperature conversions sorted out (thanks Haida)
1539+ fourier transforms now work with optical transform, rather than having
1540  optical built into visualisation (helps paintbox)
1541+ removed use of g_mem_chunk()
1542+ new colourdisplay class for displaying swatches of flat colour
1543+ drag-n-drop colours
1544+ tries to detect C stack overflow in reduce_spine()
1545+ new trace system reduces C stack usage during reduction
1546+ fixed a few memleaks
1547+ copy-on-write for member edit slightly reduces overcomputations and makes
1548  changes feed forward more gracefully
1549+ scale column coordinates with changes in font size
1550+ Tilt_brightness now works with n-band images
1551+ nativize paths
1552+ drag URIs to main window to load files (thanks Hans)
1553+ load any file type from command line arguments
1554+ small menu fixes
1555+ added RPM .spec files to distribution
1556+ help launcher for mac os x
1557
1558started 7.8.5 (12 nov 02)
1559+ added a bunch of "%s" to allow percent in tooltips
1560+ rearranged reduce_spine() to trim stack usage ... should reduce C stack
1561  overflow segv on deep recursion
1562+ added IR sample images to data dir
1563+ added rachel.con IR sharpen matrix
1564+ added Join.Array to build an image array
1565+ added Rubber stuff to Image
1566+ removed auto column switch on row select
1567+ added New to imageview window
1568+ finished-ish docs
1569+ >3 band images now display as RGB, 2 band images as mono ... helps
1570  display of imported RGBA/GA tiffs
1571+ better update of toolkit menus on tool change with zero-param classes
1572+ better positioning in toolkit menus with hidden items
1573+ default vid crop fixed
1574+ added Overlay to Image menu (thanks Joe)
1575+ added Calibrate_chart and Calibrate_image to Capture menu  (thanks Joe)
1576+ help buttons linked to html manual display
1577+ can now load workspaces from win machines on *nix, and vice versa (tries
1578  both types of dir separator)
1579+ added Joe's Xray menu
1580+ present menus and rows in definition order rather than reference
1581  dependence order
1582+ added Browse_multiband (thanks Joe)
1583+ can now pop up help viewer on win32 as well
1584+ knows about new im_LabS2Lab() and im_Lab2LabS() funcs
1585+ junk Hist on load to lessen balance confusion
1586+ more helpful save/replace file dialog titles
1587+ longer doubleclick time
1588+ sub-menus tear-offable
1589+ settable default image window size in prefs
1590+ optional auto-popup of new image rows
1591+ gtkfilesel2 knows not to select something twice
1592+ larger default max heap size
1593+ ws save files are prettyprinted and uncompressed by default for greater
1594  portability
1595
1596started 7.8.4 (8 nov 02)
1597+ fixed recover workspaces (thanks Joe)
1598
1599started 7.8.3 (31 oct 02)
1600+ acinclude.m4 fixes for mac os x
1601+ set extension on get_filename if none set and not showing All
1602+ added Mosaic_force ... no tie-point refining, ever
1603+ only save edited sub-trees on workspace save ... shrinks ws files to about
1604  1/3 their previous size
1605+ setlocale for numeric conversions to "C" to avoid "," as decimal point
1606  madness
1607+ escape C sequences in filenames (eg. "\n" etc)
1608+ vips functions and builtins now linked via main symbol table, rather than an
1609  extra lookup on "undefined"
1610+ pseudo-toolkits group VIPS packages and builtins
1611+ display help text on pseudo-tools in program window
1612+ "go to def" for program window
1613+ auto-expand for rows in program window
1614
1615started 7.8.2 (27 oct 02)
1616+ set $HOME on win32
1617+ WinMain on win32 for non-cmdline start
1618+ -mwindows flag to stop command.com starting for non-command line start
1619  on w32
1620+ lots of hacking on gtkfilesel2 for win32 compat
1621+ Matrix_file ""
1622+ New_mark.Region etc. menu item
1623+ more robust row recalc on .def edit
1624+ zero-arg local classes of classes sometimes recomped in the wrong order
1625  (thanks Joe)
1626
1627started 7.8.1 (18 oct 02)
1628+ d'oh, matrix constructors have to be classes for is_instanceof to work
1629+ much better change/refresh/scan behaviour for gtk_sheet
1630+ uses IM_DIR_SEP* for some win compat
1631+ many configure fixes for mingw
1632+ use gtk_fixed for workspace layout for gtkwin compat
1633+ rename Text -> iText to stop windows breakage
1634+ woohoo, fixed the grab problem in regionview
1635+ more robust workspace load
1636+ polishing
1637
1638started 7.7.23 (23 aug 02)
1639+ bug in history tracking
1640+ better filename select
1641+ OK buttons in multi-select fsbs turn on and off
1642+ supress "super" iimages for region/arrow displays
1643+ rulers and status bar know about Xoffset/Yoffset
1644+ regionview uses IMAGE cods, converts to model cods and back on
1645  refresh/update
1646+ defs adapted to origin stuff ... including Mosaic!
1647+ region create is ctrl-left
1648+ save-as-TIFF traps errors
1649+ done Plot and Resize, phew ... all menus finished (the ones I did anyway)
1650+ added namespaces to XML save file, prettyprint disabled, compression on
1651+ tooltips for toolkit menu items
1652+ "Name param1 param1: " string automatically prepended to help text
1653+ preferences for mainw start window size
1654+ menus reorganised to be more logical (I hope)
1655+ Separator class for submenus
1656+ column save adds enclosing workspace
1657+ drag in program window was broken
1658+ #dialog back in again, with an edit dialog
1659+ "menu item from column" thingy
1660+ refcount bug for long image load fixed
1661+ iDialog can autopopdown for represented obj destroy
1662+ toggle MB free/cells free
1663+ use gtk_sheet for text matrix display
1664+ configure detects gtk+extra for gtk_sheet
1665+ iimage caption displays name of most derived class
1666+ relaesed as 7.8.0 ! yea!
1667
1668started 7.7.22 (15 july 02)
1669+ started Print menu
1670+ added "expand" builtin ... expands environment variables in a string
1671+ filesel history fixed
1672+ reconstruction from overridden constructor in oo removed ... now just there
1673  for edits
1674+ done Colour menu, started Morphology
1675+ done Morphology menu, started Filter
1676+ if_then_else is now an overrideable binop
1677+ use (double) for image size calc to avoid int overflow
1678+ logical_and and logical_or can be overloaded ... still shortcut for plain
1679  types, so not quite like other overloads
1680+ done Filter menu, started Freqfilter (will become part of Fourier)
1681+ done freqfilter, started Histogram
1682+ sliders no longer each have a continuous member ... set with a watch
1683  directly from prefs
1684+ histogram visualisation
1685+ better trace will never evaluate graph unexpectedly
1686+ Real widget ... just draws a real number
1687+ better row name set system gets less confused
1688+ can now edit superclass constructors
1689+ better recovery after error in row recomp
1690+ better region caption
1691+ better scroll to new object for main window
1692+ "<", "<=" work on strings
1693+ started Image menu
1694+ small fixes for large files
1695+ image window title bar update fixes
1696+ auto select 1st matching file on load if no file specified
1697+ rename Patch -> Colour to fix class name / gtk type name confusion
1698+ classmodel_class_instance_new() now uses CLASS_new in preference, if defined
1699  ... lets you have separate behaviours for _type object creation and OK
1700  in edit dialog
1701+ Xoffset/Yoffset added to header view
1702+ default class == thing, class != thing operations in _Object
1703+ class params no longer have subcolumns ... stops O(n**2) increase in
1704  complexity with workspace size!
1705+ multiple select for for fileselect ... load many images/matricies/etc at
1706  once
1707+ on load, objects renamed to the filename they were stored in
1708+ better workspace scroll on new object
1709
1710started 7.7.21 (21 june 02)
1711+ override Pixel constructor in Colour and Generate_colour.widget
1712+ rename ... ivector -> iarrow
1713+ new op type for colour-through-image operations
1714+ better expr->err update on link clean
1715+ convolution matrix display now shows scale & offset
1716+ Matrix is now the base class, Matrix_vips etc. inherit from that
1717+ tags now decompile for better error messages
1718+ better graphic rebuilds for sub/super classes
1719+ better member-not-found error message
1720+ better new column positioning
1721+ rotate menu started
1722+ convert menu started
1723+ segv on CTRL-S on local objects fixed
1724+ flash help on row buttons
1725+ suppress display of superclasses with a leading '_'
1726+ better auto new workspace name
1727+ better column rename on ws merge
1728+ better scroll-to-visible for columns
1729+ row just uses "name" property now ... no "sym"
1730+ toolkit list now scrolls down RHS of main window ... no more resize probs
1731+ parent/child relationships shown with colour changes in rowview
1732+ removing column with an error resets error state properly
1733+ x2 speed up for recalc with fancy heap node serial number system, heh
1734+ better regionview create/destroy/link fixes occasional bad casts
1735+ better auto workspace scroll on load
1736+ scrapped .hd/.tl etc., too hard to overload ... builtins now
1737+ '' chars are now unsigned, signed chars are numbers in [-128, 127], chars
1738  default to unsigned (now unlike int, short)
1739+ regions/arrows/etc. now defined on Image, not image
1740+ better trace system does not confusingly interleave prints
1741+ small filesel fixes
1742+ Complex, List, Fourier menus
1743+ display control bar knows about fourier images
1744+ display control bar menu resets properly
1745+ bits of Arithmetic broken out into Log and Trig menus
1746+ Filename widget ... should help make an ICC profile chooser
1747
1748started 7.7.20 (17 may 02)
1749+ redone configure system ... data files now go in share/nip, not
1750  share/vips/nip
1751+ fixes to Pixel class and Generate menu
1752+ -image is now *-1, not im_invert()
1753+ separate '!' and '-' operators for better C-style semantics
1754+ better toggle/extend select for thumbnails
1755+ Yxy display
1756+ ops on Matrix class done
1757+ stats menu added
1758+ removed matrix size limit
1759+ errors -> ierrors to please mac os
1760+ keep local edits on reload
1761+ oops, classes as parameters were broken
1762+ member edit of local classes was broken
1763+ class arg checks inherited
1764+ view header dialog in imageview
1765+ colour menu
1766+ nasty bug killed for discovered dynamic references to dirty symbols
1767+ Colour widget shows a swatch and lets you gtkcolorsel for edit
1768+ rowview menu on subrows too, plus select/extend-select
1769+ ceil/floor added as builtins
1770+ lots of small polishes
1771
1772started 7.7.19 (10 apr 02)
1773+ it's now (c) 2002 :)
1774+ better LED spacing
1775+ "stop" sign toned down
1776+ split Expr to static stuff (Compile: parse/compile logic) and dynamic
1777  stuff (called Expr still ... reduce stuff)
1778+ Exprs can share Compiles if we know they will have the same code
1779+ copy-on-write for edits
1780+ 100s of times faster for large workspaces: load ws with 270 images = 7s
1781+ oops, temp files now unlinked properly
1782+ icon browser refreshes in idle handler, plus better cancel behaviour
1783+ destroy callback added to iDialog, popdown_cb memleaks plugged
1784+ memleak in model rewrite plugged
1785+ all class instances in hierarchy have the same "this" ... simplifies OO
1786  stuff a lot
1787+ removed heap_gc() from REDUCE_CATCH_START() for big speed up (d'oh)
1788+ smarter row dependency finder
1789+ leak plugged in get_image_info, plus more informative
1790+ reset menu item on graphic edit objects
1791+ ooop, added '\'' as a constant
1792+ C-style hex constants, better real constants
1793+ even fancier operator overloading scheme does builtins too, and is
1794  extensible for other user funcs
1795+ abs/max/min/etc. can be overloaded
1796+ lots of menus done!
1797+ newimage dialog removed
1798+ classes with supers don't display as pull-rights in toolkits
1799+ updated vips.m4 for IRIX
1800+ top level dirties now say what they're blocked on in tooltip
1801+ cast to int type now behaves as C (no more round to nearest)
1802+ reload toolkit works better
1803+ smarter image cache dependency tracking fixes occasional segv
1804+ _animate() in class build for greater interruptibility
1805+ "++" is lazier for list args
1806+ image ++ [] allowed
1807+ builtins can be overloaded
1808+ tidies to reduce/action
1809+ dmalloc support
1810+ better column/row select behaviour
1811+ better event handling in image windows
1812+ scroll wheel in image windows
1813+ class typecheck delayed until first reference for great speedup
1814+ lots of polishing
1815+ Mac OS X fixes:
1816  - change include order in ip.h for mac os x
1817  - test for mount.h, util.c, ip.h changes for space free display on mac os x
1818  - file size stuff changes
1819  - small include order changes
1820  - temp_name() fixes for duff mkstemp()
1821  - ignore GDK warnings (eg. locale not known)
1822+ changeable max print length, dynamic buffers
1823+ Pixel[] class
1824+ ontop no longer saved for workspaces
1825+ text values display left justified
1826
1827started 7.7.18 (1 mar 02)
1828+ load images from command line
1829+ new operator overloading system
1830+ new check system allows check to be inherited
1831+ nasty ii_destroy bug fixed
1832+ new trace option for builtin functions
1833+ nasty row destroy bug nailed
1834+ much better busy/not busy handling, feels smoother
1835+ more sensible workspace checkmarking, good speed improvement
1836+ more info displayed in image status bar
1837+ red error arrow not always unset ... eg failed file load
1838+ try to load a damaged (eg. truncated) image file ... wrong err msg
1839+ recover ws after crash fixed
1840
1841started 7.7.17 (23 jan 02)
1842+ changed appearance order for subcolumn
1843+ params and super start with vislevel 0
1844+ '.' now binds more tightly than '\'
1845+ '\' renamed to '?'
1846+ '&&' and '||' split to separate logical and bitwise operators
1847+ removed local function display
1848+ better code generated for access to members across nested classes
1849+ better preservation of sharing in class browser
1850+ decompile makes loop labels
1851+ non-row locals link back to enclosing row correctly
1852+ inter-row dependencies via non-row locals spotted
1853+ user def of default constructor banned
1854+ nested classes with implicits refs now work
1855+ operator overloading added
1856
1857started 7.7.16 (14 dec 01)
1858+ delay GC to once per sec where possible
1859+ ruler preferences
1860+ rows only reset on enter, not on dirty
1861+ graph.c indents prettily for easier debugging
1862+ nasty GC bug nailed
1863+ trace prefs options
1864+ assert() on program forced close fixed, class redef bug fixed, program
1865  window tracks filemodel->modified more closely
1866+ region clone menu
1867+ destroy regionviews on hide
1868+ smarter and simpler layout resize
1869+ final (I hope) precedence changes ... now just like C
1870+ '<<', '>>', '~' and '@' (function compose) added
1871+ row recomp refinement ... simpler and faster
1872+ oops, menu items all done in imageview
1873+ row locals with external refs were not adding to top level dirties correctly
1874+ more rigorous backtracking for deducing recomp order
1875+ fancy pantsy heapmodel_reset() system for great justice
1876+ traced and optimised recomp ... seldom repeats itself now
1877
1878started 7.7.15 (16/11/01)
1879+ rename workspace on top level load
1880+ added workspace merge
1881+ added column merge
1882+ clone stuff done
1883+ layout sizing done (tho' not very well)
1884+ toggle select and range select for rows
1885+ junked all old menus (now in scraps)
1886+ fancy new view manager only creates views when required ... x2 speed up on
1887  workspace load
1888+ file browser lets you change the suffix by typing (eg. type "fred.jpg" into
1889  save box while files-of-type is VIPS and you save JPEG)
1890+ replace and save matrix and image graphics
1891+ new Matrix class hierarchy
1892+ .nip-x.x.x directory stuff added, "Preferences" workspace loaded on startup
1893+ Watch class for getting pref settings quickly in C
1894+ removed all .iprc code
1895+ region drag now synchronous, so it can't lag
1896+ max heap size scales with workspaces loaded
1897+ duplicates automatically removed from paths, system files renamed to user
1898  directory on auto load
1899+ workspaces reorder correctly
1900+ new row number layout scheme using on model pos layout
1901+ row drag 'n drop reordering
1902+ is_class predicate
1903+ Abut.Left_right and Add menu items done as trials
1904+ syntax changes to become more C-like:
1905    and/or/eor/not keywords removed ... now &&/& ||/| ^ !
1906    & (join) becomes ++ and does list cat too
1907    ! (region extract) removed
1908    ^ (raise to power) becomes **
1909+ precedences changed to be more C-like ... `\` now binds like array subscript
1910
1911started 7.7.14
1912+ oop, about copyright line was wrong
1913+ model now has child_add(), child_remove() methods
1914+ child_add() child_remove() used for much init and cleanup ... nice!
1915+ fewer typed parent/child pointers in models ... getters to cast model
1916  parent/child instead
1917+ parent_add(), parent_remove() methods in model
1918+ XML prettifier does indenting in save files
1919+ load/save moved to model from filemodel
1920+ text now loaded too, new rhs child add system
1921+ forward references in workspace load now work
1922+ simplified _build_display() system with _link() method for view subclasses
1923+ new iregiongroupview class for managing sets of region displays
1924+ more intelligent naming of objects across workspaces
1925+ workspace modified set for more actions ... reflected in mainw titlebar
1926+ context pointers are back, but inited from _child/parent_add() system
1927+ split to nip package
1928+ reworks for new package structure
1929+ row_recomp() sorts regeneration by row depth
1930+ new scan/reset system
1931+ Text now derives from Heapmodel, scrapped the last of the model_link() funcs
1932+ _refresh_value() -> _update_model()/_update_heap() pair, with ->modified to
1933  control behaviour
1934+ _stdenv.def changes ... added is_space, split, splitl, split_lines,
1935  parse_pint, parse_int, parse_float
1936+ program window parses on popdown
1937+ gtkutil has set-2-adjustments-at-once convenience function
1938+ all tally models (subcolumn downwards) now derive from Heapmodel
1939+ Heapmodel -> Heapmodel/Classmodel
1940+ all widget models derive from Classmodel
1941+ Text now delays parse/compile until recomp
1942+ regenerate system now uniform between graphic and text representations
1943+ new model_freeze()/model_thaw() system to reduce model_changed() emissions
1944+ XML load/save done for all class widgets
1945+ only save edited formula ... deduce others
1946+ better target symbol naming for region/point/vector/guide create
1947+ dialog boxes now have GNOME2 button ordering ... F1 binds to help
1948+ old row_change() mechanism ditched ... much simpler and clearer now
1949+ all class.c getters renamed
1950+ _update_model() -> _update_model()/_new_heap() pair ... faster
1951+ ditched base/derived instance vars, new rebuild from base system from new
1952  unified model recomp system
1953+ ditched remake-from-base system :-( can no longer do islider ... but much
1954  cleaner and more intuitive behaviour
1955+ tslider is now a proper widget
1956+ better jumping region labels during scroll
1957+ switch current column on row select
1958+ region labels / image window titles change helpfully on workspace switch
1959+ fantastically more complicated row_recomp() now deduces recomp order from
1960  dependencies
1961+ graphic displays only save and restore their settings if they've been edited
1962+ text edit resets edits on sub rows
1963+ don't make a display or RHS for system rows (eg. this, check, name)
1964+ mainw_countdown_animate() now updates display again ... this may cause
1965  problems, have to see :-(
1966+ tslider has elaborate workaround for slider destroy during changed callback
1967  problems
1968
1969started 7.7.12
1970+ added program window
1971+ reworked TODO list ... only 140 issues outstanding ... :-(
1972+ toolkitgroup now emits "changed" on any tool/toolkit change
1973+ find/find-next thing for program
1974+ new info mechanism
1975+ link report finds undefined symbols
1976+ tree view maintains sort order
1977+ model_child_add_before() to aid drag and drop reordering
1978+ toolview does menu reordering
1979+ popups pass down host widget
1980+ general "are you sure you want to remove" for models
1981+ destroying a tool now destroys associated symbol too
1982+ destroying a toolkit destroys all contained tools
1983+ destroying a top level row destroys the symbol
1984+ symbol/filemodel/model destroy split to finalize as well
1985+ stable owns a ref to syms it holds
1986+ if destroy a sym, mark all parents as having "not defined" errors
1987+ expr_error_set() now zaps compiled code to force recompile ... ensures user
1988  fixes problems properly
1989+ textview always recompiles lines which you hit return on
1990+ better typecheck error messages for widget classes
1991+ right button menu on rulers
1992+ xml save
1993+ load_text and save_text methods in filemodel.c for tool/toolkit load/save
1994
1995started 7.7.11
1996+ added trace window
1997
1998started 7.7.10
1999+ BI_CONS is lazier and faster
2000
2001started 7.7.9
2002+ "print" builtin added
2003+ oops, parse_function() was not passing sym down
2004+ better checkargs function
2005+ x-ray print menu patched, duh
2006
2007started 7.7.8
2008+ browse now uses new image display code
2009+ ooops, PPM/PGM/PBM read added
2010+ conversion is now refcounted
2011+ all old image/region code removed
2012+ old window/dialog code removed
2013+ paintbox/edit/magic/menu/calibrate/cursor/request/dragdrop also gone for now
2014+ last of X11/Motif gone ... # of lines down 20k!
2015+ iregion/iregionview added
2016+ finally GNUified it
2017+ fixed newimage dialog
2018+ region redone as subclass of image
2019+ ip class names now have initial caps
2020+ better iwindow popdown behavious
2021+ imagedisplay implements gtk focus model
2022+ imageview key navigation: left-right-up-down-in-out, zoom to fit
2023+ imagedisplay repaint probs fixed
2024+ new expr_value_new()/_destroy() system to track images
2025+ regionview added
2026+ cursor manager added to iWindow
2027+ jumping region labels!
2028+ nasty reduce bug nailed ... heap corrupted if super-class constructor failed
2029+ class construction errors handled gracefully
2030+ rubberbanding regions on imagepresent
2031+ point and vector display types added
2032+ ivector/ivectorview added
2033+ instance vars can be virtualised by heapmodel ... for code sharing between
2034  iregion/ivector/etc. ... sort of a lame MI fudge
2035+ regionview morphs between display types if unfrozen
2036+ Region/Vector/Point/HGuide/VGuide classes added
2037+ lists/image-bands index from zero
2038+ mark spine stack on GC ... oops, sometimes broke for nested recomp
2039+ reduce.c -> reduce.c/action.c
2040+ new action_strict() interface handles nested reduce_spine() calls correctly
2041  ... allows mutually recursive locals
2042+ some reworking of reduce.c ... still not very pretty :-(
2043
2044started 7.7.7
2045+ [] can have whitespace between the [s
2046+ conversion.c added ... manages display conversion model and region/thread
2047  display stuff
2048+ _list.def and _stdenv.def reworked from Miranda 2 stdenv:
2049	foldl function args reversed
2050	swap renamed as converse
2051	foldl1, foldr1, map2, merge, replicate, scan, until added
2052	faster sort (merge sort)
2053+ option/optionview pasted back in
2054+ image/option parts of sym->recomp scrapped
2055+ tslider widget ... entry, plus slider
2056+ conversionview ... display control bar
2057+ tslider does non-linear sliders
2058+ now uses 100%, 25%, 400% etc. to show magnification
2059+ oops, mono to labq was broken
2060+ statusview.[hc] added ... status bar!
2061+ iimage now tracks derived image value as well
2062+ better file_info display for JPEG/TIFF/PPM in file load
2063+ iimage now just has vips_image as class param
2064+ matrix/matrixview added, old mask stuff removed
2065+ lots of memory leaks removed (thank you memprof)
2066+ workspacegroup is a symbol ... workspaces are named root.Workspaces.blah
2067+ matrix resize
2068+ matrix load
2069+ is_string now defined in _stdenv.def, rather than being built in
2070+ vips_call knows about new matrix representation
2071+ better scanning system for text widgets
2072+ better uop/bop error messages with text_decompile()
2073
2074started 7.7.6
2075+ decompile for parameter edit, value displays parameters (tho not secrets)
2076+ save/save as/close added to model
2077+ new workspace save done
2078+ better notebook tabs
2079+ new iWindowSusp stuff now allows composition of window funcs
2080+ iDialog now allows multiple OK buttons
2081+ Save/Don't save/Cancel on filemodel close
2082+ nasty nested iDialog problem found and fixed
2083+ close all filemodels on quit
2084+ tookit.c -> tool/toolview/toolkit/toolkitview; toolkits are filemodels
2085+ all sprintf()s gone
2086+ empty/load/replace for filemodel done
2087+ workspacegroup/workspacegroupview added
2088+ toolkitgroup/toolkitgroupview added
2089+ model -> view links removed, signals for 'changed' ... bit simpler n nicer
2090+ views track parents and children
2091+ scan set for auto re-reads of widgets
2092+ reset/scrollto now signals too
2093+ now called ip2
2094+ gtkdisp imagedisplay/present/asynch code pasted in
2095+ "image" builtin renamed as "vips_image"
2096+ image class added
2097+ iimage/iimageview added ... thumbnail display!
2098+ new (smarter) behaviour for spin expand/shrink; affects rhsview visibility
2099  as well as subcolumnview visibility
2100+ threaded display code patched in
2101+ imageview added
2102+ image display rulers, magnification, titlebar wired up to menus
2103
2104started 7.7.5
2105+ better centering of dialogs over their parents
2106+ oops, silly bug in stable_resolve()
2107+ new expr_resolve() sorts out static/dynamic scoping problems
2108+ uses mkstemp() for temp image file names
2109+ new mark dirty scheme
2110+ small destroy bugfixes
2111+ better tallyrow_recomp_rethink() code finds the right expr more often
2112+ better binding to root for dynamic exprs
2113+ expr_resolve() before expr_check()
2114+ "super" member is a regular member, not a parameter
2115+ about dialog, with easter egg :-)
2116+ new code for recomputation of superclasses ... does "this.x" if any supers
2117  change, tracks use of params in super construct
2118+ warp focus to column bottom on column select
2119+ ':' char banned in file names
2120+ workspace load/save/save as/close done
2121+ workspace tab menu and tooltip
2122+ don't mark zombies dirty
2123
2124clean up of front end started
2125+ Symbol extends GtkObject, Workspace extends Symbol
2126+ Columnset renamed Workspaceview, members moved between it and Workspace
2127+ Column split into Column and Columnview
2128+ refresh_note() system added
2129+ Model class underpins symbol/workspace/column etc.
2130+ tallycolumn -> subcolumn/subcolumnview
2131+ tallyrow -> row/rowview
2132+ tallyitem -> view
2133+ tallyrhs -> rhs/rhsview
2134+ text -> text/textview
2135+ Heapmodel class added to underpin slider/toggle/option/matpanel
2136+ slider -> slider/sliderview
2137+ toggle -> toggle/toggleview
2138+ mono <-> sRGB gammas both ways now
2139
2140started 7.7.4
2141+ reload $VIPSHOME/lib on menu and plugin reload
2142+ no longer includes gtkintl.h
2143+ better namecaption API
2144+ better iwindow/idialog/namecaption build inheritance
2145+ cleaned up naming in main.c
2146+ gtkfilesel2 now inherits from idialog
2147+ filesel now inherits from gtkfilesel2
2148+ browse now inherits from idialog
2149+ now builds cleanly on Sun cc
2150+ found horrible gtkfilesel2 bug
2151+ fileselect removed
2152+ toggle/option/matpanel edit uses idialog
2153+ secret optimisation supressed for tally display
2154+ edit value (rather than source) for class params
2155+ edit reset on column after ENTER
2156+ asynch/menu bug fixes backported
2157+ Histogram.def renaming
2158+ -,/,* for realvec
2159
2160started 7.7.3
2161+ secret now in terms of expr
2162+ compile now in terms of expr, not sym
2163+ bulletproof errors()/verrors()
2164+ resolve_names now knows about tally scopes as well as symbol scopes
2165+ linked global recompute and tallyrow recompute up
2166+ new link object joins up topsyms for recomputation ... saves a search on
2167  tallyrow dirty, makes multiple external refs work
2168+ better slider edit dialog
2169+ new code for '.' operator now records context in heap, so we can spot
2170  dynamic dependencies
2171+ improved link objects ... better handling of multiple links, more stuff
2172  deduced, support for static and dynamic links
2173+ dynamic dependency management
2174+ class parameter edit
2175+ new spin widget for class display open/close
2176+ class member visibility table, controlled by spin widget
2177+ new im_vipshome() startup code
2178
2179started 7.7.2
2180+ ws error button colour fix
2181+ big sym/expr/row relationship reorganisation
2182+ better error handling
2183+ better tally tooltips
2184+ better toolkit flash help, plus flash for sub menus
2185+ fixed some input_push/pop() problems
2186+ reorganised main menus, better pull-right display rules
2187+ automatic.c -> mainw.c ... lots of renaming and tidying up
2188+ multiple workspaces linked to symbols, columnsets now make syms local to
2189  their workspaces
2190+ iwindow/idialog improvements, newcolumn/workspace dialog is now subclassed
2191  off idialog
2192+ countdown fixes
2193+ another nasty tallyrow destroy bug
2194+ error message display fixes
2195
2196started 7.7.1 ... 19/10/00
2197+ another nasty destroy bug
2198+ class browser looped for some classes containing errors
2199+ default constructor now not displayed (unless overridden in an enclosing
2200  class)
2201+ recomp inside a class instance done
2202+ abs in _stdenv.def failed for complex
2203+ nasty gcc error in class_member() with -O2
2204+ tallytext rhs handling broken out into tallyrhs ... tallytext is simpler
2205  ... now have graphic/klass/text display
2206+ new tallyitem_trigger system with better error propogation
2207+ fold/unfold button for class instances
2208+ button tooltip displays long messages
2209+ tally => row rename
2210+ recomp/refresh/refresh_value sequences optimised
2211+ expr_clone() now works for function members of classes
2212+ refresh_value no longer uses _trigger() propogation mechanism
2213+ now tracks prhstext ... everything but the function name ... needed for
2214  class edit of local functions
2215+ class/super now properties of expr, not sym ... classes are expressions,
2216  not symbols
2217+ displays args to function members of classes
2218+ sym_tab tracks insert order, used to order class members in tally
2219+ table_find_child handles hidden children
2220
2221started 7.7.0
2222+ default constructors
2223+ escape cancel in idialog
2224+ 'root.' and 'workspace.' static scope references
2225+ recalc dynamic dependencies on link
2226+ super-class constructors are blocked from referring to locals (other than
2227  params)
2228+ class_member_base() stuff sorted out in slider.c ... usually need
2229  non-overridden value
2230+ display update block mechanism for tally stops widgets updating
2231  themselves
2232+ slider text value display redone
2233+ fixed a couple of nasty destroy bugs
2234+ 'Arithmetic.Add' now does sliders!
2235+ released as 7.7.0
2236