Releases: TyberiusPrime/anysnake2
Newer mach-nix compatibility
Upgrading to 3.10 you must use a newer pypi-deps-db (for argon2-cffi), and then
you need a newer mach-nix, and then editable install in venvs don't do
.egg-links but .pth links, and this fixes the anysnake2 accordingly.
additional mkPython Arguments
We have found a need to add another escape hatch,
to work around mach-nix troubles
by accepting arbitrary nix code for additonal_mkPython_arguments,
for example to get python 3.10 and anything using black running right now you need to add
[python]
additional_mkpython_arguments = """
providers.platformdirs="nixpkgs";
providers.tomli=nixpkgs";
""" # must be verbatim nix code
Also, upgraded the just_python example to 3.10.
1.9.1
Quality of life improvements / bug fixes surrounding the 'build-a-python-package-from-flakes' functionality from 1.9.0.
Most notably: packages = [] is no longer necessary on the flake.
Python-packages from flakes
Wheels on pypi are great,
but at times you need to build 'complicated' python packages from source,
and in a way that exceeds a 'stick it into mach-nix buildPythonPackage'.
An example for this is rust/pyo3/maturin based packages.
This update allows you to specifiy package = {method="useFlake", flakeName="xyz"}
,
and then use a [flake.xyz] section.
The flake must export a mach-nix-build-python-package
function - see https://github.com/IMTMarburg/mbf_bam/blob/default/flake.nix for an example.
fix: nix-fetched python packages now prefered to pypi ones
The fetch-python-packages-via-nix feature that was implemented in 1.7 only worked for python packages that were not on pypi - for those on pypi mach-nix would always prefer the pypi version.
This should fix that.
(1.8.2 was a premature push of this release and has been pulled)
fix: python-wrapper-being-binary
nixpkgs 22.05 or thereabouts introduced the python wrapper being a binary instead of a shell script (for darwin support, I believe).
We want to find the unwrapped binary though, so we had to adapt.
Flake-auto-discovery for git & hg
We had flake 'auto discover newest rev' for github: hosted crates,
now we also do git+https and hg+https flakes.
1.7.2
flake-revision auto discover is no longer confused by ?dir= inside the flake url.
Bugfix: 'github:' flakes
The github aut rev discover insisted on a slash as in github:/, but flakes also take 'github:'.
fetchhg / discover-on-first-use
This release brings 'trust-on-first-use' to fetchhg python packages,
works around mach-nix/packaging/resolvelib issue that prevented
you from actually using fetchFromGitHub for python packages,
and introduces 'find newest revision' for python packages with
fetchFromGitHub/fetchhg/fetchgit, just like flakes already hade.
See examples/just_python_discover_newest_revision.