Skip to content

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 03 Nov 23:42
· 339 commits to main since this release

Changes since pysrim 0.5.10. See
changes from pysrim for credits and details.

Added

  • Run SRIM under xvfb-run -a when it is available, so no display is needed (Jan Mayer).
  • Parse SRIM output written with comma decimal separators (philis-johan, MrRobot2211).
  • Support the m (metre) length unit in SR output (Angus Hollands).
  • SRIMOutputParseError for unknown units in SR output.
  • GitHub Actions: lint, test matrix (Python 3.11 to 3.15 on Linux, Windows and macOS), build, and a trusted-publishing release workflow.
  • Ruff configuration and pre-commit hooks.
  • Documentation: change list relative to pysrim, changelog page, AGENTS.md.

Changed

  • The distribution is renamed to pysrim2; the import name srim is unchanged. It cannot be installed alongside pysrim.
  • Requires Python 3.11 or newer.
  • Packaging uses pyproject.toml, hatchling and uv (Angus Hollands).
  • Wine is detected with shutil.which through a shared launch helper (Mirochill).
  • Code formatted with ruff.
  • Documentation uses the furo theme, is built with uv, and is hosted at https://pysrim2.readthedocs.io.
  • README and installation instructions rewritten for pysrim2.

Fixed

  • Removed the distutils import so the package imports on Python 3.12 and later (lievcm).
  • Regular expressions use raw strings, removing invalid escape sequence warnings (lievcm).
  • Ion energies with a leading or trailing decimal point (such as .3 keV) are parsed (Mirochill, George Apostolopoulos, SimonF24).
  • Positive autosave intervals are accepted (Mirochill).
  • The sputtered output setting is honoured independently of ranges (Mirochill).
  • The element database file is closed after loading.
  • Undefined names: the NotImpementedError typo in SRIM_Output._read_target, and missing numpy import and folder argument in srim.plot.
  • Plot functions read Results attributes instead of subscripting Results.
  • Docstring markup errors that produced Sphinx warnings.

Removed

  • Support for Python versions before 3.11.
  • setup.py, setup.cfg, the conda recipe, install.sh, default.nix, GitLab CI and the old Dockerfiles. A container image and a SRIM installer for wine are planned.

Versions up to and including 0.5.10 were released as pysrim by Chris Ostrouchov.