[Git][debian-gis-team/pykdtree][upstream] New upstream version 1.3.6+ds

Antonio Valentino (@antonio.valentino) gitlab at salsa.debian.org
Mon Oct 31 17:44:13 GMT 2022



Antonio Valentino pushed to branch upstream at Debian GIS Project / pykdtree


Commits:
0880aa2f by Antonio Valentino at 2022-10-31T17:36:33+00:00
New upstream version 1.3.6+ds
- - - - -


4 changed files:

- .github/workflows/deploy-wheels.yml
- README.rst
- scripts/build-manylinux-wheels.sh
- setup.py


Changes:

=====================================
.github/workflows/deploy-wheels.yml
=====================================
@@ -1,31 +1,49 @@
 ---
-name: Deploy wheels
+name: Build Test Deploy
 
 on:
   push:
+  pull_request:
   release:
     types:
       - published
 jobs:
-  build:
+  build_sdist:
+    runs-on: ubuntu-latest
+    steps:
+      - name: Checkout source
+        uses: actions/checkout at v2
+
+      - name: Create sdist
+        shell: bash -l {0}
+        run: |
+          python -m pip install -q build
+          python -m build -s
 
+      - name: Upload sdist to build artifacts
+        uses: actions/upload-artifact at v2
+        with:
+          name: sdist
+          path: dist/*.tar.gz
+
+  build_wheels:
     runs-on: ${{ matrix.os }}
     strategy:
       fail-fast: false
       matrix:
         os: [windows-latest, macos-latest]
-        python-version: ["3.7", "3.8", "3.9", "3.10"]
+        python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
         include:
           # Using pythons inside a docker image to provide all the Linux
           # python-versions permutations.
-          - name: manylinux2010 64-bit
+          - name: manylinux_2_24 64-bit
             os: ubuntu-latest
             python-version: 3.8
-            docker-image: manylinux2010_x86_64
-          - name: manylinux2010 32-bit
+            docker-image: manylinux_2_24_x86_64
+          - name: manylinux_2_24 32-bit
             os: ubuntu-latest
             python-version: 3.8
-            docker-image: manylinux2010_i686
+            docker-image: manylinux_2_24_i686
 
     steps:
       - uses: actions/checkout at v2
@@ -33,7 +51,7 @@ jobs:
           git fetch --prune --unshallow
 
       - name: Set up Python ${{ matrix.python-version }}
-        uses: actions/setup-python at v1
+        uses: actions/setup-python at v4
         with:
           python-version: "${{ matrix.python-version }}"
 
@@ -63,14 +81,30 @@ jobs:
             /io/scripts/build-manylinux-wheels.sh
 
       - name: Upload wheel(s) as build artifacts
-        uses: actions/upload-artifact at v2
+        uses: actions/upload-artifact at v3
         with:
           name: wheels
           path: dist/*.whl
 
+  upload_pypi:
+    needs: [build_sdist, build_wheels]
+    runs-on: ubuntu-latest
+    steps:
+      - name: Download sdist artifact
+        uses: actions/download-artifact at v3
+        with:
+          name: sdist
+          path: dist
+      - name: Download wheels artifact
+        uses: actions/download-artifact at v3
+        with:
+          name: wheels
+          path: dist
       - name: Publish package to PyPI
         if: github.event.action == 'published'
-        env:
-          TWINE_USERNAME: ${{ secrets.pypi_username }}
-          TWINE_PASSWORD: ${{ secrets.pypi_password }}
-        run: twine upload --skip-existing dist/*.whl
+        uses: pypa/gh-action-pypi-publish at v1.4.1
+        with:
+          user: ${{ secrets.pypi_username }}
+          password: ${{ secrets.pypi_password }}
+          skip_existing: true
+


=====================================
README.rst
=====================================
@@ -1,5 +1,5 @@
-.. image:: https://github.com/storpipfugl/pykdtree/workflows/deploy-wheels/badge.svg?branch=master
-    :target: https://github.com/storpipfugl/pykdtree/actions?query=workflow%3A%22deploy-wheels%22
+.. image:: https://github.com/storpipfugl/pykdtree/actions/workflows/deploy-wheels.yml/badge.svg?branch=master
+    :target: https://github.com/storpipfugl/pykdtree/actions/workflows/deploy-wheels.yml
 
 ========
 pykdtree
@@ -19,40 +19,72 @@ Queries are optionally multithreaded using OpenMP.
 Installation
 ------------
 
-By default pykdtree is built with OpenMP enabled queries using libgomp except
-on OSX systems using the clang compiler (conda environments use a separate
-compiler).
+Pykdtree can be installed via pip:
 
 .. code-block:: bash
 
-    $ cd <pykdtree_dir>
-    $ python setup.py install
+    pip install pykdtree
+    
+Or, if in a conda-based environment, with conda from the conda-forge channel:
 
-If it fails with undefined compiler flags or you want to use another OpenMP
-implementation please modify setup.py at the indicated point to match your system.
+.. code-block:: bash
 
-Building without OpenMP support is controlled by the USE_OMP environment variable
+    conda install -c conda-forge pykdtree
+    
+Note that by default these packages are only built with OpenMP for linux platforms.
+To attempt to build from source with OpenMP support do:
+
+.. code-block:: bash
+
+    export USE_OMP=1
+    pip install --no-binary pykdtree pykdtree
+    
+This may not work on some systems that don't have OpenMP installed. See the below development
+instructions for more guidance. Disabling OpenMP can be accomplished by setting `USE_OMP` to `0`
+in the above commands.
+
+Development Installation
+------------------------
+
+If you wish to contribute to pykdtree then it is a good idea to install from source
+so you can quickly see the effects of your changes.
+By default pykdtree is built with OpenMP enabled queries on unix-like systems.
+On linux this is done using libgomp. On OSX systems OpenMP is provided using the
+clang compiler (conda environments use a separate compiler).
 
 .. code-block:: bash
 
     $ cd <pykdtree_dir>
-    $ export USE_OMP=0
-    $ python setup.py install
+    $ pip install -e .
 
-Note evironment variables are by default not exported when using sudo so in this case do
+This installs pykdtree in an "editable" mode where changes to the Python files
+are automatically reflected when running a new python interpreter instance
+(ex. running a python script that uses pykdtree). It does not automatically rebuild
+or recompile the `.mako` templates and `.pyx` Cython code in pykdtree. Editing
+these files requires running the `pykdtree/render_template.py` script and then
+rerunning the pip command above to recompile the Cython files.
+
+If installation fails with undefined compiler flags or you want to use another OpenMP
+implementation you may need to modify setup.py or specify additional pip command line
+flags to match the library locations on your system.
+
+Building without OpenMP support is controlled by the USE_OMP environment variable
 
 .. code-block:: bash
 
-    $ USE_OMP=0 sudo -E python setup.py install
+    $ cd <pykdtree_dir>
+    $ export USE_OMP=0
+    $ pip install -e .
 
-Pykdtree can also be installed with conda via the conda-forge channel:
+Note evironment variables are by default not exported when using sudo so in this case do
 
 .. code-block:: bash
 
-    $ conda install -c conda-forge pykdtree
+    $ USE_OMP=0 sudo -E pip install -e .
 
 Usage
 -----
+
 The usage of pykdtree is similar to scipy.spatial.cKDTree so for now refer to its documentation
 
     >>> from pykdtree.kdtree import KDTree
@@ -133,6 +165,8 @@ turned off by adding the following to `appveyor.yml` in the
 
 Changelog
 ---------
+v1.3.6 : Fix Python 3.11 compatibility and build Python 3.11 wheels
+
 v1.3.5 : Build Python 3.10 wheels and other CI updates
 
 v1.3.4 : Fix Python 3.9 wheels not being built for linux


=====================================
scripts/build-manylinux-wheels.sh
=====================================
@@ -25,7 +25,7 @@ mkdir -p /io/temp-wheels
 find /io/temp-wheels/ -type f -delete
 
 # Iterate through available pythons.
-for PY in cp3{7,8,9,10}; do
+for PY in cp3{7,8,9,10,11}; do
     for PYBIN in /opt/python/"${PY}"*/bin; do
         "${PYBIN}/pip" install -q -U setuptools wheel pytest build --cache-dir /io/pip-cache
         # Run the following in root of this repo.


=====================================
setup.py
=====================================
@@ -94,7 +94,7 @@ with open('README.rst', 'r') as readme_file:
 
 setup(
     name='pykdtree',
-    version='1.3.5',
+    version='1.3.6',
     url="https://github.com/storpipfugl/pykdtree",
     description='Fast kd-tree implementation with OpenMP-enabled queries',
     long_description=readme,



View it on GitLab: https://salsa.debian.org/debian-gis-team/pykdtree/-/commit/0880aa2fbd54b3737ed9430304b01a67eb80a993

-- 
View it on GitLab: https://salsa.debian.org/debian-gis-team/pykdtree/-/commit/0880aa2fbd54b3737ed9430304b01a67eb80a993
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-grass-devel/attachments/20221031/7e93a066/attachment-0001.htm>


More information about the Pkg-grass-devel mailing list