diff --git a/.gitignore b/.gitignore index 8250d4d..0d9f2d4 100644 --- a/.gitignore +++ b/.gitignore @@ -161,3 +161,6 @@ cython_debug/ # and can be added to the global gitignore or merged into this file. For a more nuclear # option (not recommended) you can uncomment the following to ignore the entire idea folder. .idea/ + +# Downloaded assets +docs/assets/downloaded/ diff --git a/docs/about.md b/docs/about.md index 07508e1..e529070 100644 --- a/docs/about.md +++ b/docs/about.md @@ -79,4 +79,4 @@ zappend --help-config md > docs/config.md `zappend` is open source made available under the terms and conditions of the [MIT License](https://github.com/bcdev/zappend/blob/main/LICENSE). -Copyright © 2024 Brockmann Consult Development +Copyright © 2024-2026 Brockmann Consult Development diff --git a/docs/hooks/download_fonts.py b/docs/hooks/download_fonts.py new file mode 100644 index 0000000..3916a9c --- /dev/null +++ b/docs/hooks/download_fonts.py @@ -0,0 +1,48 @@ +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. + +from pathlib import Path +from urllib.error import URLError +from urllib.request import urlretrieve + +ROBOTO_BASE_URL = "https://raw.githubusercontent.com/google/fonts/main/ofl/roboto" + +DOWNLOADS = ( + { + "name": "Roboto.ttf", + "url": f"{ROBOTO_BASE_URL}/Roboto%5Bwdth,wght%5D.ttf", + }, + { + "name": "Roboto-Italic.ttf", + "url": f"{ROBOTO_BASE_URL}/Roboto-Italic%5Bwdth,wght%5D.ttf", + }, + { + "name": "OFL.txt", + "url": f"{ROBOTO_BASE_URL}/OFL.txt", + }, +) + + +def on_config(config): + """Download self-hosted Roboto assets before MkDocs builds the site.""" + docs_dir = Path(config["docs_dir"]) + font_dir = docs_dir / "assets" / "downloaded" / "fonts" + font_dir.mkdir(parents=True, exist_ok=True) + + for item in DOWNLOADS: + target = font_dir / item["name"] + if target.exists(): + continue + + try: + print(f"Downloading Roboto asset: {item['name']}") + urlretrieve(item["url"], target) + except URLError as exc: + raise RuntimeError( + f"Could not download {item['name']} from {item['url']}. " + "Check your network connection or place the file manually in " + f"{font_dir}." + ) from exc + + return config diff --git a/docs/overrides/partials/copyright.html b/docs/overrides/partials/copyright.html new file mode 100644 index 0000000..e3e16fb --- /dev/null +++ b/docs/overrides/partials/copyright.html @@ -0,0 +1,17 @@ + + + diff --git a/docs/stylesheet/extra.css b/docs/stylesheet/extra.css new file mode 100644 index 0000000..38b6b4c --- /dev/null +++ b/docs/stylesheet/extra.css @@ -0,0 +1,21 @@ +@font-face { + font-family: "Roboto"; + src: url("../assets/downloaded/fonts/Roboto.ttf") format("truetype"); + font-style: normal; + font-weight: 100 900; + font-stretch: 75% 100%; + font-display: swap; +} + +@font-face { + font-family: "Roboto"; + src: url("../assets/downloaded/fonts/Roboto-Italic.ttf") format("truetype"); + font-style: italic; + font-weight: 100 900; + font-stretch: 75% 100%; + font-display: swap; +} + +:root { + --md-text-font: "Roboto", "Segoe UI", Helvetica, Arial, sans-serif; +} diff --git a/mkdocs.yml b/mkdocs.yml index 1977b63..ff81cce 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -2,7 +2,7 @@ site_name: zappend repo_url: https://github.com/bcdev/zappend repo_name: bcdev/zappend -copyright: Copyright © 2024, 2025 Brockmann Consult and contributors +copyright: Copyright © 2024-2026 Brockmann Consult and contributors nav: - Overview: index.md @@ -18,6 +18,8 @@ theme: name: material logo: assets/logo.png favicon: assets/logo-small.png + font: false + custom_dir: docs/overrides palette: # Palette toggle for light mode - scheme: default @@ -43,6 +45,11 @@ extra: link: https://github.com/bcdev/zappend - icon: fontawesome/brands/python link: https://pypi.org/project/zappend/ + footer_links: + - text: Imprint + href: https://www.brockmann-consult.de/imprint/ + - text: Privacy Policy + href: https://www.brockmann-consult.de/privacy-policy-documentation-pages/ plugins: - search @@ -56,3 +63,9 @@ plugins: show_source: false heading_level: 3 annotations_path: brief + +extra_css: + - stylesheet/extra.css + +hooks: + - docs/hooks/download_fonts.py \ No newline at end of file diff --git a/tests/__init__.py b/tests/__init__.py index 34898ad..e700455 100644 --- a/tests/__init__.py +++ b/tests/__init__.py @@ -1,3 +1,3 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. diff --git a/tests/config/__init__.py b/tests/config/__init__.py index e69de29..072757f 100644 --- a/tests/config/__init__.py +++ b/tests/config/__init__.py @@ -0,0 +1,4 @@ +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. + diff --git a/tests/config/test_attrs.py b/tests/config/test_attrs.py index 9198091..b46124c 100644 --- a/tests/config/test_attrs.py +++ b/tests/config/test_attrs.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import datetime import json diff --git a/tests/config/test_config.py b/tests/config/test_config.py index ae807b7..6c5a8f6 100644 --- a/tests/config/test_config.py +++ b/tests/config/test_config.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import unittest diff --git a/tests/config/test_normalize.py b/tests/config/test_normalize.py index e45b811..e9ea2bb 100644 --- a/tests/config/test_normalize.py +++ b/tests/config/test_normalize.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import json import os diff --git a/tests/config/test_schema.py b/tests/config/test_schema.py index e7f966f..2c721c3 100644 --- a/tests/config/test_schema.py +++ b/tests/config/test_schema.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import unittest diff --git a/tests/config/test_validate.py b/tests/config/test_validate.py index fa81750..d39be9f 100644 --- a/tests/config/test_validate.py +++ b/tests/config/test_validate.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import unittest diff --git a/tests/contrib/__init__.py b/tests/contrib/__init__.py index 34898ad..e700455 100644 --- a/tests/contrib/__init__.py +++ b/tests/contrib/__init__.py @@ -1,3 +1,3 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. diff --git a/tests/contrib/test_levels.py b/tests/contrib/test_levels.py index f75dd05..de24725 100644 --- a/tests/contrib/test_levels.py +++ b/tests/contrib/test_levels.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import json import unittest diff --git a/tests/fsutil/__init__.py b/tests/fsutil/__init__.py index 34898ad..e700455 100644 --- a/tests/fsutil/__init__.py +++ b/tests/fsutil/__init__.py @@ -1,3 +1,3 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. diff --git a/tests/fsutil/test_fileobj.py b/tests/fsutil/test_fileobj.py index 9f82115..6bb7a8e 100644 --- a/tests/fsutil/test_fileobj.py +++ b/tests/fsutil/test_fileobj.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import os.path import unittest diff --git a/tests/fsutil/test_path.py b/tests/fsutil/test_path.py index 9ab3dc9..ab6cef8 100644 --- a/tests/fsutil/test_path.py +++ b/tests/fsutil/test_path.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import unittest diff --git a/tests/fsutil/test_transaction.py b/tests/fsutil/test_transaction.py index 4bf8d15..753b412 100644 --- a/tests/fsutil/test_transaction.py +++ b/tests/fsutil/test_transaction.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import unittest from typing import Callable diff --git a/tests/helpers.py b/tests/helpers.py index 786a762..b5d661b 100644 --- a/tests/helpers.py +++ b/tests/helpers.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. from contextlib import contextmanager from typing import Any diff --git a/tests/slice/__init__.py b/tests/slice/__init__.py index e69de29..072757f 100644 --- a/tests/slice/__init__.py +++ b/tests/slice/__init__.py @@ -0,0 +1,4 @@ +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. + diff --git a/tests/slice/test_callable.py b/tests/slice/test_callable.py index 2f7424e..d1a5c53 100644 --- a/tests/slice/test_callable.py +++ b/tests/slice/test_callable.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import unittest diff --git a/tests/slice/test_cm.py b/tests/slice/test_cm.py index 788f508..774880f 100644 --- a/tests/slice/test_cm.py +++ b/tests/slice/test_cm.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import contextlib import shutil diff --git a/tests/slice/test_source.py b/tests/slice/test_source.py index 1b05de4..4b46fae 100644 --- a/tests/slice/test_source.py +++ b/tests/slice/test_source.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import unittest diff --git a/tests/test_api.py b/tests/test_api.py index a154e17..356b361 100644 --- a/tests/test_api.py +++ b/tests/test_api.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import os import shutil diff --git a/tests/test_cli.py b/tests/test_cli.py index de7ecce..9f61b78 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import unittest diff --git a/tests/test_context.py b/tests/test_context.py index 654c9d6..f8c28bd 100644 --- a/tests/test_context.py +++ b/tests/test_context.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import unittest diff --git a/tests/test_log.py b/tests/test_log.py index f522e95..741e93d 100644 --- a/tests/test_log.py +++ b/tests/test_log.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import logging import unittest diff --git a/tests/test_metadata.py b/tests/test_metadata.py index 72e5c85..3818bd2 100644 --- a/tests/test_metadata.py +++ b/tests/test_metadata.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import math import unittest diff --git a/tests/test_processor.py b/tests/test_processor.py index a5c6473..309e107 100644 --- a/tests/test_processor.py +++ b/tests/test_processor.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import unittest diff --git a/tests/test_profiler.py b/tests/test_profiler.py index 7d1a5af..122905a 100644 --- a/tests/test_profiler.py +++ b/tests/test_profiler.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import os import unittest diff --git a/tests/test_rollbackstore.py b/tests/test_rollbackstore.py index da22a4a..c98a269 100644 --- a/tests/test_rollbackstore.py +++ b/tests/test_rollbackstore.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import copy import unittest diff --git a/tests/test_tailoring.py b/tests/test_tailoring.py index 3c62719..a842ce6 100644 --- a/tests/test_tailoring.py +++ b/tests/test_tailoring.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import unittest diff --git a/tests/test_xrencoding.py b/tests/test_xrencoding.py index 688c250..917b85f 100644 --- a/tests/test_xrencoding.py +++ b/tests/test_xrencoding.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import json import unittest diff --git a/zappend/__init__.py b/zappend/__init__.py index 2429edd..74c258a 100644 --- a/zappend/__init__.py +++ b/zappend/__init__.py @@ -1,5 +1,5 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. __version__ = "0.8.1.dev0" diff --git a/zappend/api.py b/zappend/api.py index 85941e5..906739f 100644 --- a/zappend/api.py +++ b/zappend/api.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. from typing import Any, Iterable diff --git a/zappend/cli.py b/zappend/cli.py index 5e8ded4..40b31d4 100644 --- a/zappend/cli.py +++ b/zappend/cli.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import sys import click diff --git a/zappend/config/__init__.py b/zappend/config/__init__.py index 0fb4d47..2cf4891 100644 --- a/zappend/config/__init__.py +++ b/zappend/config/__init__.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. from .attrs import eval_dyn_config_attrs, get_dyn_config_attrs_env, has_dyn_config_attrs from .config import Config diff --git a/zappend/config/attrs.py b/zappend/config/attrs.py index d58c60f..c87dbb2 100644 --- a/zappend/config/attrs.py +++ b/zappend/config/attrs.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import datetime import math diff --git a/zappend/config/config.py b/zappend/config/config.py index fb0ce0a..13c21e8 100644 --- a/zappend/config/config.py +++ b/zappend/config/config.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import tempfile from typing import Any, Callable, Dict, Literal diff --git a/zappend/config/defaults.py b/zappend/config/defaults.py index 00196e5..89a4fba 100644 --- a/zappend/config/defaults.py +++ b/zappend/config/defaults.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. DEFAULT_ZARR_VERSION = 2 DEFAULT_APPEND_DIM = "time" diff --git a/zappend/config/markdown.py b/zappend/config/markdown.py index b29239b..df2a3ab 100644 --- a/zappend/config/markdown.py +++ b/zappend/config/markdown.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import json from typing import Any diff --git a/zappend/config/normalize.py b/zappend/config/normalize.py index 2883bb9..5283f32 100644 --- a/zappend/config/normalize.py +++ b/zappend/config/normalize.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import contextlib import io diff --git a/zappend/config/schema.py b/zappend/config/schema.py index 601fb77..e1d7b2a 100644 --- a/zappend/config/schema.py +++ b/zappend/config/schema.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import json from typing import Any, Literal diff --git a/zappend/config/validate.py b/zappend/config/validate.py index 1887d2f..7422de0 100644 --- a/zappend/config/validate.py +++ b/zappend/config/validate.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. from typing import Any diff --git a/zappend/context.py b/zappend/context.py index 69f6916..05948af 100644 --- a/zappend/context.py +++ b/zappend/context.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. from typing import Any, Dict diff --git a/zappend/contrib/__init__.py b/zappend/contrib/__init__.py index b8a10f9..87497f6 100644 --- a/zappend/contrib/__init__.py +++ b/zappend/contrib/__init__.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. """ This module contributes to zappend's core functionality. diff --git a/zappend/contrib/levels.py b/zappend/contrib/levels.py index e4341ec..b8e5a5c 100644 --- a/zappend/contrib/levels.py +++ b/zappend/contrib/levels.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import json import logging diff --git a/zappend/fsutil/__init__.py b/zappend/fsutil/__init__.py index 3396aa2..61179fd 100644 --- a/zappend/fsutil/__init__.py +++ b/zappend/fsutil/__init__.py @@ -1,5 +1,5 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. from .fileobj import FileObj as FileObj diff --git a/zappend/fsutil/fileobj.py b/zappend/fsutil/fileobj.py index 9d80b7a..7d26748 100644 --- a/zappend/fsutil/fileobj.py +++ b/zappend/fsutil/fileobj.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import json from typing import Any, Literal diff --git a/zappend/fsutil/path.py b/zappend/fsutil/path.py index a841c15..304d4f6 100644 --- a/zappend/fsutil/path.py +++ b/zappend/fsutil/path.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. def split_parent(path: str, sep: str = "/") -> tuple[str, str]: diff --git a/zappend/fsutil/transaction.py b/zappend/fsutil/transaction.py index e427a40..134d810 100644 --- a/zappend/fsutil/transaction.py +++ b/zappend/fsutil/transaction.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import uuid from typing import Callable, Literal diff --git a/zappend/log.py b/zappend/log.py index 2ee0db8..229b5aa 100644 --- a/zappend/log.py +++ b/zappend/log.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import logging import logging.config diff --git a/zappend/metadata.py b/zappend/metadata.py index 5cd5f19..841cb9e 100644 --- a/zappend/metadata.py +++ b/zappend/metadata.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. from typing import Any, Callable diff --git a/zappend/processor.py b/zappend/processor.py index 0e6764d..ed5ffca 100644 --- a/zappend/processor.py +++ b/zappend/processor.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import collections.abc from typing import Any, Iterable diff --git a/zappend/profiler.py b/zappend/profiler.py index 1f787c4..44a895e 100644 --- a/zappend/profiler.py +++ b/zappend/profiler.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import cProfile import io diff --git a/zappend/rollbackstore.py b/zappend/rollbackstore.py index d64adad..ba897a8 100644 --- a/zappend/rollbackstore.py +++ b/zappend/rollbackstore.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. from collections.abc import MutableMapping from typing import Any, Mapping, Sequence diff --git a/zappend/slice/__init__.py b/zappend/slice/__init__.py index 037844e..c7c9e06 100644 --- a/zappend/slice/__init__.py +++ b/zappend/slice/__init__.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. from .callable import SliceCallable, invoke_slice_callable, to_slice_callable from .cm import open_slice_dataset diff --git a/zappend/slice/callable.py b/zappend/slice/callable.py index 95abf88..d47a231 100644 --- a/zappend/slice/callable.py +++ b/zappend/slice/callable.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import importlib import inspect diff --git a/zappend/slice/cm.py b/zappend/slice/cm.py index 62b5ed5..a234169 100644 --- a/zappend/slice/cm.py +++ b/zappend/slice/cm.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import contextlib from typing import Any, ContextManager diff --git a/zappend/slice/source.py b/zappend/slice/source.py index 2f724db..c252cad 100644 --- a/zappend/slice/source.py +++ b/zappend/slice/source.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import contextlib import warnings diff --git a/zappend/slice/sources/__init__.py b/zappend/slice/sources/__init__.py index c995056..acb804f 100644 --- a/zappend/slice/sources/__init__.py +++ b/zappend/slice/sources/__init__.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. from .memory import MemorySliceSource from .persistent import PersistentSliceSource diff --git a/zappend/slice/sources/memory.py b/zappend/slice/sources/memory.py index f30c9d5..7b4ae47 100644 --- a/zappend/slice/sources/memory.py +++ b/zappend/slice/sources/memory.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import xarray as xr diff --git a/zappend/slice/sources/persistent.py b/zappend/slice/sources/persistent.py index e0387ad..0c54ff8 100644 --- a/zappend/slice/sources/persistent.py +++ b/zappend/slice/sources/persistent.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import time diff --git a/zappend/slice/sources/temporary.py b/zappend/slice/sources/temporary.py index d4e5d3b..4328de5 100644 --- a/zappend/slice/sources/temporary.py +++ b/zappend/slice/sources/temporary.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import xarray as xr diff --git a/zappend/tailoring.py b/zappend/tailoring.py index cde38ec..d2e68c8 100644 --- a/zappend/tailoring.py +++ b/zappend/tailoring.py @@ -1,6 +1,6 @@ -# Copyright © 2024, 2025 Brockmann Consult and contributors -# Permissions are hereby granted under the terms of the MIT License: -# https://opensource.org/licenses/MIT. +# Copyright © 2024-2026 Brockmann Consult and contributors +# Permissions are hereby granted under the terms of the MIT License: +# https://opensource.org/licenses/MIT. import dask.array import numpy as np