Skip to content

Commit

Permalink
Merge branch 'main' into contrib-docs
Browse files Browse the repository at this point in the history
  • Loading branch information
dstansby authored Oct 2, 2024
2 parents 74e44d9 + 559c2e3 commit ffc76fa
Show file tree
Hide file tree
Showing 40 changed files with 738 additions and 1,005 deletions.
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ body:
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
Expand Down
4 changes: 4 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@ updates:
directory: "/"
schedule:
interval: "daily"
groups:
requirements:
patterns:
- "*"
- package-ecosystem: "github-actions"
directory: "/"
schedule:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/minimal.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Setup Miniconda
uses: conda-incubator/setup-miniconda@v3.0.3
uses: conda-incubator/setup-miniconda@v3.0.4
with:
channels: conda-forge
environment-file: environment.yml
Expand Down
28 changes: 11 additions & 17 deletions .github/workflows/python-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,11 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.9', '3.10', '3.11']
numpy_version: ['>=1.22.0', '==1.21.*']
python-version: ['3.10', '3.11', '3.12']
numpy_version: ['>=2.1', '==1.24.*']
exclude:
- python-version: '3.10'
numpy_version: '==1.21.*'
- python-version: '3.11'
numpy_version: '==1.21.*'
- python-version: '3.12'
numpy_version: '==1.24.*'
services:
redis:
image: redis
Expand All @@ -42,7 +40,7 @@ jobs:
with:
fetch-depth: 0
- name: Setup Miniconda
uses: conda-incubator/setup-miniconda@v3.0.3
uses: conda-incubator/setup-miniconda@v3.0.4
with:
channels: conda-forge
python-version: ${{ matrix.python-version }}
Expand All @@ -52,17 +50,16 @@ jobs:
- 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
shell: "bash -l {0}"
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 .
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
shell: "bash -l {0}"
Expand All @@ -78,11 +75,8 @@ jobs:
mkdir ~/blob_emulator
azurite -l ~/blob_emulator --debug debug.log 2>&1 > stdouterr.log &
pytest --cov=zarr --cov-config=pyproject.toml --doctest-plus --cov-report xml --cov=./ --timeout=300
- uses: codecov/codecov-action@v3
- uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
with:
token: ${{ secrets.CODECOV_TOKEN }} # not required for public repos
#files: ./coverage1.xml,./coverage2.xml # optional
#flags: unittests # optional
#name: codecov-umbrella # optional
#fail_ci_if_error: true # optional (default = false)
verbose: true # optional (default = false)
6 changes: 3 additions & 3 deletions .github/workflows/releases.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ jobs:
submodules: true
fetch-depth: 0

- uses: actions/setup-python@v5.0.0
- uses: actions/setup-python@v5.2.0
name: Install Python
with:
python-version: '3.9'
python-version: '3.11'

- name: Install PyBuild
run: |
Expand Down Expand Up @@ -64,7 +64,7 @@ jobs:
with:
name: releases
path: dist
- uses: pypa/gh-action-pypi-publish@v1.8.14
- uses: pypa/gh-action-pypi-publish@v1.10.2
with:
user: __token__
password: ${{ secrets.pypi_password }}
Expand Down
5 changes: 2 additions & 3 deletions .github/workflows/windows-testing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: conda-incubator/setup-miniconda@v3.0.3
- uses: conda-incubator/setup-miniconda@v3.0.4
with:
auto-update-conda: true
python-version: ${{ matrix.python-version }}
Expand All @@ -31,13 +31,12 @@ jobs:
- 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
Expand Down
8 changes: 4 additions & 4 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,23 @@ default_language_version:
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
# Ruff version.
rev: 'v0.2.2'
rev: 'v0.4.4'
hooks:
- id: ruff
- repo: https://github.com/psf/black
rev: 24.2.0
rev: 24.4.2
hooks:
- id: black
- repo: https://github.com/codespell-project/codespell
rev: v2.2.6
hooks:
- id: codespell
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.5.0
rev: v4.6.0
hooks:
- id: check-yaml
- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.8.0
rev: v1.10.0
hooks:
- id: mypy
files: zarr
Expand Down
2 changes: 1 addition & 1 deletion .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ version: 2
build:
os: ubuntu-20.04
tools:
python: "3.9"
python: "3.11"

sphinx:
configuration: docs/conf.py
Expand Down
3 changes: 3 additions & 0 deletions TEAM.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@
- @jakirkham (jakirkham)
- @martindurant (Martin Durant)
- @normanrz (Norman Rzepka)
- @dstansby (David Stansby)
- @dcherian (Deepak Cherian)
- @TomAugspurger (Tom Augspurger)

## Emeritus core-developers
- @alimanfoo (Alistair Miles)
Expand Down
9 changes: 4 additions & 5 deletions docs/api/v3.rst
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
V3 Specification Implementation(``zarr._storage.v3``)
=====================================================

This module contains the implementation of the `Zarr V3 Specification <https://zarr-specs.readthedocs.io/en/latest/v3/core/v3.0.html>`_.
This module contains an experimental implementation of the `Zarr V3 Specification <https://zarr-specs.readthedocs.io/en/latest/v3/core/v3.0.html>`_.

.. warning::
Since Zarr Python 2.12 release, this module provides experimental infrastructure for reading and
writing the upcoming V3 spec of the Zarr format. Users wishing to prepare for the migration can set
the environment variable ``ZARR_V3_EXPERIMENTAL_API=1`` to begin experimenting, however data
written with this API should be expected to become stale, as the implementation will still change.
The experimental v3 implementation included in Zarr Python >2.12,<3 is not aligned with the final
V3 specification. This version is deprecated and will be removed in Zarr Python 3.0 in favor of a
spec compliant version.

The new ``zarr._store.v3`` package has the necessary classes and functions for evaluating Zarr V3.
Since the design is not finalised, the classes and functions are not automatically imported into
Expand Down
14 changes: 5 additions & 9 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -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,
Expand Down Expand Up @@ -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.
Expand Down Expand Up @@ -199,7 +195,7 @@ def setup(app):
# html_use_smartypants = True

# Custom sidebar templates, maps document names to template names.
# html_sidebars = {}
html_sidebars = {"tutorial": []}

# Additional templates that should be rendered to pages, maps page names to
# template names.
Expand Down
Loading

0 comments on commit ffc76fa

Please sign in to comment.