Upstream main declares [project] version 0.0.0 between releases, which made
the nightly pin regress from 0.21.4 to 0.0.0. Fall back to the latest release
tag's version when the HEAD version is the placeholder, and correct the
current candidate's pinVersion to match. Factor the pyproject version lookup
into update-common.sh so both channels share one implementation.
Upstream 0.21.3 promotes `pillow-heif>=1.4.0,<2` to a direct dependency
(HEIF/HEIC/AVIF decode for the vision tools), so the wheel metadata now
requires it and `pythonRuntimeDepsCheck` fails with:
Checking runtime dependencies for hermes_agent-0.21.3-py3-none-any.whl
- pillow-heif not installed
Changes in package.nix:
- Add `pillow-heif` to the runtime dependencies next to `pillow`.
- Override nixpkgs' `pillow-heif` 1.2.0 up to 1.4.0. 1.4.0 is the newest
release that still accepts nixpkgs' libheif 1.20.2 (1.5.0 requires
libheif >= 1.23.1, so it cannot be used with the pinned nixpkgs).
Verification:
- `nix build .#hermes-agent`: builds; previously the same command failed in
`pythonRuntimeDepsCheck`.
- `nix path-info -r` on the result lists python3.12-pillow-heif-1.4.0.
- pillow-heif 1.4.0 built from source against system libheif passes its own
test suite: 664 passed, 8 skipped.
Upstream 0.21.0 added firecrawl-anydoc==0.2.4 (document-to-Markdown
converter) as a direct core dependency. It ships only Rust/maturin
artifacts, so package.nix consumes the prebuilt cp310-abi3 x86_64-linux
wheel (zero runtime deps per PyPI), mirroring the existing nemo-relay
wheel pattern.
Re-adds snowballstemmer==3.1.1 (tool_search BM25 stemming, required
since 0.20.6) which the candidate regeneration from main dropped, and
restores the 'hermes --version' form in the package-contents check (the
'hermes version' subcommand was removed upstream in 0.20.6).
Files: package.nix (add firecrawl-anydoc builder + both deps),
checks.nix (--version).
- relax setuptools==83.0.0 pin (nixpkgs ships 80.10.1) in postPatch
- set HERMES_NIX_BUILD=1: upstream setup.py refuses wheel builds without it
- disable slack-bolt 1.27.0 tests: crash at interpreter shutdown in sandbox
- package nemo-relay 0.6.0 from its manylinux abi3 wheel (not in nixpkgs)