source: git/NEWS @ fbfeb83

debian/1.2.45-1
Last change on this file since fbfeb83 was 738af38, checked in by Olly Betts <olly@…>, 4 years ago

Update for 1.2.45

  • Property mode set to 100644
File size: 135.1 KB
Line 
1Changes in 1.2.45 (2021-03-09):
2
3* Avoid undefined signed shifts in 3d file handling.  Survex itself is only
4  affected on big-endian platforms (so most Linux machine, Microsoft Windows,
5  and current Macs are all OK), but this also affects the img library on all
6  platforms when used in standalone mode as it is in other programs.  Fixes
7  #119, reported by Matěj Plch.
8
9* aven:
10
11  + When reading cavern output for the log window, we need special handling
12    for the case when a chunk of output ends mid-way through a UTF-8
13    sequence.  Previously we lost the first byte of the sequence in this
14    case (and would then show it as an invalid character), but now it is
15    handled correctly.  In practice, most of the cavern log output is ASCII so
16    it's quite possible nobody's ever actually hit this.
17
18* testsuite:
19
20  + Suppress reports of leaks on exit from the LeakSanitiser debugging tool.
21    We know we don't release all memory explicitly on exit since doing so would
22    mean extra work for no reason as the OS reclaims all memory when the
23    process exits.
24
25* Convert OLDNEWS encoding from ISO-8859-1 to UTF-8.
26
27Changes in 1.2.44 (2021-02-10):
28
29* aven:
30
31  + (Microsoft Windows version): Now using wxWidgets 3.0.5 (was 3.0.4).
32
33* cavern:
34
35  * Add support for quadrant bearings (e.g. N30E).  Patch from echarlie.
36
37  * Report error if angle units are specified for passage dimension.
38    Previously "*units left degrees" and similar were incorrectly quietly
39    accepted.  Spotted by echarlie.
40
41  * Fix *data with no parameters to keep the current style and reset any state
42    as documented.  Previously it actually instead ignored any survey data
43    until the next *data command with parameters.
44
45  * Fix minor memory leak in *data.  We leaked a single memory allocation on
46    "*data default" or an invalid *data command.
47
48  * Improve test coverage.
49
50* survexport:
51
52  * The check for whether a format supported --elevation, --plan, --bearing and
53    --tilt was inverted.  Reported by echarlie.
54
55  * Fix reporting of export errors on Microsoft Windows.  Reported by Matic Di
56    Batista.
57
58* img library: Fix img_open() when used in other programs.  Patch from Thomas
59  Holder.
60
61* configure: Add wx-config-gtk3 to WX_CONFIG search for Arch Linux.  Patch
62  from Thomas Holder.
63
64* Improve documentation of interleaved data.  Most notably, we now document
65  that a blank line breaks the current traverse.
66
67* Fix typo in manual ('cypolar' -> 'cylpolar').  Patch from Wookey, fixes #117.
68
69* Chinese translation updates from Qingqing Li.
70
71* Russian translation updates from Vasily Vl. Suhachev.
72
73* French translation updates from Jean-Marc and from Wassil Janssen.
74
75* Bulgarian translation updates from Wassil Janssen
76
77Changes in 1.2.43 (2020-02-28):
78
79* cavern: Update to use v13 of the IGRF model for calculating declinations.
80  This was issued in December 2019 and should give slightly more accurate
81  declinations for surveys made since 2010.
82
83* aven:
84
85  + Fix colouring of "not in loop" when colouring by error.  1.2.42 introduced
86    a bug where surveys not in a loop were coloured as if they had zero error.
87    Fixes #111, reported by Bruce Mutton.
88
89  + Fix handling of grid in export.  The grid was always getting enabled
90    (probably since 1.2.8) even for formats which don't support exporting with
91    a grid.  This resulted in the bounding box being set wrongly for some
92    formats such as SVG, as reported by Richard Knapp on the mailing list.
93
94  + When showing errors processing the survey data we'd previously crash if
95    cavern incorrectly reported an error as being in a column off the end of
96    the line - now we just ignore the error column in this case.
97
98  + Support colouring by survey style ("normal", "diving", "nosurvey", etc).
99
100Changes in 1.2.42 (2019-09-04):
101
102* aven:
103
104  + Allow colouring by horizontal or vertical error.
105
106  + (Unix version): Disable scaling for HiDPI displays with GTK3.  The OpenGL
107    code needs work before this will work usefully, so just disable for now
108    (which simulates how things are when using GTK2).
109
110  + (Unix version): Fix orientation of notebook tabs when build with wxWidgets
111    3.1 development versions.  We want horizontal tab orientation, but were
112    passing a weird flag combination which now results in vertical tab
113    orientation.
114
115* When exporting to a format where we support rotation in the horizontal
116  plane (such as SVG), the rotation was incorrectly applied to cross section
117  data (except for the default rotation of zero).  Fixes #108, reported by
118  Richard Knapp.
119
120* Add a section to the manual covering the command line tools, and what you
121  might still need to use them for.
122
123* Fix compiler warning when building from source with GCC 9.
124
125* Consistently refer to macOS not OS X - Apple have renamed it yet again.
126
127* (macOS version): Revert the workaround for the crash on macOS 10.14.  The
128  bug we were working around is fixed in git ready for wxWidgets 3.0.5 and
129  there's a backported fix in the homebrew wxmac 3.0.4-2 package, which is how
130  we now recommend people install on a Mac.  Closes #101, reported by floho.
131
132* (macOS version): Remove buildmacosx.sh script since installing from homebrew
133  is now the recommended approach.
134
135Changes in 1.2.41 (2019-07-10):
136
137* aven:
138
139  + (Microsoft Windows version): Fix error on startup in the pre-built version
140    of 1.2.39 and 1.2.40.  This is a recurrence of the same issue as affected
141    1.2.33 - this time I've patched out the unnecessary check in wxWidgets
142    which causes this problem so it shouldn't recur again.  Reported by
143    Brian Clipstone.
144
145  + (macOS version): Add work around for crash on macOS 10.14 (not fully tested
146    as I don't have access to a Mac).  Hopefully fixed #101, reported by floho.
147
148Changes in 1.2.40 (2019-07-04):
149
150* aven: Draw the measuring line ring with an even shape.  Previously the exact
151  shape of the ring varied slightly depending on the exact coordinates, which
152  could be visually distracting once you noticed it.
153
154* We were casting a function pointer with a bool return type to the same type
155  but with a void return type.  In practice this probably works fine on most
156  platforms, but it's undefined behaviour and also gives a compiler warning
157  with some compilers.
158
159* Fix bug introduce in 1.2.39 with where the "esri" data file for PROJ is
160  installed.
161
162Changes in 1.2.39 (2019-06-29):
163
164* Support versions 5.x and 6.x of the PROJ library we use for handling
165  conversions between coordinate systems.  Reported by Bas Couwenberg
166  in #102, by Richard Knapp in #103 and by Martin Sluka in email.
167
168* (Unix and Mac OS versions): When checking if something is a file or if it is
169  a directory, we no longer treat a symlink as being neither, but instead
170  return an answer based on what the symlink points to.
171
172* aven:
173
174  + Improve handling of hidden splay ends.  Previously, hidden splay ends still
175    served as "targets" for snapping the mouse pointer to, and still got
176    crosses when crosses were enabled.  We don't have a handy flag for "this is
177    the outer end of a splay" and computing that on demand isn't so easy to do,
178    so for now we use the "anonymous station" flag so at least these cases now
179    behave properly for splays to anonymous stations (which is likely to be
180    what people with huge numbers of splays from disto-x, etc are using).  This
181    does mean that anonymous stations on continuation passages will incorrectly
182    also be off when splays are hidden, but that seems an OK trade-off for now
183    and a definite improvement over the previous situation.  The snapping of
184    the mouse pointer was reported by Frank Tully in #105.
185
186  + Fix typo in export UI (CVS should be CSV).
187
188* Documentation:
189
190  + Add CSV to documented list of survexport output formats.
191
192  + Fix *declination syntax synopsis - "auto" is a literal string, not a
193    placeholder.
194
195  + Update PROJ project name and website - the name is now "PROJ" (all caps and
196    no ".4" suffix) and the website is now: https://proj.org/
197
198* Install gtksourceview-3.0 language file so .svx files now get syntax
199  highlighting in gedit and other GtkSourceView-based editors.  Patch
200  from Philip Withnall.  Fixes #98.
201
202* (Microsoft Windows version): The Survex installer doesn't uninstall the old
203  version when you upgrade, but just overwrites it with the new version.  In
204  1.2.35 cad3d.exe was replaced with survexport.exe, but a user upgrading from
205  an older version would still have cad3d.exe from that old version.  We now
206  remove any old cad3d.exe left over from a previous install in the same
207  location to avoid confusion.
208
209* Add a few more message translations.
210
211* Fix warnings when built with a C++11 compiler.
212
213Changes in 1.2.38 (2019-03-02):
214
215* cavern:
216
217  + Deprecate MILS as angular units.  Survex has long support MILS as an alias
218    for GRADS.  However, this seems to be a bogus definition of a "mil" which
219    is unique to Survex (except that Therion has since copied it) - there are
220    several different definitions of a "mil" but they vary from 6000 to 6400 in
221    a full circle, not 400.  Reported by Andy Edwards.
222
223  + Fix segfault for *include "".  This isn't useful, but shouldn't crash.  It
224    now reports "file not found" instead.
225
226  + Use isnan() to check for not-a-number.  This is cleaner, more robust and
227    more efficient than formatting the number as a string and checking for
228    "NaN" or "nan" in the result.
229
230* Avoid unused variable warning when compiling from source with modern ffmpeg.
231
232* Drop support for wxWidgets < 3.0.  3.0.0 was released over 5 years ago and
233  should be easily available everywhere by now.  I'm no longer easily able to
234  test with wxWidgets 2.8, and this allows a significant amount of cruft to be
235  removed.
236
237* (Linux version): survex.spec: Fedora have removed gcc from the default build
238  environment so need to explicitly list it in the BuildRequires tag.  See
239  https://fedoraproject.org/wiki/Changes/Remove_GCC_from_BuildRoot for more
240  information.  Patch from James Begley.
241
242Changes in 1.2.37 (2018-11-18):
243
244* aven:
245
246  + Add basic "Colour by Survey" feature.  The colours used aren't currently
247    controllable.
248
249  + Fix export of splays.  Patch from Thomas Holder.
250
251  + Fix KML export to avoid invalid geometry when a tube intersects itself.
252    Patch from Robert Jones.
253
254  + (Unix version): Fix to work under Wayland by forcing the x11 GDK backend
255    for now.  This is a workaround until wxWidgets OpenGL support is updated
256    to work under Wayland.  Reported by Philip Balister.
257
258  + Fix warnings about using deprecated functions when building movie export
259    code using FFmpeg 4.0.
260
261* cavern:
262
263  + Compass MAK files: Handle fixed point coordinates in feet - previously the
264    units were ignored and the coordinates assumed to be in metres.
265
266  + Previously the first byte in a MAK file was ignored.  Typically MAK files
267    start with a comment, and since cavern currently ignores lines that start
268    with characters it doesn't understand the meaning of, this bug would often
269    go unnoticed.
270
271* survexport:
272
273  + Fix exporting of passages, walls and cross-sections by running the code
274    aven uses to decide how much to rotate each cross-section.  Previously all
275    cross-sections were aligned West-East.  Reported by Robert Jones.
276
277  + Default to .pos output if the program name is 3dtopos, and install a second
278    copy (or hardlink under Unix) as 3dtopos.  This provides compatibility with
279    current releases of Tunnel.  Reported by Becka Lawson, Wookey and
280    Stephen Crabtree.
281
282* Fix some German translations.  Patch from Thomas Holder.
283
284* (MacOS X version): Fix aven-create-app to not delete converted icons.
285  Typo spotted by Robert Jones.
286
287* Improve documentation for *team.  Document the requirement to quote names
288  unless a person is identified by just one name.  Document that the roles are
289  optional, as that information may not have been recorded, and to align with
290  therion's team command.
291
292Changes in 1.2.36 (2018-07-18):
293
294* aven:
295
296  + Add support for exporting as a CSV (Comma-Separated Values) file.
297
298  + Support exporting KML with altitude mode "clamp to ground".  In this mode,
299    the altitude in the data is ignored and it's rendered on the surface of the
300    terrain.  This is useful if your KML viewer renders the terrain as opaque
301    so underground data isn't visible.  Rendering cave passages on the surface
302    isn't great, but is better than not being able to see them at all.  This
303    option may also be helpful if you want to see where to look on the surface
304    for new entrances.
305
306  + Highlight surveys with a white loop as the mouse is moved over them in
307    the survey tree.  This is akin to how we highlight a station with a
308    white ring, and allows restoring "double-click survey in tree to zoom"
309    which temporarily required a quadruple-click in 1.2.35.
310
311  + Only show checkboxes in the survey tree for surveys not stations.
312
313  + Fix wxWidgets assertion if the user tried to select additional surveys
314    to show via the right-click menu.
315
316  + Fix multiple survey filtering when both a parent and child survey are
317    selected.  In this case it makes most sense to show all child surveys of
318    the parent, but we actually showed a slightly arbitrary subset of the
319    child surveys of the parent.
320
321  + The checkbox area in the survey tree is now included in the area which
322    is considered by mouse-over updates such as highlighting the station or
323    survey.
324
325  + Fix display of double quotes in cavern log window (they were being replaced
326    with control character 0x16 due to a typo in the code).
327
328  + Add shortcuts to buttons in cavern log window.
329
330  + Eliminate use of gluErrorString() function which eliminates some
331    deprecation warnings when building on macOS.
332
333  + Reject multiple --survey command line options for now (only the last has
334    been used for a long time, but now we actually support multiple survey
335    filtering this matters more).
336
337* survexport:
338
339  + Report a useful error when trying to convert a .3d file without coordinate
340    system information to GPS.  Reported by Mark Shinwell.
341
342  + Handle multiple redundant --survey command line options correctly.
343
344* dump3d: Report station flag "WALL", which was added in 1.2.7.
345
346* Minor translation updates.
347
348* Update manual for Microsoft Windows changes.
349
350* tests/: Add test coverage for warnings about suspect readings
351
352* Fix warning when compiling with clang.
353
354Changes in 1.2.35 (2018-07-03):
355
356* aven:
357
358  + Viewing can now be restricted to multiple surveys.  Use the right-button
359    menu on a survey in the survey tree and select "Show" to enable checkboxes
360    for that survey and all its siblings.  Only the selected surveys are shown
361    on screen, printed and exported.
362
363  + Don't open a survey when its name is double clicked.  This was happening
364    due to code added to "allow double-clicking to work on wxMSW >= 2.8.11".
365    However, reverting that change still seems to allow double-clicking to work
366    on both wxMSW and wxGTK, but fixes the unwanted additional opening of the
367    survey.
368
369  + Pick initial survey scaling based on whichever of the window width or
370    height gives the smaller scale.  Previously we always used the window
371    width, which can result in parts of the cave being outside the initial
372    view.  Reported by Wookey.
373
374  + Drop ability to specify a PROJ string in the export dialog.  This was added
375    to allow exporting to formats such as GPX before we added support for
376    specifying the projection in .svx files, and that support is now mature.
377
378  + DXF export now uses 2 decimal places (was 6) for the bounding box, for
379    consistency with the precision used for coordinates.
380
381  + Fix handling of surface flag during export.  In formats which discriminate,
382    legs could previously have got assigned the wrong status.
383
384  + Fix bug which probably prevented aven starting when OpenGL double buffering
385    is unavailable.  This is unlikely to affect any common configurations.
386
387  + (Microsoft Windows version): Fix loading of 3d files with non-ASCII
388    filenames.  Issue reported by Matic.
389
390  + (Microsoft Windows version): Fix incorrect display of some toolbar icons.
391    Probably broken since 1.2.17.
392
393* survexport: New command-line export program which uses aven's export code.
394  Replaces 3dtopos, cad3d and findentrances, since it can do all that these
395  tools could do, plus much more.
396
397* Merge more Spanish i18n updates from Evaristo Quiroga.
398
399* Minor updates to various other translations.
400
401* img library:
402
403  + Now supports reading from and writing to an existing FILE*.
404
405  + Improve API documentation.
406
407* (Microsoft Windows version): Fix packaging to include wxWidgets translation
408  files like it was supposed to, which fixes a few missing translations.  This
409  was probably broken by changes in 1.2.8.  Reported by Evaristo Quiroga.
410
411* (Microsoft Windows version): Drop two options from explorer bindings.
412  "Convert to DXF" and "Convert for hand plotting" have both been supported via
413  aven for a while, and that's a more useful way to access them as you can
414  control what gets exported.
415
416Changes in 1.2.34 (2018-03-24):
417
418* aven:
419
420  + (Microsoft Windows version): Fix error on startup in the pre-built version
421    of 1.2.33.
422
423  + (Microsoft Windows version): Now using wxWidgets 3.0.4 (was 3.0.2).
424
425Changes in 1.2.33 (2018-03-22):
426
427* aven:
428
429  + Reliably disable scale bar in perspective view.  This is supposed to happen
430    (because the scale across the screen varies in perspective view) but
431    actually the scale bar stayed around until an update was forced for another
432    reason.  Spotted thanks to Pedro Silva Pinto.
433
434  + Make "no date"/"not in loop" colour grey.  The white was a bit bright and
435    made it harder to see the legs that had colours.  The grey now used is
436    within the brightness range of the other colours.  Fixes #94, reported by
437    Erin Lynch.
438
439  + Fix KML export - exporting both survey legs and station names resulted in a
440    malformed KML file.  This bug was introduced in 1.2.30 when support for
441    exporting passages and walls was added.  Reported by Erin Lynch in #90.
442
443  + Consistently use 2 decimal places for altitude in KML output.  Some places
444    used 8 decimal places which is appropriate for lat and long, but clearly
445    overkill for an altitude in metres and increases the file size
446    unnecessarily.
447
448  + Right-align bearing widget in print/export dialog.  The change to allow the
449    value to wrap round from 360 to 0 in 1.2.27 inadvertently made this control
450    left-aligned (due to incorrect wxWidgets documentation of the default style
451    for this control).
452
453  + (Unix version): Work around wxWidgets bug so that custom cursors work
454    under GTK3.
455
456  + (Unix version): Update GTK version reporting - report GTK3, and don't
457    bother to report subversions of GTK2 (it seems to be fairly arbitrary
458    which subversions wxWidgets defines constants for).
459
460  + Update code to work without warnings when using wxWidgets 3.1.0 (the
461    current development version).
462
463  + Make movie export code compatible with upcoming FFmpeg 3.5 release.
464    It should still work with the older versions that worked before this
465    change.  Reported by James Cowgill in https://bugs.debian.org/888334
466
467* cavern:
468
469  + Warn about 2 digit years.  We can't change the assumption that these are
470    19xx without risking breaking existing datasets, but the further we get
471    into this century, the more likely such an assumption is to catch someone
472    out.  The warning can easily be quashed by explicitly adding the assumed
473    "19".
474
475* The Spanish translation is now up to date once more, thanks to updates from
476  Evaristo Quiroga.
477
478* Merge French translation updates from Jean-Marc.
479
480* Fix transposed German Northing and Easting labels.  Fixes #95, reported by
481  milosch.
482
483* Fill in missing translations of "Easting", "Northing", "E" and "N" for
484  Bulgarian, Greek, Hungarian, Polish and Russian based on other existing
485  translated messages.
486
487* Align .pos file headings better with columns of coordinates below for
488  Indonesian and Polish.
489
490* Fix handling of the message string "error" before messages loaded.  If
491  there's an error loading messages, we need this message to report it.
492  Reported by Martin Sluka.
493
494* Fix a few compiler warnings.
495
496* img library: Fix extracting leaf survey name for survey title.  When there
497  are three or more levels of survey, we were taking everything after the first
498  dot rather than everything after the last dot.
499
500* Fix problems with testsuite on macOS:
501
502  + cavern.tst: Skip "ONELEG" testcase on case-insensitive filing systems
503    - this test isn't meaningful unless the filing system is case-sensitive,
504    but happens to fail if it isn't.
505
506  + cavern.tst: Workaround limitations of Apple's sed.
507
508  + aven.tst: Fix not to hang on macOS.
509
510  + smoke.tst: Remove aven testcases which duplicate those in aven.tst.
511
512* Clean up handling of support files in relocatable installs - this is now
513  detected at run time on macOS.
514
515* Split out macOS Aven.app creation into a make rule so it can be easily used
516  by the homebrew formula.
517
518* buildmacosx.sh:
519
520  + Fix when WX_CONFIG not specified - this was giving a confusing error like:
521    ./buildmacosx.sh: line 163: --cc: command not found
522
523  + Use wxWidgets 3.0.4.
524
525* Stop checking wx-config --ldflags as this option was removed in wxWidgets 2.6
526  and we currently require 2.8 or newer.
527
528Changes in 1.2.32 (2017-07-08):
529
530* aven:
531
532  + Make splays on printouts a darker shade of grey.  Reported by Erin Lynch
533    and Anthony Day.
534
535  + In export formats which include 3 dimensions (DXF, PLT, GPX, KML, JSON,
536    POS), the value in the Z dimension was negated.  Bug introduced by fixes
537    for export of rotated plans and tilted elevations in 1.2.27.  Reported by
538    Erin Lynch in #89.
539
540  + Ignore viewing angles for export formats which work in 3D.  When the
541    rotation and tilt controls are hidden in the export dialog we were still
542    using their values to transform the data, so if you set them with for one
543    export format which support them, then switched to an export format which
544    doesn't, you'd get bogus coordinates in the exported file.  Bug probably
545    introduced in 1.2.27 by fixes for exports of rotated plans and tilted
546    elevations.
547
548  + Fix exporting to skencil and Survex .pos formats.  When aven's export to
549    .pos was added in 1.2.19, the ordering didn't match up and since then .pos
550    export has produced skencil files and vice versa.
551
552  + Don't leave terrain on if loading terrain data fails.  Previously if you
553    clicked the terrain icon (or via the menu) with no terrain loaded, but no
554    terrain got loaded (e.g. because the survey data lacks an explicit
555    coordinate system, or because the file failed to load, or because you
556    cancelled the dialog) then the terrain icon/menu item was still changed to
557    "on".
558
559  + Disable texturing while drawing terrain.  Previously the terrain got a bit
560    darker when "Textured Walls" were enabled.
561
562  + Force a refresh when "Textured Walls" are enabled or disabled.  Previously
563    the display wouldn't update right away.
564
565* Manual:
566
567  + Document how to specify fixed point altitude in feet.
568
569  + Explain why *fix warns about unused fixed points
570
571* Building from source now requires a compiler with decent support for C++11.
572  If you're using GCC, then GCC 4.7 should suffice.  This should not be an
573  onerous requirement - e.g. Debian wheezy and Ubuntu trusty both have a recent
574  enough GCC.  If special options are needed, these should get probed for and
575  automatically.  Fixes building 1.2.31 with GCC < 6, reported by Wookey.
576
577Changes in 1.2.31 (2017-07-01):
578
579* aven:
580
581  + Use superscript 'g' symbol instead of word 'grads' in status bar.  This
582    conserves the limited space available, and we already do this in the
583    compass and clino indicators so it's more consistent too.
584
585  + Show one decimal place on measure line bearing.  Pointed out by Benedikt
586    Hallinger on the therion list, though I'm sure this has been asked for
587    before by others.
588
589  + Show gradient of the measuring line when both ends are stations.
590
591  + Allow selection of text in cavern log window.  Selection was disabled in
592    1.2.28 because it seemed you couldn't actually copy selected text to the
593    clipboard, but retesting this now actually works fine for me, both with
594    current git master with the change reverted, and with code just before the
595    original change.
596
597  + More robust parsing of cavern output (cleanly handle context highlighting
598    which extends beyond the end of the line).
599
600  + Allow showing duplicate legs as dashed lines or hiding them entirely,
601    with dashed now being the default.  Implemented by Patrick Warren.
602
603  + Also allow "Dashed" for splays and "Faded" for duplicate legs.
604
605  + Splay legs in surface data are also shown faded.
606
607  + Check environment variables VISUAL and EDITOR when looking for editor to
608    use when a warning or error is clicked on in the cavern log window.  The
609    specified editor may have a GUI or need to run in a terminal, so we have to
610    special-case each editor supported, and that means we can pass extra
611    options needed to position the cursor on the appropriate line/column.
612    Currently these editors are supported: gvim, nvim, vim, gedit, pluma,
613    emacs, nano, jed, kate.  Suggested by Wookey.
614
615  + Fix handling of non-square terrain data files - the X and Y dimensions were
616    swapped.  Reported by detrito.
617
618  + Improve parsing of DEM data with .hdr file.  Use documented defaults for
619    more values, and where we only support a subset of values (or a particular
620    value) check for unsupported values in more cases.
621
622  + When colouring by depth, fix colouring and texturing of polygons which
623    cross depth bands.  The previous problems were most obvious with high
624    chambers and long legs down deep pitches, especially in for surveys without
625    much vertical range.
626
627  + Support for drawing blobs using point sprites was added in 1.2.28,
628    but caching that this worked wasn't hooked up properly so the test to
629    see if this worked would happen at the start of each run.  This is now
630    cached as intended which should reduce start up time a little when blobs
631    are drawn in this way.
632
633  + Fix drawing of crosses with lines.  This is a fall-back case which is
634    rarely used as most OpenGL setups will handle a better method, but it was
635    resulting in crosses with a four-pixel square in the centre - now the
636    centre should be a single pixel.
637
638* cavern:
639
640  + Allow *data with no arguments to reset the current style - useful for
641    entering passage data where there are side passages.
642
643  + Fix hang processing file without newline at end.  This bug was introduced
644    by changes in 1.2.28.  Reported by Mark Brown.
645
646  + (Mac OS X and Microsoft Windows versions): Build with newer version of
647    PROJ library which fixes buggy handling of *fix with lat-long coordinates.
648    Also add a testcase to the testsuite to alert users building for themselves
649    with an affected PROJ version on any platform.  Reported by Ross Davidson.
650
651  + Fix cavern to handle Compass .DAT with no survey team.  Previously this
652    resulted in the bogus error: Expecting numeric field, found "FROM"
653    Reported by Erin Lynch.
654
655  + Handle UTF-8 "BOM" at start of .svx files.  Unicode doesn't recommend its
656    use, but Microsoft stuff seems to like to create files with it in, and the
657    error cavern currently reports for such files is very confusing, so it
658    seems best to just handle it.  Reported by Rob Eavis.
659
660  + Change a couple of messages to use double quotes for consistency with all
661    other messages.
662
663* extend:
664
665  + Now runs a bit faster.
666
667  + Splays are now carried over the extended survey.  The current handling
668    is simplistic, but should do a good enough job to be more useful than
669    discarding splays.  The splays at each station are all rotated together
670    based on the bearing between the stations either side of the current one
671    along the first path extended through that station.  This nicely handles
672    dead ends and the situation at the top or bottom of a pitch, and should
673    tend to pick an angle close to the passage orientation along a traverse.
674    It's weakest at junctions.  Feedback (especially examples which could
675    be handled better) most welcome.
676
677* French translation is now up to date again, thanks to Jean-Marc.
678
679* Remove erroneous menu shortcut markers from Polish translations.
680
681* Fill in some missing translations in several languages by using message
682  translations from therion.
683
684* Add note to *fix documentation to clarify the coordinate order with *cs
685  long-lat.  Issue raised by Ross Davidson.
686
687* Fix errors in documentation of *units: "DEG" should be "DEGS", and
688  "MINUTES" has been supported for ages but wasn't documented.  Reported by
689  Footleg.
690
691* Fix a few typos in the documentation.
692
693* Fix compilation warning with recent GCC.
694
695Changes in 1.2.30 (2016-10-03):
696
697* aven:
698
699  + (Microsoft Windows version): Fix crash when trying to print or export
700    (probably introduced in 1.2.28).  Reported by Brian Clipstone.
701
702  + Report error if terrain file contains no terrain data in area of survey.
703    Suggested by detrito.
704
705  + Errors when writing an export file were reported with the wrong filename
706    - the .3d file, not the filename we were trying to write to.
707
708  + Export to KML now supports exporting passages, walls and cross-sections.
709    Addresses the remainder of ticket #4.
710
711* Add man page for dump3d.
712
713Changes in 1.2.29 (2016-09-27):
714
715* aven:
716
717  + Fix SVG output with non-ASCII characters (the charset in the SVG file
718    is now set to UTF-8 not ISO-8859-1).
719
720  + (Microsoft Windows version): Fix error dialog on startup in pre-built
721    version.  Reported by Brian Clipstone.
722
723* Manual: Add link to TerrainData wiki page.  Omission highlighted by Erin
724  Lynch and "detrito".
725
726* Fix to build without FFmpeg/libav and with older versions, broken by changes
727  in 1.2.28.  Reported by James Begley.
728
729Changes in 1.2.28 (2016-09-24):
730
731* cavern:
732
733  + Show the contents of the line after error and warning messages while
734    processing survey data, and indicate the region of the line in many cases
735    in the same style that compilers such as GCC and clang use (using the
736    column number we already have, plus new width information).  Based on a
737    patch from Mateusz Golicz.
738
739  + Add column and width information for many more error and warning messages.
740
741  + Fix column for "Separator in survey name" warning.
742
743  + Improve warnings when using a backclino with range 0-180 degrees (reusing
744    the same machinery we already have for a forward clino with range 0-180
745    degrees).
746
747* aven:
748
749  + Include LRUD in printout/export of extended elevations, broken by
750    improvements to export of tilted elevations in 1.2.27.  Reported by Anthony
751    Day.
752
753  + Name <trk> tags in GPX output, so Garmin GPS units name the imported track
754    usefully.  Reported by Anthony Day.
755
756  + Remember scale from previous print or export operation in the same run of
757    aven.  Suggested by Stuart Bennett.
758
759  + Convert range indication below shown line to a highlight on that region
760    of the line in cavern log window.
761
762  + Fix colouring of error/warning without column in cavern log window.
763
764  + Fix click on error/warning without column in cavern log window.
765
766  + Fix highlight of translations of "error" or "warning" containing non-ASCII
767    characters.  This fix for this only works with a Unicode build of
768    wxWidgets, but as of wxWidgets 3.0, all builds are Unicode, so this
769    shouldn't be much of a problem as wxWidgets 2.x is close to obsolete now.
770    Reported by Mateusz Golicz.
771
772  + Disable selection of text in cavern log window - you can't currently copy
773    it to the clipboard, so until that's implemented it seems better to disable
774    the ability to select it.  Reported by Wookey.
775
776  + Avoid special "1000" scale entry when exporting.
777
778  + Show 1 page when "One Page" selected.
779
780  + Reload processed data when restricting view.  Fixes failure when
781    restricting view on data just processed via aven.  Spotted by Andrew
782    Atkinson and myself.
783
784  + Don't hide blobs and crosses behind terrain.  Reported by Jenny Black.
785
786  + Fix rendering of crosses using point sprites.  The texture being used was
787    misaligned relative to the image used for the visual fidelity check, so the
788    check always failed and point sprites would never be used.  Where point
789    sprites are supported, they're probably the fastest option - on my netbook
790    this change improves FPS by ~6 fold when displaying crosses for a large
791    survey.
792
793  + Support drawing blobs using point sprites.  About 5 times faster than using
794    lines on my netbook.
795
796  + Recheck how best to draw crosses and blobs on the first run after Survex
797    is upgraded (or downgraded) as the rendering code may have changed (we
798    already recheck when the OpenGL hardware or driver changes).
799
800  + Change "MPEG" export to be MPEG4 (.mp4) rather than MPEG1 (.mpg).
801    MPEG4 produces smaller output of higher quality, and should be widely
802    supported these days.  And I can't get the MPEG1 output to work without
803    buffer underflows, resulting in a file which doesn't play without
804    glitches.
805
806  + Add OGG video to the list of formats - it's more compact than the others
807    we currently list, though slower to write.
808
809  + Fix export to movie formats for which libav/FFmpeg needs to seek the file
810    being written.  This was broken by changes in 1.2.27.
811
812  + Overhaul movie export for the current FFmpeg API, fixing deprecation
813    warnings when building against a recent version.
814
815  + (Microsoft Windows version): Fix corrupted exported movie files.  1.2.27
816    changed the movie export code to allow writing to files with non-ASCII
817    characters in the names, but the new code failed to open the file in binary
818    mode, leading to corrupt output.  Fixes #81, reported by Erin Lynch.
819
820  * (Microsoft Windows version): Pre-built version now uses FFmpeg 3.1.3 for
821    movie export.
822
823  * (Mac OS X version): Pre-built version now uses FFmpeg 3.1.3 for movie
824    export.
825
826* Fix to build without FFmpeg/libav, broken by changes in 1.2.27.  Reported by
827  James Begley.
828
829* The Polish translation is now very close to being complete, thanks to a
830  substantial update from Mateusz Golicz.
831
832* Merge catalan translation updates from Adolfo Jayme.
833
834* (Microsoft Windows version): Map LANG_CHINESE to zh_CN not zh so Chinese
835  messages get used automatically.
836
837* cavern.tst: Remove random : from after ] - dash ignores the extra character,
838  but it causes this test to fail if /bin/sh is a different shell (e.g. bash).
839
840* cavern.tst: Add expected output for more testcases.
841
842* Remove unwanted execute bit from some testcase data.
843
844* Use https for more URLs which support it.
845
846Changes in 1.2.27 (2016-06-06):
847
848* aven:
849
850  + Right click on a survey in the survey tree now gives a pop-up menu
851    with "Hide others", which restricts the view to just that survey
852    and any subsurveys.  Right click on the root of the survey tree
853    gives a menu with "Show all" to undo any restriction in effect.
854    (Currently these are implemented by reloading the file and using
855    the same machinery as the --survey= command line option, but that will
856    probably change in the future).
857
858  + If there's a sub-survey restriction (from the --survey= command line
859    option or the new UI described above) it is now shown in brackets after
860    the survey tree root.
861
862  + When reloading a survey, preserve the current view position (previously
863    the view was recentred).
864
865  + When reloading a survey, actually preserve the current scale factor
866    (this was meant to happen, but the adjustment was applied in the
867    wrong direction).
868
869  + New "File->Extended Elevation..." menu item provides a way to generate
870    extended elevations for simple cases without having to use the command
871    line.  Suggested by Fleur Loveridge.
872
873  + Don't process key presses if accompanied by an unexpected modifier key.
874    In particular, this means that aven no longer interferes with Alt+<function
875    key> (which is typically handled by the desktop) and Alt+<letter> (which is
876    typically a menu short cut).  Reported by Владимир Георгиев.
877
878  + Reduce file loading time by ~5%.  The station name compare function was
879    something of a hot spot, and optimising it yielded a nice improvement.
880
881  + Allow splay legs to be disabled in when printing and exporting.  Mostly
882    addresses #60.
883
884  + SVG export now shows splay legs thinner and in grey.  See #60.
885
886  + Fix export of rotated plans and tilted elevations - previously plans were
887    always aligned with North up, and elevations which weren't exactly side on
888    were exported as plans.  Reported by Stuart Bennett.
889
890  + Fix offset bounding box for exported elevations.
891
892  + In print/export dialog the bearing value now wraps if you scroll up past
893    360 or down past 0.
894
895  + Fix greying out of LRUD-based controls in the print/export dialog when the
896    view is tilted (i.e. not plan or elevation).  This stopped working in
897    1.2.18 when the pan and tilt spin controls were changed from integer- to
898    real-valued ones.
899
900  + Printouts now show LRUD as pale grey arrows from the station they are
901    measured from.  Based on patch from Michael Sargent.  Closes #65.
902
903  + Take LRUD into account for printout size.  Fixes #72, reported by Erin
904    Lynch.
905
906  + Update movie export code to work with latest version of FFmpeg.
907
908  + Make "Show Log" a toggle, so you can click on the button to take a look at
909    the log, and a second click returns you to the survey view.
910
911  + (Microsoft Windows version): Open the font file in binary mode - it looks
912    like we were lucky and the font file (or at least its current version)
913    would have loaded OK in text mode despite being binary data.
914
915  + (Microsoft Windows version): Exporting to files with non-ASCII filenames
916    should now work.
917
918* cavern:
919
920  + Allow tape or backtape to be omitted.  Reported by Erin Lynch.
921
922  + Grid convergence is now corrected for when using automatically
923    calculated declinations (*declination auto <X> <Y> <Z>).  Requested
924    by Mateusz Golicz on the mailing list.
925
926  + Clear any cached calculated declination upon another *declination auto
927    with different coordinates.  Previously if the date stayed the same,
928    a previously cached declination for the old coordinates was used.
929
930  + Fix check for end of version number array in *required.   We would check up
931    to 12 version components, the last 9 being bogus.  In practice, *require is
932    only likely to be used with up to three components, so this wouldn't be an
933    issue.
934
935  + *begin with an invalid prefix could cause a crash in some cases.  Fixed
936    by patch from Colin Watson.
937
938  + Report column locations for errors to do with readings.
939
940* Merge translation updates from Jean-Marc.
941
942* img library: Better document which members can be set when writing.
943  Highlighted by email query about use of img API from Владимир Георгиев.
944
945* Document how *declination interacts with *calibrate declination if both are
946  used in the same dataset.
947
948* doc/3dformat.htm: Update details of how changes to the current label buffer
949  are encoded to reflect changes in v8.  Reported by Angus Sawyer.
950
951* Use docbook2man instead of docbook-to-man to generated Unix man pages
952  from SGML source.  The latter seems to be no longer actively maintained, and
953  docbook2man now does a similarly good job.
954
955* Use https for survex.com links, and for other sites which support it.
956
957Changes in 1.2.26 (2016-01-07):
958
959* aven:
960
961  + (Microsoft Windows version): Fix to be able to process .svx files with
962    cavern again.
963
964* (Microsoft Windows version): Simplify upgrading process with innosetup
965  installer - if Survex is already installed, we now just install to the same
966  location and use the same start menu folder.
967
968* (Linux version): survex.spec: Update for filetype metadata change in 1.2.25.
969  Fixes #79, reported by James Begley.
970
971* (Linux version): survex.spec: Fix to work with RPM 4.13.  Fixes #79, reported
972  by James Begley.
973
974Changes in 1.2.25 (2016-01-05):
975
976* aven:
977
978  + Drop broken code which attempts to fix 2D pitches.  Fixes #73, reported by
979    Erin Lynch.  #76 tracks the issue the removed code was trying (but failing)
980    to address.
981
982  + When animating, don't try to update station info based on mouse movement
983    over the survey tree.
984
985  + Further improve code to handle cavern subprocess in aven.
986
987  + Fix jump to error for filenames containing colons when the error location
988    doesn't have a column number.  Bug noted by Jenny Black.
989
990  + If we encounter bad UTF-8 in cavern output, replace it with a red and white
991    ? in a diamond (previously we gave up showing output at the first bad
992    sequence).  This can happen if you process a .svx file which isn't UTF-8
993    encoded.
994
995  + (Unix version): Don't try to set the terminal window title when opening an
996    editor from the cavern log window - gnome-terminal no longer supports this,
997    and there doesn't seem to be a portable option for specifying the title for
998    terminals which do still support this.
999
1000  + (Microsoft Windows version): Also quote for cmd.exe so that paths with
1001    spaces in work reliably.  Reported by Marco Cotto.
1002
1003* cavern:
1004
1005  + Improve error for mismatched fore/back-sight plumbs, reported by Andy
1006    Edwards (see #78).
1007
1008  + Fix to use correct sd for backcompass.  We were using zero instead, the
1009    most obvious effect of which was that the threshold for warning about
1010    differing COMPASS and BACKCOMPASS was about 71% of what it should have
1011    been, so we were warning in more cases than we should have been.
1012
1013  + Implement support for specifying a length on backsights - if you're using
1014    something like a disto-x, you'll get a distance reading for the backsight
1015    too.  Fixes #71, reported by Erin Lynch.
1016
1017  + Make line counting more robust to mixed line ends.  Noticed in example file
1018    from Pete Smart (see #69).
1019
1020* extend: New --show-breaks option which adds a leg flagged as surface survey
1021  between each points at which a loop has been broken.  Suggested by Jenny
1022  Black.
1023
1024* (Unix version): Update filetype metadata to work with modern desktops.
1025
1026* Fix incorrect reporting of errors reading and writing processed survey data.
1027  Since 1.2.8, the error strings corresponding to IMG_CANTOPENOUT,
1028  IMG_BADFORMAT and IMG_DIRECTORY have been mixed up (this doesn't affect
1029  external programs using the img library, only Survex).  Reported by Jenny
1030  Black.
1031
1032* Add missing options to extend man page and --help output.  Noted by Jenny
1033  Black.
1034
1035* Document Document Ctrl+cursor keys for rotating and tilting in aven man page.
1036
1037* Fix broken SGML markup in manual.
1038
1039* Fix typo in manual reported by Jenny Black.
1040
1041* Update vim syntax file for newer commands, etc.
1042
1043* Minor translation updates.  Thanks to Piotr Strębski and Jean-Marc.
1044
1045* Fix to compile with FFmpeg 2.9.  Reported by Andreas Cadhalpun in
1046  https://bugs.debian.org/803863
1047
1048* Stop maintaining ChangeLog files.  They make merging patches harder, and stop
1049  'git cherry-pick' from working as it should.  The git repo history should be
1050  sufficient for complying with GPLv2 2(a).
1051
1052* (Microsoft Windows version): The installer requires admin privileges on Vista
1053  and later and OS versions older than Vista are past end of life, so drop code
1054  which tries to set up the registry differently depending if we have admin
1055  privileges or not.
1056
1057Changes in 1.2.24 (2015-09-23):
1058
1059* aven:
1060
1061  + (Microsoft Windows version): Fix the cavern log window.  Reported by Brian
1062    Clipstone.
1063
1064  + (Microsoft Windows version): Add workaround to avoid breakage in Therion.
1065    Reported by Jenny Black.
1066
1067  + If wx was built with thread support, aven now runs cavern from a separate
1068    thread, which works much better under wxMSW (where we can't use select),
1069    and also seems a bit smoother on Linux.
1070
1071  + Fix handling of encoding of filenames when the operating system has no
1072    locale installed corresponding to the language selected for Survex's
1073    messages.
1074
1075  + Undo accidentally committed debugging code which was sending message to
1076    the terminal in 1.2.23.
1077
1078* (Linux version): configure now looks first for wx-config-3.0, which Fedora's
1079  wx3 packages have.  Reported by James Begley.
1080
1081* Indonesian translation fully up to date again.
1082
1083* Manual: Document anonymous stations, based on the text from NEWS.  Reported
1084  by Wookey.
1085
1086Changes in 1.2.23 (2015-09-06):
1087
1088* aven:
1089
1090  + Updating the cavern log window is now much smoother, especially on slower
1091    machines.
1092
1093  + Show "busy" mouse cursor while processing survey data.
1094
1095  + Fix an assertion if you try to start processing a survex file while one is
1096    already being processed.
1097
1098  + Processing a .svx file with an error now still adds it to the file history.
1099    Reported by Martin Green.
1100
1101  + Fix the orientation of the starting end of tubes.
1102
1103* cavern:
1104
1105  + New *ref command to allow specifying an external reference (e.g. where to
1106    find the original survey notes).
1107
1108  + Drop support for showing percentage progress in cavern.  It's confusing in
1109    a multiple-file dataset as it shows progress in the current file so jumps
1110    around.  It also slows down processing, and on a slow machine you'd don't
1111    want that, while on a fast machine processing isn't slow enough for the
1112    progress display to be useful.
1113
1114* French translation is now completely up to date, thanks to Michel Bovey.
1115
1116* Bundle proj's EPSG and ESRI code lists in the installers for MS Windows and
1117  OS X so that things like "*cs EPSG:29903" work.  Reported by Graham Mullan.
1118
1119* (Microsoft Windows version): Process survey data with aven rather than
1120  running cavern.
1121
1122* (Microsoft Windows version): Installer built with InnoSetup 5.5.6 (recent
1123  releases have been built with 5.5.3) to see if that solves Ray Duffy's
1124  reported issue with not having file associations for .svx files created.
1125
1126Changes in 1.2.22 (2015-08-17):
1127
1128* aven:
1129
1130  + Ensure that the window has a depth buffer.  Whether it does by default
1131    seems to vary depending on OS and maybe graphics card.  Fixes #55 (terrain
1132    is no longer visible through itself), and also the rendering of passage
1133    tubes.  Thanks to Martin Green for pointing me in the right direction for
1134    finding this fix.
1135
1136* cavern:
1137
1138  + Fix *declination with an angle to actually work.
1139
1140  + Fix assertion if we try to identify a hanging survey by an anonymous
1141    station.
1142
1143  + Improve errors for invalid survey names in *begin, *end, *equate and
1144    *export.
1145
1146Changes in 1.2.21 (2015-07-28):
1147
1148* aven:
1149
1150  + Fix exporting to KML and other text-based formats to always use "." for the
1151    decimal separator - previously "," would be used when the user's locale
1152    specified this for the decimal separator.  Reported by Jan Schorn.
1153
1154  + Implement exporting of survey legs in KML format.
1155
1156  + Put "paddle" placemarker icons on stations in exported KML files, using the
1157    same colour coding for entrances, fixed points and exported points as aven
1158    does.
1159
1160  + Remove the "Coordinate projection" field from the print dialog, as it isn't
1161    relevant there.  Reported by Wookey.
1162
1163  + Fix the initial scale for small caves (since 1.2.18 the initial scale has
1164    been too small).  Reported by Wookey.
1165
1166  + Don't rescale if the same file is reloaded, but adjust the volume diameter
1167    as appropriate.
1168
1169  + Use wxGetenv() to read the SURVEXEDITOR variable, so we can accept Unicode
1170    values on Windows.
1171
1172* cavern:
1173
1174  + Fix coordinate systems using latitude and longitude - PROJ.4 wants these in
1175    radians, but we were passing degrees, which would generally cause the
1176    conversion to the output coordinate system to fail.  Reported by Wookey.
1177
1178  + Fix *fix with standard deviations when *cs is in use, give an error for use
1179    of *fix with standard deviations before *cs.
1180
1181  + Add new *declination command with support for setting the declination
1182    automatically from the IGRF model based on the survey date.  Thanks to the
1183    Therion developers for the IGRF support code, which we're reusing.
1184    Fixes #54, reported by Wookey.
1185
1186  + Allow the units for the zero error to be specified, making it easier to
1187    specify calibration with a scale if you measure the zero error externally
1188    (rather than using the instrument itself).  Fixes #61, reported by Andrew
1189    Atkinson.
1190
1191  + Report the error from PROJ when coordinate conversion fails as part of the
1192    actual error rather than on a separate line.
1193
1194  + Fix use after free after *solve.  This only occurs if a leg between the two
1195    exact same stations appears right before and right after the *solve, which
1196    is unlikely in real data, but the testsuite has an instance of this.  This
1197    was introduced by the repeat leg averaging added in 1.2.17.
1198
1199  + Fix small memory leak when solving network.  This doesn't really matter
1200    when solving at the end of processing as cavern will exit after that, but
1201    if *solve is used we continue processing after solving.
1202
1203* Remove compatibility handling for specifying a country variant of a language
1204  in SURVEXLANG using "-" with a lower case country code (e.g. "en-us") - we
1205  changed to the standard "en_US" way back in 2001.  This code was mangling
1206  character sets with a "-" in, and is no longer useful.
1207
1208* Ignore any "@<something>" modifier in the language code.
1209
1210* Improve documentation of magnetic declination handling, and cover the new
1211  "*DECLINATION" command.
1212
1213* Document aven's command line options in the manual and its man page.
1214  Reported by Jenny Black.
1215
1216* Point to '*case' and '*truncate' from the 'SEE ALSO' sections of each other's
1217  documentation.
1218
1219* Remove references to SpeleoGen from the documentation - it hasn't been
1220  updated for many years, and can't read recent versions of the .3d format.
1221
1222* Strip documentation references to obsolete versions of MS Windows.
1223
1224* doc/HACKING.htm: Update list of debian packages to install to build from git.
1225
1226Changes in 1.2.20 (2015-06-26):
1227
1228* aven:
1229
1230  + When printing, use the top margin rather than the right margin to calculate
1231    the height of the printable area.  In practice, the two values seem to be
1232    the same or very similar by default.
1233
1234  + Avoid assertion if the about dialog image fails to load.  Reported by Phil
1235    Maynard.
1236
1237  + Optimise the size of the about dialog images.
1238
1239  + Add support for reading terrain data which isn't in a .zip file.
1240
1241  + Force a refresh after loading terrain data so that it gets displayed right
1242    away.
1243
1244  + Make checks for terrain data extensions in zip files case insensitive.
1245
1246  + If reading terrain data fails, always report an error and never try to
1247    display it.
1248
1249* cavern: Allow clino readings in diving style data, suggested by Andrew
1250  Atkinson.  Currently these readings are ignored, but a future version will
1251  check that they're consistent with the angle given by the depth gauge and
1252  tape, and perform suitable averaging.
1253
1254* Remove lingering traces of svxedit.
1255
1256* configure: Fix to allow compiling without libav/ffmpeg, as was possible
1257  before 1.2.19.
1258
1259* (Unix version): Install the filetype and aven application icons under
1260  /usr/share/icons/hicolor, which is where they're expected to be these days.
1261
1262* (Unix version): Add %f to Exec in survex-aven.desktop.
1263
1264* (Mac OS X version): Remove useless extra copy of about box images from OS X
1265  disk image.
1266
1267* (Mac OS X version): Only ship one copy of each of the translations.
1268
1269* (Mac OS X version): Reduce the size of the aven binary by disabling a load of
1270  libav features we don't use.
1271
1272* (Microsoft Windows version): Reduce the size of the aven binary by disabling
1273  a load of libav features we don't use.
1274
1275* (Microsoft Windows version): Update message files to fix a missing Chinese
1276  message in the installer.
1277
1278Changes in 1.2.19 (2015-06-18):
1279
1280* aven:
1281
1282  + Fix exporting to GPX, KML and HPGL, which all failed to write the header to
1283    the exported file in 1.2.18.
1284
1285  + Add exporting to Survex .pos format.
1286
1287  + If the measuring line isn't currently active, pressing "Escape" will now
1288    exit full screen mode.
1289
1290  + (Mac OS X version): Change the shortcut for full screen mode to be the
1291    standard Ctrl+Command+F (rather than Shift+Command+F which we have been
1292    using since 1.2.7).
1293
1294  + (Mac OS X version): When we centre the view on the station this can
1295    generate a mouse move event, so clear the variable which says we are
1296    dragging before we process a left click on a station.  This avoids random
1297    rotations of the survey when clicking on a station, reported in #47 by Hugh
1298    St. Lawrence.
1299
1300  + (Mac OS X version): Force use of a non-native toolbar to stop the toolbar
1301    icons from being rescaled and looking fuzzy.
1302
1303  + (Mac OS X version): Remove code added in 1.2.18 which tries to set stop the
1304    toolbar icons from being rescaled, but which requires an unreleased version
1305    of wxWidgets, had a typo in, and doesn't actually seem to work anyway.
1306
1307  + (Mac OS X version): Drop out of full screen mode if the mouse is mode to
1308    the top of the screen, since we can't seem to display the menu bar in this
1309    case like we do on other platforms.
1310
1311  + (Mac OS X version): Enable aven's movie export feature.
1312
1313  + (Mac OS X version): Enable wxDisplay when building wxWidgets to better
1314    support multi-monitor setups.
1315
1316  + (Mac OS X version): Silence warning visible when aven is run from a
1317    terminal about a missing CFBundleTypeRole.
1318
1319  + When reading terrain data from a .zip file, report an error if the .zip
1320    file is bad, or if it doesn't contain any terrain data we recognise.
1321
1322  + Tweak error message in terrain reading code to distinguish two failure
1323    cases.
1324
1325  + Add viewing angles and scale to footer, and shorten some of the other items
1326    to make room for this extra information.  (Fixes ticket #52, reported by
1327    Erin Lynch)
1328
1329  + If the footer is wider than the printout width, scale down the font used
1330    so that it exactly fits; if the footer is narrower, than space out the
1331    items in in so it uses the full width.
1332
1333  + If the saved size for aven's window exceeds the current display size
1334    (mostly likely because we're now plugged into a smaller monitor), then
1335    reduce the size of the window to fit the display.  If the saved size is <
1336    (480x320), increase it to at least that, as aven isn't usable in a smaller
1337    window.
1338
1339  + Remove crude bodge which tries to pick a nicer initial window size when
1340    using wxWidgets without wxDisplay on a multi-monitor setup - aven now opens
1341    with the same size window it had when it was closed, so the initial size is
1342    only relevant on the first ever run.
1343
1344* Assorted translation updates.  Notably Indonesian is at 100% again.
1345
1346* Stop trying to catch and report signals.  The only real reason to do it is so
1347  we can say "Bug in program detected! Please report this to the authors"
1348  before we exit, but when the program crashes that's pretty obvious.  In aven
1349  we try to pop up a message box for this message, which may fail due to
1350  whatever caused the signal, while with the command line tools there's no
1351  great benefit over just letting the shell report the signal.
1352
1353* Use pkg-config to probe for libav and proj, which sorts out the correct flags
1354  for building on OS X against a static install of libav.
1355
1356Changes in 1.2.18 (2015-06-03):
1357
1358* aven:
1359
1360  + Add support for reading terrain data (from a zip file containing either an
1361    SRTM .hgt file, or an ESRI .bil file and associated metadata files), and
1362    rendering it as a transparent surface.
1363
1364  + Remove actions from 'Orientation' and 'Rotation' menus which you wouldn't
1365    sanely want to perform from the menu.
1366
1367  + Create a "Colour by" submenu of the "View" menu to house the various
1368    colouring options.
1369
1370  + Add "Colour by Gradient" and "Colour by Length".
1371
1372  + Make the button to dismiss the "About" dialog "OK" rather than "Close",
1373    which seems more logical, and also allows the dialog to be closed by
1374    pressing "Escape".
1375
1376  + Destroy any existing clipping region before we write the page footer.
1377    Hopefully solves ticket #52, reported by Erin Lynch.
1378
1379  + Don't round bearing and tilt angles to integers when printing and
1380    exporting.
1381
1382  + Add passage export for EPS format.  (Partly addresses ticket #4)
1383
1384  + Add JSON export.  This should be regarded as experimental, and the format
1385    is quite likely to change.
1386
1387  + Pressing F6 now toggles the display of rendering stats, currently FPS
1388    (Frames Per Second) and the number of triangles in the terrain mesh.
1389
1390  + Add a menu item and toolbar button to show the cavern log window if the
1391    currently shown survey data was processed by aven.  Reported by Hugh St
1392    Lawrence in #47, and by Dave Clucas and others previously on the list.
1393
1394  + Add "Save Log" button to Aven's cavern log window.
1395
1396  + In cavern log window, highlight "error" markers in red and "warning"
1397    markers in orange.
1398
1399  + Rework code to read cavern's output.  In particular, we no longer mix
1400    buffered and non-buffered system calls.
1401
1402  + Aven's support for reading colours and font sizes for printouts from
1403    print.ini has never worked - the contents of the ini files are ignored due
1404    to a bug which has been there since the code was added in 2005 - but nobody
1405    has ever complained.  So just strip out that code entirely - we should
1406    support setting the colours and font sizes, but a GUI interface for setting
1407    them would be better.
1408
1409  + Fix to compile with a Unicode build of wxWidgets 2.8.  Reported by Bill
1410    Gee.
1411
1412  + Take the width of the messages used above the compass and clino into
1413    account when calculating how much space to allow for them - now the labels
1414    won't overlap or be cut off in translations where they are long.
1415
1416  + (Mac OS X version): Attempt to address the size of the toolbar icons.
1417
1418* cavern:
1419
1420  + Reject *fix with SDs which aren't all positive.  (fixes#2, reported by
1421    susscorfa).
1422
1423  + Use the currently set units when outputting measurements in warnings,
1424    errors, and the stats at the end of the run.  Requested by Bill Gee.
1425
1426  + Include column number when a *include file isn't found.
1427
1428  + Show 'error' in front of error messages, like we show 'warning' in front of
1429    warnings.  Fixes #48, reported by Wookey.
1430
1431  + Increase the threshold for warning that fore and back measurements differ
1432    from 2 SDs to 3 SDs.
1433
1434* findentrances: If the 3d file specifies the coordinate system, use it.
1435
1436* svxedit: Remove svxedit - while an editor with built-in knowledge of survex
1437  would be nice to have, svxedit doesn't really offer that, and it looks ugly
1438  in a modern desktop.
1439
1440* If we run out of memory while reading a processed survey data file, include
1441  the filename in the error message.
1442
1443* Many translation updates - notably Indonesian and Russian are now the two
1444  most complete translations.
1445
1446* (Microsoft Windows version): Add code page 1252 mappings for fancy quotes.
1447
1448* Transliterate gradient and infinity symbols if the current character set
1449  lacks them.
1450
1451* Add SVG version of .plt icon.
1452
1453* Manual:
1454
1455  + Add complete list of quantities you can set SDs for.  Thanks for Wookey for
1456    highlighting that the previous list was incomplete.
1457
1458  + Document averaging of a group of repeated readings.
1459
1460  + Add a link to the sample data from the manual.
1461
1462  + Remove references to contact addresses which are no longer there.  Remove
1463    offer to post people floppies, and references to a CD image which isn't
1464    available for download.
1465
1466* Remove non-breaking spaces from the diffpos and extend manual pages, as they
1467  actually make the output formatting worse (presumably these used to work
1468  around a since-fixed bug in one of the docbook processing tools).
1469
1470* doc/TODO.htm: Update.
1471
1472* Fix to compile without warnings with 'g++ --std=gnu++11'.
1473
1474Changes in 1.2.17 (2015-02-24):
1475
1476* MacOS X version:
1477
1478  + Update INSTALL file with current status.
1479
1480  + Aven.app now has a custom icon.
1481
1482  + Add icons for all the filetypes supported.
1483
1484  + Add Finder actions for .svx, .3d, .plt and .pos files.
1485
1486  + aven: Hide the status bar and tool bar in Full Screen mode, as wx doesn't
1487    currently do this for us.
1488
1489  + aven: Fix short-cut for toggling Full Screen mode.
1490
1491  + aven: Make "About" menu item appear.
1492
1493  + aven: Fix "Close" button in about dialog.
1494
1495  + aven: Make custom cursors black with a white outline to match the standard
1496    OS X cursor.
1497
1498  + svxedit: Now wrapped up in an application bundle as svxedit.app.  It
1499    still doesn't really work like a standard app though - e.g. you can't load
1500    files from Finder (instead run svxedit.app and use File->Open), the font
1501    size of most menu items is wrong, the icon for the app is the wish icon
1502    rather than the svxedit icon, shortcuts use Ctrl not the Cmd key, and
1503    probably more.  I'd probably recommend using another editor (OS X comes
1504    with TextEdit.app for example).
1505
1506  + The documentation is now in a "Docs" directory alongside the apps, rather
1507    than in the rather less obvious "share/doc/survex" directory.
1508
1509  + Default to building for x86_64, since all modern Macs are 64 bit.
1510
1511  + Disable use of liblzma when building wxWidgets for OS X, which was
1512    preventing the build from working on OS X 10.6.8.
1513
1514  + Download wx sources from SF via redirecting link.  Thanks to David A.
1515    Riggs.
1516
1517  + buildmacosx.sh: Handle the mount point for the disk image containing a
1518    space.
1519
1520  + Link with a static build of PROJ for doing coordinate system conversions.
1521
1522  + Build wx with --disable-webview to avoid a compilation failure on OS X
1523    10.10.1.
1524
1525  + Use wx-config --cc and --cxx to get the compilers to use for building
1526    everything else, as wx adds options to them which otherwise cause linking
1527    errors.
1528
1529  + The diskimage (.dmg) file is now compressed with bzip2, which gives a
1530    smaller download.  This means OS X 10.4 is required, but we probably
1531    already need at least 10.5 because that's the minimum version which the
1532    wxWidgets build supports by default.
1533
1534  + Remove unused files and copies of files from the diskimage.
1535
1536* cavern: If the same leg is repeated consecutively, average the readings and
1537  treat as a single leg.
1538
1539* dump3d: Report SEPARATOR used by the file being read.
1540
1541* aven.svg: Fix visual glitch in SVG icon for aven.  Noted by David A. Riggs.
1542
1543* aven:
1544
1545  + Greatly reduce flicker when mouse is moved to the top of the screen in full
1546    screen mode and the menu bar reappears.
1547
1548  + For export formats where scaling is supporting, aven now actually uses the
1549    scale specified in the export dialog (previously it ignored this and used
1550    1:500).
1551
1552  + Reimplement animation so that it's based on angular change per unit of
1553    elapsed time, rather than averaging the time take for the last two scene
1554    redraws.  This gives smoother animation in the face of variable load and
1555    scene redraw time, and should be more consistent between platforms.
1556
1557  + Switching to a point of the compass during auto-rotation now jumps straight
1558    there rather than the two animations fighting.
1559
1560  + Reduce the maximum auto-rotation speed, as the previous limit was uselessly
1561    fast.
1562
1563  + Disable stepping the rotation angle when animating (previously we only did
1564    when rotating).
1565
1566  + Speed up start-up a bit - rather than loading icons from individual PNG
1567    files on disk, compile them into the aven binary.
1568
1569* (Unix version): Add "MimeType" field to desktop files so that file
1570  associations work out of the box with modern desktop environments.
1571
1572* Add start of Hungarian translation from Imre Balogh.
1573
1574* Merge in many updates to the Russian translation from "vsuhachev".
1575
1576* Assorted minor updates to other translations.
1577
1578* Create scalable (SVG) versions of file type icons.
1579
1580* doc/manual.sgml: Remove $Id and $Date markers, as they don't get expanded now
1581  we're using git.
1582
1583* tests/: Improve test coverage in a few places:
1584
1585  + Extend tests of fore and back sights to test calibration of the back
1586    compass.
1587
1588  + Test "Can't calibrate angular and length quantities together" error.
1589
1590  + Check that "*set names ." works when "." is also the decimal point.
1591
1592Changes in 1.2.16 (2014-10-17):
1593
1594* aven: Add KML export (stations only currently).
1595
1596* aven: Allow measuring line to measure from anonymous stations.  (Fixes #44)
1597
1598* aven: Fix corrupted names in exported files.
1599
1600* aven: Fix error log window under wxWidgets >= 2.9 to include the system
1601  information before the first log message like it does under wxWidgets 2.8.
1602
1603* cavern: Add support for "*cs JTSK" and "*cs JTSK03".
1604
1605* tests/: Improve test coverage.
1606
1607* Translation updates for many languages, plus the start of translations to
1608  Greek and Polish.
1609
1610* Fix to build against wxWidgets 3.0 built with assertions disabled.  Reported
1611  by Martin Sluka.
1612
1613* Fix warnings when compiling with clang (which is the default compiler on
1614  Mac OS X).  Reported by Martin Sluka.
1615
1616Changes in 1.2.15 (2014-08-14):
1617
1618* cavern: The *cs command now also supports "long-lat", "s-merc" (for "Web
1619  Mercator"), EPSG and ESRI codes, "eur79z30", "ijtsk" and "ijtsk03".  This
1620  means that we now support all the coordinates systems which Therion does,
1621  except for a few which don't have X=East and Y=North.  The documentation
1622  for *cs has also been improved.
1623
1624* aven: We no longer persist full screen mode between runs - it's not a
1625  standard behaviour of desktop programs, and it's too easy to go into full
1626  screen mode from the menu and then not be able to get out again because you
1627  don't know the required key shortcut. (ticket#39)
1628
1629* aven: When in full screen mode, moving the mouse to the top of the screen now
1630  makes the menu bar appear.  This provides a non-shortcut way out of full
1631  screen mode, as well as making it easier to perform other operations while in
1632  full screen mode.  The current implementation gives an annoyingly flickery
1633  transition, but hopefully we can improve this in future. (ticket#39)
1634
1635* (MacOS X version): If built with wxWidgets >= 3.1.0 (which is still in
1636  development), we now call EnableFullScreenView() which improves the full
1637  screen mode experience on OS X 10.7 and later.
1638
1639* img library: Improve documentation for img_ERROR_INFO.
1640
1641* tests/: Ship some missing .out files and compare.tst.
1642
1643* tests/: cavern.tst testcase back2 is now actually used.  Fix a bug in this
1644  testcase, and extend it to cover a variant of the situation reported as a bug
1645  in therion by Bill Gee to the therion list.
1646
1647* (Linux version) survex.spec: Add run-time requirement on proj and proj-epsg
1648  for the survex package and on tk for the svxedit package.
1649
1650Changes in 1.2.14 (2014-07-05):
1651
1652* img library: Add ability to store a PROJ4 string describing the coordinate
1653  system in use in 3d v8 files.
1654
1655* aven: If the 3d file specifies a coordinate system, then use it for exporting
1656  to formats which need to know (currently GPX).  If the input file doesn't
1657  specify the coordinate system, allow the user to enter a PROJ4 string in the
1658  export dialog.
1659
1660* aven: You can now quickly zoom to a particular area by holding down the
1661  "Shift" key and dragging with the left mouse button to create a rectangular
1662  "rubber band box" around the area you wish to zoom to.  If you release the
1663  "Shift" key while still dragging, the box is centred on the start point
1664  rather than having one corner there.
1665
1666* aven: Fix exporting of passage tubes in elevations and extended elevations
1667  - previously up and down were getting drawn across the page!
1668
1669* aven: Fix "Cancel" to work on the print/export dialog, broken by changes in
1670  1.2.13.  (Reported by Brian Clipstone)
1671
1672* aven: Fix the conditions on which the menu item "Cancel measuring line" is
1673  enabled - previously it was hard to actually cancel it via the menu.
1674  Reported by Hugh St Lawrence.
1675
1676* aven: Fix wx assertion failures when showing hit test debug view on platforms
1677  such as 64-bit Linux.
1678
1679* aven: When viewing from above, show "Plan" above the "clino" which indicates
1680  the tilt angle (instead of "Elevation -90°").
1681
1682* aven: The extended font data now loads faster, and also uses less memory on
1683  64-bit platforms.
1684
1685* aven: Dragging the vertical divider between the side panel and the 3D view
1686  now only updates when you finish the drag, as redrawing continuously just
1687  looks clunky except on an ultra-fast machine.
1688
1689* aven: (German translation) Abbreviate "Blickrichtung" so it doesn't overfill
1690  the space available in the aven UI.
1691
1692* cavern: Add a *cs command to allow setting the coordinate system for *fix
1693  commands, and the coordinate system used for processed survey data.  The
1694  latter is now stored in 3d v8 format files.
1695
1696* cavern: Add support for 'L' flag (exclude from length) in Compass .dat files
1697  and handle it in the same way as the "DUPLICATE" flag in .svx files.
1698
1699* cavern: If there's more than one *fix command with coordinates, still
1700  actually fix the second and subsequent ones, to avoid triggering bogus errors
1701  about unconnected surveys.
1702
1703* cavern: If there's more than one *fix command with coordinates, report the
1704  station name of the previous one, plus the file and line number where it was.
1705
1706* cavern: Fix handling of the rather contrived case of *fix with no coordinates
1707  followed by *solve and then another *fix with no coordinates not to access
1708  freed memory.
1709
1710* dump3d: Report any specified coordinate system.
1711
1712* doc/3dformat.htm: Update to document how the coordinate system is stored.
1713
1714* (Microsoft Windows version): Include dump3d in the installer.
1715
1716* Fix a compiler warning.
1717
1718* Improve test coverage.
1719
1720Changes in 1.2.13 (2014-05-15):
1721
1722* aven: Fix --print option to wait for printing to happen before exiting
1723  (previously it would exit right after opening the print dialog, so you
1724  couldn't actually print anything out using it).
1725
1726* aven: Increase the threshold for how close the pointer needs to be to a
1727  station from 5 pixels to 7 to try to help touchscreen users.  Reported by
1728  Hugh St Lawrence.
1729
1730* aven: Add "fat finger" mode, toggled by pressing F2, to allow investigating
1731  if increasing the minimum pointer to station threshold helps Hugh's problems
1732  with using aven on a touch screen device.
1733
1734* aven: The measuring line was unable to see stations which had just been
1735  revealed by toggling surface or underground legs on - this is now fixed.
1736
1737* aven: Add "hit test grid debug" mode, which shows the hit test grid and how
1738  many entries are in each box (toggled by F3).
1739
1740* aven: Pressing F4 now allows the user to toggle wxWidgets assertion messages
1741  off and back on.
1742
1743* aven: Create the empty hit-test grid data structure lazily, to reduce start
1744  up time a little.
1745
1746* cavern: Improve messages which talk about "tags" and/or "prefixes" in *begin
1747  and *end commands to instead talk about "survey names".
1748
1749* cavern: For ages cavern has warned if you reentered a survey, but this
1750  warning was suppressed if it occurred at the same line of the same file as
1751  the survey was first entered, but this can only happen if you include the
1752  same survey file more than once, which isn't a sensible thing to do for a
1753  file with actual survey data in (you might reasonably do it to set up survey
1754  grade details or something like that).  The warning is now given in this
1755  situation too.
1756
1757* cavern: After 5 warnings about reentering a survey we give up warning about
1758  it, but we used to keep reporting where the survey was originally entered -
1759  this secondary diagnostic message is now silenced when the main message is.
1760
1761* (Microsoft Windows version): Compile C code with optimisation on.
1762
1763* Add the start of a Russian translation, with messages take from therion.
1764
1765* Minor translation updates to French.
1766
1767* Fix compiler warning from GCC.
1768
1769* Testsuite improvements:
1770
1771  + Test that "..." anon station works.
1772
1773  + cavern.tst: Check number of errors returned by all testcases which should
1774    fail and give an error count.
1775
1776  + cavern.tst: Fix to actually fully test everything when builddir != srcdir.
1777
1778Changes in 1.2.12 (2014-04-14):
1779
1780* aven: Fix measuring line to show change in altitude rather than altitude
1781  itself (accidentally broken by changes in 1.2.11).  Reported by Brian
1782  Clipstone.
1783
1784* aven: Fix printing when built with wxWidgets 3.0.
1785
1786* aven: Several visual improvements to printouts:
1787
1788  + Move the numbers below the scale bar down a little so that they don't
1789    overlap the scale bar ticks.
1790
1791  + Set the clipping region after we draw the page border and info box to avoid
1792    clipping the border in print preview.
1793
1794  + Tidy up the appearance of the compass and elevation arrow.
1795
1796* aven: Fix to build with libav 10.  Reported by Moritz Muehlenhoff in
1797  <http://bugs.debian.org/739332>.
1798
1799* aven: Fix to build with older libav where avcodec_free_frame() isn't
1800  available.
1801
1802* (Linux version) survex.spec: Update spec file used for building RPM packages.
1803
1804* (Unix version): Add "Keywords:" entry to .desktop files.
1805
1806* (Unix version): Enable large file support, mostly to support filing systems
1807  which return 64 bit inode values, such as CIFS mounts.
1808
1809* (Microsoft Windows version): Only allow "A-Z" or "a-z" for driver letters,
1810  rather than any character which is a letter in the current locale.
1811
1812* Various translation updates.
1813
1814Changes in 1.2.11 (2014-01-28):
1815
1816* aven: Fix wxWidgets assertion when double clicking on an anonymous station.
1817  Reported by Kevin Dixon.
1818
1819* aven: Embed the font data for the first 256 Unicode characters for use in the
1820  survey pane into the compiled aven binary to reduce start up overhead.  Any
1821  additional characters needed are loaded from a data file only if/when a
1822  character >= U+100 is actually needed (as before).
1823
1824* aven: Fix display of Unicode characters above 256 when there's a character
1825  <= 256 earlier in the same string.
1826
1827* aven: Use the actual width of Unicode characters above 256 rather than
1828  assuming they are 16 pixels wide.
1829
1830* aven: If full screen, don't show the side panel when a new file is opened
1831  (e.g. via Ctrl+O).
1832
1833* aven: Don't give an assertion failure when showing passages for a cave with
1834  no vertical extent.  Reported by Jonny Prouty.
1835
1836* aven: Change terminology in print dialog - say "legend" instead of "info
1837  box".
1838
1839* aven: Add option to show the tilt angle as a percentage gradient.
1840
1841* aven: Show the units (degrees, grads, or percent) for the tilt and bearing
1842  indicators.
1843
1844* aven: All length units are now translatable.
1845
1846* aven: Split log_fl_error helper function out of CHECK_GL_ERROR macro, which
1847  will reduce code size and also the number of deprecation warnings about
1848  gluErrorString on Mac OS X 10.9.
1849
1850* (Microsoft Windows version): aven: Try to work around redraw issues related
1851  to the measuring line by redrawing the whole window, which doesn't seem to be
1852  measurably slower.
1853
1854* cavern: If *units is used to try to set units for LEVEL, PLUMB, or POSITION,
1855  give an error rather than quietly ignoring the attempt.
1856
1857* cad3d: Make cad3d remap control characters and spaces in station names when
1858  generating PLT output in the same way aven does.
1859
1860* Various translation updates (particular thanks to Eric Madelaine and Dennis
1861  Baudys), including the start of a Bulgarian translation, with messages taken
1862  from Therion and elsewhere.
1863
1864* (Microsoft Windows version): On Microsoft Windows 2000 and newer, use
1865  GetUserDefaultUILanguage() to get the UI language to use.  For older
1866  versions, continue to use GetUserDefaultLCID().
1867
1868* (Microsoft Windows version): The Indonesian translation will now be used
1869  automatically when the system language is set to Indonesian.
1870
1871* (Mac OS X version): Fix to build with wx 3.0.0 on OS X 10.9.  Thanks to David
1872  A. Riggs for his work on this.
1873
1874* (Mac OS X version): Update buildmacosx.sh script to use wx 3.0.0, and add a
1875  checksum check for the downloaded wx sources.
1876
1877* Fix a lot of the compiler warnings when building with clang.
1878
1879* doc/manual.sgml: Add missing quantities to the list documented as accepted by
1880  *units: LEFT, RIGHT, UP/CEILING, DOWN/FLOOR (missing entirely);
1881  BACKCOMPASS/BACKBEARING, BACKCLINO/BACKGRADIENT (missing from the main list,
1882  mentioned in list of the units that can be set for them); COUNT (missing
1883  alternative name for COUNTER); DX/EASTING, DY/NORTHING, DZ/ALTITUDE
1884  (incorrectly listed as X, Y, Z).  Reported by Jonny Prouty.
1885
1886* Test suite: Improve test coverage for cavern.
1887
1888Changes in 1.2.10 (2014-01-15):
1889
1890* aven: Fix assertion if two mouse buttons are held down at the same time.
1891  If dragging with more than one mouse button held down, releasing one causes
1892  another which is still held down to take effect.  Reported by Brian
1893  Clipstone.
1894
1895* aven: If we fail to start the external editor when the user clicks on an
1896  error or warning from cavern, show an error box.
1897
1898* aven: If the survey has a title, add it as a top-level <title> element to
1899  exported SVG files.
1900
1901* aven: Escape '<', '>', and '&' in labels in exported SVG files.
1902
1903* aven: In GPX export, set the <time> element to the datestamp from the 3d
1904  file.
1905
1906* aven: Don't try to write the title if it isn't set or is empty when exporting
1907  GPX files.
1908
1909* aven: Don't bother looking up the printer page setup info when exporting.
1910
1911* (Microsoft Windows version): aven: Fix crash on "File->Print" or
1912  "File->Export" under Windows XP, reported by Brian Clipstone.
1913
1914* (Microsoft Windows version): aven: Fix error dialog about an incorrectly
1915  encoded filename which could occur if run without being asked to load a file
1916  on startup.
1917
1918* (Microsoft Windows version): aven: Compile with optimisation on.
1919
1920* img library, aven: Although processed CMAP data files are often referred to
1921  as "CMAP .XYZ files", it seems that actually, the extension .XYZ isn't used,
1922  rather .SHT (shot variant, produced by CMAP v16 and later), .UNA (unadjusted)
1923  and .ADJ (adjusted) extensions are.  Since we've long checked for .XYZ, we
1924  continue to do so in case anyone is relying on it, but also check for the
1925  other extensions.
1926
1927* img library: Add new "datestamp_numeric" field to struct img giving the
1928  datestamp as a time_t in UTC (or (time_t)-1 if there's no datestamp or we
1929  failed to convert it).  For .3d >= v8, this field is reliable.  We attempt to
1930  convert date strings in .3d <= v7 and CMAP XYZ files, but may get the
1931  timezone wrong.
1932
1933* img library: Fix my_strcasecmp() to handle top-bit set characters better.
1934
1935* cavern: Fix NULL pointer dereference when processing Compass DAT file without
1936  'SURVEY DATE:'.
1937
1938* doc/manual.sgml: Update references to Survex 1.1 which should be to 1.2.
1939
1940* doc/manual.sgml: Note the station length limit Smaps used.
1941
1942* Fix some compiler warnings if built with glibc's fortify source feature
1943  enabled.
1944
1945Changes in 1.2.9 (2014-01-08):
1946
1947* Document --3d-version in cavern man page and the manual.
1948
1949* aven: Fix compilation error in movie export code with recent libavi.
1950
1951* aven: Fix warning on stderr when export a movie as MPEG.
1952
1953* img library: In non-hosted mode, don't define GETC and PUTC if they're
1954  already defined, to allow easy overriding with getc_unlocked() and
1955  putc_unlocked() (which are significantly faster on Linux).
1956
1957* img library: In non-hosted mode, check that int is at least 32 bits,
1958  and if not, use long.  In practice, platforms with 16 bit int are mostly
1959  obsolete, but it's not hard to be portable here.
1960
1961* img library: Add test that img.c and img.h compile in non-hosted mode
1962  (regression test for issue fixed in 1.2.8).
1963
1964* (Microsoft Windows version): aven is now built with wxWidgets 3.0.0.
1965
1966* Update translations from launchpad and from existing similar messages.
1967
1968* Fix some compiler warnings.
1969
1970Changes in 1.2.8 (2013-10-29):
1971
1972* cavern: Fix handling of anonymous wall stations ('..' by default) to
1973  implicitly set the SPLAY leg flag, as was intended.  Reported by Thomas
1974  Holder.
1975
1976* cavern: Tweak .err file output not to lose the space in front of certain
1977  statistics when the value gets large.
1978
1979* cavern: Eliminate redundant progress message when solving simultaneous
1980  equations.
1981
1982* aven: Add a format drop down to the export dialog, and only show fields which
1983  are meaningful and supported for the currently selected export format.  The
1984  format defaults to that used most recently.  The "Elements" and "View" boxes
1985  have been swapped in the print and export dialogs as that layout works much
1986  better when the "View" box is hidden.
1987
1988* aven: Changing checkboxes in the print or export dialog didn't work in 1.2.7
1989  - now works again.  Reported by Anthony Day.
1990
1991* aven: Add GPX export (based on findentrances patch from Olaf Kähler).  In
1992  this release the projection which the survey coordinates are in defaults
1993  to the BMN M31 grid used in the Totes Gebirge in Austria.  On Unix, you
1994  can edit ~/.aven and add a new line setting 'input_projection' to a PROJ
1995  projection string.  The ability to specify this projection in a better
1996  way is coming soon.
1997
1998* aven: New export options "Origin in centre" and "Full coordinates" - the
1999  latter fixes #10.  GPX and PLT output implicitly force "full coordinates".
2000
2001* aven: The "Sketch" vector drawing program got renamed to "Skencil" some
2002  time ago, so update references.
2003
2004* aven: Make the Presentation->Play menu item a checkbox, to avoid a warning
2005  with wxMSW 2.9.5.  Reported by Brian Clipstone.
2006
2007* aven: Make right click in an empty presentation mark the current position and
2008  open it to edit, instead of crashing.
2009
2010* aven: Update movie export code to work with latest libav API.  Reported by
2011  Sebastian Ramacher.
2012
2013* aven: Improve reporting of errors during the process of exporting a movie.
2014
2015* aven: Don't try to close the movie if we aren't producing one.
2016
2017* aven: Fix assertion failure when double-clicking on the survey with wx2.9.
2018
2019* aven: Fix to build with wxMSW 2.9.5.
2020
2021* aven: Fix to build with wx 2.9.5 with wx2.8 compatibility disabled.
2022
2023* cad3d: The "Sketch" vector drawing program got renamed to "Skencil" some time
2024  ago, so add a new --skencil option to specify this output format.  The old
2025  name (--sketch) is still recognised for compatibility.
2026
2027* cad3d: Make --marker-size work for Skencil and SVG output.
2028
2029* dump3d: Make --show-dates option show dates for XSECT.
2030
2031* img library:
2032
2033  + Fix to work once more when used outside of Survex (missing definition of
2034    max() macro and a bad call to free() in img_close() for a file opened for
2035    reading).
2036
2037  + Use lround() instead of round(), and make the tests around whether we use
2038    the library function or the our fallback implementation saner.
2039
2040  + Fix // comments in C code for portability to pre-C99 compilers which don't
2041    support these as an extension.
2042
2043  + Can now be compiled as C++ as well as as C.
2044
2045* (Microsoft Windows version): The installer is now built with a newer version
2046  of Innosetup, and includes translations for all the languages which Survex
2047  itself has any translations for.
2048
2049* (Microsoft Windows version): aven is now built with wxWidgets 2.9.5.
2050
2051* Minor translation updates.
2052
2053* tests/Makefile.am: Distribute files for "normal_bad" testcase.
2054
2055Changes in 1.2.7 (2013-07-27):
2056
2057* Add support for anonymous stations, which are indicated by one, two or three
2058  separator characters - with the default separator of '.', that means '.',
2059  '..', and '...' are anonymous stations.  Single separator ('.' by default)
2060  is an anonymous non-wall point, double separator ('..' by default)
2061  is an anonymous wall point at the end of an implicit splay), and triple
2062  separator ('...' by default) is an anonymous point (with nothing special about
2063  the leg).  A new *alias command allows '-' to be mapped to '..' for
2064  compatibility with pocket topo: *alias station - ..
2065
2066* New version 8 of the 3d format:
2067
2068  + Supports new flags img_SFLAG_ANON and img_SFLAG_WALL.
2069
2070  + New explicit file-wide flag for 'this is an extended elevation', rather
2071    than modifying the survey title to indicate this.
2072
2073  + The survey prefix is often unchanged from one leg to the next, so use a
2074    spare flag to compactly indicate when there's no label change.
2075
2076  + The data style of each leg is now stored.
2077
2078  + The "processed at" time is stored as seconds since 1970 rather than a
2079    human-readable string.
2080
2081  + Since 3d v8 features significant changes to the format, the format
2082    documentation for v7 and earlier has been split off into 3dformat-old.htm.
2083
2084* img library:
2085
2086  + New station flags img_SFLAG_ANON and img_SFLAG_WALL.
2087
2088  + Handle .pos files containing unnamed stations - don't suck the next line in
2089    as the station name, and set img_SFLAG_ANON for them.
2090
2091  + Repurpose the long unused fBinary parameter to img_open_write() as a flags
2092    parameter, and add img_FFLAG_EXTENDED to specify that this is an extended
2093    elevation, in place of appending " (extended)" to the title.  Internally we
2094    still append this to the title (and remove it upon reading) when writing
2095    3d v7 or earlier, but for the new 3d v8 format, this flag is stored
2096    explicitly in the file.
2097
2098  + img.h: Add comments for the lists of "Leg flags" and "Station flags".
2099
2100* aven:
2101
2102  + We now require at least wxWidgets 2.8.0 - it was released over 6 years ago
2103    now, and the wx developers consider even 2.8 to be rather long in the
2104    tooth.  We stopped testing building with wxWidgets 2.6 some time ago, and
2105    formally dropping support for older versions allows a number of workarounds
2106    to be removed from the aven source code.  Also, features deprecated in
2107    wxWidgets 2.9 are no longer used in our code.
2108
2109  + Don't run incremental search on every key-press, as on a slow machine the
2110    short initial search(es) will take a while but not be useful.  Instead only
2111    actually run the search when we're told there are no more key-presses
2112    queued up.
2113
2114  + Implement support for including cross-section information in exported SVG
2115    and DXF files (ticket#4).  The DXF export is untested currently.
2116
2117  + Show splay legs faded by default, with menu options to hide them or show
2118    them like other legs.
2119
2120  + Speed up loading a .3d file with cross-sections by using a map to convert
2121    station names to positions.
2122
2123  + In the cavern log window, don't highlight a file:linenumber if there's no
2124    message after it, which avoids highlighting the "Included from" lines
2125    wrongly.
2126
2127  + Fix not to crash when trying to report an error while starting up.
2128
2129  + (MacOS X version): Change the menu shortcut for "Full Screen Mode" to be
2130    the OS X standard shortcut Shift-Command-F (previously we used F11, but
2131    that's used by the desktop).
2132
2133  + Add checks for errors when reading the font file.
2134
2135  + Remove useless extra quoting when invoking vim to show the location of an
2136    error from cavern.
2137
2138  + Include GL/gl.h before GL/glext.h (needed on Debian wheezy).
2139
2140  + Use wxValidator to simplify keeping svxPrintDlg member variables and fields
2141    in the dialog in sync.
2142
2143* cavern:
2144
2145  + Demote errors about invalid dates to warnings, since we've accepted *date
2146    for ages without any checks on the value, and so existing datasets
2147    probably contain invalid dates and dates in other formats.  (ticket#19)
2148
2149  + New *alias command allows '-' to be mapped to '..' for compatibility with
2150    pocket topo: *alias station - ..
2151
2152  + We want to warn if there's a clino reading which it would be impossible to
2153    have read from the instrument (e.g. on a -90 to 90 degree scale you can't
2154    read "93" (it's probably a typo e.g. for "39").  However, the gradient
2155    reading from a topofil is typically in the range 0 to 180, with 90 being
2156    horizontal.  Really we should allow the valid range to be explicitly
2157    specified, but for now we infer it from the zero error - if this is within
2158    45 degrees of 90 then we assume the instrument can read between 0 and 180
2159    degrees.
2160
2161  + If the survey isn't all connected, still run survey tree checks and report
2162    errors and/or warnings which might suggest typo locations.  Thanks to Kevin
2163    Dixon for the report which highlighted this issue.
2164
2165  + Report a warning if *begin SURVEY has a separator character in SURVEY.
2166
2167  + Report column numbers as well as line numbers for some cavern errors and
2168    warnings.
2169
2170  + Adjust width of node stats table to fit longest count when there are more
2171    than 9999 of a particular order of node.
2172
2173  + If the argument to *include has an opening double quote but the closing
2174    double quote is missing, then skip trying to open the file.
2175
2176  + Move "Station X referred to just once" warning after non-existent survey
2177    check - if both fire, the non-existent survey error is likely to be more
2178    relevant.
2179
2180  + We no longer follow an error for a bad reading in passage data with a bogus
2181    "End of line not blank" error, but instead check the remaining readings on
2182    the same line.
2183
2184  + We no longer follow an error about OMIT for a required reading with a bogus
2185    "End of line not blank" error.
2186
2187  + Report an error if the scale factor in *calibrate is zero - it doesn't make
2188    sense and probably means someone reversed the arguments to *calibrate.
2189
2190  + Report the parent include files starting from the outermost, as that's more
2191    logical when there are multiple levels involved.
2192
2193  + If we were expecting a numeric field and instead get something which starts
2194    with '+', '-', or '.' but which isn't a number, then fix the error to
2195    include that character in the token reported.
2196
2197  + Simplify handling of quantity lists to only recognise 'DEFAULT' as the
2198    first item.
2199
2200* cad3d: Check for errors from img_rewind() and report them.
2201
2202* dump3d:
2203
2204  + Build, install and package dump3d as standard - it's useful for grabbing
2205    info from 3d files in scripts.
2206
2207  + Add --show-dates option.
2208
2209  + Show only 2 decimal places on coordinates and passage dimensions.
2210
2211  + Report the data style of legs.
2212
2213  + Report if the file is an extended elevation.
2214
2215  + Report img_STOP as STOP rather than CODE_0xffffffff.
2216
2217* Test suite:
2218
2219  + cavern.tst: Fix equatenosuchstn testcase (added in 1.2.6) to normalise the
2220    expected output so it passes reliably.
2221
2222  + cavern.tst: Run diffpos <expected> <actual> so the reports of 'Added' and
2223    'Deleted' stations upon failure are the more natural way round.
2224
2225  + Add more testcases, expand some existing testcases, and add expected output
2226    for more.
2227
2228* (Microsoft Windows version): Use wx-config's --cc and --cxx flags to find the
2229  appropriate C and C++ compilers to use, and link mingw build statically to
2230  avoid needing the libgcc DLL (which newer GCC seems to have by default).
2231
2232* (Unix version): When determining the character set for command-line tools,
2233  check environmental variable LANG after LC_ALL and LC_CTYPE.
2234
2235* When determining the language, check environmental variable LC_ALL before
2236  LC_MESSAGES and LANG (but after SURVEXLANG).
2237
2238* If we don't find the message file, only give an error if it was specified
2239  with SURVEXLANG, since that is an explicit instruction to Survex, whereas
2240  LANG, LC_ALL and LC_MESSAGES are essentially system "preferred locale"
2241  settings.
2242
2243* There are a handful of hard-coded English message strings for reporting
2244  errors trying loading message files, etc.  These are all now ASCII, as if we
2245  fail trying to open a message file, it's more likely the encoding isn't
2246  set correctly.
2247
2248* Prune strings we are no longer using and are probably unlikely to use again
2249  into a new file po_codes_dead, so that translators don't get presented with
2250  them to translate.
2251
2252* Merge lots of translation updates.  Most translations are now complete or
2253  close to complete.
2254
2255* Add start of Indonesian translation from Arief Setiadi Wibowo.
2256
2257* Fix various compiler warnings when building from source.
2258
2259* Include scripts gdtconvert and gen_img2aven in the source distribution.
2260
2261Changes in 1.2.6 (2012-02-23):
2262
2263* (Mac OS X version): Fix so that cavern finds its messages when run by aven.
2264
2265* (Microsoft Windows version): Include JPEG images for aven in the installer
2266  package (ticket#35).
2267
2268* cavern: If we have a reference to a station in a non-existent survey, give a
2269  helpful error rather than saying the station hasn't been exported from the
2270  survey.  (Bug reported by Martin Green via email)
2271
2272* aven: Fix to build with a non-Unicode wxWidgets library.  Patch from Olaf
2273  Kahler.
2274
2275* findentrances: Add findentrances utility from Olaf Kahler which produces a
2276  .gpx file with waypoints for entrances.  This needs libproj so is disabled
2277  by default for this release - to enable it install the development stuff for
2278  libproj and build survex with:
2279
2280      make FINDENTRANCES=findentrances
2281      make install FINDENTRANCES=findentrances
2282
2283* dump3d: Add support for showing img_ERROR_INFO items.
2284
2285* doc/3dformat.htm: Merge in some improvements from Mike McCombe.
2286
2287* Incorporate a French translation from launchpad I'd previously copied the
2288  English version of by mistake.  Attempt to correct mistranslation of "survey
2289  file".
2290
2291Changes in 1.2.5 (2012-01-03):
2292
2293* aven:
2294
2295  + The survey tree in the left panel is now in sorted order once more.
2296
2297  + No longer fails with an assertion if used for a long time (we were leaking
2298    an OpenGL list each time one had to be regenerated).
2299
2300  + Now builds with newer FFmpeg library.
2301
2302  + Draw measuring line in front of the indicators rather than behind them.
2303
2304  + Loading a new file (or reloading the current one) no longer invalidates
2305    the OpenGL lists for the compass and clino, so will be a fraction faster.
2306
2307* Improve handling of attempts to look up translated messages before the
2308  message subsystem is fully initialised (which only happens if there's an
2309  error early on).
2310
2311* Improve the survex(7) man page text, and fix it to be marked as section 7 in
2312  the man page source as well as in the filename.
2313
2314Changes in 1.2.4 (2012-01-01):
2315
2316* aven:
2317
2318  + A change in 1.2.3 meant that aven tried to use OpenGL before it was
2319    initialised, which doesn't cause problems in some machines, but causes aven
2320    to abort on others.  This is now fixed, and there's a check in place to
2321    help avoid similar issues in future. (ticket#34)
2322
2323  + Always use metres or feet for the depth colour key, and chose a consistent
2324    precision by looking at the depth range. (ticket#30)
2325
2326  + Show the depth units below the colour bar rather than after every value.
2327
2328  + When zooming way in, stay in metres rather than switching to cm.
2329
2330  + On the scale bar, say “1 mile” rather than “1 miles”.
2331
2332* Translation updates for Catalan, French and Slovak.
2333
2334Changes in 1.2.3 (2011-12-31):
2335
2336* Fix to build with wxWidgets 2.9.2.
2337
2338* (Mac OS X version):
2339
2340  + Processing .svx files from aven now works.
2341
2342  + Remove spurious blank lines from the licence text in "Get Info".
2343
2344  + Don't create the help menu at all, as it is empty (because the "About"
2345    entry goes elsewhere) and sometimes seems to appear in the UI.
2346
2347  + INSTALL.OSX: Update to reflect current status.
2348
2349* aven:
2350
2351  + Fix Y coordinates of surface surveys on printouts.  (Closes #32)
2352
2353  + Improvements to text plotted on the survey pane:
2354
2355    - Support plotting Unicode character points > 256 by lazily loading the
2356      data for them from the font file and plotting them with a direct call to
2357      glBitmap(), which is slower but doesn't require a display list per
2358      character.
2359
2360    - Adjust the spacing from fixed width to putting a one pixel gap either
2361      side of each one character (so two between adjacent glyphs).  Mostly this
2362      reduces the horizontal width, but it adds a pixel for characters like "m"
2363      and two in a few cases.
2364
2365    - Fix .pixelfont file generation to correctly handle characters wider than
2366      8 pixels.
2367
2368  + Fix expected cross shape so don't always reject using texture mapping to
2369    draw crosses.
2370
2371  + As we read a survey file, eliminate tubes consisting of zero XSECTs as well
2372    as those consisting of just one.  Previously we would trip over the empty
2373    tube later.  Such tubes can for example be created by extend if a splay shot
2374    is the start or end of a tube.
2375
2376  + Make the green colour used for entrances in the survey tree the same
2377    (slightly darker than before) green used for the entrance blobs.
2378
2379  + Report the version of the library we're actually running with if built
2380    against wx >= 2.9.2.  Make it clear that the version reported is the
2381    version *built* with for wx < 2.9.2.
2382
2383* extend:
2384
2385  + Copy the end markers for passage tubes.
2386
2387  + Preserve left and right data for tubes (previously they were set to -1.0
2388    which means "no info").
2389
2390* img library: Fix incorrect comment in img.h which claimed that img_XFLAG_END
2391  was no longer used - it certainly is!
2392
2393* Use curly double quotes instead of "`" and "'" to quote filenames, etc in
2394  messages, and curly single right quote instead of straight ASCII apostrophe.
2395  Fall back to using straight ASCII versions if we can't represent them in the
2396  current character set.
2397
2398* Translation updates for Catalan, French, Slovak and Spanish.
2399
2400* Test suite:
2401
2402  + Add test coverage for interleaved diving data.
2403
2404  + Add testcase for diving data with topofil-style distance.
2405
2406Changes in 1.2.2 (2011-10-06):
2407
2408* aven:
2409
2410  + Replace the textured-mapped font drawing with an approach based on
2411    glBitmap.  This doesn't suffer from the character alignment issues which
2412    the textured-mapped fonts had, and is actually significantly faster on some
2413    machines.  The current font used is (mostly) fixed-width, but this isn't an
2414    inherent limitation - it was just the easiest font data to convert to a
2415    usable format.
2416
2417  + Fix assertion failure due to rounding differences on loading certain .3d
2418    files.  (ticket#26)
2419
2420  + Fix assertion failure when turning on 3D passages if they stick out higher
2421    or lower than any station.  (ticket#29)
2422
2423  + Fix grid not to disappear when blobs are turned on and blobs are drawn
2424    using lines.
2425
2426  + If a degree sign isn't available in the character set in use, transliterate
2427    it to 'dg' rather than skipping it.
2428
2429  + Fix message which should have been a degree sign but got lost in the format
2430    change for 1.2.0 and then got reassigned in 1.2.1.  Externally, this means
2431    that bearings in the status bar now have a degree sign after them if they
2432    are in degrees rather than nothing (1.2.0) or "&Hide Compass" (1.2.1).
2433
2434  + Fix print dialog to calculate the scale required for "One page" right
2435    before it calculates how many pages are required, so we don't end up
2436    something other than 1x1 being shown when the user changes settings.
2437
2438  + Update the calculations for picking a scale and for deciding how many
2439    pages are needed to take into account the change in info box height made
2440    in 1.2.1.
2441
2442Changes in 1.2.1 (2011-10-04):
2443
2444* Translation updates for US English.
2445
2446* aven:
2447
2448  + Rename the "depth bar" to "colour key" in documentation, menus, etc since
2449    it now shows colours for dates and errors as well as depths.
2450
2451  + In the colour key for "colour by date", change "No info" to "Undated".
2452
2453  + Remove the dark grey background from the colour key and just put a single
2454    pixel black border around the colours.  This is more in keeping with the
2455    other controls, and means the colours are now on a black background so more
2456    visually similar to the survey legs.
2457
2458  + Move the colour key's "Undated"/"Not in loop" entry down a little to
2459    improve the appearance.  Make each section a pixel taller.
2460
2461  + Allow "Colour by X" to be selected even if there's no data for X or only a
2462    single value of X used (the colour key is much smaller in these cases, and
2463    does still provide some useful information).
2464
2465  + Fix incorrect calculation of depth colouring for survey legs which straddle
2466    a depth band boundary.
2467
2468  + The scale bar, compass, clino, and colour key now all have right click
2469    menus which allow related actions to be performed (especially handy in
2470    full-screen mode).
2471
2472  + Improve the font used on the survey pane - it now contains the '-'
2473    character (so the clino now shows negative angles as negative, and dates
2474    in the colour key are now hyphenated).  Also the spacing and alignment
2475    are a little better, though still not perfect.
2476
2477  + PLT file export now handles spaces and control characters in station names
2478    by escaping them with '%' as in URLs.
2479
2480  + Pressing "Enter" on a station in the tree control now centres the view on
2481    that station.
2482
2483  + The scale bar is now cached in an OpenGL display list since it often gets
2484    redrawn exactly the same - for example, when rotating, panning, etc.
2485
2486  + Pressing "F5" forces all cached OpenGL drawing lists to be invalidated and
2487    then forces a refresh of the survey pane.  This is intended as a debugging
2488    aid - if pressing F5 changes the display at all then there's a missing case
2489    where a list should have been invalidated (please report if you find such
2490    a case as it is a bug).
2491
2492  + We now automatically track which OpenGL display lists need to be
2493    invalidated on window width or height changes.
2494
2495  + Increase scale bar maximum width from 65% of the window width to 75% as it
2496    was in 1.0.x (except that if that would overlap the clino we now reduce
2497    that proportion down until it reaches 50%).  Make the limit of zooming in
2498    the same as in 1.0.x.  (ticket#23)
2499
2500  + (Linux version): Previously wxGTK didn't really handle showing a dialog if
2501    the application was fullscreen (the dialog got opened under the main
2502    window!)  To work around this, aven would switch out of full screen mode
2503    temporarily while showing a dialog.  This case works properly with recent
2504    wxGTK, so disable our workaround with versions we know work.  Also, apply
2505    the workaround only for wxGTK, not everywhere except on Microsoft Windows
2506    as there's no reason to think we need it for other platforms.
2507
2508  + Grey out the "View North" action when we're already viewing North, and
2509    similarly for other compass points.
2510
2511  + (Mac OS X and Microsoft Windows versions): Fix missing newline to OpenGL
2512    info in the "About" dialog.
2513
2514  + Fix to set the correct filename on the root of the survey tree - previously
2515    the filename of the previous file loaded was used!
2516
2517  + The movie export code now works with newer versions of the FFmpeg libraries
2518    as well as still working with older versions.
2519
2520  + Fix mixed up messages - the print dialog now says "View" on the left
2521    subgroup of controls rather than some unrelated message.
2522
2523  + On printouts, combine the "Plan View"/"Elevation" info box field with the
2524    field which gives the bearing and reduce the height on the info box by the
2525    removed field, so it's now 3cm for plans and elevations, as for extended
2526    elevations.  Report the tilt angle for tilted elevations which it seems has
2527    been missing for ages (it's not in recent 1.0.x either).
2528
2529  + Tweak the exact positioning of informational text on printouts to look
2530    nicer and make better use of the available space.
2531
2532  + Add keyboard mnemonics to the "Plan" and "Elevation" buttons in the print
2533    dialog.
2534
2535  + Make the sign of the tilt angle for printouts consistent with the sign
2536    shown by the "clino" in the survey pane.
2537
2538  + In the "Print" dialog, when in plan view disable the "Plan view" button,
2539    and similarly for the "Elevation" button.
2540
2541  + (Microsoft Windows version): Sort out appearance of custom cursors.
2542
2543  + If a label isn't valid UTF-8 or CP1252, fall back to ISO8859-1.
2544
2545  + (Mac OS X version): F11 puts aven into full screen mode, but apparently
2546    you can't get out again easily, so add code to explicitly check for F11
2547    being pressed and toggle full screen.
2548
2549* (Linux version): Fix the RPM .spec file for where man pages now get installed
2550  and package aven.svg and the vim support files.  (Fixes from James Begley)
2551
2552* "make check" now performs several checks on the translation files.
2553
2554* More messages are now available to be translated.
2555
2556* cavern: Fix reporting of ranges of survey coordinates, which was broken by
2557  the message handling changes in 1.2.0.
2558
2559* Fix warning when compiling with GCC.
2560
2561* INSTALL: Mention building wxWidgets with --enable-unicode.  Mention using
2562  sudo for installing on Unix.
2563
2564* In the manual, replace the instructions for building from source with a
2565  pointer to the clearer instructions in INSTALL.
2566
2567* In the manual, make it clear that installing with administrator rights
2568  also applies to newer platforms than XP.
2569
2570* doc/TODO.htm: Update.
2571
2572Changes in 1.2.0 (2011-09-20):
2573
2574* Translation updates for Catalan, French, Romanian, Spanish, Slovak, and US
2575  English.
2576
2577* tests/smoke.tst: aven no longer requires an X display for --help or
2578  --version, so replace skip of this check with a check that this remains the
2579  case.
2580
2581* We now use the standard .po and .pot file formats for storing translations
2582  (rather than the Survex-specific messages.txt format), and then translate
2583  these into Survex's .msg format.
2584
2585* (Unix version): Move survex man page to section 7 (since it isn't documenting
2586  an actual command).
2587
2588* (Unix version): Write each generated man page to a temporary file, then
2589  atomically rename, to avoid leaving an empty or partial man page behind if
2590  docbook-to-man dies (1.1.16 had an empty cad3d.1, and we want to avoid a
2591  recurrence of that).
2592
2593* (Unix version): Default to installing docs into /usr/share/doc/survex rather
2594  than /usr/doc/survex.
2595
2596* aven:
2597
2598  + Fix handling of accented characters in the survey pane.
2599
2600  + Aven icon redrawn in SVG format - it's now a vector image which looks
2601    nicer at larger sizes.
2602
2603  + Explicitly request double-buffering, which seems to be needed for systems
2604    with GLX >= 1.3.
2605
2606  + Fix crash while trying to load certain .3d files.
2607
2608  + Movie export code updated to work with more recent versions of FFmpeg.
2609    Currently this is disabled in Microsoft Windows builds, pending getting the
2610    required libraries set up for building releases.
2611
2612  + Reporting of errors during movie export improved.
2613
2614  + Force playback speed to "x1" during movie export.
2615
2616  + Use stock IDs for buttons where appropriate - such buttons may now be
2617    rendered with icons on some platforms.
2618
2619  + If a label isn't valid UTF-8, treat it as CP1252 (the Microsoft superset of
2620    ISO8859-1).
2621
2622  + (Unix version): Remove special handling for toggling "full screen" on wxGTK
2623    as it's no longer required with modern versions.
2624
2625  + Don't redraw the survey on every mouse movement in the survey pane unless
2626    the measuring line is (or just was) active.  (ticket #17)
2627
2628* cavern:
2629
2630  + Drop "non-fatal" from the report of how many errors there were at the end
2631    of the run - it just confuses users - we won't even get here if there's a
2632    fatal error!
2633
2634  + Add --3d-version option to allow the user to specify the version of the 3d
2635    format to output.  (ticket#21)
2636
2637* img library:
2638
2639  + Make the highest and lowest valid values for img_output_version available
2640    in img.h as IMG_VERSION_MIN and IMG_VERSION_MAX.
2641
2642* (Mac OS X version): Fix buildmacosx.sh script to check where the temporary
2643  volume actually gets mounted.  Fix URL for downloading wxWidgets.
2644
2645Changes in 1.1.16 (2011-05-16):
2646
2647* Translation updates for German, Spanish, Italian, Portuguese, Brazilian
2648  Portuguese, and US English.
2649
2650* Use horizontal ellipses character rather than '...' and right arrow character
2651  rather than '->' where these characters are available.
2652
2653* (Unix version): Link with -lGL, if it exists, to support linking with gold or
2654  GNU ld --as-needed (Debian bug #615781).
2655
2656* img.c:
2657
2658  + Fix code typo for IMG_API_VERSION == 0 case.
2659
2660  + Fix code typo in code used when IMG_HOSTED isn't defined.
2661
2662* doc/TODO.htm: Remove entries which have now been done.
2663
2664* (Microsoft Windows version): aven: We now include all the available
2665  translations for messages from wxWidgets, which means that standard widgets
2666  will appear translated where available even if Survex messages aren't
2667  translated.
2668
2669Changes in 1.1.15 (2010-10-15):
2670
2671* aven:
2672
2673  + In the cavern log window, change the "Rerun" button to "Reprocess" to
2674    follow terminology in manual and elsewhere.  Fixes ticket#15.
2675
2676  + When displaying output from cavern, don't update the window after every
2677    line, but only when we don't have data from cavern pending.  Hopefully
2678    addresses ticket#12.
2679
2680  + If we aren't using GL_POINTS for blobs, draw them using a series of
2681    abutting lines rather than with gluDisk which is faster and gives a
2682    consistent shape.
2683
2684  + Check whether blobs and crosses actually render correctly as points/point
2685    sprites, and if they don't, fall back to drawing them with lines.  The
2686    best method is cached on disk, and rechecked automatically if the graphics
2687    hardware is changed or the drivers upgraded.
2688
2689  + Fix non-USE_FNT case to work again (it's limited to ISO-8859-1 characters
2690    though, so we still enable USE_FNT by default).
2691
2692  + Don't offer "All files" wildcard in presentation save dialog.
2693
2694  + (Microsoft Windows): Handle filenames with non-Latin1 characters in in
2695    more places.
2696
2697  + (Microsoft Windows): Quote filenames with spaces and metacharacters in
2698    when running cavern from aven.  Fixes ticket#11.
2699
2700* editwrap: (Microsoft Windows): Handle filenames with non-Latin1 characters.
2701
2702* diffpos: Handle files with duplicate labels in better - extend generates
2703  duplicate labels when it breaks a loop.
2704
2705* Enable eswap-break testcase now that diffpos handles duplicate station names.
2706
2707* New v7 of .3d format which stores survey dates as number of days since
2708  January 1st 1900, so we now support dates from 1900-2078 (rather than
2709  1970-2037) with a smaller file size.  The img API is now versioned - you
2710  can select the new "version 1" by compiling with -DIMG_API_VERSION=1, which
2711  gives the survey dates in days in days1 and days2 instead of as time_t
2712  values in date1 and date2.  Fixes ticket#14.
2713
2714* Consistently use http://survex.com/ rather than http://www.survex.com/ - the
2715  former has been the canonical name for some time, with www.survex.com just
2716  redirecting to it.
2717
2718* (Unix version): Use unlocked file I/O if available, which can be much faster
2719  in some cases (we don't need the locking as we don't do multithreaded file
2720  I/O).
2721
2722* (Mac version): Fix compilation failure due to clash with Point in Mac OS X
2723  headers.
2724
2725* (Mac version): buildmacosx.sh now works again.
2726
2727* Most tests weren't actually running any testcases (looks like a sh
2728  portability issue).  This is now fixed, and fortunately all tests still pass.
2729
2730* Include the extra .isl translation files for Innosetup in the source archive.
2731
2732Changes in 1.1.14 (2010-07-26):
2733
2734* Restore compatibility with wxWidgets 2.6 (1.1.13 required wxWidgets 2.8).
2735
2736* aven:
2737
2738  + After processing survey data, if there were warnings or errors, add a
2739    "Rerun" button to allow easy reprocessing after fixing problems.  If there
2740    were only warnings, also add an "OK" button to allow moving on to viewing
2741    the processed survey data (fixes ticket#13).
2742
2743  + Optimise updating of the cavern log window (hopefully fixes ticket#12).
2744
2745  + Fix links in cavern log window to link from exactly '<file>:<line>' (and
2746    not the ': ' after), and to make the title for the terminal the
2747    warning/error message.  Avoid false positives by checking that '<line>' is
2748    a number.
2749
2750  + Don't double escape the contents of href and target in links in the cavern
2751    log window.
2752
2753  + Improve handling of the splitter window, fixing behavioural glitches in
2754    various cases.
2755
2756  + Highlight stations matching any current search when a file is loaded.
2757    (ticket#9)
2758
2759  + (Mac version): Fix build issue due to Mac OS X polluting the global
2760    namespace with its own "Point" class.
2761
2762  + (Unix version): The Gnome print dialog has its own preview window so
2763    suppress ours if using the Gnome one.
2764
2765  + (Unix version): Link aven with -lGLU which SuSE Linux needs.
2766
2767  + (Microsoft Windows version): Fix handling of a double-click on the survey
2768    tree when built with wxWidgets >= 2.8.11.
2769
2770* cavern: Report relevant file and line number for three warnings which didn't
2771  give them before.
2772
2773* (Unix and Mac versions): configure: Update the wx-config probing code -
2774  wxmac-config etc aren't present with newer wxWidgets versions so there's no
2775  point looking for them now.
2776
2777* (Mac version): buildmacosx.sh: This script builds a diskimage with Survex in
2778  for easy installation.  Update it to work with the latest Survex versions
2779  (use WX_CONFIG not WXCONFIG; use a Unicode build of wxWidgets; if building a
2780  private wxWidgets, use 2.8.11 not 2.7.0-1).
2781
2782* manual:
2783
2784  + Correctly capitalise "GTK".
2785
2786  + Note that on Linux we only regularly test builds with the GTK+ version
2787    (change taken from 1.0).
2788
2789* Fixed the cad3d man page, which was an empty file in 1.1.13.
2790
2791Changes in 1.1.13 (2010-06-16):
2792
2793* Say "wxWidgets" instead of "wxWindows" consistently.
2794
2795* img.c: Fix small memory leak (filename_opened member).
2796
2797* cad3d, aven: Fix export to SVG when a label contains a '%' character.
2798
2799* aven:
2800
2801  + wxWidgets 2.6.0 or newer is now required.
2802
2803  + A "Unicode" build of wxWidgets is now supported.  An "ANSI" build may still
2804    work but hasn't been tested recently (all packaged versions of wxWidgets
2805    seem to be Unicode now).
2806
2807  + Fix potential uses of uninitialised variables which may have been causing
2808    occasional glitches when loading a file on start-up.
2809
2810  + Improvements to the handling of the font used for plotting labels and other
2811    text on the survey pane:
2812
2813    - Loading the font file is more efficient.
2814
2815    - Character spacing is improved.
2816
2817    - Default font is now anti-aliased.
2818
2819  + "About" dialog:
2820
2821    - Add "Copy" button to copy the system info to the clipboard for easier
2822      bug reporting.
2823
2824    - List OpenGL extensions last, since there are usually lots of them with a
2825      modern gfx card.
2826
2827    - Fix 100% CPU usage while the "About" dialog is open.
2828
2829  + Processing .svx files:
2830
2831    - Passing a .svx file on the command line now works better.
2832
2833    - Put the survey data log window in a splitter in the usual frame rather
2834      than opening a separate frame for it.
2835
2836    - Auto-scroll the log window until we've reported a warning or error.
2837
2838    - Fix small memory leak.
2839
2840  + The presentation filename now defaults to using the basename of the
2841    currently loaded dataset, but we always prompt before we first save with
2842    such a name.
2843
2844  + Reduce memory usage when saving a screenshot.
2845
2846  + Allow "Toggle Fullscreen" to work even if no survey is loaded now that we
2847    persist the window size (and maximised or fullscreen state) between
2848    invocations.
2849
2850  + Fix reporting of OpenGL errors.
2851
2852  + Fix glitches when tilting while looking East.
2853
2854  + Added Portuguese and Slovak translations of wxWidgets messages.
2855
2856* Documentation:
2857
2858  + Rationalise manual formats - replace PostScript with PDF and drop RTF.
2859
2860  + Drop the "alternative manual formats" self-extracting zip file - people
2861    will generally just want one of the formats, so downloading several
2862    together isn't very useful.
2863
2864  + 3dformat.htm: Update for v6 format (thanks to Mike McCombe).
2865
2866  + GPL.htm: Replace HTML version of licence with a link to the version on
2867    the FSF website.
2868
2869  + ChngeLog.htm: Stop generating an HTML version of the ChangeLog - it's too
2870    low level to be of interest to non-developers, and developers can look at
2871    the source code.
2872
2873* (Unix version): configure: New preferred name for specifying wx-config script
2874  is WX_CONFIG.  WXCONFIG still supported for compatibility.
2875
2876* (Linux version): Source RPM package dropped as you can just build an RPM
2877  package from the source tarball.
2878
2879* (Microsoft Windows version): The installer is now created with a newer
2880  version of InnoSetup, which gives a 10% smaller download.
2881
2882Changes in 1.1.12 (2007-02-07):
2883
2884* aven:
2885
2886  + Remember the window size or maximised/fullscreen state between invocations.
2887
2888  + Add options dialog to "Export" similar to the one for "Print".
2889
2890  + The "number of pages required" in the print dialog now updates when you
2891    change what is to be shown (underground legs/surface legs/station
2892    names/crosses).
2893
2894Changes in 1.1.11 (2006-11-25):
2895
2896* Updated Czech, Spanish, and Slovak translations.
2897
2898* (MacOS X version): Assorted OS X specific tweaks and fixes.
2899
2900* aven:
2901
2902  + Pick a smaller and clearer font for labels.
2903
2904  + Fix character spacing.
2905
2906  + Tweak display of bearing and elevation angles to look nicer with
2907    proportional fonts.
2908
2909  + Use the title from the 3d (or plt, etc) file for the window title
2910    rather than the filename.
2911
2912  + Show distances to 2 decimal places rather than the nearest integer.
2913
2914  + Only consider underground legs when calculating the depth bands and
2915    depth colouring.
2916
2917  + Add "Colour by Error".
2918
2919  + Add entry for "white" in date and error keys.
2920
2921  + When setting the view to a single point, don't change the scale.
2922
2923  + If reloading the same file, don't change the view
2924
2925  + Fix filetypes selector in open dialog.
2926
2927  + Fix the charset we use for aven in certain cases.
2928
2929  + Call msg_init before using msg_lang or it won't ever be set!
2930
2931  + Pass wx the full language code to initialise the C library locale.
2932
2933  + Fix bug in generating prefix tree view which could lead to a bogus
2934    leading dot on some survey names (bug probably introduced in 1.1.10).
2935
2936  + "New Presentation" now ensures that the side panel is open
2937
2938  + Fix updating of cached opengl lists when the view is reset to the
2939    default.
2940
2941* Ignore LANG if it starts with a digit to avoid problems with bogus value for
2942  LANG which AutoCAD installation seems to set on MS Windows.
2943
2944* (Unix version): configure: Allow SGMLTOOLS and DOCBOOK_TO_MAN to be
2945  specified.  Either/both can be set to ":".
2946
2947* dump3d: Report unknown (to dump3d) codes returned by img.
2948
2949* img library: Flag all stations as underground in the old "ASCII" .3d format.
2950
2951Changes in 1.1.10 (2006-07-14):
2952
2953* aven: Clicking on a survey name in the survey tree now highlights it in
2954  the map view.  Double-clicking zooms the view to show the clicked survey
2955  highlighted.  Clicking the root clears the highlighting and double-clicking
2956  the root restores the default view.  To expand/collapse a branch, click
2957  on the "[+]" or "[-]" icon to the left of the survey name.
2958
2959* aven: The measuring line can now measure to anywhere in plan or elevation
2960  view (not just to a station!)  In plan view the horizontal distance and
2961  bearing are shown, while in elevation view the vertical distance is shown.
2962
2963* aven: Moving the mouse over a station in the survey view now highlights
2964  that station in the survey tree (though it may not be visible if the
2965  survey(s) it is in aren't expanded).
2966
2967* aven: Clicking on a station to centre the view now moves the mouse pointer
2968  to the new location of the station (except on Mac OS X where this isn't
2969  allowed).
2970
2971* aven: Fix which presentation toolbar buttons are shown as depressed.
2972
2973* Fix infinite loop reading 3d files with LRUD data (bug introduced in 1.1.9).
2974
2975* vim files are now installed with the correct paths (bug introduced in 1.1.9).
2976
2977Changes in 1.1.9 (2006-07-04):
2978
2979* (Unix version): Install desktop files for aven and svxedit contributed to the
2980  Ubuntu package by Phil Bull, and corresponding pixmaps.
2981
2982* Fix img to filter out cross-sections which don't match the subsurvey (if
2983  specified).  The API now returns img_XSECT_END to mark the end of a
2984  passage rather than setting a flag on the last img_XSECT of the passage.
2985
2986* Enhance integration with the vim editor - this can now colour .err files, run
2987  cavern from vim and parse error output, and run aven from vim.  Tweak the
2988  existing vim mode for .svx files to fix a few minor bugs and add support for
2989  the new "*data passage" style.
2990
2991* aven: fix drawing of the "blob" end of the measuring line on graphics cards
2992  which can't draw large enough blobs for us.
2993
2994* aven: sort out confusion about what encoding everything is in which means
2995  that the distance measured by the measuring line actually gets displayed
2996  and also fixes problems with empty menu items in non-English locales in
2997  some cases.
2998
2999* aven: redraw grey background after a menu is closed over the aven window
3000  with no survey loaded.
3001
3002* aven: fix bug which caused printing to crash (introduced in 1.1.8).
3003
3004* aven: avoid crash on some machines when opening "About" dialog before having
3005  loaded a survey.
3006
3007* aven: Translate "Plan" and "Elevation" buttons in print view dialog.
3008
3009* (Unix version): aven: Fix character set handling of cavern output.
3010
3011* cavern: Report an error if a cross-section is specified for a station which
3012  doesn't exist.
3013
3014* Updated French and Italian translations.
3015
3016* (Unix version): aven: Fix "Can't open message file `en_US' using path
3017  `${prefix}/share/survex'" error.
3018
3019* Fix bug in 3d file reading on 64 bit platforms when used in STANDALONE mode
3020  (doesn't affect Survex itself, but other applications which use img.c should
3021  update their copy).
3022
3023* (Unix version): Add checks that wxWidgets is a non-unicode version (wx 2.6
3024  and later are caught by configure, whereas older wx versions are caught when
3025  trying to compile).
3026
3027Changes in 1.1.8 (2006.06.30):
3028
3029* Drop support for building with wxWidgets versions prior to 2.4.0
3030  (which was released on 2003-01-07).
3031
3032* aven: Printing through aven now uses settings from the "[aven]" section
3033  of print.ini, and support for hierarchical sections (using "like=")
3034  has been disabled.
3035
3036* aven: Change mouse actions to be compatible with those in Survex 1.0.
3037  The mousewheel now zooms in/out (it doesn't do anything in 1.0) and
3038  left drag is now smart about not rotating and zooming at the same
3039  time.
3040
3041* aven: Highlighting stations now happens as you type, and pressing
3042  "Enter" or clicking the "Find" button now pans and zooms to show the
3043  highlighted stations.
3044
3045* aven: Left-clicking away from a station now cancels measuring line.
3046
3047* aven: Setting view to North, South, East, or West is now animated like
3048  the tilt from plan to elevation.
3049
3050* aven: Fix presentation saving to also write "." for decimal points and
3051  presentation loading to accept either "." or ",".
3052
3053* (Unix version): aven: Add text for all toolbar items so that aven
3054  will work with the Gnome desktop preference for displaying toolbars as
3055  icons with text or just text (wxWidgets needs fixing first though).
3056
3057* (Unix version): aven: Remove the ability to detach the menu bar (yell
3058  if you actually used it and I'll restore it!)
3059
3060* aven: Add "all survey files" option to the "open file" dialog.
3061
3062* (MS Windows version): aven: Fix cursor keys to pan survey.
3063
3064* (MS Windows version): Built with wxWidgets 2.6.3 instead of 2.6.2.
3065
3066* (MS Windows version): Fix installer to work on Windows 2000 or XP if
3067  run by an unprivileged user.
3068
3069* (MS Windows version): Upgrade to the latest version of InnoSetup (the
3070  installer builder we use) and include new installer translations for
3071  UK English, Spanish, Brazilian Portuguese, Italian, Romanian, and Slovak.
3072
3073* (MS Windows version): aven: Include Catalan and Brazilian Portuguese
3074  translations of messages for wxWidgets (the GUI library we use).
3075
3076* aven: Disable "Highlight exported points" if there aren't any.
3077
3078* Updates to French translation from Michel Bovey.  Also updates to German,
3079  Italian, Catalan, Spanish, and Romanian translations.
3080
3081* (Unix version): test suite: fix smoke test to pass even without X running
3082  (it was meant to but the code had a bug).
3083
3084* aven: Check if OpenGL is available and exit cleanly with a helpful error
3085  if it isn't.
3086
3087* (Unix version): aven: Fix --help and --version to work without a working
3088  X display (provided it's built with wxWidgets 2.5.1 or newer).
3089
3090* aven: Automatically select the presentation tab of the notebook when the user
3091  selects "New Presentation" or "Open Presentation".
3092
3093* aven: Fix "Delete" in the presentation list to not get passed on (and so not
3094  reset to default view as well).
3095
3096* aven: Fix Ctrl+Insert in the presentation list not to segfault if the list is
3097  empty.
3098
3099* aven: Fix Cursor Up and Down in the presentation list to move the highlight
3100  up and down instead of being passed on and moving the survey.
3101
3102* aven: Improve SVG output compatibility.  Tested with Mozilla Firefox 1.5,
3103  Adobe's SVG browser plugin, Gimp 2.2.8, Gqview 2.0.0, Opera 8.5,
3104  Safari 2.0.3, and InkScape 0.42.
3105
3106* aven: Put a 5mm border around exported SVG files to allow for station markers
3107  and non-zero width lines.
3108
3109* aven: Fix crash when exporting as SVG or Sketch if labels or surface data
3110  was turned on.
3111
3112* aven: Actually close the file we're exporting which fixes problems with it
3113  not always being fully written.
3114
3115Changes in 1.1.7 (2005.10.18):
3116
3117* cavern: Add validity checking for dates in *date commands (with feature
3118  test in testsuite).  A date entered as just "year" or "year.month" now
3119  becomes a date range for the relevant period (previously it became a single
3120  date near the middle of that period).
3121
3122* extend: Fixed 2 uninitialised flags (should fix erratic behaviour on
3123  with MS Windows).
3124
3125* extend: Default output name for a file called input.3d is now input_extend.3d
3126  rather than just extend.3d (which was annoying if you wanted to extend
3127  several surveys in the same directory).
3128
3129* aven: OpenGL 2.0 always includes support for point sprites so rework
3130  our check for them to include that knowledge.
3131
3132* aven: Regenerate depth bar if user switches to/from metric units.
3133
3134* aven: Don't clear the "there" mark just because the mouse pointer has
3135  moved off a station.
3136
3137* aven: When processing a .svx file, put the resultant .3d file in the
3138  same directory (since that's where we then try to load it from).
3139
3140* aven: Fix labelling of date colouring on 32 bit platforms.
3141
3142* aven: If "colour by date" is on and we load a survey with no date info
3143  (or all surveyed on the same date) then set "colour by none".
3144
3145* aven: Make the error dialog modal and remove a signal handler once it
3146  has fired to prevent endless (or seemingly endless) cascades of error
3147  dialogs.
3148
3149* aven: Enforce a minimum object volume diameter of 1m to avoid problems
3150  if a survey file with only one station in is loaded.
3151
3152* aven: Fix problems with indicators disappearing when we're drawing
3153  blobs and/or crosses the slow (but always supported) way.  (Problem
3154  introduced in 1.1.6).
3155
3156* (Unix version): aven: Really stop setting extra toolbar margin when using
3157  GTK2.0.  The attempt to fix this in 1.1.3 failed because __WXGTK12__ is
3158  set for GTK+ 1.2 or *any later release* so is true for GTK+ 2.0 too!
3159
3160* (Unix version): aven: Add details of which of wxGTK, wxMotif, and wxX11
3161  we've been compiled with, and which GTK+/Motif version where appropriate.
3162
3163* (Unix version): Fixed build on Fedora Core 3.
3164
3165* documentation: Updates to 3d file format specification from Mike McCombe.
3166
3167Changes in 1.1.6 (2005.10.10):
3168
3169* (MS Windows version): Distribution is about a third smaller than 1.1.5
3170  (mostly because mingwm10.dll is no longer required).
3171
3172* aven: If aven is asked to load a .svx, .dat, or .mak file, run cavern on
3173  it, showing cavern's output in a window (with errors and warnings clickable
3174  to load the offending file into an editor), and then loading the resulting
3175  3d file.
3176
3177* aven: Added "Colour by Date" option.
3178
3179* aven: Disable "Colour by Depth" option if there's no elevation variation.
3180
3181* aven: Don't crash if trying to load a survey with no elevation variation.
3182  Instead turn off depth colouring.
3183
3184* aven: Export as HPGL added.
3185
3186* aven: Improved update of mouse coordinates and measuring line (thanks to
3187  Martin Green).
3188
3189* aven: Show the coordinates of either the mouse pointer or the nearest
3190  survey station to it (if there is one near enough).  Showing both was
3191  confusing and meant the status bar overflowed on smaller displays.
3192
3193* aven: When printing an extended elevation, don't show bearing and elevation.
3194
3195* aven: Don't lock "flat" surveys which aren't extended elevations - a
3196  flat survey with LRUD data isn't flat any more!
3197
3198* aven: When we have to draw blobs and crosses the slow way (because the
3199  graphics hardware doesn't support the fast way), draw them so that they
3200  should appear at the correct depth into the 3D scene instead of on top
3201  of everything else.
3202
3203* aven: Make "play presentation backwards" icon green to match the other
3204  presentation icons.
3205
3206* (MS Windows version): aven: Mouse clicks on the survey view now set the
3207  keyboard focus there.
3208
3209* (MS Windows version): aven: Fix first redraw of a newly loaded survey.
3210
3211* (MS Windows version): aven: Fix redrawing of measuring line.
3212
3213* cavern: Store dates for img_XSECT.
3214
3215* cavern: Fixed small one-off memory leak if you specify -o more than once.
3216
3217* (Unix version): Check environmental variable LC_MESSAGES when deciding what
3218  language to use for messages.
3219
3220* (MS Windows version): "Print" on a 3d file now prints through aven rather
3221  than the separate printer driver (Unix has done this for some time).
3222
3223* Removed old printer drivers.
3224
3225* img library: When creating a 3d file, ignore img_XSECT if we've been asked
3226  to write a file format version which doesn't support it.
3227
3228Changes in 1.1.5 (2005.09.20):
3229
3230* (MS Windows version): aven: Fixed crash on start-up (introduced in 1.1.4).
3231
3232* aven: Make blobs round like they are in Survex 1.0.
3233
3234* aven: If the graphics drivers don't support drawing blobs using OpenGL
3235  point markers, fall back to drawing filled circles.
3236
3237* aven: If the graphics drivers support it, draw crosses as texture mapped
3238  OpenGL point markers which is much faster.
3239
3240* aven: Cross size increased to match Survex 1.0.
3241
3242* aven: We must update which blobs are displayed if display of surface or
3243  underground legs is toggled.
3244
3245* cavern: Fix handling of a *solve followed by survey data, none of which is
3246  attached to the previous data.
3247
3248* cavern: Fixed "No survey data" error when a *solve is followed by another
3249  *solve (or the implicit solve at the end of processing) with no data between
3250  them.
3251
3252Changes in 1.1.4 (2005.09.19):
3253
3254* aven: Added Aven's icon to the "About" dialog.
3255
3256* aven: Use localised character for the decimal point (e.g. "," in most
3257  continental European countries).
3258
3259* aven: Previously the survey tree would get focus and then take keypresses
3260  (e.g. "P", "L", "Delete").  Now we pass most keypresses across so they
3261  operate on the cave, and transfer the input focus across when we do.
3262
3263* aven: Make pressing "Return" in the tree control expand/collapse a subtree.
3264
3265* aven: Speed up intialisation by delaying creation of OpenGL lists until
3266  they're needed.
3267
3268* aven: Added Mark Shinwell's bounding box with shadow of the survey.
3269
3270* aven: Disable the "Tubes" button/menu item when there's no LRUD data.
3271
3272* aven: Reworded "Restore Default Settings" as "Restore Default View".
3273
3274* (Unix version): aven: Set sensible default margins for printing and preserve
3275  any margin values the user specifies between runs (previously margins
3276  defaulted to 0 each time aven was run).
3277
3278* Documentation: Document *DATA PASSAGE in the manual.
3279
3280Changes in 1.1.3 (2005.09.07):
3281
3282* (Microsoft Windows version): Fixed build problems.
3283
3284* cavern: Allow OMIT character (-) for left/right/up/down.
3285
3286* aven: Remove an unnecessary menu separator.
3287
3288* aven: Fix "Find" and "Hide" toolbar buttons to work with GTK2.0.
3289
3290* aven: Make the tooltip for "Hide" show the number of found stations.
3291
3292* aven: If * or ? is used in a glob-style pattern, force a non-substring match.
3293
3294* aven: Enable "New Presentation" when there's a 3d file loaded, rather than
3295  when there's a presentation loaded.
3296
3297* aven: Make entrances green in side panel tree list to match green blobs used
3298  in cave view.
3299
3300* aven: Don't show surface labels if we're not showing surface data, etc.
3301
3302* aven: Merge "Start Rotation" and "Stop Rotation" into "Toggle Rotation" and
3303  make "Space" the key for this.  Keep Return working "Stop Rotation" so
3304  existing users are happy, but don't advertise it.
3305
3306* aven: Normalise filename by adding any extension used, and use the normalised
3307  filename for file history and window title.
3308
3309* (Unix version): aven: Stop setting extra toolbar margin when using GTK2.0
3310  as the toolbar buttons already have a sensible margin - the extra margin is
3311  only needed with GTK1.2.
3312
3313* aven: Fix handling of plumb legs in tube model.
3314
3315* aven: Fixed swapped L and R in tube model.
3316
3317* extend: Preserve UD cross-section information in extended elevation.
3318
3319* extend: Add new messages for John Pybus' enhancements.
3320
3321Changes in 1.1.2 (never formally released):
3322
3323* Added support for LRUD data in .svx files, in .3d files, and aven can
3324  now load and display it on screen and on printouts.  The ability to "fake"
3325  LRUD data in aven is gone for now but will reappear in some form later.
3326
3327* cavern: Removed support for writing Chasm's 3dx format.  We're going to
3328  fold any desirable missing chasm functionality into aven.
3329
3330* aven: Rearranged mouse actions as discussed on the mailing list.  Added
3331  cursors for each different mouse action to help the user learn what each
3332  does.  Also added cursors for the "compass" and "clino" as well as the
3333  scalebar to suggest to the user that they can be dragged to change the view.
3334
3335* (Unix version): aven: Don't segfault if LANG isn't a known language.
3336
3337* tests/smoketest.tst: If X windows is running, check that we can run aven
3338  with --help and --version.
3339
3340* tests/cavern.tst: Fixed cavern.tst to warn if it is skipping a test because
3341  no results are listed for it.  This revealed that there was a "newline" test
3342  which should have been called "badnewline", and was a broken testcase too!
3343  Fixed all these problems.
3344
3345* cavern: Applied Simeon Warner's patch for handling backcompass, backclino,
3346  and omitted forward compass/clino readings in Compass DAT files.  Added
3347  a feature test for this to the testsuite.
3348
3349* It no longer makes sense to have an option not to build aven or to build aven
3350  without OpenGL so remove old machinery for this from configure and the
3351  sources.
3352
3353* (Unix version): configure: Check if "-lXxf86vm" is needed.
3354
3355* configure: Better output for strcasecmp test.
3356
3357* aven: Fix crosses to work much better.  Not a total fix - their position
3358  in the Z buffer isn't correct and they're rather slow to plot.
3359
3360* aven: Don't regenerate the hittest grid every time the mouse moves while
3361  animating, which solves the mysterious pausing effect (thanks go to Martin
3362  Green for spotting this!)  Also clear all the status bar coordinates when
3363  animating.
3364
3365* aven: Sort out clashing menu shortcuts in some languages.
3366
3367* aven: Fixed compilation problem on x86_64
3368
3369* SPUD: Pruned out stuff which has been done or which is not actually relevant
3370  to this branch.
3371
3372* Merge various changes from 1.0 branch:
3373
3374  + aven: Port over "printing from aven" functionality.
3375
3376  + aven: Port over "export as" functionality,
3377
3378  + Add David Loeffler's vim mode for .svx files.
3379
3380* aven: Fix check for whether a label is behind us in perspective view.
3381
3382* aven: Don't use an opengl list for drawing the indicators - we typically make
3383  a new list each time we plot them anyway.
3384
3385* Remove lingering traces of support for RISC OS and pre-386 MSDOS
3386
3387* aven: Set icon on non-Windows platforms too.  This means that with
3388  WindowMaker on Unix you get an icon on the AppIcon by default.
3389
3390* configure: Update wxWindows checks to handle newer wx versions.
3391
3392* Make all maintainer perl scripts "use bytes;" to avoid utf-8 double encoding
3393  problems.  They also all require Perl 5.8 now (hopefully this isn't an issue
3394  for anyone building from CVS).
3395
3396* acinclude.m4: Quote macro name for fix autotools warning.
3397
3398* Documentation: "tilt up" is "'" not ",".
3399
3400* aven: Add support for mousewheels (to tilt the cave).
3401
3402* aven: Fixed twisted transitions to and from pitches in certain cases.
3403
3404* aven: Pick a sensible initial window size when the user's desktop is spread
3405  over more than one monitor (works best with wx2.5 or newer, but try to do
3406  better with wx2.4 or earlier as well).
3407
3408* aven: Initialise GfxCore slightly later to avoid visual glitch from notebook
3409  contents being visible before any survey is loaded.
3410
3411* aven: Allow a coloured texture to be used
3412
3413* aven: Don't initialise until we have data (to the user, this means the window
3414  is default colour (grey for most systems) not black until a survey is
3415  loaded).
3416
3417* aven: Fixed weird "shadowed" icons.
3418
3419Changes in 1.1.1 (2004-10-06):
3420
3421* (Microsoft Windows version): aven: Hopefully fix loading a survey file at
3422  startup.
3423
3424* aven: Delay loading the bitmap for the "About" dialog until it is first
3425  needed.  We want start up to be as quick as possible.
3426
3427Changes between 1.0.32 and 1.1.0 (never formally released):
3428
3429* NOTE: Survex 1.1.X releases are development snapshots made available for
3430  the purposes of allowing wider testing and getting more user feedback.  Once
3431  the code has stabilised the version number will be raised to 1.2.0.
3432
3433* aven: Now uses OpenGL for 3d rendering - you may need to install drivers if
3434  you're using Windows 95 - these can be obtained from:
3435  http://download.microsoft.com/download/win95upg/info/1/W95/EN-US/Opengl95.exe
3436
3437* aven: Solid passages - passage dimensions are currently inferred from
3438  the leg length (pretty effective as you can measure longer legs in
3439  larger passages).  Use of real LRUD data coming soon...
3440
3441* aven: Depth colouring is now continuously varying.
3442
3443* aven: Colour by depth can now be turned off (and there's the start of a
3444  framework for properly implementing colour by date, error, etc).
3445
3446* aven: Find stations moved onto the toolbar and now uses a simple wildcarded
3447  match (? matches any character, * matches any number of characters).
3448
3449* aven: We now use the status bar for coordinates, distances, etc to make
3450  better use of screen space.
3451
3452* aven: Full screen mode (F11).
3453
3454* aven: Perspective view.
3455
3456* aven: Context sensitive cursor shape - needs more work.
3457
3458* aven: Mouse actions changed (hopefully they're now more natural, but
3459  you may find the change disorientating - feedback wanted on this).
3460
3461* aven: Added "presentations" which allow you to set up fly-through paths
3462  and load/save/run them.
3463
3464* aven: A presentation can be exported as a movie file.
3465
3466* aven: Added Save screenshot facility.
3467
3468* aven: Depth fogging option.
3469
3470* aven: Added Smooth Lines option.
3471
3472* aven: Added Textured Walls option.
3473
3474* aven: If a survey has surface legs but no underground legs, default to
3475  showing the surface legs.
3476
3477* cavern: Dates given to *date are now stored in the 3d file.
Note: See TracBrowser for help on using the repository browser.