Print

Print


  Branch: refs/heads/master
  Home:   https://github.com/xrootd/xrootd
  Commit: 0fb70b13d99be64cbbf85d0ce5eb5342bbe79d59
      https://github.com/xrootd/xrootd/commit/0fb70b13d99be64cbbf85d0ce5eb5342bbe79d59
  Author: Matthew Feickert <[log in to unmask]>
  Date:   2022-01-28 (Fri, 28 Jan 2022)

  Changed paths:
    M bindings/python/setup.py.in
    M packaging/wheel/setup.py

  Log Message:
  -----------
  [pip] Sanitize version to be PEP 440 compliant

To avoid errors in modern versions of pip, ensure that the version name
created for the Python bindings is sanitized to be compliant with PEP 440

c.f.:
* https://www.python.org/dev/peps/pep-0440/
* pip GitHub Issue #8368

This essentially means that the version number needs to pass
`pip._vendor.packaging.version.Version()`

Example:

```
from pip._vendor.packaging.version import Version
Version("v20220128-34c8a39")  # pip._vendor.packaging.version.InvalidVersion: Invalid version: 'v20220128-34c8a39'
Version("2022.128")  # <Version('2022.128')>
Version("2022.128+a28a91c")  # <Version('2022.128+a28a91c')>
Version("6.0.0")  # <Version('6.0.0')>
```


  Commit: 0e8bc8c5cda6a62f7f8ae9b9baa987e7030d302f
      https://github.com/xrootd/xrootd/commit/0e8bc8c5cda6a62f7f8ae9b9baa987e7030d302f
  Author: Matthew Feickert <[log in to unmask]>
  Date:   2022-01-28 (Fri, 28 Jan 2022)

  Changed paths:
    M bindings/python/setup.py.in
    M packaging/wheel/setup.py

  Log Message:
  -----------
  [Python] Use context manager for opening files


  Commit: 2cc617c298e1d207fc384c1b0d89769fc9b0dd2b
      https://github.com/xrootd/xrootd/commit/2cc617c298e1d207fc384c1b0d89769fc9b0dd2b
  Author: Matthew Feickert <[log in to unmask]>
  Date:   2022-01-28 (Fri, 28 Jan 2022)

  Changed paths:
    M .github/workflows/build.yml

  Log Message:
  -----------
  [CI] Move xrootd.egg-info off PYTHONPATH

As discovered in XRootD Issue #1604 there are instances where if a Git tag
is created, then the current xrootd.egg-info that is generated in the top
level of the repository by the current packaging/wheel/publish.sh workflow
will pollute the PYTHONPATH (which includes the current working directory by
default --- this is one of the reasons src directory structures are currently
recommended by the PyPA) causing problems with trying to install the built sdist
from the top level of the repo with `python3 -m pip install dist/xrootd*.tar.gz`.

Ideally the publish.sh workflow should be refactored to make this not a problem,
but for the time being just use the easy workaround of changing paths so that the
xrootd.egg-info directory is not on PYTHONPATH and install the sdist normally.


  Commit: d3f9686c2671171bc77b6272314f69f00e716260
      https://github.com/xrootd/xrootd/commit/d3f9686c2671171bc77b6272314f69f00e716260
  Author: simonmichal <[log in to unmask]>
  Date:   2022-02-03 (Thu, 03 Feb 2022)

  Changed paths:
    M .github/workflows/build.yml
    M bindings/python/setup.py.in
    M packaging/wheel/setup.py

  Log Message:
  -----------
  Merge pull request #1605 from matthewfeickert/fix/sanitize-python-package-name-for-PEP-440

fix: Sanitize Python version to be PEP 440 compliant


Compare: https://github.com/xrootd/xrootd/compare/c1e265ee13b3...d3f9686c2671

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1