Survex 1.4.17 released

Olly Betts olly at survex.com
Thu Mar 20 01:05:53 GMT 2025


Survex 1.4.17 is now available:

https://survex.com/download.html

Here's the full NEWS file entry for this release:

Changes in 1.4.17 (2025-03-20):

* aven: Add support for exaggerating Z.  You can now set a Z scale factor
  from 0.1 to 10.0 via a new widget on the toolbar.  Fixes #49.

* aven: The cavern log window now choses foreground and background colours
  based on the desktop's light mode/dark mode setting.  Previously it
  used the default window background colour but always used black text, which
  made it hard to read with a dark desktop theme.  (The wxWidgets API to detect
  dark mode is new in 3.2, so if built with wxWidgets 3.0 then we assume
  light mode.)

* aven: The station search feature now uses the standard search
  widget on GTK 3.6 or later and on macOS.  There's now a placeholder
  text shown when there's no search to make it clearer what this
  widget is for.

* aven: There's currently a cavern bug where it can fail to identify all
  traverses which are not involved in loop closure, which results in the .3d
  file contains error information for them (unfortunately this seems tricky to
  fully fix).  This error information is always zero, so as a workaround aven
  attempts to detect these so that "colour by error" shows them as "not in
  loop".  This workaround previously only checked for E being zero, but now
  H and V are both also required to be zero.  This should help avoid some very
  low error traverses being incorrectly treated as "not in loop", although in
  practice I've not yet found a real world case where this actually makes a
  difference.

* aven: Fix the output encoding of `aven --help`, `--version`, etc.
  Previously these were always encoded as UTF-8 which is usually right
  on a modern system, but the terminal could be using a different
  encoding.

* aven: Reduce startup overhead a little when the terminal has a UTF-8
  locale (which is now the default on most Linux distros).

* cavern: Fix an "assertion failed" error in some situations when
  equating to a fixed point.  This bug was introduced by changes
  in 1.4.13.  Fixes #143, reported by Juan Corrin.

* cavern: The syntax of *copyright commands is now checked and a warning
  issued for problems.  The information in the command is still not yet used.

* cavern: The syntax of *team commands is now checked and a warning
  issued for problems.  The information in the command is still not yet used.

* cavern: Stop reporting node stats.  These are kind of interesting, but
  with the widespread use of Disto-X and similar devices which can easily
  shoot multiple splay legs from each station means the number of larger order
  nodes has increased and this information is now quite verbose and any utility
  it had has substantially declined.  If these statistics are still wanted then
  they could make a reappearance in the future in aven, with splays excluded
  when counting the number of legs at each station.  Fixes #86, reported by
  Wookey.

* cavern: Fix wrong "unused fixed point" warning with *solve.

* cavern: Fix double counting of stations which are referenced both before and
  after *solve.

* cavern: Suppress loop and component counts if *solve is used.  Our component
  count was often wrong in this case but this looks very hard to fix.  These
  counts are not vital so better to omit than report wrong values.

* cavern: The "Equating two equal fixed points" warning now lists the
  stations on the same order as they are in the `.svx` file which
  seems clearer.

* Speed up reading and writing of .3d files.  The time to read a large .3d file
  and just count the stations and legs was more than halved by this change.

* Simplify handling of errors loading the messages file.  The error
  messages for this case are now stored as separate ASCII strings in
  the executables which reduces the startup overhead a little as we
  no longer need to scan them and potentially reencode them.

* img library: The img struct's filename_opened member was always NULL when
  used outside of Survex (and set but never actually used inside of Survex)
  so it has been removed.  If you are referencing it in your code then instead
  use the filename you passed to img_open_survey() when opening the file.

* Documentation: Add details of warning about future dates in *date.

* Documentation: Added new manual chapter on the img library.

* Documentation: Improve comments document API in img.h.

* Testsuite: Add proper test coverage for `*ref`.

* Merge updates to Russian translation from Vasily Vl. Suhachev.

* Portability: Eliminate unintended use of a C++17 feature (static_assert
  with only one argument).

* Portability: Avoid compiler warnings/errors in getopt code by properly
  declaring getenv().

Here are SHA256 checksums should you want to verify the integrity of the
files:

af6e2f70e575a633719cb45fcb6b521bb6c31bf1cb0a1c04be573cdd831e3847  survex-1.4.17.tar.gz
bd7f604080cb2f17e424404bd425ff94834b820602892f64e8523baaf935d9f5  survex-microsoft-windows-1.4.17.exe

There are also detached GPG signatures in the download directory:
https://survex.com/software/1.4.17/

There are "release notes" on the wiki, which I'll try to keep updated
with any issues found, so take a look there for the latest information:

https://trac.survex.com/wiki/ReleaseNotes/1.4.17

Please report any issues you find which are not covered in the release
notes to the bug tracker: https://trac.survex.com/

Cheers,
    Olly
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.survex.com/pipermail/survex/attachments/20250320/f8b7c876/attachment.sig>


More information about the Survex mailing list