Survex 1.4.10 released

Olly Betts olly at survex.com
Mon Aug 5 04:49:35 BST 2024


Survex 1.4.10 is now available:

https://survex.com/download.html

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

Changes in 1.4.10 (2024-08-05):

* aven:

  + Use a fixed rotation rate for rotating the view to North, South, East or
    West (shortcut keys `N`, `S`, `E` and `W`).  We were using the same
    variable rate which auto-rotation does for this case, but really these are
    just animations to help the user see the change that's happening, so a
    fixed rate makes more sense (and is what tilting to plan or elevation
    does).  The new fixed rotation rate for this is double what the default
    variable rate was, which means the longest rotation (e.g. from S to N)
    takes 3 seconds rather than 6.

* aven/survexport:

  + Fix syntax of shot flags in PLT export (incorrect since introduced in
    1.4.6).

  + Map Survex duplicate flag to `L` shot flag in PLT export.

  + Invent shorter names for anonymous stations in PLT export.  The PLT file
    format documentation says station names can be up to 12 characters, but the
    ones we generated were longer than this which is liable to trip up
    consumers of this format that only allow for the specified length.
    We now generate names using a sequential counter with a two character
    prefix so they should fit in the 12 character limit for any cave
    survey.

  + 3D export now includes all leg and station flags.

* cavern:

  + Unconnected survey stations are now handled as a warning, whereas
    previously this was an error.  This is necessary when processing Walls data
    where it seems having hanging surveys is the norm, and Walls itself only
    warns about them.

    The support is also enabled for native Survex data since it allows viewing
    the connected parts of a survey with missing connections without having to
    comment out the unconnected parts (and then remember to fully uncomment
    once connections are surveyed).  Fixes #16, reported by Duncan Collis.

    Currently the component count and loop count are not shown in this case.

  + Avoid multiple reports of an unconnected survey station.  This could happen
    in some cases where a group of equated stations had more than four legs
    connected to it.

  + Fix missing report of unconnected survey station.  We aim to report at
    least one station in every unconnected piece of survey, but if a piece had
    been simplified to a single station which was anonymous (e.g. a disto splay
    shot) then we wouldn't report anything for that piece.  Now we find the
    traverse that was attached to it and report the next station along that
    traverse.

  + Report file and line location each unconnected survey station.

  + This warning now says either `*entrance` or `*export` depending on which
    it actually was:

      Station "bar.1" referred to by *entrance or *export but never used

  + Fix several cases of mishandling comments without blanks before them:

    - After an anonymous station.

    - After an ignored reading.  The `ignore` would incorrectly also skip the
      comment character and any characters which followed up to the next blank
      or end of line.

    - In a `*alias` command.

    - Diagnostic highlighting could continue into a comment.

  + New `*cartesian` command which supports different orientations of
    `cartesian` style data.

  + Anonymous stations are now supported in `cartesian` style data.

  + `*fix a reference` (without any coordinates) is now an error.  The
    `reference` token provides a way to have a list of known fixed points which
    are not expected to all be currently used, while omitting the coordinates
    provides a way to specify a point to arbitrarily fix rather than rely on
    cavern picking one.  Allowing both together doesn't really make sense.

  + Improve check for 180° backclino to suppress the warning about a compass
    reading on a plumbed leg (introduced in 1.4.8) to allow a small tolerance
    on the value.  Previously the check wasn't working on x86 Linux for
    example.

  + When showing a line as the location of a diagnostic we now render any
    tab character as a single space which means the `^~~~~` highlight length
    is now correct even when the highlighted part contains tabs.  This only
    affects use from a terminal as the highlight was already correctly handled
    when viewing the log in aven.

  + Enhancements and fixes to reading Walls WPJ and SRV files (thanks to Eric
    C. Landgraf and Joe for a lot of great feedback from testing with large
    datasets):

    - The `RECT=` option is now fully supported.

    - Fix `#DATE` with an active `.REF` to act like `DECL=`.  This matches what
      the documentation says and what Walls seems to actually do.

    - Allow completely omitting the clino on a wall shot (with `ORDER=DAV` or
      `ORDER=ADV`).

    - Resolve WPJ `.PATH` relative to innermost containing book.

    - Handle an empty Walls station name.  Walls allows a station with an
      explicit prefix to have an empty name, e.g. `PEP:`.  The Walls
      documentation doesn't mention this, though it also doesn't explicitly say
      the name can't be empty.  This quirk seems unlikely to be intentionally
      used and Survex doesn't allow an empty station name, so we issue a
      warning and use the name `empty name` (which has a space in, so can't
      collide with a real Walls station name which can't contain a space) - so
      `PEP:` in Walls becomes `PEP.empty name` in Survex.

    - Flag stations with explicit Walls prefix as exported.

    - Fix setting empty Walls macro with a comment right after it.

    - Walls quietly ignores junk after the numeric argument in `TYPEAB=`,
      `TYPEVB=`, `UV=`, `UVH=`, and `UVV=`.  This seems to be an undocumented
      feature/bug so Survex emits a warning and skips the junk.

    - After an unknown Walls option we now process the rest of the line.
      Previously we were skipping the rest of the line.

    - We no longer skip the rest of the line after a bad Walls `ORDER=` option.

    - Correct the reported column for some Walls option diagnostics.

    - Support explicit units on Walls clino readings.

    - Allow `#` in Walls station names.  This is explicitly documented as not
      allowed, but the documentation doesn't match the implementation and `#`
      is present in some real-world data.

    - Improve handling of Walls `RESTORE` error.  Highlight the position in the
      line and don't skip the rest of the line.

    - Don't warn about `INCH=` with a zero argument since that's the one case
      of it we do handle!

    - Fix not to skip the rest of the line after Walls `INCH=` option.
      We currently don't support `INCH=` so we warn about it, but we were
      skipping the rest of the line, then trying to read and discard the
      argument to `INCH=` which gave an error.

    - Relax handling of Walls `CASE=`.  It's not documented, but Walls32.exe
      quietly treats unknown values as "Mixed".

    - Support DM and DMS format for latitude and longitude in Walls `#FIX`,
      e.g. `W97:43.875` and `W97:43:52.5` .

    - Treat a zero length leg with finite variance like a Survex `*equate`.

    - Apply Walls variance overrides to survey legs.

    - The optional instrument and target heights are now parsed, but their
      values are currently ignored.

    - The delimiters around LRUD data are now parsed, but the LRUD data between
      them is currently ignored.

    - If a `#SEGMENT` value looks like a set of Compass shot flags (i.e. consists
      only of upper case characters from `CLPSX`, optionally prefixed with a
      `/` or `\`) then we interpret them as Compass shot flags (except that `X`
      is mapped the same way as `L`).  This is apparently a common way to use
      `#SEGMENT`, and unlikely to be triggered accidentally.

    - Avoid a doubled directory separator when building Walls path names.

* documentation:

  + The manual has been converted from DocBook to reStructured Text.  The
    plain-text format is much easier for making changes, and for users the
    output from sphinx looks nicer and has extra features (like built-in
    "Quick search" in the HTML output).

    The plain text version of the manual is no longer generated.  Sphinx can
    produce one but the .rst sources actually seem more readable for anyone
    wanting to read the manual in plain text.

    The extra targets to generate the manual in RTF and PostScript
    have been dropped as I doubt they are still used (we stopped
    providing them on the website years ago).  They could probably be
    reinstated if there's a demand for them.

    The conversion was partly automated followed by a full pass over the
    result fixing issues with the automated conversion.  We took the
    opportunity to also review the content and update or remove out of
    date and other incorrect information, and to reorder some of the content.

  + Document all the statistics in the `.err` file

  + Document PLT export.

  + Minor improvements to --help output

  + The HTML version of the 1.4.9 manual was missing the Walls chapter
    and had messed up paging links around it (due to the new CMAP chapter
    accidentally also being given the filename `walls.htm`).  Reported by Eric
    C. Landgraf.

  + Document we don't enforce Walls' station or prefix length limits.

  + Document handling of Walls `#NOTE`.

  + Fix documentation of Walls `FLAG=` which is correctly handled, not skipped.

  + Document how to compare Walls and Survex output via Shapefile.

  + Document how to suppress unused fixed point warning in Walls SRV.

* testsuite:

  + Add testcase for Walls `#units order=da`.

  + Add expected output for more testcases

  + Add testcase for exporting .3d files.

  + Normalise `-0.00` to `0.00` in DXF output before comparing to avoid bogus
    test failures due to excess precision on x86 when using 387 FP
    instructions.

  + Add test of DXF export with full coordinates.

* translations:

  + Diagnostics can now use positional arguments which sometimes allows a
    more natural word order in a translated message.

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

98b265fd4b959adc2ed853b8638312d16935cfa32f215aec3798eb3596696297  survex-1.4.10.tar.gz
3207d9e305363e071c279d537677ce75c66fe65a6409f4f946eb4402d769d742  survex-win32-1.4.10.exe

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

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.10

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/20240805/aa652e9b/attachment.sig>


More information about the Survex mailing list