-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Recommended install command broken in newer Python versions #6264
Comments
Analysis for Issue #6264: Analysis of Pipenv Issue #62641. Summary of the Problem: The issue highlights two problems with Pipenv's recommended installation command:
These issues lead to the recommended installation command failing on newer Python versions and environments. 2. Analysis of the Discussion: There are no comments on this issue yet, so there's no discussion to analyze. 3. Proposed Resolution: The resolution should address both aspects of the problem:
4. Code Snippet: Here's a potential code snippet to be added to the installation documentation:
5. Additional Steps/Investigations:
This issue presents an opportunity to improve Pipenv's user experience, especially for new users. By addressing the outdated practices and providing clear instructions, Pipenv can become more accessible and user-friendly. |
Encountered this last week and arrived at the same set of steps @matteius suggested in the Recommended Method in the code snippet above. +1 for that addition. |
I find the solution of first creating and activating a virtual environment to use pipenv extremely awkward. If I have to activate a venv in order to use pipenv it loses a significant chunk of the convenience of using pipenv to manage my virtual environments for me. What's the remaining value proposition of pipenv compared to any other tooling for dealing with dependencies if I have to manage a virtual environment manually anyway? I fully admit I don't have a better solution and do not have a strong grasp of the underlying reasons given in PEP 668 for why I just want to prod in hopes that someone will think of something clever. A big draw of pipenv for me is that using it is "no friction" across projects. That is, I can have a dozen projects using pipenv and I work with them all the same without cognitive overhead. When I'm working in the project I prefix my commands with Would a viable approach to keeping that "no friction" be to create a "user level" venv that holds pipenv that I could activate automatically in my bash profile? Other thoughts on how to keep this as convenient as it currently is? |
Issue description
The recommended way to install pipenv breaks on newer Python versions. For example, Ubuntu's pip now bans installing packages (both globally as well as by
--user
).https://pipenv.pypa.io/en/latest/
Also, modern Python pip installations tend to name the application
pip3
instead ofpip
, often reserving the latter for use withpython
v2.Expected result
The recommended command for installing pipenv should reflect current best practices for Python package management.
Actual result
Ubuntu 24.04 in GitHub Actions shows installation of pipenv failing:
Steps to replicate
Workaround
Although this overcomplicates dev environment setup, planning to move pipenv provisioning from my usual platform agnostic
requirements.txt
requirements-dev.txt
configuration files to platform specific commands.However, installing pip packages outside of infrastructure as code files tends to restrict the ability of SCA tools to collect complete and accurate SBOM data for security scans.
Notes
If only Python (pip) would include pipenv by default, as it does with pipx.
The text was updated successfully, but these errors were encountered: