Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-zarr for openSUSE:Factory 
checked in at 2024-09-25 21:55:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-zarr (Old)
 and      /work/SRC/openSUSE:Factory/.python-zarr.new.29891 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-zarr"

Wed Sep 25 21:55:19 2024 rev:17 rq:1203567 version:2.18.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-zarr/python-zarr.changes  2024-09-24 
17:34:42.200663717 +0200
+++ /work/SRC/openSUSE:Factory/.python-zarr.new.29891/python-zarr.changes       
2024-09-25 21:56:07.795365958 +0200
@@ -1,0 +2,20 @@
+Wed Sep 25 06:07:45 UTC 2024 - Ben Greiner <[email protected]>
+
+- Update to 2.18.3
+  * Update TEAM.md by @jhamman in #2071
+  * [v2] Fix doctests with numpy 2.0 by @dstansby in #2073
+  * Fix version number in built docs by @dstansby in #2044
+  * Fix orthogonal indexing with a scalar by @dcherian in #1947
+  * [v2] Drop support for Python 3.9 by @dstansby in #2074
+  * Fix Array.array for numpy 2.1 by @dstansby in #2106
+  * Bump test version of numcodecs by @dstansby in #2114
+  * fix: numpy 1.24 compat for Array.array by @jhamman in #2123
+  * Deprecate N5Store by @jhamman in #2103
+  * Run tests on numpy 1.23 by @dstansby in #2124
+  * chore: bump minimum numpy version to 1.24 by @jhamman in #2127
+- Revert the numpy1 restriction
+- Add zarr-numcodecs-zstd-test.patch:
+  * Allow older numcodecs < 0.13 in zstd tests
+  * Overrides gh#zarr-developers/zarr-python#2114
+
+-------------------------------------------------------------------

Old:
----
  zarr-2.18.2.tar.gz

New:
----
  zarr-2.18.3.tar.gz
  zarr-numcodecs-zstd-test.patch

BETA DEBUG BEGIN:
  New:- Revert the numpy1 restriction
- Add zarr-numcodecs-zstd-test.patch:
  * Allow older numcodecs < 0.13 in zstd tests
BETA DEBUG END:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-zarr.spec ++++++
--- /var/tmp/diff_new_pack.Cdf4Bf/_old  2024-09-25 21:56:08.619400233 +0200
+++ /var/tmp/diff_new_pack.Cdf4Bf/_new  2024-09-25 21:56:08.619400233 +0200
@@ -18,26 +18,28 @@
 
 %{?sle15_python_module_pythons}
 Name:           python-zarr
-Version:        2.18.2
+Version:        2.18.3
 Release:        0
 Summary:        An implementation of chunked, compressed, N-dimensional arrays 
for Python
 License:        MIT
 URL:            https://github.com/zarr-developers/zarr-python
 Source:         
https://files.pythonhosted.org/packages/source/z/zarr/zarr-%{version}.tar.gz
+# PATCH-FIX-OPENSUSE zarr-numcodecs-zstd-test.patch [email protected] -- 
Allow numcodecs < 0.13 for zstd tests, overrides 
gh#zarr-developers/zarr-python#2114
+Patch0:         zarr-numcodecs-zstd-test.patch
 # Needs full python stdlib, base is not enough
 BuildRequires:  %{pythons}
-BuildRequires:  %{python_module base >= 3.8}
+BuildRequires:  %{python_module base >= 3.10}
 BuildRequires:  %{python_module pip}
 BuildRequires:  %{python_module setuptools >= 64.0.0}
 BuildRequires:  %{python_module setuptools_scm > 1.5.4}
 BuildRequires:  %{python_module wheel}
 BuildRequires:  fdupes
 BuildRequires:  python-rpm-macros
-Requires:       python >= 3.8
+Requires:       python >= 3.10
 Requires:       python-asciitree
 Requires:       python-fasteners
 Requires:       python-numcodecs >= 0.10.0
-Requires:       python-numpy1 >= 1.23
+Requires:       python-numpy >= 1.24
 Suggests:       python-dbm
 Suggests:       python-ipytree
 Suggests:       python-msgpack
@@ -49,7 +51,7 @@
 BuildRequires:  %{python_module fasteners}
 BuildRequires:  %{python_module msgpack}
 BuildRequires:  %{python_module numcodecs >= 0.10.0}
-BuildRequires:  %{python_module numpy1 >= 1.23}
+BuildRequires:  %{python_module numpy >= 1.24}
 BuildRequires:  %{python_module pytest}
 # /SECTION
 %python_subpackages
@@ -82,7 +84,7 @@
 donttest+=" or test_format_compatibility"
 %pytest -k "not ($donttest)"
 %else
-%pytest
+%pytest -v
 %endif
 
 %files %{python_files}

++++++ zarr-2.18.2.tar.gz -> zarr-2.18.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/.github/ISSUE_TEMPLATE/bug_report.yml 
new/zarr-2.18.3/.github/ISSUE_TEMPLATE/bug_report.yml
--- old/zarr-2.18.2/.github/ISSUE_TEMPLATE/bug_report.yml       2024-05-26 
21:22:34.000000000 +0200
+++ new/zarr-2.18.3/.github/ISSUE_TEMPLATE/bug_report.yml       2024-09-05 
01:19:21.000000000 +0200
@@ -27,7 +27,7 @@
     attributes:
       label: Python Version
       description: Version of Python interpreter
-      placeholder: 3.9, 3.10, 3.11, etc.
+      placeholder: 3.10, 3.11, 3.12 etc.
     validations:
       required: true
   - type: input
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/.github/workflows/python-package.yml 
new/zarr-2.18.3/.github/workflows/python-package.yml
--- old/zarr-2.18.2/.github/workflows/python-package.yml        2024-05-26 
21:22:34.000000000 +0200
+++ new/zarr-2.18.3/.github/workflows/python-package.yml        2024-09-05 
01:19:21.000000000 +0200
@@ -15,15 +15,11 @@
     runs-on: ubuntu-latest
     strategy:
       matrix:
-        python-version: ['3.9', '3.10', '3.11', '3.12']
-        numpy_version: ['>=1.24.0', '==1.23.*']
+        python-version: ['3.10', '3.11', '3.12']
+        numpy_version: ['>=2.1', '==1.24.*']
         exclude:
-          - python-version: '3.10'
-            numpy_version: '==1.23.*'
-          - python-version: '3.11'
-            numpy_version: '==1.23.*'
           - python-version: '3.12'
-            numpy_version: '==1.23.*'
+            numpy_version: '==1.24.*'
     services:
       redis:
         image: redis
@@ -54,7 +50,7 @@
     - name: Create Conda environment with the rights deps
       shell: "bash -l {0}"
       run: |
-        conda create -n zarr-env python==${{matrix.python-version}} bsddb3 
numcodecs lmdb pip nodejs flake8 mypy
+        conda create -n zarr-env python==${{matrix.python-version}} bsddb3 pip 
nodejs
         conda activate zarr-env
         npm install -g azurite
     - name: Install dependencies
@@ -62,8 +58,7 @@
       run: |
         conda activate zarr-env
         python -m pip install --upgrade pip
-        python -m pip install -U pip setuptools wheel line_profiler
-        python -m pip install -rrequirements_dev_minimal.txt 
numpy${{matrix.numpy_version}} -rrequirements_dev_optional.txt pymongo redis
+        python -m pip install -r requirements_dev_minimal.txt 
numpy${{matrix.numpy_version}} -r requirements_dev_optional.txt line_profiler 
pymongo redis
         python -m pip install -e .
         python -m pip freeze
     - name: Tests
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/.github/workflows/releases.yml 
new/zarr-2.18.3/.github/workflows/releases.yml
--- old/zarr-2.18.2/.github/workflows/releases.yml      2024-05-26 
21:22:34.000000000 +0200
+++ new/zarr-2.18.3/.github/workflows/releases.yml      2024-09-05 
01:19:21.000000000 +0200
@@ -16,10 +16,10 @@
           submodules: true
           fetch-depth: 0
 
-      - uses: actions/[email protected]
+      - uses: actions/[email protected]
         name: Install Python
         with:
-          python-version: '3.9'
+          python-version: '3.11'
 
       - name: Install PyBuild
         run: |
@@ -64,7 +64,7 @@
         with:
           name: releases
           path: dist
-      - uses: pypa/[email protected]
+      - uses: pypa/[email protected]
         with:
           user: __token__
           password: ${{ secrets.pypi_password }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/.github/workflows/windows-testing.yml 
new/zarr-2.18.3/.github/workflows/windows-testing.yml
--- old/zarr-2.18.2/.github/workflows/windows-testing.yml       2024-05-26 
21:22:34.000000000 +0200
+++ new/zarr-2.18.3/.github/workflows/windows-testing.yml       2024-09-05 
01:19:21.000000000 +0200
@@ -31,13 +31,12 @@
       - name: Create Conda environment with the rights deps
         shell: bash -l {0}
         run: |
-          conda create -n zarr-env python==${{matrix.python-version}} 
numcodecs pip nodejs
+          conda create -n zarr-env python==${{matrix.python-version}} pip 
nodejs
       - name: Install dependencies
         shell: bash -l {0}
         run: |
           conda activate zarr-env
           python -m pip install --upgrade pip
-          python -m pip install -U pip setuptools wheel
           python -m pip install -r requirements_dev_numpy.txt -r 
requirements_dev_minimal.txt -r requirements_dev_optional.txt
           python -m pip install .
           python -m pip freeze
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/.readthedocs.yaml 
new/zarr-2.18.3/.readthedocs.yaml
--- old/zarr-2.18.2/.readthedocs.yaml   2024-05-26 21:22:34.000000000 +0200
+++ new/zarr-2.18.3/.readthedocs.yaml   2024-09-05 01:19:21.000000000 +0200
@@ -3,7 +3,7 @@
 build:
   os: ubuntu-20.04
   tools:
-    python: "3.9"
+    python: "3.11"
 
 sphinx:
   configuration: docs/conf.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/PKG-INFO new/zarr-2.18.3/PKG-INFO
--- old/zarr-2.18.2/PKG-INFO    2024-05-26 21:22:43.200814000 +0200
+++ new/zarr-2.18.3/PKG-INFO    2024-09-05 01:19:27.860624300 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: zarr
-Version: 2.18.2
+Version: 2.18.3
 Summary: An implementation of chunked, compressed, N-dimensional arrays for 
Python
 Maintainer-email: Alistair Miles <[email protected]>
 License: MIT
@@ -18,14 +18,14 @@
 Classifier: Topic :: Software Development :: Libraries :: Python Modules
 Classifier: Operating System :: Unix
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.9
 Classifier: Programming Language :: Python :: 3.10
 Classifier: Programming Language :: Python :: 3.11
-Requires-Python: >=3.9
+Classifier: Programming Language :: Python :: 3.12
+Requires-Python: >=3.10
 Description-Content-Type: text/markdown
 License-File: LICENSE.txt
 Requires-Dist: asciitree
-Requires-Dist: numpy>=1.23
+Requires-Dist: numpy>=1.24
 Requires-Dist: fasteners; sys_platform != "emscripten"
 Requires-Dist: numcodecs>=0.10.0
 Provides-Extra: jupyter
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/TEAM.md new/zarr-2.18.3/TEAM.md
--- old/zarr-2.18.2/TEAM.md     2024-05-26 21:22:34.000000000 +0200
+++ new/zarr-2.18.3/TEAM.md     2024-09-05 01:19:21.000000000 +0200
@@ -7,6 +7,7 @@
 - @jakirkham (jakirkham)
 - @martindurant (Martin Durant)
 - @normanrz (Norman Rzepka)
+- @dstansby (David Stansby)
 
 ## Emeritus core-developers
 - @alimanfoo (Alistair Miles)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/docs/conf.py new/zarr-2.18.3/docs/conf.py
--- old/zarr-2.18.2/docs/conf.py        2024-05-26 21:22:34.000000000 +0200
+++ new/zarr-2.18.3/docs/conf.py        2024-09-05 01:19:21.000000000 +0200
@@ -16,11 +16,8 @@
 import os
 import sys
 
-# The version info for the project you're documenting, acts as replacement for
-# |version| and |release|, also used in various other places throughout the
-# built documents.
-#
-# The short X.Y version.
+from importlib.metadata import version as get_version
+
 import zarr
 
 # If extensions (or modules to document with autodoc) are in another directory,
@@ -75,9 +72,8 @@
 copyright = "2024, Zarr Developers"
 author = "Zarr Developers"
 
-version = zarr.__version__
-# The full version, including alpha/beta/rc tags.
-release = zarr.__version__
+version = get_version("zarr")
+release = get_version("zarr")
 
 # The language for content autogenerated by Sphinx. Refer to documentation
 # for a list of supported languages.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/docs/release.rst 
new/zarr-2.18.3/docs/release.rst
--- old/zarr-2.18.2/docs/release.rst    2024-05-26 21:22:34.000000000 +0200
+++ new/zarr-2.18.3/docs/release.rst    2024-09-05 01:19:21.000000000 +0200
@@ -18,13 +18,50 @@
    See `GH1777 <https://github.com/zarr-developers/zarr-python/issues/1777>`_ 
for more details on the upcoming
    3.0 release.
 
+
+.. _release_2.18.3:
+
+2.18.3
+------
+
+Enhancements
+~~~~~~~~~~~~
+* Added support for creating a copy of data when converting a `zarr.Array`
+  to a numpy array.
+  By :user:`David Stansby <dstansby>` (:issue:`2106`) and 
+  :user:`Joe Hamman <jhamman>` (:issue:`2123`).
+
+Maintenance
+~~~~~~~~~~~
+* Removed support for Python 3.9.
+  By :user:`David Stansby <dstansby>` (:issue:`2074`).
+
+* Fix a regression when using orthogonal indexing with a scalar.
+  By :user:`Deepak Cherian <dcherian>` :issue:`1931`
+
+* Added compatibility with NumPy 2.1.
+  By :user:`David Stansby <dstansby>`
+
+* Bump minimum NumPy version to 1.24.
+  :user:`Joe Hamman <jhamman>` (:issue:`2127`).
+
+Deprecations
+~~~~~~~~~~~~
+
+* Deprecate :class:`zarr.n5.N5Store` and :class:`zarr.n5.N5FSStore`. These
+  stores are slated to be removed in Zarr Python 3.0.
+  By :user:`Joe Hamman <jhamman>` :issue:`2085`.
+
 .. _release_2.18.2:
 
+2.18.2
+------
+
 Enhancements
 ~~~~~~~~~~~~
 
 * Add Zstd codec to old V3 code path.
-  By :user:`Ryan Abernathey <rabernat>` 
+  By :user:`Ryan Abernathey <rabernat>`
 
 .. _release_2.18.1:
 
@@ -51,7 +88,7 @@
 * Enable ruff/bugbear rules (B) and fix issues.
   By :user:`Dimitri Papadopoulos Orfanos <DimitriPapadopoulos>` :issue:`1702`.
 
-* Minor updates to use `np.inf` instead of `np.PINF` / `np.NINF` in 
preparation for NumPy 2.0.0 release. 
+* Minor updates to use `np.inf` instead of `np.PINF` / `np.NINF` in 
preparation for NumPy 2.0.0 release.
   By :user:`Joe Hamman <jhamman>` :issue:`1842`.
 
 Deprecations
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/pyproject.toml 
new/zarr-2.18.3/pyproject.toml
--- old/zarr-2.18.2/pyproject.toml      2024-05-26 21:22:35.000000000 +0200
+++ new/zarr-2.18.3/pyproject.toml      2024-09-05 01:19:21.000000000 +0200
@@ -10,10 +10,10 @@
 maintainers = [
     { name = "Alistair Miles", email = "[email protected]" }
 ]
-requires-python = ">=3.9"
+requires-python = ">=3.10"
 dependencies = [
     'asciitree',
-    'numpy>=1.23',
+    'numpy>=1.24',
     'fasteners; sys_platform != "emscripten"',
     'numcodecs>=0.10.0',
 ]
@@ -30,9 +30,9 @@
     'Topic :: Software Development :: Libraries :: Python Modules',
     'Operating System :: Unix',
     'Programming Language :: Python :: 3',
-    'Programming Language :: Python :: 3.9',
     'Programming Language :: Python :: 3.10',
     'Programming Language :: Python :: 3.11',
+    'Programming Language :: Python :: 3.12',
 ]
 license = { text = "MIT" }
 
@@ -107,6 +107,7 @@
 extend-select = [
     "B"
 ]
+ignore = ["B905"] # zip-without-explicit-strict
 
 [tool.black]
 line-length = 100
@@ -145,6 +146,10 @@
     "ignore:The .* is deprecated and will be removed in a Zarr-Python version 
3*:FutureWarning",
     "ignore:The experimental Zarr V3 implementation in this version 
.*:FutureWarning",
 ]
+doctest_subpackage_requires =[
+    "zarr/core.py = numpy>=2",
+    "zarr/creation.py = numpy>=2"
+]
 
 
 [tool.codespell]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/requirements_dev_minimal.txt 
new/zarr-2.18.3/requirements_dev_minimal.txt
--- old/zarr-2.18.2/requirements_dev_minimal.txt        2024-05-26 
21:22:35.000000000 +0200
+++ new/zarr-2.18.3/requirements_dev_minimal.txt        2024-09-05 
01:19:21.000000000 +0200
@@ -1,8 +1,8 @@
 # library requirements
 asciitree==0.3.3
 fasteners==0.19
-numcodecs==0.12.1
+numcodecs==0.13.0
 msgpack-python==0.5.6
-setuptools-scm==8.0.4
+setuptools-scm==8.1.0
 # test requirements
-pytest==8.1.1
+pytest==8.3.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/requirements_dev_numpy.txt 
new/zarr-2.18.3/requirements_dev_numpy.txt
--- old/zarr-2.18.2/requirements_dev_numpy.txt  2024-05-26 21:22:35.000000000 
+0200
+++ new/zarr-2.18.3/requirements_dev_numpy.txt  2024-09-05 01:19:21.000000000 
+0200
@@ -1,4 +1,4 @@
 # Break this out into a separate file to allow testing against
 # different versions of numpy. This file should pin to the latest
 # numpy version.
-numpy==1.26.4
+numpy==2.1.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/requirements_dev_optional.txt 
new/zarr-2.18.3/requirements_dev_optional.txt
--- old/zarr-2.18.2/requirements_dev_optional.txt       2024-05-26 
21:22:35.000000000 +0200
+++ new/zarr-2.18.3/requirements_dev_optional.txt       2024-09-05 
01:19:21.000000000 +0200
@@ -1,17 +1,17 @@
 # optional library requirements
 # bsddb3==6.2.6; sys_platform != 'win32'
-lmdb==1.4.1; sys_platform != 'win32'
+lmdb==1.5.1; sys_platform != 'win32'
 # optional library requirements for Jupyter
 ipytree==0.2.2
-ipywidgets==8.1.2
+ipywidgets==8.1.5
 # optional library requirements for services
 # don't let pyup change pinning for azure-storage-blob, need to pin to older
 # version to get compatibility with azure storage emulator on appveyor (FIXME)
-azure-storage-blob==12.16.0 # pyup: ignore
-redis==5.0.4
+azure-storage-blob==12.21.0 # pyup: ignore
+redis==5.0.8
 types-redis
 types-setuptools
-pymongo==4.6.3
+pymongo==4.8.0
 # optional test requirements
 coverage
 pytest-cov==5.0.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/zarr/core.py new/zarr-2.18.3/zarr/core.py
--- old/zarr-2.18.2/zarr/core.py        2024-05-26 21:22:35.000000000 +0200
+++ new/zarr-2.18.3/zarr/core.py        2024-09-05 01:19:21.000000000 +0200
@@ -575,11 +575,8 @@
             # store comparison
         )
 
-    def __array__(self, *args):
-        a = self[...]
-        if args:
-            a = a.astype(args[0])
-        return a
+    def __array__(self, *args, **kwargs):
+        return np.array(self[...], *args, **kwargs)
 
     def islice(self, start=None, end=None):
         """
@@ -609,11 +606,11 @@
 
         Iterate over part of the array:
             >>> for value in z.islice(25, 30): value;
-            25
-            26
-            27
-            28
-            29
+            np.int64(25)
+            np.int64(26)
+            np.int64(27)
+            np.int64(28)
+            np.int64(29)
         """
 
         if len(self.shape) == 0:
@@ -679,7 +676,7 @@
         Retrieve a single item::
 
             >>> z[5]
-            5
+            np.int64(5)
 
         Retrieve a region via slicing::
 
@@ -706,7 +703,7 @@
         Retrieve an item::
 
             >>> z[2, 2]
-            22
+            np.int64(22)
 
         Retrieve a region via slicing::
 
@@ -830,7 +827,7 @@
         Retrieve a single item::
 
             >>> z.get_basic_selection(5)
-            5
+            np.int64(5)
 
         Retrieve a region via slicing::
 
@@ -852,7 +849,7 @@
         Retrieve an item::
 
             >>> z.get_basic_selection((2, 2))
-            22
+            np.int64(22)
 
         Retrieve a region via slicing::
 
@@ -2053,7 +2050,12 @@
                     if isinstance(cdata, UncompressedPartialReadBufferV3):
                         cdata = cdata.read_full()
                     chunk = ensure_ndarray_like(cdata).view(self._dtype)
-                    chunk = chunk.reshape(self._chunks, order=self._order)
+                    # dest.shape is not self._chunks when a dimensions is 
squeezed out
+                    # For example, assume self._chunks = (5, 5, 1)
+                    # and the selection is [:, :, 0]
+                    # Then out_selection is (slice(5), slice(5))
+                    # See 
https://github.com/zarr-developers/zarr-python/issues/1931
+                    chunk = chunk.reshape(dest.shape, order=self._order)
                     np.copyto(dest, chunk)
                 return
 
@@ -2819,7 +2821,7 @@
             >>> v[:]
             array([False, False,  True, ...,  True, False, False])
             >>> np.all(a[:].view(dtype=bool) == v[:])
-            True
+            np.True_
 
         An array can be viewed with a dtype with a different item size, however
         some care is needed to adjust the shape and chunk shape so that chunk
@@ -2833,7 +2835,7 @@
             >>> v[:10]
             array([0, 0, 1, 0, 2, 0, 3, 0, 4, 0], dtype=uint8)
             >>> np.all(a[:].view('u1') == v[:])
-            True
+            np.True_
 
         Change fill value for uninitialized chunks:
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/zarr/creation.py 
new/zarr-2.18.3/zarr/creation.py
--- old/zarr-2.18.2/zarr/creation.py    2024-05-26 21:22:35.000000000 +0200
+++ new/zarr-2.18.3/zarr/creation.py    2024-09-05 01:19:21.000000000 +0200
@@ -569,7 +569,7 @@
     >>> z2
     <zarr.core.Array (10000, 10000) float64 read-only>
     >>> np.all(z1[:] == z2[:])
-    True
+    np.True_
 
     Notes
     -----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/zarr/n5.py new/zarr-2.18.3/zarr/n5.py
--- old/zarr-2.18.2/zarr/n5.py  2024-05-26 21:22:35.000000000 +0200
+++ new/zarr-2.18.3/zarr/n5.py  2024-09-05 01:19:21.000000000 +0200
@@ -69,8 +69,20 @@
 
     Safe to write in multiple threads or processes.
 
+    .. deprecated:: 2.18.3
+        `N5Store` will be removed in Zarr 3.0.0.
     """
 
+    def __init__(self, *args: Any, **kwargs: Any) -> None:
+        super().__init__(*args, **kwargs)
+        warnings.warn(
+            "The N5Store is deprecated and will be removed in a Zarr-Python 
version 3, "
+            "see https://github.com/zarr-developers/zarr-python/issues/1274 
and "
+            "https://github.com/zarr-developers/n5py for more information.",
+            FutureWarning,
+            stacklevel=2,
+        )
+
     def __getitem__(self, key: str) -> bytes:
         if key.endswith(zarr_group_meta_key):
             key_new = key.replace(zarr_group_meta_key, n5_attrs_key)
@@ -322,6 +334,9 @@
     storage, and this procedure requires chunk keys with "." separated
     dimensions, hence the Zarr arrays targeting N5 have the deceptive
     "." dimension separator.
+
+    .. deprecated:: 2.18.3
+        `N5FSStore` will be removed in Zarr 3.0.0.
     """
 
     _array_meta_key = "attributes.json"
@@ -329,6 +344,13 @@
     _attrs_key = "attributes.json"
 
     def __init__(self, *args, **kwargs):
+        warnings.warn(
+            "The N5FSStore is deprecated and will be removed in a Zarr-Python 
version 3, "
+            "see https://github.com/zarr-developers/zarr-python/issues/1274 
and "
+            "https://github.com/zarr-developers/n5py for more information.",
+            FutureWarning,
+            stacklevel=2,
+        )
         if "dimension_separator" in kwargs:
             kwargs.pop("dimension_separator")
             warnings.warn(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/zarr/tests/test_core.py 
new/zarr-2.18.3/zarr/tests/test_core.py
--- old/zarr-2.18.2/zarr/tests/test_core.py     2024-05-26 21:22:35.000000000 
+0200
+++ new/zarr-2.18.3/zarr/tests/test_core.py     2024-09-05 01:19:21.000000000 
+0200
@@ -3206,3 +3206,20 @@
     elem = [1, 3]
     arr[1] = elem
     assert arr[1] == elem
+
+
[email protected]("shape", ((1, 1, 1), (5, 5, 1), (1, 5, 5)))
+def test_scalar_orthogonal_indexing(shape):
+    # regression test for 
https://github.com/zarr-developers/zarr-python/issues/1931
+    store = zarr.MemoryStore({})
+    data = np.random.randint(0, 255, shape)
+    arr = zarr.zeros(
+        shape=shape, chunks=shape[:-1] + (1,), compressor=None, store=store, 
dtype="u1"
+    )
+    arr[:, :, :] = data
+    store.close()
+
+    zf = zarr.open(store, "r")
+    assert_array_equal(zf[0, :, :], data[0, :, :])
+    assert_array_equal(zf[:, 0, :], data[:, 0, :])
+    assert_array_equal(zf[:, :, 0], data[:, :, 0])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/zarr/tests/test_meta.py 
new/zarr-2.18.3/zarr/tests/test_meta.py
--- old/zarr-2.18.2/zarr/tests/test_meta.py     2024-05-26 21:22:35.000000000 
+0200
+++ new/zarr-2.18.3/zarr/tests/test_meta.py     2024-09-05 01:19:21.000000000 
+0200
@@ -282,36 +282,28 @@
         fill_value=None,
         chunk_memory_layout="C",
     )
-
-    meta_json = (
-        """{
+    meta_expected = {
         "attributes": {},
-        "chunk_grid": {
-            "chunk_shape": [10],
-            "separator": "/",
-            "type": "regular"
-        },
+        "chunk_grid": {"chunk_shape": [10], "separator": "/", "type": 
"regular"},
         "chunk_memory_layout": "C",
         "compressor": {
-        """
-        + f"""
-        "codec": "https://purl.org/zarr/spec/codec/{cname}/1.0";,
-        """
-        + """
-            "configuration": {
-                "level": 1
-            }
+            "codec": f"https://purl.org/zarr/spec/codec/{cname}/1.0";,
+            "configuration": {"level": 1},
         },
         "data_type": "<f8",
         "extensions": [],
-        "fill_value": null,
-        "shape": [100, 10, 10 ]
-    }"""
-    )
+        "fill_value": None,
+        "shape": [100, 10, 10],
+    }
+
+    if cname == "zstd":
+        meta_expected["compressor"]["configuration"]["checksum"] = False
+
+    meta_expected_json = json.dumps(meta_expected)
 
     # test encoding
     meta_enc = Metadata3.encode_array_metadata(meta)
-    assert_json_equal(meta_json, meta_enc)
+    assert_json_equal(meta_enc, meta_expected_json)
 
     # test decoding
     meta_dec = Metadata3.decode_array_metadata(meta_enc)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/zarr/version.py 
new/zarr-2.18.3/zarr/version.py
--- old/zarr-2.18.2/zarr/version.py     2024-05-26 21:22:40.000000000 +0200
+++ new/zarr-2.18.3/zarr/version.py     2024-09-05 01:19:25.000000000 +0200
@@ -12,5 +12,5 @@
 __version_tuple__: VERSION_TUPLE
 version_tuple: VERSION_TUPLE
 
-__version__ = version = '2.18.2'
-__version_tuple__ = version_tuple = (2, 18, 2)
+__version__ = version = '2.18.3'
+__version_tuple__ = version_tuple = (2, 18, 3)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/zarr.egg-info/PKG-INFO 
new/zarr-2.18.3/zarr.egg-info/PKG-INFO
--- old/zarr-2.18.2/zarr.egg-info/PKG-INFO      2024-05-26 21:22:40.000000000 
+0200
+++ new/zarr-2.18.3/zarr.egg-info/PKG-INFO      2024-09-05 01:19:25.000000000 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: zarr
-Version: 2.18.2
+Version: 2.18.3
 Summary: An implementation of chunked, compressed, N-dimensional arrays for 
Python
 Maintainer-email: Alistair Miles <[email protected]>
 License: MIT
@@ -18,14 +18,14 @@
 Classifier: Topic :: Software Development :: Libraries :: Python Modules
 Classifier: Operating System :: Unix
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.9
 Classifier: Programming Language :: Python :: 3.10
 Classifier: Programming Language :: Python :: 3.11
-Requires-Python: >=3.9
+Classifier: Programming Language :: Python :: 3.12
+Requires-Python: >=3.10
 Description-Content-Type: text/markdown
 License-File: LICENSE.txt
 Requires-Dist: asciitree
-Requires-Dist: numpy>=1.23
+Requires-Dist: numpy>=1.24
 Requires-Dist: fasteners; sys_platform != "emscripten"
 Requires-Dist: numcodecs>=0.10.0
 Provides-Extra: jupyter
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zarr-2.18.2/zarr.egg-info/requires.txt 
new/zarr-2.18.3/zarr.egg-info/requires.txt
--- old/zarr-2.18.2/zarr.egg-info/requires.txt  2024-05-26 21:22:40.000000000 
+0200
+++ new/zarr-2.18.3/zarr.egg-info/requires.txt  2024-09-05 01:19:25.000000000 
+0200
@@ -1,5 +1,5 @@
 asciitree
-numpy>=1.23
+numpy>=1.24
 numcodecs>=0.10.0
 
 [:sys_platform != "emscripten"]

++++++ zarr-numcodecs-zstd-test.patch ++++++
diff -ur zarr-2.18.3.orig/zarr/tests/test_meta.py 
zarr-2.18.3/zarr/tests/test_meta.py
--- zarr-2.18.3.orig/zarr/tests/test_meta.py    2024-09-25 10:57:44.283821145 
+0200
+++ zarr-2.18.3/zarr/tests/test_meta.py 2024-09-25 11:02:00.958310578 +0200
@@ -4,6 +4,7 @@
 
 import numpy as np
 import pytest
+from numcodecs.version import version_tuple as nc_version
 
 from zarr.codecs import Blosc, Delta, Pickle, Zlib, Zstd
 from zarr.errors import MetadataError
@@ -296,7 +297,7 @@
         "shape": [100, 10, 10],
     }
 
-    if cname == "zstd":
+    if cname == "zstd" and nc_version >= (0, 13):
         meta_expected["compressor"]["configuration"]["checksum"] = False
 
     meta_expected_json = json.dumps(meta_expected)

Reply via email to