From a39f514c1642738972f8116f124bb9c9e45a6043 Mon Sep 17 00:00:00 2001 From: jvanbuel Date: Wed, 15 Jul 2026 16:36:38 +0200 Subject: [PATCH] docs: migrate site to Zensical, fix broken examples, document all materializers Switch the docs site from MkDocs Material to Zensical, keeping mkdocs.yml as the config since Zensical reads it natively and upstream recommends against hand-writing zensical.toml while the format settles. Zensical does not implement exclude_docs (zensical/backlog#65), which silently published the seven internal design docs under docs/plans/. Move them to plans/, outside docs_dir, to keep the published page set at 18. Fix the metric examples, none of which could run. Metric is a Pydantic model, so overriding name/description/unit requires type annotations and executor requires ClassVar; the docs used bare assignments that raise PydanticUserError at class definition. Wrap three fluent-chain examples in parens, since the indented continuations raise IndentationError on paste. Add the __main__ guard the process pool needs on spawn platforms. Export MarkdownMaterializer from the top-level package. It was registered as an entry point and exported from checkup.materializers, but the top-level re-export was missed, so 'from checkup import MarkdownMaterializer' raised ImportError while its four siblings worked. Document it and SQLAlchemyMaterializer, both previously absent while the docs claimed three materializers exist. Point the repo URLs at datamindedbe/checkup after the rename from incubator-checkup, document uv rather than pip, and replace the horseshoe logo with a mark cropped from the new banner. Co-Authored-By: Claude Opus 4.8 (1M context) --- .github/workflows/docs.yml | 2 +- docs/concepts/materializers.md | 57 +++- docs/concepts/metrics.md | 56 ++-- docs/concepts/overview.md | 30 +- docs/concepts/providers.md | 8 +- docs/getting-started/installation.md | 39 ++- docs/getting-started/quickstart.md | 26 +- docs/images/banner.png | Bin 0 -> 181883 bytes docs/images/favicon.png | Bin 0 -> 21637 bytes docs/images/logo.png | Bin 0 -> 14621 bytes docs/index.md | 30 +- docs/plugins/conveyor.md | 2 +- docs/plugins/dbt.md | 2 +- docs/plugins/git.md | 2 +- docs/plugins/overview.md | 9 +- docs/plugins/python.md | 2 +- mkdocs.yml | 15 +- .../2025-12-15-dbt-metrics-plugin-design.md | 0 .../2025-12-15-metrics-framework-design.md | 0 ...-12-15-metrics-framework-implementation.md | 0 ...2025-12-15-multi-context-implementation.md | 0 ...5-12-16-instance-based-providers-design.md | 0 ...instance-based-providers-implementation.md | 0 .../2025-12-16-namespaced-providers-design.md | 0 pyproject.toml | 3 +- src/checkup/__init__.py | 2 + uv.lock | 260 +++++++----------- 27 files changed, 267 insertions(+), 278 deletions(-) create mode 100644 docs/images/banner.png create mode 100644 docs/images/favicon.png create mode 100644 docs/images/logo.png rename {docs/plans => plans}/2025-12-15-dbt-metrics-plugin-design.md (100%) rename {docs/plans => plans}/2025-12-15-metrics-framework-design.md (100%) rename {docs/plans => plans}/2025-12-15-metrics-framework-implementation.md (100%) rename {docs/plans => plans}/2025-12-15-multi-context-implementation.md (100%) rename {docs/plans => plans}/2025-12-16-instance-based-providers-design.md (100%) rename {docs/plans => plans}/2025-12-16-instance-based-providers-implementation.md (100%) rename {docs/plans => plans}/2025-12-16-namespaced-providers-design.md (100%) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index d6eedb1..374337a 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -40,7 +40,7 @@ jobs: run: uv sync --group docs - name: Build documentation - run: uv run mkdocs build --strict + run: uv run zensical build --strict - name: Setup Pages uses: actions/configure-pages@v4 diff --git a/docs/concepts/materializers.md b/docs/concepts/materializers.md index 8fc27ee..25c3230 100644 --- a/docs/concepts/materializers.md +++ b/docs/concepts/materializers.md @@ -4,13 +4,15 @@ Materializers format and output calculated metrics. They transform raw metric da ## Available Materializers -CheckUp includes three built-in materializers: +CheckUp includes five built-in materializers: | Materializer | Output | Use Case | |-------------|--------|----------| | `ConsoleMaterializer` | Terminal tables | Interactive viewing | | `CSVMaterializer` | CSV file | Data analysis, spreadsheets | | `HTMLMaterializer` | HTML report | Sharing, dashboards | +| `MarkdownMaterializer` | Markdown table on stdout | Pull request comments, CI job summaries | +| `SQLAlchemyMaterializer` | Database rows | Tracking metrics over time | ## Using Materializers @@ -99,6 +101,59 @@ Features: - Responsive design - Color-coded values +## Markdown Materializer + +Prints a GitHub-flavoured Markdown table to stdout. Redirect it into a pull request +comment or a CI job summary: + +```python +from checkup import MarkdownMaterializer + +result.materialize(MarkdownMaterializer()) +``` + +The table holds one row per measurement, with the value column right-aligned: + +```markdown +| Name | Description | Value | Unit | Diagnostics | +| --- | --- | ---: | --- | --- | +| file_count | Number of files | 42 | files | Found 42 files | +``` + +Pipes in a value become `\|` and newlines become `
`, so a diagnostic that spans +several lines still renders as one row. + +## SQLAlchemy Materializer + +Writes measurements as rows to a database table, creating the table when it does not +exist. Each run appends rows and stamps them with `measured_at`, which makes it the +option to reach for when tracking metrics over time: + +```python +from checkup import SQLAlchemyMaterializer + +result.materialize( + SQLAlchemyMaterializer( + connection_url="sqlite:///metrics.db", + table_name="metrics", + ) +) +``` + +Any database SQLAlchemy supports works through the connection URL, including +PostgreSQL and MySQL. The default table holds these columns: + +`name`, `value`, `unit`, `diagnostic`, `description`, `tags`, `measured_at` + +| Argument | Default | Description | +|----------|---------|-------------| +| `connection_url` | required | SQLAlchemy connection URL, stored as a secret | +| `table_name` | `"metrics"` | Target table | +| `table_schema` | `None` | Database schema, such as `analytics` | +| `connect_args` | `None` | Arguments passed to the underlying driver | +| `expand_tags` | `False` | Write each tag to its own `tag_` column instead of one JSON `tags` column | +| `batch_size` | `1000` | Rows per insert batch | + ## Multiple Outputs You can materialize to multiple formats: diff --git a/docs/concepts/metrics.md b/docs/concepts/metrics.md index d9c68b7..1dc456b 100644 --- a/docs/concepts/metrics.md +++ b/docs/concepts/metrics.md @@ -13,9 +13,9 @@ from checkup.types import Context class MyMetric(Metric): # Required class attributes - name = "my_metric" - description = "Description of what this metric measures" - unit = "count" + name: str = "my_metric" + description: str = "Description of what this metric measures" + unit: str = "count" def calculate(self, context: Context, measurements: dict) -> Measurement: # Your calculation logic here @@ -53,7 +53,7 @@ return self.measure(value=42, diagnostic="Explanation", tags={"key": "value"}) ## The Calculate Method -The `calculate` method is where you implement your metric logic: +The `calculate` method holds your metric logic: ```python def calculate(self, context: Context, measurements: dict) -> Measurement: @@ -77,18 +77,18 @@ Metrics can depend on other metrics. The framework ensures dependencies are calc ```python class BaseMetric(Metric): - name = "base_metric" - description = "A base metric" - unit = "count" + name: str = "base_metric" + description: str = "A base metric" + unit: str = "count" def calculate(self, context: Context, measurements: dict) -> Measurement: return self.measure(value=100) class DerivedMetric(Metric): - name = "derived_metric" - description = "Depends on base metric" - unit = "percent" + name: str = "derived_metric" + description: str = "Depends on base metric" + unit: str = "percent" @classmethod def depends_on(cls) -> list[type[Metric]]: @@ -113,9 +113,9 @@ class MyDataProvider(Provider): class MyMetric(Metric): - name = "my_metric" - description = "Uses my_data provider" - unit = "items" + name: str = "my_metric" + description: str = "Uses my_data provider" + unit: str = "items" @classmethod def providers(cls) -> list[type[Provider]]: @@ -132,22 +132,24 @@ class MyMetric(Metric): Metrics can specify how they should be executed: ```python +from typing import ClassVar + from checkup import ExecutorType class IOBoundMetric(Metric): - name = "io_metric" - executor = ExecutorType.THREAD # Default, for I/O-bound operations + name: str = "io_metric" + executor: ClassVar[ExecutorType] = ExecutorType.THREAD # Default, for I/O-bound operations class CPUBoundMetric(Metric): - name = "cpu_metric" - executor = ExecutorType.PROCESS # For CPU-intensive calculations + name: str = "cpu_metric" + executor: ClassVar[ExecutorType] = ExecutorType.PROCESS # For CPU-intensive calculations class AsyncMetric(Metric): - name = "async_metric" - executor = ExecutorType.ASYNCIO # For async I/O operations + name: str = "async_metric" + executor: ClassVar[ExecutorType] = ExecutorType.ASYNCIO # For async I/O operations ``` | Executor | Best For | Notes | @@ -162,9 +164,9 @@ Tags allow grouping and filtering metrics. Tags can be set when creating the mea ```python class TaggedMetric(Metric): - name = "tagged_metric" - description = "A metric with tags" - unit = "count" + name: str = "tagged_metric" + description: str = "A metric with tags" + unit: str = "count" def calculate(self, context: Context, measurements: dict) -> Measurement: return self.measure( @@ -195,15 +197,17 @@ result.materialize( ## Example: Complete Metric ```python +from typing import ClassVar + from checkup import Metric, Provider, ExecutorType, Measurement from checkup.types import Context class CodeCoverageMetric(Metric): - name = "code_coverage" - description = "Percentage of code covered by tests" - unit = "percent" - executor = ExecutorType.THREAD + name: str = "code_coverage" + description: str = "Percentage of code covered by tests" + unit: str = "percent" + executor: ClassVar[ExecutorType] = ExecutorType.THREAD @classmethod def providers(cls) -> list[type[Provider]]: diff --git a/docs/concepts/overview.md b/docs/concepts/overview.md index 952be8a..c614c5e 100644 --- a/docs/concepts/overview.md +++ b/docs/concepts/overview.md @@ -2,7 +2,7 @@ CheckUp is built around three core concepts that work together to calculate and output metrics. -## The Three Pillars +## Providers, metrics, and materializers ``` ┌─────────────┐ ┌─────────────┐ ┌──────────────┐ @@ -52,6 +52,8 @@ Available formats: - Console (rich tables) - CSV files - HTML reports +- Markdown tables +- Database rows, through SQLAlchemy ## The CheckHub Orchestrator @@ -75,20 +77,21 @@ result.materialize(ConsoleMaterializer(...)) ## Execution Flow -1. **Registration**: Metrics and provider sets are registered with CheckHub +1. **Registration**: CheckHub registers the metrics and provider sets 2. **Dependency Resolution**: The framework builds a dependency graph and determines execution order -3. **Validation**: Provider requirements are validated against available providers +3. **Validation**: The framework validates provider requirements against the available providers 4. **Provider Execution**: Each provider set runs to enrich context -5. **Metric Calculation**: Metrics are calculated in dependency order -6. **Result Aggregation**: Results from all provider sets are combined -7. **Materialization**: Results are output in the desired format +5. **Metric Calculation**: The framework calculates metrics in dependency order +6. **Result Aggregation**: CheckHub combines the results from all provider sets +7. **Materialization**: The materializer writes the results in the format you chose ## Multi-Context Execution CheckUp supports running metrics across multiple contexts (provider sets): ```python -CheckHub() +( + CheckHub() .with_metrics([RepoMetric]) .with_providers([ [GitProvider(repo="repo-a")], @@ -96,15 +99,16 @@ CheckHub() [GitProvider(repo="repo-c")], ]) .measure() +) ``` This calculates the same metrics for each repository, enabling comparative analysis. ## Parallel Execution -Metrics are calculated in parallel using a process pool: +CheckUp calculates metrics in parallel using a process pool: -- Provider sets are executed concurrently +- CheckHub runs provider sets concurrently - Within each context, metrics respect dependency order - CPU-bound metrics can use the `PROCESS` executor - I/O-bound metrics can use the `THREAD` executor @@ -112,9 +116,9 @@ Metrics are calculated in parallel using a process pool: ## Error Handling -CheckUp provides robust error handling: +CheckUp reports failures instead of hiding them: -- Provider failures are captured and reported -- Individual context failures don't stop other contexts +- CheckUp captures and reports provider failures +- Each context fails independently, so the others keep running - `MeasurementResult.errors` contains all failures -- Detailed logging is available for debugging +- Logging is available for debugging diff --git a/docs/concepts/providers.md b/docs/concepts/providers.md index 7abf0cc..839cbfe 100644 --- a/docs/concepts/providers.md +++ b/docs/concepts/providers.md @@ -79,13 +79,15 @@ class DatabaseProvider(Provider): Use providers with different configurations: ```python -CheckHub() +( + CheckHub() .with_metrics([MyMetric]) .with_providers([ [DatabaseProvider("postgres://prod/db")], [DatabaseProvider("postgres://staging/db")], ]) .measure() +) ``` ## Provider Sets @@ -93,7 +95,8 @@ CheckHub() Provider sets allow running the same metrics against different contexts: ```python -CheckHub() +( + CheckHub() .with_metrics([RepoMetrics]) .with_providers([ # Each inner list is a "provider set" @@ -102,6 +105,7 @@ CheckHub() [GitProvider(repo="repo-a"), EnvProvider(env="staging")], ]) .measure() +) ``` Each provider set runs independently, creating separate context for metrics. diff --git a/docs/getting-started/installation.md b/docs/getting-started/installation.md index b1d08dc..a356cd2 100644 --- a/docs/getting-started/installation.md +++ b/docs/getting-started/installation.md @@ -3,20 +3,20 @@ ## Requirements - Python 3.12 or higher -- pip or uv package manager +- [uv](https://docs.astral.sh/uv/) package manager ## Installing CheckUp -### Using pip +Add CheckUp to your project: ```bash -pip install checkup +uv add checkup ``` -### Using uv +To try CheckUp without adding it to a project, run the CLI directly: ```bash -uv add checkup +uvx checkup ``` ### From Source @@ -24,21 +24,21 @@ uv add checkup Clone the repository and install in development mode: ```bash -git clone https://github.com/datamindedbe/incubator-checkup.git -cd incubator-checkup +git clone https://github.com/datamindedbe/checkup.git +cd checkup uv sync ``` ## Installing Plugins -CheckUp provides several plugins for specific use cases. Install them as needed: +Install plugins as needed: ### Git Plugin For analyzing Git repositories: ```bash -pip install checkup-git +uv add checkup-git ``` ### dbt Plugin @@ -46,7 +46,7 @@ pip install checkup-git For dbt project metrics: ```bash -pip install checkup-dbt +uv add checkup-dbt ``` ### Python Plugin @@ -54,7 +54,7 @@ pip install checkup-dbt For Python project analysis: ```bash -pip install checkup-python +uv add checkup-python ``` ### Conveyor Plugin @@ -62,22 +62,21 @@ pip install checkup-python For Conveyor platform integration: ```bash -pip install checkup-conveyor +uv add checkup-conveyor ``` ## Verifying Installation -After installation, verify that CheckUp is correctly installed: +Verify the installation: ```bash -checkup +uv run checkup --version ``` -You should see: +This prints the installed version. To list the plugins available in your environment: -``` -Checkup metrics framework -Import CheckHub to get started +```bash +uv run checkup plugins ``` Or verify in Python: @@ -93,8 +92,8 @@ For contributing to CheckUp: ```bash # Clone the repository -git clone https://github.com/datamindedbe/incubator-checkup.git -cd incubator-checkup +git clone https://github.com/datamindedbe/checkup.git +cd checkup # Install with development dependencies uv sync diff --git a/docs/getting-started/quickstart.md b/docs/getting-started/quickstart.md index 2d89aa8..963eae6 100644 --- a/docs/getting-started/quickstart.md +++ b/docs/getting-started/quickstart.md @@ -1,6 +1,6 @@ # Quick Start -This guide will help you get started with CheckUp by walking through a complete example. +This guide walks through a complete example. ## Creating Your First Metric @@ -12,9 +12,9 @@ from checkup.types import Context class FileCountMetric(Metric): - name = "file_count" - description = "Number of files in the project" - unit = "files" + name: str = "file_count" + description: str = "Number of files in the project" + unit: str = "files" def calculate(self, context: Context, measurements: dict) -> Measurement: # Access data from context and calculate your metric @@ -77,9 +77,9 @@ Now update your metric to use the provider: ```python class FileCountMetric(Metric): - name = "file_count" - description = "Number of files in the project" - unit = "files" + name: str = "file_count" + description: str = "Number of files in the project" + unit: str = "files" @classmethod def providers(cls) -> list[type[Provider]]: @@ -113,9 +113,9 @@ Metrics can depend on other metrics: ```python class TotalLinesMetric(Metric): - name = "total_lines" - description = "Total lines of code" - unit = "lines" + name: str = "total_lines" + description: str = "Total lines of code" + unit: str = "lines" def calculate(self, context: Context, measurements: dict) -> Measurement: # Count lines in all files @@ -123,9 +123,9 @@ class TotalLinesMetric(Metric): class AverageLinesPerFileMetric(Metric): - name = "avg_lines_per_file" - description = "Average lines per file" - unit = "lines/file" + name: str = "avg_lines_per_file" + description: str = "Average lines per file" + unit: str = "lines/file" @classmethod def depends_on(cls) -> list[type[Metric]]: diff --git a/docs/images/banner.png b/docs/images/banner.png new file mode 100644 index 0000000000000000000000000000000000000000..99a667a55268a516e8152dc77328e0f7d091e574 GIT binary patch literal 181883 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

;!?8d3Q+v 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 literal 0 HcmV?d00001 diff --git a/docs/images/favicon.png b/docs/images/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..7876e775bec67443d4447a14d7af1ab2d1c92308 GIT binary patch literal 21637 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 E1qs)4WdHyG literal 0 HcmV?d00001 diff --git a/docs/images/logo.png b/docs/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..4d7539894ee2b97f41def44b33e350ef946418ee GIT binary patch literal 14621 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 literal 0 HcmV?d00001 diff --git a/docs/index.md b/docs/index.md index baef1f6..39db1e9 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,10 +1,10 @@ # CheckUp -![CheckUp](images/horseshoe.png){ width="200" } +![CheckUp](images/banner.png) **Computational governance framework for measuring data product health.** -CheckUp is an extensible Python framework designed to calculate metrics from context data, enabling teams to measure and monitor the health of their data products. +CheckUp calculates metrics from context data, so teams can track the health of their data products. ## Key Features @@ -21,32 +21,36 @@ from checkup.types import Context class SimpleMetric(Metric): - name = "example_metric" - description = "A simple example metric" - unit = "count" + name: str = "example_metric" + description: str = "A simple example metric" + unit: str = "count" def calculate(self, context: Context, measurements: dict) -> Measurement: return self.measure(value=42, diagnostic="Calculated successfully") # Run the metric and output to console -( - CheckHub() - .with_metrics([SimpleMetric()]) - .measure() - .materialize(ConsoleMaterializer(group_tag_1="domain", group_tag_2="project")) -) +if __name__ == "__main__": + ( + CheckHub() + .with_metrics([SimpleMetric()]) + .measure() + .materialize(ConsoleMaterializer(group_tag_1="domain", group_tag_2="project")) + ) ``` +CheckUp runs metrics in a process pool, so scripts need the `if __name__ == "__main__":` +guard on platforms that spawn subprocesses, such as macOS and Windows. + ## Installation ```bash -pip install checkup +uv add checkup ``` ## Getting Started -Ready to dive in? Check out the [Installation Guide](getting-started/installation.md) and [Quick Start](getting-started/quickstart.md) to get up and running. +Start with the [Installation Guide](getting-started/installation.md), then the [Quick Start](getting-started/quickstart.md). ## Architecture diff --git a/docs/plugins/conveyor.md b/docs/plugins/conveyor.md index 79d2c5f..46e2063 100644 --- a/docs/plugins/conveyor.md +++ b/docs/plugins/conveyor.md @@ -5,7 +5,7 @@ The Conveyor plugin provides metrics for monitoring projects deployed on the Con ## Installation ```bash -pip install checkup-conveyor +uv add checkup-conveyor ``` **Note:** This plugin requires the `requests` library. diff --git a/docs/plugins/dbt.md b/docs/plugins/dbt.md index b1dd9d7..938420b 100644 --- a/docs/plugins/dbt.md +++ b/docs/plugins/dbt.md @@ -5,7 +5,7 @@ The dbt plugin provides metrics for analyzing dbt (data build tool) projects. ## Installation ```bash -pip install checkup-dbt +uv add checkup-dbt ``` **Note:** This plugin requires `dbt-core>=1.9`. diff --git a/docs/plugins/git.md b/docs/plugins/git.md index 88a4f93..62c8c90 100644 --- a/docs/plugins/git.md +++ b/docs/plugins/git.md @@ -5,7 +5,7 @@ The Git plugin provides metrics for analyzing Git repositories. ## Installation ```bash -pip install checkup-git +uv add checkup-git ``` ## Provider diff --git a/docs/plugins/overview.md b/docs/plugins/overview.md index 90d94a6..6ef2c90 100644 --- a/docs/plugins/overview.md +++ b/docs/plugins/overview.md @@ -17,9 +17,6 @@ Install plugins alongside the core package: ```bash # Install core and desired plugins -pip install checkup checkup-git checkup-dbt - -# Or using uv uv add checkup checkup-git checkup-dbt ``` @@ -120,9 +117,9 @@ from .providers import MyServiceProvider class MyServiceMetric(Metric): - name = "myservice_health" - description = "Health status of MyService" - unit = "status" + name: str = "myservice_health" + description: str = "Health status of MyService" + unit: str = "status" @classmethod def providers(cls) -> list[type[Provider]]: diff --git a/docs/plugins/python.md b/docs/plugins/python.md index eb22daf..5d953f6 100644 --- a/docs/plugins/python.md +++ b/docs/plugins/python.md @@ -5,7 +5,7 @@ The Python plugin provides metrics for analyzing Python projects. ## Installation ```bash -pip install checkup-python +uv add checkup-python ``` ## Provider diff --git a/mkdocs.yml b/mkdocs.yml index 0e7a08a..b817c78 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,13 +1,13 @@ site_name: CheckUp site_description: Computational governance framework for measuring data product health -site_url: https://datamindedbe.github.io/incubator-checkup/ -repo_url: https://github.com/datamindedbe/incubator-checkup -repo_name: datamindedbe/incubator-checkup +site_url: https://datamindedbe.github.io/checkup/ +repo_url: https://github.com/datamindedbe/checkup +repo_name: datamindedbe/checkup theme: name: material - logo: images/horseshoe.svg - favicon: images/horseshoe.svg + logo: images/logo.png + favicon: images/favicon.png palette: - media: "(prefers-color-scheme: light)" scheme: default @@ -59,9 +59,6 @@ validation: nav: omitted_files: ignore -exclude_docs: | - plans/ - nav: - Home: index.md - Getting Started: @@ -84,4 +81,4 @@ nav: extra: social: - icon: fontawesome/brands/github - link: https://github.com/datamindedbe/incubator-checkup + link: https://github.com/datamindedbe/checkup diff --git a/docs/plans/2025-12-15-dbt-metrics-plugin-design.md b/plans/2025-12-15-dbt-metrics-plugin-design.md similarity index 100% rename from docs/plans/2025-12-15-dbt-metrics-plugin-design.md rename to plans/2025-12-15-dbt-metrics-plugin-design.md diff --git a/docs/plans/2025-12-15-metrics-framework-design.md b/plans/2025-12-15-metrics-framework-design.md similarity index 100% rename from docs/plans/2025-12-15-metrics-framework-design.md rename to plans/2025-12-15-metrics-framework-design.md diff --git a/docs/plans/2025-12-15-metrics-framework-implementation.md b/plans/2025-12-15-metrics-framework-implementation.md similarity index 100% rename from docs/plans/2025-12-15-metrics-framework-implementation.md rename to plans/2025-12-15-metrics-framework-implementation.md diff --git a/docs/plans/2025-12-15-multi-context-implementation.md b/plans/2025-12-15-multi-context-implementation.md similarity index 100% rename from docs/plans/2025-12-15-multi-context-implementation.md rename to plans/2025-12-15-multi-context-implementation.md diff --git a/docs/plans/2025-12-16-instance-based-providers-design.md b/plans/2025-12-16-instance-based-providers-design.md similarity index 100% rename from docs/plans/2025-12-16-instance-based-providers-design.md rename to plans/2025-12-16-instance-based-providers-design.md diff --git a/docs/plans/2025-12-16-instance-based-providers-implementation.md b/plans/2025-12-16-instance-based-providers-implementation.md similarity index 100% rename from docs/plans/2025-12-16-instance-based-providers-implementation.md rename to plans/2025-12-16-instance-based-providers-implementation.md diff --git a/docs/plans/2025-12-16-namespaced-providers-design.md b/plans/2025-12-16-namespaced-providers-design.md similarity index 100% rename from docs/plans/2025-12-16-namespaced-providers-design.md rename to plans/2025-12-16-namespaced-providers-design.md diff --git a/pyproject.toml b/pyproject.toml index 485c255..2b3c71f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -54,8 +54,7 @@ members = [ [dependency-groups] dev = ["pytest>=9.0.2", "pytest-cov>=7.0.0", "ruff>=0.8.6", "prek>=0.3.0"] docs = [ - "mkdocs>=1.6.0", - "mkdocs-material>=9.5.0", + "zensical>=0.0.50", "pymdown-extensions>=10.0", ] diff --git a/src/checkup/__init__.py b/src/checkup/__init__.py index 1d7b465..23ec96c 100644 --- a/src/checkup/__init__.py +++ b/src/checkup/__init__.py @@ -11,6 +11,7 @@ ConsoleMaterializer, CSVMaterializer, HTMLMaterializer, + MarkdownMaterializer, Materializer, SQLAlchemyMaterializer, ) @@ -43,6 +44,7 @@ "ConsoleMaterializer", "CSVMaterializer", "HTMLMaterializer", + "MarkdownMaterializer", "SQLAlchemyMaterializer", # Exceptions "ProviderError", diff --git a/uv.lock b/uv.lock index 5ceb1b1..6536723 100644 --- a/uv.lock +++ b/uv.lock @@ -69,20 +69,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/b7/b8/3fe70c75fe32afc4bb507f75563d39bc5642255d1d94f1f23604725780bf/babel-2.17.0-py3-none-any.whl", hash = "sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2", size = 10182537, upload-time = "2025-02-01T15:17:37.39Z" }, ] -[[package]] -name = "backrefs" -version = "6.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/86/e3/bb3a439d5cb255c4774724810ad8073830fac9c9dee123555820c1bcc806/backrefs-6.1.tar.gz", hash = "sha256:3bba1749aafe1db9b915f00e0dd166cba613b6f788ffd63060ac3485dc9be231", size = 7011962, upload-time = "2025-11-15T14:52:08.323Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/3b/ee/c216d52f58ea75b5e1841022bbae24438b19834a29b163cb32aa3a2a7c6e/backrefs-6.1-py310-none-any.whl", hash = "sha256:2a2ccb96302337ce61ee4717ceacfbf26ba4efb1d55af86564b8bbaeda39cac1", size = 381059, upload-time = "2025-11-15T14:51:59.758Z" }, - { url = "https://files.pythonhosted.org/packages/e6/9a/8da246d988ded941da96c7ed945d63e94a445637eaad985a0ed88787cb89/backrefs-6.1-py311-none-any.whl", hash = "sha256:e82bba3875ee4430f4de4b6db19429a27275d95a5f3773c57e9e18abc23fd2b7", size = 392854, upload-time = "2025-11-15T14:52:01.194Z" }, - { url = "https://files.pythonhosted.org/packages/37/c9/fd117a6f9300c62bbc33bc337fd2b3c6bfe28b6e9701de336b52d7a797ad/backrefs-6.1-py312-none-any.whl", hash = "sha256:c64698c8d2269343d88947c0735cb4b78745bd3ba590e10313fbf3f78c34da5a", size = 398770, upload-time = "2025-11-15T14:52:02.584Z" }, - { url = "https://files.pythonhosted.org/packages/eb/95/7118e935b0b0bd3f94dfec2d852fd4e4f4f9757bdb49850519acd245cd3a/backrefs-6.1-py313-none-any.whl", hash = "sha256:4c9d3dc1e2e558965202c012304f33d4e0e477e1c103663fd2c3cc9bb18b0d05", size = 400726, upload-time = "2025-11-15T14:52:04.093Z" }, - { url = "https://files.pythonhosted.org/packages/1d/72/6296bad135bfafd3254ae3648cd152980a424bd6fed64a101af00cc7ba31/backrefs-6.1-py314-none-any.whl", hash = "sha256:13eafbc9ccd5222e9c1f0bec563e6d2a6d21514962f11e7fc79872fd56cbc853", size = 412584, upload-time = "2025-11-15T14:52:05.233Z" }, - { url = "https://files.pythonhosted.org/packages/02/e3/a4fa1946722c4c7b063cc25043a12d9ce9b4323777f89643be74cef2993c/backrefs-6.1-py39-none-any.whl", hash = "sha256:a9e99b8a4867852cad177a6430e31b0f6e495d65f8c6c134b68c14c3c95bf4b0", size = 381058, upload-time = "2025-11-15T14:52:06.698Z" }, -] - [[package]] name = "certifi" version = "2025.11.12" @@ -171,9 +157,8 @@ dev = [ { name = "ruff" }, ] docs = [ - { name = "mkdocs" }, - { name = "mkdocs-material" }, { name = "pymdown-extensions" }, + { name = "zensical" }, ] [package.metadata] @@ -195,9 +180,8 @@ dev = [ { name = "ruff", specifier = ">=0.8.6" }, ] docs = [ - { name = "mkdocs", specifier = ">=1.6.0" }, - { name = "mkdocs-material", specifier = ">=9.5.0" }, { name = "pymdown-extensions", specifier = ">=10.0" }, + { name = "zensical", specifier = ">=0.0.50" }, ] [[package]] @@ -609,6 +593,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/f7/e6/efe534ef0952b531b630780e19cabd416e2032697019d5295defc6ef9bd9/deepdiff-8.6.1-py3-none-any.whl", hash = "sha256:ee8708a7f7d37fb273a541fa24ad010ed484192cd0c4ffc0fa0ed5e2d4b9e78b", size = 91378, upload-time = "2025-09-03T19:40:39.679Z" }, ] +[[package]] +name = "deepmerge" +version = "2.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2a/78/6e9e20106224083cfb817d2d3c26e80e72258d617b616721a169b87081e0/deepmerge-2.1.0.tar.gz", hash = "sha256:07ca7a7b8935df596c512fa8161877c0487ac61f691c07766e7d71d2b23bdd2f", size = 21449, upload-time = "2026-06-22T05:46:07.669Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/51/25/2a75b47cb057b1e164c604fb81ab690a6cdb5e2260ce651194eae90f64a3/deepmerge-2.1.0-py3-none-any.whl", hash = "sha256:8f148339a91d680a75ecb74ade235d9e759a93df373a0b04e9d31c8666cfeb75", size = 14345, upload-time = "2026-06-22T05:46:06.742Z" }, +] + [[package]] name = "duckdb" version = "1.4.3" @@ -638,18 +631,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/b1/5a/8af5b96ce5622b6168854f479ce846cf7fb589813dcc7d8724233c37ded3/duckdb-1.4.3-cp314-cp314-win_arm64.whl", hash = "sha256:90f241f25cffe7241bf9f376754a5845c74775e00e1c5731119dc88cd71e0cb2", size = 13527759, upload-time = "2025-12-09T10:59:05.496Z" }, ] -[[package]] -name = "ghp-import" -version = "2.1.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "python-dateutil" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/d9/29/d40217cbe2f6b1359e00c6c307bb3fc876ba74068cbab3dde77f03ca0dc4/ghp-import-2.1.0.tar.gz", hash = "sha256:9c535c4c61193c2df8871222567d7fd7e5014d835f97dc7b7439069e2413d343", size = 10943, upload-time = "2022-05-02T15:47:16.11Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/f7/ec/67fbef5d497f86283db54c22eec6f6140243aae73265799baaaa19cd17fb/ghp_import-2.1.0-py3-none-any.whl", hash = "sha256:8337dd7b50877f163d4c0289bc1f1c7f127550241988d568c1db512c4324a619", size = 11034, upload-time = "2022-05-02T15:47:14.552Z" }, -] - [[package]] name = "greenlet" version = "3.3.1" @@ -886,84 +867,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8", size = 9979, upload-time = "2022-08-14T12:40:09.779Z" }, ] -[[package]] -name = "mergedeep" -version = "1.3.4" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/3a/41/580bb4006e3ed0361b8151a01d324fb03f420815446c7def45d02f74c270/mergedeep-1.3.4.tar.gz", hash = "sha256:0096d52e9dad9939c3d975a774666af186eda617e6ca84df4c94dec30004f2a8", size = 4661, upload-time = "2021-02-05T18:55:30.623Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl", hash = "sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307", size = 6354, upload-time = "2021-02-05T18:55:29.583Z" }, -] - -[[package]] -name = "mkdocs" -version = "1.6.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "click" }, - { name = "colorama", marker = "sys_platform == 'win32'" }, - { name = "ghp-import" }, - { name = "jinja2" }, - { name = "markdown" }, - { name = "markupsafe" }, - { name = "mergedeep" }, - { name = "mkdocs-get-deps" }, - { name = "packaging" }, - { name = "pathspec" }, - { name = "pyyaml" }, - { name = "pyyaml-env-tag" }, - { name = "watchdog" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/bc/c6/bbd4f061bd16b378247f12953ffcb04786a618ce5e904b8c5a01a0309061/mkdocs-1.6.1.tar.gz", hash = "sha256:7b432f01d928c084353ab39c57282f29f92136665bdd6abf7c1ec8d822ef86f2", size = 3889159, upload-time = "2024-08-30T12:24:06.899Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/22/5b/dbc6a8cddc9cfa9c4971d59fb12bb8d42e161b7e7f8cc89e49137c5b279c/mkdocs-1.6.1-py3-none-any.whl", hash = "sha256:db91759624d1647f3f34aa0c3f327dd2601beae39a366d6e064c03468d35c20e", size = 3864451, upload-time = "2024-08-30T12:24:05.054Z" }, -] - -[[package]] -name = "mkdocs-get-deps" -version = "0.2.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "mergedeep" }, - { name = "platformdirs" }, - { name = "pyyaml" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/98/f5/ed29cd50067784976f25ed0ed6fcd3c2ce9eb90650aa3b2796ddf7b6870b/mkdocs_get_deps-0.2.0.tar.gz", hash = "sha256:162b3d129c7fad9b19abfdcb9c1458a651628e4b1dea628ac68790fb3061c60c", size = 10239, upload-time = "2023-11-20T17:51:09.981Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/9f/d4/029f984e8d3f3b6b726bd33cafc473b75e9e44c0f7e80a5b29abc466bdea/mkdocs_get_deps-0.2.0-py3-none-any.whl", hash = "sha256:2bf11d0b133e77a0dd036abeeb06dec8775e46efa526dc70667d8863eefc6134", size = 9521, upload-time = "2023-11-20T17:51:08.587Z" }, -] - -[[package]] -name = "mkdocs-material" -version = "9.7.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "babel" }, - { name = "backrefs" }, - { name = "colorama" }, - { name = "jinja2" }, - { name = "markdown" }, - { name = "mkdocs" }, - { name = "mkdocs-material-extensions" }, - { name = "paginate" }, - { name = "pygments" }, - { name = "pymdown-extensions" }, - { name = "requests" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/27/e2/2ffc356cd72f1473d07c7719d82a8f2cbd261666828614ecb95b12169f41/mkdocs_material-9.7.1.tar.gz", hash = "sha256:89601b8f2c3e6c6ee0a918cc3566cb201d40bf37c3cd3c2067e26fadb8cce2b8", size = 4094392, upload-time = "2025-12-18T09:49:00.308Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/3e/32/ed071cb721aca8c227718cffcf7bd539620e9799bbf2619e90c757bfd030/mkdocs_material-9.7.1-py3-none-any.whl", hash = "sha256:3f6100937d7d731f87f1e3e3b021c97f7239666b9ba1151ab476cabb96c60d5c", size = 9297166, upload-time = "2025-12-18T09:48:56.664Z" }, -] - -[[package]] -name = "mkdocs-material-extensions" -version = "1.3.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/79/9b/9b4c96d6593b2a541e1cb8b34899a6d021d208bb357042823d4d2cabdbe7/mkdocs_material_extensions-1.3.1.tar.gz", hash = "sha256:10c9511cea88f568257f960358a467d12b970e1f7b2c0e5fb2bb48cab1928443", size = 11847, upload-time = "2023-11-22T19:09:45.208Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/5b/54/662a4743aa81d9582ee9339d4ffa3c8fd40a4965e033d77b9da9774d3960/mkdocs_material_extensions-1.3.1-py3-none-any.whl", hash = "sha256:adff8b62700b25cb77b53358dad940f3ef973dd6db797907c49e3c2ef3ab4e31", size = 8728, upload-time = "2023-11-22T19:09:43.465Z" }, -] - [[package]] name = "more-itertools" version = "10.8.0" @@ -1044,15 +947,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl", hash = "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484", size = 66469, upload-time = "2025-04-19T11:48:57.875Z" }, ] -[[package]] -name = "paginate" -version = "0.5.7" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/ec/46/68dde5b6bc00c1296ec6466ab27dddede6aec9af1b99090e1107091b3b84/paginate-0.5.7.tar.gz", hash = "sha256:22bd083ab41e1a8b4f3690544afb2c60c25e5c9a63a30fa2f483f6c60c8e5945", size = 19252, upload-time = "2024-08-25T14:17:24.139Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/90/96/04b8e52da071d28f5e21a805b19cb9390aa17a47462ac87f5e2696b9566d/paginate-0.5.7-py2.py3-none-any.whl", hash = "sha256:b885e2af73abcf01d9559fd5216b57ef722f8c42affbb63942377668e35c7591", size = 13746, upload-time = "2024-08-25T14:17:22.55Z" }, -] - [[package]] name = "parsedatetime" version = "2.6" @@ -1071,15 +965,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl", hash = "sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08", size = 31191, upload-time = "2023-12-10T22:30:43.14Z" }, ] -[[package]] -name = "platformdirs" -version = "4.5.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/cf/86/0248f086a84f01b37aaec0fa567b397df1a119f73c16f6c7a9aac73ea309/platformdirs-4.5.1.tar.gz", hash = "sha256:61d5cdcc6065745cdd94f0f878977f8de9437be93de97c1c12f853c9c0cdcbda", size = 21715, upload-time = "2025-12-05T13:52:58.638Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/cb/28/3bfe2fa5a7b9c46fe7e13c97bda14c895fb10fa2ebf1d0abb90e0cea7ee1/platformdirs-4.5.1-py3-none-any.whl", hash = "sha256:d03afa3963c806a9bed9d5125c8f4cb2fdaf74a55ab60e5d59b3fde758104d31", size = 18731, upload-time = "2025-12-05T13:52:56.823Z" }, -] - [[package]] name = "pluggy" version = "1.6.0" @@ -1228,24 +1113,24 @@ wheels = [ [[package]] name = "pygments" -version = "2.19.2" +version = "2.20.0" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/b0/77/a5b8c569bf593b0140bde72ea885a803b82086995367bf2037de0159d924/pygments-2.19.2.tar.gz", hash = "sha256:636cb2477cec7f8952536970bc533bc43743542f70392ae026374600add5b887", size = 4968631, upload-time = "2025-06-21T13:39:12.283Z" } +sdist = { url = "https://files.pythonhosted.org/packages/c3/b2/bc9c9196916376152d655522fdcebac55e66de6603a76a02bca1b6414f6c/pygments-2.20.0.tar.gz", hash = "sha256:6757cd03768053ff99f3039c1a36d6c0aa0b263438fcab17520b30a303a82b5f", size = 4955991, upload-time = "2026-03-29T13:29:33.898Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/c7/21/705964c7812476f378728bdf590ca4b771ec72385c533964653c68e86bdc/pygments-2.19.2-py3-none-any.whl", hash = "sha256:86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b", size = 1225217, upload-time = "2025-06-21T13:39:07.939Z" }, + { url = "https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl", hash = "sha256:81a9e26dd42fd28a23a2d169d86d7ac03b46e2f8b59ed4698fb4785f946d0176", size = 1231151, upload-time = "2026-03-29T13:29:30.038Z" }, ] [[package]] name = "pymdown-extensions" -version = "10.20" +version = "11.0.1" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "markdown" }, { name = "pyyaml" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/3e/35/e3814a5b7df295df69d035cfb8aab78b2967cdf11fcfae7faed726b66664/pymdown_extensions-10.20.tar.gz", hash = "sha256:5c73566ab0cf38c6ba084cb7c5ea64a119ae0500cce754ccb682761dfea13a52", size = 852774, upload-time = "2025-12-31T19:59:42.211Z" } +sdist = { url = "https://files.pythonhosted.org/packages/21/a9/5f0c535ba3b08fe09270c16808e053a968868242ecbd5676d4e3a488bf28/pymdown_extensions-11.0.1.tar.gz", hash = "sha256:dd2905ae6fc5b75582fafb139a1266ffc754705efa902aa50067fa7ff4f94ec0", size = 857113, upload-time = "2026-07-02T17:59:22.955Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/ea/10/47caf89cbb52e5bb764696fd52a8c591a2f0e851a93270c05a17f36000b5/pymdown_extensions-10.20-py3-none-any.whl", hash = "sha256:ea9e62add865da80a271d00bfa1c0fa085b20d133fb3fc97afdc88e682f60b2f", size = 268733, upload-time = "2025-12-31T19:59:40.652Z" }, + { url = "https://files.pythonhosted.org/packages/d6/54/da572c98c0b77626a91b5d3b89f0231d8bff5125c225420908632f8b342d/pymdown_extensions-11.0.1-py3-none-any.whl", hash = "sha256:db3943a62bab7e03af1364f0c4083e64b91fb097675a4b6cceccfbe9a77e5eb2", size = 269455, upload-time = "2026-07-02T17:59:21.271Z" }, ] [[package]] @@ -1366,18 +1251,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/f1/12/de94a39c2ef588c7e6455cfbe7343d3b2dc9d6b6b2f40c4c6565744c873d/pyyaml-6.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:ebc55a14a21cb14062aa4162f906cd962b28e2e9ea38f9b4391244cd8de4ae0b", size = 149341, upload-time = "2025-09-25T21:32:56.828Z" }, ] -[[package]] -name = "pyyaml-env-tag" -version = "1.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "pyyaml" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/eb/2e/79c822141bfd05a853236b504869ebc6b70159afc570e1d5a20641782eaa/pyyaml_env_tag-1.1.tar.gz", hash = "sha256:2eb38b75a2d21ee0475d6d97ec19c63287a7e140231e4214969d0eac923cd7ff", size = 5737, upload-time = "2025-05-13T15:24:01.64Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/04/11/432f32f8097b03e3cd5fe57e88efb685d964e2e5178a48ed61e841f7fdce/pyyaml_env_tag-1.1-py3-none-any.whl", hash = "sha256:17109e1a528561e32f026364712fee1264bc2ea6715120891174ed1b980d2e04", size = 4722, upload-time = "2025-05-13T15:23:59.629Z" }, -] - [[package]] name = "questionary" version = "2.1.1" @@ -1630,6 +1503,51 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl", hash = "sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8", size = 78154, upload-time = "2019-08-30T21:37:03.543Z" }, ] +[[package]] +name = "tomli" +version = "2.4.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/22/de/48c59722572767841493b26183a0d1cc411d54fd759c5607c4590b6563a6/tomli-2.4.1.tar.gz", hash = "sha256:7c7e1a961a0b2f2472c1ac5b69affa0ae1132c39adcb67aba98568702b9cc23f", size = 17543, upload-time = "2026-03-25T20:22:03.828Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c1/ba/42f134a3fe2b370f555f44b1d72feebb94debcab01676bf918d0cb70e9aa/tomli-2.4.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:c742f741d58a28940ce01d58f0ab2ea3ced8b12402f162f4d534dfe18ba1cd6a", size = 155924, upload-time = "2026-03-25T20:21:21.626Z" }, + { url = "https://files.pythonhosted.org/packages/dc/c7/62d7a17c26487ade21c5422b646110f2162f1fcc95980ef7f63e73c68f14/tomli-2.4.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:7f86fd587c4ed9dd76f318225e7d9b29cfc5a9d43de44e5754db8d1128487085", size = 150018, upload-time = "2026-03-25T20:21:23.002Z" }, + { url = "https://files.pythonhosted.org/packages/5c/05/79d13d7c15f13bdef410bdd49a6485b1c37d28968314eabee452c22a7fda/tomli-2.4.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ff18e6a727ee0ab0388507b89d1bc6a22b138d1e2fa56d1ad494586d61d2eae9", size = 244948, upload-time = "2026-03-25T20:21:24.04Z" }, + { url = "https://files.pythonhosted.org/packages/10/90/d62ce007a1c80d0b2c93e02cab211224756240884751b94ca72df8a875ca/tomli-2.4.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:136443dbd7e1dee43c68ac2694fde36b2849865fa258d39bf822c10e8068eac5", size = 253341, upload-time = "2026-03-25T20:21:25.177Z" }, + { url = "https://files.pythonhosted.org/packages/1a/7e/caf6496d60152ad4ed09282c1885cca4eea150bfd007da84aea07bcc0a3e/tomli-2.4.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:5e262d41726bc187e69af7825504c933b6794dc3fbd5945e41a79bb14c31f585", size = 248159, upload-time = "2026-03-25T20:21:26.364Z" }, + { url = "https://files.pythonhosted.org/packages/99/e7/c6f69c3120de34bbd882c6fba7975f3d7a746e9218e56ab46a1bc4b42552/tomli-2.4.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:5cb41aa38891e073ee49d55fbc7839cfdb2bc0e600add13874d048c94aadddd1", size = 253290, upload-time = "2026-03-25T20:21:27.46Z" }, + { url = "https://files.pythonhosted.org/packages/d6/2f/4a3c322f22c5c66c4b836ec58211641a4067364f5dcdd7b974b4c5da300c/tomli-2.4.1-cp312-cp312-win32.whl", hash = "sha256:da25dc3563bff5965356133435b757a795a17b17d01dbc0f42fb32447ddfd917", size = 98141, upload-time = "2026-03-25T20:21:28.492Z" }, + { url = "https://files.pythonhosted.org/packages/24/22/4daacd05391b92c55759d55eaee21e1dfaea86ce5c571f10083360adf534/tomli-2.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:52c8ef851d9a240f11a88c003eacb03c31fc1c9c4ec64a99a0f922b93874fda9", size = 108847, upload-time = "2026-03-25T20:21:29.386Z" }, + { url = "https://files.pythonhosted.org/packages/68/fd/70e768887666ddd9e9f5d85129e84910f2db2796f9096aa02b721a53098d/tomli-2.4.1-cp312-cp312-win_arm64.whl", hash = "sha256:f758f1b9299d059cc3f6546ae2af89670cb1c4d48ea29c3cacc4fe7de3058257", size = 95088, upload-time = "2026-03-25T20:21:30.677Z" }, + { url = "https://files.pythonhosted.org/packages/07/06/b823a7e818c756d9a7123ba2cda7d07bc2dd32835648d1a7b7b7a05d848d/tomli-2.4.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:36d2bd2ad5fb9eaddba5226aa02c8ec3fa4f192631e347b3ed28186d43be6b54", size = 155866, upload-time = "2026-03-25T20:21:31.65Z" }, + { url = "https://files.pythonhosted.org/packages/14/6f/12645cf7f08e1a20c7eb8c297c6f11d31c1b50f316a7e7e1e1de6e2e7b7e/tomli-2.4.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:eb0dc4e38e6a1fd579e5d50369aa2e10acfc9cace504579b2faabb478e76941a", size = 149887, upload-time = "2026-03-25T20:21:33.028Z" }, + { url = "https://files.pythonhosted.org/packages/5c/e0/90637574e5e7212c09099c67ad349b04ec4d6020324539297b634a0192b0/tomli-2.4.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c7f2c7f2b9ca6bdeef8f0fa897f8e05085923eb091721675170254cbc5b02897", size = 243704, upload-time = "2026-03-25T20:21:34.51Z" }, + { url = "https://files.pythonhosted.org/packages/10/8f/d3ddb16c5a4befdf31a23307f72828686ab2096f068eaf56631e136c1fdd/tomli-2.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f3c6818a1a86dd6dca7ddcaaf76947d5ba31aecc28cb1b67009a5877c9a64f3f", size = 251628, upload-time = "2026-03-25T20:21:36.012Z" }, + { url = "https://files.pythonhosted.org/packages/e3/f1/dbeeb9116715abee2485bf0a12d07a8f31af94d71608c171c45f64c0469d/tomli-2.4.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:d312ef37c91508b0ab2cee7da26ec0b3ed2f03ce12bd87a588d771ae15dcf82d", size = 247180, upload-time = "2026-03-25T20:21:37.136Z" }, + { url = "https://files.pythonhosted.org/packages/d3/74/16336ffd19ed4da28a70959f92f506233bd7cfc2332b20bdb01591e8b1d1/tomli-2.4.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:51529d40e3ca50046d7606fa99ce3956a617f9b36380da3b7f0dd3dd28e68cb5", size = 251674, upload-time = "2026-03-25T20:21:38.298Z" }, + { url = "https://files.pythonhosted.org/packages/16/f9/229fa3434c590ddf6c0aa9af64d3af4b752540686cace29e6281e3458469/tomli-2.4.1-cp313-cp313-win32.whl", hash = "sha256:2190f2e9dd7508d2a90ded5ed369255980a1bcdd58e52f7fe24b8162bf9fedbd", size = 97976, upload-time = "2026-03-25T20:21:39.316Z" }, + { url = "https://files.pythonhosted.org/packages/6a/1e/71dfd96bcc1c775420cb8befe7a9d35f2e5b1309798f009dca17b7708c1e/tomli-2.4.1-cp313-cp313-win_amd64.whl", hash = "sha256:8d65a2fbf9d2f8352685bc1364177ee3923d6baf5e7f43ea4959d7d8bc326a36", size = 108755, upload-time = "2026-03-25T20:21:40.248Z" }, + { url = "https://files.pythonhosted.org/packages/83/7a/d34f422a021d62420b78f5c538e5b102f62bea616d1d75a13f0a88acb04a/tomli-2.4.1-cp313-cp313-win_arm64.whl", hash = "sha256:4b605484e43cdc43f0954ddae319fb75f04cc10dd80d830540060ee7cd0243cd", size = 95265, upload-time = "2026-03-25T20:21:41.219Z" }, + { url = "https://files.pythonhosted.org/packages/3c/fb/9a5c8d27dbab540869f7c1f8eb0abb3244189ce780ba9cd73f3770662072/tomli-2.4.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:fd0409a3653af6c147209d267a0e4243f0ae46b011aa978b1080359fddc9b6cf", size = 155726, upload-time = "2026-03-25T20:21:42.23Z" }, + { url = "https://files.pythonhosted.org/packages/62/05/d2f816630cc771ad836af54f5001f47a6f611d2d39535364f148b6a92d6b/tomli-2.4.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:a120733b01c45e9a0c34aeef92bf0cf1d56cfe81ed9d47d562f9ed591a9828ac", size = 149859, upload-time = "2026-03-25T20:21:43.386Z" }, + { url = "https://files.pythonhosted.org/packages/ce/48/66341bdb858ad9bd0ceab5a86f90eddab127cf8b046418009f2125630ecb/tomli-2.4.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:559db847dc486944896521f68d8190be1c9e719fced785720d2216fe7022b662", size = 244713, upload-time = "2026-03-25T20:21:44.474Z" }, + { url = "https://files.pythonhosted.org/packages/df/6d/c5fad00d82b3c7a3ab6189bd4b10e60466f22cfe8a08a9394185c8a8111c/tomli-2.4.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:01f520d4f53ef97964a240a035ec2a869fe1a37dde002b57ebc4417a27ccd853", size = 252084, upload-time = "2026-03-25T20:21:45.62Z" }, + { url = "https://files.pythonhosted.org/packages/00/71/3a69e86f3eafe8c7a59d008d245888051005bd657760e96d5fbfb0b740c2/tomli-2.4.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7f94b27a62cfad8496c8d2513e1a222dd446f095fca8987fceef261225538a15", size = 247973, upload-time = "2026-03-25T20:21:46.937Z" }, + { url = "https://files.pythonhosted.org/packages/67/50/361e986652847fec4bd5e4a0208752fbe64689c603c7ae5ea7cb16b1c0ca/tomli-2.4.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:ede3e6487c5ef5d28634ba3f31f989030ad6af71edfb0055cbbd14189ff240ba", size = 256223, upload-time = "2026-03-25T20:21:48.467Z" }, + { url = "https://files.pythonhosted.org/packages/8c/9a/b4173689a9203472e5467217e0154b00e260621caa227b6fa01feab16998/tomli-2.4.1-cp314-cp314-win32.whl", hash = "sha256:3d48a93ee1c9b79c04bb38772ee1b64dcf18ff43085896ea460ca8dec96f35f6", size = 98973, upload-time = "2026-03-25T20:21:49.526Z" }, + { url = "https://files.pythonhosted.org/packages/14/58/640ac93bf230cd27d002462c9af0d837779f8773bc03dee06b5835208214/tomli-2.4.1-cp314-cp314-win_amd64.whl", hash = "sha256:88dceee75c2c63af144e456745e10101eb67361050196b0b6af5d717254dddf7", size = 109082, upload-time = "2026-03-25T20:21:50.506Z" }, + { url = "https://files.pythonhosted.org/packages/d5/2f/702d5e05b227401c1068f0d386d79a589bb12bf64c3d2c72ce0631e3bc49/tomli-2.4.1-cp314-cp314-win_arm64.whl", hash = "sha256:b8c198f8c1805dc42708689ed6864951fd2494f924149d3e4bce7710f8eb5232", size = 96490, upload-time = "2026-03-25T20:21:51.474Z" }, + { url = "https://files.pythonhosted.org/packages/45/4b/b877b05c8ba62927d9865dd980e34a755de541eb65fffba52b4cc495d4d2/tomli-2.4.1-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:d4d8fe59808a54658fcc0160ecfb1b30f9089906c50b23bcb4c69eddc19ec2b4", size = 164263, upload-time = "2026-03-25T20:21:52.543Z" }, + { url = "https://files.pythonhosted.org/packages/24/79/6ab420d37a270b89f7195dec5448f79400d9e9c1826df982f3f8e97b24fd/tomli-2.4.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:7008df2e7655c495dd12d2a4ad038ff878d4ca4b81fccaf82b714e07eae4402c", size = 160736, upload-time = "2026-03-25T20:21:53.674Z" }, + { url = "https://files.pythonhosted.org/packages/02/e0/3630057d8eb170310785723ed5adcdfb7d50cb7e6455f85ba8a3deed642b/tomli-2.4.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1d8591993e228b0c930c4bb0db464bdad97b3289fb981255d6c9a41aedc84b2d", size = 270717, upload-time = "2026-03-25T20:21:55.129Z" }, + { url = "https://files.pythonhosted.org/packages/7a/b4/1613716072e544d1a7891f548d8f9ec6ce2faf42ca65acae01d76ea06bb0/tomli-2.4.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:734e20b57ba95624ecf1841e72b53f6e186355e216e5412de414e3c51e5e3c41", size = 278461, upload-time = "2026-03-25T20:21:56.228Z" }, + { url = "https://files.pythonhosted.org/packages/05/38/30f541baf6a3f6df77b3df16b01ba319221389e2da59427e221ef417ac0c/tomli-2.4.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:8a650c2dbafa08d42e51ba0b62740dae4ecb9338eefa093aa5c78ceb546fcd5c", size = 274855, upload-time = "2026-03-25T20:21:57.653Z" }, + { url = "https://files.pythonhosted.org/packages/77/a3/ec9dd4fd2c38e98de34223b995a3b34813e6bdadf86c75314c928350ed14/tomli-2.4.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:504aa796fe0569bb43171066009ead363de03675276d2d121ac1a4572397870f", size = 283144, upload-time = "2026-03-25T20:21:59.089Z" }, + { url = "https://files.pythonhosted.org/packages/ef/be/605a6261cac79fba2ec0c9827e986e00323a1945700969b8ee0b30d85453/tomli-2.4.1-cp314-cp314t-win32.whl", hash = "sha256:b1d22e6e9387bf4739fbe23bfa80e93f6b0373a7f1b96c6227c32bef95a4d7a8", size = 108683, upload-time = "2026-03-25T20:22:00.214Z" }, + { url = "https://files.pythonhosted.org/packages/12/64/da524626d3b9cc40c168a13da8335fe1c51be12c0a63685cc6db7308daae/tomli-2.4.1-cp314-cp314t-win_amd64.whl", hash = "sha256:2c1c351919aca02858f740c6d33adea0c5deea37f9ecca1cc1ef9e884a619d26", size = 121196, upload-time = "2026-03-25T20:22:01.169Z" }, + { url = "https://files.pythonhosted.org/packages/5a/cd/e80b62269fc78fc36c9af5a6b89c835baa8af28ff5ad28c7028d60860320/tomli-2.4.1-cp314-cp314t-win_arm64.whl", hash = "sha256:eab21f45c7f66c13f2a9e0e1535309cee140182a9cdae1e041d02e47291e8396", size = 100393, upload-time = "2026-03-25T20:22:02.137Z" }, + { url = "https://files.pythonhosted.org/packages/7b/61/cceae43728b7de99d9b847560c262873a1f6c98202171fd5ed62640b494b/tomli-2.4.1-py3-none-any.whl", hash = "sha256:0d85819802132122da43cb86656f8d1f8c6587d54ae7dcaf30e90533028b49fe", size = 14583, upload-time = "2026-03-25T20:22:03.012Z" }, +] + [[package]] name = "typer" version = "0.24.1" @@ -1684,30 +1602,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/6d/b9/4095b668ea3678bf6a0af005527f39de12fb026516fb3df17495a733b7f8/urllib3-2.6.2-py3-none-any.whl", hash = "sha256:ec21cddfe7724fc7cb4ba4bea7aa8e2ef36f607a4bab81aa6ce42a13dc3f03dd", size = 131182, upload-time = "2025-12-11T15:56:38.584Z" }, ] -[[package]] -name = "watchdog" -version = "6.0.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/db/7d/7f3d619e951c88ed75c6037b246ddcf2d322812ee8ea189be89511721d54/watchdog-6.0.0.tar.gz", hash = "sha256:9ddf7c82fda3ae8e24decda1338ede66e1c99883db93711d8fb941eaa2d8c282", size = 131220, upload-time = "2024-11-01T14:07:13.037Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/39/ea/3930d07dafc9e286ed356a679aa02d777c06e9bfd1164fa7c19c288a5483/watchdog-6.0.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:bdd4e6f14b8b18c334febb9c4425a878a2ac20efd1e0b231978e7b150f92a948", size = 96471, upload-time = "2024-11-01T14:06:37.745Z" }, - { url = "https://files.pythonhosted.org/packages/12/87/48361531f70b1f87928b045df868a9fd4e253d9ae087fa4cf3f7113be363/watchdog-6.0.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:c7c15dda13c4eb00d6fb6fc508b3c0ed88b9d5d374056b239c4ad1611125c860", size = 88449, upload-time = "2024-11-01T14:06:39.748Z" }, - { url = "https://files.pythonhosted.org/packages/5b/7e/8f322f5e600812e6f9a31b75d242631068ca8f4ef0582dd3ae6e72daecc8/watchdog-6.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6f10cb2d5902447c7d0da897e2c6768bca89174d0c6e1e30abec5421af97a5b0", size = 89054, upload-time = "2024-11-01T14:06:41.009Z" }, - { url = "https://files.pythonhosted.org/packages/68/98/b0345cabdce2041a01293ba483333582891a3bd5769b08eceb0d406056ef/watchdog-6.0.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:490ab2ef84f11129844c23fb14ecf30ef3d8a6abafd3754a6f75ca1e6654136c", size = 96480, upload-time = "2024-11-01T14:06:42.952Z" }, - { url = "https://files.pythonhosted.org/packages/85/83/cdf13902c626b28eedef7ec4f10745c52aad8a8fe7eb04ed7b1f111ca20e/watchdog-6.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:76aae96b00ae814b181bb25b1b98076d5fc84e8a53cd8885a318b42b6d3a5134", size = 88451, upload-time = "2024-11-01T14:06:45.084Z" }, - { url = "https://files.pythonhosted.org/packages/fe/c4/225c87bae08c8b9ec99030cd48ae9c4eca050a59bf5c2255853e18c87b50/watchdog-6.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a175f755fc2279e0b7312c0035d52e27211a5bc39719dd529625b1930917345b", size = 89057, upload-time = "2024-11-01T14:06:47.324Z" }, - { url = "https://files.pythonhosted.org/packages/a9/c7/ca4bf3e518cb57a686b2feb4f55a1892fd9a3dd13f470fca14e00f80ea36/watchdog-6.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:7607498efa04a3542ae3e05e64da8202e58159aa1fa4acddf7678d34a35d4f13", size = 79079, upload-time = "2024-11-01T14:06:59.472Z" }, - { url = "https://files.pythonhosted.org/packages/5c/51/d46dc9332f9a647593c947b4b88e2381c8dfc0942d15b8edc0310fa4abb1/watchdog-6.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:9041567ee8953024c83343288ccc458fd0a2d811d6a0fd68c4c22609e3490379", size = 79078, upload-time = "2024-11-01T14:07:01.431Z" }, - { url = "https://files.pythonhosted.org/packages/d4/57/04edbf5e169cd318d5f07b4766fee38e825d64b6913ca157ca32d1a42267/watchdog-6.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:82dc3e3143c7e38ec49d61af98d6558288c415eac98486a5c581726e0737c00e", size = 79076, upload-time = "2024-11-01T14:07:02.568Z" }, - { url = "https://files.pythonhosted.org/packages/ab/cc/da8422b300e13cb187d2203f20b9253e91058aaf7db65b74142013478e66/watchdog-6.0.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:212ac9b8bf1161dc91bd09c048048a95ca3a4c4f5e5d4a7d1b1a7d5752a7f96f", size = 79077, upload-time = "2024-11-01T14:07:03.893Z" }, - { url = "https://files.pythonhosted.org/packages/2c/3b/b8964e04ae1a025c44ba8e4291f86e97fac443bca31de8bd98d3263d2fcf/watchdog-6.0.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:e3df4cbb9a450c6d49318f6d14f4bbc80d763fa587ba46ec86f99f9e6876bb26", size = 79078, upload-time = "2024-11-01T14:07:05.189Z" }, - { url = "https://files.pythonhosted.org/packages/62/ae/a696eb424bedff7407801c257d4b1afda455fe40821a2be430e173660e81/watchdog-6.0.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:2cce7cfc2008eb51feb6aab51251fd79b85d9894e98ba847408f662b3395ca3c", size = 79077, upload-time = "2024-11-01T14:07:06.376Z" }, - { url = "https://files.pythonhosted.org/packages/b5/e8/dbf020b4d98251a9860752a094d09a65e1b436ad181faf929983f697048f/watchdog-6.0.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:20ffe5b202af80ab4266dcd3e91aae72bf2da48c0d33bdb15c66658e685e94e2", size = 79078, upload-time = "2024-11-01T14:07:07.547Z" }, - { url = "https://files.pythonhosted.org/packages/07/f6/d0e5b343768e8bcb4cda79f0f2f55051bf26177ecd5651f84c07567461cf/watchdog-6.0.0-py3-none-win32.whl", hash = "sha256:07df1fdd701c5d4c8e55ef6cf55b8f0120fe1aef7ef39a1c6fc6bc2e606d517a", size = 79065, upload-time = "2024-11-01T14:07:09.525Z" }, - { url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl", hash = "sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680", size = 79070, upload-time = "2024-11-01T14:07:10.686Z" }, - { url = "https://files.pythonhosted.org/packages/33/e8/e40370e6d74ddba47f002a32919d91310d6074130fe4e17dabcafc15cbf1/watchdog-6.0.0-py3-none-win_ia64.whl", hash = "sha256:a1914259fa9e1454315171103c6a30961236f508b9b623eae470268bbcc6a22f", size = 79067, upload-time = "2024-11-01T14:07:11.845Z" }, -] - [[package]] name = "wcwidth" version = "0.6.0" @@ -1717,6 +1611,36 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/68/5a/199c59e0a824a3db2b89c5d2dade7ab5f9624dbf6448dc291b46d5ec94d3/wcwidth-0.6.0-py3-none-any.whl", hash = "sha256:1a3a1e510b553315f8e146c54764f4fb6264ffad731b3d78088cdb1478ffbdad", size = 94189, upload-time = "2026-02-06T19:19:39.646Z" }, ] +[[package]] +name = "zensical" +version = "0.0.50" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "deepmerge" }, + { name = "jinja2" }, + { name = "markdown" }, + { name = "pygments" }, + { name = "pymdown-extensions" }, + { name = "pyyaml" }, + { name = "tomli" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/14/79/f7959b13c766a831f1248779bb718555f70f40c5b8e68db7de1de9936662/zensical-0.0.50.tar.gz", hash = "sha256:7040e52ebe5e6a275e4edeb351bf2bc314d007f3fb5750f178a38d840723e69c", size = 3979246, upload-time = "2026-07-09T13:52:11.908Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c2/d2/e126d56642a5fd437eeb5a067b7c0d1f766c08e22d6a708bb923986f1d44/zensical-0.0.50-cp310-abi3-macosx_10_12_x86_64.whl", hash = "sha256:26dda9dbacab84db2743726f83202798e1893fbfddecb6a845812d7a331043ad", size = 12817706, upload-time = "2026-07-09T13:51:29.624Z" }, + { url = "https://files.pythonhosted.org/packages/bd/9b/e1a22fb4ea8fc3e8377d7b394ee06cf0349e7f9a64ecb4c9873dee79b102/zensical-0.0.50-cp310-abi3-macosx_11_0_arm64.whl", hash = "sha256:376887def6470c57509b48519870f74e2b987e30509cf5c819fcf372771f9403", size = 12691061, upload-time = "2026-07-09T13:51:33.194Z" }, + { url = "https://files.pythonhosted.org/packages/38/f5/16c087635680efb39e1d7b7aa3c2cca548305aa29ad51dee04f37b32b65f/zensical-0.0.50-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2bbf3034a2cb1a9d2a72a5ee7047688717c93da0d8a90d25dd871db8d5f33a6d", size = 13129505, upload-time = "2026-07-09T13:51:36.383Z" }, + { url = "https://files.pythonhosted.org/packages/65/30/50d02402e53aa01a5c5c116a3522c7bb18d6ae4da964d8b236173b6fa086/zensical-0.0.50-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:26fe4167663d544ca385ef420a49d3b738c7606a79d7a62a6bedcbf74cd383e7", size = 13055300, upload-time = "2026-07-09T13:51:39.748Z" }, + { url = "https://files.pythonhosted.org/packages/cf/0f/45f4f3e56a6483ea9f88478b20d6b434718e7c46579239589202e5135ec1/zensical-0.0.50-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8813d1f8895b19520d4a982d6bfcfd06372d73d96e6a63f0d2cf8f3b6036d5a1", size = 13445447, upload-time = "2026-07-09T13:51:43.106Z" }, + { url = "https://files.pythonhosted.org/packages/33/9b/1f5065c664afde6a63e0ada8c14eae75f9e6960df597a5ca28c07340f938/zensical-0.0.50-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a64f957f94f7d8e8847a7f1e8205509ba4b188c93c157c5e7be49bcb8556a127", size = 13098775, upload-time = "2026-07-09T13:51:46.437Z" }, + { url = "https://files.pythonhosted.org/packages/46/65/1e42e18d8f9a0cb9fcc8b871852810c7fe196237b79aaa831e863325091e/zensical-0.0.50-cp310-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:781d333bcb42c6a6b92360e05eadc944e2674794e1a95537971de1bf64cb9f89", size = 13305922, upload-time = "2026-07-09T13:51:51.107Z" }, + { url = "https://files.pythonhosted.org/packages/50/36/9cace194ba13aef3bdde8ca2d327f3a05cdf5c456e94f6d896852e2cbd38/zensical-0.0.50-cp310-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:5d0f86eec76c23efb04566cd444bf025845ac8a02e75c8a6b4af13a39a2a9955", size = 13325488, upload-time = "2026-07-09T13:51:54.883Z" }, + { url = "https://files.pythonhosted.org/packages/b1/80/2891a9316e486794dae43151561b49f3313499cfb2c95c7886abad7bcf2d/zensical-0.0.50-cp310-abi3-musllinux_1_2_i686.whl", hash = "sha256:392a7299a3c4d1ac7ff288bbed181d77a9fd23e6614180476e01630aaee0d67e", size = 13496866, upload-time = "2026-07-09T13:51:58.257Z" }, + { url = "https://files.pythonhosted.org/packages/7e/09/fbd3af58081a0d399fa913ef1f2fd6a007f2f06f7026c8d6a6096e34b996/zensical-0.0.50-cp310-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:cac3448d8c8a76dfb43e55908b4ca9ad17596aee89a9287a184c1a0ba7dce2a2", size = 13437565, upload-time = "2026-07-09T13:52:01.766Z" }, + { url = "https://files.pythonhosted.org/packages/d3/79/709311ff202326260ff223fb6e9ddefa3100474c428e3c70a04036cefe0e/zensical-0.0.50-cp310-abi3-win32.whl", hash = "sha256:32b244f96a930f68e049b2e03d50790c120ef701b6277ddd854905a33040c75f", size = 12371966, upload-time = "2026-07-09T13:52:05.207Z" }, + { url = "https://files.pythonhosted.org/packages/e3/e1/4babb30544d7465c95a6a93abc0680b1c51752411a225c2b7f2cb44e80c7/zensical-0.0.50-cp310-abi3-win_amd64.whl", hash = "sha256:2f054769bf96ae46353de3eca2463ad4db6df1da9fde515c6d7fc54c3608e615", size = 12604832, upload-time = "2026-07-09T13:52:09.013Z" }, +] + [[package]] name = "zipp" version = "3.23.0"