[Git][debian-gis-team/pyepr][upstream] New upstream version 1.1.5

Antonio Valentino (@antonio.valentino) gitlab at salsa.debian.org
Sat Oct 28 15:58:40 BST 2023



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


Commits:
483cab2d by Antonio Valentino at 2023-10-28T14:49:02+00:00
New upstream version 1.1.5
- - - - -


11 changed files:

- .github/workflows/ci.yml
- .github/workflows/wheels.yml
- Makefile
- README.rst
- doc/NEWS.rst
- doc/index.rst
- doc/interactive_use.rst
- pyproject.toml
- − setup.cfg
- setup.py
- src/epr.pyx


Changes:

=====================================
.github/workflows/ci.yml
=====================================
@@ -8,7 +8,7 @@ on:
   push:
   pull_request:
   schedule:
-    - cron: '2 1 * * 1'
+    - cron: '2 1 3 * *'
 
 jobs:
   build:
@@ -18,13 +18,13 @@ jobs:
       fail-fast: false
       matrix:
         os: [ubuntu-latest, macos-latest, windows-latest]
-        python-version: ['3.7', '3.8', '3.9', '3.10', '3.11']
-        include:
-          - os: ubuntu-latest
-            python-version: pypy3.9
+        python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']
+        # include:
+        #   - os: ubuntu-latest
+        #     python-version: 'pypy3.9'
 
     steps:
-    - uses: actions/checkout at v3
+    - uses: actions/checkout at v4
       with:
         fetch-depth: 0
         submodules: true
@@ -55,7 +55,7 @@ jobs:
     runs-on: ubuntu-latest
 
     steps:
-    - uses: actions/checkout at v3
+    - uses: actions/checkout at v4
       with:
         fetch-depth: 0
         submodules: true
@@ -67,8 +67,10 @@ jobs:
         python -m pip install --upgrade setuptools pip wheel
         python -m pip install --upgrade wcwidth
     - name: Build and install
+      env:
+        PYEPR_EPRAPI_SRC: ""
       run: |
-        python -m pip install --install-option='--epr-api-src=""' .[test]
+        python -m pip install .[test]
     - name: Test with pytest
       run: |
         python -c "\
@@ -91,10 +93,10 @@ jobs:
 
     env:
       OS: ubuntu-latest
-      PYTHON: '3.9'
+      PYTHON: '3.11'
 
     steps:
-    - uses: actions/checkout at v3
+    - uses: actions/checkout at v4
       with:
         fetch-depth: 0
         submodules: true
@@ -111,7 +113,7 @@ jobs:
         make coverage
     - name: Print info
       run: |
-        python -c "\
+        env PYTHONPATH=src python -c "\
         import sys, epr, numpy as np;\
         print('PyEPR: %s' % epr.__version__);\
         print('EPR API: %s' % epr.EPR_C_API_VERSION);\


=====================================
.github/workflows/wheels.yml
=====================================
@@ -16,7 +16,7 @@ jobs:
         os: [ubuntu-latest, windows-latest, macOS-latest]
 
     steps:
-      - uses: actions/checkout at v3
+      - uses: actions/checkout at v4
         with:
           fetch-depth: 0
           submodules: true
@@ -25,14 +25,11 @@ jobs:
       - uses: actions/setup-python at v4
         with:
           python-version: "3.x"
-      - name: Install cibuildwheel
-        run: python -m pip install cibuildwheel
 
       - name: Build wheels
-        uses: pypa/cibuildwheel at v2.11.4
+        uses: pypa/cibuildwheel at v2.16.2
         env:
-          # numpy only has pp38 currently
-          CIBW_SKIP: cp36-* pp37-* pp39-*
+          CIBW_SKIP: cp36-* cp37-* pp* cp312-*i686*
 
       - uses: actions/upload-artifact at v3
         with:


=====================================
Makefile
=====================================
@@ -60,7 +60,7 @@ doc:
 
 clean:
 	$(PYTHON) setup.py clean --all
-	$(RM) -r build dist pyepr.egg-info wheelhouse
+	$(RM) -r build dist src/pyepr.egg-info wheelhouse
 	$(RM) -r $$(find doc -name __pycache__) $$(find tests -name __pycache__)
 	$(RM) MANIFEST src/*.c src/*.o *.so
 	$(RM) tests/*.py[co]
@@ -85,7 +85,7 @@ ext-coverage: src/epr.pyx
 	env PYEPR_COVERAGE=TRUE $(PYTHON) setup.py build_ext --inplace
 
 coverage: clean ext-coverage
-	$(PYTHON) -m pytest --cov --cov-report=term --cov-report=html
+	env PYTHONPATH=src $(PYTHON) -m pytest --cov --cov-report=term --cov-report=html
 
 debug:
 	$(PYTHON)d setup.py build_ext --inplace --debug


=====================================
README.rst
=====================================
@@ -2,13 +2,13 @@
 ENVISAT Product Reader Python API
 =================================
 
-:HomePage:  https://avalentino.github.io/pyepr
+:HomePage:  https://pyepr.readthedocs.io
 :Author:    Antonio Valentino
 :Contact:   antonio.valentino at tiscali.it
 :Copyright: 2011-2023, Antonio Valentino <antonio.valentino at tiscali.it>
-:Version:   1.1.4
+:Version:   1.1.5
 
-.. image:: https://github.com/avalentino/pyepr/actions/workflows/python-package.yml/badge.svg?branch=master
+.. image:: https://github.com/avalentino/pyepr/actions/workflows/ci.yml/badge.svg?branch=master
     :alt: CI status page
     :target: https://github.com/avalentino/pyepr/actions
 
@@ -57,7 +57,24 @@ any data field contained in a product file.
 .. _ESA: https://earth.esa.int
 
 
-Requirements
+Links
+=====
+
+* HTML documentation (`stable <https://pyepr.readthedocs.io/en/stable/>`_,
+  `latest <https://pyepr.readthedocs.io/en/latest/>`_)
+* `PyEPR <http://github.com/avalentino/pyepr>`_ project page on
+  `github <https://github.com>`_
+* `source browser <http://github.com/avalentino/pyepr>`_
+* `commit history <https://github.com/avalentino/pyepr/commits>`_
+* `issue tracker <https://github.com/avalentino/pyepr/issues>`_
+* `CI status page <https://github.com/avalentino/pyepr/actions>`_
+* `PyEPR project page on PyPi <http://pypi.python.org/pypi/pyepr>`_
+* EPR-API `project page <https://github.com/bcdev/epr-api>`_
+* EPR-API `documentation
+  <https://rawgithub.com/bcdev/epr-api/master/docs/epr_c_api/index.html>`_
+
+
+Dependencies
 ============
 
 In order to use PyEPR it is needed that the following software are
@@ -69,12 +86,14 @@ correctly installed and configured:
   with a copy of the EPR C API sources)
 * a reasonably updated C compiler (build only)
 * Cython_ >= 0.29 (build only)
+* pytest_ (optional and only needed for testing)
 
 .. _Python3: Python_
 .. _PyPy3: https://www.pypy.org
 .. _numpy: https://numpy.org
 .. _gcc: https://gcc.gnu.org
 .. _Cython: https://cython.org
+.. _pytest: https://pytest.org
 
 
 Download


=====================================
doc/NEWS.rst
=====================================
@@ -1,6 +1,15 @@
 Change history
 ==============
 
+PyEPR 1.1.5 (15/10/2023)
+------------------------
+
+* Get rid of the deprecated `pip --install-options`.
+* No longer ise the deprecated Cython_ `IF` statement.
+* Build wheels for Python 3.12.
+* Move project metadata to `pyproject.toml`
+
+
 PyEPR 1.1.4 (07/01/2023)
 ------------------------
 


=====================================
doc/index.rst
=====================================
@@ -9,7 +9,7 @@ ENVISAT Product Reader Python API
     \clearpage
 
 
-:HomePage:  https://avalentino.github.io/pyepr
+:HomePage:  https://pyepr.readthedocs.io
 :Author:    Antonio Valentino
 :Contact:   antonio.valentino at tiscali.it
 :Copyright: 2011-2023, Antonio Valentino
@@ -40,6 +40,24 @@ ENVISAT Product Reader Python API
     .. index:: ENVISAT, MERIS, AASTR, ASAR
 
 
+    Project Links
+    =============
+
+    * HTML documentation (`stable <https://pyepr.readthedocs.io/en/stable/>`_,
+      `latest <https://pyepr.readthedocs.io/en/latest/>`_)
+    * PyEPR_ project page on `github <https://github.com>`_
+    * `source browser`__
+    * `commit history <https://github.com/avalentino/pyepr/commits>`_
+    * `issue tracker <https://github.com/avalentino/pyepr/issues>`_
+    * `CI status page <https://github.com/avalentino/pyepr/actions>`_
+    * `PyEPR project page on PyPi <http://pypi.python.org/pypi/pyepr>`_
+    * EPR-API `project page <https://github.com/bcdev/epr-api>`_
+    * EPR-API `documentation
+      <https://rawgithub.com/bcdev/epr-api/master/docs/epr_c_api/index.html>`_
+
+    __ PyEPR_
+
+
     Documentation
     =============
 
@@ -57,11 +75,12 @@ ENVISAT Product Reader Python API
     Other versions
     ==============
 
-    Online documentation for other PyEpr_ versions:
+    Online documentation for other PyEPR_ versions:
 
     ============ ======================================================
     PyEPR latest https://pyepr.readthedocs.io/en/latest (development)
-    PyEPR 1.1.3  https://pyepr.readthedocs.io/en/v1.1.4 (latest stable)
+    PyEPR 1.1.5  https://pyepr.readthedocs.io/en/v1.1.5 (latest stable)
+    PyEPR 1.1.4  https://pyepr.readthedocs.io/en/v1.1.4
     PyEPR 1.1.3  https://pyepr.readthedocs.io/en/v1.1.3
     PyEPR 1.1.2  https://pyepr.readthedocs.io/en/v1.1.2
     PyEPR 1.1.1  https://pyepr.readthedocs.io/en/v1.1.1


=====================================
doc/interactive_use.rst
=====================================
@@ -74,7 +74,7 @@ available classes and functions::
         The raw data access makes it possible to read any data field contained
         in a product file.
 
-        .. _PyEPR: http://avalentino.github.io/pyepr
+        .. _PyEPR: https://pyepr.readthedocs.io
         .. _Python: https://www.python.org
         .. _`EPR API`: https://github.com/bcdev/epr-api
         .. _ENVISAT: https://envisat.esa.int


=====================================
pyproject.toml
=====================================
@@ -1,10 +1,81 @@
-# See: https://pip.pypa.io/en/stable/reference/pip/#pep-517-and-518-support
 [build-system]
 requires = [
-    "setuptools >= 40.8.0",
-    "wheel",
+    "setuptools >= 61.0.0",
     "packaging",
     "cython >= 0.29.22",
     "oldest-supported-numpy",
 ]
 build-backend = "setuptools.build_meta"
+
+
+[project]
+name = "pyepr"
+authors = [
+    {name = "Antonio Valentino", email = "antonio.valentino at tiscali.it"},
+]
+description = "Python ENVISAT Product Reader API"
+requires-python = ">=3.7, <4"
+keywords = ["satellite", "reader", "envisat"]
+license = {text = "GPL-3.0-or-later"}
+classifiers = [
+    "Development Status :: 5 - Production/Stable",
+    "Environment :: Other Environment",
+    "Intended Audience :: Developers",
+    "Intended Audience :: Science/Research",
+    "License :: OSI Approved :: GNU General Public License (GPL)",
+    "Operating System :: MacOS :: MacOS X",
+    "Operating System :: Microsoft :: Windows",
+    "Operating System :: POSIX",
+    "Programming Language :: Python",
+    "Programming Language :: Python :: 3",
+    "Programming Language :: Python :: 3 :: Only",
+    "Programming Language :: Python :: Implementation :: CPython",
+    "Programming Language :: Python :: Implementation :: PyPy",
+    "Programming Language :: Cython",
+    "Topic :: Software Development :: Libraries",
+    "Topic :: Scientific/Engineering",
+    "Topic :: Scientific/Engineering :: GIS",
+]
+dependencies = [
+    "numpy>=1.7",
+]
+dynamic = ["version"]
+
+
+[project.readme]
+text = """\
+PyEPR provides Python_ bindings for the ENVISAT_ Product Reader C API
+(`EPR API`_) for reading satellite data from ENVISAT_
+ESA_ (European Space Agency) mission.
+
+PyEPR, as well as the `EPR API`_ for C, supports ENVISAT_ MERIS, AATSR
+Level 1B and Level 2 and also ASAR data products. It provides access to
+the data either on a geophysical (decoded, ready-to-use pixel samples)
+or on a raw data layer. The raw data access makes it possible to read
+any data field contained in a product file.
+
+.. _Python: https://www.python.org
+.. _`EPR API`: https://github.com/bcdev/epr-api
+.. _ENVISAT: https://envisat.esa.int
+.. _ESA: https://earth.esa.int
+"""
+content-type = "text/x-rst"
+
+
+[project.optional-dependencies]
+docs = ["sphinx", "sphinx_rtd_theme", "ipython"]
+test = ["pytest", "packaging"]
+all = ["pyepr[docs]", "pyepr[test]"]
+
+
+[project.urls]
+homepage = "https://github.com/avalentino/pyepr"
+documentation = "https://pyepr.readthedocs.io"
+repository = "https://github.com/avalentino/pyepr.git"
+changelog = "https://github.com/avalentino/pyepr/blob/master/doc/NEWS.rst"
+issues = "https://github.com/avalentino/pyepr/issues"
+
+
+[tool.setuptools]
+zip-safe = false
+# license-files = ["LICENSE"]


=====================================
setup.cfg deleted
=====================================
@@ -1,66 +0,0 @@
-[metadata]
-name = pyepr
-# version = get_version(os.path.join('src', 'epr.pyx')),
-description = Python ENVISAT Product Reader API
-long_description = PyEPR provides Python_ bindings for the ENVISAT
-    Product Reader C API (`EPR API`_) for reading satellite data from ENVISAT_
-    ESA_ (European Space Agency) mission.
-
-    PyEPR, as well as the `EPR API`_ for C, supports ENVISAT_ MERIS, AATSR
-    Level 1B and Level 2 and also ASAR data products. It provides access to
-    the data either on a geophysical (decoded, ready-to-use pixel samples)
-    or on a raw data layer. The raw data access makes it possible to read
-    any data field contained in a product file.
-
-    .. _Python: https://www.python.org
-    .. _`EPR API`: https://github.com/bcdev/epr-api
-    .. _ENVISAT: https://envisat.esa.int
-    .. _ESA: https://earth.esa.int
-
-long_description_content_type = text/x-rst
-url = http://avalentino.github.io/pyepr
-download_url = http://pypi.python.org/pypi/pyepr
-author = Antonio Valentino
-author_email = antonio.valentino at tiscali.it
-license = GPL3
-license_files = LICENSE.txt
-classifiers =
-    Development Status :: 5 - Production/Stable
-    Environment :: Other Environment
-    Intended Audience :: Developers
-    Intended Audience :: Science/Research
-    License :: OSI Approved :: GNU General Public License (GPL)
-    Operating System :: MacOS :: MacOS X
-    Operating System :: Microsoft :: Windows
-    Operating System :: POSIX
-    Programming Language :: Python
-    Programming Language :: Python :: 3
-    Programming Language :: Python :: 3 :: Only
-    Programming Language :: Python :: Implementation :: CPython
-    Programming Language :: Python :: Implementation :: PyPy
-    Programming Language :: Cython
-    Topic :: Software Development :: Libraries
-    Topic :: Scientific/Engineering
-    Topic :: Scientific/Engineering :: GIS
-keywords = satellite, reader, envisat
-platforms = any
-project_urls =
-    Documentation = http://avalentino.github.io/pyepr/html/index.html
-    Source = https://github.com/avalentino/pyepr
-    Tracker = https://github.com/avalentino/pyepr/issues
-
-[options]
-install_requires = numpy>=1.7
-python_requires = >=3.7, <4
-zip_safe = False
-
-[options.extras_require]
-docs =
-    sphinx_rtd_theme
-    ipython
-test =
-    pytest
-    packaging
-all =
-    pyepr[docs]
-    pyepr[test]


=====================================
setup.py
=====================================
@@ -153,4 +153,5 @@ if __name__ == "__main__":
         print(msg)
         print()
 
+    print(config)
     setuptools.setup(**config)


=====================================
src/epr.pyx
=====================================
@@ -33,28 +33,20 @@ products. It provides access to the data either on a geophysical
 The raw data access makes it possible to read any data field contained
 in a product file.
 
-.. _PyEPR: https://avalentino.github.io/pyepr
+.. _PyEPR: https://pyepr.readthedocs.io
 .. _Python: https://www.python.org
 .. _`EPR API`: https://github.com/bcdev/epr-api
 .. _ENVISAT: http://envisat.esa.int
 .. _ESA: http://earth.esa.int
 """
 
-__version__ = '1.1.4'
+__version__ = '1.1.5'
 
 from libc cimport errno
 from libc cimport stdio
 from libc.stdio cimport FILE
 from libc cimport string as cstring
-
-
-IF UNAME_SYSNAME == 'Windows':
-    cdef extern from "stdio.h" nogil:
-        int fileno "_fileno" (FILE*)
-ELSE:
-    # posix
-    cdef extern from "stdio.h" nogil:
-        int fileno(FILE*)
+from posix.stdio cimport fileno
 
 
 from epr cimport *



View it on GitLab: https://salsa.debian.org/debian-gis-team/pyepr/-/commit/483cab2d68e7c05e597ce70b7cfe3dea677a86c3

-- 
View it on GitLab: https://salsa.debian.org/debian-gis-team/pyepr/-/commit/483cab2d68e7c05e597ce70b7cfe3dea677a86c3
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/20231028/56b10ab8/attachment-0001.htm>


More information about the Pkg-grass-devel mailing list