[Git][debian-gis-team/glymur][upstream] New upstream version 0.14.4
Antonio Valentino (@antonio.valentino)
gitlab at salsa.debian.org
Sun Oct 12 12:33:41 BST 2025
Antonio Valentino pushed to branch upstream at Debian GIS Project / glymur
Commits:
b8540293 by Antonio Valentino at 2025-10-12T11:28:51+00:00
New upstream version 0.14.4
- - - - -
18 changed files:
- .circleci/config.yml
- CHANGES.txt
- appveyor.yml
- ci/install.ps1
- ci/travis-311-no-gdal.yaml
- ci/travis-311-no-opj.yaml
- ci/travis-311.yaml
- ci/travis-313.yaml
- + ci/travis-314.yaml
- docs/source/conf.py
- docs/source/introduction.rst
- docs/source/whatsnew/0.14.rst
- glymur/jp2k.py
- glymur/jp2kr.py
- glymur/options.py
- glymur/version.py
- pyproject.toml
- tests/test_threading.py
Changes:
=====================================
.circleci/config.yml
=====================================
@@ -11,6 +11,7 @@ workflows:
- travis-311
- travis-312
- travis-313
+ - travis-314
test-template: &test-template
docker:
@@ -60,3 +61,6 @@ jobs:
travis-313:
<<: *test-template
+
+ travis-314:
+ <<: *test-template
=====================================
CHANGES.txt
=====================================
@@ -1,3 +1,9 @@
+Oct 08, 2025 - v0.14.4
+ Qualify on python 3.14
+ Add User-Agent header to powershell script for Appveyor
+ Remove remaining openjpeg<2.4 artifacts
+ Remove explicit testing of numpy 1.26
+
Jun 12, 2025 - v0.14.3
Fix DeprecationWarning upon import
=====================================
appveyor.yml
=====================================
@@ -30,6 +30,12 @@ environment:
CONDA_PY: "313"
USE_PATH_FOR_GDAL_PYTHON: "YES"
+ - CONDA_ROOT: "C:\\Miniconda3_64"
+ PYTHON_VERSION: "3.14"
+ PYTHON_ARCH: "64"
+ CONDA_PY: "314"
+ USE_PATH_FOR_GDAL_PYTHON: "YES"
+
# We always use a 64-bit machine, but can build x86 distributions
# with the PYTHON_ARCH variable (which is used by CMD_IN_ENV).
platform:
=====================================
ci/install.ps1
=====================================
@@ -7,6 +7,8 @@ $MINICONDA_URL = "http://repo.continuum.io/miniconda/"
function DownloadMiniconda ($python_version, $platform_suffix) {
$webclient = New-Object System.Net.WebClient
+ $webclient.Headers.Add("User-Agent", "Abraxis/1.0")
+
$filename = "Miniconda3-latest-Windows-" + $platform_suffix + ".exe"
$url = $MINICONDA_URL + $filename
=====================================
ci/travis-311-no-gdal.yaml
=====================================
@@ -3,11 +3,11 @@ channels:
- conda-forge
dependencies:
- python=3.11.*
- - gdal>=3.7.0,<3.8.0
+ - gdal>=3.8.0,<3.9.0
- pillow
- - libtiff>=4.5.0,<4.6.0
+ - libtiff>=4.6.0,<4.7.0
- lxml>=5.0
- - numpy>=1.26,<2.0
+ - numpy>=2.0,<2.1
- openjpeg>=2.5
- pytest-xdist
- scikit-image
=====================================
ci/travis-311-no-opj.yaml
=====================================
@@ -3,11 +3,11 @@ channels:
- conda-forge
dependencies:
- python=3.11.*
- - gdal>=3.7.0,<3.8.0
+ - gdal>=3.8.0,<3.9.0
- pillow
- - libtiff>=4.5.0,<4.6.0
+ - libtiff>=4.6.0,<4.7.0
- lxml>=5.0
- - numpy>=1.26,<2.0
+ - numpy>=2.0,<2.1
- pip
- pytest-xdist
- scikit-image
=====================================
ci/travis-311.yaml
=====================================
@@ -3,11 +3,11 @@ channels:
- conda-forge
dependencies:
- python=3.11.*
- - gdal>=3.7.0,<3.8.0
+ - gdal>=3.8.0,<3.9.0
- pillow
- - libtiff>=4.5.0,<4.6.0
+ - libtiff>=4.6.0,<4.7.0
- lxml>=5.0
- - numpy>=1.26,<2.0
+ - numpy>=2.0,<2.1
- openjpeg>=2.5
- pytest-xdist
- scikit-image
=====================================
ci/travis-313.yaml
=====================================
@@ -6,8 +6,8 @@ dependencies:
- gdal>=3.10.0,<3.11.0
- pillow
- libtiff>=4.7.0,<4.8.0
- - lxml>=5.3.0
- - numpy>=2.1
- - openjpeg>=2.5
+ - lxml>=5.3.0,<6.0.0
+ - numpy>=2.1,<2.3.3
+ - openjpeg>=2.5.3,<2.5.4
- pytest-xdist
- scikit-image
=====================================
ci/travis-314.yaml
=====================================
@@ -0,0 +1,13 @@
+name: glymur
+channels:
+ - conda-forge
+dependencies:
+ - python>=3.14.0
+ - gdal>=3.11.0
+ - pillow
+ - libtiff>=4.7.1
+ - lxml>=6.0.2
+ - numpy>=2.3.3
+ - openjpeg>=2.5.4
+ - pytest-xdist
+ - scikit-image
=====================================
docs/source/conf.py
=====================================
@@ -81,7 +81,7 @@ copyright = '2013-2025, John Evans'
# The short X.Y version.
version = '0.14'
# The full version, including alpha/beta/rc tags.
-release = '0.14.3'
+release = '0.14.4'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
=====================================
docs/source/introduction.rst
=====================================
@@ -13,7 +13,7 @@ Certain optional JP2 boxes can also be written, including XML boxes and
XMP UUIDs. There is incomplete support for reading JPX metadata.
The current version of glymur is supported on Python versions 3.11,
-3.12, and 3.13. You should have at least version 2.4.0 of OpenJPEG.
+3.12, 3.13, and 3.14. You should have at least version 2.4.0 of OpenJPEG.
For more information about OpenJPEG, please consult http://www.openjpeg.org.
=====================================
docs/source/whatsnew/0.14.rst
=====================================
@@ -2,11 +2,20 @@
Changes in glymur 0.14
######################
+*****************
+Changes in 0.14.4
+*****************
+
+ * Qualify on python 3.14
+ * Add User-Agent header to powershell script for Appveyor
+ * Remove remaining openjpeg<2.4 artifacts
+ * Remove explicit testing of numpy 1.x
+
*****************
Changes in 0.14.3
*****************
- * Fix DeprecationWarning upon import
+ * Fix import warning
*****************
Changes in 0.14.2
=====================================
glymur/jp2k.py
=====================================
@@ -526,10 +526,10 @@ class Jp2k(Jp2kr):
This method can only be used to create JPEG 2000 images that can fit
in memory.
"""
- if version.openjpeg_version < "2.3.0":
+ if version.openjpeg_version < "2.4.0":
msg = (
- "You must have at least version 2.3.0 of OpenJPEG in order to "
- "write images."
+ "The minimum supported version of OpenJPEG is 2.4.0. "
+ f"Your version is {version.openjpeg_version}."
)
raise RuntimeError(msg)
@@ -1463,10 +1463,10 @@ class _TileWriter(object):
"""Write image data to a JP2/JPX/J2k file. Intended usage of the
various parameters follows that of OpenJPEG's opj_compress utility.
"""
- if version.openjpeg_version < "2.3.0":
+ if version.openjpeg_version < "2.4.0":
msg = (
- "You must have at least version 2.3.0 of OpenJPEG "
- "in order to write images."
+ "The minimum supported version of OpenJPEG is 2.4.0. "
+ f"Your version is {version.openjpeg_version}."
)
raise RuntimeError(msg)
=====================================
glymur/jp2kr.py
=====================================
@@ -12,7 +12,6 @@ from __future__ import annotations
from contextlib import ExitStack
import ctypes
import pathlib
-import re
import struct
import sys
import warnings
@@ -694,11 +693,10 @@ class Jp2kr(Jp2kBox):
RuntimeError
If the image has differing subsample factors.
"""
- if re.match("0|1|2.[012]", version.openjpeg_version):
+ if version.openjpeg_version < '2.4.0':
msg = (
- f"You must have a version of OpenJPEG at least as high as "
- f"2.3.0 before you can read JPEG2000 images with glymur. "
- f"Your version is {version.openjpeg_version}"
+ "The minimum supported version of OpenJPEG is 2.4.0. "
+ f"Your version is {version.openjpeg_version}."
)
raise RuntimeError(msg)
@@ -878,11 +876,10 @@ class Jp2kr(Jp2kBox):
>>> jp = glymur.Jp2k(jfile)
>>> components_lst = jp.read_bands(rlevel=1)
"""
- if version.openjpeg_version < "2.3.0":
+ if version.openjpeg_version < "2.4.0":
msg = (
- f"You must have at least version 2.3.0 of OpenJPEG installed "
- f"before using this method. Your version of OpenJPEG is "
- f"{version.openjpeg_version}."
+ "The minimum supported version of OpenJPEG is 2.4.0. "
+ f"Your version is {version.openjpeg_version}."
)
raise RuntimeError(msg)
=====================================
glymur/options.py
=====================================
@@ -71,11 +71,10 @@ def set_option(key, value):
raise KeyError(f"{key} not valid.")
if key == "lib.num_threads":
- if version.openjpeg_version < "2.2.0":
+ if version.openjpeg_version < "2.4.0":
msg = (
- f"Thread support is not available on versions of OpenJPEG "
- f"prior to 2.2.0. Your version is "
- f"{version.openjpeg_version}."
+ "The minimum supported version of OpenJPEG is 2.4.0. "
+ f"Your version is {version.openjpeg_version}."
)
raise RuntimeError(msg)
if not opj2.has_thread_support():
=====================================
glymur/version.py
=====================================
@@ -20,7 +20,7 @@ from .lib import _tiff as tiff
# Do not change the format of this next line! Doing so risks breaking
# setup.py
-version = "0.14.3"
+version = "0.14.4"
version_tuple = parse(version).release
=====================================
pyproject.toml
=====================================
@@ -5,6 +5,7 @@ classifiers = [
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3.12',
'Programming Language :: Python :: 3.13',
+ 'Programming Language :: Python :: 3.14',
'Programming Language :: Python :: Implementation :: CPython',
'Intended Audience :: Science/Research',
'Operating System :: OS Independent',
@@ -21,7 +22,7 @@ license = 'MIT'
name = 'Glymur'
readme = 'README.md'
requires-python = '>=3.11'
-version = '0.14.3'
+version = '0.14.4'
[project.scripts]
jp2dump = 'glymur.command_line:main'
=====================================
tests/test_threading.py
=====================================
@@ -107,18 +107,18 @@ class TestSuite(fixtures.TestCommon):
SCENARIO: Attempt to encode with threading support. This feature is
new as of openjpeg library version 2.4.0.
- EXPECTED RESULT: In library versions prior to 2.4.0, a warning is
- issued.
+ EXPECTED RESULT: OpenJPEG currently must be at least 2.4.0, so no
+ warning is issued.
"""
- with patch('glymur.jp2k.version.openjpeg_version', new='2.3.0'):
- glymur.set_option('lib.num_threads', 2)
-
- with warnings.catch_warnings(record=True) as w:
- Jp2k(
- self.temp_jp2_filename,
- data=np.zeros((128, 128), dtype=np.uint8)
- )
- self.assertEqual(len(w), 1)
+ glymur.set_option('lib.num_threads', 2)
+
+ with warnings.catch_warnings(record=True) as w:
+ Jp2k(
+ self.temp_jp2_filename,
+ data=np.zeros((128, 128), dtype=np.uint8)
+ )
+
+ self.assertEqual(len(w), 0)
def test_tiff2jp2_num_threads(self):
"""
@@ -147,7 +147,7 @@ class TestSuite(fixtures.TestCommon):
openjpeg library is not too old for writing, it's too old for threaded
writing. In other words, it's version 2.3.0
- EXPECTED RESULT: There is a warning, but the image is created.
+ EXPECTED RESULT: RuntimeError
"""
expected = skimage.data.astronaut()
@@ -162,12 +162,6 @@ class TestSuite(fixtures.TestCommon):
)
with patch('glymur.version.openjpeg_version', new='2.3.0'):
- with self.assertWarns(UserWarning):
+ with self.assertRaises(RuntimeError):
for tw in j.get_tilewriters():
tw[:] = expected
-
- expected = np.concatenate((expected, expected), axis=0)
- expected = np.concatenate((expected, expected), axis=1)
- actual = j[:]
-
- np.testing.assert_array_equal(actual, expected)
View it on GitLab: https://salsa.debian.org/debian-gis-team/glymur/-/commit/b8540293fc790cdae1441131be44cf00b79e1603
--
View it on GitLab: https://salsa.debian.org/debian-gis-team/glymur/-/commit/b8540293fc790cdae1441131be44cf00b79e1603
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/20251012/25439223/attachment-0001.htm>
More information about the Pkg-grass-devel
mailing list