Skip to content

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

Open
@hkennyv

Description

@hkennyv

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions