github cpmech/gosl v1.2.14
v1.2.14 — Docker toolchain and the rewritten README (no code changes)

2 hours ago

Documentation and tooling only: no exported API, behaviour or dependency changed since
v1.2.13
— the Go source of this release is identical. Take it if you want the Docker workflow; for
code, v1.2.13 already has everything.

Status

Gosl is mature and in maintenance mode. It is stable and is used in published work, but new
development has moved to Russell, its successor — if you are
starting a new project, look there first. Reports about Gosl's existing functionality are welcome;
new features are unlikely.

What changed

  • A Docker build-and-test toolchain, with no Go toolchain on the host. docker/Dockerfile pins
    Ubuntu 24.04 and Go 1.27.1 (GOTOOLCHAIN=local) and installs exactly the libraries the cgo files
    link against, recording them in /etc/gosl-libs.txt inside the image. ./gosl wraps docker run
    (all build test race vet fmt cover bench shell go), runs as your own user so nothing it produces
    is root-owned, caches into the gitignored .docker-cache/, and needs no network for build or test.
  • README rewritten. Docker is the only requirement for the container path, and the status of the
    project — mature, maintenance mode, successor Russell — is the first section after the
    introduction. The new Licence section records that gm/tri wraps Jonathan Richard Shewchuk's
    Triangle: free for private, research and institutional use, with a direct arrangement with the
    author required for distribution as part of a commercial system. It also notes that the vendored
    copy is adapted for Gosl rather than upstream 1.6 verbatim, which those terms require be stated.
  • Retired the VS Code / Docker Hub container setup: .devcontainer/, the old root Dockerfile
    (Ubuntu 22.04, GO_VERSION=latest, a vscode user built by two vendored Microsoft scripts) and
    the zscripts/ wrappers that built and published the gosl/gosl image. Those tags remain on
    Docker Hub, but are no longer built from this repository.

How this release was verified

Built and tested in that image — Ubuntu 24.04 with SuiteSparse 7.6.1, OpenBLAS 0.3.26, LAPACKE
3.12.0, FFTW3 3.3.10, METIS 5.1.0, MUMPS-seq 5.6.2, gfortran 14.2 and Go 1.27.1 — after the legacy
setup was removed:

  • all 19 packages build, go vet reports nothing, and every package's tests pass: ./gosl all
    prints SUCCESS!. It takes 4.6 s once warm and 14.2 s from an empty cache;
  • the same image works as a build environment for your own project — go get github.com/cpmech/gosl
    inside it and run, as the README's example shows.

Don't miss a new gosl release

NewReleases is sending notifications on new releases.