@@ -21,8 +21,35 @@ applicable to the development and deployment of network services (including
2121web applications), but is also very well suited to managing development and
2222testing environments for any kind of project.
2323
24- .. Note :: This guide is written for Python 3, however, these instructions
25- should also work on Python 2.7.
24+ Developers of Python libraries, or of applications that support distribution
25+ as Python libraries, should also consider the
26+ `poetry <https://github.com/python-poetry/poetry >`_ project as an alternative dependency
27+ management solution.
28+
29+
30+ Recommendation caveats (as of April 2020)
31+ -----------------------------------------
32+
33+ While this tutorial covers the ``pipenv `` project as a tool that focuses
34+ primarily on the needs of Python application development rather than Python
35+ library development, the project itself is currently working through several
36+ `process and maintenance issues <https://github.com/pypa/pipenv/issues/3369 >`_
37+ that are preventing bug fixes and new features from being published (with the
38+ entirety of 2019 passing without a new release).
39+
40+ This means that in the near term, ``pipenv `` still suffers from several quirks
41+ and performance problems without a clear timeline for resolution of those isses.
42+
43+ While this remains the case, project maintainers are likely to want to
44+ investigate :ref: `other-dependency-management-tools ` for use instead of, or
45+ together with, ``pipenv ``.
46+
47+ Assuming the April 2020 ``pipenv `` release goes ahead as planned, and the
48+ release after that also remains on track, then this caveat on the tutorial will
49+ be removed. If those releases *don't * remain on track, then the tutorial itself
50+ will be removed, and replaced with a discussion page on the available dependency
51+ management options.
52+
2653
2754Installing Pipenv
2855-----------------
@@ -143,18 +170,24 @@ they (and their dependencies) can be added to your ``pipenv`` environment with
143170``pipenv install -e <relative-path-to-source-directory> `` (e.g.
144171``pipenv install -e . `` or ``pipenv install -e src ``).
145172
173+
174+ .. _other-dependency-management-tools :
175+
176+ Other Tools for Application Dependency Management
177+ -------------------------------------------------
178+
146179If you find this particular approach to managing application dependencies isn't
147180working well for you or your use case, you may want to explore these other tools
148181and techniques to see if one of them is a better fit:
149182
150- * `pip-tools <https://github.com/jazzband/pip-tools >`_ to build your own
151- custom workflow from lower level pieces like ``pip-compile `` and ``pip-sync ``
152- * `hatch <https://github.com/ofek/hatch >`_ for opinionated coverage of even
153- more steps in the project management workflow (such as incrementing versions,
154- tagging releases, and creating new skeleton projects from project templates)
155- * `poetry <https://github.com/sdispater/poetry >`_ for a tool comparable in scope
156- to `pipenv ` that focuses more directly on use cases where the repository being
183+ * `poetry <https://github.com/python-poetry/poetry >`__ for a tool comparable in scope
184+ to ``pipenv `` that focuses more directly on use cases where the repository being
157185 managed is structured as a Python project with a valid ``pyproject.toml `` file
158186 (by contrast, ``pipenv `` explicitly avoids making the assumption that the
159187 application being worked on that's depending on components from PyPI will
160188 itself support distribution as a ``pip ``-installable Python package).
189+ * `hatch <https://github.com/ofek/hatch >`_ for opinionated coverage of even
190+ more steps in the project management workflow (such as incrementing versions,
191+ tagging releases, and creating new skeleton projects from project templates)
192+ * `pip-tools <https://github.com/jazzband/pip-tools >`_ to build your own
193+ custom workflow from lower level pieces like ``pip-compile `` and ``pip-sync ``
0 commit comments