Release v2022.10.9

This commit is contained in:
Matt Davis
2022-10-09 10:43:59 -04:00
parent cb1ca34c28
commit eab868d5a4
5 changed files with 149 additions and 25 deletions
+17
View File
@@ -1,3 +1,20 @@
2022.10.9 (2022-10-09)
======================
Pipenv 2022.10.9 (2022-10-09)
=============================
Behavior Changes
----------------
- New pipfiles show python_full_version under [requires] if specified. Previously creating a new pipenv project would only specify in the Pipfile the major and minor version, i.e. "python_version = 3.7". Now if you create a new project with a fully named python version it will record both in the Pipfile. So: "python_version = 3.7" and "python_full_version = 3.7.2" `#5345 <https://github.com/pypa/pipenv/issues/5345>`_
Relates to dev process changes
------------------------------
- Silence majority of pytest.mark warnings by registering custom marks. Can view a list of custom marks by running ``pipenv run pytest --markers``
2022.10.4 (2022-10-04)
======================
Pipenv 2022.10.4 (2022-10-04)
-1
View File
@@ -1 +0,0 @@
New pipfiles show python_full_version under [requires] if specified. Previously creating a new pipenv project would only specify in the Pipfile the major and minor version, i.e. "python_version = 3.7". Now if you create a new project with a fully named python version it will record both in the Pipfile. So: "python_version = 3.7" and "python_full_version = 3.7.2"
-1
View File
@@ -1 +0,0 @@
Silence majority of pytest.mark warnings by registering custom marks. Can view a list of custom marks by running ``pipenv run pytest --markers``
+1 -1
View File
@@ -2,4 +2,4 @@
# // ) ) / / // ) ) //___) ) // ) ) || / /
# //___/ / / / //___/ / // // / / || / /
# // / / // ((____ // / / ||/ /
__version__ = "2022.10.5.dev0"
__version__ = "2022.10.9"
+131 -22
View File
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.TH "PIPENV" "1" "Oct 04, 2022" "2022.10.4" "pipenv"
.TH "PIPENV" "1" "Oct 09, 2022" "2022.10.9" "pipenv"
.SH NAME
pipenv \- pipenv Documentation
\fI\%\fP\fI\%\fP\fI\%\fP
@@ -453,6 +453,18 @@ You might want to set \fBexport PIPENV_VENV_IN_PROJECT=1\fP in your .bashrc/.zsh
.sp
Congratulations, you now know how to install and use Python packages! ✨ 🍰 ✨
.SS Release and Version History
.SS 2022.10.9 (2022\-10\-09)
.SS Pipenv 2022.10.9 (2022\-10\-09)
.SS Behavior Changes
.INDENT 0.0
.IP \(bu 2
New pipfiles show python_full_version under [requires] if specified. Previously creating a new pipenv project would only specify in the Pipfile the major and minor version, i.e. "python_version = 3.7". Now if you create a new project with a fully named python version it will record both in the Pipfile. So: "python_version = 3.7" and "python_full_version = 3.7.2" \fI\%#5345\fP
.UNINDENT
.SS Relates to dev process changes
.INDENT 0.0
.IP \(bu 2
Silence majority of pytest.mark warnings by registering custom marks. Can view a list of custom marks by running \fBpipenv run pytest \-\-markers\fP
.UNINDENT
.SS 2022.10.4 (2022\-10\-04)
.SS Pipenv 2022.10.4 (2022\-10\-04)
.SS Bug Fixes
@@ -2976,6 +2988,46 @@ All sub\-dependencies will get added to the \fBPipfile.lock\fP as well. Sub\-dep
\fBPipfile.lock\fP if you leave the \fB\-e\fP option out.
.UNINDENT
.UNINDENT
.SS Specifying Package Categories
.sp
Originally pipenv supported only two package groups: \fBpackages\fP and \fBdev\-packages\fP in the \fBPipfile\fP which mapped to \fBdefault\fP and \fBdevelop\fP in the \fBPipfile.lock\fP\&. Support for additional named categories has been added such that arbitrary named groups can utilized across the available pipenv commands.
.sp
\fBNOTE:\fP
.INDENT 0.0
.INDENT 3.5
The name will be the same between \fBPipfile\fP and lock file, however to support the legacy naming convention it is not possible to have an additional group named \fBdefault\fP or \fBdevelop\fP in the \fBPipfile\fP\&.
.UNINDENT
.UNINDENT
.sp
By default \fBpipenv lock\fP will lock all known package categorises; to specify locking only specific groups use the \fB\-\-categories\fP argument.
The command should process the package groups in the order specified.
.sp
Example usages:
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
# single category
pipenv install six \-\-catetgories prereq
# multiple categories
pipenv sync \-\-categories="prereq packages"
# lock and uninstall examples
pipenv lock \-\-categories="prereq dev\-packages"
pipenv uninstall six \-\-categories prereq
.ft P
.fi
.UNINDENT
.UNINDENT
.sp
\fBNOTE:\fP
.INDENT 0.0
.INDENT 3.5
The \fBpackages\fP/\fBdefault\fP specifiers are used to constrain all other categories just as they have done for \fBdev\-packages\fP/\fBdevelop\fP category. However this is the only way constraints are applied \-\- the presence of other named groups do not constraint each other, which means it is possible to define conflicting package versions across groups. This may be desired in some use cases where users only are installing groups specific to their system platform.
.UNINDENT
.UNINDENT
.SS Environment Management with Pipenv
.sp
The three primary commands you\(aqll use in managing your pipenv environment are
@@ -3619,7 +3671,7 @@ $ pipenv \-\-python=/path/to/python \-\-site\-packages
.sp
Sometimes, you would want to generate a requirements file based on your current
environment, for example to include tooling that only supports requirements.txt.
You can convert a \fBPipfile\fP and \fBPipfile.lock\fP into a \fBrequirements.txt\fP
You can convert a \fBPipfile.lock\fP into a \fBrequirements.txt\fP
file very easily.
.sp
Let\(aqs take this \fBPipfile\fP:
@@ -3631,29 +3683,80 @@ Let\(aqs take this \fBPipfile\fP:
[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"
[packages]
requests = {version="*"}
requests = {version="==2.18.4"}
[dev\-packages]
pytest = {version="*"}
pytest = {version="==3.2.3"}
.ft P
.fi
.UNINDENT
.UNINDENT
.sp
And generate a set of requirements out of it with only the default dependencies:
Which generates a \fBPipfile.lock\fP upon completion of running \fBpipenv lock\(ga\fP similar to:
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
{
"_meta": {
"hash": {
"sha256": "4b81df812babd4e54ba5a4086714d7d303c1c3f00d725c76e38dd58cbd360f4e"
},
"pipfile\-spec": 6,
"requires": {},
"sources": [
{
"name": "pypi",
"url": "https://pypi.python.org/simple",
"verify_ssl": true
}
]
},
"default": {
... snipped ...
"requests": {
"hashes": [
"sha256:6a1b267aa90cac58ac3a765d067950e7dbbf75b1da07e895d1f594193a40a38b",
"sha256:9c443e7324ba5b85070c4a818ade28bfabedf16ea10206da1132edaa6dda237e"
],
"index": "pypi",
"version": "==2.18.4"
},
... snipped ...
},
"develop": {
... snipped ...
"pytest": {
"hashes": [
"sha256:27fa6617efc2869d3e969a3e75ec060375bfb28831ade8b5cdd68da3a741dc3c",
"sha256:81a25f36a97da3313e1125fce9e7bbbba565bc7fec3c5beb14c262ddab238ac1"
],
"index": "pypi",
"version": "==3.2.3"
}
... snipped ...
}
.ft P
.fi
.UNINDENT
.UNINDENT
.sp
Given the \fBPipfile.lock\fP exists, you may generate a set of requirements out of it with the default dependencies:
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
$ pipenv requirements
\-i https://pypi.org/simple
\-i https://pypi.python.org/simple
certifi==2022.9.24 ; python_version >= \(aq3.6\(aq
chardet==3.0.4
requests==2.18.4
certifi==2017.7.27.1
idna==2.6
requests==2.18.4
urllib3==1.22
.ft P
.fi
@@ -3668,14 +3771,16 @@ development dependencies:
.nf
.ft C
$ pipenv requirements \-\-dev
\-i https://pypi.org/simple
chardet==3.0.4
requests==2.18.4
certifi==2017.7.27.1
idna==2.6
urllib3==1.22
py==1.4.34
\-i https://pypi.python.org/simple
colorama==0.4.5 ; sys_platform == \(aqwin32\(aq
py==1.11.0 ; python_version >= \(aq2.7\(aq and python_version not in \(aq3.0, 3.1, 3.2, 3.3, 3.4\(aq
pytest==3.2.3
setuptools==65.4.1 ; python_version >= \(aq3.7\(aq
certifi==2022.9.24 ; python_version >= \(aq3.6\(aq
chardet==3.0.4
idna==2.6
requests==2.18.4
urllib3==1.22
.ft P
.fi
.UNINDENT
@@ -3690,9 +3795,11 @@ flag:
.nf
.ft C
$ pipenv requirements \-\-dev\-only
\-i https://pypi.org/simple
py==1.4.34
\-i https://pypi.python.org/simple
colorama==0.4.5 ; sys_platform == \(aqwin32\(aq
py==1.11.0 ; python_version >= \(aq2.7\(aq and python_version not in \(aq3.0, 3.1, 3.2, 3.3, 3.4\(aq
pytest==3.2.3
setuptools==65.4.1 ; python_version >= \(aq3.7\(aq
.ft P
.fi
.UNINDENT
@@ -3711,16 +3818,18 @@ used to write them to a file:
$ pipenv requirements > requirements.txt
$ pipenv requirements \-\-dev\-only > dev\-requirements.txt
$ cat requirements.txt
\-i https://pypi.org/simple
\-i https://pypi.python.org/simple
certifi==2022.9.24 ; python_version >= \(aq3.6\(aq
chardet==3.0.4
requests==2.18.4
certifi==2017.7.27.1
idna==2.6
requests==2.18.4
urllib3==1.22
$ cat dev\-requirements.txt
\-i https://pypi.org/simple
py==1.4.34
\-i https://pypi.python.org/simple
colorama==0.4.5 ; sys_platform == \(aqwin32\(aq
py==1.11.0 ; python_version >= \(aq2.7\(aq and python_version not in \(aq3.0, 3.1, 3.2, 3.3, 3.4\(aq
pytest==3.2.3
setuptools==65.4.1 ; python_version >= \(aq3.7\(aq
.ft P
.fi
.UNINDENT