From 573fe35457cd2a8c26220318c825464bf28f20af Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Wed, 13 Aug 2025 17:48:40 +0200 Subject: [PATCH 1/2] Changed name from fastsim to asyncflow app folder renamed in asyncflow --- README.md | 24 +- docs/dev_workflow_guide.md | 12 +- docs/fastsim-docs/metrics_to_measure.md | 6 +- docs/fastsim-docs/requests_generator.md | 4 +- docs/fastsim-docs/runtime_and_resources.md | 10 +- docs/fastsim-docs/simulation_input.md | 6 +- docs/fastsim-docs/simulation_runner.md | 2 +- docs/fastsim_vision.md | 10 +- docs/yaml_builder.md | 6 +- examples/data/single_server.yml | 2 +- examples/single_server_pybuilder.png | Bin 164870 -> 163305 bytes examples/single_server_pybuilder.py | 24 +- examples/single_server_yaml.py | 10 +- examples/single_server_yml.png | Bin 158475 -> 160670 bytes examples/your_example.py | 6 +- poetry.lock | 568 ++++++++++-------- pyproject.toml | 6 +- src/{app => asyncflow}/__init__.py | 0 src/{app => asyncflow}/config/__init__.py | 0 src/{app => asyncflow}/config/constants.py | 2 +- .../config/plot_constants.py | 0 src/{app => asyncflow}/metrics/analyzer.py | 12 +- src/{app => asyncflow}/metrics/client.py | 0 src/{app => asyncflow}/metrics/collector.py | 8 +- src/{app => asyncflow}/metrics/edge.py | 2 +- src/{app => asyncflow}/metrics/server.py | 2 +- .../pybuilder/input_builder.py | 8 +- src/{app => asyncflow}/resources/__init__.py | 0 src/{app => asyncflow}/resources/registry.py | 4 +- .../resources/server_containers.py | 4 +- src/{app => asyncflow}/runtime/__init__.py | 0 .../runtime/actors/client.py | 10 +- src/{app => asyncflow}/runtime/actors/edge.py | 14 +- .../runtime/actors/helpers/lb_algorithms.py | 2 +- .../runtime/actors/load_balancer.py | 10 +- .../runtime/actors/rqs_generator.py | 14 +- .../runtime/actors/server.py | 14 +- src/{app => asyncflow}/runtime/rqs_state.py | 2 +- .../runtime/simulation_runner.py | 22 +- .../samplers/common_helpers.py | 4 +- .../samplers/gaussian_poisson.py | 8 +- .../samplers/poisson_poisson.py | 8 +- .../schemas/full_simulation_input.py | 6 +- .../schemas/random_variables_config.py | 2 +- .../schemas/rqs_generator_input.py | 4 +- .../schemas/simulation_settings_input.py | 2 +- .../schemas/system_topology/endpoint.py | 2 +- .../system_topology/full_system_topology.py | 6 +- tests/conftest.py | 12 +- tests/integration/conftest.py | 2 +- tests/integration/minimal/conftest.py | 10 +- tests/integration/minimal/test_minimal.py | 6 +- .../payload/test_payload_invalid.py | 2 +- tests/integration/single_server/conftest.py | 4 +- .../single_server/data/single_server.yml | 2 +- .../single_server/test_single_server.py | 6 +- tests/unit/metrics/test_analyzer.py | 12 +- tests/unit/pybuilder/test_input_builder.py | 12 +- tests/unit/resources/test_registry.py | 8 +- .../unit/resources/test_server_containers.py | 6 +- tests/unit/runtime/actors/test_client.py | 8 +- tests/unit/runtime/actors/test_edge.py | 12 +- .../unit/runtime/actors/test_load_balancer.py | 8 +- .../unit/runtime/actors/test_rqs_generator.py | 14 +- tests/unit/runtime/actors/test_server.py | 17 +- tests/unit/runtime/test_rqs_state.py | 4 +- tests/unit/runtime/test_simulation_runner.py | 10 +- tests/unit/samplers/test_gaussian_poisson.py | 12 +- tests/unit/samplers/test_poisson_poisson.py | 10 +- tests/unit/samplers/test_sampler_helper.py | 6 +- tests/unit/schemas/test_endpoint_input.py | 4 +- .../unit/schemas/test_full_topology_input.py | 8 +- .../schemas/test_requests_generator_input.py | 8 +- 73 files changed, 561 insertions(+), 510 deletions(-) rename src/{app => asyncflow}/__init__.py (100%) rename src/{app => asyncflow}/config/__init__.py (100%) rename src/{app => asyncflow}/config/constants.py (99%) rename src/{app => asyncflow}/config/plot_constants.py (100%) rename src/{app => asyncflow}/metrics/analyzer.py (95%) rename src/{app => asyncflow}/metrics/client.py (100%) rename src/{app => asyncflow}/metrics/collector.py (91%) rename src/{app => asyncflow}/metrics/edge.py (94%) rename src/{app => asyncflow}/metrics/server.py (94%) rename src/{app => asyncflow}/pybuilder/input_builder.py (93%) rename src/{app => asyncflow}/resources/__init__.py (100%) rename src/{app => asyncflow}/resources/registry.py (86%) rename src/{app => asyncflow}/resources/server_containers.py (94%) rename src/{app => asyncflow}/runtime/__init__.py (100%) rename src/{app => asyncflow}/runtime/actors/client.py (89%) rename src/{app => asyncflow}/runtime/actors/edge.py (88%) rename src/{app => asyncflow}/runtime/actors/helpers/lb_algorithms.py (94%) rename src/{app => asyncflow}/runtime/actors/load_balancer.py (86%) rename src/{app => asyncflow}/runtime/actors/rqs_generator.py (88%) rename src/{app => asyncflow}/runtime/actors/server.py (96%) rename src/{app => asyncflow}/runtime/rqs_state.py (95%) rename src/{app => asyncflow}/runtime/simulation_runner.py (93%) rename src/{app => asyncflow}/samplers/common_helpers.py (96%) rename src/{app => asyncflow}/samplers/gaussian_poisson.py (92%) rename src/{app => asyncflow}/samplers/poisson_poisson.py (90%) rename src/{app => asyncflow}/schemas/full_simulation_input.py (55%) rename src/{app => asyncflow}/schemas/random_variables_config.py (95%) rename src/{app => asyncflow}/schemas/rqs_generator_input.py (92%) rename src/{app => asyncflow}/schemas/simulation_settings_input.py (97%) rename src/{app => asyncflow}/schemas/system_topology/endpoint.py (98%) rename src/{app => asyncflow}/schemas/system_topology/full_system_topology.py (98%) diff --git a/README.md b/README.md index 9f88a1b..2005eea 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,12 @@ -# **FastSim – Event-Loop Aware Simulation for Backend Systems** +# **AsyncFlow – Event-Loop Aware Simulation for Backend Systems** ## **1. Overview** Modern asynchronous Python stacks such as **FastAPI + Uvicorn** deliver impressive performance, yet capacity planning for production workloads often relies on guesswork, costly cloud-based load tests, or late-stage troubleshooting. -**FastSim** addresses this challenge by providing a **digital twin** of your service that can be run entirely offline. It models event-loop behaviour, resource constraints, and request lifecycles, enabling you to forecast performance under different workloads and architectural choices **before deployment**. +**AsyncFlow** addresses this challenge by providing a **digital twin** of your service that can be run entirely offline. It models event-loop behaviour, resource constraints, and request lifecycles, enabling you to forecast performance under different workloads and architectural choices **before deployment**. -FastSim allows you to answer questions such as: +AsyncFlow allows you to answer questions such as: * *What happens to p95 latency if traffic doubles during a peak event?* * *How many cores are required to maintain SLAs at scale?* @@ -37,7 +37,7 @@ Until published, clone the repository and install in editable mode: - Python 3.11+ (recommended 3.12) - Poetry ≥ 1.6 -FastSim uses [Poetry](https://python-poetry.org/) for dependency management. +AsyncFlow uses [Poetry](https://python-poetry.org/) for dependency management. If you do not have Poetry installed, follow these steps. ### 3.1 Install Poetry (official method) @@ -64,8 +64,8 @@ curl -sSL https://install.python-poetry.org | python3 - ```bash # Clone the repository -git clone https://github.com/GioeleB00/Fastsim-Backend.git -cd Fastsim-Backend +git clone https://github.com/GioeleB00/AsyncFlow-Backend.git +cd AsyncFlow-Backend # Configure Poetry to always create a local `.venv` inside the project poetry config virtualenvs.in-project true @@ -171,9 +171,9 @@ from pathlib import Path import simpy import matplotlib.pyplot as plt -from app.config.constants import LatencyKey -from app.runtime.simulation_runner import SimulationRunner -from app.metrics.analyzer import ResultsAnalyzer +from asyncflow.config.constants import LatencyKey +from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer def print_latency_stats(res: ResultsAnalyzer) -> None: """Print latency statistics returned by the analyzer.""" @@ -229,7 +229,7 @@ you will see the latency stats ## **5. Target Users and Use Cases** -| Audience | Challenge | FastSim Value | +| Audience | Challenge | AsyncFlow Value | | ------------------------ | ------------------------------------------------- | -------------------------------------------------------------------------------- | | Backend Engineers | Sizing services for variable workloads | Model endpoint workflows and resource bottlenecks before deployment | | DevOps / SRE | Balancing cost and SLA | Simulate scaling scenarios to choose optimal capacity | @@ -244,7 +244,7 @@ you will see the latency stats The project follows a standard Python package layout, managed with Poetry. ``` -Fastsim-Backend/ +AsyncFlow-Backend/ ├── examples/ # Examples payloads and datasets ├── scripts/ # Utility scripts (linting, startup) ├── docs/ # Project vision and technical documentation @@ -265,7 +265,7 @@ Fastsim-Backend/ ## **7. Development Workflow** -FastSim uses **Poetry** for dependency management and enforces quality via **Ruff** and **MyPy**. +AsyncFlow uses **Poetry** for dependency management and enforces quality via **Ruff** and **MyPy**. | Task | Command | Description | | ------------- | --------------------------------- | -------------------------------------- | diff --git a/docs/dev_workflow_guide.md b/docs/dev_workflow_guide.md index c0a9705..4380ee4 100644 --- a/docs/dev_workflow_guide.md +++ b/docs/dev_workflow_guide.md @@ -1,6 +1,6 @@ # **Development Workflow & Architecture Guide** -This document outlines the standardized development workflow, repository architecture, and branching strategy for the backend of the FastSim project. Adhering to these guidelines ensures consistency, maintainability, and a scalable development process. +This document outlines the standardized development workflow, repository architecture, and branching strategy for the backend of the AsyncFlow project. Adhering to these guidelines ensures consistency, maintainability, and a scalable development process. ## 1. Technology Stack @@ -13,19 +13,19 @@ The project is built upon the following core technologies: - **Caching**: Redis - **Containerization**: Docker -### 2.1 Backend Service (`FastSim-backend`) +### 2.1 Backend Service (`AsyncFlow-backend`) -The repository hosts the entire FastAPI backend for FastSim. +The repository hosts the entire FastAPI backend for AsyncFlow. Its job is to expose the REST API, run the discrete-event simulation, talk to the database, and provide metrics. ``` -fastsim-backend/ +AsyncFlow-backend/ ├── example/ # examples of working simulations │ ├── data ├── scripts/ # helper bash scripts (lint, dev-startup, …) │ └── quality-check.sh ├── docs/ # project vision & low-level docs -│ └── fastsim-documentation/ +│ └── AsyncFlow-documentation/ ├── tests/ # unit & integration tests │ ├── unit/ │ └── integration/ @@ -67,7 +67,7 @@ fastsim-backend/ | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | | **`example/`** | Ready-to-run simulation scenarios and example configurations. Includes `data/` with YAML definitions and scripts to demonstrate engine usage. | | **`scripts/`** | Utility shell scripts for development workflow, linting, formatting, and local startup (`quality-check.sh`, etc.). | -| **`docs/`** | Project documentation. Contains both high-level vision documents and low-level technical references (`fastsim-documentation/`). | +| **`docs/`** | Project documentation. Contains both high-level vision documents and low-level technical references (`AsyncFlow-documentation/`). | | **`tests/`** | Automated test suite, split into **unit** and **integration** tests to verify correctness of both individual components and end-to-end scenarios. | --- diff --git a/docs/fastsim-docs/metrics_to_measure.md b/docs/fastsim-docs/metrics_to_measure.md index 390f6d9..bcffd33 100644 --- a/docs/fastsim-docs/metrics_to_measure.md +++ b/docs/fastsim-docs/metrics_to_measure.md @@ -1,8 +1,8 @@ -### **FastSim — Simulation Metrics** +### **AsyncFlow — Simulation Metrics** -Metrics are the lifeblood of any simulation, transforming a series of abstract events into concrete, actionable insights about system performance, resource utilization, and potential bottlenecks. FastSim provides a flexible and robust metrics collection system designed to give you a multi-faceted view of your system's behavior under load. +Metrics are the lifeblood of any simulation, transforming a series of abstract events into concrete, actionable insights about system performance, resource utilization, and potential bottlenecks. AsyncFlow provides a flexible and robust metrics collection system designed to give you a multi-faceted view of your system's behavior under load. -To achieve this, FastSim categorizes metrics into three distinct types: +To achieve this, AsyncFlow categorizes metrics into three distinct types: 1. **Sampled Metrics (`SampledMetricName`):** These metrics provide a **time-series view** of the system's state. They are captured at fixed, regular intervals (e.g., every 5 milliseconds). This methodology is ideal for understanding trends and measuring the continuous utilization of finite resources. Think of them as periodic snapshots of your system's health. diff --git a/docs/fastsim-docs/requests_generator.md b/docs/fastsim-docs/requests_generator.md index a15e241..eab8080 100644 --- a/docs/fastsim-docs/requests_generator.md +++ b/docs/fastsim-docs/requests_generator.md @@ -6,7 +6,7 @@ This document describes the design of the **requests generator**, which models a ## Model Inputs and Output -Following the FastSim philosophy, we accept a small set of input parameters to drive a “what-if” analysis in a pre-production environment. These inputs let you explore reliability and cost implications under different traffic scenarios. +Following the AsyncFlow philosophy, we accept a small set of input parameters to drive a “what-if” analysis in a pre-production environment. These inputs let you explore reliability and cost implications under different traffic scenarios. ## **Inputs** @@ -386,4 +386,4 @@ The sampling window length governs how often we re-sample $U$. It should reflect **Key takeaway:** By structuring the generator as -$\Lambda = U\,\lambda_r/60$ with a two-stage Poisson→Exponential sampler, FastSim efficiently reproduces compound Poisson traffic dynamics without any complex CDF inversion. +$\Lambda = U\,\lambda_r/60$ with a two-stage Poisson→Exponential sampler, AsyncFlow efficiently reproduces compound Poisson traffic dynamics without any complex CDF inversion. diff --git a/docs/fastsim-docs/runtime_and_resources.md b/docs/fastsim-docs/runtime_and_resources.md index a5dca9c..32f1611 100644 --- a/docs/fastsim-docs/runtime_and_resources.md +++ b/docs/fastsim-docs/runtime_and_resources.md @@ -1,10 +1,10 @@ Of course. This is an excellent request. A deep dive into the "why" and the real-world analogies is what makes documentation truly valuable. -Here is the comprehensive, detailed documentation for the FastSim Runtime Layer, written in English, incorporating all your requests. +Here is the comprehensive, detailed documentation for the AsyncFlow Runtime Layer, written in English, incorporating all your requests. ----- -# **FastSim — The Runtime Layer Documentation** +# **AsyncFlow — The Runtime Layer Documentation** *(Version July 2025 – Aligned with `app/runtime` and `app/resources`)* @@ -80,7 +80,7 @@ Think of `RequestState` as a request context in a modern microservices architect ## **4 The Resource Layer — Modelling Contention ⚙️** In real infrastructures every machine has a hard ceiling: only *N* CPU cores, only *M* MB of RAM. -FastSim mirrors that physical constraint through the **Resource layer**, which exposes pre-filled SimPy containers that actors must draw from. If a token is not available the coroutine simply blocks — giving you back-pressure “for free”. +AsyncFlow mirrors that physical constraint through the **Resource layer**, which exposes pre-filled SimPy containers that actors must draw from. If a token is not available the coroutine simply blocks — giving you back-pressure “for free”. --- @@ -127,7 +127,7 @@ defensive checks beyond the simple dictionary lookup. | RAM container tokens | **cgroup memory limit** or a pod’s allocatable memory; once exhausted new workloads must wait. | Just like a Kubernetes scheduler won’t place a pod if a node lacks free CPU/RAM, -FastSim won’t let an actor proceed until it obtains the necessary tokens. +AsyncFlow won’t let an actor proceed until it obtains the necessary tokens. ## **5. The Actors: Bringing the System to Life** @@ -448,4 +448,4 @@ def _forwarder(self) -> Generator[simpy.Event, None, None]: With these mechanics the `LoadBalancerRuntime` faithfully emulates behaviour of production LBs (NGINX, HAProxy, AWS ALB) while remaining lightweight and -fully deterministic inside the FastSim event loop. +fully deterministic inside the AsyncFlow event loop. diff --git a/docs/fastsim-docs/simulation_input.md b/docs/fastsim-docs/simulation_input.md index ad89247..f75b570 100644 --- a/docs/fastsim-docs/simulation_input.md +++ b/docs/fastsim-docs/simulation_input.md @@ -1,6 +1,6 @@ -# FastSim — Simulation Input Schema (v2) +# AsyncFlow — Simulation Input Schema (v2) -This document describes the **complete input contract** used by FastSim to run a simulation, the **design rationale** behind it, and the **guarantees** provided by the validation layer. It closes with an **end-to-end example** (YAML) you can drop into the project and run as-is. +This document describes the **complete input contract** used by AsyncFlow to run a simulation, the **design rationale** behind it, and the **guarantees** provided by the validation layer. It closes with an **end-to-end example** (YAML) you can drop into the project and run as-is. The entry point is the Pydantic model: @@ -266,7 +266,7 @@ This is a complete, valid payload you can load with `SimulationRunner.from_yaml( ```yaml # ─────────────────────────────────────────────────────────────── -# FastSim scenario: generator → client → server → client +# AsyncFlow scenario: generator → client → server → client # ─────────────────────────────────────────────────────────────── rqs_input: diff --git a/docs/fastsim-docs/simulation_runner.md b/docs/fastsim-docs/simulation_runner.md index 8153e13..300b226 100644 --- a/docs/fastsim-docs/simulation_runner.md +++ b/docs/fastsim-docs/simulation_runner.md @@ -3,7 +3,7 @@ ## **Overview** -The `SimulationRunner` is the **orchestrator** of the FastSim engine. +The `SimulationRunner` is the **orchestrator** of the AsyncFlow engine. Its main responsibility is to: 1. **Build** simulation actors from a structured input (`SimulationPayload`). diff --git a/docs/fastsim_vision.md b/docs/fastsim_vision.md index 7119807..bf5b88a 100644 --- a/docs/fastsim_vision.md +++ b/docs/fastsim_vision.md @@ -1,12 +1,12 @@ -## 1 Why FastSim? +## 1 Why AsyncFlow? -FastAPI + Uvicorn gives Python teams a lightning-fast async stack, yet sizing it for production still means guess-work, costly cloud load-tests or late surprises. **FastSim** fills that gap by becoming a **digital twin** of your actual service: +FastAPI + Uvicorn gives Python teams a lightning-fast async stack, yet sizing it for production still means guess-work, costly cloud load-tests or late surprises. **AsyncFlow** fills that gap by becoming a **digital twin** of your actual service: * It **replays** your FastAPI + Uvicorn event-loop behavior in SimPy, generating exactly the same kinds of asynchronous steps (parsing, CPU work, I/O, LLM calls) that happen in real code. * It **models** your infrastructure primitives—CPU cores (via a SimPy `Resource`), database pools, rate-limiters, even GPU inference quotas—so you can see queue lengths, scheduling delays, resource utilization, and end-to-end latency. * It **outputs** the very metrics you’d scrape in production (p50/p95/p99 latency, ready-queue lag, current & max concurrency, throughput, cost per LLM call), but entirely offline, in seconds. -With FastSim you can ask *“What happens if traffic doubles on Black Friday?”*, *“How many cores to keep p95 < 100 ms?”* or *“Is our LLM-driven endpoint ready for prime time?”*—and get quantitative answers **before** you deploy. +With AsyncFlow you can ask *“What happens if traffic doubles on Black Friday?”*, *“How many cores to keep p95 < 100 ms?”* or *“Is our LLM-driven endpoint ready for prime time?”*—and get quantitative answers **before** you deploy. **Outcome:** data-driven capacity planning, early performance tuning, and far fewer “surprises” once you hit production. @@ -26,7 +26,7 @@ With FastSim you can ask *“What happens if traffic doubles on Black Friday?” ## 3 Who benefits & why (detailed) -| Audience | Pain-point solved | FastSim value | +| Audience | Pain-point solved | AsyncFlow value | | ------------------------------ | --------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | | **Backend engineers** | Unsure if 4 vCPU container survives a marketing spike | Run *what-if* load, tweak CPU cores / pool size, get p95 & max-concurrency before merging. | | **DevOps / SRE** | Guesswork in capacity planning; cost of over-provisioning | Simulate 1 → N replicas, autoscaler thresholds, DB-pool size; pick the cheapest config meeting SLA. | @@ -38,4 +38,4 @@ With FastSim you can ask *“What happens if traffic doubles on Black Friday?” --- -**Bottom-line:** FastSim turns abstract architecture diagrams into concrete numbers—*before* spinning up expensive cloud environments—so you can build, validate and discuss your designs with full confidence. +**Bottom-line:** AsyncFlow turns abstract architecture diagrams into concrete numbers—*before* spinning up expensive cloud environments—so you can build, validate and discuss your designs with full confidence. diff --git a/docs/yaml_builder.md b/docs/yaml_builder.md index 40f519e..f3d22e3 100644 --- a/docs/yaml_builder.md +++ b/docs/yaml_builder.md @@ -1,6 +1,6 @@ -# FastSim – YAML Input Guide +# AsyncFlow – YAML Input Guide -This guide explains **how to author the simulation YAML** for FastSim, covering every field, valid values, units, constraints, and the validation rules enforced by the Pydantic schemas. +This guide explains **how to author the simulation YAML** for AsyncFlow, covering every field, valid values, units, constraints, and the validation rules enforced by the Pydantic schemas. The YAML you write is parsed into a single model: @@ -264,7 +264,7 @@ sim_settings: ## 5) Graph-level Validation Rules (what’s checked before running) -FastSim validates the entire payload. Key checks include: +AsyncFlow validates the entire payload. Key checks include: 1. **Unique IDs** diff --git a/examples/data/single_server.yml b/examples/data/single_server.yml index c6e2ce6..844b1ad 100644 --- a/examples/data/single_server.yml +++ b/examples/data/single_server.yml @@ -1,5 +1,5 @@ # ─────────────────────────────────────────────────────────────── -# FastSim scenario: generator ➜ client ➜ server ➜ client +# AsyncFlow scenario: generator ➜ client ➜ server ➜ client # ─────────────────────────────────────────────────────────────── # 1. Traffic generator (light load) diff --git a/examples/single_server_pybuilder.png b/examples/single_server_pybuilder.png index e851f7bceebc2d08377411fc450446bef225fc26..fb313450917caa26e06f997aafe30a87ba8ce39d 100644 GIT binary patch literal 163305 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 =paA<^tFC@O+yXabfO?%vjL+NGMha$k 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

DKE7e>? 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�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 TS4^N33bwm)DzXLAM*jZ?CvQaM literal 164870 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%0A3{Qv*hPjplR!)qgL)o{#o;asQKn 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 zÐ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 diff --git a/examples/single_server_pybuilder.py b/examples/single_server_pybuilder.py index 4d8b757..223766f 100644 --- a/examples/single_server_pybuilder.py +++ b/examples/single_server_pybuilder.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 """ -Didactic example: build and run a FastSim scenario **without** YAML, +Didactic example: build and run a AsyncFlow scenario **without** YAML, using the 'pybuilder' (AsyncFlow) to assemble the SimulationPayload. Scenario reproduced (same as the previous YAML): @@ -30,26 +30,26 @@ from __future__ import annotations from pathlib import Path -from typing import Dict, Iterable, List, Mapping, Tuple +from typing import Iterable, List, Mapping import numpy as np import simpy -# ── FastSim domain imports ─────────────────────────────────────────────────── -from app.pybuilder.input_builder import AsyncFlow -from app.runtime.simulation_runner import SimulationRunner -from app.metrics.analyzer import ResultsAnalyzer -from app.schemas.full_simulation_input import SimulationPayload -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.endpoint import Endpoint -from app.schemas.system_topology.full_system_topology import ( +# ── AsyncFlow domain imports ─────────────────────────────────────────────────── +from asyncflow.pybuilder.input_builder import AsyncFlow +from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.schemas.full_simulation_input import SimulationPayload +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.endpoint import Endpoint +from asyncflow.schemas.system_topology.full_system_topology import ( Client, Edge, Server, ) -from app.config.constants import LatencyKey, SampledMetricName +from asyncflow.config.constants import LatencyKey, SampledMetricName # ───────────────────────────────────────────────────────────── diff --git a/examples/single_server_yaml.py b/examples/single_server_yaml.py index 3057a52..fb20d50 100644 --- a/examples/single_server_yaml.py +++ b/examples/single_server_yaml.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 """ -Run a FastSim scenario from a YAML file and print diagnostics. +Run a AsyncFlow scenario from a YAML file and print diagnostics. What it does: - Loads the simulation payload from YAML via `SimulationRunner.from_yaml`. @@ -23,15 +23,15 @@ import matplotlib.pyplot as plt import numpy as np import simpy -from app.config.constants import ( +from asyncflow.config.constants import ( EndpointStepCPU, EndpointStepIO, EndpointStepRAM, LatencyKey, StepOperation, ) -from app.metrics.analyzer import ResultsAnalyzer -from app.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.runtime.simulation_runner import SimulationRunner # ───────────────────────────────────────────────────────────── @@ -233,7 +233,7 @@ def run_sanity_checks(runner: SimulationRunner, res: ResultsAnalyzer) -> None: # ───────────────────────────────────────────────────────────── def main() -> None: """Entry-point: parse args, run simulation, print/plot, sanity-check.""" - parser = ArgumentParser(description="Run FastSim from YAML and print outputs + sanity checks.") + parser = ArgumentParser(description="Run AsyncFlow from YAML and print outputs + sanity checks.") parser.add_argument( "--yaml", type=Path, diff --git a/examples/single_server_yml.png b/examples/single_server_yml.png index 89cca6d5cd245400ed7fe97b9ff0b33123794647..560a4b3e3eabe2e0b8408c3e322656deb770d7af 100644 GIT binary patch literal 160670 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 SVxlD|I5gF+s1{zb4*U;N>cpo2 literal 158475 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%0DavzOl-vBSq%J! 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%0Af+5+vw7!V*X~ZXk7n}wZ@?#} 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 PM!}||VW3{9Y8&=nluSd8 diff --git a/examples/your_example.py b/examples/your_example.py index ca31a05..ea2c3fa 100644 --- a/examples/your_example.py +++ b/examples/your_example.py @@ -3,9 +3,9 @@ import simpy import matplotlib.pyplot as plt -from app.config.constants import LatencyKey -from app.runtime.simulation_runner import SimulationRunner -from app.metrics.analyzer import ResultsAnalyzer +from asyncflow.config.constants import LatencyKey +from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer def print_latency_stats(res: ResultsAnalyzer) -> None: """Print latency statistics returned by the analyzer.""" diff --git a/poetry.lock b/poetry.lock index f698f6c..9147300 100644 --- a/poetry.lock +++ b/poetry.lock @@ -115,99 +115,99 @@ test-no-images = ["pytest", "pytest-cov", "pytest-rerunfailures", "pytest-xdist" [[package]] name = "coverage" -version = "7.10.1" +version = "7.10.3" description = "Code coverage measurement for Python" optional = false python-versions = ">=3.9" files = [ - {file = "coverage-7.10.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1c86eb388bbd609d15560e7cc0eb936c102b6f43f31cf3e58b4fd9afe28e1372"}, - {file = "coverage-7.10.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6b4ba0f488c1bdb6bd9ba81da50715a372119785458831c73428a8566253b86b"}, - {file = "coverage-7.10.1-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:083442ecf97d434f0cb3b3e3676584443182653da08b42e965326ba12d6b5f2a"}, - {file = "coverage-7.10.1-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:c1a40c486041006b135759f59189385da7c66d239bad897c994e18fd1d0c128f"}, - {file = "coverage-7.10.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3beb76e20b28046989300c4ea81bf690df84ee98ade4dc0bbbf774a28eb98440"}, - {file = "coverage-7.10.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:bc265a7945e8d08da28999ad02b544963f813a00f3ed0a7a0ce4165fd77629f8"}, - {file = "coverage-7.10.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:47c91f32ba4ac46f1e224a7ebf3f98b4b24335bad16137737fe71a5961a0665c"}, - {file = "coverage-7.10.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:1a108dd78ed185020f66f131c60078f3fae3f61646c28c8bb4edd3fa121fc7fc"}, - {file = "coverage-7.10.1-cp310-cp310-win32.whl", hash = "sha256:7092cc82382e634075cc0255b0b69cb7cada7c1f249070ace6a95cb0f13548ef"}, - {file = "coverage-7.10.1-cp310-cp310-win_amd64.whl", hash = "sha256:ac0c5bba938879c2fc0bc6c1b47311b5ad1212a9dcb8b40fe2c8110239b7faed"}, - {file = "coverage-7.10.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b45e2f9d5b0b5c1977cb4feb5f594be60eb121106f8900348e29331f553a726f"}, - {file = "coverage-7.10.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3a7a4d74cb0f5e3334f9aa26af7016ddb94fb4bfa11b4a573d8e98ecba8c34f1"}, - {file = "coverage-7.10.1-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:d4b0aab55ad60ead26159ff12b538c85fbab731a5e3411c642b46c3525863437"}, - {file = "coverage-7.10.1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:dcc93488c9ebd229be6ee1f0d9aad90da97b33ad7e2912f5495804d78a3cd6b7"}, - {file = "coverage-7.10.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:aa309df995d020f3438407081b51ff527171cca6772b33cf8f85344b8b4b8770"}, - {file = "coverage-7.10.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:cfb8b9d8855c8608f9747602a48ab525b1d320ecf0113994f6df23160af68262"}, - {file = "coverage-7.10.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:320d86da829b012982b414c7cdda65f5d358d63f764e0e4e54b33097646f39a3"}, - {file = "coverage-7.10.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:dc60ddd483c556590da1d9482a4518292eec36dd0e1e8496966759a1f282bcd0"}, - {file = "coverage-7.10.1-cp311-cp311-win32.whl", hash = "sha256:4fcfe294f95b44e4754da5b58be750396f2b1caca8f9a0e78588e3ef85f8b8be"}, - {file = "coverage-7.10.1-cp311-cp311-win_amd64.whl", hash = "sha256:efa23166da3fe2915f8ab452dde40319ac84dc357f635737174a08dbd912980c"}, - {file = "coverage-7.10.1-cp311-cp311-win_arm64.whl", hash = "sha256:d12b15a8c3759e2bb580ffa423ae54be4f184cf23beffcbd641f4fe6e1584293"}, - {file = "coverage-7.10.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:6b7dc7f0a75a7eaa4584e5843c873c561b12602439d2351ee28c7478186c4da4"}, - {file = "coverage-7.10.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:607f82389f0ecafc565813aa201a5cade04f897603750028dd660fb01797265e"}, - {file = "coverage-7.10.1-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:f7da31a1ba31f1c1d4d5044b7c5813878adae1f3af8f4052d679cc493c7328f4"}, - {file = "coverage-7.10.1-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:51fe93f3fe4f5d8483d51072fddc65e717a175490804e1942c975a68e04bf97a"}, - {file = "coverage-7.10.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3e59d00830da411a1feef6ac828b90bbf74c9b6a8e87b8ca37964925bba76dbe"}, - {file = "coverage-7.10.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:924563481c27941229cb4e16eefacc35da28563e80791b3ddc5597b062a5c386"}, - {file = "coverage-7.10.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:ca79146ee421b259f8131f153102220b84d1a5e6fb9c8aed13b3badfd1796de6"}, - {file = "coverage-7.10.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:2b225a06d227f23f386fdc0eab471506d9e644be699424814acc7d114595495f"}, - {file = "coverage-7.10.1-cp312-cp312-win32.whl", hash = "sha256:5ba9a8770effec5baaaab1567be916c87d8eea0c9ad11253722d86874d885eca"}, - {file = "coverage-7.10.1-cp312-cp312-win_amd64.whl", hash = "sha256:9eb245a8d8dd0ad73b4062135a251ec55086fbc2c42e0eb9725a9b553fba18a3"}, - {file = "coverage-7.10.1-cp312-cp312-win_arm64.whl", hash = "sha256:7718060dd4434cc719803a5e526838a5d66e4efa5dc46d2b25c21965a9c6fcc4"}, - {file = "coverage-7.10.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ebb08d0867c5a25dffa4823377292a0ffd7aaafb218b5d4e2e106378b1061e39"}, - {file = "coverage-7.10.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f32a95a83c2e17422f67af922a89422cd24c6fa94041f083dd0bb4f6057d0bc7"}, - {file = "coverage-7.10.1-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:c4c746d11c8aba4b9f58ca8bfc6fbfd0da4efe7960ae5540d1a1b13655ee8892"}, - {file = "coverage-7.10.1-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:7f39edd52c23e5c7ed94e0e4bf088928029edf86ef10b95413e5ea670c5e92d7"}, - {file = "coverage-7.10.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ab6e19b684981d0cd968906e293d5628e89faacb27977c92f3600b201926b994"}, - {file = "coverage-7.10.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5121d8cf0eacb16133501455d216bb5f99899ae2f52d394fe45d59229e6611d0"}, - {file = "coverage-7.10.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:df1c742ca6f46a6f6cbcaef9ac694dc2cb1260d30a6a2f5c68c5f5bcfee1cfd7"}, - {file = "coverage-7.10.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:40f9a38676f9c073bf4b9194707aa1eb97dca0e22cc3766d83879d72500132c7"}, - {file = "coverage-7.10.1-cp313-cp313-win32.whl", hash = "sha256:2348631f049e884839553b9974f0821d39241c6ffb01a418efce434f7eba0fe7"}, - {file = "coverage-7.10.1-cp313-cp313-win_amd64.whl", hash = "sha256:4072b31361b0d6d23f750c524f694e1a417c1220a30d3ef02741eed28520c48e"}, - {file = "coverage-7.10.1-cp313-cp313-win_arm64.whl", hash = "sha256:3e31dfb8271937cab9425f19259b1b1d1f556790e98eb266009e7a61d337b6d4"}, - {file = "coverage-7.10.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:1c4f679c6b573a5257af6012f167a45be4c749c9925fd44d5178fd641ad8bf72"}, - {file = "coverage-7.10.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:871ebe8143da284bd77b84a9136200bd638be253618765d21a1fce71006d94af"}, - {file = "coverage-7.10.1-cp313-cp313t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:998c4751dabf7d29b30594af416e4bf5091f11f92a8d88eb1512c7ba136d1ed7"}, - {file = "coverage-7.10.1-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:780f750a25e7749d0af6b3631759c2c14f45de209f3faaa2398312d1c7a22759"}, - {file = "coverage-7.10.1-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:590bdba9445df4763bdbebc928d8182f094c1f3947a8dc0fc82ef014dbdd8324"}, - {file = "coverage-7.10.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9b2df80cb6a2af86d300e70acb82e9b79dab2c1e6971e44b78dbfc1a1e736b53"}, - {file = "coverage-7.10.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:d6a558c2725bfb6337bf57c1cd366c13798bfd3bfc9e3dd1f4a6f6fc95a4605f"}, - {file = "coverage-7.10.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:e6150d167f32f2a54690e572e0a4c90296fb000a18e9b26ab81a6489e24e78dd"}, - {file = "coverage-7.10.1-cp313-cp313t-win32.whl", hash = "sha256:d946a0c067aa88be4a593aad1236493313bafaa27e2a2080bfe88db827972f3c"}, - {file = "coverage-7.10.1-cp313-cp313t-win_amd64.whl", hash = "sha256:e37c72eaccdd5ed1130c67a92ad38f5b2af66eeff7b0abe29534225db2ef7b18"}, - {file = "coverage-7.10.1-cp313-cp313t-win_arm64.whl", hash = "sha256:89ec0ffc215c590c732918c95cd02b55c7d0f569d76b90bb1a5e78aa340618e4"}, - {file = "coverage-7.10.1-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:166d89c57e877e93d8827dac32cedae6b0277ca684c6511497311249f35a280c"}, - {file = "coverage-7.10.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:bed4a2341b33cd1a7d9ffc47df4a78ee61d3416d43b4adc9e18b7d266650b83e"}, - {file = "coverage-7.10.1-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:ddca1e4f5f4c67980533df01430184c19b5359900e080248bbf4ed6789584d8b"}, - {file = "coverage-7.10.1-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:37b69226001d8b7de7126cad7366b0778d36777e4d788c66991455ba817c5b41"}, - {file = "coverage-7.10.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b2f22102197bcb1722691296f9e589f02b616f874e54a209284dd7b9294b0b7f"}, - {file = "coverage-7.10.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:1e0c768b0f9ac5839dac5cf88992a4bb459e488ee8a1f8489af4cb33b1af00f1"}, - {file = "coverage-7.10.1-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:991196702d5e0b120a8fef2664e1b9c333a81d36d5f6bcf6b225c0cf8b0451a2"}, - {file = "coverage-7.10.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:ae8e59e5f4fd85d6ad34c2bb9d74037b5b11be072b8b7e9986beb11f957573d4"}, - {file = "coverage-7.10.1-cp314-cp314-win32.whl", hash = "sha256:042125c89cf74a074984002e165d61fe0e31c7bd40ebb4bbebf07939b5924613"}, - {file = "coverage-7.10.1-cp314-cp314-win_amd64.whl", hash = "sha256:a22c3bfe09f7a530e2c94c87ff7af867259c91bef87ed2089cd69b783af7b84e"}, - {file = "coverage-7.10.1-cp314-cp314-win_arm64.whl", hash = "sha256:ee6be07af68d9c4fca4027c70cea0c31a0f1bc9cb464ff3c84a1f916bf82e652"}, - {file = "coverage-7.10.1-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:d24fb3c0c8ff0d517c5ca5de7cf3994a4cd559cde0315201511dbfa7ab528894"}, - {file = "coverage-7.10.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1217a54cfd79be20512a67ca81c7da3f2163f51bbfd188aab91054df012154f5"}, - {file = "coverage-7.10.1-cp314-cp314t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:51f30da7a52c009667e02f125737229d7d8044ad84b79db454308033a7808ab2"}, - {file = "coverage-7.10.1-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:ed3718c757c82d920f1c94089066225ca2ad7f00bb904cb72b1c39ebdd906ccb"}, - {file = "coverage-7.10.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:cc452481e124a819ced0c25412ea2e144269ef2f2534b862d9f6a9dae4bda17b"}, - {file = "coverage-7.10.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:9d6f494c307e5cb9b1e052ec1a471060f1dea092c8116e642e7a23e79d9388ea"}, - {file = "coverage-7.10.1-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:fc0e46d86905ddd16b85991f1f4919028092b4e511689bbdaff0876bd8aab3dd"}, - {file = "coverage-7.10.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:80b9ccd82e30038b61fc9a692a8dc4801504689651b281ed9109f10cc9fe8b4d"}, - {file = "coverage-7.10.1-cp314-cp314t-win32.whl", hash = "sha256:e58991a2b213417285ec866d3cd32db17a6a88061a985dbb7e8e8f13af429c47"}, - {file = "coverage-7.10.1-cp314-cp314t-win_amd64.whl", hash = "sha256:e88dd71e4ecbc49d9d57d064117462c43f40a21a1383507811cf834a4a620651"}, - {file = "coverage-7.10.1-cp314-cp314t-win_arm64.whl", hash = "sha256:1aadfb06a30c62c2eb82322171fe1f7c288c80ca4156d46af0ca039052814bab"}, - {file = "coverage-7.10.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:57b6e8789cbefdef0667e4a94f8ffa40f9402cee5fc3b8e4274c894737890145"}, - {file = "coverage-7.10.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:85b22a9cce00cb03156334da67eb86e29f22b5e93876d0dd6a98646bb8a74e53"}, - {file = "coverage-7.10.1-cp39-cp39-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:97b6983a2f9c76d345ca395e843a049390b39652984e4a3b45b2442fa733992d"}, - {file = "coverage-7.10.1-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:ddf2a63b91399a1c2f88f40bc1705d5a7777e31c7e9eb27c602280f477b582ba"}, - {file = "coverage-7.10.1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:47ab6dbbc31a14c5486420c2c1077fcae692097f673cf5be9ddbec8cdaa4cdbc"}, - {file = "coverage-7.10.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:21eb7d8b45d3700e7c2936a736f732794c47615a20f739f4133d5230a6512a88"}, - {file = "coverage-7.10.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:283005bb4d98ae33e45f2861cd2cde6a21878661c9ad49697f6951b358a0379b"}, - {file = "coverage-7.10.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:fefe31d61d02a8b2c419700b1fade9784a43d726de26495f243b663cd9fe1513"}, - {file = "coverage-7.10.1-cp39-cp39-win32.whl", hash = "sha256:e8ab8e4c7ec7f8a55ac05b5b715a051d74eac62511c6d96d5bb79aaafa3b04cf"}, - {file = "coverage-7.10.1-cp39-cp39-win_amd64.whl", hash = "sha256:c36baa0ecde742784aa76c2b816466d3ea888d5297fda0edbac1bf48fa94688a"}, - {file = "coverage-7.10.1-py3-none-any.whl", hash = "sha256:fa2a258aa6bf188eb9a8948f7102a83da7c430a0dce918dbd8b60ef8fcb772d7"}, - {file = "coverage-7.10.1.tar.gz", hash = "sha256:ae2b4856f29ddfe827106794f3589949a57da6f0d38ab01e24ec35107979ba57"}, + {file = "coverage-7.10.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:53808194afdf948c462215e9403cca27a81cf150d2f9b386aee4dab614ae2ffe"}, + {file = "coverage-7.10.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f4d1b837d1abf72187a61645dbf799e0d7705aa9232924946e1f57eb09a3bf00"}, + {file = "coverage-7.10.3-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:2a90dd4505d3cc68b847ab10c5ee81822a968b5191664e8a0801778fa60459fa"}, + {file = "coverage-7.10.3-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:d52989685ff5bf909c430e6d7f6550937bc6d6f3e6ecb303c97a86100efd4596"}, + {file = "coverage-7.10.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bdb558a1d97345bde3a9f4d3e8d11c9e5611f748646e9bb61d7d612a796671b5"}, + {file = "coverage-7.10.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:c9e6331a8f09cb1fc8bda032752af03c366870b48cce908875ba2620d20d0ad4"}, + {file = "coverage-7.10.3-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:992f48bf35b720e174e7fae916d943599f1a66501a2710d06c5f8104e0756ee1"}, + {file = "coverage-7.10.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:c5595fc4ad6a39312c786ec3326d7322d0cf10e3ac6a6df70809910026d67cfb"}, + {file = "coverage-7.10.3-cp310-cp310-win32.whl", hash = "sha256:9e92fa1f2bd5a57df9d00cf9ce1eb4ef6fccca4ceabec1c984837de55329db34"}, + {file = "coverage-7.10.3-cp310-cp310-win_amd64.whl", hash = "sha256:b96524d6e4a3ce6a75c56bb15dbd08023b0ae2289c254e15b9fbdddf0c577416"}, + {file = "coverage-7.10.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:f2ff2e2afdf0d51b9b8301e542d9c21a8d084fd23d4c8ea2b3a1b3c96f5f7397"}, + {file = "coverage-7.10.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:18ecc5d1b9a8c570f6c9b808fa9a2b16836b3dd5414a6d467ae942208b095f85"}, + {file = "coverage-7.10.3-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:1af4461b25fe92889590d438905e1fc79a95680ec2a1ff69a591bb3fdb6c7157"}, + {file = "coverage-7.10.3-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:3966bc9a76b09a40dc6063c8b10375e827ea5dfcaffae402dd65953bef4cba54"}, + {file = "coverage-7.10.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:205a95b87ef4eb303b7bc5118b47b6b6604a644bcbdb33c336a41cfc0a08c06a"}, + {file = "coverage-7.10.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:5b3801b79fb2ad61e3c7e2554bab754fc5f105626056980a2b9cf3aef4f13f84"}, + {file = "coverage-7.10.3-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:b0dc69c60224cda33d384572da945759756e3f06b9cdac27f302f53961e63160"}, + {file = "coverage-7.10.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a83d4f134bab2c7ff758e6bb1541dd72b54ba295ced6a63d93efc2e20cb9b124"}, + {file = "coverage-7.10.3-cp311-cp311-win32.whl", hash = "sha256:54e409dd64e5302b2a8fdf44ec1c26f47abd1f45a2dcf67bd161873ee05a59b8"}, + {file = "coverage-7.10.3-cp311-cp311-win_amd64.whl", hash = "sha256:30c601610a9b23807c5e9e2e442054b795953ab85d525c3de1b1b27cebeb2117"}, + {file = "coverage-7.10.3-cp311-cp311-win_arm64.whl", hash = "sha256:dabe662312a97958e932dee056f2659051d822552c0b866823e8ba1c2fe64770"}, + {file = "coverage-7.10.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:449c1e2d3a84d18bd204258a897a87bc57380072eb2aded6a5b5226046207b42"}, + {file = "coverage-7.10.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1d4f9ce50b9261ad196dc2b2e9f1fbbee21651b54c3097a25ad783679fd18294"}, + {file = "coverage-7.10.3-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:4dd4564207b160d0d45c36a10bc0a3d12563028e8b48cd6459ea322302a156d7"}, + {file = "coverage-7.10.3-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:5ca3c9530ee072b7cb6a6ea7b640bcdff0ad3b334ae9687e521e59f79b1d0437"}, + {file = "coverage-7.10.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b6df359e59fa243c9925ae6507e27f29c46698359f45e568fd51b9315dbbe587"}, + {file = "coverage-7.10.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a181e4c2c896c2ff64c6312db3bda38e9ade2e1aa67f86a5628ae85873786cea"}, + {file = "coverage-7.10.3-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:a374d4e923814e8b72b205ef6b3d3a647bb50e66f3558582eda074c976923613"}, + {file = "coverage-7.10.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:daeefff05993e5e8c6e7499a8508e7bd94502b6b9a9159c84fd1fe6bce3151cb"}, + {file = "coverage-7.10.3-cp312-cp312-win32.whl", hash = "sha256:187ecdcac21f9636d570e419773df7bd2fda2e7fa040f812e7f95d0bddf5f79a"}, + {file = "coverage-7.10.3-cp312-cp312-win_amd64.whl", hash = "sha256:4a50ad2524ee7e4c2a95e60d2b0b83283bdfc745fe82359d567e4f15d3823eb5"}, + {file = "coverage-7.10.3-cp312-cp312-win_arm64.whl", hash = "sha256:c112f04e075d3495fa3ed2200f71317da99608cbb2e9345bdb6de8819fc30571"}, + {file = "coverage-7.10.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:b99e87304ffe0eb97c5308447328a584258951853807afdc58b16143a530518a"}, + {file = "coverage-7.10.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4af09c7574d09afbc1ea7da9dcea23665c01f3bc1b1feb061dac135f98ffc53a"}, + {file = "coverage-7.10.3-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:488e9b50dc5d2aa9521053cfa706209e5acf5289e81edc28291a24f4e4488f46"}, + {file = "coverage-7.10.3-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:913ceddb4289cbba3a310704a424e3fb7aac2bc0c3a23ea473193cb290cf17d4"}, + {file = "coverage-7.10.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6b1f91cbc78c7112ab84ed2a8defbccd90f888fcae40a97ddd6466b0bec6ae8a"}, + {file = "coverage-7.10.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:b0bac054d45af7cd938834b43a9878b36ea92781bcb009eab040a5b09e9927e3"}, + {file = "coverage-7.10.3-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:fe72cbdd12d9e0f4aca873fa6d755e103888a7f9085e4a62d282d9d5b9f7928c"}, + {file = "coverage-7.10.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:c1e2e927ab3eadd7c244023927d646e4c15c65bb2ac7ae3c3e9537c013700d21"}, + {file = "coverage-7.10.3-cp313-cp313-win32.whl", hash = "sha256:24d0c13de473b04920ddd6e5da3c08831b1170b8f3b17461d7429b61cad59ae0"}, + {file = "coverage-7.10.3-cp313-cp313-win_amd64.whl", hash = "sha256:3564aae76bce4b96e2345cf53b4c87e938c4985424a9be6a66ee902626edec4c"}, + {file = "coverage-7.10.3-cp313-cp313-win_arm64.whl", hash = "sha256:f35580f19f297455f44afcd773c9c7a058e52eb6eb170aa31222e635f2e38b87"}, + {file = "coverage-7.10.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:07009152f497a0464ffdf2634586787aea0e69ddd023eafb23fc38267db94b84"}, + {file = "coverage-7.10.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:8dd2ba5f0c7e7e8cc418be2f0c14c4d9e3f08b8fb8e4c0f83c2fe87d03eb655e"}, + {file = "coverage-7.10.3-cp313-cp313t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:1ae22b97003c74186e034a93e4f946c75fad8c0ce8d92fbbc168b5e15ee2841f"}, + {file = "coverage-7.10.3-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:eb329f1046888a36b1dc35504d3029e1dd5afe2196d94315d18c45ee380f67d5"}, + {file = "coverage-7.10.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ce01048199a91f07f96ca3074b0c14021f4fe7ffd29a3e6a188ac60a5c3a4af8"}, + {file = "coverage-7.10.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:08b989a06eb9dfacf96d42b7fb4c9a22bafa370d245dc22fa839f2168c6f9fa1"}, + {file = "coverage-7.10.3-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:669fe0d4e69c575c52148511029b722ba8d26e8a3129840c2ce0522e1452b256"}, + {file = "coverage-7.10.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:3262d19092771c83f3413831d9904b1ccc5f98da5de4ffa4ad67f5b20c7aaf7b"}, + {file = "coverage-7.10.3-cp313-cp313t-win32.whl", hash = "sha256:cc0ee4b2ccd42cab7ee6be46d8a67d230cb33a0a7cd47a58b587a7063b6c6b0e"}, + {file = "coverage-7.10.3-cp313-cp313t-win_amd64.whl", hash = "sha256:03db599f213341e2960430984e04cf35fb179724e052a3ee627a068653cf4a7c"}, + {file = "coverage-7.10.3-cp313-cp313t-win_arm64.whl", hash = "sha256:46eae7893ba65f53c71284585a262f083ef71594f05ec5c85baf79c402369098"}, + {file = "coverage-7.10.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:bce8b8180912914032785850d8f3aacb25ec1810f5f54afc4a8b114e7a9b55de"}, + {file = "coverage-7.10.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:07790b4b37d56608536f7c1079bd1aa511567ac2966d33d5cec9cf520c50a7c8"}, + {file = "coverage-7.10.3-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:e79367ef2cd9166acedcbf136a458dfe9a4a2dd4d1ee95738fb2ee581c56f667"}, + {file = "coverage-7.10.3-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:419d2a0f769f26cb1d05e9ccbc5eab4cb5d70231604d47150867c07822acbdf4"}, + {file = "coverage-7.10.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ee221cf244757cdc2ac882e3062ab414b8464ad9c884c21e878517ea64b3fa26"}, + {file = "coverage-7.10.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:c2079d8cdd6f7373d628e14b3357f24d1db02c9dc22e6a007418ca7a2be0435a"}, + {file = "coverage-7.10.3-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:bd8df1f83c0703fa3ca781b02d36f9ec67ad9cb725b18d486405924f5e4270bd"}, + {file = "coverage-7.10.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:6b4e25e0fa335c8aa26e42a52053f3786a61cc7622b4d54ae2dad994aa754fec"}, + {file = "coverage-7.10.3-cp314-cp314-win32.whl", hash = "sha256:d7c3d02c2866deb217dce664c71787f4b25420ea3eaf87056f44fb364a3528f5"}, + {file = "coverage-7.10.3-cp314-cp314-win_amd64.whl", hash = "sha256:9c8916d44d9e0fe6cdb2227dc6b0edd8bc6c8ef13438bbbf69af7482d9bb9833"}, + {file = "coverage-7.10.3-cp314-cp314-win_arm64.whl", hash = "sha256:1007d6a2b3cf197c57105cc1ba390d9ff7f0bee215ced4dea530181e49c65ab4"}, + {file = "coverage-7.10.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:ebc8791d346410d096818788877d675ca55c91db87d60e8f477bd41c6970ffc6"}, + {file = "coverage-7.10.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1f4e4d8e75f6fd3c6940ebeed29e3d9d632e1f18f6fb65d33086d99d4d073241"}, + {file = "coverage-7.10.3-cp314-cp314t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:24581ed69f132b6225a31b0228ae4885731cddc966f8a33fe5987288bdbbbd5e"}, + {file = "coverage-7.10.3-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:ec151569ddfccbf71bac8c422dce15e176167385a00cd86e887f9a80035ce8a5"}, + {file = "coverage-7.10.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:2ae8e7c56290b908ee817200c0b65929b8050bc28530b131fe7c6dfee3e7d86b"}, + {file = "coverage-7.10.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:5fb742309766d7e48e9eb4dc34bc95a424707bc6140c0e7d9726e794f11b92a0"}, + {file = "coverage-7.10.3-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:c65e2a5b32fbe1e499f1036efa6eb9cb4ea2bf6f7168d0e7a5852f3024f471b1"}, + {file = "coverage-7.10.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:d48d2cb07d50f12f4f18d2bb75d9d19e3506c26d96fffabf56d22936e5ed8f7c"}, + {file = "coverage-7.10.3-cp314-cp314t-win32.whl", hash = "sha256:dec0d9bc15ee305e09fe2cd1911d3f0371262d3cfdae05d79515d8cb712b4869"}, + {file = "coverage-7.10.3-cp314-cp314t-win_amd64.whl", hash = "sha256:424ea93a323aa0f7f01174308ea78bde885c3089ec1bef7143a6d93c3e24ef64"}, + {file = "coverage-7.10.3-cp314-cp314t-win_arm64.whl", hash = "sha256:f5983c132a62d93d71c9ef896a0b9bf6e6828d8d2ea32611f58684fba60bba35"}, + {file = "coverage-7.10.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:da749daa7e141985487e1ff90a68315b0845930ed53dc397f4ae8f8bab25b551"}, + {file = "coverage-7.10.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f3126fb6a47d287f461d9b1aa5d1a8c97034d1dffb4f452f2cf211289dae74ef"}, + {file = "coverage-7.10.3-cp39-cp39-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:3da794db13cc27ca40e1ec8127945b97fab78ba548040047d54e7bfa6d442dca"}, + {file = "coverage-7.10.3-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:4e27bebbd184ef8d1c1e092b74a2b7109dcbe2618dce6e96b1776d53b14b3fe8"}, + {file = "coverage-7.10.3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8fd4ee2580b9fefbd301b4f8f85b62ac90d1e848bea54f89a5748cf132782118"}, + {file = "coverage-7.10.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:6999920bdd73259ce11cabfc1307484f071ecc6abdb2ca58d98facbcefc70f16"}, + {file = "coverage-7.10.3-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:c3623f929db885fab100cb88220a5b193321ed37e03af719efdbaf5d10b6e227"}, + {file = "coverage-7.10.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:25b902c5e15dea056485d782e420bb84621cc08ee75d5131ecb3dbef8bd1365f"}, + {file = "coverage-7.10.3-cp39-cp39-win32.whl", hash = "sha256:f930a4d92b004b643183451fe9c8fe398ccf866ed37d172ebaccfd443a097f61"}, + {file = "coverage-7.10.3-cp39-cp39-win_amd64.whl", hash = "sha256:08e638a93c8acba13c7842953f92a33d52d73e410329acd472280d2a21a6c0e1"}, + {file = "coverage-7.10.3-py3-none-any.whl", hash = "sha256:416a8d74dc0adfd33944ba2f405897bab87b7e9e84a391e09d241956bd953ce1"}, + {file = "coverage-7.10.3.tar.gz", hash = "sha256:812ba9250532e4a823b070b0420a36499859542335af3dca8f47fc6aa1a05619"}, ] [package.extras] @@ -354,134 +354,176 @@ files = [ [[package]] name = "kiwisolver" -version = "1.4.8" +version = "1.4.9" description = "A fast implementation of the Cassowary constraint solver" optional = false python-versions = ">=3.10" files = [ - {file = "kiwisolver-1.4.8-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:88c6f252f6816a73b1f8c904f7bbe02fd67c09a69f7cb8a0eecdbf5ce78e63db"}, - {file = "kiwisolver-1.4.8-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72941acb7b67138f35b879bbe85be0f6c6a70cab78fe3ef6db9c024d9223e5b"}, - {file = "kiwisolver-1.4.8-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ce2cf1e5688edcb727fdf7cd1bbd0b6416758996826a8be1d958f91880d0809d"}, - {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:c8bf637892dc6e6aad2bc6d4d69d08764166e5e3f69d469e55427b6ac001b19d"}, - {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:034d2c891f76bd3edbdb3ea11140d8510dca675443da7304205a2eaa45d8334c"}, - {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d47b28d1dfe0793d5e96bce90835e17edf9a499b53969b03c6c47ea5985844c3"}, - {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eb158fe28ca0c29f2260cca8c43005329ad58452c36f0edf298204de32a9a3ed"}, - {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d5536185fce131780ebd809f8e623bf4030ce1b161353166c49a3c74c287897f"}, - {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:369b75d40abedc1da2c1f4de13f3482cb99e3237b38726710f4a793432b1c5ff"}, - {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:641f2ddf9358c80faa22e22eb4c9f54bd3f0e442e038728f500e3b978d00aa7d"}, - {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:d561d2d8883e0819445cfe58d7ddd673e4015c3c57261d7bdcd3710d0d14005c"}, - {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:1732e065704b47c9afca7ffa272f845300a4eb959276bf6970dc07265e73b605"}, - {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:bcb1ebc3547619c3b58a39e2448af089ea2ef44b37988caf432447374941574e"}, - {file = "kiwisolver-1.4.8-cp310-cp310-win_amd64.whl", hash = "sha256:89c107041f7b27844179ea9c85d6da275aa55ecf28413e87624d033cf1f6b751"}, - {file = "kiwisolver-1.4.8-cp310-cp310-win_arm64.whl", hash = "sha256:b5773efa2be9eb9fcf5415ea3ab70fc785d598729fd6057bea38d539ead28271"}, - {file = "kiwisolver-1.4.8-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:a4d3601908c560bdf880f07d94f31d734afd1bb71e96585cace0e38ef44c6d84"}, - {file = "kiwisolver-1.4.8-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:856b269c4d28a5c0d5e6c1955ec36ebfd1651ac00e1ce0afa3e28da95293b561"}, - {file = "kiwisolver-1.4.8-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c2b9a96e0f326205af81a15718a9073328df1173a2619a68553decb7097fd5d7"}, - {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c5020c83e8553f770cb3b5fc13faac40f17e0b205bd237aebd21d53d733adb03"}, - {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dace81d28c787956bfbfbbfd72fdcef014f37d9b48830829e488fdb32b49d954"}, - {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:11e1022b524bd48ae56c9b4f9296bce77e15a2e42a502cceba602f804b32bb79"}, - {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3b9b4d2892fefc886f30301cdd80debd8bb01ecdf165a449eb6e78f79f0fabd6"}, - {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a96c0e790ee875d65e340ab383700e2b4891677b7fcd30a699146f9384a2bb0"}, - {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:23454ff084b07ac54ca8be535f4174170c1094a4cff78fbae4f73a4bcc0d4dab"}, - {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:87b287251ad6488e95b4f0b4a79a6d04d3ea35fde6340eb38fbd1ca9cd35bbbc"}, - {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:b21dbe165081142b1232a240fc6383fd32cdd877ca6cc89eab93e5f5883e1c25"}, - {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:768cade2c2df13db52475bd28d3a3fac8c9eff04b0e9e2fda0f3760f20b3f7fc"}, - {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:d47cfb2650f0e103d4bf68b0b5804c68da97272c84bb12850d877a95c056bd67"}, - {file = "kiwisolver-1.4.8-cp311-cp311-win_amd64.whl", hash = "sha256:ed33ca2002a779a2e20eeb06aea7721b6e47f2d4b8a8ece979d8ba9e2a167e34"}, - {file = "kiwisolver-1.4.8-cp311-cp311-win_arm64.whl", hash = "sha256:16523b40aab60426ffdebe33ac374457cf62863e330a90a0383639ce14bf44b2"}, - {file = "kiwisolver-1.4.8-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:d6af5e8815fd02997cb6ad9bbed0ee1e60014438ee1a5c2444c96f87b8843502"}, - {file = "kiwisolver-1.4.8-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:bade438f86e21d91e0cf5dd7c0ed00cda0f77c8c1616bd83f9fc157fa6760d31"}, - {file = "kiwisolver-1.4.8-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b83dc6769ddbc57613280118fb4ce3cd08899cc3369f7d0e0fab518a7cf37fdb"}, - {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:111793b232842991be367ed828076b03d96202c19221b5ebab421ce8bcad016f"}, - {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:257af1622860e51b1a9d0ce387bf5c2c4f36a90594cb9514f55b074bcc787cfc"}, - {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:69b5637c3f316cab1ec1c9a12b8c5f4750a4c4b71af9157645bf32830e39c03a"}, - {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:782bb86f245ec18009890e7cb8d13a5ef54dcf2ebe18ed65f795e635a96a1c6a"}, - {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc978a80a0db3a66d25767b03688f1147a69e6237175c0f4ffffaaedf744055a"}, - {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:36dbbfd34838500a31f52c9786990d00150860e46cd5041386f217101350f0d3"}, - {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:eaa973f1e05131de5ff3569bbba7f5fd07ea0595d3870ed4a526d486fe57fa1b"}, - {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:a66f60f8d0c87ab7f59b6fb80e642ebb29fec354a4dfad687ca4092ae69d04f4"}, - {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:858416b7fb777a53f0c59ca08190ce24e9abbd3cffa18886a5781b8e3e26f65d"}, - {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:085940635c62697391baafaaeabdf3dd7a6c3643577dde337f4d66eba021b2b8"}, - {file = "kiwisolver-1.4.8-cp312-cp312-win_amd64.whl", hash = "sha256:01c3d31902c7db5fb6182832713d3b4122ad9317c2c5877d0539227d96bb2e50"}, - {file = "kiwisolver-1.4.8-cp312-cp312-win_arm64.whl", hash = "sha256:a3c44cb68861de93f0c4a8175fbaa691f0aa22550c331fefef02b618a9dcb476"}, - {file = "kiwisolver-1.4.8-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:1c8ceb754339793c24aee1c9fb2485b5b1f5bb1c2c214ff13368431e51fc9a09"}, - {file = "kiwisolver-1.4.8-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:54a62808ac74b5e55a04a408cda6156f986cefbcf0ada13572696b507cc92fa1"}, - {file = "kiwisolver-1.4.8-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:68269e60ee4929893aad82666821aaacbd455284124817af45c11e50a4b42e3c"}, - {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:34d142fba9c464bc3bbfeff15c96eab0e7310343d6aefb62a79d51421fcc5f1b"}, - {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3ddc373e0eef45b59197de815b1b28ef89ae3955e7722cc9710fb91cd77b7f47"}, - {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:77e6f57a20b9bd4e1e2cedda4d0b986ebd0216236f0106e55c28aea3d3d69b16"}, - {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:08e77738ed7538f036cd1170cbed942ef749137b1311fa2bbe2a7fda2f6bf3cc"}, - {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a5ce1e481a74b44dd5e92ff03ea0cb371ae7a0268318e202be06c8f04f4f1246"}, - {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:fc2ace710ba7c1dfd1a3b42530b62b9ceed115f19a1656adefce7b1782a37794"}, - {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:3452046c37c7692bd52b0e752b87954ef86ee2224e624ef7ce6cb21e8c41cc1b"}, - {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:7e9a60b50fe8b2ec6f448fe8d81b07e40141bfced7f896309df271a0b92f80f3"}, - {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:918139571133f366e8362fa4a297aeba86c7816b7ecf0bc79168080e2bd79957"}, - {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e063ef9f89885a1d68dd8b2e18f5ead48653176d10a0e324e3b0030e3a69adeb"}, - {file = "kiwisolver-1.4.8-cp313-cp313-win_amd64.whl", hash = "sha256:a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2"}, - {file = "kiwisolver-1.4.8-cp313-cp313-win_arm64.whl", hash = "sha256:3cd3bc628b25f74aedc6d374d5babf0166a92ff1317f46267f12d2ed54bc1d30"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:370fd2df41660ed4e26b8c9d6bbcad668fbe2560462cba151a721d49e5b6628c"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:84a2f830d42707de1d191b9490ac186bf7997a9495d4e9072210a1296345f7dc"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:7a3ad337add5148cf51ce0b55642dc551c0b9d6248458a757f98796ca7348712"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7506488470f41169b86d8c9aeff587293f530a23a23a49d6bc64dab66bedc71e"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2f0121b07b356a22fb0414cec4666bbe36fd6d0d759db3d37228f496ed67c880"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d6d6bd87df62c27d4185de7c511c6248040afae67028a8a22012b010bc7ad062"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:291331973c64bb9cce50bbe871fb2e675c4331dab4f31abe89f175ad7679a4d7"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:893f5525bb92d3d735878ec00f781b2de998333659507d29ea4466208df37bed"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:b47a465040146981dc9db8647981b8cb96366fbc8d452b031e4f8fdffec3f26d"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:99cea8b9dd34ff80c521aef46a1dddb0dcc0283cf18bde6d756f1e6f31772165"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:151dffc4865e5fe6dafce5480fab84f950d14566c480c08a53c663a0020504b6"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:577facaa411c10421314598b50413aa1ebcf5126f704f1e5d72d7e4e9f020d90"}, - {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:be4816dc51c8a471749d664161b434912eee82f2ea66bd7628bd14583a833e85"}, - {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:e7a019419b7b510f0f7c9dceff8c5eae2392037eae483a7f9162625233802b0a"}, - {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:286b18e86682fd2217a48fc6be6b0f20c1d0ed10958d8dc53453ad58d7be0bf8"}, - {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4191ee8dfd0be1c3666ccbac178c5a05d5f8d689bbe3fc92f3c4abec817f8fe0"}, - {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7cd2785b9391f2873ad46088ed7599a6a71e762e1ea33e87514b1a441ed1da1c"}, - {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c07b29089b7ba090b6f1a669f1411f27221c3662b3a1b7010e67b59bb5a6f10b"}, - {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:65ea09a5a3faadd59c2ce96dc7bf0f364986a315949dc6374f04396b0d60e09b"}, - {file = "kiwisolver-1.4.8.tar.gz", hash = "sha256:23d5f023bdc8c7e54eb65f03ca5d5bb25b601eac4d7f1a042888a1f45237987e"}, + {file = "kiwisolver-1.4.9-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:b4b4d74bda2b8ebf4da5bd42af11d02d04428b2c32846e4c2c93219df8a7987b"}, + {file = "kiwisolver-1.4.9-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:fb3b8132019ea572f4611d770991000d7f58127560c4889729248eb5852a102f"}, + {file = "kiwisolver-1.4.9-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:84fd60810829c27ae375114cd379da1fa65e6918e1da405f356a775d49a62bcf"}, + {file = "kiwisolver-1.4.9-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:b78efa4c6e804ecdf727e580dbb9cba85624d2e1c6b5cb059c66290063bd99a9"}, + {file = "kiwisolver-1.4.9-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d4efec7bcf21671db6a3294ff301d2fc861c31faa3c8740d1a94689234d1b415"}, + {file = "kiwisolver-1.4.9-cp310-cp310-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:90f47e70293fc3688b71271100a1a5453aa9944a81d27ff779c108372cf5567b"}, + {file = "kiwisolver-1.4.9-cp310-cp310-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:8fdca1def57a2e88ef339de1737a1449d6dbf5fab184c54a1fca01d541317154"}, + {file = "kiwisolver-1.4.9-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:9cf554f21be770f5111a1690d42313e140355e687e05cf82cb23d0a721a64a48"}, + {file = "kiwisolver-1.4.9-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:fc1795ac5cd0510207482c3d1d3ed781143383b8cfd36f5c645f3897ce066220"}, + {file = "kiwisolver-1.4.9-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:ccd09f20ccdbbd341b21a67ab50a119b64a403b09288c27481575105283c1586"}, + {file = "kiwisolver-1.4.9-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:540c7c72324d864406a009d72f5d6856f49693db95d1fbb46cf86febef873634"}, + {file = "kiwisolver-1.4.9-cp310-cp310-win_amd64.whl", hash = "sha256:ede8c6d533bc6601a47ad4046080d36b8fc99f81e6f1c17b0ac3c2dc91ac7611"}, + {file = "kiwisolver-1.4.9-cp310-cp310-win_arm64.whl", hash = "sha256:7b4da0d01ac866a57dd61ac258c5607b4cd677f63abaec7b148354d2b2cdd536"}, + {file = "kiwisolver-1.4.9-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:eb14a5da6dc7642b0f3a18f13654847cd8b7a2550e2645a5bda677862b03ba16"}, + {file = "kiwisolver-1.4.9-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:39a219e1c81ae3b103643d2aedb90f1ef22650deb266ff12a19e7773f3e5f089"}, + {file = "kiwisolver-1.4.9-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2405a7d98604b87f3fc28b1716783534b1b4b8510d8142adca34ee0bc3c87543"}, + {file = "kiwisolver-1.4.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:dc1ae486f9abcef254b5618dfb4113dd49f94c68e3e027d03cf0143f3f772b61"}, + {file = "kiwisolver-1.4.9-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8a1f570ce4d62d718dce3f179ee78dac3b545ac16c0c04bb363b7607a949c0d1"}, + {file = "kiwisolver-1.4.9-cp311-cp311-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:cb27e7b78d716c591e88e0a09a2139c6577865d7f2e152488c2cc6257f460872"}, + {file = "kiwisolver-1.4.9-cp311-cp311-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:15163165efc2f627eb9687ea5f3a28137217d217ac4024893d753f46bce9de26"}, + {file = "kiwisolver-1.4.9-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:bdee92c56a71d2b24c33a7d4c2856bd6419d017e08caa7802d2963870e315028"}, + {file = "kiwisolver-1.4.9-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:412f287c55a6f54b0650bd9b6dce5aceddb95864a1a90c87af16979d37c89771"}, + {file = "kiwisolver-1.4.9-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:2c93f00dcba2eea70af2be5f11a830a742fe6b579a1d4e00f47760ef13be247a"}, + {file = "kiwisolver-1.4.9-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:f117e1a089d9411663a3207ba874f31be9ac8eaa5b533787024dc07aeb74f464"}, + {file = "kiwisolver-1.4.9-cp311-cp311-win_amd64.whl", hash = "sha256:be6a04e6c79819c9a8c2373317d19a96048e5a3f90bec587787e86a1153883c2"}, + {file = "kiwisolver-1.4.9-cp311-cp311-win_arm64.whl", hash = "sha256:0ae37737256ba2de764ddc12aed4956460277f00c4996d51a197e72f62f5eec7"}, + {file = "kiwisolver-1.4.9-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:ac5a486ac389dddcc5bef4f365b6ae3ffff2c433324fb38dd35e3fab7c957999"}, + {file = "kiwisolver-1.4.9-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:f2ba92255faa7309d06fe44c3a4a97efe1c8d640c2a79a5ef728b685762a6fd2"}, + {file = "kiwisolver-1.4.9-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4a2899935e724dd1074cb568ce7ac0dce28b2cd6ab539c8e001a8578eb106d14"}, + {file = "kiwisolver-1.4.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f6008a4919fdbc0b0097089f67a1eb55d950ed7e90ce2cc3e640abadd2757a04"}, + {file = "kiwisolver-1.4.9-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:67bb8b474b4181770f926f7b7d2f8c0248cbcb78b660fdd41a47054b28d2a752"}, + {file = "kiwisolver-1.4.9-cp312-cp312-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:2327a4a30d3ee07d2fbe2e7933e8a37c591663b96ce42a00bc67461a87d7df77"}, + {file = "kiwisolver-1.4.9-cp312-cp312-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:7a08b491ec91b1d5053ac177afe5290adacf1f0f6307d771ccac5de30592d198"}, + {file = "kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d8fc5c867c22b828001b6a38d2eaeb88160bf5783c6cb4a5e440efc981ce286d"}, + {file = "kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:3b3115b2581ea35bb6d1f24a4c90af37e5d9b49dcff267eeed14c3893c5b86ab"}, + {file = "kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:858e4c22fb075920b96a291928cb7dea5644e94c0ee4fcd5af7e865655e4ccf2"}, + {file = "kiwisolver-1.4.9-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ed0fecd28cc62c54b262e3736f8bb2512d8dcfdc2bcf08be5f47f96bf405b145"}, + {file = "kiwisolver-1.4.9-cp312-cp312-win_amd64.whl", hash = "sha256:f68208a520c3d86ea51acf688a3e3002615a7f0238002cccc17affecc86a8a54"}, + {file = "kiwisolver-1.4.9-cp312-cp312-win_arm64.whl", hash = "sha256:2c1a4f57df73965f3f14df20b80ee29e6a7930a57d2d9e8491a25f676e197c60"}, + {file = "kiwisolver-1.4.9-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:a5d0432ccf1c7ab14f9949eec60c5d1f924f17c037e9f8b33352fa05799359b8"}, + {file = "kiwisolver-1.4.9-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efb3a45b35622bb6c16dbfab491a8f5a391fe0e9d45ef32f4df85658232ca0e2"}, + {file = "kiwisolver-1.4.9-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1a12cf6398e8a0a001a059747a1cbf24705e18fe413bc22de7b3d15c67cffe3f"}, + {file = "kiwisolver-1.4.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:b67e6efbf68e077dd71d1a6b37e43e1a99d0bff1a3d51867d45ee8908b931098"}, + {file = "kiwisolver-1.4.9-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5656aa670507437af0207645273ccdfee4f14bacd7f7c67a4306d0dcaeaf6eed"}, + {file = "kiwisolver-1.4.9-cp313-cp313-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:bfc08add558155345129c7803b3671cf195e6a56e7a12f3dde7c57d9b417f525"}, + {file = "kiwisolver-1.4.9-cp313-cp313-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:40092754720b174e6ccf9e845d0d8c7d8e12c3d71e7fc35f55f3813e96376f78"}, + {file = "kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:497d05f29a1300d14e02e6441cf0f5ee81c1ff5a304b0d9fb77423974684e08b"}, + {file = "kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:bdd1a81a1860476eb41ac4bc1e07b3f07259e6d55bbf739b79c8aaedcf512799"}, + {file = "kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:e6b93f13371d341afee3be9f7c5964e3fe61d5fa30f6a30eb49856935dfe4fc3"}, + {file = "kiwisolver-1.4.9-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:d75aa530ccfaa593da12834b86a0724f58bff12706659baa9227c2ccaa06264c"}, + {file = "kiwisolver-1.4.9-cp313-cp313-win_amd64.whl", hash = "sha256:dd0a578400839256df88c16abddf9ba14813ec5f21362e1fe65022e00c883d4d"}, + {file = "kiwisolver-1.4.9-cp313-cp313-win_arm64.whl", hash = "sha256:d4188e73af84ca82468f09cadc5ac4db578109e52acb4518d8154698d3a87ca2"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:5a0f2724dfd4e3b3ac5a82436a8e6fd16baa7d507117e4279b660fe8ca38a3a1"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:1b11d6a633e4ed84fc0ddafd4ebfd8ea49b3f25082c04ad12b8315c11d504dc1"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:61874cdb0a36016354853593cffc38e56fc9ca5aa97d2c05d3dcf6922cd55a11"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:60c439763a969a6af93b4881db0eed8fadf93ee98e18cbc35bc8da868d0c4f0c"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:92a2f997387a1b79a75e7803aa7ded2cfbe2823852ccf1ba3bcf613b62ae3197"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a31d512c812daea6d8b3be3b2bfcbeb091dbb09177706569bcfc6240dcf8b41c"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:52a15b0f35dad39862d376df10c5230155243a2c1a436e39eb55623ccbd68185"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:a30fd6fdef1430fd9e1ba7b3398b5ee4e2887783917a687d86ba69985fb08748"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:cc9617b46837c6468197b5945e196ee9ca43057bb7d9d1ae688101e4e1dddf64"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:0ab74e19f6a2b027ea4f845a78827969af45ce790e6cb3e1ebab71bdf9f215ff"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:dba5ee5d3981160c28d5490f0d1b7ed730c22470ff7f6cc26cfcfaacb9896a07"}, + {file = "kiwisolver-1.4.9-cp313-cp313t-win_arm64.whl", hash = "sha256:0749fd8f4218ad2e851e11cc4dc05c7cbc0cbc4267bdfdb31782e65aace4ee9c"}, + {file = "kiwisolver-1.4.9-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:9928fe1eb816d11ae170885a74d074f57af3a0d65777ca47e9aeb854a1fba386"}, + {file = "kiwisolver-1.4.9-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:d0005b053977e7b43388ddec89fa567f43d4f6d5c2c0affe57de5ebf290dc552"}, + {file = "kiwisolver-1.4.9-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:2635d352d67458b66fd0667c14cb1d4145e9560d503219034a18a87e971ce4f3"}, + {file = "kiwisolver-1.4.9-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:767c23ad1c58c9e827b649a9ab7809fd5fd9db266a9cf02b0e926ddc2c680d58"}, + {file = "kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:72d0eb9fba308b8311685c2268cf7d0a0639a6cd027d8128659f72bdd8a024b4"}, + {file = "kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f68e4f3eeca8fb22cc3d731f9715a13b652795ef657a13df1ad0c7dc0e9731df"}, + {file = "kiwisolver-1.4.9-cp314-cp314-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d84cd4061ae292d8ac367b2c3fa3aad11cb8625a95d135fe93f286f914f3f5a6"}, + {file = "kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:a60ea74330b91bd22a29638940d115df9dc00af5035a9a2a6ad9399ffb4ceca5"}, + {file = "kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:ce6a3a4e106cf35c2d9c4fa17c05ce0b180db622736845d4315519397a77beaf"}, + {file = "kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:77937e5e2a38a7b48eef0585114fe7930346993a88060d0bf886086d2aa49ef5"}, + {file = "kiwisolver-1.4.9-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:24c175051354f4a28c5d6a31c93906dc653e2bf234e8a4bbfb964892078898ce"}, + {file = "kiwisolver-1.4.9-cp314-cp314-win_amd64.whl", hash = "sha256:0763515d4df10edf6d06a3c19734e2566368980d21ebec439f33f9eb936c07b7"}, + {file = "kiwisolver-1.4.9-cp314-cp314-win_arm64.whl", hash = "sha256:0e4e2bf29574a6a7b7f6cb5fa69293b9f96c928949ac4a53ba3f525dffb87f9c"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:d976bbb382b202f71c67f77b0ac11244021cfa3f7dfd9e562eefcea2df711548"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:2489e4e5d7ef9a1c300a5e0196e43d9c739f066ef23270607d45aba368b91f2d"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:e2ea9f7ab7fbf18fffb1b5434ce7c69a07582f7acc7717720f1d69f3e806f90c"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:b34e51affded8faee0dfdb705416153819d8ea9250bbbf7ea1b249bdeb5f1122"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d8aacd3d4b33b772542b2e01beb50187536967b514b00003bdda7589722d2a64"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:7cf974dd4e35fa315563ac99d6287a1024e4dc2077b8a7d7cd3d2fb65d283134"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:85bd218b5ecfbee8c8a82e121802dcb519a86044c9c3b2e4aef02fa05c6da370"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:0856e241c2d3df4efef7c04a1e46b1936b6120c9bcf36dd216e3acd84bc4fb21"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:9af39d6551f97d31a4deebeac6f45b156f9755ddc59c07b402c148f5dbb6482a"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:bb4ae2b57fc1d8cbd1cf7b1d9913803681ffa903e7488012be5b76dedf49297f"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:aedff62918805fb62d43a4aa2ecd4482c380dc76cd31bd7c8878588a61bd0369"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-win_amd64.whl", hash = "sha256:1fa333e8b2ce4d9660f2cda9c0e1b6bafcfb2457a9d259faa82289e73ec24891"}, + {file = "kiwisolver-1.4.9-cp314-cp314t-win_arm64.whl", hash = "sha256:4a48a2ce79d65d363597ef7b567ce3d14d68783d2b2263d98db3d9477805ba32"}, + {file = "kiwisolver-1.4.9-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:4d1d9e582ad4d63062d34077a9a1e9f3c34088a2ec5135b1f7190c07cf366527"}, + {file = "kiwisolver-1.4.9-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:deed0c7258ceb4c44ad5ec7d9918f9f14fd05b2be86378d86cf50e63d1e7b771"}, + {file = "kiwisolver-1.4.9-pp310-pypy310_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:0a590506f303f512dff6b7f75fd2fd18e16943efee932008fe7140e5fa91d80e"}, + {file = "kiwisolver-1.4.9-pp310-pypy310_pp73-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e09c2279a4d01f099f52d5c4b3d9e208e91edcbd1a175c9662a8b16e000fece9"}, + {file = "kiwisolver-1.4.9-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:c9e7cdf45d594ee04d5be1b24dd9d49f3d1590959b2271fb30b5ca2b262c00fb"}, + {file = "kiwisolver-1.4.9-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:720e05574713db64c356e86732c0f3c5252818d05f9df320f0ad8380641acea5"}, + {file = "kiwisolver-1.4.9-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:17680d737d5335b552994a2008fab4c851bcd7de33094a82067ef3a576ff02fa"}, + {file = "kiwisolver-1.4.9-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:85b5352f94e490c028926ea567fc569c52ec79ce131dadb968d3853e809518c2"}, + {file = "kiwisolver-1.4.9-pp311-pypy311_pp73-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:464415881e4801295659462c49461a24fb107c140de781d55518c4b80cb6790f"}, + {file = "kiwisolver-1.4.9-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:fb940820c63a9590d31d88b815e7a3aa5915cad3ce735ab45f0c730b39547de1"}, + {file = "kiwisolver-1.4.9.tar.gz", hash = "sha256:c3b22c26c6fd6811b0ae8363b95ca8ce4ea3c202d3d0975b2914310ceb1bcc4d"}, ] [[package]] name = "matplotlib" -version = "3.10.3" +version = "3.10.5" description = "Python plotting package" optional = false python-versions = ">=3.10" files = [ - {file = "matplotlib-3.10.3-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:213fadd6348d106ca7db99e113f1bea1e65e383c3ba76e8556ba4a3054b65ae7"}, - {file = "matplotlib-3.10.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d3bec61cb8221f0ca6313889308326e7bb303d0d302c5cc9e523b2f2e6c73deb"}, - {file = "matplotlib-3.10.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c21ae75651c0231b3ba014b6d5e08fb969c40cdb5a011e33e99ed0c9ea86ecb"}, - {file = "matplotlib-3.10.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a49e39755580b08e30e3620efc659330eac5d6534ab7eae50fa5e31f53ee4e30"}, - {file = "matplotlib-3.10.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:cf4636203e1190871d3a73664dea03d26fb019b66692cbfd642faafdad6208e8"}, - {file = "matplotlib-3.10.3-cp310-cp310-win_amd64.whl", hash = "sha256:fd5641a9bb9d55f4dd2afe897a53b537c834b9012684c8444cc105895c8c16fd"}, - {file = "matplotlib-3.10.3-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:0ef061f74cd488586f552d0c336b2f078d43bc00dc473d2c3e7bfee2272f3fa8"}, - {file = "matplotlib-3.10.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d96985d14dc5f4a736bbea4b9de9afaa735f8a0fc2ca75be2fa9e96b2097369d"}, - {file = "matplotlib-3.10.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7c5f0283da91e9522bdba4d6583ed9d5521566f63729ffb68334f86d0bb98049"}, - {file = "matplotlib-3.10.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fdfa07c0ec58035242bc8b2c8aae37037c9a886370eef6850703d7583e19964b"}, - {file = "matplotlib-3.10.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:c0b9849a17bce080a16ebcb80a7b714b5677d0ec32161a2cc0a8e5a6030ae220"}, - {file = "matplotlib-3.10.3-cp311-cp311-win_amd64.whl", hash = "sha256:eef6ed6c03717083bc6d69c2d7ee8624205c29a8e6ea5a31cd3492ecdbaee1e1"}, - {file = "matplotlib-3.10.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:0ab1affc11d1f495ab9e6362b8174a25afc19c081ba5b0775ef00533a4236eea"}, - {file = "matplotlib-3.10.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2a818d8bdcafa7ed2eed74487fdb071c09c1ae24152d403952adad11fa3c65b4"}, - {file = "matplotlib-3.10.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:748ebc3470c253e770b17d8b0557f0aa85cf8c63fd52f1a61af5b27ec0b7ffee"}, - {file = "matplotlib-3.10.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ed70453fd99733293ace1aec568255bc51c6361cb0da94fa5ebf0649fdb2150a"}, - {file = "matplotlib-3.10.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:dbed9917b44070e55640bd13419de83b4c918e52d97561544814ba463811cbc7"}, - {file = "matplotlib-3.10.3-cp312-cp312-win_amd64.whl", hash = "sha256:cf37d8c6ef1a48829443e8ba5227b44236d7fcaf7647caa3178a4ff9f7a5be05"}, - {file = "matplotlib-3.10.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9f2efccc8dcf2b86fc4ee849eea5dcaecedd0773b30f47980dc0cbeabf26ec84"}, - {file = "matplotlib-3.10.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3ddbba06a6c126e3301c3d272a99dcbe7f6c24c14024e80307ff03791a5f294e"}, - {file = "matplotlib-3.10.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:748302b33ae9326995b238f606e9ed840bf5886ebafcb233775d946aa8107a15"}, - {file = "matplotlib-3.10.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a80fcccbef63302c0efd78042ea3c2436104c5b1a4d3ae20f864593696364ac7"}, - {file = "matplotlib-3.10.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:55e46cbfe1f8586adb34f7587c3e4f7dedc59d5226719faf6cb54fc24f2fd52d"}, - {file = "matplotlib-3.10.3-cp313-cp313-win_amd64.whl", hash = "sha256:151d89cb8d33cb23345cd12490c76fd5d18a56581a16d950b48c6ff19bb2ab93"}, - {file = "matplotlib-3.10.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:c26dd9834e74d164d06433dc7be5d75a1e9890b926b3e57e74fa446e1a62c3e2"}, - {file = "matplotlib-3.10.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:24853dad5b8c84c8c2390fc31ce4858b6df504156893292ce8092d190ef8151d"}, - {file = "matplotlib-3.10.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:68f7878214d369d7d4215e2a9075fef743be38fa401d32e6020bab2dfabaa566"}, - {file = "matplotlib-3.10.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f6929fc618cb6db9cb75086f73b3219bbb25920cb24cee2ea7a12b04971a4158"}, - {file = "matplotlib-3.10.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:6c7818292a5cc372a2dc4c795e5c356942eb8350b98ef913f7fda51fe175ac5d"}, - {file = "matplotlib-3.10.3-cp313-cp313t-win_amd64.whl", hash = "sha256:4f23ffe95c5667ef8a2b56eea9b53db7f43910fa4a2d5472ae0f72b64deab4d5"}, - {file = "matplotlib-3.10.3-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:86ab63d66bbc83fdb6733471d3bff40897c1e9921cba112accd748eee4bce5e4"}, - {file = "matplotlib-3.10.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:a48f9c08bf7444b5d2391a83e75edb464ccda3c380384b36532a0962593a1751"}, - {file = "matplotlib-3.10.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cb73d8aa75a237457988f9765e4dfe1c0d2453c5ca4eabc897d4309672c8e014"}, - {file = "matplotlib-3.10.3.tar.gz", hash = "sha256:2f82d2c5bb7ae93aaaa4cd42aca65d76ce6376f83304fa3a630b569aca274df0"}, + {file = "matplotlib-3.10.5-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:5d4773a6d1c106ca05cb5a5515d277a6bb96ed09e5c8fab6b7741b8fcaa62c8f"}, + {file = "matplotlib-3.10.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:dc88af74e7ba27de6cbe6faee916024ea35d895ed3d61ef6f58c4ce97da7185a"}, + {file = "matplotlib-3.10.5-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:64c4535419d5617f7363dad171a5a59963308e0f3f813c4bed6c9e6e2c131512"}, + {file = "matplotlib-3.10.5-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a277033048ab22d34f88a3c5243938cef776493f6201a8742ed5f8b553201343"}, + {file = "matplotlib-3.10.5-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:e4a6470a118a2e93022ecc7d3bd16b3114b2004ea2bf014fff875b3bc99b70c6"}, + {file = "matplotlib-3.10.5-cp310-cp310-win_amd64.whl", hash = "sha256:7e44cada61bec8833c106547786814dd4a266c1b2964fd25daa3804f1b8d4467"}, + {file = "matplotlib-3.10.5-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:dcfc39c452c6a9f9028d3e44d2d721484f665304857188124b505b2c95e1eecf"}, + {file = "matplotlib-3.10.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:903352681b59f3efbf4546985142a9686ea1d616bb054b09a537a06e4b892ccf"}, + {file = "matplotlib-3.10.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:080c3676a56b8ee1c762bcf8fca3fe709daa1ee23e6ef06ad9f3fc17332f2d2a"}, + {file = "matplotlib-3.10.5-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4b4984d5064a35b6f66d2c11d668565f4389b1119cc64db7a4c1725bc11adffc"}, + {file = "matplotlib-3.10.5-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:3967424121d3a46705c9fa9bdb0931de3228f13f73d7bb03c999c88343a89d89"}, + {file = "matplotlib-3.10.5-cp311-cp311-win_amd64.whl", hash = "sha256:33775bbeb75528555a15ac29396940128ef5613cf9a2d31fb1bfd18b3c0c0903"}, + {file = "matplotlib-3.10.5-cp311-cp311-win_arm64.whl", hash = "sha256:c61333a8e5e6240e73769d5826b9a31d8b22df76c0778f8480baf1b4b01c9420"}, + {file = "matplotlib-3.10.5-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:00b6feadc28a08bd3c65b2894f56cf3c94fc8f7adcbc6ab4516ae1e8ed8f62e2"}, + {file = "matplotlib-3.10.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ee98a5c5344dc7f48dc261b6ba5d9900c008fc12beb3fa6ebda81273602cc389"}, + {file = "matplotlib-3.10.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:a17e57e33de901d221a07af32c08870ed4528db0b6059dce7d7e65c1122d4bea"}, + {file = "matplotlib-3.10.5-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:97b9d6443419085950ee4a5b1ee08c363e5c43d7176e55513479e53669e88468"}, + {file = "matplotlib-3.10.5-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ceefe5d40807d29a66ae916c6a3915d60ef9f028ce1927b84e727be91d884369"}, + {file = "matplotlib-3.10.5-cp312-cp312-win_amd64.whl", hash = "sha256:c04cba0f93d40e45b3c187c6c52c17f24535b27d545f757a2fffebc06c12b98b"}, + {file = "matplotlib-3.10.5-cp312-cp312-win_arm64.whl", hash = "sha256:a41bcb6e2c8e79dc99c5511ae6f7787d2fb52efd3d805fff06d5d4f667db16b2"}, + {file = "matplotlib-3.10.5-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:354204db3f7d5caaa10e5de74549ef6a05a4550fdd1c8f831ab9bca81efd39ed"}, + {file = "matplotlib-3.10.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b072aac0c3ad563a2b3318124756cb6112157017f7431626600ecbe890df57a1"}, + {file = "matplotlib-3.10.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:d52fd5b684d541b5a51fb276b2b97b010c75bee9aa392f96b4a07aeb491e33c7"}, + {file = "matplotlib-3.10.5-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ee7a09ae2f4676276f5a65bd9f2bd91b4f9fbaedf49f40267ce3f9b448de501f"}, + {file = "matplotlib-3.10.5-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ba6c3c9c067b83481d647af88b4e441d532acdb5ef22178a14935b0b881188f4"}, + {file = "matplotlib-3.10.5-cp313-cp313-win_amd64.whl", hash = "sha256:07442d2692c9bd1cceaa4afb4bbe5b57b98a7599de4dabfcca92d3eea70f9ebe"}, + {file = "matplotlib-3.10.5-cp313-cp313-win_arm64.whl", hash = "sha256:48fe6d47380b68a37ccfcc94f009530e84d41f71f5dae7eda7c4a5a84aa0a674"}, + {file = "matplotlib-3.10.5-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:3b80eb8621331449fc519541a7461987f10afa4f9cfd91afcd2276ebe19bd56c"}, + {file = "matplotlib-3.10.5-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:47a388908e469d6ca2a6015858fa924e0e8a2345a37125948d8e93a91c47933e"}, + {file = "matplotlib-3.10.5-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:8b6b49167d208358983ce26e43aa4196073b4702858670f2eb111f9a10652b4b"}, + {file = "matplotlib-3.10.5-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8a8da0453a7fd8e3da114234ba70c5ba9ef0e98f190309ddfde0f089accd46ea"}, + {file = "matplotlib-3.10.5-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:52c6573dfcb7726a9907b482cd5b92e6b5499b284ffacb04ffbfe06b3e568124"}, + {file = "matplotlib-3.10.5-cp313-cp313t-win_amd64.whl", hash = "sha256:a23193db2e9d64ece69cac0c8231849db7dd77ce59c7b89948cf9d0ce655a3ce"}, + {file = "matplotlib-3.10.5-cp313-cp313t-win_arm64.whl", hash = "sha256:56da3b102cf6da2776fef3e71cd96fcf22103a13594a18ac9a9b31314e0be154"}, + {file = "matplotlib-3.10.5-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:96ef8f5a3696f20f55597ffa91c28e2e73088df25c555f8d4754931515512715"}, + {file = "matplotlib-3.10.5-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:77fab633e94b9da60512d4fa0213daeb76d5a7b05156840c4fd0399b4b818837"}, + {file = "matplotlib-3.10.5-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:27f52634315e96b1debbfdc5c416592edcd9c4221bc2f520fd39c33db5d9f202"}, + {file = "matplotlib-3.10.5-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:525f6e28c485c769d1f07935b660c864de41c37fd716bfa64158ea646f7084bb"}, + {file = "matplotlib-3.10.5-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:1f5f3ec4c191253c5f2b7c07096a142c6a1c024d9f738247bfc8e3f9643fc975"}, + {file = "matplotlib-3.10.5-cp314-cp314-win_amd64.whl", hash = "sha256:707f9c292c4cd4716f19ab8a1f93f26598222cd931e0cd98fbbb1c5994bf7667"}, + {file = "matplotlib-3.10.5-cp314-cp314-win_arm64.whl", hash = "sha256:21a95b9bf408178d372814de7baacd61c712a62cae560b5e6f35d791776f6516"}, + {file = "matplotlib-3.10.5-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:a6b310f95e1102a8c7c817ef17b60ee5d1851b8c71b63d9286b66b177963039e"}, + {file = "matplotlib-3.10.5-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:94986a242747a0605cb3ff1cb98691c736f28a59f8ffe5175acaeb7397c49a5a"}, + {file = "matplotlib-3.10.5-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1ff10ea43288f0c8bab608a305dc6c918cc729d429c31dcbbecde3b9f4d5b569"}, + {file = "matplotlib-3.10.5-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f6adb644c9d040ffb0d3434e440490a66cf73dbfa118a6f79cd7568431f7a012"}, + {file = "matplotlib-3.10.5-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:4fa40a8f98428f789a9dcacd625f59b7bc4e3ef6c8c7c80187a7a709475cf592"}, + {file = "matplotlib-3.10.5-cp314-cp314t-win_amd64.whl", hash = "sha256:95672a5d628b44207aab91ec20bf59c26da99de12b88f7e0b1fb0a84a86ff959"}, + {file = "matplotlib-3.10.5-cp314-cp314t-win_arm64.whl", hash = "sha256:2efaf97d72629e74252e0b5e3c46813e9eeaa94e011ecf8084a971a31a97f40b"}, + {file = "matplotlib-3.10.5-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:b5fa2e941f77eb579005fb804026f9d0a1082276118d01cc6051d0d9626eaa7f"}, + {file = "matplotlib-3.10.5-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:1fc0d2a3241cdcb9daaca279204a3351ce9df3c0e7e621c7e04ec28aaacaca30"}, + {file = "matplotlib-3.10.5-pp310-pypy310_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:8dee65cb1424b7dc982fe87895b5613d4e691cc57117e8af840da0148ca6c1d7"}, + {file = "matplotlib-3.10.5-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:160e125da27a749481eaddc0627962990f6029811dbeae23881833a011a0907f"}, + {file = "matplotlib-3.10.5-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:ac3d50760394d78a3c9be6b28318fe22b494c4fcf6407e8fd4794b538251899b"}, + {file = "matplotlib-3.10.5-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:6c49465bf689c4d59d174d0c7795fb42a21d4244d11d70e52b8011987367ac61"}, + {file = "matplotlib-3.10.5.tar.gz", hash = "sha256:352ed6ccfb7998a00881692f38b4ca083c691d3e275b4145423704c34c909076"}, ] [package.dependencies] @@ -500,43 +542,49 @@ dev = ["meson-python (>=0.13.1,<0.17.0)", "pybind11 (>=2.13.2,!=2.13.3)", "setup [[package]] name = "mypy" -version = "1.17.0" +version = "1.17.1" description = "Optional static typing for Python" optional = false python-versions = ">=3.9" files = [ - {file = "mypy-1.17.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f8e08de6138043108b3b18f09d3f817a4783912e48828ab397ecf183135d84d6"}, - {file = "mypy-1.17.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ce4a17920ec144647d448fc43725b5873548b1aae6c603225626747ededf582d"}, - {file = "mypy-1.17.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6ff25d151cc057fdddb1cb1881ef36e9c41fa2a5e78d8dd71bee6e4dcd2bc05b"}, - {file = "mypy-1.17.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:93468cf29aa9a132bceb103bd8475f78cacde2b1b9a94fd978d50d4bdf616c9a"}, - {file = "mypy-1.17.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:98189382b310f16343151f65dd7e6867386d3e35f7878c45cfa11383d175d91f"}, - {file = "mypy-1.17.0-cp310-cp310-win_amd64.whl", hash = "sha256:c004135a300ab06a045c1c0d8e3f10215e71d7b4f5bb9a42ab80236364429937"}, - {file = "mypy-1.17.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9d4fe5c72fd262d9c2c91c1117d16aac555e05f5beb2bae6a755274c6eec42be"}, - {file = "mypy-1.17.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d96b196e5c16f41b4f7736840e8455958e832871990c7ba26bf58175e357ed61"}, - {file = "mypy-1.17.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:73a0ff2dd10337ceb521c080d4147755ee302dcde6e1a913babd59473904615f"}, - {file = "mypy-1.17.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:24cfcc1179c4447854e9e406d3af0f77736d631ec87d31c6281ecd5025df625d"}, - {file = "mypy-1.17.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:3c56f180ff6430e6373db7a1d569317675b0a451caf5fef6ce4ab365f5f2f6c3"}, - {file = "mypy-1.17.0-cp311-cp311-win_amd64.whl", hash = "sha256:eafaf8b9252734400f9b77df98b4eee3d2eecab16104680d51341c75702cad70"}, - {file = "mypy-1.17.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:f986f1cab8dbec39ba6e0eaa42d4d3ac6686516a5d3dccd64be095db05ebc6bb"}, - {file = "mypy-1.17.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:51e455a54d199dd6e931cd7ea987d061c2afbaf0960f7f66deef47c90d1b304d"}, - {file = "mypy-1.17.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3204d773bab5ff4ebbd1f8efa11b498027cd57017c003ae970f310e5b96be8d8"}, - {file = "mypy-1.17.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1051df7ec0886fa246a530ae917c473491e9a0ba6938cfd0ec2abc1076495c3e"}, - {file = "mypy-1.17.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:f773c6d14dcc108a5b141b4456b0871df638eb411a89cd1c0c001fc4a9d08fc8"}, - {file = "mypy-1.17.0-cp312-cp312-win_amd64.whl", hash = "sha256:1619a485fd0e9c959b943c7b519ed26b712de3002d7de43154a489a2d0fd817d"}, - {file = "mypy-1.17.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:2c41aa59211e49d717d92b3bb1238c06d387c9325d3122085113c79118bebb06"}, - {file = "mypy-1.17.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0e69db1fb65b3114f98c753e3930a00514f5b68794ba80590eb02090d54a5d4a"}, - {file = "mypy-1.17.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:03ba330b76710f83d6ac500053f7727270b6b8553b0423348ffb3af6f2f7b889"}, - {file = "mypy-1.17.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:037bc0f0b124ce46bfde955c647f3e395c6174476a968c0f22c95a8d2f589bba"}, - {file = "mypy-1.17.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:c38876106cb6132259683632b287238858bd58de267d80defb6f418e9ee50658"}, - {file = "mypy-1.17.0-cp313-cp313-win_amd64.whl", hash = "sha256:d30ba01c0f151998f367506fab31c2ac4527e6a7b2690107c7a7f9e3cb419a9c"}, - {file = "mypy-1.17.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:63e751f1b5ab51d6f3d219fe3a2fe4523eaa387d854ad06906c63883fde5b1ab"}, - {file = "mypy-1.17.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f7fb09d05e0f1c329a36dcd30e27564a3555717cde87301fae4fb542402ddfad"}, - {file = "mypy-1.17.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b72c34ce05ac3a1361ae2ebb50757fb6e3624032d91488d93544e9f82db0ed6c"}, - {file = "mypy-1.17.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:434ad499ad8dde8b2f6391ddfa982f41cb07ccda8e3c67781b1bfd4e5f9450a8"}, - {file = "mypy-1.17.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:f105f61a5eff52e137fd73bee32958b2add9d9f0a856f17314018646af838e97"}, - {file = "mypy-1.17.0-cp39-cp39-win_amd64.whl", hash = "sha256:ba06254a5a22729853209550d80f94e28690d5530c661f9416a68ac097b13fc4"}, - {file = "mypy-1.17.0-py3-none-any.whl", hash = "sha256:15d9d0018237ab058e5de3d8fce61b6fa72cc59cc78fd91f1b474bce12abf496"}, - {file = "mypy-1.17.0.tar.gz", hash = "sha256:e5d7ccc08ba089c06e2f5629c660388ef1fee708444f1dee0b9203fa031dee03"}, + {file = "mypy-1.17.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:3fbe6d5555bf608c47203baa3e72dbc6ec9965b3d7c318aa9a4ca76f465bd972"}, + {file = "mypy-1.17.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:80ef5c058b7bce08c83cac668158cb7edea692e458d21098c7d3bce35a5d43e7"}, + {file = "mypy-1.17.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c4a580f8a70c69e4a75587bd925d298434057fe2a428faaf927ffe6e4b9a98df"}, + {file = "mypy-1.17.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:dd86bb649299f09d987a2eebb4d52d10603224500792e1bee18303bbcc1ce390"}, + {file = "mypy-1.17.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:a76906f26bd8d51ea9504966a9c25419f2e668f012e0bdf3da4ea1526c534d94"}, + {file = "mypy-1.17.1-cp310-cp310-win_amd64.whl", hash = "sha256:e79311f2d904ccb59787477b7bd5d26f3347789c06fcd7656fa500875290264b"}, + {file = "mypy-1.17.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ad37544be07c5d7fba814eb370e006df58fed8ad1ef33ed1649cb1889ba6ff58"}, + {file = "mypy-1.17.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:064e2ff508e5464b4bd807a7c1625bc5047c5022b85c70f030680e18f37273a5"}, + {file = "mypy-1.17.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:70401bbabd2fa1aa7c43bb358f54037baf0586f41e83b0ae67dd0534fc64edfd"}, + {file = "mypy-1.17.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e92bdc656b7757c438660f775f872a669b8ff374edc4d18277d86b63edba6b8b"}, + {file = "mypy-1.17.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:c1fdf4abb29ed1cb091cf432979e162c208a5ac676ce35010373ff29247bcad5"}, + {file = "mypy-1.17.1-cp311-cp311-win_amd64.whl", hash = "sha256:ff2933428516ab63f961644bc49bc4cbe42bbffb2cd3b71cc7277c07d16b1a8b"}, + {file = "mypy-1.17.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:69e83ea6553a3ba79c08c6e15dbd9bfa912ec1e493bf75489ef93beb65209aeb"}, + {file = "mypy-1.17.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1b16708a66d38abb1e6b5702f5c2c87e133289da36f6a1d15f6a5221085c6403"}, + {file = "mypy-1.17.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:89e972c0035e9e05823907ad5398c5a73b9f47a002b22359b177d40bdaee7056"}, + {file = "mypy-1.17.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:03b6d0ed2b188e35ee6d5c36b5580cffd6da23319991c49ab5556c023ccf1341"}, + {file = "mypy-1.17.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:c837b896b37cd103570d776bda106eabb8737aa6dd4f248451aecf53030cdbeb"}, + {file = "mypy-1.17.1-cp312-cp312-win_amd64.whl", hash = "sha256:665afab0963a4b39dff7c1fa563cc8b11ecff7910206db4b2e64dd1ba25aed19"}, + {file = "mypy-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:93378d3203a5c0800c6b6d850ad2f19f7a3cdf1a3701d3416dbf128805c6a6a7"}, + {file = "mypy-1.17.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:15d54056f7fe7a826d897789f53dd6377ec2ea8ba6f776dc83c2902b899fee81"}, + {file = "mypy-1.17.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:209a58fed9987eccc20f2ca94afe7257a8f46eb5df1fb69958650973230f91e6"}, + {file = "mypy-1.17.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:099b9a5da47de9e2cb5165e581f158e854d9e19d2e96b6698c0d64de911dd849"}, + {file = "mypy-1.17.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fa6ffadfbe6994d724c5a1bb6123a7d27dd68fc9c059561cd33b664a79578e14"}, + {file = "mypy-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:9a2b7d9180aed171f033c9f2fc6c204c1245cf60b0cb61cf2e7acc24eea78e0a"}, + {file = "mypy-1.17.1-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:15a83369400454c41ed3a118e0cc58bd8123921a602f385cb6d6ea5df050c733"}, + {file = "mypy-1.17.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:55b918670f692fc9fba55c3298d8a3beae295c5cded0a55dccdc5bbead814acd"}, + {file = "mypy-1.17.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:62761474061feef6f720149d7ba876122007ddc64adff5ba6f374fda35a018a0"}, + {file = "mypy-1.17.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c49562d3d908fd49ed0938e5423daed8d407774a479b595b143a3d7f87cdae6a"}, + {file = "mypy-1.17.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:397fba5d7616a5bc60b45c7ed204717eaddc38f826e3645402c426057ead9a91"}, + {file = "mypy-1.17.1-cp314-cp314-win_amd64.whl", hash = "sha256:9d6b20b97d373f41617bd0708fd46aa656059af57f2ef72aa8c7d6a2b73b74ed"}, + {file = "mypy-1.17.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5d1092694f166a7e56c805caaf794e0585cabdbf1df36911c414e4e9abb62ae9"}, + {file = "mypy-1.17.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:79d44f9bfb004941ebb0abe8eff6504223a9c1ac51ef967d1263c6572bbebc99"}, + {file = "mypy-1.17.1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b01586eed696ec905e61bd2568f48740f7ac4a45b3a468e6423a03d3788a51a8"}, + {file = "mypy-1.17.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:43808d9476c36b927fbcd0b0255ce75efe1b68a080154a38ae68a7e62de8f0f8"}, + {file = "mypy-1.17.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:feb8cc32d319edd5859da2cc084493b3e2ce5e49a946377663cc90f6c15fb259"}, + {file = "mypy-1.17.1-cp39-cp39-win_amd64.whl", hash = "sha256:d7598cf74c3e16539d4e2f0b8d8c318e00041553d83d4861f87c7a72e95ac24d"}, + {file = "mypy-1.17.1-py3-none-any.whl", hash = "sha256:a9f52c0351c21fe24c21d8c0eb1f62967b262d6729393397b6f443c3b773c3b9"}, + {file = "mypy-1.17.1.tar.gz", hash = "sha256:25e01ec741ab5bb3eec8ba9cdb0f769230368a22c959c4937360efb89b7e9f01"}, ] [package.dependencies] @@ -1140,29 +1188,29 @@ files = [ [[package]] name = "ruff" -version = "0.12.5" +version = "0.12.8" description = "An extremely fast Python linter and code formatter, written in Rust." optional = false python-versions = ">=3.7" files = [ - {file = "ruff-0.12.5-py3-none-linux_armv6l.whl", hash = "sha256:1de2c887e9dec6cb31fcb9948299de5b2db38144e66403b9660c9548a67abd92"}, - {file = "ruff-0.12.5-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:d1ab65e7d8152f519e7dea4de892317c9da7a108da1c56b6a3c1d5e7cf4c5e9a"}, - {file = "ruff-0.12.5-py3-none-macosx_11_0_arm64.whl", hash = "sha256:962775ed5b27c7aa3fdc0d8f4d4433deae7659ef99ea20f783d666e77338b8cf"}, - {file = "ruff-0.12.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:73b4cae449597e7195a49eb1cdca89fd9fbb16140c7579899e87f4c85bf82f73"}, - {file = "ruff-0.12.5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8b13489c3dc50de5e2d40110c0cce371e00186b880842e245186ca862bf9a1ac"}, - {file = "ruff-0.12.5-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f1504fea81461cf4841778b3ef0a078757602a3b3ea4b008feb1308cb3f23e08"}, - {file = "ruff-0.12.5-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:c7da4129016ae26c32dfcbd5b671fe652b5ab7fc40095d80dcff78175e7eddd4"}, - {file = "ruff-0.12.5-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ca972c80f7ebcfd8af75a0f18b17c42d9f1ef203d163669150453f50ca98ab7b"}, - {file = "ruff-0.12.5-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8dbbf9f25dfb501f4237ae7501d6364b76a01341c6f1b2cd6764fe449124bb2a"}, - {file = "ruff-0.12.5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2c47dea6ae39421851685141ba9734767f960113d51e83fd7bb9958d5be8763a"}, - {file = "ruff-0.12.5-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:c5076aa0e61e30f848846f0265c873c249d4b558105b221be1828f9f79903dc5"}, - {file = "ruff-0.12.5-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:a5a4c7830dadd3d8c39b1cc85386e2c1e62344f20766be6f173c22fb5f72f293"}, - {file = "ruff-0.12.5-py3-none-musllinux_1_2_i686.whl", hash = "sha256:46699f73c2b5b137b9dc0fc1a190b43e35b008b398c6066ea1350cce6326adcb"}, - {file = "ruff-0.12.5-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:5a655a0a0d396f0f072faafc18ebd59adde8ca85fb848dc1b0d9f024b9c4d3bb"}, - {file = "ruff-0.12.5-py3-none-win32.whl", hash = "sha256:dfeb2627c459b0b78ca2bbdc38dd11cc9a0a88bf91db982058b26ce41714ffa9"}, - {file = "ruff-0.12.5-py3-none-win_amd64.whl", hash = "sha256:ae0d90cf5f49466c954991b9d8b953bd093c32c27608e409ae3564c63c5306a5"}, - {file = "ruff-0.12.5-py3-none-win_arm64.whl", hash = "sha256:48cdbfc633de2c5c37d9f090ba3b352d1576b0015bfc3bc98eaf230275b7e805"}, - {file = "ruff-0.12.5.tar.gz", hash = "sha256:b209db6102b66f13625940b7f8c7d0f18e20039bb7f6101fbdac935c9612057e"}, + {file = "ruff-0.12.8-py3-none-linux_armv6l.whl", hash = "sha256:63cb5a5e933fc913e5823a0dfdc3c99add73f52d139d6cd5cc8639d0e0465513"}, + {file = "ruff-0.12.8-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:9a9bbe28f9f551accf84a24c366c1aa8774d6748438b47174f8e8565ab9dedbc"}, + {file = "ruff-0.12.8-py3-none-macosx_11_0_arm64.whl", hash = "sha256:2fae54e752a3150f7ee0e09bce2e133caf10ce9d971510a9b925392dc98d2fec"}, + {file = "ruff-0.12.8-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c0acbcf01206df963d9331b5838fb31f3b44fa979ee7fa368b9b9057d89f4a53"}, + {file = "ruff-0.12.8-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ae3e7504666ad4c62f9ac8eedb52a93f9ebdeb34742b8b71cd3cccd24912719f"}, + {file = "ruff-0.12.8-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cb82efb5d35d07497813a1c5647867390a7d83304562607f3579602fa3d7d46f"}, + {file = "ruff-0.12.8-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:dbea798fc0065ad0b84a2947b0aff4233f0cb30f226f00a2c5850ca4393de609"}, + {file = "ruff-0.12.8-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:49ebcaccc2bdad86fd51b7864e3d808aad404aab8df33d469b6e65584656263a"}, + {file = "ruff-0.12.8-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ac9c570634b98c71c88cb17badd90f13fc076a472ba6ef1d113d8ed3df109fb"}, + {file = "ruff-0.12.8-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:560e0cd641e45591a3e42cb50ef61ce07162b9c233786663fdce2d8557d99818"}, + {file = "ruff-0.12.8-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:71c83121512e7743fba5a8848c261dcc454cafb3ef2934a43f1b7a4eb5a447ea"}, + {file = "ruff-0.12.8-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:de4429ef2ba091ecddedd300f4c3f24bca875d3d8b23340728c3cb0da81072c3"}, + {file = "ruff-0.12.8-py3-none-musllinux_1_2_i686.whl", hash = "sha256:a2cab5f60d5b65b50fba39a8950c8746df1627d54ba1197f970763917184b161"}, + {file = "ruff-0.12.8-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:45c32487e14f60b88aad6be9fd5da5093dbefb0e3e1224131cb1d441d7cb7d46"}, + {file = "ruff-0.12.8-py3-none-win32.whl", hash = "sha256:daf3475060a617fd5bc80638aeaf2f5937f10af3ec44464e280a9d2218e720d3"}, + {file = "ruff-0.12.8-py3-none-win_amd64.whl", hash = "sha256:7209531f1a1fcfbe8e46bcd7ab30e2f43604d8ba1c49029bb420b103d0b5f76e"}, + {file = "ruff-0.12.8-py3-none-win_arm64.whl", hash = "sha256:c90e1a334683ce41b0e7a04f41790c429bf5073b62c1ae701c9dc5b3d14f0749"}, + {file = "ruff-0.12.8.tar.gz", hash = "sha256:4cb3a45525176e1009b2b64126acf5f9444ea59066262791febf55e40493a033"}, ] [[package]] @@ -1189,13 +1237,13 @@ files = [ [[package]] name = "types-pyyaml" -version = "6.0.12.20250516" +version = "6.0.12.20250809" description = "Typing stubs for PyYAML" optional = false python-versions = ">=3.9" files = [ - {file = "types_pyyaml-6.0.12.20250516-py3-none-any.whl", hash = "sha256:8478208feaeb53a34cb5d970c56a7cd76b72659442e733e268a94dc72b2d0530"}, - {file = "types_pyyaml-6.0.12.20250516.tar.gz", hash = "sha256:9f21a70216fc0fa1b216a8176db5f9e0af6eb35d2f2932acb87689d03a5bf6ba"}, + {file = "types_pyyaml-6.0.12.20250809-py3-none-any.whl", hash = "sha256:032b6003b798e7de1a1ddfeefee32fac6486bdfe4845e0ae0e7fb3ee4512b52f"}, + {file = "types_pyyaml-6.0.12.20250809.tar.gz", hash = "sha256:af4a1aca028f18e75297da2ee0da465f799627370d74073e96fee876524f61b5"}, ] [[package]] diff --git a/pyproject.toml b/pyproject.toml index 22fcaa2..1348af6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] -name = "FastSim" +name = "AsyncFlow" version = "0.1.0" -description = "Simulate fastapi event loop to manage resources" +description = "Simulate distributed system for what if analysis for the capacity planning" authors = ["Gioele Botta"] readme = "README.md" packages = [ - { include = "app", from = "src" } + { include = "asyncflow", from = "src" } ] [tool.poetry.dependencies] diff --git a/src/app/__init__.py b/src/asyncflow/__init__.py similarity index 100% rename from src/app/__init__.py rename to src/asyncflow/__init__.py diff --git a/src/app/config/__init__.py b/src/asyncflow/config/__init__.py similarity index 100% rename from src/app/config/__init__.py rename to src/asyncflow/config/__init__.py diff --git a/src/app/config/constants.py b/src/asyncflow/config/constants.py similarity index 99% rename from src/app/config/constants.py rename to src/asyncflow/config/constants.py index 0aa5f9d..de79a33 100644 --- a/src/app/config/constants.py +++ b/src/asyncflow/config/constants.py @@ -1,7 +1,7 @@ """ Application-wide constants and configuration values. -This module groups all the static enumerations used by the FastSim backend +This module groups all the static enumerations used by the AsyncFlow backend so that: JSON / YAML payloads can be strictly validated with Pydantic. diff --git a/src/app/config/plot_constants.py b/src/asyncflow/config/plot_constants.py similarity index 100% rename from src/app/config/plot_constants.py rename to src/asyncflow/config/plot_constants.py diff --git a/src/app/metrics/analyzer.py b/src/asyncflow/metrics/analyzer.py similarity index 95% rename from src/app/metrics/analyzer.py rename to src/asyncflow/metrics/analyzer.py index 8308d54..4db2ee1 100644 --- a/src/app/metrics/analyzer.py +++ b/src/asyncflow/metrics/analyzer.py @@ -7,8 +7,8 @@ import numpy as np -from app.config.constants import LatencyKey, SampledMetricName -from app.config.plot_constants import ( +from asyncflow.config.constants import LatencyKey, SampledMetricName +from asyncflow.config.plot_constants import ( LATENCY_PLOT, RAM_PLOT, SERVER_QUEUES_PLOT, @@ -23,10 +23,10 @@ from matplotlib.axes import Axes from matplotlib.lines import Line2D - from app.runtime.actors.client import ClientRuntime - from app.runtime.actors.edge import EdgeRuntime - from app.runtime.actors.server import ServerRuntime - from app.schemas.simulation_settings_input import SimulationSettings + from asyncflow.runtime.actors.client import ClientRuntime + from asyncflow.runtime.actors.edge import EdgeRuntime + from asyncflow.runtime.actors.server import ServerRuntime + from asyncflow.schemas.simulation_settings_input import SimulationSettings class ResultsAnalyzer: diff --git a/src/app/metrics/client.py b/src/asyncflow/metrics/client.py similarity index 100% rename from src/app/metrics/client.py rename to src/asyncflow/metrics/client.py diff --git a/src/app/metrics/collector.py b/src/asyncflow/metrics/collector.py similarity index 91% rename from src/app/metrics/collector.py rename to src/asyncflow/metrics/collector.py index d2158f5..97421b7 100644 --- a/src/app/metrics/collector.py +++ b/src/asyncflow/metrics/collector.py @@ -4,10 +4,10 @@ import simpy -from app.config.constants import SampledMetricName -from app.runtime.actors.edge import EdgeRuntime -from app.runtime.actors.server import ServerRuntime -from app.schemas.simulation_settings_input import SimulationSettings +from asyncflow.config.constants import SampledMetricName +from asyncflow.runtime.actors.edge import EdgeRuntime +from asyncflow.runtime.actors.server import ServerRuntime +from asyncflow.schemas.simulation_settings_input import SimulationSettings # The idea for this class is to gather list of runtime objects that # are defined in the central class to build the simulation, in this diff --git a/src/app/metrics/edge.py b/src/asyncflow/metrics/edge.py similarity index 94% rename from src/app/metrics/edge.py rename to src/asyncflow/metrics/edge.py index f714482..f9626dd 100644 --- a/src/app/metrics/edge.py +++ b/src/asyncflow/metrics/edge.py @@ -2,7 +2,7 @@ from collections.abc import Iterable -from app.config.constants import SampledMetricName +from asyncflow.config.constants import SampledMetricName # Initialize one time outside the function all possible metrics # related to the edges, the idea of this structure is to diff --git a/src/app/metrics/server.py b/src/asyncflow/metrics/server.py similarity index 94% rename from src/app/metrics/server.py rename to src/asyncflow/metrics/server.py index 18810ed..6ebb96e 100644 --- a/src/app/metrics/server.py +++ b/src/asyncflow/metrics/server.py @@ -5,7 +5,7 @@ from collections.abc import Iterable -from app.config.constants import SampledMetricName +from asyncflow.config.constants import SampledMetricName # Initialize one time outside the function all possible metrics # related to the servers, the idea of this structure is to diff --git a/src/app/pybuilder/input_builder.py b/src/asyncflow/pybuilder/input_builder.py similarity index 93% rename from src/app/pybuilder/input_builder.py rename to src/asyncflow/pybuilder/input_builder.py index 223cd32..7d3c26f 100644 --- a/src/app/pybuilder/input_builder.py +++ b/src/asyncflow/pybuilder/input_builder.py @@ -4,10 +4,10 @@ from typing import Self -from app.schemas.full_simulation_input import SimulationPayload -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.full_system_topology import ( +from asyncflow.schemas.full_simulation_input import SimulationPayload +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.full_system_topology import ( Client, Edge, LoadBalancer, diff --git a/src/app/resources/__init__.py b/src/asyncflow/resources/__init__.py similarity index 100% rename from src/app/resources/__init__.py rename to src/asyncflow/resources/__init__.py diff --git a/src/app/resources/registry.py b/src/asyncflow/resources/registry.py similarity index 86% rename from src/app/resources/registry.py rename to src/asyncflow/resources/registry.py index 02b7585..6e1e3be 100644 --- a/src/app/resources/registry.py +++ b/src/asyncflow/resources/registry.py @@ -9,8 +9,8 @@ import simpy -from app.resources.server_containers import ServerContainers, build_containers -from app.schemas.system_topology.full_system_topology import TopologyGraph +from asyncflow.resources.server_containers import ServerContainers, build_containers +from asyncflow.schemas.system_topology.full_system_topology import TopologyGraph class ResourcesRuntime: diff --git a/src/app/resources/server_containers.py b/src/asyncflow/resources/server_containers.py similarity index 94% rename from src/app/resources/server_containers.py rename to src/asyncflow/resources/server_containers.py index dcbef1f..ca054c2 100644 --- a/src/app/resources/server_containers.py +++ b/src/asyncflow/resources/server_containers.py @@ -11,8 +11,8 @@ import simpy -from app.config.constants import ServerResourceName -from app.schemas.system_topology.full_system_topology import ( +from asyncflow.config.constants import ServerResourceName +from asyncflow.schemas.system_topology.full_system_topology import ( ServerResources, ) diff --git a/src/app/runtime/__init__.py b/src/asyncflow/runtime/__init__.py similarity index 100% rename from src/app/runtime/__init__.py rename to src/asyncflow/runtime/__init__.py diff --git a/src/app/runtime/actors/client.py b/src/asyncflow/runtime/actors/client.py similarity index 89% rename from src/app/runtime/actors/client.py rename to src/asyncflow/runtime/actors/client.py index 2f2da4b..58ba7e9 100644 --- a/src/app/runtime/actors/client.py +++ b/src/asyncflow/runtime/actors/client.py @@ -5,13 +5,13 @@ import simpy -from app.config.constants import SystemNodes -from app.metrics.client import RqsClock -from app.runtime.actors.edge import EdgeRuntime -from app.schemas.system_topology.full_system_topology import Client +from asyncflow.config.constants import SystemNodes +from asyncflow.metrics.client import RqsClock +from asyncflow.runtime.actors.edge import EdgeRuntime +from asyncflow.schemas.system_topology.full_system_topology import Client if TYPE_CHECKING: - from app.runtime.rqs_state import RequestState + from asyncflow.runtime.rqs_state import RequestState diff --git a/src/app/runtime/actors/edge.py b/src/asyncflow/runtime/actors/edge.py similarity index 88% rename from src/app/runtime/actors/edge.py rename to src/asyncflow/runtime/actors/edge.py index 4e2f549..c2c5328 100644 --- a/src/app/runtime/actors/edge.py +++ b/src/asyncflow/runtime/actors/edge.py @@ -12,15 +12,15 @@ import numpy as np import simpy -from app.config.constants import SampledMetricName, SystemEdges -from app.metrics.edge import build_edge_metrics -from app.runtime.rqs_state import RequestState -from app.samplers.common_helpers import general_sampler -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.full_system_topology import Edge +from asyncflow.config.constants import SampledMetricName, SystemEdges +from asyncflow.metrics.edge import build_edge_metrics +from asyncflow.runtime.rqs_state import RequestState +from asyncflow.samplers.common_helpers import general_sampler +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.full_system_topology import Edge if TYPE_CHECKING: - from app.schemas.random_variables_config import RVConfig + from asyncflow.schemas.random_variables_config import RVConfig diff --git a/src/app/runtime/actors/helpers/lb_algorithms.py b/src/asyncflow/runtime/actors/helpers/lb_algorithms.py similarity index 94% rename from src/app/runtime/actors/helpers/lb_algorithms.py rename to src/asyncflow/runtime/actors/helpers/lb_algorithms.py index 90c325e..46078f7 100644 --- a/src/app/runtime/actors/helpers/lb_algorithms.py +++ b/src/asyncflow/runtime/actors/helpers/lb_algorithms.py @@ -2,7 +2,7 @@ -from app.runtime.actors.edge import EdgeRuntime +from asyncflow.runtime.actors.edge import EdgeRuntime def least_connections(list_edges: list[EdgeRuntime]) -> EdgeRuntime: diff --git a/src/app/runtime/actors/load_balancer.py b/src/asyncflow/runtime/actors/load_balancer.py similarity index 86% rename from src/app/runtime/actors/load_balancer.py rename to src/asyncflow/runtime/actors/load_balancer.py index b370ff3..fac3f66 100644 --- a/src/app/runtime/actors/load_balancer.py +++ b/src/asyncflow/runtime/actors/load_balancer.py @@ -5,16 +5,16 @@ import simpy -from app.config.constants import LbAlgorithmsName, SystemNodes -from app.runtime.actors.edge import EdgeRuntime -from app.runtime.actors.helpers.lb_algorithms import ( +from asyncflow.config.constants import LbAlgorithmsName, SystemNodes +from asyncflow.runtime.actors.edge import EdgeRuntime +from asyncflow.runtime.actors.helpers.lb_algorithms import ( least_connections, round_robin, ) -from app.schemas.system_topology.full_system_topology import LoadBalancer +from asyncflow.schemas.system_topology.full_system_topology import LoadBalancer if TYPE_CHECKING: - from app.runtime.rqs_state import RequestState + from asyncflow.runtime.rqs_state import RequestState diff --git a/src/app/runtime/actors/rqs_generator.py b/src/asyncflow/runtime/actors/rqs_generator.py similarity index 88% rename from src/app/runtime/actors/rqs_generator.py rename to src/asyncflow/runtime/actors/rqs_generator.py index d9e7e38..6c983df 100644 --- a/src/app/runtime/actors/rqs_generator.py +++ b/src/asyncflow/runtime/actors/rqs_generator.py @@ -9,10 +9,10 @@ import numpy as np -from app.config.constants import Distribution, SystemNodes -from app.runtime.rqs_state import RequestState -from app.samplers.gaussian_poisson import gaussian_poisson_sampling -from app.samplers.poisson_poisson import poisson_poisson_sampling +from asyncflow.config.constants import Distribution, SystemNodes +from asyncflow.runtime.rqs_state import RequestState +from asyncflow.samplers.gaussian_poisson import gaussian_poisson_sampling +from asyncflow.samplers.poisson_poisson import poisson_poisson_sampling if TYPE_CHECKING: @@ -20,9 +20,9 @@ import simpy - from app.runtime.actors.edge import EdgeRuntime - from app.schemas.rqs_generator_input import RqsGeneratorInput - from app.schemas.simulation_settings_input import SimulationSettings + from asyncflow.runtime.actors.edge import EdgeRuntime + from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput + from asyncflow.schemas.simulation_settings_input import SimulationSettings class RqsGeneratorRuntime: diff --git a/src/app/runtime/actors/server.py b/src/asyncflow/runtime/actors/server.py similarity index 96% rename from src/app/runtime/actors/server.py rename to src/asyncflow/runtime/actors/server.py index d791bbb..7d72de1 100644 --- a/src/app/runtime/actors/server.py +++ b/src/asyncflow/runtime/actors/server.py @@ -9,7 +9,7 @@ import numpy as np import simpy -from app.config.constants import ( +from asyncflow.config.constants import ( EndpointStepCPU, EndpointStepIO, EndpointStepRAM, @@ -18,12 +18,12 @@ StepOperation, SystemNodes, ) -from app.metrics.server import build_server_metrics -from app.resources.server_containers import ServerContainers -from app.runtime.actors.edge import EdgeRuntime -from app.runtime.rqs_state import RequestState -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.full_system_topology import Server +from asyncflow.metrics.server import build_server_metrics +from asyncflow.resources.server_containers import ServerContainers +from asyncflow.runtime.actors.edge import EdgeRuntime +from asyncflow.runtime.rqs_state import RequestState +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.full_system_topology import Server class ServerRuntime: diff --git a/src/app/runtime/rqs_state.py b/src/asyncflow/runtime/rqs_state.py similarity index 95% rename from src/app/runtime/rqs_state.py rename to src/asyncflow/runtime/rqs_state.py index 1c953fd..71b8389 100644 --- a/src/app/runtime/rqs_state.py +++ b/src/asyncflow/runtime/rqs_state.py @@ -6,7 +6,7 @@ from typing import TYPE_CHECKING, NamedTuple if TYPE_CHECKING: - from app.config.constants import SystemEdges, SystemNodes + from asyncflow.config.constants import SystemEdges, SystemNodes class Hop(NamedTuple): diff --git a/src/app/runtime/simulation_runner.py b/src/asyncflow/runtime/simulation_runner.py similarity index 93% rename from src/app/runtime/simulation_runner.py rename to src/asyncflow/runtime/simulation_runner.py index e2b5c6f..f82fb72 100644 --- a/src/app/runtime/simulation_runner.py +++ b/src/asyncflow/runtime/simulation_runner.py @@ -8,21 +8,21 @@ import simpy import yaml -from app.metrics.analyzer import ResultsAnalyzer -from app.metrics.collector import SampledMetricCollector -from app.resources.registry import ResourcesRuntime -from app.runtime.actors.client import ClientRuntime -from app.runtime.actors.edge import EdgeRuntime -from app.runtime.actors.load_balancer import LoadBalancerRuntime -from app.runtime.actors.rqs_generator import RqsGeneratorRuntime -from app.runtime.actors.server import ServerRuntime -from app.schemas.full_simulation_input import SimulationPayload +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.metrics.collector import SampledMetricCollector +from asyncflow.resources.registry import ResourcesRuntime +from asyncflow.runtime.actors.client import ClientRuntime +from asyncflow.runtime.actors.edge import EdgeRuntime +from asyncflow.runtime.actors.load_balancer import LoadBalancerRuntime +from asyncflow.runtime.actors.rqs_generator import RqsGeneratorRuntime +from asyncflow.runtime.actors.server import ServerRuntime +from asyncflow.schemas.full_simulation_input import SimulationPayload if TYPE_CHECKING: from collections.abc import Iterable - from app.schemas.rqs_generator_input import RqsGeneratorInput - from app.schemas.system_topology.full_system_topology import ( + from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput + from asyncflow.schemas.system_topology.full_system_topology import ( Client, Edge, LoadBalancer, diff --git a/src/app/samplers/common_helpers.py b/src/asyncflow/samplers/common_helpers.py similarity index 96% rename from src/app/samplers/common_helpers.py rename to src/asyncflow/samplers/common_helpers.py index d594538..123ae4a 100644 --- a/src/app/samplers/common_helpers.py +++ b/src/asyncflow/samplers/common_helpers.py @@ -3,8 +3,8 @@ import numpy as np -from app.config.constants import Distribution -from app.schemas.random_variables_config import RVConfig +from asyncflow.config.constants import Distribution +from asyncflow.schemas.random_variables_config import RVConfig def uniform_variable_generator(rng: np.random.Generator) -> float: diff --git a/src/app/samplers/gaussian_poisson.py b/src/asyncflow/samplers/gaussian_poisson.py similarity index 92% rename from src/app/samplers/gaussian_poisson.py rename to src/asyncflow/samplers/gaussian_poisson.py index bb1f6fd..5caa9ed 100644 --- a/src/app/samplers/gaussian_poisson.py +++ b/src/asyncflow/samplers/gaussian_poisson.py @@ -11,13 +11,13 @@ import numpy as np -from app.config.constants import TimeDefaults -from app.samplers.common_helpers import ( +from asyncflow.config.constants import TimeDefaults +from asyncflow.samplers.common_helpers import ( truncated_gaussian_generator, uniform_variable_generator, ) -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings def gaussian_poisson_sampling( diff --git a/src/app/samplers/poisson_poisson.py b/src/asyncflow/samplers/poisson_poisson.py similarity index 90% rename from src/app/samplers/poisson_poisson.py rename to src/asyncflow/samplers/poisson_poisson.py index 725faa5..5e1b4cc 100644 --- a/src/app/samplers/poisson_poisson.py +++ b/src/asyncflow/samplers/poisson_poisson.py @@ -8,13 +8,13 @@ import numpy as np -from app.config.constants import TimeDefaults -from app.samplers.common_helpers import ( +from asyncflow.config.constants import TimeDefaults +from asyncflow.samplers.common_helpers import ( poisson_variable_generator, uniform_variable_generator, ) -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings def poisson_poisson_sampling( diff --git a/src/app/schemas/full_simulation_input.py b/src/asyncflow/schemas/full_simulation_input.py similarity index 55% rename from src/app/schemas/full_simulation_input.py rename to src/asyncflow/schemas/full_simulation_input.py index 8be873a..504396a 100644 --- a/src/app/schemas/full_simulation_input.py +++ b/src/asyncflow/schemas/full_simulation_input.py @@ -2,9 +2,9 @@ from pydantic import BaseModel -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.full_system_topology import TopologyGraph +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.full_system_topology import TopologyGraph class SimulationPayload(BaseModel): diff --git a/src/app/schemas/random_variables_config.py b/src/asyncflow/schemas/random_variables_config.py similarity index 95% rename from src/app/schemas/random_variables_config.py rename to src/asyncflow/schemas/random_variables_config.py index e15d509..d827b92 100644 --- a/src/app/schemas/random_variables_config.py +++ b/src/asyncflow/schemas/random_variables_config.py @@ -2,7 +2,7 @@ from pydantic import BaseModel, field_validator, model_validator -from app.config.constants import Distribution +from asyncflow.config.constants import Distribution class RVConfig(BaseModel): diff --git a/src/app/schemas/rqs_generator_input.py b/src/asyncflow/schemas/rqs_generator_input.py similarity index 92% rename from src/app/schemas/rqs_generator_input.py rename to src/asyncflow/schemas/rqs_generator_input.py index 4f217e7..f0f63a3 100644 --- a/src/app/schemas/rqs_generator_input.py +++ b/src/asyncflow/schemas/rqs_generator_input.py @@ -3,8 +3,8 @@ from pydantic import BaseModel, Field, field_validator -from app.config.constants import Distribution, SystemNodes, TimeDefaults -from app.schemas.random_variables_config import RVConfig +from asyncflow.config.constants import Distribution, SystemNodes, TimeDefaults +from asyncflow.schemas.random_variables_config import RVConfig class RqsGeneratorInput(BaseModel): diff --git a/src/app/schemas/simulation_settings_input.py b/src/asyncflow/schemas/simulation_settings_input.py similarity index 97% rename from src/app/schemas/simulation_settings_input.py rename to src/asyncflow/schemas/simulation_settings_input.py index a9a90a6..7f0d145 100644 --- a/src/app/schemas/simulation_settings_input.py +++ b/src/asyncflow/schemas/simulation_settings_input.py @@ -2,7 +2,7 @@ from pydantic import BaseModel, Field -from app.config.constants import ( +from asyncflow.config.constants import ( EventMetricName, SampledMetricName, SamplePeriods, diff --git a/src/app/schemas/system_topology/endpoint.py b/src/asyncflow/schemas/system_topology/endpoint.py similarity index 98% rename from src/app/schemas/system_topology/endpoint.py rename to src/asyncflow/schemas/system_topology/endpoint.py index aa40e9e..aa91c7b 100644 --- a/src/app/schemas/system_topology/endpoint.py +++ b/src/asyncflow/schemas/system_topology/endpoint.py @@ -8,7 +8,7 @@ model_validator, ) -from app.config.constants import ( +from asyncflow.config.constants import ( EndpointStepCPU, EndpointStepIO, EndpointStepRAM, diff --git a/src/app/schemas/system_topology/full_system_topology.py b/src/asyncflow/schemas/system_topology/full_system_topology.py similarity index 98% rename from src/app/schemas/system_topology/full_system_topology.py rename to src/asyncflow/schemas/system_topology/full_system_topology.py index f70b16c..7ab91bc 100644 --- a/src/app/schemas/system_topology/full_system_topology.py +++ b/src/asyncflow/schemas/system_topology/full_system_topology.py @@ -18,15 +18,15 @@ ) from pydantic_core.core_schema import ValidationInfo -from app.config.constants import ( +from asyncflow.config.constants import ( LbAlgorithmsName, NetworkParameters, ServerResourcesDefaults, SystemEdges, SystemNodes, ) -from app.schemas.random_variables_config import RVConfig -from app.schemas.system_topology.endpoint import Endpoint +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.system_topology.endpoint import Endpoint #------------------------------------------------------------- # Definition of the nodes structure for the graph representing diff --git a/tests/conftest.py b/tests/conftest.py index 39c8b40..968d835 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -5,18 +5,18 @@ from numpy.random import Generator as NpGenerator from numpy.random import default_rng -from app.config.constants import ( +from asyncflow.config.constants import ( Distribution, EventMetricName, SampledMetricName, SamplePeriods, TimeDefaults, ) -from app.schemas.full_simulation_input import SimulationPayload -from app.schemas.random_variables_config import RVConfig -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.full_system_topology import ( +from asyncflow.schemas.full_simulation_input import SimulationPayload +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.full_system_topology import ( Client, Edge, TopologyGraph, diff --git a/tests/integration/conftest.py b/tests/integration/conftest.py index b46300b..2c94d6f 100644 --- a/tests/integration/conftest.py +++ b/tests/integration/conftest.py @@ -7,7 +7,7 @@ import pytest import simpy -from app.runtime.simulation_runner import SimulationRunner +from asyncflow.runtime.simulation_runner import SimulationRunner if TYPE_CHECKING: from collections.abc import Callable diff --git a/tests/integration/minimal/conftest.py b/tests/integration/minimal/conftest.py index 434f9f0..812ba5e 100644 --- a/tests/integration/minimal/conftest.py +++ b/tests/integration/minimal/conftest.py @@ -14,13 +14,13 @@ import pytest import simpy -from app.config.constants import TimeDefaults -from app.runtime.simulation_runner import SimulationRunner -from app.schemas.random_variables_config import RVConfig -from app.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.config.constants import TimeDefaults +from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput if TYPE_CHECKING: - from app.schemas.full_simulation_input import SimulationPayload + from asyncflow.schemas.full_simulation_input import SimulationPayload # ────────────────────────────────────────────────────────────────────────────── diff --git a/tests/integration/minimal/test_minimal.py b/tests/integration/minimal/test_minimal.py index 0ae77c2..2a82601 100644 --- a/tests/integration/minimal/test_minimal.py +++ b/tests/integration/minimal/test_minimal.py @@ -18,11 +18,11 @@ import pytest import simpy -from app.metrics.analyzer import ResultsAnalyzer -from app.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.runtime.simulation_runner import SimulationRunner if TYPE_CHECKING: - from app.schemas.full_simulation_input import SimulationPayload + from asyncflow.schemas.full_simulation_input import SimulationPayload # --------------------------------------------------------------------------- # diff --git a/tests/integration/payload/test_payload_invalid.py b/tests/integration/payload/test_payload_invalid.py index 09249c1..fb700b4 100644 --- a/tests/integration/payload/test_payload_invalid.py +++ b/tests/integration/payload/test_payload_invalid.py @@ -6,7 +6,7 @@ import yaml from pydantic import ValidationError -from app.schemas.full_simulation_input import SimulationPayload +from asyncflow.schemas.full_simulation_input import SimulationPayload DATA_DIR = Path(__file__).parent / "data" / "invalid" YMLS = sorted(DATA_DIR.glob("*.yml")) diff --git a/tests/integration/single_server/conftest.py b/tests/integration/single_server/conftest.py index 38f575a..f45633a 100644 --- a/tests/integration/single_server/conftest.py +++ b/tests/integration/single_server/conftest.py @@ -16,7 +16,7 @@ import simpy if TYPE_CHECKING: # heavy imports only when type-checking - from app.runtime.simulation_runner import SimulationRunner + from asyncflow.runtime.simulation_runner import SimulationRunner # --------------------------------------------------------------------------- # @@ -38,7 +38,7 @@ def runner(env: simpy.Environment) -> SimulationRunner: :pymeth:`SimulationRunner.from_yaml`. """ # import deferred to avoid ruff TC001 - from app.runtime.simulation_runner import SimulationRunner # noqa: PLC0415 + from asyncflow.runtime.simulation_runner import SimulationRunner # noqa: PLC0415 yaml_path: Path = ( Path(__file__).parent / "data" / "single_server.yml" diff --git a/tests/integration/single_server/data/single_server.yml b/tests/integration/single_server/data/single_server.yml index 4072f48..c6ec078 100644 --- a/tests/integration/single_server/data/single_server.yml +++ b/tests/integration/single_server/data/single_server.yml @@ -1,5 +1,5 @@ # ─────────────────────────────────────────────────────────────── -# FastSim scenario: generator ➜ client ➜ server ➜ client +# AsyncFlow scenario: generator ➜ client ➜ server ➜ client # ─────────────────────────────────────────────────────────────── # 1. Traffic generator (light load) diff --git a/tests/integration/single_server/test_single_server.py b/tests/integration/single_server/test_single_server.py index 498a7a1..4d55310 100644 --- a/tests/integration/single_server/test_single_server.py +++ b/tests/integration/single_server/test_single_server.py @@ -14,11 +14,11 @@ import pytest -from app.config.constants import LatencyKey, SampledMetricName +from asyncflow.config.constants import LatencyKey, SampledMetricName if TYPE_CHECKING: # only needed for type-checking - from app.metrics.analyzer import ResultsAnalyzer - from app.runtime.simulation_runner import SimulationRunner + from asyncflow.metrics.analyzer import ResultsAnalyzer + from asyncflow.runtime.simulation_runner import SimulationRunner # --------------------------------------------------------------------------- # diff --git a/tests/unit/metrics/test_analyzer.py b/tests/unit/metrics/test_analyzer.py index 4aa33b9..eaae45d 100644 --- a/tests/unit/metrics/test_analyzer.py +++ b/tests/unit/metrics/test_analyzer.py @@ -7,14 +7,14 @@ import pytest from matplotlib.figure import Figure -from app.config.constants import LatencyKey -from app.metrics.analyzer import ResultsAnalyzer +from asyncflow.config.constants import LatencyKey +from asyncflow.metrics.analyzer import ResultsAnalyzer if TYPE_CHECKING: - from app.runtime.actors.client import ClientRuntime - from app.runtime.actors.edge import EdgeRuntime - from app.runtime.actors.server import ServerRuntime - from app.schemas.simulation_settings_input import SimulationSettings + from asyncflow.runtime.actors.client import ClientRuntime + from asyncflow.runtime.actors.edge import EdgeRuntime + from asyncflow.runtime.actors.server import ServerRuntime + from asyncflow.schemas.simulation_settings_input import SimulationSettings # ---------------------------------------------------------------------- # diff --git a/tests/unit/pybuilder/test_input_builder.py b/tests/unit/pybuilder/test_input_builder.py index 1bdddf8..3ee710c 100644 --- a/tests/unit/pybuilder/test_input_builder.py +++ b/tests/unit/pybuilder/test_input_builder.py @@ -13,12 +13,12 @@ import pytest -from app.pybuilder.input_builder import AsyncFlow -from app.schemas.full_simulation_input import SimulationPayload -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.endpoint import Endpoint -from app.schemas.system_topology.full_system_topology import Client, Edge, Server +from asyncflow.pybuilder.input_builder import AsyncFlow +from asyncflow.schemas.full_simulation_input import SimulationPayload +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.endpoint import Endpoint +from asyncflow.schemas.system_topology.full_system_topology import Client, Edge, Server # --------------------------------------------------------------------------- # diff --git a/tests/unit/resources/test_registry.py b/tests/unit/resources/test_registry.py index 6aef76a..34154db 100644 --- a/tests/unit/resources/test_registry.py +++ b/tests/unit/resources/test_registry.py @@ -5,10 +5,10 @@ import pytest import simpy -from app.config.constants import ServerResourceName -from app.resources.registry import ResourcesRuntime -from app.schemas.system_topology.endpoint import Endpoint -from app.schemas.system_topology.full_system_topology import ( +from asyncflow.config.constants import ServerResourceName +from asyncflow.resources.registry import ResourcesRuntime +from asyncflow.schemas.system_topology.endpoint import Endpoint +from asyncflow.schemas.system_topology.full_system_topology import ( Client, Server, ServerResources, diff --git a/tests/unit/resources/test_server_containers.py b/tests/unit/resources/test_server_containers.py index c36f927..3772528 100644 --- a/tests/unit/resources/test_server_containers.py +++ b/tests/unit/resources/test_server_containers.py @@ -2,9 +2,9 @@ import simpy -from app.config.constants import ServerResourceName -from app.resources.server_containers import build_containers -from app.schemas.system_topology.full_system_topology import ServerResources +from asyncflow.config.constants import ServerResourceName +from asyncflow.resources.server_containers import build_containers +from asyncflow.schemas.system_topology.full_system_topology import ServerResources def test_containers_start_full() -> None: diff --git a/tests/unit/runtime/actors/test_client.py b/tests/unit/runtime/actors/test_client.py index 7ee194e..9188d64 100644 --- a/tests/unit/runtime/actors/test_client.py +++ b/tests/unit/runtime/actors/test_client.py @@ -4,10 +4,10 @@ import simpy -from app.config.constants import SystemEdges, SystemNodes -from app.runtime.actors.client import ClientRuntime -from app.runtime.rqs_state import RequestState -from app.schemas.system_topology.full_system_topology import ( +from asyncflow.config.constants import SystemEdges, SystemNodes +from asyncflow.runtime.actors.client import ClientRuntime +from asyncflow.runtime.rqs_state import RequestState +from asyncflow.schemas.system_topology.full_system_topology import ( Client, ) diff --git a/tests/unit/runtime/actors/test_edge.py b/tests/unit/runtime/actors/test_edge.py index 644b078..e180bec 100644 --- a/tests/unit/runtime/actors/test_edge.py +++ b/tests/unit/runtime/actors/test_edge.py @@ -11,16 +11,16 @@ import simpy -from app.config.constants import SampledMetricName, SystemEdges, SystemNodes -from app.runtime.actors.edge import EdgeRuntime -from app.runtime.rqs_state import RequestState -from app.schemas.random_variables_config import RVConfig -from app.schemas.system_topology.full_system_topology import Edge +from asyncflow.config.constants import SampledMetricName, SystemEdges, SystemNodes +from asyncflow.runtime.actors.edge import EdgeRuntime +from asyncflow.runtime.rqs_state import RequestState +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.system_topology.full_system_topology import Edge if TYPE_CHECKING: import numpy as np - from app.schemas.simulation_settings_input import SimulationSettings + from asyncflow.schemas.simulation_settings_input import SimulationSettings # --------------------------------------------------------------------------- # diff --git a/tests/unit/runtime/actors/test_load_balancer.py b/tests/unit/runtime/actors/test_load_balancer.py index 35e622a..41902e0 100644 --- a/tests/unit/runtime/actors/test_load_balancer.py +++ b/tests/unit/runtime/actors/test_load_balancer.py @@ -7,12 +7,12 @@ import pytest import simpy -from app.config.constants import LbAlgorithmsName, SystemNodes -from app.runtime.actors.load_balancer import LoadBalancerRuntime -from app.schemas.system_topology.full_system_topology import LoadBalancer +from asyncflow.config.constants import LbAlgorithmsName, SystemNodes +from asyncflow.runtime.actors.load_balancer import LoadBalancerRuntime +from asyncflow.schemas.system_topology.full_system_topology import LoadBalancer if TYPE_CHECKING: - from app.runtime.actors.edge import EdgeRuntime + from asyncflow.runtime.actors.edge import EdgeRuntime diff --git a/tests/unit/runtime/actors/test_rqs_generator.py b/tests/unit/runtime/actors/test_rqs_generator.py index bc76f4d..7130306 100644 --- a/tests/unit/runtime/actors/test_rqs_generator.py +++ b/tests/unit/runtime/actors/test_rqs_generator.py @@ -7,18 +7,18 @@ import numpy as np import simpy -from app.config.constants import Distribution -from app.runtime.actors.rqs_generator import RqsGeneratorRuntime +from asyncflow.config.constants import Distribution +from asyncflow.runtime.actors.rqs_generator import RqsGeneratorRuntime if TYPE_CHECKING: import pytest from numpy.random import Generator - from app.runtime.actors.edge import EdgeRuntime - from app.runtime.rqs_state import RequestState - from app.schemas.rqs_generator_input import RqsGeneratorInput - from app.schemas.simulation_settings_input import SimulationSettings + from asyncflow.runtime.actors.edge import EdgeRuntime + from asyncflow.runtime.rqs_state import RequestState + from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput + from asyncflow.schemas.simulation_settings_input import SimulationSettings import importlib @@ -63,7 +63,7 @@ def _make_runtime( # --------------------------------------------------------------------------- # -RGR_MODULE = importlib.import_module("app.runtime.actors.rqs_generator") +RGR_MODULE = importlib.import_module("asyncflow.runtime.actors.rqs_generator") def test_dispatcher_selects_poisson_poisson( monkeypatch: pytest.MonkeyPatch, diff --git a/tests/unit/runtime/actors/test_server.py b/tests/unit/runtime/actors/test_server.py index 9e7edb1..7085e12 100644 --- a/tests/unit/runtime/actors/test_server.py +++ b/tests/unit/runtime/actors/test_server.py @@ -22,19 +22,22 @@ import simpy from numpy.random import default_rng -from app.config.constants import ( +from asyncflow.config.constants import ( EndpointStepCPU, EndpointStepIO, EndpointStepRAM, SampledMetricName, StepOperation, ) -from app.resources.server_containers import build_containers -from app.runtime.actors.server import ServerRuntime -from app.runtime.rqs_state import RequestState -from app.schemas.simulation_settings_input import SimulationSettings -from app.schemas.system_topology.endpoint import Endpoint, Step -from app.schemas.system_topology.full_system_topology import Server, ServerResources +from asyncflow.resources.server_containers import build_containers +from asyncflow.runtime.actors.server import ServerRuntime +from asyncflow.runtime.rqs_state import RequestState +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.endpoint import Endpoint, Step +from asyncflow.schemas.system_topology.full_system_topology import ( + Server, + ServerResources, +) if TYPE_CHECKING: diff --git a/tests/unit/runtime/test_rqs_state.py b/tests/unit/runtime/test_rqs_state.py index d07caa4..eaf752b 100644 --- a/tests/unit/runtime/test_rqs_state.py +++ b/tests/unit/runtime/test_rqs_state.py @@ -1,8 +1,8 @@ """Unit-tests for :class:`RequestState` and :class:`Hop`.""" from __future__ import annotations -from app.config.constants import SystemEdges, SystemNodes -from app.runtime.rqs_state import Hop, RequestState +from asyncflow.config.constants import SystemEdges, SystemNodes +from asyncflow.runtime.rqs_state import Hop, RequestState # --------------------------------------------------------------------------- # # Helpers # diff --git a/tests/unit/runtime/test_simulation_runner.py b/tests/unit/runtime/test_simulation_runner.py index d785e3d..c0f6b2e 100644 --- a/tests/unit/runtime/test_simulation_runner.py +++ b/tests/unit/runtime/test_simulation_runner.py @@ -15,15 +15,15 @@ import simpy import yaml -from app.metrics.analyzer import ResultsAnalyzer -from app.runtime.simulation_runner import SimulationRunner +from asyncflow.metrics.analyzer import ResultsAnalyzer +from asyncflow.runtime.simulation_runner import SimulationRunner if TYPE_CHECKING: from pathlib import Path - from app.runtime.actors.client import ClientRuntime - from app.runtime.actors.rqs_generator import RqsGeneratorRuntime - from app.schemas.full_simulation_input import SimulationPayload + from asyncflow.runtime.actors.client import ClientRuntime + from asyncflow.runtime.actors.rqs_generator import RqsGeneratorRuntime + from asyncflow.schemas.full_simulation_input import SimulationPayload # --------------------------------------------------------------------------- # diff --git a/tests/unit/samplers/test_gaussian_poisson.py b/tests/unit/samplers/test_gaussian_poisson.py index b2b3c2e..4b3ed80 100644 --- a/tests/unit/samplers/test_gaussian_poisson.py +++ b/tests/unit/samplers/test_gaussian_poisson.py @@ -9,16 +9,16 @@ import pytest from numpy.random import Generator, default_rng -from app.config.constants import TimeDefaults -from app.samplers.gaussian_poisson import ( +from asyncflow.config.constants import TimeDefaults +from asyncflow.samplers.gaussian_poisson import ( gaussian_poisson_sampling, ) -from app.schemas.random_variables_config import RVConfig -from app.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput if TYPE_CHECKING: - from app.schemas.simulation_settings_input import SimulationSettings + from asyncflow.schemas.simulation_settings_input import SimulationSettings # --------------------------------------------------------------------------- # FIXTURES @@ -99,7 +99,7 @@ def fake_truncated_gaussian( return 0.0 # force U = 0 monkeypatch.setattr( - "app.samplers.gaussian_poisson.truncated_gaussian_generator", + "asyncflow.samplers.gaussian_poisson.truncated_gaussian_generator", fake_truncated_gaussian, ) diff --git a/tests/unit/samplers/test_poisson_poisson.py b/tests/unit/samplers/test_poisson_poisson.py index 00242fa..fde7d04 100644 --- a/tests/unit/samplers/test_poisson_poisson.py +++ b/tests/unit/samplers/test_poisson_poisson.py @@ -10,14 +10,14 @@ import pytest from numpy.random import Generator, default_rng -from app.config.constants import TimeDefaults -from app.samplers.poisson_poisson import poisson_poisson_sampling -from app.schemas.random_variables_config import RVConfig -from app.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.config.constants import TimeDefaults +from asyncflow.samplers.poisson_poisson import poisson_poisson_sampling +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput if TYPE_CHECKING: - from app.schemas.simulation_settings_input import SimulationSettings + from asyncflow.schemas.simulation_settings_input import SimulationSettings @pytest.fixture diff --git a/tests/unit/samplers/test_sampler_helper.py b/tests/unit/samplers/test_sampler_helper.py index ff44c3b..f6b4241 100644 --- a/tests/unit/samplers/test_sampler_helper.py +++ b/tests/unit/samplers/test_sampler_helper.py @@ -8,8 +8,8 @@ import numpy as np import pytest -from app.config.constants import Distribution -from app.samplers.common_helpers import ( +from asyncflow.config.constants import Distribution +from asyncflow.samplers.common_helpers import ( exponential_variable_generator, general_sampler, lognormal_variable_generator, @@ -17,7 +17,7 @@ truncated_gaussian_generator, uniform_variable_generator, ) -from app.schemas.random_variables_config import RVConfig +from asyncflow.schemas.random_variables_config import RVConfig # --------------------------------------------------------------------------- # # Dummy RNG # diff --git a/tests/unit/schemas/test_endpoint_input.py b/tests/unit/schemas/test_endpoint_input.py index 76d22a2..3813dd6 100644 --- a/tests/unit/schemas/test_endpoint_input.py +++ b/tests/unit/schemas/test_endpoint_input.py @@ -5,13 +5,13 @@ import pytest from pydantic import ValidationError -from app.config.constants import ( +from asyncflow.config.constants import ( EndpointStepCPU, EndpointStepIO, EndpointStepRAM, StepOperation, ) -from app.schemas.system_topology.endpoint import Endpoint, Step +from asyncflow.schemas.system_topology.endpoint import Endpoint, Step # --------------------------------------------------------------------------- # diff --git a/tests/unit/schemas/test_full_topology_input.py b/tests/unit/schemas/test_full_topology_input.py index f6bf1f9..4e27562 100644 --- a/tests/unit/schemas/test_full_topology_input.py +++ b/tests/unit/schemas/test_full_topology_input.py @@ -5,7 +5,7 @@ import pytest from pydantic import ValidationError -from app.config.constants import ( +from asyncflow.config.constants import ( EndpointStepCPU, NetworkParameters, ServerResourcesDefaults, @@ -13,9 +13,9 @@ SystemEdges, SystemNodes, ) -from app.schemas.random_variables_config import RVConfig -from app.schemas.system_topology.endpoint import Endpoint, Step -from app.schemas.system_topology.full_system_topology import ( +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.system_topology.endpoint import Endpoint, Step +from asyncflow.schemas.system_topology.full_system_topology import ( Client, Edge, LoadBalancer, diff --git a/tests/unit/schemas/test_requests_generator_input.py b/tests/unit/schemas/test_requests_generator_input.py index f676f4c..66ad037 100644 --- a/tests/unit/schemas/test_requests_generator_input.py +++ b/tests/unit/schemas/test_requests_generator_input.py @@ -4,10 +4,10 @@ import pytest from pydantic import ValidationError -from app.config.constants import Distribution, TimeDefaults -from app.schemas.random_variables_config import RVConfig -from app.schemas.rqs_generator_input import RqsGeneratorInput -from app.schemas.simulation_settings_input import SimulationSettings +from asyncflow.config.constants import Distribution, TimeDefaults +from asyncflow.schemas.random_variables_config import RVConfig +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings # --------------------------------------------------------------------------- # # RVCONFIG # From 15416e39feb7d9cc47a4aac9654b50ebd73e4fac Mon Sep 17 00:00:00 2001 From: GioeleB00 Date: Wed, 13 Aug 2025 18:05:59 +0200 Subject: [PATCH 2/2] improved docs --- docs/dev_workflow_guide.md | 177 ++++++---- docs/fastsim-docs/simulation_input.md | 348 +++++++++---------- docs/pybuilder.md | 458 ++++++++++++++++++++++++++ 3 files changed, 743 insertions(+), 240 deletions(-) create mode 100644 docs/pybuilder.md diff --git a/docs/dev_workflow_guide.md b/docs/dev_workflow_guide.md index 4380ee4..8c1974c 100644 --- a/docs/dev_workflow_guide.md +++ b/docs/dev_workflow_guide.md @@ -2,18 +2,10 @@ This document outlines the standardized development workflow, repository architecture, and branching strategy for the backend of the AsyncFlow project. Adhering to these guidelines ensures consistency, maintainability, and a scalable development process. -## 1. Technology Stack -The project is built upon the following core technologies: +## 1. Repository Layout -- **Backend**: FastAPI -- **Backend Package Manager**: Poetry -- **Frontend**: React + JavaScript -- **Database**: PostgreSQL -- **Caching**: Redis -- **Containerization**: Docker - -### 2.1 Backend Service (`AsyncFlow-backend`) +### 1.1 Backend Service (`AsyncFlow-backend`) The repository hosts the entire FastAPI backend for AsyncFlow. Its job is to expose the REST API, run the discrete-event simulation, talk to the database, and provide metrics. @@ -37,15 +29,18 @@ AsyncFlow-backend/ │ ├── runtime/ # simulation core │ │ ├── rqs_state.py # RequestState & Hop │ │ ├── simulation_runner.py # logic to initialize the whole simulation - | └── actors/ # SimPy “actors”: Edge, Server, Client, RqsGenerator - ├── pybuilder/ # Pythonic way to build the simulation payload +│ │ └── actors/ # SimPy “actors”: Edge, Server, Client, RqsGenerator +│ ├── pybuilder/ # Pythonic way to build the simulation payload │ ├── samplers/ # stochastic samplers (Gaussian-Poisson, etc.) │ ├── schemas/ # Pydantic input/output models ├── poetry.lock ├── pyproject.toml └── README.md ``` -### **What each top-level directory in `src/app` does** + +> Note: If your package name under `src/` is `asyncflow/` (instead of `app/`), the structure is identical—only the package folder name changes. + +### What each top-level directory in `src/app` does | Directory | Purpose | | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | @@ -56,31 +51,32 @@ AsyncFlow-backend/ | | - **`rqs_state.py`** — Defines `RequestState` and `Hop` for tracking request lifecycle. | | | - **`simulation_runner.py`** — Entry point for initialising and running simulations. | | | - **`actors/`** — SimPy actor classes representing system components (`RqsGenerator`, `Client`, `Server`, `Edge`) and their behaviour. | +| **`pybuilder/`** | Pythonic builder to programmatically construct validated simulation payloads (alternative to YAML). | | **`samplers/`** | Random-variable samplers for stochastic simulation. Supports Poisson, Normal, and mixed distributions for modelling inter-arrival times and service steps. | | **`schemas/`** | Pydantic models for input/output validation and serialisation. Includes scenario definitions, topology graphs, simulation settings, and results payloads. | --- -### **Other Top-Level Directories** +### Other Top-Level Directories | Directory | Purpose | | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | | **`example/`** | Ready-to-run simulation scenarios and example configurations. Includes `data/` with YAML definitions and scripts to demonstrate engine usage. | | **`scripts/`** | Utility shell scripts for development workflow, linting, formatting, and local startup (`quality-check.sh`, etc.). | -| **`docs/`** | Project documentation. Contains both high-level vision documents and low-level technical references (`AsyncFlow-documentation/`). | +| **`docs/`** | Project documentation. Contains both high-level vision documents and low-level technical references (`AsyncFlow-documentation/`). | | **`tests/`** | Automated test suite, split into **unit** and **integration** tests to verify correctness of both individual components and end-to-end scenarios. | --- -## 3. Branching Strategy: Git Flow +## 2. Branching Strategy: Git Flow -To manage code development and releases in a structured manner, we use the **Git Flow** branching model. +To manage code development and releases in a structured manner, we use the **Git Flow** branching model—with an additional **refactor** branch type for non-feature refactoring work. ### Git Flow Workflow Diagram ```mermaid --- -title: Git Flow +title: Git Flow (with refactor/*) --- gitGraph @@ -89,6 +85,7 @@ gitGraph checkout develop commit id: "Setup Project" + %% feature branch branch feature/user-authentication checkout feature/user-authentication commit id: "feat: Add login form" @@ -96,6 +93,15 @@ gitGraph checkout develop merge feature/user-authentication + %% refactor branch (no new features, code cleanup/improvements) + branch refactor/performance-cleanup + checkout refactor/performance-cleanup + commit id: "refactor: simplify hot path" + commit id: "refactor: remove dead code" + checkout develop + merge refactor/performance-cleanup + + %% release branch branch release/v1.0.0 checkout release/v1.0.0 commit id: "fix: Pre-release bug fixes" tag: "v1.0.0" @@ -104,6 +110,7 @@ gitGraph checkout develop merge release/v1.0.0 + %% hotfix branch checkout main branch hotfix/critical-login-bug checkout hotfix/critical-login-bug @@ -122,70 +129,128 @@ This workflow is built upon two long-lived branches and several temporary, suppo #### Main Branches -1. **`main`** - * **Purpose**: This branch contains **production-ready, stable code**. Every commit on `main` represents a new, official release. - * **Rules**: You should **never** commit directly to `main`. It only receives merges from `release/*` and `hotfix/*` branches. Each merge should be tagged with a version number (e.g., `v1.0.0`). +1. **`main`** + **Purpose**: Production-ready, stable code. Every commit on `main` represents an official release. + **Rules**: Never commit directly to `main`. It only receives merges from `release/*` and `hotfix/*`. Each merge should be **tagged** (e.g., `v1.0.0`). -2. **`develop`** - * **Purpose**: This is the main **integration branch** for ongoing development. It contains all completed and tested features that are planned for the next release. - * **Rules**: It's the base for creating new `feature/*` branches. It reflects the most up-to-date state of development. +1. **`develop`** + **Purpose**: The main integration branch for ongoing development. It contains all completed and tested changes planned for the next release. + **Rules**: Base for `feature/*` and `refactor/*` branches. Reflects the most up-to-date development state. #### Supporting Branches -3. **`feature/*`** (e.g., `feature/user-authentication`) - * **Purpose**: To develop a new, specific feature in isolation. - * **Lifecycle**: - 1. Branched off of **`develop`**. - 2. Once development is complete, a **Pull Request (PR)** is opened to merge the changes back into **`develop`**. - 3. After the merge, the `feature/*` branch can be deleted. +3. **`feature/*`** (e.g., `feature/user-authentication`) + **Purpose**: Develop a new, specific feature in isolation. + **Lifecycle**: + + 1. Branched off **`develop`**. + 1. When complete, open a **Pull Request (PR)** back into **`develop`**. + 3. Delete the branch after merge. + +3. **`refactor/*`** (e.g., `refactor/performance-cleanup`) **← new** + **Purpose**: Perform **non-functional code changes** (no new features), such as internal restructurings, performance optimisations, reducing technical debt, renaming, file moves, or dependency hygiene. + **Rules**: -4. **`release/*`** (e.g., `release/v1.2.0`) - * **Purpose**: To prepare for a new production release. This branch is used for final bug fixes, documentation updates, and last-minute testing. It freezes the feature set for the release. - * **Lifecycle**: - 1. Branched off of **`develop`** when it's decided that the next version is feature-complete. - 2. When ready, it is merged into **`main`** (and tagged) and also back into **`develop`** to ensure any fixes made during the release phase are not lost. - 3. After merging, the `release/*` branch can be deleted. + * Must **not** introduce user-visible features or breaking API/DB changes. + * Prefer commit prefix `refactor:`; avoid `feat:`. + * Keep changes scoped and well-described to simplify review. + **Lifecycle**: -5. **`hotfix/*`** (e.g., `hotfix/critical-login-bug`) - * **Purpose**: To quickly patch a critical bug discovered in the production version (`main`). - * **Lifecycle**: - 1. Branched off of **`main`** (from the specific version tag). - 2. Once the fix is ready, it is merged into **`main`** (and a new patch version tag is created, e.g., `v1.0.1`). - 3. It is also merged into **`develop`** to ensure the fix is included in future releases. - 4. After merging, the `hotfix/*` branch can be deleted. + 1. Branched off **`develop`**. + 1. Open a **PR** back into **`develop`** (same review gates as features). + 3. Delete the branch after merge. -## 4. Continuous Integration / Continuous Delivery (CI/CD) Pipeline +5. **`release/*`** (e.g., `release/v1.1.0`) + **Purpose**: Prepare a production release—final bug fixes, docs, and last-minute tests. The feature set is frozen here. + **Lifecycle**: + + 1. Branched off **`develop`** when feature-complete. + 1. Merge into **`main`** (tag version) and back into **`develop`**. + 3. Delete after merges. + +6. **`hotfix/*`** (e.g., `hotfix/critical-login-bug`) + **Purpose**: Quickly patch a critical bug in production. + **Lifecycle**: + + 1. Branched off **`main`** (from a specific tag). + 1. Merge into **`main`** (tag a patch version, e.g., `v1.0.1`) **and** into **`develop`**. + 3. Delete after merges. + +**When to choose which branch?** + +* **New behavior / endpoints / DB migrations** → `feature/*` +* **Internal code improvements only** → `refactor/*` +* **Release prep** → `release/*` +* **Production emergency** → `hotfix/*` + +--- -A robust CI/CD pipeline guarantees that every change pushed to the repository is automatically validated, packaged, and—when appropriate—promoted to the next environment. -Our pipeline is built with **GitHub Actions** and follows a layered approach that mirrors the Git Flow branching model. +## 3. Continuous Integration / Continuous Delivery (CI/CD) Pipeline -We will start to describe the CI part related to push and PR in the develop branch of the backend service. +A robust CI/CD pipeline guarantees that every change is automatically validated, packaged, and—when appropriate—promoted to the next environment. Our pipeline is built with **GitHub Actions** and mirrors the branching model. -### 4.1 CI for project-backend on `develop` +We start with the CI part related to pushes and PRs in the backend service. -#### 4.1.1 Goals +### 3.1 CI for project-backend on `develop` -* **Fast feedback** – linting, type-checking, and unit tests finish in under a minute for every Pull Request. +#### 3.1.1 Goals + +* **Fast feedback** – linting, type-checking, and unit tests finish quickly for every Pull Request. * **Confidence in integration** – migrations, integration tests, and Docker smoke-tests run on every push to `develop`. -* **Deployment safety** – only artifacts produced from a green pipeline can be released or deployed. -* **Parity with production** – the same multi-stage Dockerfile is built and probed in CI, preventing “works-on-my-machine” surprises. +* **Deployment safety** – only artifacts from a green pipeline can be released/deployed. +* **Parity with production** – the same multi-stage Dockerfile is built and probed in CI. -### 4.1.2 Pipeline Layers +#### 3.1.1 Pipeline Layers * **Quick Suite (PR to `develop`)** *Runs in seconds; no external services or containers.* - * Black, isort, Flake8 + * Black, isort, Flake8 (or Ruff if adopted) * mypy static type-checking * Unit tests only (`pytest -m "not integration"`) * **Full Suite (push to `develop`)** *Runs in a few minutes; includes real services and Docker.* - + * Full test suite, including `@pytest.mark.integration` tests - + * Database migrations (PostgreSQL) against a disposable instance + * Redis available for tests if required + * Build multi-stage Docker image and run a quick smoke test + +### 3.1 CI for `feature/*` and `refactor/*` + +* **On PR to `develop`**: run the **Quick Suite** (lint, type-checking, unit tests). +* **Optional (recommended for large changes)**: allow a manual or scheduled **Full Suite** run for the branch to catch integration issues early. +* **On merge to `develop`**: the **Full Suite** runs (as described above). + +> `refactor/*` branches should maintain **zero behavior change**. If a refactor has the potential to alter behavior (e.g., performance-sensitive code), add targeted tests and consider a manual Full Suite run before merge. + +### 3.3 CI for `release/*` + +* Always run the **Full Suite**. +* Build and publish versioned artifacts/images to the registry with the release tag. +* Prepare release notes and changelog generation. +### 3.3 CI for `hotfix/*` +* Run the **Full Suite** against the hotfix branch. +* Tag the patch release on merge to `main` and propagate the merge back to `develop`. +--- + +## 4. Quality Gates & Conventions + +* **Static Analysis**: mypy (no new type errors). +* **Style**: Black/Flake8/isort or Ruff; no lint violations. +* **Tests**: + + * Unit tests for new logic or refactor touch points. + * Integration tests for cross-layer behavior. +* **Commits**: Conventional commits (`feat:`, `fix:`, `refactor:`, `docs:`, `test:`, `chore:` …). +* **Code Review**: PRs must be reviewed and approved; refactors must include rationale in the PR description (what changed, why safe). +* **Documentation**: Update `README`, `docs/`, and API docs when applicable. + +--- +By following this workflow—now with the **refactor** branch type—you keep feature development cleanly separated from codebase improvements, reduce merge friction, and maintain a predictable, high-quality delivery pipeline. diff --git a/docs/fastsim-docs/simulation_input.md b/docs/fastsim-docs/simulation_input.md index f75b570..d5d860c 100644 --- a/docs/fastsim-docs/simulation_input.md +++ b/docs/fastsim-docs/simulation_input.md @@ -1,8 +1,8 @@ # AsyncFlow — Simulation Input Schema (v2) -This document describes the **complete input contract** used by AsyncFlow to run a simulation, the **design rationale** behind it, and the **guarantees** provided by the validation layer. It closes with an **end-to-end example** (YAML) you can drop into the project and run as-is. +This document describes the **complete input contract** used by AsyncFlow to run a simulation, the **design rationale** behind it, and the **validation guarantees** enforced by the Pydantic layer. At the end you’ll find an **end-to-end YAML example** you can run as-is. -The entry point is the Pydantic model: +The entry point is: ```python class SimulationPayload(BaseModel): @@ -14,40 +14,38 @@ class SimulationPayload(BaseModel): Everything the engine needs is captured by these three components: -* **`rqs_input`** — the workload model (how traffic is generated). -* **`topology_graph`** — the system under test, described as a directed graph (nodes & edges). +* **`rqs_input`** — workload model (how traffic is generated). +* **`topology_graph`** — system under test as a directed graph (nodes & edges). * **`sim_settings`** — global simulation controls and which metrics to collect. --- -## Why this shape? (Rationale) +## Rationale -### 1) **Separation of concerns** +### 1) Separation of concerns -* **Workload** (traffic intensity & arrival process) is independent from the **topology** (architecture under test) and from **simulation control** (duration & metrics). -* This lets you reuse the same topology with different workloads, or vice versa, without touching unrelated parts. +* **Workload** (traffic intensity & arrival process) is independent from **topology** (architecture) and **simulation control** (duration & metrics). +* You can reuse the same topology with different workloads (or vice versa) without touching unrelated parts. -### 2) **Validation-first, fail-fast** +### 2) Validation-first, fail-fast -* All inputs are **typed** and **validated** with Pydantic before the engine starts. -* Validation catches type errors, inconsistent references, and illegal combinations (e.g., an I/O step with a CPU metric). -* When a payload parses successfully, the engine can run without defensive checks scattered in runtime code. +* Inputs are **typed** and **validated** before the engine starts. +* Validation catches type errors, dangling references, illegal step definitions, and inconsistent graphs. +* Once a payload parses, the runtime code can remain lean (no defensive checks scattered everywhere). -### 3) **Small-to-large composition** +### 3) Small-to-large composition * The smallest unit is a **`Step`** (one resource-bound operation). -* Steps compose into an **`Endpoint`** (an ordered workflow). +* Steps compose into an **`Endpoint`** (ordered workflow). * Endpoints live on a **`Server`** node with finite resources. * Nodes and **Edges** form a **`TopologyGraph`**. -* A disciplined set of **Enums** (no magic strings) ensure a closed vocabulary. +* A closed set of **Enums** eliminates magic strings. --- -## 1. Workload: `RqsGeneratorInput` +## 1) Workload: `RqsGeneratorInput` -### Purpose - -Defines the traffic generator that produces request arrivals. +**Purpose:** Defines the stochastic traffic generator that produces request arrivals. ```python class RqsGeneratorInput(BaseModel): @@ -55,7 +53,11 @@ class RqsGeneratorInput(BaseModel): type: SystemNodes = SystemNodes.GENERATOR avg_active_users: RVConfig avg_request_per_minute_per_user: RVConfig - user_sampling_window: int = Field( ... ) # seconds + user_sampling_window: int = Field( + default=TimeDefaults.USER_SAMPLING_WINDOW, + ge=TimeDefaults.MIN_USER_SAMPLING_WINDOW, + le=TimeDefaults.MAX_USER_SAMPLING_WINDOW, + ) ``` ### Random variables (`RVConfig`) @@ -67,29 +69,24 @@ class RVConfig(BaseModel): variance: float | None = None ``` -#### Validation & guarantees - -* **`mean` is numeric** - `@field_validator("mean", mode="before")` coerces to `float` and rejects non-numeric values. -* **Auto variance** for Normal/LogNormal - `@model_validator(mode="after")` sets `variance = mean` if missing and the distribution is `NORMAL` or `LOG_NORMAL`. -* **Distribution constraints** on workload: +**Validators & guarantees** - * `avg_request_per_minute_per_user` **must be Poisson** (engine currently optimised for Poisson arrivals). - * `avg_active_users` **must be Poisson or Normal**. - * Enforced via `@field_validator(..., mode="after")` with clear error messages. +* `mean` is **numeric** and coerced to `float`. (Non-numeric → `ValueError`.) +* If `distribution ∈ {NORMAL, LOG_NORMAL}` and `variance is None`, then `variance := mean`. +* Workload-specific constraints: -#### Why these constraints? + * `avg_request_per_minute_per_user.distribution` **must be** `POISSON`. + * `avg_active_users.distribution` **must be** `POISSON` or `NORMAL`. +* `user_sampling_window` is an **integer in seconds**, bounded to `[1, 120]`. -* They reflect the current joint-sampling logic in the generator: **Poisson–Poisson** and **Normal–Poisson** are implemented and tested. Additional combos can be enabled later without changing the public contract. +**Why these constraints?** +They match the currently implemented samplers (Poisson–Poisson and Normal–Poisson). --- -## 2. System Graph: `TopologyGraph` - -### Purpose +## 2) System Graph: `TopologyGraph` -Defines the architecture under test as a **directed graph**: nodes are components (client, server, optional load balancer), edges are network links with latency models. +**Purpose:** Describes the architecture as a **directed graph**. Nodes are macro-components (client, server, optional load balancer); edges are network links with latency models. ```python class TopologyGraph(BaseModel): @@ -97,13 +94,15 @@ class TopologyGraph(BaseModel): edges: list[Edge] ``` -### Nodes +### 2.1 Nodes ```python class TopologyNodes(BaseModel): servers: list[Server] client: Client load_balancer: LoadBalancer | None = None + + # also: model_config = ConfigDict(extra="forbid") ``` #### `Client` @@ -112,23 +111,23 @@ class TopologyNodes(BaseModel): class Client(BaseModel): id: str type: SystemNodes = SystemNodes.CLIENT + # validator: type must equal SystemNodes.CLIENT ``` -* **Validator**: `type` must equal `SystemNodes.CLIENT`. - #### `ServerResources` ```python class ServerResources(BaseModel): - cpu_cores: PositiveInt = Field(...) - db_connection_pool: PositiveInt | None = Field(...) - ram_mb: PositiveInt = Field(...) + cpu_cores: PositiveInt = Field(ServerResourcesDefaults.CPU_CORES, + ge=ServerResourcesDefaults.MINIMUM_CPU_CORES) + db_connection_pool: PositiveInt | None = Field(ServerResourcesDefaults.DB_CONNECTION_POOL) + ram_mb: PositiveInt = Field(ServerResourcesDefaults.RAM_MB, + ge=ServerResourcesDefaults.MINIMUM_RAM_MB) ``` -* Maps directly to SimPy containers (CPU tokens, RAM capacity, etc.). -* Bounds enforced via `Field(ge=..., ...)`. +Each attribute maps directly to a SimPy primitive (core tokens, RAM container, optional DB pool). -#### `Step` (the atomic unit) +#### `Step` (atomic unit) ```python class Step(BaseModel): @@ -136,20 +135,15 @@ class Step(BaseModel): step_operation: dict[StepOperation, PositiveFloat | PositiveInt] ``` -**Key validator (coherence):** - -```python -@model_validator(mode="after") -def ensure_coherence_type_operation(cls, model: "Step") -> "Step": - # exactly one operation key, and it must match the step kind -``` +**Coherence validator** -* If `kind` is CPU → the only key must be `CPU_TIME`. -* If `kind` is RAM → only `NECESSARY_RAM`. -* If `kind` is I/O → only `IO_WAITING_TIME`. -* Values must be positive (`PositiveFloat/PositiveInt`). +* `step_operation` must contain **exactly one** key. +* Valid pairings: -This guarantees every step is **unambiguous** and **physically meaningful**. + * CPU step → `{ cpu_time: PositiveFloat }` + * RAM step → `{ necessary_ram: PositiveInt | PositiveFloat }` + * I/O step → `{ io_waiting_time: PositiveFloat }` +* Any mismatch (e.g., RAM step with `cpu_time`) → `ValueError`. #### `Endpoint` @@ -159,11 +153,10 @@ class Endpoint(BaseModel): steps: list[Step] @field_validator("endpoint_name", mode="before") - def name_to_lower(cls, v: str) -> str: - return v.lower() + def name_to_lower(cls, v): return v.lower() ``` -* Canonical lowercase naming avoids duplicates differing only by case. +Canonical lowercase names avoid accidental duplicates by case. #### `Server` @@ -173,10 +166,9 @@ class Server(BaseModel): type: SystemNodes = SystemNodes.SERVER server_resources: ServerResources endpoints: list[Endpoint] + # validator: type must equal SystemNodes.SERVER ``` -* **Validator**: `type` must equal `SystemNodes.SERVER`. - #### `LoadBalancer` (optional) ```python @@ -185,165 +177,153 @@ class LoadBalancer(BaseModel): type: SystemNodes = SystemNodes.LOAD_BALANCER algorithms: LbAlgorithmsName = LbAlgorithmsName.ROUND_ROBIN server_covered: set[str] = Field(default_factory=set) + # validator: type must equal SystemNodes.LOAD_BALANCER ``` -### Edges +### 2.2 Edges ```python class Edge(BaseModel): id: str - source: str - target: str + source: str # may be an external entrypoint (e.g., generator id) + target: str # MUST be a declared node id latency: RVConfig - probability: float = Field(1.0, ge=0.0, le=1.0) edge_type: SystemEdges = SystemEdges.NETWORK_CONNECTION - dropout_rate: float = Field(...) + dropout_rate: float = Field(NetworkParameters.DROPOUT_RATE, + ge=NetworkParameters.MIN_DROPOUT_RATE, + le=NetworkParameters.MAX_DROPOUT_RATE) + # validator: source != target + # validator on latency: mean > 0, variance >= 0 if provided ``` -#### Validation & guarantees +> **Note:** The former `probability` field has been **removed**. Fan-out is controlled at the **load balancer** via `algorithms` (e.g., round-robin, least-connections). Non-LB nodes are not allowed to have multiple outgoing edges (see graph-level validators below). + +### 2.3 Graph-level validators + +The `TopologyGraph` class performs several global checks: + +1. **Unique edge IDs** + + * Duplicate edge ids → `ValueError`. + +2. **Referential integrity** + + * Every **`target`** must be a declared node (`client`, any `server`, optional `load_balancer`). + * **External IDs** (e.g., generator id) are **allowed only as sources** and **must never appear as a target** anywhere. -* **Latency sanity** - `@field_validator("latency", mode="after")` ensures `mean > 0` and `variance >= 0` (if provided). Error messages mention the **edge id** for clarity. -* **No self-loops** - `@model_validator(mode="after")` rejects `source == target`. -* **Unique edge IDs** - `TopologyGraph.unique_ids` enforces uniqueness across `edges`. -* **Referential integrity** - `TopologyGraph.edge_refs_valid` ensures: +3. **Load balancer integrity (if present)** - * Every `target` is a declared node ID. - * **External sources** (e.g., the generator id) are allowed, but **may not** appear as a `target` anywhere. -* **Load balancer integrity** (if present) - `TopologyGraph.valid_load_balancer` enforces: + * `server_covered ⊆ declared server ids`. + * There must be **an outgoing edge from the LB to every covered server**; missing links → `ValueError`. - * `server_covered ⊆ {server ids}`. - * For every covered server there exists an **outgoing edge from the LB** to that server. +4. **Fan-out restriction** -These checks make the graph **closed**, **consistent**, and **wirable** without surprises at runtime. + * Among **declared nodes**, **only the load balancer** may have **multiple outgoing edges**. + * Edges originating from non-declared external sources (e.g., generator) are ignored by this check. + * Violations list the offending source ids. --- -## 3. Simulation Control: `SimulationSettings` +## 3) Simulation Control: `SimulationSettings` ```python class SimulationSettings(BaseModel): - total_simulation_time: int = Field(..., ge=TimeDefaults.MIN_SIMULATION_TIME) + total_simulation_time: int = Field( + default=TimeDefaults.SIMULATION_TIME, + ge=TimeDefaults.MIN_SIMULATION_TIME, + ) enabled_sample_metrics: set[SampledMetricName] = Field(default_factory=...) enabled_event_metrics: set[EventMetricName] = Field(default_factory=...) - sample_period_s: float = Field(..., ge=SamplePeriods.MINIMUM_TIME, le=SamplePeriods.MAXIMUM_TIME) + sample_period_s: float = Field( + default=SamplePeriods.STANDARD_TIME, + ge=SamplePeriods.MINIMUM_TIME, + le=SamplePeriods.MAXIMUM_TIME, + ) ``` -### What it controls +**What it controls** -* **Clock** — `total_simulation_time` (seconds). -* **Sampling cadence** — `sample_period_s` for time-series metrics. -* **What to collect** — two sets of enums: +* **Clock** — `total_simulation_time` in seconds (default 3600, min 5). +* **Sampling cadence** — `sample_period_s` in seconds (default 0.01; bounds `[0.001, 0.1]`). +* **Metric selection** — default sets include: - * `enabled_sample_metrics`: time-series KPIs (e.g., ready queue length, RAM in use, edge concurrency). - * `enabled_event_metrics`: per-event KPIs (e.g., request clocks/latency). + * Sampled (time-series): `ready_queue_len`, `event_loop_io_sleep`, `ram_in_use`, `edge_concurrent_connection`. + * Event (per-request): `rqs_clock`. -### Why Enums matter here +--- -Letting users pass strings like `"ram_in_use"` is error-prone. By using **`SampledMetricName`** and **`EventMetricName`** enums, the settings are **validated upfront**, so the runtime collector knows exactly which lists to allocate and fill. No hidden `KeyError`s halfway through a run. +## 4) Enums & Units (Quick Reference) ---- +**Distributions:** `poisson`, `normal`, `log_normal`, `exponential`, `uniform` +**Node types:** `generator`, `server`, `client`, `load_balancer` (fixed by models) +**Edge types:** `network_connection` +**LB algorithms:** `round_robin`, `least_connection` +**Step kinds:** -## What these validations buy you +* CPU: `initial_parsing`, `cpu_bound_operation` +* RAM: `ram` +* I/O: `io_task_spawn`, `io_llm`, `io_wait`, `io_db`, `io_cache` + **Step operation keys:** `cpu_time`, `io_waiting_time`, `necessary_ram` + **Sampled metrics:** `ready_queue_len`, `event_loop_io_sleep`, `ram_in_use`, `edge_concurrent_connection` + **Event metrics:** `rqs_clock` (and `llm_cost` reserved) -* **Type safety** (no accidental strings where enums are expected). -* **Physical realism** (no zero/negative times or RAM). -* **Graph integrity** (no dangling edges or self-loops). -* **Operational clarity** (every step has exactly one effect). -* **Better errors** (validators point to the exact field/entity at fault). +**Units & conventions** -Together, they make the model **predictable** for the simulation engine and **pleasant** to debug. +* **Time:** seconds (`cpu_time`, `io_waiting_time`, latencies, `total_simulation_time`, `sample_period_s`, `user_sampling_window`) +* **RAM:** megabytes (`ram_mb`, `necessary_ram`) +* **Rates:** requests/minute (`avg_request_per_minute_per_user.mean`) +* **Probabilities:** `[0.0, 1.0]` (`dropout_rate`) +* **IDs:** strings; must be **unique** within their category --- -## End-to-End Example (YAML) - -This is a complete, valid payload you can load with `SimulationRunner.from_yaml(...)`. - -```yaml -# ─────────────────────────────────────────────────────────────── -# AsyncFlow scenario: generator → client → server → client -# ─────────────────────────────────────────────────────────────── - -rqs_input: - id: rqs-1 - # avg_active_users can be POISSON or NORMAL; mean is required. - avg_active_users: - mean: 100 - distribution: poisson - # must be POISSON (engine constraint) - avg_request_per_minute_per_user: - mean: 20 - distribution: poisson - user_sampling_window: 60 # seconds - -topology_graph: - nodes: - client: - id: client-1 - type: client - servers: - - id: srv-1 - type: server - server_resources: - cpu_cores: 1 - ram_mb: 2048 - # db_connection_pool: 50 # optional - endpoints: - - endpoint_name: /predict - steps: - - kind: ram - step_operation: { necessary_ram: 100 } - - kind: initial_parsing # CPU step (enum in your code) - step_operation: { cpu_time: 0.001 } - - kind: io_wait # I/O step - step_operation: { io_waiting_time: 0.100 } - - edges: - - id: gen-to-client - source: rqs-1 # external source OK - target: client-1 - latency: { mean: 0.003, distribution: exponential } - - - id: client-to-server - source: client-1 - target: srv-1 - latency: { mean: 0.003, distribution: exponential } - - - id: server-to-client - source: srv-1 - target: client-1 - latency: { mean: 0.003, distribution: exponential } - -sim_settings: - total_simulation_time: 500 - sample_period_s: 0.05 - enabled_sample_metrics: - - ready_queue_len - - event_loop_io_sleep - - ram_in_use - - edge_concurrent_connection - enabled_event_metrics: - - rqs_clock -``` +## 5) Validation Checklist (What is guaranteed if the payload parses) - Notes: -> - * `kind` uses the **EndpointStep** enums you’ve defined (e.g., `ram`, `initial_parsing`, `io_wait`). - * The coherence validator ensures that each `kind` uses the correct `step_operation` key and **exactly one** entry. - * The **edge** constraints guarantee a clean, connected, and sensible graph. +### Workload (`RqsGeneratorInput`, `RVConfig`) ---- +* `mean` is numeric (`int|float`) and coerced to `float`. +* If `distribution ∈ {NORMAL, LOG_NORMAL}` and `variance is None` → `variance := mean`. +* `avg_request_per_minute_per_user.distribution == POISSON`. +* `avg_active_users.distribution ∈ {POISSON, NORMAL}`. +* `user_sampling_window ∈ [1, 120]` seconds. +* `type` fields default to the correct enum (`generator`) and are strongly typed. + +### Steps & Endpoints + +* `endpoint_name` is normalized to lowercase. +* Each `Step` has **exactly one** `step_operation` key. +* `Step.kind` and `step_operation` key **must match**: + + * CPU ↔ `cpu_time` + * RAM ↔ `necessary_ram` + * I/O ↔ `io_waiting_time` +* All step operation values are strictly **positive**. + +### Nodes + +* `Client.type == client`, `Server.type == server`, `LoadBalancer.type == load_balancer` (enforced). +* `ServerResources` obey lower bounds: `cpu_cores ≥ 1`, `ram_mb ≥ 256`. +* `TopologyNodes` contains **unique ids** across `client`, `servers[]`, and (optional) `load_balancer`. Duplicates → `ValueError`. +* `TopologyNodes` forbids unknown fields (`extra="forbid"`). + +### Edges + +* **No self-loops:** `source != target`. +* **Latency sanity:** `latency.mean > 0`; if `variance` is provided, `variance ≥ 0`. Error messages reference the **edge id**. +* `dropout_rate ∈ [0, 1]`. + +### Graph (`TopologyGraph`) + +* **Edge ids are unique.** +* **Targets** are always **declared node ids**. +* **External ids** (e.g., generator) are allowed only as **sources**; they must **never** appear as **targets**. +* **Load balancer integrity:** + + * `server_covered` is a subset of declared servers. + * Every covered server has a **corresponding edge from the LB** (LB → srv). Missing links → `ValueError`. +* **Fan-out restriction:** among **declared nodes**, only the **LB** can have **multiple outgoing edges**. Offenders are listed. + +If your payload passes validation, the engine can wire and run the simulation deterministically with consistent semantics. -## Summary -* The **payload** is small but expressive: workload, topology, and settings. -* The **validators** are doing real work: they make illegal states unrepresentable. -* The **enums** keep the contract tight and maintainable. -* Together, they let you move fast **without** breaking the simulation engine. -If you extend the engine (new distributions, step kinds, metrics), you can **keep the same contract** and enrich the enums & validators to preserve the same guarantees. diff --git a/docs/pybuilder.md b/docs/pybuilder.md new file mode 100644 index 0000000..19b7b24 --- /dev/null +++ b/docs/pybuilder.md @@ -0,0 +1,458 @@ +# AsyncFlow – Programmatic Input Guide (pybuilder) + +This guide shows how to **build the full simulation input in Python** using the +`AsyncFlow` builder (the “pybuilder”), with the same precision and validation +guarantees as the YAML flow. You’ll see **all components, valid values, units, +constraints, and how validation is enforced**. + +Under the hood, the builder assembles a single `SimulationPayload`: + +```python +SimulationPayload( + rqs_input=RqsGeneratorInput(...), # traffic generator (workload) + topology_graph=TopologyGraph(...), # system architecture as a graph + sim_settings=SimulationSettings(...), # global settings and metrics +) +``` + +Everything is **validated up front** by Pydantic. If something is inconsistent +(e.g., an edge points to a non-existent node), a clear error is raised +**before** running the simulation. + +--- + +## Quick Start (Minimal Example) + +```python +from __future__ import annotations + +import simpy + +from asyncflow.pybuilder.input_builder import AsyncFlow +from asyncflow.runtime.simulation_runner import SimulationRunner +from asyncflow.schemas.full_simulation_input import SimulationPayload +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput +from asyncflow.schemas.simulation_settings_input import SimulationSettings +from asyncflow.schemas.system_topology.endpoint import Endpoint +from asyncflow.schemas.system_topology.full_system_topology import ( + Client, Edge, Server, +) + +# 1) Workload +generator = RqsGeneratorInput( + id="rqs-1", + avg_active_users={"mean": 50, "distribution": "poisson"}, + avg_request_per_minute_per_user={"mean": 30, "distribution": "poisson"}, + user_sampling_window=60, # seconds +) + +# 2) Nodes (client + one server) +client = Client(id="client-1") +endpoint = Endpoint( + endpoint_name="/hello", + probability=1.0, # per-endpoint weight on this server + steps=[ + {"kind": "ram", "step_operation": {"necessary_ram": 32}}, + {"kind": "initial_parsing", "step_operation": {"cpu_time": 0.002}}, + {"kind": "io_wait", "step_operation": {"io_waiting_time": 0.010}}, + ], +) +server = Server( + id="srv-1", + server_resources={"cpu_cores": 1, "ram_mb": 1024}, + endpoints=[endpoint], +) + +# 3) Edges (directed, with latency as RV) +edges = [ + Edge( + id="gen-to-client", + source="rqs-1", # external sources allowed + target="client-1", # targets must be declared nodes + latency={"mean": 0.003, "distribution": "exponential"}, + ), + Edge( + id="client-to-server", + source="client-1", + target="srv-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ), + Edge( + id="server-to-client", + source="srv-1", + target="client-1", + latency={"mean": 0.003, "distribution": "exponential"}, + ), +] + +# 4) Global settings +settings = SimulationSettings( + total_simulation_time=300, # seconds, min 5 + sample_period_s=0.01, # seconds, [0.001 .. 0.1] + enabled_sample_metrics=[ + "ready_queue_len", + "event_loop_io_sleep", + "ram_in_use", + "edge_concurrent_connection", + ], + enabled_event_metrics=["rqs_clock"], +) + +# 5) Build (validates everything) +payload: SimulationPayload = ( + AsyncFlow() + .add_generator(generator) + .add_client(client) + .add_servers(server) + .add_edges(*edges) + .add_simulation_settings(settings) + .build_payload() +) + +# 6) Run +env = simpy.Environment() +results = SimulationRunner(env=env, simulation_input=payload).run() +``` + +--- + +## 1) Random Variables (`RVConfig`) + +Where a parameter is stochastic (e.g., edge latency, users, RPM), you pass a +dictionary that Pydantic converts into an `RVConfig`: + +```python +{"mean": , "distribution": , "variance": } +``` + +### Supported distributions + +* `"poisson"` +* `"normal"` +* `"log_normal"` +* `"exponential"` +* `"uniform"` + +### Rules & defaults + +* `mean` is **required** and numeric; coerced to `float`. +* If `distribution` is `"normal"` or `"log_normal"` and `variance` is absent, + it defaults to **`variance = mean`**. +* For **edge latency** (see §3.3): **`mean > 0`** and, if provided, + **`variance ≥ 0`**. + +**Units** + +* Time values are **seconds**. +* Rates are **requests per minute** (where noted). + +--- + +## 2) Workload: `RqsGeneratorInput` + +```python +from asyncflow.schemas.rqs_generator_input import RqsGeneratorInput + +generator = RqsGeneratorInput( + id="rqs-1", + avg_active_users={ + "mean": 100, + "distribution": "poisson", # or "normal" + # "variance": , # optional; auto=mean if "normal" + }, + avg_request_per_minute_per_user={ + "mean": 20, + "distribution": "poisson", # must be poisson in current samplers + }, + user_sampling_window=60, # [1 .. 120] seconds +) +``` + +**Semantics** + +* `avg_active_users`: active users as a random variable (Poisson or Normal). +* `avg_request_per_minute_per_user`: per-user RPM (Poisson). +* `user_sampling_window`: re-sample active users every N seconds. + +--- + +## 3) System Topology (`Client`, `Server`, `LoadBalancer`, `Edge`) + +Represent the system as a **directed graph**: nodes (client, servers, optional +LB) and edges (network links). + +### 3.1 Client + +```python +from asyncflow.schemas.system_topology.full_system_topology import Client + +client = Client(id="client-1") # type is fixed to 'client' +``` + +### 3.2 Server & Endpoints + +```python +from asyncflow.schemas.system_topology.endpoint import Endpoint +from asyncflow.schemas.system_topology.full_system_topology import Server + +endpoint = Endpoint( + endpoint_name="/api", # normalized to lowercase internally + probability=1.0, # endpoint selection weight within the server + steps=[ + {"kind": "ram", "step_operation": {"necessary_ram": 64}}, + {"kind": "cpu_bound_operation", "step_operation": {"cpu_time": 0.004}}, + {"kind": "io_db", "step_operation": {"io_waiting_time": 0.012}}, + ], +) + +server = Server( + id="srv-1", # type fixed to 'server' + server_resources={ + "cpu_cores": 2, # int ≥ 1 + "ram_mb": 2048, # int ≥ 256 + "db_connection_pool": None, # optional future-use + }, + endpoints=[endpoint], +) +``` + +**Step kinds** (enums) + +* **CPU**: `"initial_parsing"`, `"cpu_bound_operation"` +* **RAM**: `"ram"` +* **I/O**: `"io_task_spawn"`, `"io_llm"`, `"io_wait"`, `"io_db"`, `"io_cache"` + +**Operation keys** (enum `StepOperation`) + +* `cpu_time` (seconds, positive) +* `necessary_ram` (MB, positive int/float) +* `io_waiting_time` (seconds, positive) + +**Validation enforced** + +* Each step’s `step_operation` has **exactly one** entry. +* The operation **must match** the step kind. +* All numeric values **> 0**. + +**Runtime semantics (high level)** + +* RAM is reserved before CPU, then released at the end. +* CPU tokens acquired lazily for consecutive CPU steps; released on I/O. +* I/O waits **do not** hold a CPU core. + +### 3.3 Load Balancer (optional) + +```python +from asyncflow.schemas.system_topology.full_system_topology import LoadBalancer + +lb = LoadBalancer( + id="lb-1", + algorithms="round_robin", # or "least_connection" + server_covered={"srv-1", "srv-2"}, +) +``` + +**LB validation** + +* `server_covered` must be a subset of declared servers. +* You must define **edges from the LB to each covered server** (see below). + +### 3.4 Edges + +```python +from asyncflow.schemas.system_topology.full_system_topology import Edge + +edge = Edge( + id="client-to-srv1", + source="client-1", # may be external only for sources + target="srv-1", # MUST be a declared node + latency={"mean": 0.003, "distribution": "exponential"}, + probability=1.0, # optional [0..1] + edge_type="network_connection", # current default/only + dropout_rate=0.01, # optional [0..1] +) +``` + +**Semantics** + +* `source`: can be an **external** ID for entry points (e.g., `"rqs-1"`). +* `target`: **must** be a declared node (`client`, `server`, `load_balancer`). +* `latency`: random variable; **`mean > 0`**, `variance ≥ 0` (if provided). +* `probability`: used when a node has multiple outgoing edges (fan-out). + If your code enforces “no fan-out except LB”, do **not** create multiple + outgoing edges from nodes other than the LB. +* `dropout_rate`: per-request/packet drop probability on this link. + +--- + +## 4) Global Settings: `SimulationSettings` + +```python +from asyncflow.schemas.simulation_settings_input import SimulationSettings + +settings = SimulationSettings( + total_simulation_time=600, # seconds, default 3600, min 5 + sample_period_s=0.02, # seconds, [0.001 .. 0.1], default 0.01 + enabled_sample_metrics=[ + "ready_queue_len", + "event_loop_io_sleep", + "ram_in_use", + "edge_concurrent_connection", + ], + enabled_event_metrics=[ + "rqs_clock", + # "llm_cost", # optional future accounting + ], +) +``` + +**Notes** + +* Sampled metrics are time-series collected at `sample_period_s`. +* Event metrics are per-event (e.g., per request), not sampled. + +--- + +## 5) Building the Payload with `AsyncFlow` + +```python +from asyncflow.pybuilder.input_builder import AsyncFlow +from asyncflow.schemas.full_simulation_input import SimulationPayload + +flow = ( + AsyncFlow() + .add_generator(generator) + .add_client(client) + .add_servers(server) # varargs; supports multiple + .add_edges(*edges) # varargs; supports multiple + # .add_load_balancer(lb) # optional + .add_simulation_settings(settings) +) + +payload: SimulationPayload = flow.build_payload() +``` + +**What `build_payload()` validates** + +1. **Presence**: generator, client, ≥1 server, ≥1 edge, settings. +2. **Unique IDs**: servers and edges have unique IDs. +3. **Node types**: fixed enums: `client`, `server`, `load_balancer`. +4. **Edge integrity**: every target is a declared node; external IDs allowed only as sources; no self-loops (`source != target`). +5. **Load balancer sanity**: `server_covered ⊆ declared_servers` and there is an edge from the LB to **each** covered server. +6. **(Optional in your codebase)** “No fan-out except LB” validator: multiple + outgoing edges only allowed for the LB. + +If any rule is violated, a **descriptive `ValueError`** pinpoints the problem. + +--- + +## 6) Running the Simulation + +```python +import simpy +from asyncflow.runtime.simulation_runner import SimulationRunner + +env = simpy.Environment() +runner = SimulationRunner(env=env, simulation_input=payload) +results = runner.run() # blocks until total_simulation_time + +# Access results via the ResultsAnalyzer API: +stats = results.get_latency_stats() +ts, rps = results.get_throughput_series() +sampled = results.get_sampled_metrics() +``` + +You can also plot with the analyzer methods: + +```python +from matplotlib import pyplot as plt # optional +fig, axes = plt.subplots(2, 2, figsize=(12, 8)) +results.plot_latency_distribution(axes[0, 0]) +results.plot_throughput(axes[0, 1]) +results.plot_server_queues(axes[1, 0]) +results.plot_ram_usage(axes[1, 1]) +fig.tight_layout() +fig.savefig("single_server_pybuilder.png") +``` + +--- + +## 7) Builder vs YAML: Field Mapping + +| YAML path | Builder (Python) | +| --------------------------------------------- | ---------------------------------------------------------------- | +| `rqs_input.id` | `RqsGeneratorInput(id=...)` | +| `rqs_input.avg_active_users.*` | `RqsGeneratorInput(avg_active_users={...})` | +| `rqs_input.avg_request_per_minute_per_user.*` | `RqsGeneratorInput(avg_request_per_minute_per_user={...})` | +| `rqs_input.user_sampling_window` | `RqsGeneratorInput(user_sampling_window=...)` | +| `topology_graph.nodes.client.id` | `Client(id=...)` | +| `topology_graph.nodes.servers[*]` | `Server(id=..., server_resources={...}, endpoints=[...])` | +| `endpoint.endpoint_name` | `Endpoint(endpoint_name=...)` | +| `endpoint.steps[*]` | `Endpoint(steps=[{"kind": "...","step_operation": {...}}, ...])` | +| `topology_graph.nodes.load_balancer.*` | `LoadBalancer(id=..., algorithms=..., server_covered={...})` | +| `topology_graph.edges[*]` | `Edge(id=..., source=..., target=..., latency={...}, ...)` | +| `sim_settings.*` | `SimulationSettings(...)` | + +--- + +## 8) Common Pitfalls & How to Avoid Them + +* **Mismatched step operations** + A CPU step must use `cpu_time`; an I/O step must use `io_waiting_time`; a RAM + step must use `necessary_ram`. Exactly **one** key per step. + +* **Edge target must be a declared node** + `source` can be external (e.g., `"rqs-1"`), but **no external ID** may ever + appear as a `target`. + +* **Load balancer coverage without edges** + If the LB covers `[srv-1, srv-2]`, you **must** add edges `lb→srv-1` and + `lb→srv-2`. + +* **Latency RV rules on edges** + `mean` must be **> 0**; if `variance` is present, it must be **≥ 0**. + +* **Fan-out rules** + If your codebase enforces “no fan-out except LB”, do not create multiple + outgoing edges from non-LB nodes. If you do allow it, set `probability` + weights so outgoing probabilities per source sum to \~1.0 (or ensure a single + edge per source). + +* **Sampling too coarse** + Large `sample_period_s` may miss short spikes. Lower it to capture bursts + (at the cost of larger time series). + +--- + +## 9) Enums, Units & Conventions (Cheat Sheet) + +* **Distributions**: `"poisson"`, `"normal"`, `"log_normal"`, `"exponential"`, + `"uniform"` +* **Node types**: fixed internally to: `generator`, `server`, `client`, + `load_balancer` +* **Edge type**: `network_connection` +* **LB algorithms**: `"round_robin"`, `"least_connection"` +* **Step kinds** + CPU: `"initial_parsing"`, `"cpu_bound_operation"` + RAM: `"ram"` + I/O: `"io_task_spawn"`, `"io_llm"`, `"io_wait"`, `"io_db"`, `"io_cache"` +* **Step operation keys**: `cpu_time`, `io_waiting_time`, `necessary_ram` +* **Sampled metrics**: `ready_queue_len`, `event_loop_io_sleep`, `ram_in_use`, + `edge_concurrent_connection` +* **Event metrics**: `rqs_clock` (and `llm_cost` reserved for future use) + +**Units & ranges** + +* **Time**: seconds (`cpu_time`, `io_waiting_time`, edge latency means/variance, + `total_simulation_time`, `sample_period_s`, `user_sampling_window`) +* **RAM**: megabytes (`ram_mb`, `necessary_ram`) +* **Rates**: requests/minute (`avg_request_per_minute_per_user.mean`) +* **Probabilities**: `[0.0, 1.0]` (`probability`, `dropout_rate`) +* **Bounds**: `total_simulation_time ≥ 5`, `sample_period_s ∈ [0.001, 0.1]`, + `cpu_cores ≥ 1`, `ram_mb ≥ 256`, numeric step values > 0 + +--- + +With these patterns, you can build any topology that the YAML supports—**fully +programmatically**, with the same strong validation and clear errors on invalid +configurations.