Thank you Arjan! I got in over my head and somehow landed a job at a cutting edge 'move fast and break things' place as a SWE, as the sole developer on a team, with no onboarding docs (in response, I pilfered onboarding docs from other teams) and had to quickly learn docker, poetry, vscode, AWS, fastapi and even MacOS, all at once. I was a pireqs pip-venv guy, but they require me to learn poetry, so this was helpful. Oh and my previous SWE experience? Officially none. I've been a solo cowboy my whole life. All that's left to do is fight my encroaching imposter syndrome.
Useful video, Thank you! Will be great to have a video explaining versioning of the project, synchronizing it with git tag etc. So, complete versioning workflow will be great.
Please do a video comparing different tools like linters, formatter, type checker, package manager, project manager and environment manager in terms of python ecosystem Another can you do a video covering the state of rustpython ( rust based python interpreter) and pyiodide ( wasm port for python ) 😅😅😅😅😅
It's been a while since I've tried Poetry and hope to try it again after this video. I think the issue I had was that it was consistently unable to install packages or some packages did not contain the proper poetry requirements. I just reverted back to venv. But I always forget to pip freeze. Now this is the content I love. Keep it up and thank you!!
I found pdm to be a better alternative to poetry. Three years ago, poetry was too buggy and had low-level errors. That was my reason for moving from poetry to pdm.
Using poetry is more complicated than venv if you have a lot of projects/microservises with different python versions. Especially if it's in one major version. For example python12.0, python12.2, python11.
I gave up on Poetry (the software, I still love poetry!) and pipenv coz at some point they always messed up the vir. env. Now I just use the native `python3.x -m venv __venv__` (note gives control over python version) and VU to handle locking `vu pip compile requirements.in` (blindingly fast!). Poetry and pipenv are not transparent in the way they work so when something goes wrong you don't know where to start.
I'm confused, how can you activate venv (with poetry shell) right after installing dependencies? isn't should be activate the venv first? Sorry I'm still new to poetry, someone pls explain
Hi, I have a question about the wheel files. When I want to install it on a production environment, it is common to create a new spiritual environment on that production environment or you can just install the package there.
I just saw this video, and I agree, Poetry is a far better solution. I'd love to know a simple way to 'upgrade' from the requirements.txt solution to Poetry.
Python poetry: In Python's syntax, lines elegantly align, Indentation guides, like a poet's rhyme. Lists, loops, and logic, all in one dance, In Python's embrace, solutions advance. Libraries shine like stars in the night, NumPy, Pandas, unlocking insight. From novice to master, its simplicity charms, In Python's realm, creativity swarms. Python Poetry: [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api"
Need another video about poetry with "poetry update", "poetry lock --no-update", "poetry update ", symantic versioning, and some more features of poetry e.g. dev dependencies, private package, test case conf. etc. Thanks in advanced sir 👍
For various reasons, not the least one being legacy systems, I've been sticking to plain venvs and pip. So. Witnessing poetry actually uninstall unneeded dependencies during the remove operation gave me a small nerdgasm
By default, poetry will not install the dependencies inside your project folder. To do so, you need to configure it using this command: poetry config virtualenvs.in-project true
I don't like it, it reminds me javascript node ecosystem and often behaves unstable. Poetry tries to do too much stuff at once and has plugins. You can't even use .env files without installing a plugin. For dependencies only i like Pipenv. Does the job well, don't try to do everything.
Replicating the node workflow is exactly the point. We use it in a system where js frontend and python backend tool chains need to be managed in parallel
Poetry is too overloaded with unnecessary stuff. Why the hell do you need to manage Python versions inside your project? :\ Why does it hide .venv from me in who knows where? :\ Although I love dev containers, maybe that's why I hate poetry. If you are using pycharm with a ton of "quality of life"(no) features, poetry is probably good then. :\
Poetry doesn't sit right with me. Lack of support or any plans on supporting PEP 621. I like lockfiles but PyPA needs to get their shit together and there needs to be one way to build packages in python and I don't feel like poetry is it. I don't do a lot of Python though and I look at things like NPM/Yarn, Rust's Cargo, and the Go tool and they are ubiquitous because they are standardized.
I’m still relatively new to python, and even newer to python packaging, and tbh to me it seems like one hot, ever changing mess, and consequently a plethora of different third party tools around it. When the python packaging user guide lists seven different techniques for single sourcing the package version, there is something wrong…
Yop, i use a mac pro, my system version of python is 3.12, for some reasons I install python 3.9.2 with pyenv, and i want to install django in my venv, but poetry add django only tries to install django 5.2 and not 4.2 (which is python 3.9 compatible), is poetry compatible with pyenv ?
Great video as always! Wondering if Poetry would be helpful for managing the dependencies that are being used in lambda layers? SInce there is a size limit for a single lambda layer and they need to be divided up to 5 layers for a single lambda.
Very nice... shades of `package.json` or `cargo.toml` ... but since I've become obsessed with Docker, and I develop in Docker, deploy in Docker... "Docker, Docker, Docker!!!", then a pip install in my Dockerfile seems to be the right place to do this sort of thing... I think I deserve some kind of prize for stupidity! I came here expecting... I dunno.... poems written about Python... poems written IN Python??? The fact that there might be a Python package simply called "poetry" was light years away from my mind.... Yeah, can I have that stupidity prize now please?