multiversion
nix-cde
multiversion | nix-cde | |
---|---|---|
1 | 9 | |
86 | 29 | |
- | - | |
10.0 | 6.4 | |
almost 13 years ago | 11 days ago | |
Python | Nix | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
multiversion
-
As if there weren't enough packaging tools already: mitsuhiko/rye: an experimental alternative to poetry/pip/pipenv/venv/virtualenv/pdm/hatch/…
I don't see much other than reliance on sys.modules keying that is a hindrance in a better import story, and even that is solvable. Already 12 years ago I showed that loading multiple incompatible versions of a library into the same Python interpreter is possible, and that was a long time before importlib landed which would make some of this easier.
nix-cde
-
The Magic Nix Cache
This is what I'm using with gitlab: https://github.com/takeda/nix-cde/blob/master/contrib/gitlab...
-
Using Nix as an alternative to dev containers in VScode.
I myself use https://github.com/takeda/nix-cde it just wraps other projects in an opinionated way and contains the boiler plate that I would normally use otherwise.
-
As if there weren't enough packaging tools already: mitsuhiko/rye: an experimental alternative to poetry/pip/pipenv/venv/virtualenv/pdm/hatch/…
There's a project that does this with using Nix: https://github.com/takeda/nix-cde (this is a wrapper around https://github.com/nix-community/poetry2nix)
- Docker multi-stage build with Poetry
-
Python 3.11 delivers.
I personally use this: https://github.com/takeda/nix-cde it has the benefit of a reproducible build environment, but unfortunately anything involving Nix has a steep learning curve.
-
The perfect way to handle project-specific developer configs
I use this myself: https://github.com/takeda/nix-cde
-
Asdf – the language tool version manager
I don't use NixOS myself, but have Nix installed on my Mac, and it seems to provide all functionality of package or version managers I needed.
I think though it is more complex because it is a programming language that provides this functionality instead of purpose build tool like asdf.
For my needs I created a framework for development: https://github.com/takeda/nix-cde to avoid cruft of including the same things over and over in my projects.
-
Use `Python -m Pip`
Not an OP, but I became a big fan of using poetry for managing dependencies. For managing python version I started using Nix package manager. It allows to describe all dependencies via code, but with time that code became a boilerplate, so I created this: https://github.com/takeda/nix-cde
It works very well for me so far.
What are some alternatives?
huak - My experimental Python package manager.
hasql-interpolate
asdf - Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more
aws-lambda-python-runtime-interface-client
rye - a Hassle-Free Python Experience
nixml - NIX + YAML for easy to use reproducible environments
python-build-standalone - Produce redistributable builds of Python
globus-timer-cli - CLI for interacting with the Timer API
mise - dev tools, env vars, task runner
m1-terraform-provider-helper - CLI to support with downloading and compiling terraform providers for Mac with M1 chip
sigstore-python - A Sigstore client for Python