Meet pup, your new best friend #1
Replies: 3 comments 1 reply
-
a blooper :) |
Beta Was this translation helpful? Give feedback.
-
TLDRhttps://github.com/liquidcarbon/puppy is a transparent wrapper around pixi and uv, with simple APIs and recipes for using them to help write reproducible, future-proof scripts and notebooks. From 0 to rich toolset in one command:Start in an empty folder.
installs python and dependencies, in complete isolation from any existing python on your system. Mix and match URL query params to specify python version, tools, and venvs to create. The above also installs puppy's CLI ( CLI - "uv-lite"
Pup as a Module - no more notebook kernelsThe original motivation for writing puppy was to simplify handling kernels, but you might just not need them at all. Activate/create/modify "kernels" interactively with:
Of course you're welcome to use Target AudienceLoosely defining 2 personas:
Filesystem is your friendPuppy recommends a sensible folder structure where each outer folder houses one and only one python executable - in isolation from each other and any other python on your system. Pup is tied to a python executable that is installed by Pixi, along with project-level tools like Jupyter, conda packages, and non-python tools (NodeJS, make, etc.) Puppy commands work the same from anywhere within this folder. The inner folders are git-ready projects, defined by pyproject.toml, with project-specific packages handled by uv.
Puppy embraces "explicit is better than implicit" from the Zen of python; it logs what it's doing, with absolute paths, so that you always know where you are and how you got there. PS I've benefited a great deal from the many people's OSS work - now trying to pay it forward. The ideas laid out in puppy's README and implementation have come together after many years of working in different orgs, where average "how do you rate yourself in python" ranged from zero (Excel 4ever) to highly sophisticated. The matter of "how do we build stuff" is kind of never settled, and this is my take. Thanks for checking this out! Suggestions and feedback are welcome! |
Beta Was this translation helpful? Give feedback.
-
Hi , this is fantastic ..... too bad the linux nerds don't understand it .... ;-) |
Beta Was this translation helpful? Give feedback.
-
IMO, Pixi and uv belong together.
State of Pixi and UV as of
nowoutdatedDiscussion in Pixi: prefix-dev/pixi#1097
Good luck doing this without Pixi:
Beta Was this translation helpful? Give feedback.
All reactions