Skip to content

Releases: arbCoding/sac-format

v0.4.0

12 Dec 01:33
4576398

Choose a tag to compare

v0.4.0 Pre-release
Pre-release

Another step toward v1.0!

  1. Installers have been added. For Windows an NSIS graphical installer is used (also handles uninstall). macOS and Linux use gzipped tar archives (.tar.gz), they also use self-extracting gziped-tar archives (.sh).
  2. Setter rules have been added to: stla, stlo, evla, evlo, npts, data1, data2, leven, and iftype. Documentation reflects the change.
  3. Safer geometric functions (still spherical Earth assumption).
  4. Now check for SAC file corruption while reading and throw sacfmt::io_error if the file fails.
  5. Stricker compliance with C++ best practices (safer, cleaner code).

What's Changed

  • Begin development of v0.4.0 by @arbCoding in #12
  • Safer geometric functions. Testing updates, documentation improvements. by @arbCoding in #13
  • Safer reading. by @arbCoding in #14
  • Unit-tests for reading corrupt sac-files have been added (make sure t… by @arbCoding in #15
  • Finalized file-corruption checking-throwing on sac-file read. Unit-te… by @arbCoding in #16
  • More Automatic Compliance with the format. by @arbCoding in #17
  • Stricter compliance with C++ best-practices, enforced by stricter rul… by @arbCoding in #18
  • Code cleanup by @arbCoding in #19
  • Create codeql.yml by @arbCoding in #20
  • Typo in documentation. Typo in codeql.yml by @arbCoding in #21
  • CPack packaging on Linux. by @arbCoding in #22
  • Adding macOS and Windows packaging by @arbCoding in #23
  • GitHub release workflows by @arbCoding in #24
  • Fixed release workflows by @arbCoding in #25
  • Typo in Linux and macOS release workflows on action name. Fixed by @arbCoding in #26
  • Another fix for the automated release workflows. by @arbCoding in #27
  • Apparently release types do not work with the workflows by @arbCoding in #28
  • Added bashisms for obtaining the version and arch information because… by @arbCoding in #29
  • upload-on-release is problematic. It doesn't work on windows or mac (… by @arbCoding in #30

Full Changelog: v0.3.0...v0.4.0

v0.3.0

05 Dec 16:07
607c74d

Choose a tag to compare

v0.3.0 Pre-release
Pre-release

Another step forward to v1.0!

In this jump sac-format becomes both safer, faster, and has some added functionality in the form of calculating great-circle arc (gcarc) distance and azimuth angles assuming a spherical planet.

Notable changes

  1. Testing against the big 3 OSes (Linux, macOS, and Windows) takes place on pull requests to main.
  2. C++ standards compliance and linting has been added through the automated linting workflow to ensure clean, safe, and optimized code.
  3. The addition of throwing the custom sacfmt::io_error exception on read/write failures allows the library user to perform error handling, instead of the library passing a message into std::cerr (set behavior for user, bad).
  4. The addition of geometric functions, gcarc and azimuth (using spherical planet assumption, future work may include defining an ellipsoid to make more accurate calculations).
  5. Helper functions radians_to_degrees and degrees_to_radians were added for the use of gcarc and azimuth.
  6. Addition of noexcept specifier to functions/methods that do not throw exceptions.
  7. Various minor changes to documentation.

What's Changed

Full Changelog: v0.2.0...v0.3.0

sac-format v0.2.0

18 Nov 16:19
a3e0b6b

Choose a tag to compare

sac-format v0.2.0 Pre-release
Pre-release

Originally my goal was only to migrate from using Make to using CMake. Then I got inspired and rewrote a large chunk of the sac-format library.

Major changes from v0.1.0:

  • namespace is now sacfmt
  • SacStream is now Trace
  • Parameters are no longer directly accessible, now you must use the setters and getters. (e.g., instead of trace.npts, use trace.npts(), or trace.npts = 10 becomes trace.npts(10))
  • Parameters are now stored in private arrays and getters/setters access via a look-up table using class enumaration (much safer against coding errors)
  • Added trace comparison functionality
  • Now uses CMake
  • Documentation on github.io and as a pdf
  • Migrated from markdown to org for consistent text generation
  • Unit-testing with Catch2
  • Benchmarking with Catch2
  • Added an example program
  • Compiles as a statically linked library to simplify usage

And generally cleaner code through linting.

Cheers!

sac-format v0.1.0 (historic)

18 Nov 15:58
d2f860e

Choose a tag to compare

Pre-release

This is the first working version from GitHub. Used in PsSp and possibly other places.

This is being made into a release to prevent breaking any workflows during the transition to the new Trace class and CMake integration.