[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v4 06/24] python: add VERSION file
From: |
Cleber Rosa |
Subject: |
Re: [PATCH v4 06/24] python: add VERSION file |
Date: |
Tue, 16 Feb 2021 21:26:09 -0500 |
On Thu, Feb 11, 2021 at 01:58:38PM -0500, John Snow wrote:
> Python infrastructure as it exists today is not capable reliably of
> single-sourcing a package version from a parent directory. The authors
> of pip are working to correct this, but as of today this is not possible.
>
> The problem is that when using pip to build and install a python
> package, it copies files over to a temporary directory and performs its
> build there. This loses access to any information in the parent
> directory, including git itself.
>
> Further, Python versions have a standard (PEP 440) that may or may not
> follow QEMU's versioning. In general, it does; but naturally QEMU does
> not follow PEP 440. To avoid any automatically-generated conflict, a
> manual version file is preferred.
>
>
> I am proposing:
>
> - Python tooling follows the QEMU version, indirectly, but with a major
> version of 0 to indicate that the API is not expected to be
> stable. This would mean version 0.5.2.0, 0.5.1.1, 0.5.3.0, etc.
>
> - In the event that a Python package needs to be updated independently
> of the QEMU version, a pre-release alpha version should be preferred,
> but *only* after inclusion to the qemu development or stable branches.
>
> e.g. 0.5.2.0a1, 0.5.2.0a2, and so on should be preferred prior to
> 5.2.0's release.
>
> - The Python core tooling makes absolutely no version compatibility
> checks or constraints. It *may* work with releases of QEMU from the
> past or future, but it is not required to.
>
> i.e., "qemu.machine" will, for now, remain in lock-step with QEMU.
>
> - We reserve the right to split the qemu package into independently
> versioned subpackages at a later date. This might allow for us to
> begin versioning QMP independently from QEMU at a later date, if
> we so choose.
>
>
> Implement this versioning scheme by adding a VERSION file and setting it
> to 0.6.0.0a1.
>
> Signed-off-by: John Snow <jsnow@redhat.com>
> ---
> python/VERSION | 1 +
> python/setup.cfg | 1 +
> 2 files changed, 2 insertions(+)
> create mode 100644 python/VERSION
>
Reviewed-by: Cleber Rosa <crosa@redhat.com>
signature.asc
Description: PGP signature
- Re: [PATCH v4 03/24] python: create qemu packages, (continued)
- [PATCH v4 05/24] python: add qemu package installer, John Snow, 2021/02/11
- [PATCH v4 08/24] python: Add pipenv support, John Snow, 2021/02/11
- [PATCH v4 06/24] python: add VERSION file, John Snow, 2021/02/11
- Re: [PATCH v4 06/24] python: add VERSION file,
Cleber Rosa <=
- [PATCH v4 17/24] python/qemu: add isort to pipenv, John Snow, 2021/02/11
- [PATCH v4 09/24] python: add pylint import exceptions, John Snow, 2021/02/11
- [PATCH v4 14/24] python: move mypy.ini into setup.cfg, John Snow, 2021/02/11
- [PATCH v4 10/24] python: move pylintrc into setup.cfg, John Snow, 2021/02/11
- [PATCH v4 11/24] python: add pylint to pipenv, John Snow, 2021/02/11