Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Addition of Poetry to "Using virtualenvs..." section #1101

Open
hkennyv opened this issue May 4, 2021 · 2 comments
Open

Addition of Poetry to "Using virtualenvs..." section #1101

hkennyv opened this issue May 4, 2021 · 2 comments

Comments

@hkennyv
Copy link

hkennyv commented May 4, 2021

Hi there, thank you for all the work put into this guide so far!

Are there any discussions or plans to mention Poetry anywhere in this guide (I couldn't find any previous issues on this)?

Rationale

I think poetry solves a huge missing piece in the Python ecosystem. For any node.js developers, it is similar to npm and yarn. For many newcomers to the language, the way python does dependency management and virtual environments has a very high learning curve.

Poetry introduces (over traditional pip based package management):

  • A unified project manifest pyproject.toml containing dependencies and build information
  • Introduces a poetry.lock file that pins dependency versions (a better alternative than pip freeze IMO)
  • Avoids installing dependencies globally (poetry automatically creates a virtualenv and installs project dependencies there)
  • Using poetry run executes commands automatically in the proper virtualenv context (no more needing to source venv/bin/activate)

And plenty more that I'm sure I am not listing here...

Limitations

As with any new technology, there are some limitations:

  • Poetry is dropping support for Python 2.7 and 3.5 in the next release
  • Lots of older tutorials and resources probably do not use it, which could confuse beginners even more

Thoughts on this? Would be happy to help contribute wherever I can.

@shatteredsword
Copy link

agreed. PEP 518 has been out for more than 5 years

@akupac
Copy link

akupac commented Mar 13, 2024

Is this guide up to date with Python best practices?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants