Skip to content

LaNet-vi 5.4.0

Latest

Choose a tag to compare

@estcarisimo estcarisimo released this 23 Oct 18:35
· 4 commits to main since this release
2e6d829

A security-driven release: Python 3.11 is now the minimum, so every install gets Pillow 13 with the October 2026 Pillow advisory fixes.

Removed

  • Python 3.10 support (#71). requires-python is now >=3.11. In October 2026 a batch of Pillow advisories (crashes and parser bugs in its PDF and image readers) was fixed only in Pillow 13.0.0. Pillow 13 requires Python 3.11 or newer, and there is no 12.x backport. On Python 3.10, LaNet-vi could only get the vulnerable Pillow 12.3.0 through matplotlib. Python 3.10 reaches end of life this month.

Changed

  • The option enums are now enum.StrEnum (#71). This covers DecompositionType, ColorScheme, BackgroundColor, MeasureType, KConnectivityType, StrengthIntervalMethod and CoordDistributionAlgorithm in lanet_vi.models.config. They still compare equal to their string values and serialize the same way. str() and f-strings now give the value ("kcores") instead of "DecompositionType.KCORES".

Compatibility

  • Python 3.10: pip there keeps resolving LaNet-vi 5.3.1, which works but can only use Pillow 12.3.0. To get the fixed Pillow, upgrade to Python 3.11 or newer.
  • Everything else: the CLI, the Python API, the YAML config files and the pictures are unchanged from 5.3.1. The only behavior change is the str() output above.

Also on main since 5.3.1, not user-visible: the development lockfile picked up pillow 13.0.0, virtualenv 21.14.13 and certifi 2026.10.23 for new advisories (#70), plus ruff 0.17.1 (#69). There were also Dependabot updates to dev and CI dependencies (#59–#68), including the uv-build bound <0.14 (#68). CI now tests Python 3.11–3.13.

Full changelog: v5.3.1...v5.4.0