From 7b97cec9e7d44a93f42d9ca9f8f480df4b1eeb53 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 20 Apr 2024 11:30:00 +0200 Subject: [PATCH 01/68] remove license --- LICENSE | 21 --------------------- 1 file changed, 21 deletions(-) delete mode 100644 LICENSE diff --git a/LICENSE b/LICENSE deleted file mode 100644 index 56603a9..0000000 --- a/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2020 Innmind - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. From b99d17d078b1a8e8100dd975f200729658b9eb26 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 20 Apr 2024 16:56:45 +0200 Subject: [PATCH 02/68] setup overall structure of the new documentation via MkDocs --- .github/workflows/ci.yml | 28 ++++ .gitignore | 1 + Makefile | 3 + docs/assets/favicon.png | Bin 0 -> 2319 bytes docs/assets/fonts/MonaspaceNeon-Regular.woff | Bin 0 -> 47308 bytes docs/assets/logo.svg | 24 ++++ docs/assets/stylesheets/extra.css | 10 ++ docs/getting-started/cli.md | 1 + docs/getting-started/concurrency/async.md | 1 + .../concurrency/distributed.md | 1 + docs/getting-started/concurrency/http.md | 1 + docs/getting-started/concurrency/index.md | 1 + docs/getting-started/concurrency/ipc.md | 1 + docs/getting-started/concurrency/queues.md | 1 + docs/getting-started/framework/cli.md | 1 + docs/getting-started/framework/extensions.md | 1 + docs/getting-started/framework/http.md | 1 + docs/getting-started/framework/index.md | 1 + docs/getting-started/framework/profiler.md | 1 + docs/getting-started/handling-data/either.md | 1 + docs/getting-started/handling-data/index.md | 1 + docs/getting-started/handling-data/maybe.md | 1 + .../getting-started/handling-data/sequence.md | 1 + docs/getting-started/http.md | 1 + docs/getting-started/index.md | 1 + .../getting-started/operating-system/clock.md | 1 + .../operating-system/filesystem.md | 1 + docs/getting-started/operating-system/http.md | 1 + .../getting-started/operating-system/index.md | 1 + .../operating-system/network.md | 1 + .../operating-system/php-process.md | 1 + .../operating-system/processes.md | 1 + docs/getting-started/operating-system/sql.md | 1 + docs/getting-started/orm/development.md | 1 + docs/getting-started/orm/index.md | 3 + docs/getting-started/orm/production.md | 1 + docs/getting-started/orm/testing.md | 1 + docs/index.md | 31 ++++ docs/packages.md | 6 + docs/philosophy/abstractions.md | 1 + docs/philosophy/capabilities.md | 1 + docs/philosophy/declarative.md | 1 + docs/philosophy/explicit.md | 1 + docs/philosophy/index.md | 1 + docs/philosophy/oop-fp.md | 4 + docs/philosophy/semantic.md | 1 + docs/philosophy/simplicity.md | 1 + docs/philosophy/versioning.md | 1 + docs/testing/blackbox.md | 1 + docs/testing/index.md | 1 + docs/testing/proofs.md | 1 + docs/testing/properties.md | 1 + docs/testing/property-based-testing.md | 1 + docs/testing/tests.md | 1 + docs/tools.md | 6 + mkdocs.yml | 132 ++++++++++++++++++ 56 files changed, 291 insertions(+) create mode 100644 .github/workflows/ci.yml create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 docs/assets/favicon.png create mode 100644 docs/assets/fonts/MonaspaceNeon-Regular.woff create mode 100644 docs/assets/logo.svg create mode 100644 docs/assets/stylesheets/extra.css create mode 100644 docs/getting-started/cli.md create mode 100644 docs/getting-started/concurrency/async.md create mode 100644 docs/getting-started/concurrency/distributed.md create mode 100644 docs/getting-started/concurrency/http.md create mode 100644 docs/getting-started/concurrency/index.md create mode 100644 docs/getting-started/concurrency/ipc.md create mode 100644 docs/getting-started/concurrency/queues.md create mode 100644 docs/getting-started/framework/cli.md create mode 100644 docs/getting-started/framework/extensions.md create mode 100644 docs/getting-started/framework/http.md create mode 100644 docs/getting-started/framework/index.md create mode 100644 docs/getting-started/framework/profiler.md create mode 100644 docs/getting-started/handling-data/either.md create mode 100644 docs/getting-started/handling-data/index.md create mode 100644 docs/getting-started/handling-data/maybe.md create mode 100644 docs/getting-started/handling-data/sequence.md create mode 100644 docs/getting-started/http.md create mode 100644 docs/getting-started/index.md create mode 100644 docs/getting-started/operating-system/clock.md create mode 100644 docs/getting-started/operating-system/filesystem.md create mode 100644 docs/getting-started/operating-system/http.md create mode 100644 docs/getting-started/operating-system/index.md create mode 100644 docs/getting-started/operating-system/network.md create mode 100644 docs/getting-started/operating-system/php-process.md create mode 100644 docs/getting-started/operating-system/processes.md create mode 100644 docs/getting-started/operating-system/sql.md create mode 100644 docs/getting-started/orm/development.md create mode 100644 docs/getting-started/orm/index.md create mode 100644 docs/getting-started/orm/production.md create mode 100644 docs/getting-started/orm/testing.md create mode 100644 docs/index.md create mode 100644 docs/packages.md create mode 100644 docs/philosophy/abstractions.md create mode 100644 docs/philosophy/capabilities.md create mode 100644 docs/philosophy/declarative.md create mode 100644 docs/philosophy/explicit.md create mode 100644 docs/philosophy/index.md create mode 100644 docs/philosophy/oop-fp.md create mode 100644 docs/philosophy/semantic.md create mode 100644 docs/philosophy/simplicity.md create mode 100644 docs/philosophy/versioning.md create mode 100644 docs/testing/blackbox.md create mode 100644 docs/testing/index.md create mode 100644 docs/testing/proofs.md create mode 100644 docs/testing/properties.md create mode 100644 docs/testing/property-based-testing.md create mode 100644 docs/testing/tests.md create mode 100644 docs/tools.md create mode 100644 mkdocs.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..aa6dcc7 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,28 @@ +name: ci +on: + push: + tags: + - '*' +permissions: + contents: write +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Configure Git Credentials + run: | + git config user.name github-actions[bot] + git config user.email 41898282+github-actions[bot]@users.noreply.github.com + - uses: actions/setup-python@v5 + with: + python-version: 3.x + - run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV + - uses: actions/cache@v4 + with: + key: mkdocs-material-${{ env.cache_id }} + path: .cache + restore-keys: | + mkdocs-material- + - run: pip install mkdocs-material + - run: mkdocs gh-deploy --force diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8c36c42 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/.cache diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..8f62610 --- /dev/null +++ b/Makefile @@ -0,0 +1,3 @@ +# This command is intended to be run on your computer +serve: + docker run --rm -it -p 8000:8000 -v ${PWD}:/docs squidfunk/mkdocs-material diff --git a/docs/assets/favicon.png b/docs/assets/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..08dee3a38bab0f4b6161a9ea6c575a347daaa737 GIT binary patch literal 2319 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

m)-Jo-MAPW+|=Jl-g@ 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 z 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 literal 0 HcmV?d00001 diff --git a/docs/assets/logo.svg b/docs/assets/logo.svg new file mode 100644 index 0000000..6a5d322 --- /dev/null +++ b/docs/assets/logo.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/assets/stylesheets/extra.css b/docs/assets/stylesheets/extra.css new file mode 100644 index 0000000..94877a4 --- /dev/null +++ b/docs/assets/stylesheets/extra.css @@ -0,0 +1,10 @@ +@font-face { + font-family: "Monaspace Neon"; + font-weight: normal; + font-style: normal; + src: url("../fonts/MonaspaceNeon-Regular.woff"); +} + +:root { + --md-code-font: "Monaspace Neon"; +} diff --git a/docs/getting-started/cli.md b/docs/getting-started/cli.md new file mode 100644 index 0000000..7949b06 --- /dev/null +++ b/docs/getting-started/cli.md @@ -0,0 +1 @@ +# CLI App diff --git a/docs/getting-started/concurrency/async.md b/docs/getting-started/concurrency/async.md new file mode 100644 index 0000000..718dfa5 --- /dev/null +++ b/docs/getting-started/concurrency/async.md @@ -0,0 +1 @@ +# Asynchronous code diff --git a/docs/getting-started/concurrency/distributed.md b/docs/getting-started/concurrency/distributed.md new file mode 100644 index 0000000..f92fe73 --- /dev/null +++ b/docs/getting-started/concurrency/distributed.md @@ -0,0 +1 @@ +# Distributed diff --git a/docs/getting-started/concurrency/http.md b/docs/getting-started/concurrency/http.md new file mode 100644 index 0000000..730dbf9 --- /dev/null +++ b/docs/getting-started/concurrency/http.md @@ -0,0 +1 @@ +# HTTP calls diff --git a/docs/getting-started/concurrency/index.md b/docs/getting-started/concurrency/index.md new file mode 100644 index 0000000..5cbbf4f --- /dev/null +++ b/docs/getting-started/concurrency/index.md @@ -0,0 +1 @@ +# Concurrency diff --git a/docs/getting-started/concurrency/ipc.md b/docs/getting-started/concurrency/ipc.md new file mode 100644 index 0000000..7ba5f7f --- /dev/null +++ b/docs/getting-started/concurrency/ipc.md @@ -0,0 +1 @@ +# Inter Process Communication diff --git a/docs/getting-started/concurrency/queues.md b/docs/getting-started/concurrency/queues.md new file mode 100644 index 0000000..c7b35ed --- /dev/null +++ b/docs/getting-started/concurrency/queues.md @@ -0,0 +1 @@ +# Queues diff --git a/docs/getting-started/framework/cli.md b/docs/getting-started/framework/cli.md new file mode 100644 index 0000000..3f213d4 --- /dev/null +++ b/docs/getting-started/framework/cli.md @@ -0,0 +1 @@ +# CLI diff --git a/docs/getting-started/framework/extensions.md b/docs/getting-started/framework/extensions.md new file mode 100644 index 0000000..0e4fb5c --- /dev/null +++ b/docs/getting-started/framework/extensions.md @@ -0,0 +1 @@ +# Extensions diff --git a/docs/getting-started/framework/http.md b/docs/getting-started/framework/http.md new file mode 100644 index 0000000..03fe6a2 --- /dev/null +++ b/docs/getting-started/framework/http.md @@ -0,0 +1 @@ +# HTTP diff --git a/docs/getting-started/framework/index.md b/docs/getting-started/framework/index.md new file mode 100644 index 0000000..2660e90 --- /dev/null +++ b/docs/getting-started/framework/index.md @@ -0,0 +1 @@ +# Framework diff --git a/docs/getting-started/framework/profiler.md b/docs/getting-started/framework/profiler.md new file mode 100644 index 0000000..4af5242 --- /dev/null +++ b/docs/getting-started/framework/profiler.md @@ -0,0 +1 @@ +# Profiler diff --git a/docs/getting-started/handling-data/either.md b/docs/getting-started/handling-data/either.md new file mode 100644 index 0000000..eee48de --- /dev/null +++ b/docs/getting-started/handling-data/either.md @@ -0,0 +1 @@ +# Either diff --git a/docs/getting-started/handling-data/index.md b/docs/getting-started/handling-data/index.md new file mode 100644 index 0000000..d5a3d1f --- /dev/null +++ b/docs/getting-started/handling-data/index.md @@ -0,0 +1 @@ +# Handling data diff --git a/docs/getting-started/handling-data/maybe.md b/docs/getting-started/handling-data/maybe.md new file mode 100644 index 0000000..a15139b --- /dev/null +++ b/docs/getting-started/handling-data/maybe.md @@ -0,0 +1 @@ +# Maybe diff --git a/docs/getting-started/handling-data/sequence.md b/docs/getting-started/handling-data/sequence.md new file mode 100644 index 0000000..804cff5 --- /dev/null +++ b/docs/getting-started/handling-data/sequence.md @@ -0,0 +1 @@ +# Sequence diff --git a/docs/getting-started/http.md b/docs/getting-started/http.md new file mode 100644 index 0000000..a48f5e1 --- /dev/null +++ b/docs/getting-started/http.md @@ -0,0 +1 @@ +# HTTP App diff --git a/docs/getting-started/index.md b/docs/getting-started/index.md new file mode 100644 index 0000000..69a5d54 --- /dev/null +++ b/docs/getting-started/index.md @@ -0,0 +1 @@ +# Getting started diff --git a/docs/getting-started/operating-system/clock.md b/docs/getting-started/operating-system/clock.md new file mode 100644 index 0000000..f575036 --- /dev/null +++ b/docs/getting-started/operating-system/clock.md @@ -0,0 +1 @@ +# Clock diff --git a/docs/getting-started/operating-system/filesystem.md b/docs/getting-started/operating-system/filesystem.md new file mode 100644 index 0000000..6d41ab8 --- /dev/null +++ b/docs/getting-started/operating-system/filesystem.md @@ -0,0 +1 @@ +# Filesystem diff --git a/docs/getting-started/operating-system/http.md b/docs/getting-started/operating-system/http.md new file mode 100644 index 0000000..03fe6a2 --- /dev/null +++ b/docs/getting-started/operating-system/http.md @@ -0,0 +1 @@ +# HTTP diff --git a/docs/getting-started/operating-system/index.md b/docs/getting-started/operating-system/index.md new file mode 100644 index 0000000..6e9da66 --- /dev/null +++ b/docs/getting-started/operating-system/index.md @@ -0,0 +1 @@ +# Operating System diff --git a/docs/getting-started/operating-system/network.md b/docs/getting-started/operating-system/network.md new file mode 100644 index 0000000..05db335 --- /dev/null +++ b/docs/getting-started/operating-system/network.md @@ -0,0 +1 @@ +# Network diff --git a/docs/getting-started/operating-system/php-process.md b/docs/getting-started/operating-system/php-process.md new file mode 100644 index 0000000..726678b --- /dev/null +++ b/docs/getting-started/operating-system/php-process.md @@ -0,0 +1 @@ +# PHP Process diff --git a/docs/getting-started/operating-system/processes.md b/docs/getting-started/operating-system/processes.md new file mode 100644 index 0000000..f82dc85 --- /dev/null +++ b/docs/getting-started/operating-system/processes.md @@ -0,0 +1 @@ +# Other Processes diff --git a/docs/getting-started/operating-system/sql.md b/docs/getting-started/operating-system/sql.md new file mode 100644 index 0000000..b8b6f7b --- /dev/null +++ b/docs/getting-started/operating-system/sql.md @@ -0,0 +1 @@ +# SQL diff --git a/docs/getting-started/orm/development.md b/docs/getting-started/orm/development.md new file mode 100644 index 0000000..459110d --- /dev/null +++ b/docs/getting-started/orm/development.md @@ -0,0 +1 @@ +# Development diff --git a/docs/getting-started/orm/index.md b/docs/getting-started/orm/index.md new file mode 100644 index 0000000..e4653a7 --- /dev/null +++ b/docs/getting-started/orm/index.md @@ -0,0 +1,3 @@ +# ORM + +*[ORM]: Object Relational Mapping diff --git a/docs/getting-started/orm/production.md b/docs/getting-started/orm/production.md new file mode 100644 index 0000000..fae4ea3 --- /dev/null +++ b/docs/getting-started/orm/production.md @@ -0,0 +1 @@ +# Production diff --git a/docs/getting-started/orm/testing.md b/docs/getting-started/orm/testing.md new file mode 100644 index 0000000..f00b526 --- /dev/null +++ b/docs/getting-started/orm/testing.md @@ -0,0 +1 @@ +# Testing diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..38be324 --- /dev/null +++ b/docs/index.md @@ -0,0 +1,31 @@ +--- +hide: + - navigation + - toc +--- + +# Welcome to MkDocs + +For full documentation visit [mkdocs.org](https://www.mkdocs.org). + +## Commands + +* `mkdocs new [dir-name]` - Create a new project. +* `mkdocs serve` - Start the live-reloading docs server. +* `mkdocs build` - Build the documentation site. +* `mkdocs -h` - Print help message and exit. + +## Project layout + +```php + + */ +function t(mixed $t): mixed +{ + return [$t]; +} +``` diff --git a/docs/packages.md b/docs/packages.md new file mode 100644 index 0000000..fc76c96 --- /dev/null +++ b/docs/packages.md @@ -0,0 +1,6 @@ +--- +hide: + - navigation +--- + +# Other Packages diff --git a/docs/philosophy/abstractions.md b/docs/philosophy/abstractions.md new file mode 100644 index 0000000..2b510be --- /dev/null +++ b/docs/philosophy/abstractions.md @@ -0,0 +1 @@ +# Abstractions diff --git a/docs/philosophy/capabilities.md b/docs/philosophy/capabilities.md new file mode 100644 index 0000000..b402dab --- /dev/null +++ b/docs/philosophy/capabilities.md @@ -0,0 +1 @@ +# Capabilities diff --git a/docs/philosophy/declarative.md b/docs/philosophy/declarative.md new file mode 100644 index 0000000..a2de423 --- /dev/null +++ b/docs/philosophy/declarative.md @@ -0,0 +1 @@ +# Declarative diff --git a/docs/philosophy/explicit.md b/docs/philosophy/explicit.md new file mode 100644 index 0000000..8ef4c30 --- /dev/null +++ b/docs/philosophy/explicit.md @@ -0,0 +1 @@ +# Explicit diff --git a/docs/philosophy/index.md b/docs/philosophy/index.md new file mode 100644 index 0000000..a681198 --- /dev/null +++ b/docs/philosophy/index.md @@ -0,0 +1 @@ +# Philosophy diff --git a/docs/philosophy/oop-fp.md b/docs/philosophy/oop-fp.md new file mode 100644 index 0000000..587b952 --- /dev/null +++ b/docs/philosophy/oop-fp.md @@ -0,0 +1,4 @@ +# OOP & FP + +*[OOP]: Object Oriented Programming +*[FP]: Functional Programming diff --git a/docs/philosophy/semantic.md b/docs/philosophy/semantic.md new file mode 100644 index 0000000..945ee0f --- /dev/null +++ b/docs/philosophy/semantic.md @@ -0,0 +1 @@ +# Semantic diff --git a/docs/philosophy/simplicity.md b/docs/philosophy/simplicity.md new file mode 100644 index 0000000..f7702c3 --- /dev/null +++ b/docs/philosophy/simplicity.md @@ -0,0 +1 @@ +# Simplicity diff --git a/docs/philosophy/versioning.md b/docs/philosophy/versioning.md new file mode 100644 index 0000000..1ca61ba --- /dev/null +++ b/docs/philosophy/versioning.md @@ -0,0 +1 @@ +# Versioning diff --git a/docs/testing/blackbox.md b/docs/testing/blackbox.md new file mode 100644 index 0000000..370ede2 --- /dev/null +++ b/docs/testing/blackbox.md @@ -0,0 +1 @@ +# BlackBox diff --git a/docs/testing/index.md b/docs/testing/index.md new file mode 100644 index 0000000..f00b526 --- /dev/null +++ b/docs/testing/index.md @@ -0,0 +1 @@ +# Testing diff --git a/docs/testing/proofs.md b/docs/testing/proofs.md new file mode 100644 index 0000000..5c4267d --- /dev/null +++ b/docs/testing/proofs.md @@ -0,0 +1 @@ +# Proofs diff --git a/docs/testing/properties.md b/docs/testing/properties.md new file mode 100644 index 0000000..d03ffb6 --- /dev/null +++ b/docs/testing/properties.md @@ -0,0 +1 @@ +# Properties diff --git a/docs/testing/property-based-testing.md b/docs/testing/property-based-testing.md new file mode 100644 index 0000000..7311dad --- /dev/null +++ b/docs/testing/property-based-testing.md @@ -0,0 +1 @@ +# Property Based Testing diff --git a/docs/testing/tests.md b/docs/testing/tests.md new file mode 100644 index 0000000..007eb95 --- /dev/null +++ b/docs/testing/tests.md @@ -0,0 +1 @@ +# Tests diff --git a/docs/tools.md b/docs/tools.md new file mode 100644 index 0000000..376aaf0 --- /dev/null +++ b/docs/tools.md @@ -0,0 +1,6 @@ +--- +hide: + - navigation +--- + +# Tools diff --git a/mkdocs.yml b/mkdocs.yml new file mode 100644 index 0000000..0121f48 --- /dev/null +++ b/mkdocs.yml @@ -0,0 +1,132 @@ +site_name: Innmind +repo_name: innmind/documentation + +nav: + - Home: index.md + - Philosophy: + - philosophy/index.md + - OOP & FP: philosophy/oop-fp.md + - Semantic: philosophy/semantic.md + - Simplicity: philosophy/simplicity.md + - Explicit: philosophy/explicit.md + - Declarative: philosophy/declarative.md + - Capabilities: philosophy/capabilities.md + - Abstractions: philosophy/abstractions.md + - Versioning: philosophy/versioning.md + - Getting started: + - getting-started/index.md + - Handling data: + - getting-started/handling-data/index.md + - Sequence: getting-started/handling-data/sequence.md + - Maybe: getting-started/handling-data/maybe.md + - Either: getting-started/handling-data/either.md + - Operating System: + - getting-started/operating-system/index.md + - Clock: getting-started/operating-system/clock.md + - HTTP: getting-started/operating-system/http.md + - Filesystem: getting-started/operating-system/filesystem.md + - SQL: getting-started/operating-system/sql.md + - PHP Process: getting-started/operating-system/php-process.md + - Other Processes: getting-started/operating-system/processes.md + - Network: getting-started/operating-system/network.md + - App: + - CLI: getting-started/cli.md + - HTTP: getting-started/http.md + - Framework: + - getting-started/framework/index.md + - CLI: getting-started/framework/cli.md + - HTTP: getting-started/framework/http.md + - Profiler: getting-started/framework/profiler.md + - Extensions: getting-started/framework/extensions.md + - ORM: + - getting-started/orm/index.md + - Development: getting-started/orm/development.md + - Production: getting-started/orm/production.md + - Testing: getting-started/orm/testing.md + - Concurrency: + - getting-started/concurrency/index.md + - HTTP calls: getting-started/concurrency/http.md + - Asynchronous code: getting-started/concurrency/async.md + - Queues: getting-started/concurrency/queues.md + - Inter Process Communication: getting-started/concurrency/ipc.md + - Distributed: getting-started/concurrency/distributed.md + - Testing: + - testing/index.md + - Property Based testing: testing/property-based-testing.md + - BlackBox: testing/blackbox.md + - Tests: testing/tests.md + - Proofs: testing/proofs.md + - Properties: testing/properties.md + - Tools: tools.md + - Other Packages: packages.md + +theme: + name: material + logo: assets/logo.svg + favicon: assets/favicon.png + font: false + features: + - content.code.copy + - navigation.tracking + - navigation.tabs + - navigation.tabs.sticky + - navigation.sections + - navigation.expand + - navigation.indexes + - navigation.top + - navigation.footer + - search.suggest + - search.highlight + - content.action.edit + palette: + # Palette toggle for automatic mode + - media: "(prefers-color-scheme)" + toggle: + icon: material/brightness-auto + name: Switch to light mode + primary: blue + accent: deep orange + # Palette toggle for light mode + - media: "(prefers-color-scheme: light)" + scheme: default + toggle: + icon: material/brightness-7 + name: Switch to dark mode + primary: blue + accent: deep orange + # Palette toggle for dark mode + - media: "(prefers-color-scheme: dark)" + scheme: slate + toggle: + icon: material/brightness-4 + name: Switch to system preference + primary: blue + accent: deep orange + +markdown_extensions: + - pymdownx.highlight: + anchor_linenums: true + line_spans: __span + pygments_lang_class: true + - pymdownx.inlinehilite + - pymdownx.snippets + - pymdownx.superfences + - abbr + - admonition + - pymdownx.details: + - pymdownx.tabbed: + alternate_style: true + +extra_css: + - assets/stylesheets/extra.css + +plugins: + - search + - privacy + +extra: + social: + - icon: fontawesome/brands/github + link: https://github.com/Innmind + - icon: fontawesome/brands/x-twitter + link: https://twitter.com/Baptouuuu From 3127dd47313c1f7498d14335570ef1de47584fbd Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 21 Apr 2024 16:20:28 +0200 Subject: [PATCH 03/68] add sub sections --- docs/getting-started/app/cli.md | 5 + docs/getting-started/app/http.md | 5 + docs/getting-started/cli.md | 1 - docs/getting-started/concurrency/async.md | 8 ++ .../concurrency/distributed.md | 4 + docs/getting-started/concurrency/http.md | 4 + docs/getting-started/concurrency/ipc.md | 8 ++ docs/getting-started/concurrency/queues.md | 6 ++ docs/getting-started/framework/cli.md | 4 + docs/getting-started/framework/extensions.md | 4 + docs/getting-started/framework/http.md | 10 ++ docs/getting-started/framework/index.md | 6 ++ docs/getting-started/framework/middlewares.md | 1 + docs/getting-started/framework/profiler.md | 4 + docs/getting-started/handling-data/either.md | 4 + docs/getting-started/handling-data/index.md | 2 + docs/getting-started/handling-data/maybe.md | 4 + .../getting-started/handling-data/sequence.md | 20 ++++ docs/getting-started/http.md | 1 - .../getting-started/operating-system/clock.md | 8 ++ .../operating-system/filesystem.md | 14 +++ docs/getting-started/operating-system/http.md | 16 +++ .../getting-started/operating-system/index.md | 6 ++ .../operating-system/monitoring.md | 13 +++ .../operating-system/network.md | 12 +++ .../operating-system/php-process.md | 4 + .../operating-system/processes.md | 10 +- docs/getting-started/operating-system/sql.md | 10 ++ docs/getting-started/orm/development.md | 14 +++ docs/getting-started/orm/index.md | 6 ++ docs/getting-started/orm/production.md | 16 +++ docs/getting-started/orm/testing.md | 8 ++ docs/packages.md | 102 ++++++++++++++++++ docs/philosophy/abstractions.md | 8 ++ docs/philosophy/capabilities.md | 4 + docs/philosophy/declarative.md | 1 - docs/philosophy/development.md | 9 ++ docs/philosophy/explicit.md | 8 ++ docs/philosophy/oop-fp.md | 22 ++++ docs/philosophy/semantic.md | 6 ++ docs/philosophy/simplicity.md | 4 + docs/philosophy/versioning.md | 1 - docs/testing/blackbox.md | 12 +++ docs/testing/index.md | 4 + docs/testing/properties.md | 8 ++ docs/testing/property-based-testing.md | 8 ++ docs/testing/tests.md | 4 + docs/tools.md | 26 +++++ mkdocs.yml | 12 ++- 49 files changed, 467 insertions(+), 10 deletions(-) create mode 100644 docs/getting-started/app/cli.md create mode 100644 docs/getting-started/app/http.md delete mode 100644 docs/getting-started/cli.md create mode 100644 docs/getting-started/framework/middlewares.md delete mode 100644 docs/getting-started/http.md create mode 100644 docs/getting-started/operating-system/monitoring.md delete mode 100644 docs/philosophy/declarative.md create mode 100644 docs/philosophy/development.md delete mode 100644 docs/philosophy/versioning.md diff --git a/docs/getting-started/app/cli.md b/docs/getting-started/app/cli.md new file mode 100644 index 0000000..613b35e --- /dev/null +++ b/docs/getting-started/app/cli.md @@ -0,0 +1,5 @@ +# CLI + +## Installation + +## Usage diff --git a/docs/getting-started/app/http.md b/docs/getting-started/app/http.md new file mode 100644 index 0000000..806e190 --- /dev/null +++ b/docs/getting-started/app/http.md @@ -0,0 +1,5 @@ +# HTTP + +## Installation + +## Usage diff --git a/docs/getting-started/cli.md b/docs/getting-started/cli.md deleted file mode 100644 index 7949b06..0000000 --- a/docs/getting-started/cli.md +++ /dev/null @@ -1 +0,0 @@ -# CLI App diff --git a/docs/getting-started/concurrency/async.md b/docs/getting-started/concurrency/async.md index 718dfa5..36f9377 100644 --- a/docs/getting-started/concurrency/async.md +++ b/docs/getting-started/concurrency/async.md @@ -1 +1,9 @@ # Asynchronous code + +## Installation + +## Usage + +## Advantages + +## Limitations diff --git a/docs/getting-started/concurrency/distributed.md b/docs/getting-started/concurrency/distributed.md index f92fe73..39e1d1a 100644 --- a/docs/getting-started/concurrency/distributed.md +++ b/docs/getting-started/concurrency/distributed.md @@ -1 +1,5 @@ # Distributed + +## Actor Model + +## Work in progress diff --git a/docs/getting-started/concurrency/http.md b/docs/getting-started/concurrency/http.md index 730dbf9..75538e4 100644 --- a/docs/getting-started/concurrency/http.md +++ b/docs/getting-started/concurrency/http.md @@ -1 +1,5 @@ # HTTP calls + +## Example + +## Tips diff --git a/docs/getting-started/concurrency/ipc.md b/docs/getting-started/concurrency/ipc.md index 7ba5f7f..05bcfc5 100644 --- a/docs/getting-started/concurrency/ipc.md +++ b/docs/getting-started/concurrency/ipc.md @@ -1 +1,9 @@ # Inter Process Communication + +## Installation + +## Usage + +### Server + +### Client diff --git a/docs/getting-started/concurrency/queues.md b/docs/getting-started/concurrency/queues.md index c7b35ed..1bcadae 100644 --- a/docs/getting-started/concurrency/queues.md +++ b/docs/getting-started/concurrency/queues.md @@ -1 +1,7 @@ # Queues + +## Installation + +## Usage + +## Tips diff --git a/docs/getting-started/framework/cli.md b/docs/getting-started/framework/cli.md index 3f213d4..f19da1b 100644 --- a/docs/getting-started/framework/cli.md +++ b/docs/getting-started/framework/cli.md @@ -1 +1,5 @@ # CLI + +## Usage + +## Composition diff --git a/docs/getting-started/framework/extensions.md b/docs/getting-started/framework/extensions.md index 0e4fb5c..502a05b 100644 --- a/docs/getting-started/framework/extensions.md +++ b/docs/getting-started/framework/extensions.md @@ -1 +1,5 @@ # Extensions + +## Built-in + +## Others diff --git a/docs/getting-started/framework/http.md b/docs/getting-started/framework/http.md index 03fe6a2..4dd9d62 100644 --- a/docs/getting-started/framework/http.md +++ b/docs/getting-started/framework/http.md @@ -1 +1,11 @@ # HTTP + +## Usage + +## Composition + +## Webserver + +### Apache, Nginx, Caddy, etc... + +### Built-in diff --git a/docs/getting-started/framework/index.md b/docs/getting-started/framework/index.md index 2660e90..7ab19c4 100644 --- a/docs/getting-started/framework/index.md +++ b/docs/getting-started/framework/index.md @@ -1 +1,7 @@ # Framework + +## Installation + +## Concepts + +## Advanced usage diff --git a/docs/getting-started/framework/middlewares.md b/docs/getting-started/framework/middlewares.md new file mode 100644 index 0000000..1e80a21 --- /dev/null +++ b/docs/getting-started/framework/middlewares.md @@ -0,0 +1 @@ +# Middlewares diff --git a/docs/getting-started/framework/profiler.md b/docs/getting-started/framework/profiler.md index 4af5242..83336ee 100644 --- a/docs/getting-started/framework/profiler.md +++ b/docs/getting-started/framework/profiler.md @@ -1 +1,5 @@ # Profiler + +## Installation + +## Usage diff --git a/docs/getting-started/handling-data/either.md b/docs/getting-started/handling-data/either.md index eee48de..2790830 100644 --- a/docs/getting-started/handling-data/either.md +++ b/docs/getting-started/handling-data/either.md @@ -1 +1,5 @@ # Either + +## Usage + +## In the ecosystem diff --git a/docs/getting-started/handling-data/index.md b/docs/getting-started/handling-data/index.md index d5a3d1f..cf439a7 100644 --- a/docs/getting-started/handling-data/index.md +++ b/docs/getting-started/handling-data/index.md @@ -1 +1,3 @@ # Handling data + +## Installation diff --git a/docs/getting-started/handling-data/maybe.md b/docs/getting-started/handling-data/maybe.md index a15139b..104ba64 100644 --- a/docs/getting-started/handling-data/maybe.md +++ b/docs/getting-started/handling-data/maybe.md @@ -1 +1,5 @@ # Maybe + +## Usage + +## In the ecosystem diff --git a/docs/getting-started/handling-data/sequence.md b/docs/getting-started/handling-data/sequence.md index 804cff5..62a472a 100644 --- a/docs/getting-started/handling-data/sequence.md +++ b/docs/getting-started/handling-data/sequence.md @@ -1 +1,21 @@ # Sequence + +## Pipelining + +### Transformations + +### Composition + +### Filtering + +## Extracting data + +## Execution mode + +### In memory + +### Deferred + +### Lazy + +## In the ecosystem diff --git a/docs/getting-started/http.md b/docs/getting-started/http.md deleted file mode 100644 index a48f5e1..0000000 --- a/docs/getting-started/http.md +++ /dev/null @@ -1 +0,0 @@ -# HTTP App diff --git a/docs/getting-started/operating-system/clock.md b/docs/getting-started/operating-system/clock.md index f575036..6b16227 100644 --- a/docs/getting-started/operating-system/clock.md +++ b/docs/getting-started/operating-system/clock.md @@ -1 +1,9 @@ # Clock + +## Accessing time + +## Parsing time from a string + +## Calculating elapsed time + +## In the ecosystem diff --git a/docs/getting-started/operating-system/filesystem.md b/docs/getting-started/operating-system/filesystem.md index 6d41ab8..54e93f1 100644 --- a/docs/getting-started/operating-system/filesystem.md +++ b/docs/getting-started/operating-system/filesystem.md @@ -1 +1,15 @@ # Filesystem + +## Access + +### Concepts + +### Accessing files + +### Persisting files + +### Modifying file content + +## Watching for changes + +## Loading PHP files diff --git a/docs/getting-started/operating-system/http.md b/docs/getting-started/operating-system/http.md index 03fe6a2..f434eb2 100644 --- a/docs/getting-started/operating-system/http.md +++ b/docs/getting-started/operating-system/http.md @@ -1 +1,17 @@ # HTTP + +## Usage + +## Following redirections + +## Resiliency + +### Circuit breaker + +### Retry with exponential backoff + +## Traps + +### Unsent requests + +### Streaming diff --git a/docs/getting-started/operating-system/index.md b/docs/getting-started/operating-system/index.md index 6e9da66..7bf55a1 100644 --- a/docs/getting-started/operating-system/index.md +++ b/docs/getting-started/operating-system/index.md @@ -1 +1,7 @@ # Operating System + +## Installation + +## Usage + +## Configuration diff --git a/docs/getting-started/operating-system/monitoring.md b/docs/getting-started/operating-system/monitoring.md new file mode 100644 index 0000000..a9222a9 --- /dev/null +++ b/docs/getting-started/operating-system/monitoring.md @@ -0,0 +1,13 @@ +# Monitoring + +## Processes + +## Disk + +## CPU + +## Memory + +## Load average + +## Temporary directory diff --git a/docs/getting-started/operating-system/network.md b/docs/getting-started/operating-system/network.md index 05db335..e277590 100644 --- a/docs/getting-started/operating-system/network.md +++ b/docs/getting-started/operating-system/network.md @@ -1 +1,13 @@ # Network + +## Unix socket + +### Server + +### Client + +## Over the wire + +### Server + +### Client diff --git a/docs/getting-started/operating-system/php-process.md b/docs/getting-started/operating-system/php-process.md index 726678b..5a0d16b 100644 --- a/docs/getting-started/operating-system/php-process.md +++ b/docs/getting-started/operating-system/php-process.md @@ -1 +1,5 @@ # PHP Process + +## Pausing + +## Handling CLI Signals diff --git a/docs/getting-started/operating-system/processes.md b/docs/getting-started/operating-system/processes.md index f82dc85..92d5427 100644 --- a/docs/getting-started/operating-system/processes.md +++ b/docs/getting-started/operating-system/processes.md @@ -1 +1,9 @@ -# Other Processes +# Launching Processes + +## Usage + +## Streaming + +## In the ecosystem + +## SSH diff --git a/docs/getting-started/operating-system/sql.md b/docs/getting-started/operating-system/sql.md index b8b6f7b..3e56b9b 100644 --- a/docs/getting-started/operating-system/sql.md +++ b/docs/getting-started/operating-system/sql.md @@ -1 +1,11 @@ # SQL + +## Usage + +## Prepared queries + +## Filtering + +## Laziness + +## Query builder diff --git a/docs/getting-started/orm/development.md b/docs/getting-started/orm/development.md index 459110d..0cf1429 100644 --- a/docs/getting-started/orm/development.md +++ b/docs/getting-started/orm/development.md @@ -1 +1,15 @@ # Development + +## Setup + +## Persisting a new aggregate + +## Retrieving an aggregate + +## Modifying an aggregate + +## Deleting an aggregate + +## Retrieving a collection of aggregates + +## Custom types diff --git a/docs/getting-started/orm/index.md b/docs/getting-started/orm/index.md index e4653a7..4ff0a37 100644 --- a/docs/getting-started/orm/index.md +++ b/docs/getting-started/orm/index.md @@ -1,3 +1,9 @@ # ORM +## Installation + +## Example + +## Tips + *[ORM]: Object Relational Mapping diff --git a/docs/getting-started/orm/production.md b/docs/getting-started/orm/production.md index fae4ea3..9d100cc 100644 --- a/docs/getting-started/orm/production.md +++ b/docs/getting-started/orm/production.md @@ -1 +1,17 @@ # Production + +## Choose the right storage + +## SQL + +### Setup + +### Creating the tables + +## Elasticsearch + +## Filesystem + +### Local + +### S3 diff --git a/docs/getting-started/orm/testing.md b/docs/getting-started/orm/testing.md index f00b526..43cb9d3 100644 --- a/docs/getting-started/orm/testing.md +++ b/docs/getting-started/orm/testing.md @@ -1 +1,9 @@ # Testing + +## Guarantees + +## Setup + +### Filesystem + +### Elasticsearch diff --git a/docs/packages.md b/docs/packages.md index fc76c96..a590ee0 100644 --- a/docs/packages.md +++ b/docs/packages.md @@ -4,3 +4,105 @@ hide: --- # Other Packages + +## Access Control List + +### Installation + +### Usage + +## Coding standard + +### Installation + +### Usage + +## Colour + +### Installation + +### Usage + +## Cron + +### Installation + +### Usage + +## Encoding + +### Installation + +### Usage + +## Hash + +### Installation + +### Usage + +## Html + +### Installation + +### Usage + +## HTTP Authentication + +### Installation + +### Usage + +## HTTP Session + +### Installation + +### Usage + +## Json + +### Installation + +### Usage + +## Log reader + +### Installation + +### Usage + +## RabbitMQ management + +### Installation + +### Usage + +## Robots.txt + +### Installation + +### Usage + +## SSH key provider + +### Installation + +### Usage + +## URL resolver + +### Installation + +### Usage + +## Validation + +### Installation + +### Usage + +## XML + +### Installation + +### Usage diff --git a/docs/philosophy/abstractions.md b/docs/philosophy/abstractions.md index 2b510be..e88e1f6 100644 --- a/docs/philosophy/abstractions.md +++ b/docs/philosophy/abstractions.md @@ -1 +1,9 @@ # Abstractions + +## `abstract` classes + +## Composition + +## All models are wrong... + +> ...but some are useful. diff --git a/docs/philosophy/capabilities.md b/docs/philosophy/capabilities.md index b402dab..ea61c7d 100644 --- a/docs/philosophy/capabilities.md +++ b/docs/philosophy/capabilities.md @@ -1 +1,5 @@ # Capabilities + +## Ambient authority + +## This is dependency injection diff --git a/docs/philosophy/declarative.md b/docs/philosophy/declarative.md deleted file mode 100644 index a2de423..0000000 --- a/docs/philosophy/declarative.md +++ /dev/null @@ -1 +0,0 @@ -# Declarative diff --git a/docs/philosophy/development.md b/docs/philosophy/development.md new file mode 100644 index 0000000..8af3187 --- /dev/null +++ b/docs/philosophy/development.md @@ -0,0 +1,9 @@ +# Development Process + +## Type strictness + +## Versioning + +## Make it easy to use it right + +> and make it hard to use it wrong. diff --git a/docs/philosophy/explicit.md b/docs/philosophy/explicit.md index 8ef4c30..25cca22 100644 --- a/docs/philosophy/explicit.md +++ b/docs/philosophy/explicit.md @@ -1 +1,9 @@ # Explicit + +## Parsing, not validation + +## Constraints liberate, liberties constrain + +### Closed by default + +### Maintainability diff --git a/docs/philosophy/oop-fp.md b/docs/philosophy/oop-fp.md index 587b952..1f63ffd 100644 --- a/docs/philosophy/oop-fp.md +++ b/docs/philosophy/oop-fp.md @@ -1,4 +1,26 @@ # OOP & FP +## OOP + +### Back then + +### Nowadays + +## FP + +### Immutability + +### Purity + +### Totality + +### Composition + +### _Type detonation_ + +### Monads + +## False dichotomy + *[OOP]: Object Oriented Programming *[FP]: Functional Programming diff --git a/docs/philosophy/semantic.md b/docs/philosophy/semantic.md index 945ee0f..454058d 100644 --- a/docs/philosophy/semantic.md +++ b/docs/philosophy/semantic.md @@ -1 +1,7 @@ # Semantic + +## The aim + +## This is not code + +## Declarative diff --git a/docs/philosophy/simplicity.md b/docs/philosophy/simplicity.md index f7702c3..de36335 100644 --- a/docs/philosophy/simplicity.md +++ b/docs/philosophy/simplicity.md @@ -1 +1,5 @@ # Simplicity + +## Complexity vs Difficulty + +## In practice diff --git a/docs/philosophy/versioning.md b/docs/philosophy/versioning.md deleted file mode 100644 index 1ca61ba..0000000 --- a/docs/philosophy/versioning.md +++ /dev/null @@ -1 +0,0 @@ -# Versioning diff --git a/docs/testing/blackbox.md b/docs/testing/blackbox.md index 370ede2..9e03a29 100644 --- a/docs/testing/blackbox.md +++ b/docs/testing/blackbox.md @@ -1 +1,13 @@ # BlackBox + +## Installation + +## Setup + +## Sets + +## Organization + +## Tags + +## Advanced usage diff --git a/docs/testing/index.md b/docs/testing/index.md index f00b526..3799931 100644 --- a/docs/testing/index.md +++ b/docs/testing/index.md @@ -1 +1,5 @@ # Testing + +## In your project + +## In the ecosystem diff --git a/docs/testing/properties.md b/docs/testing/properties.md index d03ffb6..ed882b7 100644 --- a/docs/testing/properties.md +++ b/docs/testing/properties.md @@ -1 +1,9 @@ # Properties + +## Definition + +## They come in sets + +## Running them + +## In the ecosystem diff --git a/docs/testing/property-based-testing.md b/docs/testing/property-based-testing.md index 7311dad..760ad08 100644 --- a/docs/testing/property-based-testing.md +++ b/docs/testing/property-based-testing.md @@ -1 +1,9 @@ # Property Based Testing + +## Description + +## Examples + +### Math `add` function + +### More realistic example diff --git a/docs/testing/tests.md b/docs/testing/tests.md index 007eb95..3ea4490 100644 --- a/docs/testing/tests.md +++ b/docs/testing/tests.md @@ -1 +1,5 @@ # Tests + +## Specific scenario + +## Same scenario for multiple values diff --git a/docs/tools.md b/docs/tools.md index 376aaf0..70fe8db 100644 --- a/docs/tools.md +++ b/docs/tools.md @@ -4,3 +4,29 @@ hide: --- # Tools + +## Dependency graph + +### Installation + +### Usage + +### macOS App + +## Lab station + +### Installation + +### Usage + +## Kalmiya + +### Installation + +### Usage + +## Git release + +### Installation + +### Usage diff --git a/mkdocs.yml b/mkdocs.yml index 0121f48..5d1d66f 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,4 +1,5 @@ site_name: Innmind +site_description: The functional ecosystem repo_name: innmind/documentation nav: @@ -9,10 +10,9 @@ nav: - Semantic: philosophy/semantic.md - Simplicity: philosophy/simplicity.md - Explicit: philosophy/explicit.md - - Declarative: philosophy/declarative.md - Capabilities: philosophy/capabilities.md - Abstractions: philosophy/abstractions.md - - Versioning: philosophy/versioning.md + - Development Process: philosophy/development.md - Getting started: - getting-started/index.md - Handling data: @@ -27,15 +27,17 @@ nav: - Filesystem: getting-started/operating-system/filesystem.md - SQL: getting-started/operating-system/sql.md - PHP Process: getting-started/operating-system/php-process.md - - Other Processes: getting-started/operating-system/processes.md + - Processes: getting-started/operating-system/processes.md + - Monitoring: getting-started/operating-system/monitoring.md - Network: getting-started/operating-system/network.md - App: - - CLI: getting-started/cli.md - - HTTP: getting-started/http.md + - CLI: getting-started/app/cli.md + - HTTP: getting-started/app/http.md - Framework: - getting-started/framework/index.md - CLI: getting-started/framework/cli.md - HTTP: getting-started/framework/http.md + - Middlewares: getting-started/framework/middlewares.md - Profiler: getting-started/framework/profiler.md - Extensions: getting-started/framework/extensions.md - ORM: From 6237df79ff47c42c490122f4f9689d723af74a97 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 21 Apr 2024 17:25:42 +0200 Subject: [PATCH 04/68] update php code style --- docs/assets/stylesheets/extra.css | 18 ++++++++++++++++++ mkdocs.yml | 5 +++++ 2 files changed, 23 insertions(+) diff --git a/docs/assets/stylesheets/extra.css b/docs/assets/stylesheets/extra.css index 94877a4..2157b1a 100644 --- a/docs/assets/stylesheets/extra.css +++ b/docs/assets/stylesheets/extra.css @@ -8,3 +8,21 @@ :root { --md-code-font: "Monaspace Neon"; } + +:root .language-php > * { + --md-code-hl-number-color: #f78c6c; + --md-code-hl-function-color: #82aaff; + --md-code-hl-operator-color: #89ddff; + --md-code-hl-constant-color: #c792ea; + --md-code-hl-string-color: #c3e88d; + --md-code-hl-punctuation-color: #89ddff; + --md-code-hl-keyword-color: #c792ea; + --md-code-hl-variable-color: #e8f9f9; + --md-code-hl-comment-color: #546e7a; + --md-code-bg-color: #263238; + --md-code-fg-color: #ffcb6b; +} + +.language-php .na { + --md-code-hl-variable-color: #82aaff; +} diff --git a/mkdocs.yml b/mkdocs.yml index 5d1d66f..e1e3ecf 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -110,6 +110,11 @@ markdown_extensions: anchor_linenums: true line_spans: __span pygments_lang_class: true + extend_pygments_lang: + - name: php + lang: php + options: + startinline: true - pymdownx.inlinehilite - pymdownx.snippets - pymdownx.superfences From f2fa2307ec69e87280c3d85a19081ec42531bc32 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 21 Apr 2024 17:47:02 +0200 Subject: [PATCH 05/68] move use cases to mkdocs --- README.md | 8 -------- .../use-cases/copy-local-directory-to-s3.md | 9 ++++----- docs/use-cases/index.md | 3 +++ .../persist-crawled-links-to-database.md | 16 ++++++++-------- .../use-cases/persist-sql-result-to-file.md | 13 ++++--------- .../use-cases/serve-s3-file.md | 15 ++++++++++----- .../use-cases/upload-local-file.md | 11 ++++------- mkdocs.yml | 7 +++++++ 8 files changed, 40 insertions(+), 42 deletions(-) rename use_cases/copy_local_directory_to_s3.md => docs/use-cases/copy-local-directory-to-s3.md (63%) create mode 100644 docs/use-cases/index.md rename use_cases/persist_crawled_links_to_database.md => docs/use-cases/persist-crawled-links-to-database.md (72%) rename use_cases/persist_sql_result_to_file.md => docs/use-cases/persist-sql-result-to-file.md (76%) rename use_cases/serve_s3_file.md => docs/use-cases/serve-s3-file.md (85%) rename use_cases/upload_local_file.md => docs/use-cases/upload-local-file.md (74%) diff --git a/README.md b/README.md index 84c8fa4..8d6a4ac 100644 --- a/README.md +++ b/README.md @@ -5,11 +5,3 @@ Most [packages](packages.md) you'll find in this organization are here to advanc You can view the dependencies between the packages via this [macOS application](https://github.com/Innmind/macOS-tooling). > **Note** However some are here to solve recurring problems you may find in a professional context, or for intellectual curiosity. - -## Use cases - -- [Upload a local file via HTTP](use_cases/upload_local_file.md) -- [Copy a local directory to S3](use_cases/copy_local_directory_to_s3.md) -- [Serve a S3 file via an HTTP server](use_cases/serve_s3_file.md) -- [Persist a SQL result to a file](use_cases/persist_sql_result_to_file.md) -- [Persist crawled links to a database](use_cases/persist_crawled_links_to_database.md) diff --git a/use_cases/copy_local_directory_to_s3.md b/docs/use-cases/copy-local-directory-to-s3.md similarity index 63% rename from use_cases/copy_local_directory_to_s3.md rename to docs/use-cases/copy-local-directory-to-s3.md index 2482a19..562193e 100644 --- a/use_cases/copy_local_directory_to_s3.md +++ b/docs/use-cases/copy-local-directory-to-s3.md @@ -1,15 +1,16 @@ # Copy a local directory to S3 +```sh +composer require innmind/s3:~4.1 +``` + ```php -use Innmind\OperatingSystem\Factory; use Innmind\S3; use Innmind\Url\{ Url, Path, }; -$os = Factory::build(); - $bucket = S3\Factory::of($os)->build( Url::of('https://acces_key:acces_secret@bucket-name.s3.region-name.scw.cloud/'), S3\Region::of('region-name'), @@ -22,5 +23,3 @@ $directory = $os ->root(); $s3->add($directory); ``` - -> **Note** This example requires [`innmind/operating-system`](https://packagist.org/packages/innmind/operating-system) and [`innmind/s3`](https://packagist.org/packages/innmind/s3). diff --git a/docs/use-cases/index.md b/docs/use-cases/index.md new file mode 100644 index 0000000..ca8aae1 --- /dev/null +++ b/docs/use-cases/index.md @@ -0,0 +1,3 @@ +# Use cases + +In this section you'll find a set of use cases using packages already shown in previous sections and [a few other new ones](../packages.md). diff --git a/use_cases/persist_crawled_links_to_database.md b/docs/use-cases/persist-crawled-links-to-database.md similarity index 72% rename from use_cases/persist_crawled_links_to_database.md rename to docs/use-cases/persist-crawled-links-to-database.md index f5ee3be..34401f1 100644 --- a/use_cases/persist_crawled_links_to_database.md +++ b/docs/use-cases/persist-crawled-links-to-database.md @@ -1,10 +1,13 @@ # Persist crawled links to a database +```sh +composer require innmind/html:~6.3 +``` + ```php -use Innmind\OperatingSystem\Factory; use Innmind\Http\{ - Message\Request\Request, - Message\Method, + Request, + Method, ProtocolVersion, }; use Innmind\Html\{ @@ -20,15 +23,14 @@ use Formal\AccessLayer\{ Row, }; -$os = Factory::build(); -$reader = Reader::default(); +$read = Reader::default(); $sql = $os ->remote() ->sql(Url::of('mysql://127.0.0.1:3306/database_name')); $_ = $os ->remote() - ->http()(new Request( + ->http()(Request::of( Url::of('https://some-server.com/page.html') Method::get, ProtocolVersion::v11, @@ -46,5 +48,3 @@ $_ = $os Row::of(['column_name' => $href]), ))); ``` - -> **Note** This example requires [`innmind/operating-system`](https://packagist.org/packages/innmind/operating-system) and [`innmind/html`](https://packagist.org/packages/innmind/html). diff --git a/use_cases/persist_sql_result_to_file.md b/docs/use-cases/persist-sql-result-to-file.md similarity index 76% rename from use_cases/persist_sql_result_to_file.md rename to docs/use-cases/persist-sql-result-to-file.md index efbc0a7..b55d790 100644 --- a/use_cases/persist_sql_result_to_file.md +++ b/docs/use-cases/persist-sql-result-to-file.md @@ -1,11 +1,10 @@ # Persist a SQL result to a file ```php -use Innmind\OperatingSystem\Factory; -use Innmind\Filesystem\File\{ +use Innmind\Filesystem\{ File, - Content\Lines, - Content\Line, + File\Content, + File\Content\Line, }; use Innmind\Url\{ Url, @@ -17,8 +16,6 @@ use Formal\AccessLayer\{ Table\Name, }; -$os = Factory::build(); - $sql = $os ->remote() ->sql(Url::of('mysql://127.0.0.1:3306/database_name')); @@ -28,7 +25,7 @@ $_ = $os ->mount(Path::of('some directory/')) ->add(File::named( 'results.csv', - Lines::of( + Content::ofLines( $sql(Select::onDemand(Name::of('table_name'))) ->map( static fn($row) => $row @@ -42,5 +39,3 @@ $_ = $os ``` Since the sql query is lazy (thanks to `::onDemand()`) you can persist a very long result without loading everything in memory. - -> **Note** This example requires [`innmind/operating-system`](https://packagist.org/packages/innmind/operating-system). diff --git a/use_cases/serve_s3_file.md b/docs/use-cases/serve-s3-file.md similarity index 85% rename from use_cases/serve_s3_file.md rename to docs/use-cases/serve-s3-file.md index c531922..ffe25ff 100644 --- a/use_cases/serve_s3_file.md +++ b/docs/use-cases/serve-s3-file.md @@ -1,5 +1,9 @@ # Serve a S3 file via an HTTP server +```sh +composer require innmind/s3:~4.1 +``` + ```php use Innmind\Framework\{ Application, @@ -12,9 +16,9 @@ use Innmind\Filesystem\{ Name, }; use Innmind\Http\{ - Message\ServerRequest, - Message\Response\Response, - Message\StatusCode, + ServerRequest, + Response, + Response\StatusCode, Headers, Header\ContentType, }; @@ -39,7 +43,7 @@ new class extends Http { ->s3 ->get(Name::of('some file.txt')) ->match( - static fn($file) => new Response( + static fn($file) => Response::of( StatusCode::ok, $request->protocolVersion(), Headers::of(ContentType::of( @@ -60,4 +64,5 @@ new class extends Http { }; ``` -> **Note** This example requires [`innmind/framework`](https://packagist.org/packages/innmind/framework) and [`innmind/s3`](https://packagist.org/packages/innmind/s3). +!!! tip + Head to the [framework section](../getting-started/framework/index.md) to learn how to call this server. diff --git a/use_cases/upload_local_file.md b/docs/use-cases/upload-local-file.md similarity index 74% rename from use_cases/upload_local_file.md rename to docs/use-cases/upload-local-file.md index b991975..3b814ec 100644 --- a/use_cases/upload_local_file.md +++ b/docs/use-cases/upload-local-file.md @@ -1,7 +1,6 @@ # Upload a local file via HTTP ```php -use Innmind\OperatingSystem\Factory; use Innmind\Filesystem\Name; use Innmind\Http\{ Message\Request\Request, @@ -17,8 +16,6 @@ use Innmind\Url\{ Path, }; -$os = Factory::build(); - $boundary = Boundary::uuid(); $_ = $os ->filesystem() @@ -27,12 +24,14 @@ $_ = $os ->flatMap( static fn($file) => $os ->remote() - ->http()(new Request( + ->http()(Request::of( Url::of('https://some-server.com/api/upload'), Method::post, ProtocolVersion::v11, Headers::of(ContentType::of('multipart', 'form-data', $boundary)), - Multipart::boundary($boundary)->withFile('some[file]', $file), + Multipart::boundary($boundary) + ->withFile('some[file]', $file) + ->asContent(), )) ->maybe(), ) @@ -41,5 +40,3 @@ $_ = $os static fn() => throw new \Exception('No file or failed to upload'), ); ``` - -> **Note** This example requires [`innmind/operating-system`](https://packagist.org/packages/innmind/operating-system). diff --git a/mkdocs.yml b/mkdocs.yml index e1e3ecf..2c0deef 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -52,6 +52,13 @@ nav: - Queues: getting-started/concurrency/queues.md - Inter Process Communication: getting-started/concurrency/ipc.md - Distributed: getting-started/concurrency/distributed.md + - Use cases: + - use-cases/index.md + - Upload a local file via HTTP: use-cases/upload-local-file.md + - Copy a local directory to S3: use-cases/copy-local-directory-to-s3.md + - Serve a S3 file via an HTTP server: use-cases/serve-s3-file.md + - Persist a SQL result to a file: use-cases/persist-sql-result-to-file.md + - Persist crawled links to a database: use-cases/persist-crawled-links-to-database.md - Testing: - testing/index.md - Property Based testing: testing/property-based-testing.md From a934506126d5052faf7aa9668bf8fd0bd81505f5 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 21 Apr 2024 17:58:22 +0200 Subject: [PATCH 06/68] add archive example --- docs/use-cases/creating-archive-directory.md | 30 ++++++++++++++++++++ mkdocs.yml | 1 + 2 files changed, 31 insertions(+) create mode 100644 docs/use-cases/creating-archive-directory.md diff --git a/docs/use-cases/creating-archive-directory.md b/docs/use-cases/creating-archive-directory.md new file mode 100644 index 0000000..dba8610 --- /dev/null +++ b/docs/use-cases/creating-archive-directory.md @@ -0,0 +1,30 @@ +# Creating an archive of a directory + +```sh +composer require innmind/encoding:~1.0 +``` + +```php +use Innmind\Filesystem\Name; +use Innmind\Url\Path; +use Innmind\Encoding\{ + Gzip, + Tar, +}; + +$tar = $os + ->filesystem() + ->mount(Path::of('some/directory/')) + ->get(Name::of('data')) + ->map(Tar::encode($os->clock())) + ->map(Gzip::compress()) + ->match( + static fn($file) => $file, + static fn() => throw new \RuntimeException('Data not found'), + ); +``` + +Here `$tar` represents a `.tar.gz` file containing all the files and directories from `some/directory/data/`. + +!!! info + The content of the `$tar` file is lazily computed meaning you can create an archive larger than the allowed PHP memory. diff --git a/mkdocs.yml b/mkdocs.yml index 2c0deef..a0549bd 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -59,6 +59,7 @@ nav: - Serve a S3 file via an HTTP server: use-cases/serve-s3-file.md - Persist a SQL result to a file: use-cases/persist-sql-result-to-file.md - Persist crawled links to a database: use-cases/persist-crawled-links-to-database.md + - Creating an archive of a directory: use-cases/creating-archive-directory.md - Testing: - testing/index.md - Property Based testing: testing/property-based-testing.md From 328ca8174bdcff73841b8239730e32a774c0aed1 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 21 Apr 2024 18:24:15 +0200 Subject: [PATCH 07/68] add both dark and light color scheme for php code --- docs/assets/stylesheets/extra.css | 117 ++++++++++++++++++++++++++---- 1 file changed, 101 insertions(+), 16 deletions(-) diff --git a/docs/assets/stylesheets/extra.css b/docs/assets/stylesheets/extra.css index 2157b1a..e4aa2d4 100644 --- a/docs/assets/stylesheets/extra.css +++ b/docs/assets/stylesheets/extra.css @@ -9,20 +9,105 @@ --md-code-font: "Monaspace Neon"; } -:root .language-php > * { - --md-code-hl-number-color: #f78c6c; - --md-code-hl-function-color: #82aaff; - --md-code-hl-operator-color: #89ddff; - --md-code-hl-constant-color: #c792ea; - --md-code-hl-string-color: #c3e88d; - --md-code-hl-punctuation-color: #89ddff; - --md-code-hl-keyword-color: #c792ea; - --md-code-hl-variable-color: #e8f9f9; - --md-code-hl-comment-color: #546e7a; - --md-code-bg-color: #263238; - --md-code-fg-color: #ffcb6b; -} - -.language-php .na { - --md-code-hl-variable-color: #82aaff; +:root { + --light-md-code-hl-number-color: #f76d47; + --light-md-code-hl-function-color: #6384b9; + --light-md-code-hl-operator-color: #39adb5; + --light-md-code-hl-constant-color: #7c4dff; + --light-md-code-hl-string-color: #9fc06f; + --light-md-code-hl-punctuation-color: #39adb5; + --light-md-code-hl-keyword-color: #7c4dff; + --light-md-code-hl-variable-color: #80cbc4; + --light-md-code-hl-comment-color: #ccd7da; + --light-md-code-bg-color: #fafafa; + --light-md-code-fg-color: #ffb62c; + --light-md-code-hl-variable-color: #6384b9; + --dark-md-code-hl-number-color: #f78c6c; + --dark-md-code-hl-function-color: #82aaff; + --dark-md-code-hl-operator-color: #89ddff; + --dark-md-code-hl-constant-color: #c792ea; + --dark-md-code-hl-string-color: #c3e88d; + --dark-md-code-hl-punctuation-color: #89ddff; + --dark-md-code-hl-keyword-color: #c792ea; + --dark-md-code-hl-variable-color: #e8f9f9; + --dark-md-code-hl-comment-color: #546e7a; + --dark-md-code-bg-color: #263238; + --dark-md-code-fg-color: #ffcb6b; + --dark-md-code-hl-variable-color: #82aaff; +} + +@media (prefers-color-scheme: light) { + .language-php > * { + --md-code-hl-number-color: var(--light-md-code-hl-number-color); + --md-code-hl-function-color: var(--light-md-code-hl-function-color); + --md-code-hl-operator-color: var(--light-md-code-hl-operator-color); + --md-code-hl-constant-color: var(--light-md-code-hl-constant-color); + --md-code-hl-string-color: var(--light-md-code-hl-string-color); + --md-code-hl-punctuation-color: var(--light-md-code-hl-punctuation-color); + --md-code-hl-keyword-color: var(--light-md-code-hl-keyword-color); + --md-code-hl-variable-color: var(--light-md-code-hl-variable-color); + --md-code-hl-comment-color: var(--light-md-code-hl-comment-color); + --md-code-bg-color: var(--light-md-code-bg-color); + --md-code-fg-color: var(--light-md-code-fg-color); + } + + .language-php .na { + --md-code-hl-variable-color: var(--light-md-code-hl-variable-color); + } +} + +[data-md-color-media="(prefers-color-scheme: light)"] .language-php > * { + --md-code-hl-number-color: var(--light-md-code-hl-number-color); + --md-code-hl-function-color: var(--light-md-code-hl-function-color); + --md-code-hl-operator-color: var(--light-md-code-hl-operator-color); + --md-code-hl-constant-color: var(--light-md-code-hl-constant-color); + --md-code-hl-string-color: var(--light-md-code-hl-string-color); + --md-code-hl-punctuation-color: var(--light-md-code-hl-punctuation-color); + --md-code-hl-keyword-color: var(--light-md-code-hl-keyword-color); + --md-code-hl-variable-color: var(--light-md-code-hl-variable-color); + --md-code-hl-comment-color: var(--light-md-code-hl-comment-color); + --md-code-bg-color: var(--light-md-code-bg-color); + --md-code-fg-color: var(--light-md-code-fg-color); +} + +[data-md-color-media="(prefers-color-scheme: light)"] .language-php .na { + --md-code-hl-variable-color: var(--light-md-code-hl-variable-color); +} + +@media (prefers-color-scheme: dark) { + .language-php > * { + --md-code-hl-number-color: var(--dark-md-code-hl-number-color); + --md-code-hl-function-color: var(--dark-md-code-hl-function-color); + --md-code-hl-operator-color: var(--dark-md-code-hl-operator-color); + --md-code-hl-constant-color: var(--dark-md-code-hl-constant-color); + --md-code-hl-string-color: var(--dark-md-code-hl-string-color); + --md-code-hl-punctuation-color: var(--dark-md-code-hl-punctuation-color); + --md-code-hl-keyword-color: var(--dark-md-code-hl-keyword-color); + --md-code-hl-variable-color: var(--dark-md-code-hl-variable-color); + --md-code-hl-comment-color: var(--dark-md-code-hl-comment-color); + --md-code-bg-color: var(--dark-md-code-bg-color); + --md-code-fg-color: var(--dark-md-code-fg-color); + } + + .language-php .na { + --md-code-hl-variable-color: var(--dark-md-code-hl-variable-color); + } +} + +[data-md-color-media="(prefers-color-scheme: dark)"] .language-php > * { + --md-code-hl-number-color: var(--dark-md-code-hl-number-color); + --md-code-hl-function-color: var(--dark-md-code-hl-function-color); + --md-code-hl-operator-color: var(--dark-md-code-hl-operator-color); + --md-code-hl-constant-color: var(--dark-md-code-hl-constant-color); + --md-code-hl-string-color: var(--dark-md-code-hl-string-color); + --md-code-hl-punctuation-color: var(--dark-md-code-hl-punctuation-color); + --md-code-hl-keyword-color: var(--dark-md-code-hl-keyword-color); + --md-code-hl-variable-color: var(--dark-md-code-hl-variable-color); + --md-code-hl-comment-color: var(--dark-md-code-hl-comment-color); + --md-code-bg-color: var(--dark-md-code-bg-color); + --md-code-fg-color: var(--dark-md-code-fg-color); +} + +[data-md-color-media="(prefers-color-scheme: dark)"] .language-php .na { + --md-code-hl-variable-color: var(--dark-md-code-hl-variable-color); } From f512a44621877b7c096431c5cb968c4b7103d88f Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 27 Apr 2024 10:25:04 +0200 Subject: [PATCH 08/68] add permalinks --- mkdocs.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mkdocs.yml b/mkdocs.yml index a0549bd..a53a575 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -131,6 +131,8 @@ markdown_extensions: - pymdownx.details: - pymdownx.tabbed: alternate_style: true + - toc: + permalink: true extra_css: - assets/stylesheets/extra.css From 1fe51876fd58850a09d69b3496de91fe72e90bfe Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 27 Apr 2024 11:19:39 +0200 Subject: [PATCH 09/68] add introduction --- docs/index.md | 63 +++++++++++++++++++++++++++++++++++---------------- 1 file changed, 43 insertions(+), 20 deletions(-) diff --git a/docs/index.md b/docs/index.md index 38be324..53dee80 100644 --- a/docs/index.md +++ b/docs/index.md @@ -4,28 +4,51 @@ hide: - toc --- -# Welcome to MkDocs +# Welcome to Innmind -For full documentation visit [mkdocs.org](https://www.mkdocs.org). +Innmind bridges Object Oriented Programming and Functional Programming in a coherent ecosystem. -## Commands +This documentation will show you how to move from simple scripts all the way to distributed systems (and all the steps in-between) by using a single way to code. -* `mkdocs new [dir-name]` - Create a new project. -* `mkdocs serve` - Start the live-reloading docs server. -* `mkdocs build` - Build the documentation site. -* `mkdocs -h` - Print help message and exit. +By following the links at the bottom of each page you'll progressively learn your way through Innmind. While the [Philosophy](philosophy/index.md) section is an important part you can skip to the [Getting started](getting-started/index.md) section if you want to feel what it's like to code with Innmind. -## Project layout +??? example "Sneak peek" + The code below shows how the declarative nature of Innmind abstracts away the complexity. -```php - - */ -function t(mixed $t): mixed -{ - return [$t]; -} -``` + ```php + $os + ->filesystem() + ->mount(Path::of('somewhere/data/')) + ->get(Name::of('avatars')) + ->keep(Instance::of(Directory::class)) + ->map( + static fn($directory) => $directory->add(File::named( + 'users.csv', + Content::ofLines( + $orm + ->repository(User::class) + ->all() + ->map(static fn(User $user) => $user->toArray()) + ->map(static fn(array $user) => \implode(',', $user)) + ->map(Str::of(...)) + ->map(Line::of(...)), + ), + )), + ) + ->map(Tar::encode($os->clock())) + ->map(Gzip::encode()) + ->match( + static fn(File $tar) => Response::of( + StatusCode::ok, + ProtocolVersion::v11, + null, + $tar->content(), + ), + static fn() => Response::of( + StatusCode::noContent, + ProtocolVersion::v11, + ), + ); + ``` + + This example sends an HTTP response of a `.tar.gz` containing all files contained in a `avatars` directory and with a CSV of all users stored in a database. All this is done with the guarantee that you won't run in "out of memory" errors, and other advantages you'll learn throughout this documentation. From 686738cd457dd974fd095ae68b057f7d724161ae Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 27 Apr 2024 11:45:21 +0200 Subject: [PATCH 10/68] add philosophy index --- docs/philosophy/index.md | 14 ++++++++++++++ mkdocs.yml | 1 + 2 files changed, 15 insertions(+) diff --git a/docs/philosophy/index.md b/docs/philosophy/index.md index a681198..31853c1 100644 --- a/docs/philosophy/index.md +++ b/docs/philosophy/index.md @@ -1 +1,15 @@ # Philosophy + +The ultimate goal of this organization is to verify [Antonio Damasio](https://en.wikipedia.org/wiki/Antonio_Damasio)'s theory of consciousness[^1]. + +While this objective doesn't directly matter for your projects it structures this ecosystem in a big way: + +_Innmind itself tries to solve a problem._ + +This is why all the packages fits together to help solve bigger and bigger problems. It also means it won't go away while the goal is not reached. And since the goal may even be unreachable, Innmind is here to stay! + +This also enforces 2 things. Abstractions need to be extremely robust to safely build higher abstractions. And they need to be reusable outside this project (to avoid being wasted in case the goal is not reachable). + +All the following sections will describe the principles behind the abstractions robustness. + +[^1]: You can learn more in this [french article](https://github.com/Innmind/Research-N-Development/blob/master/Papers/Sur%20la%20conscience.md) diff --git a/mkdocs.yml b/mkdocs.yml index a53a575..f664a11 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -133,6 +133,7 @@ markdown_extensions: alternate_style: true - toc: permalink: true + - footnotes extra_css: - assets/stylesheets/extra.css From 51a24c0c306911920698651bbd4d1cd88e734e63 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 27 Apr 2024 15:34:30 +0200 Subject: [PATCH 11/68] mention familiarity with other modern languages --- docs/index.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/index.md b/docs/index.md index 53dee80..c5a7f72 100644 --- a/docs/index.md +++ b/docs/index.md @@ -12,6 +12,8 @@ This documentation will show you how to move from simple scripts all the way to By following the links at the bottom of each page you'll progressively learn your way through Innmind. While the [Philosophy](philosophy/index.md) section is an important part you can skip to the [Getting started](getting-started/index.md) section if you want to feel what it's like to code with Innmind. +If you've seen modern Java, C#, Rust, Swift and co you should find the Innmind code very familiar. + ??? example "Sneak peek" The code below shows how the declarative nature of Innmind abstracts away the complexity. From 0cce6ff4955bbd90e1b02c462d8b26d6a17cc0be Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 27 Apr 2024 17:35:45 +0200 Subject: [PATCH 12/68] add OOP & FP --- docs/philosophy/oop-fp.md | 120 +++++++++++++++++++++++++++++++++++++- 1 file changed, 117 insertions(+), 3 deletions(-) diff --git a/docs/philosophy/oop-fp.md b/docs/philosophy/oop-fp.md index 1f63ffd..63b975f 100644 --- a/docs/philosophy/oop-fp.md +++ b/docs/philosophy/oop-fp.md @@ -2,25 +2,139 @@ ## OOP -### Back then +Originally this paradigm was intended to represent the behaviour of _living cells_ (objects) that interact with each other via message passing. Each cell/object is supposed to be a closed unit of compute. -### Nowadays +Innmind follows this principle by using closed (aka `final`) classes with no getter/setter method, each method express an action. + +There are 2 main kind of objects: the ones representing data with their associated behaviours (aka methods) and the ones expressing actions (usually with only the `__invoke` method). + +The _bigger idea_ of OOP mentioned by [Alan Kay](https://en.wikipedia.org/wiki/Alan_Kay) of message passing is fulfilled by the [Actor Model](../getting-started/concurrency/distributed.md#actor-model). ## FP +This is a more mathematical approach to building programs that has gained a lot of traction for the past few years. + +Innmind mainly use the principle described below, but FP as a whole has a lot more. + ### Immutability +You already use immutable data without even realising it. For example if you do `$result = str_replace($search, $replace, $subject)`, the call of the function doesn't modify the values inside `$search`, `$replace` or `$subject` but returns a new value `$result`. This is in essence immutability, you only return new values. + +This allows to have less things to think about when calling a method. You know for sure the data you pass in to a function won't change. And inside a function you know that manipulating the data passed in won't have side effects outside of your scope. + +The immutability of data applies to primitive values but also to objects. A call to a method will return a new object, and the initial object it kept as is. + +Innmind uses immutable data everywhere possible. + ### Purity +This concept applies to functions; may it be anonymous functions, named functions or methods. + +A function is considered pure if it has no side effects. A side effect may be altering state or doing I/O. This means that a function can't use a global variable, print something to the screen or read something on the filesystem. + +In other words a pure function only interacts with the immutable arguments passed in and returns an immutable value. + +Just like Immutability this allows to have less things to think about. By modifying/calling a pure function you know you won't break an unforeseen part of your program. + ### Totality +A function is considered _total_ if it can return value for any combination of arguments it accepts. + +For example the function `divide(int, int): float` is not total because it will have to throw an exception for a division by `0`. On the other hand `divide(int, int): ?float` is total because it can return `null` in case of a division by `0`. + +The advantage of using total functions is that a [static analysis tool](development.md#type-strictness) can automatically check all the combinations to make sure your programm won't crash. It eliminates the need to write tests for the exceptions or the surprises of the runtime. + +Innmind heavily relies on this design to reduce the mental load of making sure every unhappy path is covered. + +??? info "Exceptions" + Innmind also relies on good old `Exception`s for cases where the program can't be recovered. But since it can't be recovered you don't have to think about them, that's also why they're not documented. + + It somewhat follows the `Let it crash` approach of [Erlang](https://www.erlang.org). + ### Composition +This allows to extend the behaviour of a function without knowing its implementation. And this is completely transparent for the caller of such functions. + +An example is an HTTP client (1) that provides a base implementation to do call via `curl` and the `logger`, `followRedirections` and `circuitBreaker` decorators. You can compose them any way you wish: +{.annotate} + +1. such as [`innmind/http-transport`](https://github.com/Innmind/HttpTransport) + +- `logger(followRedirections(curl))` will only log the user calls and is unaware if the redirections are foolowed +- `followRedirections(logger(curl))` will log the user calls and every redirections +- `circuitBreaker(logger(curl))` will not log calls to a domain that has previously failed +- etc... + +The big advantage is that you can compose them _locally_ depending on your needs (1). +{.annotate} + +1. As opposed to the inheritance approach where you're limited by the statically defined combinations exposed + +Innmind heavily uses composition to adapt behaviours locally and allows you to compose the base implementations the way you wish. + +??? info + The interesting discovery after many years of using composition with Innmind is that the higher the abstractions the more possibilities it offers. + ### _Type detonation_ +This means computing a concrete value. But _detonating_ too early exposes some problems. + +For example, the math operation of the square of the square root of a number should return the same number. But if the type is _detonated_ at each function `square(squareRoot(2))` won't return `2`(1). +{.annotate} + +1. `sqrt(2)**2` will return `2.0000000000000004` + +By not _detonating_ too early the abstractions can do some optimisations on your behalf without even realising it (1). This is done by returning intermediate representations of the operations that needs to be done. +{.annotate} + +1. For example [`innmind/math`](https://github.com/Innmind/Math) uses objects to represents numbers that optimise the `square(squareRoot(2))` in order to compute `2`. Or [`innmind/http-transport`](https://github.com/Innmind/HttpTransport) that can [run requests concurrently](../getting-started/concurrency/http.md). + +In essence this _lazyness_ allows Innmind to optimise some operations. + ### Monads +Monads are the culmination of the designs described above and are the cornerstone of this ecosystem. + +They're data structures classes with at least 2 methods: `map` and `flatMap`. + +- `map` will return a new monad of the same class with the data contained in it modified via the function passed to `map`. +- `flatMap` is similar to `map` except that the function passed to it must return a monad. + +Said like this, monads are very abstract concepts. So here's an example of the simplest monad, the `Identity`: + +=== "Identity monad" + ```php + $value = Identity::of(1) + ->map(fn($value) => $value + 1) + ->flatMap(fn($value) => Identity::of($value * 2)) + ->unwrap(); + $value === 4; // true + ``` + +=== "Plain old PHP" + ```php + $value = 1; + $value = $value + 1; + $value = $value * 2; + $value === 4; // true + ``` + +While this example may not seem to provide much value, these structures are extremly powerful as it will be shown in [Getting started](../getting-started/index.md). + +??? tip "Type detonation" + [Detonating](#type-detonation) a monad means calling a method that returns something else than a monad. + ## False dichotomy -*[OOP]: Object Oriented Programming +When choosing our tools we are usually presented 2 choices: Hype vs Boring technologies, OOP vs FP, etc... with the impression that we can only chose one. + +Innmind uses both OOP and FP to take advantages from both worlds. + +The easiness of combining data with associated methods and handling of multiple data (1) of OOP. The ease of mind of FP to only have to deal with the code in front of you (2). +{.annotate} + +1. such as socket servers +2. there's little chance to break the code on the other side of a program + +*[OOP]: Object-Oriented Programming *[FP]: Functional Programming From 8e52a8ecdde9c8507d7b05b779ec0f3e4836dd5d Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 27 Apr 2024 17:35:56 +0200 Subject: [PATCH 13/68] add semantic --- docs/philosophy/semantic.md | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/docs/philosophy/semantic.md b/docs/philosophy/semantic.md index 454058d..4db5c2c 100644 --- a/docs/philosophy/semantic.md +++ b/docs/philosophy/semantic.md @@ -2,6 +2,41 @@ ## The aim +A good semantic allows to communicate an idea quickly by _compressing the information_. For example, the word _cat_ caries a lot more information and in a more comprehensive way than _a set of atoms forming a small 4 legged animal with whiskers_. + +By establishing a good vocabulary it's possible to convey more and more complex information in a relatively constant space. + ## This is not code +```php +$os + ->filesystem() + ->mount(Path::of('folder/')) + ->get(Name::of('file')) + ->keep(Instance::of(File::class)) + ->match( + static fn($file) => $file + ->content() + ->lines() + ->forech(static fn($line) => echo $line->toString()), + static fn() => echo 'unknown file', + ); +``` + +With this example we see that it's possible to understand the result of a program without knowing how it is executed. + +Code was initially a way to tell the machine the steps to follow to reach a result. But the more we move up through the abstractions (languages included) the farther away we get to tell the machine the exact steps. + +The more the abstractions the more we need to communicate with other developers in order to build programs. + +Code is now a formalised language between humans that has the side effect of being runnable by machines. + ## Declarative + +Imperative code is telling the machine **how** to do things. While Declarative is telling **what** to do. + +A concrete example of this is the difference between an `array` and the [`Sequence` monad](../getting-started/handling-data/sequence.md). With an array it's easy to handle data as it's assigning values for indices, but it's not possible to handle an infinite stream of values (as it requires to use generators). On the other hand the `Sequence` only allows to describe the transitions the values must follow, you have no say on the way the values are assigned internally. + +This allows the `Sequence` to have multiple internal representations. It can work just like an `array` with the same assignment logic, or it can work with an infinite stream of values. The choice lies with the one creating the `Sequence`, any use of it is the same afterward. + +It's by this mechanism that this ecosystem can grow while keeping the complexity under control. From 12a8146418f056ba4558382099324e22ba1c0047 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 27 Apr 2024 17:36:20 +0200 Subject: [PATCH 14/68] add simplicity --- docs/philosophy/simplicity.md | 36 +++++++++++++++++++++++++++++++++++ mkdocs.yml | 2 ++ 2 files changed, 38 insertions(+) diff --git a/docs/philosophy/simplicity.md b/docs/philosophy/simplicity.md index de36335..baa1462 100644 --- a/docs/philosophy/simplicity.md +++ b/docs/philosophy/simplicity.md @@ -2,4 +2,40 @@ ## Complexity vs Difficulty +We tend to use simple and easy or difficult and complex interchangeably. But they're very much different. + +Complexity is a objective scale (1) of a number of parts of a system and the number of interactions between each parts. +{.annotate} + +1. with Simplicity being on one end of this scale + +Difficulty is a subjective scale related to your familiarity with a subject. By familiarity ear the number of time you've done some task. + +A general example of this difference is an electric circuit to light a bulb: + +- it is _simple_ to use, you only need to be aware of the switch to light the bulb (1) + {.annotate} + + 1. even with many switches to light the same bulb the complexity is the same + +- it is _complex_ to build such circuit (1) + {.annotate} + + 1. especially with mutliple switches + +- it is _difficult_ for a child to build such circuit +- it is _easy_ for an electrician to build such circuit + +Innmind heavily leans toward simplicity. Even if at times it doesn't feel easy. + ## In practice + +The [Filesystem package](../getting-started/filesystem/index.md) was bit (in an early version) for mistaking easyness by simplicity. + +The `Adapter` interface has a `get` method to return a file. Initially the argument passed to it was a `string` to represent the file name. But months later when building an [S3](https://github.com/Innmind/S3) abstraction for this interface it wasn't clear if a path could be passed in the string. + +The easiness of using a `string` brought complexity to the implementation to make sure all adapters behave the same way. And also brought difficulty to the user when switching an adapter for another, having to deal with the inconsistencies. + +The `string` was later replaced by the a class named `Name`. Any `Adapter` implementation has to check its behaviour to understand what's possible, no need to be aware of other implementations anymore. + +You'll find all kind of classes in this ecosystem that encapsulate values to reach this kind of simplicity. diff --git a/mkdocs.yml b/mkdocs.yml index f664a11..0fa1698 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -125,6 +125,8 @@ markdown_extensions: startinline: true - pymdownx.inlinehilite - pymdownx.snippets + - attr_list + - md_in_html - pymdownx.superfences - abbr - admonition From 81a46322b9f810627abae9886361443087464926 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 27 Apr 2024 17:42:36 +0200 Subject: [PATCH 15/68] rearrange the home page --- docs/index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/index.md b/docs/index.md index c5a7f72..104dcda 100644 --- a/docs/index.md +++ b/docs/index.md @@ -10,9 +10,7 @@ Innmind bridges Object Oriented Programming and Functional Programming in a cohe This documentation will show you how to move from simple scripts all the way to distributed systems (and all the steps in-between) by using a single way to code. -By following the links at the bottom of each page you'll progressively learn your way through Innmind. While the [Philosophy](philosophy/index.md) section is an important part you can skip to the [Getting started](getting-started/index.md) section if you want to feel what it's like to code with Innmind. - -If you've seen modern Java, C#, Rust, Swift and co you should find the Innmind code very familiar. +If you've seen modern Java, C#, Rust, Swift and co you should find Innmind very familiar. ??? example "Sneak peek" The code below shows how the declarative nature of Innmind abstracts away the complexity. @@ -54,3 +52,5 @@ If you've seen modern Java, C#, Rust, Swift and co you should find the Innmind c ``` This example sends an HTTP response of a `.tar.gz` containing all files contained in a `avatars` directory and with a CSV of all users stored in a database. All this is done with the guarantee that you won't run in "out of memory" errors, and other advantages you'll learn throughout this documentation. + +By following the links at the bottom of each page you'll progressively learn your way through Innmind. While the [Philosophy](philosophy/index.md) section is an important part you can skip to the [Getting started](getting-started/index.md) section if you want to feel what it's like to code with Innmind. From 562002c103c265aae929ba0a191d6b36bbb47d01 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 27 Apr 2024 17:43:36 +0200 Subject: [PATCH 16/68] fix link --- docs/philosophy/simplicity.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/philosophy/simplicity.md b/docs/philosophy/simplicity.md index baa1462..e630086 100644 --- a/docs/philosophy/simplicity.md +++ b/docs/philosophy/simplicity.md @@ -30,7 +30,7 @@ Innmind heavily leans toward simplicity. Even if at times it doesn't feel easy. ## In practice -The [Filesystem package](../getting-started/filesystem/index.md) was bit (in an early version) for mistaking easyness by simplicity. +The [Filesystem package](../getting-started/operating-system/filesystem.md) was bit (in an early version) for mistaking easyness by simplicity. The `Adapter` interface has a `get` method to return a file. Initially the argument passed to it was a `string` to represent the file name. But months later when building an [S3](https://github.com/Innmind/S3) abstraction for this interface it wasn't clear if a path could be passed in the string. From c073c96e10e25a6cfeeecca58f460b359ac6951e Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 28 Apr 2024 11:22:16 +0200 Subject: [PATCH 17/68] fix list after annotation --- docs/philosophy/oop-fp.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/philosophy/oop-fp.md b/docs/philosophy/oop-fp.md index 63b975f..e67142f 100644 --- a/docs/philosophy/oop-fp.md +++ b/docs/philosophy/oop-fp.md @@ -60,10 +60,12 @@ An example is an HTTP client (1) that provides a base implementation to do call 1. such as [`innmind/http-transport`](https://github.com/Innmind/HttpTransport) +

The big advantage is that you can compose them _locally_ depending on your needs (1). {.annotate} From 70a0c5772857d602d61f9f8ff93821b646fa5d54 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 28 Apr 2024 11:37:07 +0200 Subject: [PATCH 18/68] typo --- docs/philosophy/oop-fp.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/philosophy/oop-fp.md b/docs/philosophy/oop-fp.md index e67142f..1b23d55 100644 --- a/docs/philosophy/oop-fp.md +++ b/docs/philosophy/oop-fp.md @@ -128,7 +128,7 @@ While this example may not seem to provide much value, these structures are extr ## False dichotomy -When choosing our tools we are usually presented 2 choices: Hype vs Boring technologies, OOP vs FP, etc... with the impression that we can only chose one. +When choosing our tools we are usually presented 2 choices: Hype vs Boring technologies, OOP vs FP, etc... with the impression that we can only choose one. Innmind uses both OOP and FP to take advantages from both worlds. From 2c88c2c9a0d1085da4179301ac998eff19db7726 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 28 Apr 2024 14:06:04 +0200 Subject: [PATCH 19/68] add explicit --- docs/philosophy/explicit.md | 67 ++++++++++++++++++++++++++++++++++++- 1 file changed, 66 insertions(+), 1 deletion(-) diff --git a/docs/philosophy/explicit.md b/docs/philosophy/explicit.md index 25cca22..c241628 100644 --- a/docs/philosophy/explicit.md +++ b/docs/philosophy/explicit.md @@ -1,9 +1,74 @@ # Explicit -## Parsing, not validation +Implicit behaviours makes life easy for small programs. But as it grows and time passes it becomes more and more difficult to remember all of them and make sure they fit together. + +Innmind itself is a large project. That's why it tries to be as explicit as possible. + +By explicit ear the facts that: + +- no code will have unforeseen global behaviour +- no package installation will automatically change a behaviour of a program +- you call Innmind code + +This means that to understand your program you can always _go to the definition_ of the function you're using. You can traverse your whole program from entrypoint to low level calls to the system with this approach. + +Below you'll find some techniques that make Innmind explicit. + +## Parse, don't validate + +!!! info "" + This is a reference to [Alexis King's article](https://lexi-lambda.github.io/blog/2019/11/05/parse-don-t-validate/). + +Validation is the process to check if a value respect a set of rules before using it. Take this example that may feel familiar: + +```php +$email = 'foo@example.com'; +createUser($email); +sendWelcomeEmail($email); +``` + +Here both functions have to validate that the `string` passed as argument is indeed an email. The validation has to be done twice because the second function is unaware of the one done in the first function. + +Instead Parsing means to attach an information to the validated value. In other words encapsulate your data in an object. + +With parsing the example above becomes: + +```php +$email = new Email('foo@example.com'); +createUser($email); +sendWelcomeEmail($email); +``` + +Now the validation is done by the `Email` class and will throw if the `string` is not an email. The following functions no longer have to do validation as they're guaranteed to have a valid email as argument. + +This is why you'll find a lot of classes in Innmind that only hold data, the classes name are important. + +??? note "Exceptions to the rule" + Note that they're some exceptions to this rule such as the [`Sequence`](../getting-started/handling-data/sequence.md) not having a sister class `NonEmptySequence`. This class doesn't exist because it would make [composition](oop-fp.md#composition) harder. ## Constraints liberate, liberties constrain +!!! info "" + This is a reference to [Runar Bjarnason's talk](https://www.youtube.com/watch?v=GqmsQeSzMdw). + +A constraint prevents us from doing some thing. Liberty is our ability to do what we want. + +The saying _constraints liberate, liberties constrain_ then may seem contradictory. Yet us abiding by the law is just that. The law prevents us from harming another citizen, this constraint liberate us from having to worry about someone else trying to harm us and consequently free us to think about more productive activities. + +As developers we tend to want to do whatever we want in our programs. But this limits us in the level of abstractions we can use. + +Innmind choose to apply constraints in order to build higher [abstractions](abstractions.md). + ### Closed by default +This applies to 2 things: code and data. + +For a code to be closed usually means having `final` classes to prevent developer to use inheritance to modify the behaviour of a program, thus encouraging [composition](oop-fp.md#composition). The alternative is the use of functions that can only be composed. + +For data this means to be very restrictive when [parsing](#parse-dont-validate). + ### Maintainability + +By having enough constraints it simplifies the maintainability of this ecosystem. + +All possible usages and possible values are known thanks to this constraints, meaning any modification can be safely released. From d5a1b42e20c70c9153a46b3d42c4fe69354a5177 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 28 Apr 2024 14:19:44 +0200 Subject: [PATCH 20/68] add capabilities --- docs/philosophy/capabilities.md | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/docs/philosophy/capabilities.md b/docs/philosophy/capabilities.md index ea61c7d..baefe2e 100644 --- a/docs/philosophy/capabilities.md +++ b/docs/philosophy/capabilities.md @@ -1,5 +1,16 @@ # Capabilities -## Ambient authority +[Ambient authority](https://en.wikipedia.org/wiki/Ambient_authority) is the ability to call the system (1) from anywhere in your program. +{.annotate} -## This is dependency injection +1. such as `fopen` + +On the other hand [Capabilities](https://en.wikipedia.org/wiki/Capability-based_security) is a way to represent a resource we have access to, and is given to us. We cannot access it directly. + +These designs are security models inside programs. + +Innmind focuses more on the system access side more than the security one. + +In essence the capabilities approach is about dependency injection on all things concerning the operating system. + +That's why the [Operating System](../getting-started/operating-system/index.md) abstraction is central in the ecosystem. From 1a42fce38c552ffd1d89aacd3552aa77fdc3b164 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 28 Apr 2024 14:45:37 +0200 Subject: [PATCH 21/68] add abstractions --- docs/philosophy/abstractions.md | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/docs/philosophy/abstractions.md b/docs/philosophy/abstractions.md index e88e1f6..261f713 100644 --- a/docs/philosophy/abstractions.md +++ b/docs/philosophy/abstractions.md @@ -1,9 +1,26 @@ # Abstractions -## `abstract` classes +!!! abstract "" + All maps are wrong... but some are useful. -## Composition +For a map to be useful it has to be wrong. For a map to be right it has to represent with exactitude the world, meaning it has to be the size of the world it represent. Such map has no use as it doesn't simplify our task. -## All models are wrong... +A map's aim is to shrink the information to the minimum for us to accomplish our task. This means that the level of information **must** depend on our task. You won't take the same map for a road trip or a hike. -> ...but some are useful. +Abstractions are the same. + +An abstraction that tries to represent all the informations it tries to abstract fails in its mission. In the end you end up with the same information but expressed in a different way. + +This means that for an abstraction to be useful it **must** omit information. + +Then comes the need to choose which information to keep and the [appropriate semantic](semantic.md) for the task. + +This also means that an abstraction can't fit all tasks and you may not be able to use it. But this is ok, not everyone has to speak the same language; you just need to find the vocabulary that fits your need. + +Innmind doesn't try to fit everybody's need (1). +{.annotate} + +1. As you'll find with the [filesystem abstraction](../getting-started/operating-system/filesystem.md) or the [ORM](../getting-started/orm/index.md). + +??? note + But keep in mind that semantics change and vocabularies expand. From 632ca68345490597f506b4f5015d64564cb7eabd Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 28 Apr 2024 15:05:13 +0200 Subject: [PATCH 22/68] add dev process --- docs/philosophy/development.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/docs/philosophy/development.md b/docs/philosophy/development.md index 8af3187..66a664a 100644 --- a/docs/philosophy/development.md +++ b/docs/philosophy/development.md @@ -2,8 +2,31 @@ ## Type strictness +All packages uses [Psalm](https://psalm.dev) on the strictess level to make sure there won't be type errors. + +To make sure you use Innmind correctly you should use it as well. + ## Versioning +All packages uses [Semver](https://semver.org) to release new versions. + +All minor and bugfix versions are retro compatible and try as mush as possible to not change your program's behaviour. Most updates bring new code that you have to choose to use it (or not). + +Major updates break the API. + +Changelogs and the type system will help you through all changes. + ## Make it easy to use it right > and make it hard to use it wrong. + +This summarizes all the previous sections. + +To reach this all packages go through the same iteration loop: + +- make it work +- make it simple +- make it fast + +??? note + Though the last step has a lower priority than building new higher level [abstractions](abstractions.md). From ee49585d12e684d0734a82db07d29965b997d21a Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 28 Apr 2024 15:09:01 +0200 Subject: [PATCH 23/68] remove old doc --- README.md | 6 ++-- design_choices.md | 30 ---------------- packages.md | 88 ----------------------------------------------- vision.md | 9 ----- 4 files changed, 2 insertions(+), 131 deletions(-) delete mode 100644 design_choices.md delete mode 100644 packages.md delete mode 100644 vision.md diff --git a/README.md b/README.md index 8d6a4ac..daa304c 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,5 @@ # Innmind documentation -Most [packages](packages.md) you'll find in this organization are here to advance the organization [vision](vision.md). All of them are designed with the same [principles](design_choices.md) to simplify integration and context switching. +You can find the built version of this documentation at https://innmind.github.io/documentation/. -You can view the dependencies between the packages via this [macOS application](https://github.com/Innmind/macOS-tooling). - -> **Note** However some are here to solve recurring problems you may find in a professional context, or for intellectual curiosity. +To view it on your machine, pull the repository and run `make serve` that will open the page http://0.0.0.0:8000/ diff --git a/design_choices.md b/design_choices.md deleted file mode 100644 index acc3634..0000000 --- a/design_choices.md +++ /dev/null @@ -1,30 +0,0 @@ -# Design choices - -## Core principle - -> make it easy to use it right, make it hard to use it wrong - -This is achieved by always following the same steps when building any package: -- make it work -- make it simple -- make it fast - -> **Note** However the last step is not a priority as there is still plenty of packages to build in order to reach the organization [vision](vision.md). But this doesn't mean speed is sacrified for the sake of simplicity. - -## Simplicity - -To keep the complexity low, packages use a mix of Functional Programming, Object Oriented Programming and a low usage of primitive types. - -Functional Programming allows to increase code robustness and testability by eliminating [side effects](https://en.wikipedia.org/wiki/Side_effect_(computer_science)) and using precise types allowing the use of [static analysis](https://psalm.dev/docs/). - -Object Oriented Programming allows to deal with side effects (filesystem, network, etc...) with less convolutions than Functional Programming. - -Primitive types (`int`, `string`, etc...) usage is very low as it generally brings too many implicits. [Value Object](https://en.wikipedia.org/wiki/Value_object)s are preferred as they alleviate those implicits. - -## Abstractions - -To reach the organization [vision](vision.md), abstractions need to compose. - -To keep the higher order abstractions complexity low, they use a declarative approach. The APIs focus on what we want to achieve and hides how to achieve it. This allows the abstraction to run in different environments without affecting the user code. - -In order to achieve this, the packages use a _capability-based approach_ instead of [ambient authority](https://en.wikipedia.org/wiki/Ambient_authority) (that is generally used in the PHP ecosystem). In other words this means using the [dependency injection](https://en.wikipedia.org/wiki/Dependency_injection) principle for everything outside of the process (time, filesystem, network, etc...). diff --git a/packages.md b/packages.md deleted file mode 100644 index 7b9b426..0000000 --- a/packages.md +++ /dev/null @@ -1,88 +0,0 @@ -# Packages - -| Name | CI | Type coverage | Code coverage | | -|-|-|-|-|-| -| [`acl`](https://packagist.org/packages/innmind/acl) | [![Build Status](https://github.com/innmind/acl/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/acl/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/acl/coverage.svg)](https://shepherd.dev/github/innmind/acl) | [![codecov](https://codecov.io/gh/innmind/acl/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/acl) | [Documentation](https://github.com/innmind/acl/#usage) | -| [`amqp`](https://packagist.org/packages/innmind/amqp) | [![Build Status](https://github.com/innmind/amqp/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/amqp/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/amqp/coverage.svg)](https://shepherd.dev/github/innmind/amqp) | [![codecov](https://codecov.io/gh/innmind/amqp/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/amqp) | [Documentation](https://github.com/innmind/amqp/#usage) | -| [`ark`](https://packagist.org/packages/innmind/ark) | [![Build Status](https://github.com/innmind/ark/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/ark/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/ark/coverage.svg)](https://shepherd.dev/github/innmind/ark) | [![codecov](https://codecov.io/gh/innmind/ark/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/ark) | [Documentation](https://github.com/innmind/ark/#usage) | -| [`async-http-server`](https://packagist.org/packages/innmind/async-http-server) | [![Build Status](https://github.com/innmind/async-http-server/workflows/CI/badge.svg?branch=main)](https://github.com/innmind/async-http-server/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/async-http-server/coverage.svg)](https://shepherd.dev/github/innmind/async-http-server) | | [Documentation](https://github.com/Innmind/async-http-server#usage) | -| [`async-operating-system`](https://packagist.org/packages/innmind/async-operating-system) | [![Build Status](https://github.com/innmind/async-operating-system/workflows/CI/badge.svg?branch=main)](https://github.com/innmind/async-operating-system/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/async-operating-system/coverage.svg)](https://shepherd.dev/github/innmind/async-operating-system) | [![codecov](https://codecov.io/gh/innmind/async-operating-system/branch/main/graph/badge.svg)](https://codecov.io/gh/innmind/async-operating-system) | [Documentation](https://github.com/Innmind/async-operating-system#usage) | -| [`async-socket`](https://packagist.org/packages/innmind/async-socket) | [![Build Status](https://github.com/innmind/async-socket/workflows/CI/badge.svg?branch=main)](https://github.com/innmind/async-socket/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/async-socket/coverage.svg)](https://shepherd.dev/github/innmind/async-socket) | | [Documentation](https://github.com/Innmind/async-socket) | -| [`async-stream`](https://packagist.org/packages/innmind/async-stream) | [![Build Status](https://github.com/innmind/async-stream/workflows/CI/badge.svg?branch=main)](https://github.com/innmind/async-stream/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/async-stream/coverage.svg)](https://shepherd.dev/github/innmind/async-stream) | [![codecov](https://codecov.io/gh/innmind/async-stream/branch/main/graph/badge.svg)](https://codecov.io/gh/innmind/async-stream) | [Documentation](https://github.com/Innmind/async-stream#usage) | -| [`async-time-warp`](https://packagist.org/packages/innmind/async-time-warp) | [![Build Status](https://github.com/innmind/async-time-warp/workflows/CI/badge.svg?branch=main)](https://github.com/innmind/async-time-warp/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/async-time-warp/coverage.svg)](https://shepherd.dev/github/innmind/async-time-warp) | [![codecov](https://codecov.io/gh/innmind/async-time-warp/branch/main/graph/badge.svg)](https://codecov.io/gh/innmind/async-time-warp) | [Documentation](https://github.com/Innmind/async-time-warp#usage) | -| [`black-box`](https://packagist.org/packages/innmind/black-box) | [![Build Status](https://github.com/innmind/blackbox/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/blackbox/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/blackbox/coverage.svg)](https://shepherd.dev/github/innmind/blackbox) | [![codecov](https://codecov.io/gh/innmind/blackbox/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/blackbox) | [Documentation](https://github.com/Innmind/BlackBox/blob/master/documentation/readme.md) | -| [`cli`](https://packagist.org/packages/innmind/cli) | [![Build Status](https://github.com/innmind/cli/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/cli/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/cli/coverage.svg)](https://shepherd.dev/github/innmind/cli) | [![codecov](https://codecov.io/gh/innmind/cli/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/cli) | [Documentation](https://github.com/innmind/cli/#usage) | -| [`coding-standard`](https://packagist.org/packages/innmind/coding-standard) | [![Build Status](https://github.com/innmind/coding-standard/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/coding-standard/actions?query=workflow%3ACI) | | | [Documentation](https://github.com/innmind/coding-standard/#usage) | -| [`colour`](https://packagist.org/packages/innmind/colour) | [![Build Status](https://github.com/innmind/colour/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/colour/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/colour/coverage.svg)](https://shepherd.dev/github/innmind/colour) | [![codecov](https://codecov.io/gh/innmind/colour/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/colour) | [Documentation](https://github.com/innmind/colour/#usage) | -| [`crawler`](https://packagist.org/packages/innmind/crawler) | [![Build Status](https://github.com/innmind/crawler/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/crawler/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/crawler/coverage.svg)](https://shepherd.dev/github/innmind/crawler) | [![codecov](https://codecov.io/gh/innmind/crawler/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/crawler) | [Documentation](https://github.com/innmind/crawler/#usage) | -| [`crawler-app`](https://packagist.org/packages/innmind/crawler-app) | [![Build Status](https://github.com/innmind/crawlerapp/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/crawlerapp/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/crawlerapp/coverage.svg)](https://shepherd.dev/github/innmind/crawlerapp) | [![codecov](https://codecov.io/gh/innmind/crawlerapp/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/crawlerapp) | [Documentation](https://github.com/innmind/crawlerapp/#usage) | -| [`cron`](https://packagist.org/packages/innmind/cron) | [![Build Status](https://github.com/innmind/cron/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/cron/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/cron/coverage.svg)](https://shepherd.dev/github/innmind/cron) | [![codecov](https://codecov.io/gh/innmind/cron/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/cron) | [Documentation](https://github.com/innmind/cron/#usage) | -| [`debug`](https://packagist.org/packages/innmind/debug) | [![Build Status](https://github.com/innmind/debug/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/debug/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/debug/coverage.svg)](https://shepherd.dev/github/innmind/debug) | [![codecov](https://codecov.io/gh/innmind/debug/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/debug) | [Documentation](https://github.com/innmind/debug/#usage) | -| [`dependency-graph`](https://packagist.org/packages/innmind/dependency-graph) | [![Build Status](https://github.com/innmind/dependencygraph/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/dependencygraph/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/dependencygraph/coverage.svg)](https://shepherd.dev/github/innmind/dependencygraph) | [![codecov](https://codecov.io/gh/innmind/dependencygraph/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/dependencygraph) | [Documentation](https://github.com/innmind/dependencygraph/#usage) | -| [`di`](https://packagist.org/packages/innmind/di) | [![Build Status](https://github.com/innmind/di/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/di/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/di/coverage.svg)](https://shepherd.dev/github/innmind/di) | [![codecov](https://codecov.io/gh/innmind/di/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/di) | [Documentation](https://github.com/innmind/di/#usage) | -| [`doctrine`](https://packagist.org/packages/innmind/doctrine) | [![Build Status](https://github.com/innmind/doctrine/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/doctrine/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/doctrine/coverage.svg)](https://shepherd.dev/github/innmind/doctrine) | [![codecov](https://codecov.io/gh/innmind/doctrine/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/doctrine) | [Documentation](https://github.com/innmind/doctrine/#usage) | -| [`file-watch`](https://packagist.org/packages/innmind/file-watch) | [![Build Status](https://github.com/innmind/filewatch/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/filewatch/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/filewatch/coverage.svg)](https://shepherd.dev/github/innmind/filewatch) | [![codecov](https://codecov.io/gh/innmind/filewatch/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/filewatch) | [Documentation](https://github.com/innmind/filewatch/#usage) | -| [`filesystem`](https://packagist.org/packages/innmind/filesystem) | [![Build Status](https://github.com/innmind/filesystem/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/filesystem/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/filesystem/coverage.svg)](https://shepherd.dev/github/innmind/filesystem) | [![codecov](https://codecov.io/gh/innmind/filesystem/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/filesystem) | [Documentation](https://github.com/innmind/filesystem/#usage) | -| [`genome`](https://packagist.org/packages/innmind/genome) | [![Build Status](https://github.com/innmind/genome/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/genome/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/genome/coverage.svg)](https://shepherd.dev/github/innmind/genome) | [![codecov](https://codecov.io/gh/innmind/genome/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/genome) | [Documentation](https://github.com/innmind/genome/#usage) | -| [`git`](https://packagist.org/packages/innmind/git) | [![Build Status](https://github.com/innmind/git/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/git/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/git/coverage.svg)](https://shepherd.dev/github/innmind/git) | [![codecov](https://codecov.io/gh/innmind/git/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/git) | [Documentation](https://github.com/innmind/git/#usage) | -| [`git-release`](https://packagist.org/packages/innmind/git-release) | [![Build Status](https://github.com/innmind/gitrelease/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/gitrelease/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/gitrelease/coverage.svg)](https://shepherd.dev/github/innmind/gitrelease) | [![codecov](https://codecov.io/gh/innmind/gitrelease/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/gitrelease) | [Documentation](https://github.com/innmind/gitrelease/#usage) | -| [`graphviz`](https://packagist.org/packages/innmind/graphviz) | [![Build Status](https://github.com/innmind/graphviz/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/graphviz/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/graphviz/coverage.svg)](https://shepherd.dev/github/innmind/graphviz) | [![codecov](https://codecov.io/gh/innmind/graphviz/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/graphviz) | [Documentation](https://github.com/innmind/graphviz/#usage) | -| [`hash`](https://packagist.org/packages/innmind/hash) | [![Build Status](https://github.com/innmind/hash/workflows/CI/badge.svg?branch=main)](https://github.com/innmind/hash/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/hash/coverage.svg)](https://shepherd.dev/github/innmind/hash) | [![codecov](https://codecov.io/gh/innmind/hash/branch/main/graph/badge.svg)](https://codecov.io/gh/innmind/hash) | [Documentation](https://github.com/innmind/hash/#usage) | -| [`homeostasis`](https://packagist.org/packages/innmind/homeostasis) | [![Build Status](https://github.com/innmind/homeostasis/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/homeostasis/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/homeostasis/coverage.svg)](https://shepherd.dev/github/innmind/homeostasis) | [![codecov](https://codecov.io/gh/innmind/homeostasis/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/homeostasis) | [Documentation](https://github.com/innmind/homeostasis/#usage) | -| [`html`](https://packagist.org/packages/innmind/html) | [![Build Status](https://github.com/innmind/html/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/html/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/html/coverage.svg)](https://shepherd.dev/github/innmind/html) | [![codecov](https://codecov.io/gh/innmind/html/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/html) | [Documentation](https://github.com/innmind/html/#usage) | -| [`http`](https://packagist.org/packages/innmind/http) | [![Build Status](https://github.com/innmind/http/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/http/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/http/coverage.svg)](https://shepherd.dev/github/innmind/http) | [![codecov](https://codecov.io/gh/innmind/http/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/http) | [Documentation](https://github.com/innmind/http/#build-a-serverrequest) | -| [`http-authentication`](https://packagist.org/packages/innmind/http-authentication) | [![Build Status](https://github.com/innmind/httpauthentication/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/httpauthentication/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/httpauthentication/coverage.svg)](https://shepherd.dev/github/innmind/httpauthentication) | [![codecov](https://codecov.io/gh/innmind/httpauthentication/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/httpauthentication) | [Documentation](https://github.com/innmind/httpauthentication/#usage) | -| [`http-parser`](https://packagist.org/packages/innmind/http-parser) | [![Build Status](https://github.com/innmind/http-parser/workflows/CI/badge.svg?branch=main)](https://github.com/innmind/http-parser/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/http-parser/coverage.svg)](https://shepherd.dev/github/innmind/http-parser) | [![codecov](https://codecov.io/gh/innmind/http-parser/branch/main/graph/badge.svg)](https://codecov.io/gh/innmind/http-parser) | [Documentation](https://github.com/innmind/http-parser/#usage) | -| [`http-server`](https://packagist.org/packages/innmind/http-server) | [![Build Status](https://github.com/innmind/httpserver/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/httpserver/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/httpserver/coverage.svg)](https://shepherd.dev/github/innmind/httpserver) | | [Documentation](https://github.com/innmind/httpserver/#usage) | -| [`http-session`](https://packagist.org/packages/innmind/http-session) | [![Build Status](https://github.com/innmind/httpsession/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/httpsession/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/httpsession/coverage.svg)](https://shepherd.dev/github/innmind/httpsession) | [![codecov](https://codecov.io/gh/innmind/httpsession/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/httpsession) | [Documentation](https://github.com/innmind/httpsession/#usage) | -| [`http-transport`](https://packagist.org/packages/innmind/http-transport) | [![Build Status](https://github.com/innmind/httptransport/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/httptransport/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/httptransport/coverage.svg)](https://shepherd.dev/github/innmind/httptransport) | [![codecov](https://codecov.io/gh/innmind/httptransport/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/httptransport) | [Documentation](https://github.com/innmind/httptransport/#usage) | -| [`immutable`](https://packagist.org/packages/innmind/immutable) | [![Build Status](https://github.com/innmind/immutable/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/immutable/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/immutable/coverage.svg)](https://shepherd.dev/github/innmind/immutable) | [![codecov](https://codecov.io/gh/innmind/immutable/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/immutable) | [Documentation](https://github.com/Innmind/Immutable/blob/master/docs/README.md) | -| [`infrastructure`](https://packagist.org/packages/innmind/infrastructure) | [![Build Status](https://github.com/innmind/infrastructure/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/infrastructure/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/infrastructure/coverage.svg)](https://shepherd.dev/github/innmind/infrastructure) | | | -| [`infrastructure-amqp`](https://packagist.org/packages/innmind/infrastructure-amqp) | [![Build Status](https://github.com/innmind/infrastructureamqp/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/infrastructureamqp/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/infrastructureamqp/coverage.svg)](https://shepherd.dev/github/innmind/infrastructureamqp) | | | -| [`infrastructure-neo4j`](https://packagist.org/packages/innmind/infrastructure-neo4j) | [![Build Status](https://github.com/innmind/infrastructureneo4j/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/infrastructureneo4j/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/infrastructureneo4j/coverage.svg)](https://shepherd.dev/github/innmind/infrastructureneo4j) | | | -| [`infrastructure-nginx`](https://packagist.org/packages/innmind/infrastructure-nginx) | [![Build Status](https://github.com/innmind/infrastructurenginx/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/infrastructurenginx/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/infrastructurenginx/coverage.svg)](https://shepherd.dev/github/innmind/infrastructurenginx) | | | -| [`installation-monitor`](https://packagist.org/packages/innmind/installation-monitor) | [![Build Status](https://github.com/innmind/installationmonitor/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/installationmonitor/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/installationmonitor/coverage.svg)](https://shepherd.dev/github/innmind/installationmonitor) | [![codecov](https://codecov.io/gh/innmind/installationmonitor/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/installationmonitor) | [Documentation](https://github.com/innmind/installationmonitor/#usage) | -| [`io`](https://packagist.org/packages/innmind/io) | [![Build Status](https://github.com/innmind/io/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/io/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/io/coverage.svg)](https://shepherd.dev/github/innmind/io) | [![codecov](https://codecov.io/gh/innmind/io/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/io) | [Documentation](https://github.com/innmind/io/#usage) | -| [`ip`](https://packagist.org/packages/innmind/ip) | [![Build Status](https://github.com/innmind/ip/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/ip/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/ip/coverage.svg)](https://shepherd.dev/github/innmind/ip) | [![codecov](https://codecov.io/gh/innmind/ip/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/ip) | [Documentation](https://github.com/innmind/ip/#usage) | -| [`ipc`](https://packagist.org/packages/innmind/ipc) | [![Build Status](https://github.com/innmind/ipc/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/ipc/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/ipc/coverage.svg)](https://shepherd.dev/github/innmind/ipc) | [![codecov](https://codecov.io/gh/innmind/ipc/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/ipc) | [Documentation](https://github.com/innmind/ipc/#usage) | -| [`json`](https://packagist.org/packages/innmind/json) | [![Build Status](https://github.com/innmind/json/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/json/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/json/coverage.svg)](https://shepherd.dev/github/innmind/json) | [![codecov](https://codecov.io/gh/innmind/json/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/json) | [Documentation](https://github.com/innmind/json/#usage) | -| [`kalmiya`](https://packagist.org/packages/innmind/kalmiya) | [![Build Status](https://github.com/innmind/kalmiya/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/kalmiya/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/kalmiya/coverage.svg)](https://shepherd.dev/github/innmind/kalmiya) | | [Documentation](https://github.com/innmind/kalmiya/#usage) | -| [`lab-station`](https://packagist.org/packages/innmind/lab-station) | [![Build Status](https://github.com/innmind/labstation/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/labstation/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/labstation/coverage.svg)](https://shepherd.dev/github/innmind/labstation) | [![codecov](https://codecov.io/gh/innmind/labstation/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/labstation) | [Documentation](https://github.com/innmind/labstation/#lab-station) | -| [`library`](https://packagist.org/packages/innmind/library) | [![Build Status](https://github.com/innmind/library/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/library/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/library/coverage.svg)](https://shepherd.dev/github/innmind/library) | [![codecov](https://codecov.io/gh/innmind/library/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/library) | [Documentation](https://github.com/innmind/library/#usage) | -| [`log-reader`](https://packagist.org/packages/innmind/log-reader) | [![Build Status](https://github.com/innmind/logreader/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/logreader/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/logreader/coverage.svg)](https://shepherd.dev/github/innmind/logreader) | [![codecov](https://codecov.io/gh/innmind/logreader/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/logreader) | [Documentation](https://github.com/innmind/logreader/#usage) | -| [`logger`](https://packagist.org/packages/innmind/logger) | [![Build Status](https://github.com/innmind/logger/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/logger/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/logger/coverage.svg)](https://shepherd.dev/github/innmind/logger) | [![codecov](https://codecov.io/gh/innmind/logger/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/logger) | [Documentation](https://github.com/innmind/logger/#usage) | -| [`mantle`](https://packagist.org/packages/innmind/mantle) | [![Build Status](https://github.com/innmind/mantle/workflows/CI/badge.svg?branch=main)](https://github.com/innmind/mantle/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/mantle/coverage.svg)](https://shepherd.dev/github/innmind/mantle) | [![codecov](https://codecov.io/gh/innmind/mantle/branch/main/graph/badge.svg)](https://codecov.io/gh/innmind/mantle) | [Documentation](https://github.com/innmind/mantle/) | -| [`math`](https://packagist.org/packages/innmind/math) | [![Build Status](https://github.com/innmind/math/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/math/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/math/coverage.svg)](https://shepherd.dev/github/innmind/math) | [![codecov](https://codecov.io/gh/innmind/math/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/math) | [Documentation](https://github.com/innmind/math/#algebra) | -| [`media-type`](https://packagist.org/packages/innmind/media-type) | [![Build Status](https://github.com/innmind/mediatype/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/mediatype/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/mediatype/coverage.svg)](https://shepherd.dev/github/innmind/mediatype) | [![codecov](https://codecov.io/gh/innmind/mediatype/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/mediatype) | [Documentation](https://github.com/innmind/mediatype/#usage) | -| [`neo4j-dbal`](https://packagist.org/packages/innmind/neo4j-dbal) | [![Build Status](https://github.com/innmind/neo4j-dbal/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/neo4j-dbal/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/neo4j-dbal/coverage.svg)](https://shepherd.dev/github/innmind/neo4j-dbal) | [![codecov](https://codecov.io/gh/innmind/neo4j-dbal/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/neo4j-dbal) | [Documentation](https://github.com/innmind/neo4j-dbal/#documentation) | -| [`neo4j-onm`](https://packagist.org/packages/innmind/neo4j-onm) | [![Build Status](https://github.com/innmind/neo4j-onm/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/neo4j-onm/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/neo4j-onm/coverage.svg)](https://shepherd.dev/github/innmind/neo4j-onm) | [![codecov](https://codecov.io/gh/innmind/neo4j-onm/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/neo4j-onm) | [Documentation](https://github.com/innmind/neo4j-onm/#documentation) | -| [`object-graph`](https://packagist.org/packages/innmind/object-graph) | [![Build Status](https://github.com/innmind/objectgraph/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/objectgraph/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/objectgraph/coverage.svg)](https://shepherd.dev/github/innmind/objectgraph) | [![codecov](https://codecov.io/gh/innmind/objectgraph/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/objectgraph) | [Documentation](https://github.com/innmind/objectgraph/#usage) | -| [`operating-system`](https://packagist.org/packages/innmind/operating-system) | [![Build Status](https://github.com/innmind/operatingsystem/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/operatingsystem/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/operatingsystem/coverage.svg)](https://shepherd.dev/github/innmind/operatingsystem) | [![codecov](https://codecov.io/gh/innmind/operatingsystem/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/operatingsystem) | [Documentation](https://github.com/Innmind/OperatingSystem/blob/master/documentation/readme.md) | -| [`process-manager`](https://packagist.org/packages/innmind/process-manager) | [![Build Status](https://github.com/innmind/processmanager/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/processmanager/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/processmanager/coverage.svg)](https://shepherd.dev/github/innmind/processmanager) | [![codecov](https://codecov.io/gh/innmind/processmanager/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/processmanager) | [Documentation](https://github.com/innmind/processmanager/#usage) | -| [`profiler`](https://packagist.org/packages/innmind/profiler) | [![Build Status](https://github.com/innmind/profiler/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/profiler/actions?query=workflow%3ACI) | | [![codecov](https://codecov.io/gh/innmind/profiler/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/profiler) | [Documentation](https://github.com/innmind/profiler/#overview) | -| [`rabbitmq-management`](https://packagist.org/packages/innmind/rabbitmq-management) | [![Build Status](https://github.com/innmind/rabbitmqmanagement/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/rabbitmqmanagement/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/rabbitmqmanagement/coverage.svg)](https://shepherd.dev/github/innmind/rabbitmqmanagement) | [![codecov](https://codecov.io/gh/innmind/rabbitmqmanagement/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/rabbitmqmanagement) | [Documentation](https://github.com/innmind/rabbitmqmanagement/#usage) | -| [`reflection`](https://packagist.org/packages/innmind/reflection) | [![Build Status](https://github.com/innmind/reflection/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/reflection/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/reflection/coverage.svg)](https://shepherd.dev/github/innmind/reflection) | [![codecov](https://codecov.io/gh/innmind/reflection/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/reflection) | [Documentation](https://github.com/innmind/reflection/#build-and-inject-data-into-an-object) | -| [`robots-txt`](https://packagist.org/packages/innmind/robots-txt) | [![Build Status](https://github.com/innmind/robots.txt/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/robots.txt/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/robots.txt/coverage.svg)](https://shepherd.dev/github/innmind/robots.txt) | [![codecov](https://codecov.io/gh/innmind/robots.txt/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/robots.txt) | [Documentation](https://github.com/innmind/robots.txt/#usage) | -| [`router`](https://packagist.org/packages/innmind/router) | [![Build Status](https://github.com/innmind/router/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/router/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/router/coverage.svg)](https://shepherd.dev/github/innmind/router) | [![codecov](https://codecov.io/gh/innmind/router/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/router) | [Documentation](https://github.com/innmind/router/#usage) | -| [`s3`](https://packagist.org/packages/innmind/s3) | [![Build Status](https://github.com/innmind/s3/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/s3/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/s3/coverage.svg)](https://shepherd.dev/github/innmind/s3) | [![codecov](https://codecov.io/gh/innmind/s3/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/s3) | [Documentation](https://github.com/innmind/s3/#usage) | -| [`scaleway-sdk`](https://packagist.org/packages/innmind/scaleway-sdk) | [![Build Status](https://github.com/innmind/scalewaysdk/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/scalewaysdk/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/scalewaysdk/coverage.svg)](https://shepherd.dev/github/innmind/scalewaysdk) | [![codecov](https://codecov.io/gh/innmind/scalewaysdk/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/scalewaysdk) | [Documentation](https://github.com/innmind/scalewaysdk/#usage) | -| [`server-control`](https://packagist.org/packages/innmind/server-control) | [![Build Status](https://github.com/innmind/servercontrol/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/servercontrol/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/servercontrol/coverage.svg)](https://shepherd.dev/github/innmind/servercontrol) | [![codecov](https://codecov.io/gh/innmind/servercontrol/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/servercontrol) | [Documentation](https://github.com/innmind/servercontrol/#usage) | -| [`server-status`](https://packagist.org/packages/innmind/server-status) | [![Build Status](https://github.com/innmind/serverstatus/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/serverstatus/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/serverstatus/coverage.svg)](https://shepherd.dev/github/innmind/serverstatus) | [![codecov](https://codecov.io/gh/innmind/serverstatus/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/serverstatus) | [Documentation](https://github.com/innmind/serverstatus/#usage) | -| [`signals`](https://packagist.org/packages/innmind/signals) | [![Build Status](https://github.com/innmind/signals/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/signals/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/signals/coverage.svg)](https://shepherd.dev/github/innmind/signals) | [![codecov](https://codecov.io/gh/innmind/signals/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/signals) | [Documentation](https://github.com/innmind/signals/#usage) | -| [`silent-cartographer`](https://packagist.org/packages/innmind/silent-cartographer) | [![Build Status](https://github.com/innmind/silentcartographer/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/silentcartographer/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/silentcartographer/coverage.svg)](https://shepherd.dev/github/innmind/silentcartographer) | [![codecov](https://codecov.io/gh/innmind/silentcartographer/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/silentcartographer) | [Documentation](https://github.com/innmind/silentcartographer/#usage) | -| [`socket`](https://packagist.org/packages/innmind/socket) | [![Build Status](https://github.com/innmind/socket/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/socket/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/socket/coverage.svg)](https://shepherd.dev/github/innmind/socket) | [![codecov](https://codecov.io/gh/innmind/socket/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/socket) | [Documentation](https://github.com/innmind/socket/#usage) | -| [`specification`](https://packagist.org/packages/innmind/specification) | [![Build Status](https://github.com/innmind/specification/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/specification/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/specification/coverage.svg)](https://shepherd.dev/github/innmind/specification) | [![codecov](https://codecov.io/gh/innmind/specification/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/specification) | [Documentation](https://github.com/innmind/specification/#implementation-example) | -| [`ssh-key-provider`](https://packagist.org/packages/innmind/ssh-key-provider) | [![Build Status](https://github.com/innmind/sshkeyprovider/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/sshkeyprovider/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/sshkeyprovider/coverage.svg)](https://shepherd.dev/github/innmind/sshkeyprovider) | [![codecov](https://codecov.io/gh/innmind/sshkeyprovider/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/sshkeyprovider) | [Documentation](https://github.com/innmind/sshkeyprovider/#usage) | -| [`stack`](https://packagist.org/packages/innmind/stack) | [![Build Status](https://github.com/innmind/stack/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/stack/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/stack/coverage.svg)](https://shepherd.dev/github/innmind/stack) | [![codecov](https://codecov.io/gh/innmind/stack/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/stack) | [Documentation](https://github.com/innmind/stack/#usage) | -| [`stack-trace`](https://packagist.org/packages/innmind/stack-trace) | [![Build Status](https://github.com/innmind/stacktrace/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/stacktrace/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/stacktrace/coverage.svg)](https://shepherd.dev/github/innmind/stacktrace) | [![codecov](https://codecov.io/gh/innmind/stacktrace/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/stacktrace) | [Documentation](https://github.com/innmind/stacktrace/#usage) | -| [`stream`](https://packagist.org/packages/innmind/stream) | [![Build Status](https://github.com/innmind/stream/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/stream/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/stream/coverage.svg)](https://shepherd.dev/github/innmind/stream) | [![codecov](https://codecov.io/gh/innmind/stream/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/stream) | [Documentation](https://github.com/innmind/stream/#usage) | -| [`templating`](https://packagist.org/packages/innmind/templating) | [![Build Status](https://github.com/innmind/templating/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/templating/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/templating/coverage.svg)](https://shepherd.dev/github/innmind/templating) | [![codecov](https://codecov.io/gh/innmind/templating/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/templating) | [Documentation](https://github.com/innmind/templating/#usage) | -| [`time-continuum`](https://packagist.org/packages/innmind/time-continuum) | [![Build Status](https://github.com/innmind/timecontinuum/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/timecontinuum/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/timecontinuum/coverage.svg)](https://shepherd.dev/github/innmind/timecontinuum) | [![codecov](https://codecov.io/gh/innmind/timecontinuum/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/timecontinuum) | [Documentation](https://github.com/innmind/timecontinuum/#usage) | -| [`time-warp`](https://packagist.org/packages/innmind/time-warp) | [![Build Status](https://github.com/innmind/timewarp/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/timewarp/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/timewarp/coverage.svg)](https://shepherd.dev/github/innmind/timewarp) | [![codecov](https://codecov.io/gh/innmind/timewarp/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/timewarp) | [Documentation](https://github.com/innmind/timewarp/#usage) | -| [`tower`](https://packagist.org/packages/innmind/tower) | [![Build Status](https://github.com/innmind/tower/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/tower/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/tower/coverage.svg)](https://shepherd.dev/github/innmind/tower) | [![codecov](https://codecov.io/gh/innmind/tower/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/tower) | [Documentation](https://github.com/innmind/tower/#tower) | -| [`url`](https://packagist.org/packages/innmind/url) | [![Build Status](https://github.com/innmind/url/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/url/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/url/coverage.svg)](https://shepherd.dev/github/innmind/url) | [![codecov](https://codecov.io/gh/innmind/url/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/url) | [Documentation](https://github.com/innmind/url/#usage) | -| [`url-resolver`](https://packagist.org/packages/innmind/url-resolver) | [![Build Status](https://github.com/innmind/url-resolver/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/url-resolver/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/url-resolver/coverage.svg)](https://shepherd.dev/github/innmind/url-resolver) | [![codecov](https://codecov.io/gh/innmind/url-resolver/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/url-resolver) | [Documentation](https://github.com/innmind/url-resolver/#urlresolver) | -| [`url-template`](https://packagist.org/packages/innmind/url-template) | [![Build Status](https://github.com/innmind/urltemplate/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/urltemplate/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/urltemplate/coverage.svg)](https://shepherd.dev/github/innmind/urltemplate) | [![codecov](https://codecov.io/gh/innmind/urltemplate/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/urltemplate) | [Documentation](https://github.com/innmind/urltemplate/#usage) | -| [`virtual-machine`](https://packagist.org/packages/innmind/virtual-machine) | [![Build Status](https://github.com/innmind/virtual-machine/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/virtual-machine/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/virtual-machine/coverage.svg)](https://shepherd.dev/github/innmind/virtual-machine) | [![codecov](https://codecov.io/gh/innmind/virtual-machine/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/virtual-machine) | [Documentation](https://github.com/innmind/virtual-machine/#usage) | -| [`warden`](https://packagist.org/packages/innmind/warden) | [![Build Status](https://github.com/innmind/warden/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/warden/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/warden/coverage.svg)](https://shepherd.dev/github/innmind/warden) | [![codecov](https://codecov.io/gh/innmind/warden/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/warden) | [Documentation](https://github.com/innmind/warden/#usage) | -| [`xml`](https://packagist.org/packages/innmind/xml) | [![Build Status](https://github.com/innmind/xml/workflows/CI/badge.svg?branch=master)](https://github.com/innmind/xml/actions?query=workflow%3ACI) | [![Type Coverage](https://shepherd.dev/github/innmind/xml/coverage.svg)](https://shepherd.dev/github/innmind/xml) | [![codecov](https://codecov.io/gh/innmind/xml/branch/master/graph/badge.svg)](https://codecov.io/gh/innmind/xml) | [Documentation](https://github.com/innmind/xml/#usage) | diff --git a/vision.md b/vision.md deleted file mode 100644 index 61587b2..0000000 --- a/vision.md +++ /dev/null @@ -1,9 +0,0 @@ -# Vision - -The ultimate goal of this organization is to verify [Antonio Damasio](https://en.wikipedia.org/wiki/Antonio_Damasio)'s theory of consciousness. - -Building each level of abstraction will become more and more complex. To keep the level of complexity manageable every [package](packages.md) follows the same [principles](design_choices.md), this means _reinventing the wheel_ even though a similar package already exists in the PHP ecosystem. - -Since this goal may not be reachable, packages are designed in a way so that they can be used in any project. - -> **Note** you can read more about [this (in french)](https://github.com/Innmind/Research-N-Development/blob/master/Papers/Sur%20la%20conscience.md) From c74b7b6ff96ee10a52611a10b0d6af08beb7fc62 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Wed, 1 May 2024 17:15:44 +0200 Subject: [PATCH 24/68] add sequence documentation --- docs/getting-started/handling-data/index.md | 13 + .../getting-started/handling-data/sequence.md | 579 ++++++++++++++++++ docs/getting-started/index.md | 5 + 3 files changed, 597 insertions(+) diff --git a/docs/getting-started/handling-data/index.md b/docs/getting-started/handling-data/index.md index cf439a7..428fc92 100644 --- a/docs/getting-started/handling-data/index.md +++ b/docs/getting-started/handling-data/index.md @@ -1,3 +1,16 @@ # Handling data +Handling data is an essential part of any program. Handling them simply and in a safe way can become difficult as a program becomes more complex. + +In this section you'll find the 3 most used data structures throughout Innmind. + +You'll learn how to them for simple cases and how they become indispensable as a program grow. + +??? note + Head to the [package documentation](https://github.com/Innmind/Immutable/blob/develop/docs/README.md) to learn about the other data structures. + ## Installation + +```sh +composer require innmind/immutable:~5.3 +``` diff --git a/docs/getting-started/handling-data/sequence.md b/docs/getting-started/handling-data/sequence.md index 62a472a..fe73d72 100644 --- a/docs/getting-started/handling-data/sequence.md +++ b/docs/getting-started/handling-data/sequence.md @@ -1,21 +1,600 @@ # Sequence +A `Sequence` represent a succession of values. In plain old PHP this is an array where you don't specify any key. + +In essence: +```php +use Innmind\Immutable\Sequence; + +$values = ['foo', 'bar', 'baz']; +// becomes +$values = Sequence::of('foo', 'bar', 'baz'); +``` + +Of course just holding to multiple values is not very useful in itself. You'll see below how to manipulate this list of values. + +Each example will show how to use the `Sequence` and how to do the same in plain old PHP in a declarative and imperative style. So you can better grasp what's happening. + ## Pipelining +When dealing with a list of values we tend to apply multiple logic to it in succession. The more steps to transform our values the more complex it becomes. + +The `Sequence` helps better break down each step. + ### Transformations +If we reuse the example with the strings and we want to uppercase the first letter of each value we would do: + +=== "Innmind" + ```php + $values = Sequence::of('foo', 'bar', 'baz') + ->map(static fn(string $string) => \ucfirst($string)) + ->toList(); + $values === ['Foo', 'Bar', 'Baz']; // returns true + ``` + +=== "Declarative" + ```php + $values = \array_map( + static fn(string $string) => \ucfirst($string), + ['foo', 'bar', 'baz'], + ); + $values === ['Foo', 'Bar', 'Baz']; // returns true + ``` + +=== "Imperative" + ```php + $values = []; + + foreach (['foo', 'bar', 'baz'] as $string) { + $values[] = \ucfirst($string); + } + + $values === ['Foo', 'Bar', 'Baz']; // returns true + ``` + +The `map` method returns a new object `Sequence` with all the values modified by the function passed as argument. And the original object returned by `Sequence::of()` is not altered, meaning you can reuse it safely to do other operations. + +??? tip + The notation `#!php static fn(string $string) => \ucfirst($string)` can be shortened to `#!php \ucfirst(...)`. + +With `map` the new object will contain the same number of values as the initial object. But some times for each value you want to return multiple values and in the end have an `array` with only one dimension. + +Let's take the example where each `string` represent a username and we want to retrieve their addresses: + +=== "Innmind" + ```php + /** + * @return Sequence + */ + function getAddresses(string $username): Sequence { + // this is a fake implementation + return Sequence::of( + "$username address 1", + "$username address 2", + "$username address 3", + ); + } + + $addresses = Sequence::of('foo', 'bar', 'baz') + ->flatMap(static fn(string $username) => getAdresses($username)) + ->toList(); + $addresses === [ + 'foo address 1', + 'foo address 2', + 'foo address 3', + 'bar address 1', + 'bar address 2', + 'bar address 3', + 'baz address 1', + 'baz address 2', + 'baz address 3', + ]; // returns true + ``` + +=== "Declarative" + ```php + /** + * @return list + */ + function getAddresses(string $username): array { + // this is a fake implementation + return [ + "$username address 1", + "$username address 2", + "$username address 3", + ]; + } + + $addressesPerUser = \array_map( + static fn(string $username) => getAddresses($username), + ['foo', 'bar', 'baz'], + ); + $addresses = \array_merge(...$addressesPerUser); + $addresses === [ + 'foo address 1', + 'foo address 2', + 'foo address 3', + 'bar address 1', + 'bar address 2', + 'bar address 3', + 'baz address 1', + 'baz address 2', + 'baz address 3', + ]; // returns true + ``` + +=== "Imperative" + ```php + /** + * @return list + */ + function getAddresses(string $username): array { + // this is a fake implementation + return [ + "$username address 1", + "$username address 2", + "$username address 3", + ]; + } + + $addresses = []; + + foreach (['foo', 'bar', 'baz'] as $username) { + foreach (getAddresses($username) as $address) { + $addresses[] = $address; + } + } + + $addresses === [ + 'foo address 1', + 'foo address 2', + 'foo address 3', + 'bar address 1', + 'bar address 2', + 'bar address 3', + 'baz address 1', + 'baz address 2', + 'baz address 3', + ]; // returns true + ``` + +Here you can see that `flatMap` is a combination of `map` that would return the type `Sequence>` and then flattens it to obtain a `Sequence`, hence the name `flatMap`. + +You can also already see that the `Sequence` is simpler to chain actions because there is no need to assign the intermediate values to a new variable. In plain old PHP you could also avoid the intermediate values by inlining the calls but you'll quickly end up with a code harder to read with a lot of indentation. + +`map` and `flatMap` are the only 2 methods to apply a modification to a `Sequence`. + ### Composition +Since you'll not always have all the values known when creating a `Sequence`, you need to know how to add new values. + +=== "Innmind" + ```php + $values = Sequence::of('foo') + ->add('bar') + ->add('baz') + ->toList(); + $values = ['foo', 'bar', 'baz']; // return true + ``` + +=== "Declarative" + ```php + $values = \array_merge( + ['foo'], + ['bar'], + ['baz'], + ); + + $values === ['foo', 'bar', 'baz']; // returns true + ``` + +=== "Imperative" + ```php + $values = ['foo']; + $values[] = 'bar'; + $values[] = 'baz'; + + $values === ['foo', 'bar', 'baz']; // returns true + ``` + +??? tip + You may also come across the notation `#!php $values = Sequence::of('foo')('bar')('baz')` in the ecosystem. This is a more _math like_ notation to look like a matrix augmentation. + + You check the implementation of `Sequence::add()` you'll see that it is a shortcut to the `__invoke` method that allows this notation. + +If instead of adding a single value to the list you need to add multiple ones you would do: + +=== "Innmind" + ```php + $values = Sequence::of('foo', 'bar') + ->append(Sequence::of('baz', 'other', 'string')) + ->toList(); + $values === ['foo', 'bar', 'baz', 'other', 'string']; // returns true + ``` + +=== "Declarative" + ```php + $values = \array_merge( + ['foo', 'bar'], + ['baz', 'other', 'string'], + ); + $values === ['foo', 'bar', 'baz', 'other', 'string']; // returns true + ``` + +=== "Imperative" + ```php + $values = ['foo', 'bar']; + + foreach (['baz', 'other', 'string'] as $string) { + $values[] = $string; + } + + $values === ['foo', 'bar', 'baz', 'other', 'string']; // returns true + ``` + ### Filtering +Instead of adding values you may want to remove values from a list you're given to only keep the ones you really want. + +For example let's you have a list of cities and you only want to keep the french ones: + +=== "Innmind" + ```php + $cities = Sequence::of( + 'Paris, France', + 'New York, USA', + 'London, UK', + 'Lyon, France', + 'etc...', + ) + ->filter(static fn(string $city) => \str_contains($city, 'France')) + ->toList(); + $cities === ['Paris, France', 'Lyon, France']; // returns true + ``` + +=== "Declarative" + ```php + $values = \array_filter( + [ + 'Paris, France', + 'New York, USA', + 'London, UK', + 'Lyon, France', + 'etc...', + ], + static fn(string $city) => \str_contains($city, 'France'), + ); + $cities === ['Paris, France', 'Lyon, France']; // returns true + ``` + +=== "Imperative" + ```php + $cities = [ + 'Paris, France', + 'New York, USA', + 'London, UK', + 'Lyon, France', + 'etc...', + ]; + $values = []; + + foreach ($cities as $city) { + if (\str_contains($city, 'France')) { + $values[] = $city; + } + } + + $cities === ['Paris, France', 'Lyon, France']; // returns true + ``` + +??? tip + And of instead you want all the cities outside of France you can replace `filter` by `exclude`. + +The `filter` method is fine if you don't need the new `Sequence` type to change, here we go from `Sequence` to `Sequence`. But if you have a `Sequence` and you want to remove the `null` values then `filter`, even though will do the job, will return a `Sequence`. This is a limitation of [Psalm](../../philosophy/development.md#type-strictness). + +To overcome this problem you should use the method `keep` that expect a `Predicate` as argument. Technically the implementation of the predicate will be the same as the function passed to `filter` but it has a mechanism that allows Psalm to understand what you intend to do. + +For our example you'd use it like this: + +```php +use Innmind\Immutable\Predicate\Instance; + +$values = Sequence::of(null, new \SplFileObject('some file.txt'), /* etc */) + ->keep(Instance::of(\SplFileObject::class)); +$values; // Sequence<\SplFileObject> +``` + +### Pipeline + +So far you've only seen how to do one action at a time. The simplicity of `Sequence` starts to shine when chaning multiple actions. + +Let's try to retrieve all the visited cities for each username, keep the french ones and remove the country from the name. + +=== "Innmind" + ```php + /** + * @return Sequence + */ + function getCities(string $username): Sequence { + // fake implementation + return match ($username) { + 'foo' => Sequence::of('Paris, France', 'London, UK'), + 'bar' => Sequence::of('New York, USA', 'London, UK'), + 'baz' => Sequence::of('New York, USA', 'Lyon, France'), + default => Sequence::of(), + }; + } + + $cities = Sequence::of('foo', 'bar', 'baz') + ->flatMap(static fn(string $username) => getCities($username)) + ->filter(static fn(string $city) => \str_contains($city, 'France')) + ->map(static fn(string $city) => \substr($city, 0, -8)) + ->toList(); + $cities === ['Paris', 'Lyon']; + ``` + +=== "Declarative" + ```php + /** + * @return list + */ + function getCities(string $username): array { + // fake implementation + return match ($username) { + 'foo' => ['Paris, France', 'London, UK'], + 'bar' => ['New York, USA', 'London, UK'], + 'baz' => ['New York, USA', 'Lyon, France'], + default => [], + }; + } + + $citiesPerUser = \array_map( + static fn(string $username) => getCities($username), + ['foo', 'bar', 'baz'], + ); + $cities = \array_merge(...$citiesPerUser); + $cities = \array_filter( + $cities, + static fn(string $city) => \str_contains($city, 'France'), + ); + $cities = \array_map( + static fn(string $city) => \substr($city, 0, -8), + $cities, + ); + $cities === ['Paris', 'Lyon']; + ``` + +=== "Imperative" + ```php + /** + * @return list + */ + function getCities(string $username): array { + // fake implementation + return match ($username) { + 'foo' => ['Paris, France', 'London, UK'], + 'bar' => ['New York, USA', 'London, UK'], + 'baz' => ['New York, USA', 'Lyon, France'], + default => [], + }; + } + + $cities = []; + + foreach (['foo', 'bar', 'baz'] as $username) { + foreach (getCities($username) as $city) { + if (\str_contains($city, 'France')) { + $city = \substr($city, 0, -8); + + $cities[] = $city; + } + } + } + + $cities === ['Paris', 'Lyon']; + ``` + +With the declarative and imperative approach you have to deal with either a lot of indentation or a lot of variables. With a `Sequence` you just keep chaining methods. + +Another nice upside to `Sequence` is when you try to build a pipeline and to see the different results if you switch some logic around. To achieve it you only need to move a method call up or down, while the other approached you need to be aware of conflicting variables. + ## Extracting data +At some point you'll need to extract the values contained in a `Sequence` (1). So far you've only seen `toList` that return all the values in an `array`. +{.annotate} + +1. For persisting them to a database, sending them in an HTTP response, etc... + +### Computing a value + +=== "Innmind" + ```php + $sum = Sequence::of(1, 2, 3, 4)->reduce( + 0, + static fn(int $carry, int $value) => $carry + $value, + ); + $sum === 10; // returns true + ``` + +=== "Declarative" + ```php + $sum = \array_reduce( + [1, 2, 3, 4], + static fn(int $carry, int $value) => $carry + $value, + 0, + ); + $sum === 10; // returns true + ``` + +=== "Imperative" + ```php + $sum = 0; + + foreach ([1, 2, 3, 4] as $value) { + $sum += $value; + } + + $sum === 10; // returns true + ``` + +### Fetching a value at an index + +=== "Innmind" + ```php + $values = Sequence::of(1, 2, 3, 4); + $value1 = $values->get(1)->match( + static fn(int $value) => $value, + static fn() => null, + ); + $value2 = $values->get(100)->match( + static fn(int $value) => $value, + static fn() => null, + ); + $value1 === 2; // returns true + $value2 === null; // returns true + ``` + +=== "Imperative" + ```php + $values = [1, 2, 3, 4]; + + if (\array_key_exists(1, $values)) { + $value1 = $values[1]; + } else { + $value1 = null; + } + + if (\array_key_exists(100, $values)) { + $value2 = $values[100]; + } else { + $value2 = null; + } + + $value1 === 2; // returns true + $value2 === null; // returns true + ``` + +??? Note + The imperative approach could be simplified via `#!php $values[$index] ?? null`, but then if the value at the index is itself `null` you can't differentiate if the index exists or not. + +### And more + +Above are a few examples of the way to extract data. You should look at all the methods available on the `Sequence` class to see if one fit your needs. + ## Execution mode +The power of `Sequence` is that you can change the way its implementation behave depending on your needs, without rearchitecting your whole program. You'll usually switch the mode for performance reasons. + ### In memory +This is the mode you've seen so far. When calling `Sequence::of()` you specify all the values and they're kept in memory. + ### Deferred +Instead of specyfying the values you can use a `Generator` to populate the `Sequence`. Once a value is loaded it's kept in memory. The advantage is that you can loop over the same geenrator multiple times (1). +{.annotate} + +1. Using a `Generator` directly requires to call again the function that created it. But this means you may not end up with the same values (especially if geenrating objects). + +```php +$values = Sequence::of(1, 2, 3, 4); +// becomes +$values = Sequence::defer((static function() { + yield 1; + yield 2; + yield 3; + yield 4; +})()); +``` + +The `Sequence` is then used exactly the same way as an in memory one. + +!!! tip "" + You should use this mode when loading values may be expensive and you're not sure all the values will be loaded. This way you save a bit of time and memory by not fetching the values you don't end up needing. + ### Lazy +With this mode you build a `Sequence` by passing a function that returns a `Generator`. This generator will be called each time you try to extract some data from the `Sequence`. + +```php +$values = Sequence::lazy(static function() { + $file = \fopen('some file.txt', 'r'); + + while ($chunk = \fgets($file, 256)) { + yield $chunk; + } +}); +``` + +The `Sequence` is then used exactly the same way as an in memory one. + +!!! tip "" + You should use this mode to handle an infinite list of values or a list of values that can't fit in memory (1). + {.annotate} + + 1. Such as reading a multi gigabyte file or reading from a socket. + +??? info + This is where lies the root of the power of Innmind. Being able to work with infinte volumes of data as it were in memory. + +### Tips + +#### Lazyness + +When using `::defer()` or `::lazy()` your code won't be called until you try to extract data (1) or call the `memoize` method. +{.annotate} + +1. Any method that return something else than a monad (`Sequence`, `Set` or `Maybe`). + +For example if you want to print all the lines from a file, this will do nothing: + +```php +Sequence::lazy(static function() { + $file = \fopen('some file.txt', 'r'); + + while ($line = \fgets($file)) { + yield $line; + } +})->map(static function($line) { + echo $line; +}); +``` + +This does nothing because `map` returns a new lazy `Sequence` with a `null` value for each line. Instead you should do: + +```php +Sequence::lazy(static function() { + $file = \fopen('some file.txt', 'r'); + + while ($line = \fgets($file)) { + yield $line; + } +})->foreach(static function($line) { + echo $line; +}); +``` + +`foreach` returns a `Innmind\Immutable\SideEffect` so the `Sequence` knows that it needs to call all the logic you specified. + +#### Psalm + +If you call the `foreach` method you won't be able to use the returned value as it's an object that does nothing. It's returned because `Sequence` is an immutable class, meaning all methods **must** return a value otherwise Psalm tells that the method is useless. + +But you still need to assigned the returned value to a variable `$_` (1) otherwise Psalm will tell you that the call to `foreach` does nothing. +{.annotate} + +1. Called a sink. Psalm won't run any analysis on this variable because it starts with an underscore. + ## In the ecosystem + +You'll find this class used pretty much everywhere in this ecosystem at it allows to describe: + +- a list of values +- a file as a lazy list of chunks +- a file as a lazy list of lines +- a directory as lazy list of files +- a socket as a lazy list of frames +- a SQL result as a lazy list of rows +- a process output as a lazy list of chunks +- and more... diff --git a/docs/getting-started/index.md b/docs/getting-started/index.md index 69a5d54..180b8e2 100644 --- a/docs/getting-started/index.md +++ b/docs/getting-started/index.md @@ -1 +1,6 @@ # Getting started + +In this section you'll learn all the basic information to create simple scripts to handle data up to distributed programs. + +!!! note + For advanced usage of a particular package you should head to the package documentation. From 99c857de838111e0efba2ae509b0b371ca5182b2 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 4 May 2024 10:14:00 +0200 Subject: [PATCH 25/68] mention the Sequence is a monad --- docs/getting-started/handling-data/sequence.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/getting-started/handling-data/sequence.md b/docs/getting-started/handling-data/sequence.md index fe73d72..b8d5d04 100644 --- a/docs/getting-started/handling-data/sequence.md +++ b/docs/getting-started/handling-data/sequence.md @@ -1,6 +1,6 @@ # Sequence -A `Sequence` represent a succession of values. In plain old PHP this is an array where you don't specify any key. +A `Sequence` monad represents a succession of values. In plain old PHP this is an array where you don't specify any key. In essence: ```php From 53c26f51fce33fc9cb1843d1f0d68db47c31c0ce Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 4 May 2024 11:41:32 +0200 Subject: [PATCH 26/68] add maybe --- docs/getting-started/handling-data/maybe.md | 217 ++++++++++++++++++++ mkdocs.yml | 1 + 2 files changed, 218 insertions(+) diff --git a/docs/getting-started/handling-data/maybe.md b/docs/getting-started/handling-data/maybe.md index 104ba64..a453a79 100644 --- a/docs/getting-started/handling-data/maybe.md +++ b/docs/getting-started/handling-data/maybe.md @@ -1,5 +1,222 @@ # Maybe +A `Maybe` monad represents the possible absence of a value. + +This is an equivalent of a nullable value, but a more faithful representation would be an `array` containing 0 or 1 value. + +In essence: +```php +use Innmind\Immutable\Maybe; + +$valueExist = 42; +$valueDoesNotExist = null; +// or +$valueExist = [42]; +$valueDoesNotExist = []; +// becomes +$valueExist = Maybe::just(42); +$valueDoesNotExist = Maybe::nothing(); +``` + +Each example will show how to use `Maybe` and the imperative equivalent in plain old PHP (1). +{.annotate} + +1. The nullable approach is used as it's the dominant approach in PHP programs. + ## Usage +=== "Innmind" + ```php + /** + * @return Maybe + */ + function getUser(int $id): Maybe { + return match ($id) { + 42 => Maybe::just(new User), + default => Maybe::nothing(), + }; + } + ``` + +=== "Imperative" + ```php + function getUser(int $id): ?User { + return match ($id) { + 42 => new User, + default => null, + }; + } + ``` + +In this function we represent the fact that they're may be not a `User` (1) for every id. To work with the user, if there's any, you would do: +{.annotate} + +1. This is a fake class. + +=== "Innmind" + ```php + getUser(42)->match( + static fn(User $user) => doStuff($user), + static fn() => userDoesntExist(), + ); + ``` + +=== "Imperative" + ```php + match ($user = getUser(42)) { + null => userDoesntExist(), + default => doStuff($user), + }; + ``` + +As you can see the 2 approaches are very similar for now. + +In this example the user is directly used as an argument to a function but we often want to extract some data before calling some function. A use case could be to extract the brother id out of this user (1) and call again our function. +{.annotate} + +1. Via a method `#!php function getBrotherId(): int`. + +=== "Innmind" + ```php + getUser(42) + ->map(static fn(User $user) => $user->getBrotherId()) + ->flatMap(static fn(int $id) => getUser($id)) + ->match( + static fn(User $brother) => doStuff($brother), + static fn() => brotherDoesNotExist(), + ); + ``` + +=== "Imperative" + ```php + $user = getUser(42); + + if (\is_null($user)) { + brotherDoesNotExist(); + + return; + } + + $brother = getUser($user->getBrotherId()); + + if (\is_null($brother)) { + brotherDoesNotExist(); + + return; + } + + doStuff($brother); + ``` + +This example introduces the `map` and `flatMap` methods. They behave the same way as their `Sequence` counterpart. + +- `map` will apply the function in case the `Maybe` contains a value +- `flatMap` is similar to `map` except that the function passed to it must return a `Maybe`, instead of having the return type `Maybe>` (1) you'll have a `Maybe` +{.annotate} + + 1. as you would by using `map` instead of `flatMap` + +What this example shows is that with `Maybe` you only need to deal with the possible absence of the data when you extract it. While with the imperative style you need to deal with it each time you call a function. + +This becomes even more flagrant if the method that returns the brother id itself may not return a value (1). The signature becomes `#!php function getBrotherId(): Maybe`. +{.annotate} + +1. as one may not have one + +=== "Innmind" + ```php hl_lines="2" + getUser(42) + ->flatMap(static fn(User $user) => $user->getBrotherId()) # (1) + ->flatMap(static fn(int $id) => getUser($id)) + ->match( + static fn(User $brother) => doStuff($brother), + static fn() => brotherDoesNotExist(), + ); + ``` + + 1. This is the only change, `map` is replaced by `flatMap` do deal with the possible absence. + +=== "Imperative" + ```php hl_lines="9-15" + $user = getUser(42); + + if (\is_null($user)) { + brotherDoesNotExist(); + + return; + } + + $brotherId = $user->getBrotherId(); + + if (\is_null($brotherId)) { + brotherDoesNotExist(); + + return; + } + + $brother = getUser($brotherId); + + if (\is_null($brother)) { + brotherDoesNotExist(); + + return; + } + + doStuff($brother); + ``` + +So far we _do nothing_ in case our user doesn't have a brother. But what if we want to check if he has a sister in case he doesn't have a brother ? `Maybe` has an expressive way to describe such case: + +=== "Innmind" + ```php hl_lines="5" + getUser(42) + ->flatMap( + static fn(User $user) => $user + ->getBrotherId() + ->otherwise(static fn() => $user->getSistserId()), + ) + ->flatMap(static fn(int $id) => getUser($id)) + ->match( + static fn(User $sibling) => doStuff($sibling), + static fn() => brotherDoesNotExist(), + ); + ``` + +=== "Imperative" + ```php hl_lines="9" + $user = getUser(42); + + if (\is_null($user)) { + brotherDoesNotExist(); + + return; + } + + $siblingId = $user->getBrotherId() ?? $user->getSisterId(); + + if (\is_null($siblingId)) { + brotherDoesNotExist(); + + return; + } + + $sibling = getUser($siblingId); + + if (\is_null($sibling)) { + brotherDoesNotExist(); + + return; + } + + doStuff($sibling); + ``` + ## In the ecosystem + +`Maybe` is used to express the abscence of data (1) or the possible failure of an operation (2). For the latter it is expressed via `Maybe`, meaning if it contains a `SideEffect` the operation as succeeded otherwise it failed. +{.annotate} + +1. Such as the absence of a [file on the filesystem](../operating-system/filesystem.md) or the absence of an [entity from a storage](../orm/index.md). +2. Such as failing to [upload a file to an S3 bucket](https://github.com/Innmind/S3) + +It also as a [deferred mode like `Sequence`](sequence.md#deferred) that allows to not directly load in memory a value when you call `$sequence->get($index)`. The returned `Maybe` in this case will load the value when you call the `match` method. diff --git a/mkdocs.yml b/mkdocs.yml index 0fa1698..5735bb6 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -77,6 +77,7 @@ theme: font: false features: - content.code.copy + - content.code.annotate - navigation.tracking - navigation.tabs - navigation.tabs.sticky From 1fdc12f997630afa5cf98160994eb5fa6058bf54 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 4 May 2024 14:38:53 +0200 Subject: [PATCH 27/68] add either --- docs/getting-started/handling-data/either.md | 173 +++++++++++++++++++ 1 file changed, 173 insertions(+) diff --git a/docs/getting-started/handling-data/either.md b/docs/getting-started/handling-data/either.md index 2790830..40cdda4 100644 --- a/docs/getting-started/handling-data/either.md +++ b/docs/getting-started/handling-data/either.md @@ -1,5 +1,178 @@ # Either +The `Either` monad always represents a value but it's either on a _right side_ or _left side_. + +If you've understood [`Maybe`](maybe.md), it's an `Either` with the `Maybe` value on the _right side_ or `null` as the value on the _left side_. + +In essence: +```php +use Innmind\Immutable\Either; + +$right = Maybe::just(42); +$left = Maybe::nothing(); +// becomes +$right = Either::right(42); +$left = Either::left(null); +``` + +It is usually used to express a value for a nominal case on the right side and the errors that may occur on the left side. This means that it replaces the use of `Exception`s. + +Each example will show how to use `Either` and the imperative equivalent in plain old PHP via `Exception`s. + +??? tip + This is because `Maybe` and `Either` are very similar that you can switch for one type to another via `$maybe->either()` (1) or `$either->maybe()` (2). + {.annotate} + + 1. then the left side is `null` + 2. the left value is thrown away + ## Usage +Let's say you want to create a user from an email and the function must fail in case the email already exist. You could do: + +=== "Innmind" + ```php + /** + * @return Either + */ + function createUser(string $email, string $name): Either { + if (/* some condition to check if email is already known*/) { + return Either::left(new EmailAlreadyUsed); + } + + /* code to insert the user in a db */ + $user = new User($email, $name); + + return Either::right($user); + } + + createUser('foo@example.com', 'John Doe')->match( + static fn(User $user) => doStuff($user), + static fn(EmailAlreadyUsed $error) => doOtherStuff(), + ); + ``` + +=== "Imperative" + ```php + /** + * @throws EmailAlreadyUsed + * @return User + */ + function createUser(string $email, string $name): User { + if (/* some condition to check if email is already known*/) { + throw new EmailAlreadyUsed; + } + + /* code to insert the user in a db */ + $user = new User($email, $name); + + return $user; + } + + try { + $user = createUser('foo@example.com', 'John Doe'); + doStuff($user); + } catch (EmailAlreadyUsed $e) { + doOtherStuff(); + } + ``` + +Here we use a `string` to represent an email, instead [we should use an object](../../philosophy/explicit.md#parse-dont-validate) to abstract it to make sure the value is indeed an email. + +=== "Innmind" + ```php + final class Email + { + /** + * @return Either + */ + public static function of(string $value): Either + { + if (/* check value */) { + return Either::right(new self($value)); + } + + return Either::left(new InvalidEmail); + } + } + + Email::of('foo@example.com') + ->flatMap(static fn(Email $email) => createUser($email, 'John Doe')) + ->match( + static fn(User $user) => doStuff($user), + static fn(InvalidEmail | EmailAlreadyUsed $error) => doOtherStuff(), + ); + ``` + +=== "Imperative" + ```php + final class Email + { + /** + * @throws InvalidEmail + * @return self + */ + public static function of(string $value): self + { + if (/* check value */) { + return new self($value); + } + + throw new InvalidEmail; + } + } + + try { + $email = Email::of('foo@example.com'); + $user = createUser($email, 'John Doe'); + doStuff($user); + } catch (InvalidEmail | EmailAlreadyUsed $e) { + doOtherStuff(); + } + ``` + +!!! success "" + Both approaches seem very similar but there's a big advantage to `Either`: a static analysis tool understand the flow of errors and can tell you if when calling `match` you don't handle all possible error values. No tool can help you do the same with exceptions. + +Just like `Maybe` you can recover in case of an error via the `otherwise` method. For example in the case the email is already used, instead of failing we can decide to update the stored user. + +=== "Innmind" + ```php + Email::of('foo@example.com') + ->flatMap( + static fn(Email $email) => createUser($email, 'John Doe')->otherwise( + static fn(EmailAlreadyUsed $error) => updateUser($email, 'John Doe'), + ), + ) + ->match( + static fn(User $user) => doStuff($user), + static fn(InvalidEmail $error) => doOtherStuff(), + ); + ``` + +=== "Imperative" + ```php + try { + $email = Email::of('foo@example.com'); + + try { + $user = createUser($email, 'John Doe'); + } catch (EmailAlreadyUsed $e) { + $user = updateUser($email, 'John Doe'); + } + + doStuff($user); + } catch (InvalidEmail $e) { + doOtherStuff(); + } + ``` + +In all examples you've seen the use of `flatMap` but you can also use the `map` to modify the value on the right side. And there's a `leftMap` to modify the value on the left side. + ## In the ecosystem + +`Either` is used when an action may have multiple cases of errors that you should handle, such as [HTTP calls](../operating-system/http.md) or when working with [queues](../concurrency/queues.md). + +But the beauty is that if you don't want to deal with the different errors you can throw them away by converting the `Either` to a `Maybe` via `$either->maybe()`. + +Like `Maybe` and `Sequence` is has a [deferred mode](sequence.md#deferred) that allows to postpone some actions as you'll see in the [concurrent HTTP calls section](../concurrency/http.md). From 33ecef83d55c4a074b06bb4bcb98f2ab6ea3188f Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 4 May 2024 14:55:16 +0200 Subject: [PATCH 28/68] add os intro --- .../getting-started/operating-system/index.md | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/docs/getting-started/operating-system/index.md b/docs/getting-started/operating-system/index.md index 7bf55a1..88ba101 100644 --- a/docs/getting-started/operating-system/index.md +++ b/docs/getting-started/operating-system/index.md @@ -1,7 +1,49 @@ # Operating System +This package allows you to deal with all interactions with the operating system in a declarative way. + ## Installation +```sh +composer require innmind/operating-system:~5.0 +``` + ## Usage +```php +use Innmind\OperatingSystem\{ + Factory, + OperatingSystem, +}; + +$os = Factory::build(); +$os instanceof OperatingSystem; // returns true +``` + +You'll see in the following sections all the ways you can use this object. + +!!! info "" + From this point on everytime you see the variable `$os` it references this object. + +??? warning + This package is not compatible with Windows. + ## Configuration + +By default the configuration of the `$os` should be fine for all use cases, but you can change some aspects via the `Config` object: + +```php +use Innmind\OperatingSystem\Config; + +$os = Factory::build( + Config::of() + ->disableSSLVerification() + ->caseInsensitiveFilesystem(), +); +``` + +Here we tell the abstraction that we work on a case insensitive filesystem (1) and that the HTTP client should not check the SSL certificates (2). But this class allows more configuration, you should take a look at all its methods. +{.annotate} + +1. [More on that later](filesystem.md). +2. You should do this only when working locally. Do NOT do this in production. From bfd58bde6c82074cd14393183d5367614e69bf91 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 4 May 2024 15:37:53 +0200 Subject: [PATCH 29/68] add clock --- .../getting-started/operating-system/clock.md | 81 +++++++++++++++++++ 1 file changed, 81 insertions(+) diff --git a/docs/getting-started/operating-system/clock.md b/docs/getting-started/operating-system/clock.md index 6b16227..bd1d1f0 100644 --- a/docs/getting-started/operating-system/clock.md +++ b/docs/getting-started/operating-system/clock.md @@ -1,9 +1,90 @@ # Clock +PHP allows to access time anywhere in a program in various ways (1) but this becomes problematic when you want to test your program. Especially if it depends heavily on time. +{.annotate} + +1. `time`, `new \DateTime`, etc... + +By using a _clock_ object that you inject everywhere you need to access time you'll be able to configure the date on which your program is tested. This means that you can test your program in the past (1), present and future (2). +{.annotate} + +1. So you can reproduce bugs that appeared in production. +2. You can anticipate problematic times such as leap years, daylight saving time, etc... + +And to ease the manipulation, all objects are immutable. + ## Accessing time +```php +use Innmind\TimeContinuum\{ + PointInTime, + Earth\Format\ISO8601, +}; + +echo $os + ->clock() + ->now() // returns a PointInTime object + ->format(new ISO8601); +``` + +This will print something like `2024-05-04T13:05:01+02:00`. + +!!! tip "" + You can specify your own formats by implementing the `Innmind\TimeContinuum\Format` interface. The format itself is described by a string that must be understood by the `\DateTimeInterface::format()` method. + +??? info + The format to transform a `PointInTime` to a `string` has to specified via an object to force you to give a name to a specific format in order to avoid to spread magic strings in your whole codebase. + +On a `PointInTime` you can access every part of the time it references (year, month, day, etc...), and has methods to modify the time to move forward or backward in time. + ## Parsing time from a string +When you receive a `string` (1) that represent a date and you want to convert it to a `PointInTime` you should also use the clock: +{.annotate} + +1. from an HTTP request or loading it from a database + +```php +$point = $os + ->clock() + ->at($string, new ISO8601) # (1) + ->match( + static fn(PointInTime $point) => $point, + static fn() => throw new \RuntimeException("'$string' is not a valid date"), + ); +``` + +1. The format is optional but you **should** specify one to avoid implicit convertions. + +The `at` method returns the `Maybe` type to make sure you always handle the case the `$string` is invalid. + ## Calculating elapsed time +We need to calculate elapsed time, among other cases, when handling heartbeats when dealing with sockets or in tests to make sure some code is executed in a certain amount of time. + +The usual approach is to use a call to `microtime()` at the start and an another at the end and subtract them. The problem with this approach is that you can end up with a negative duration. This happens when your machine re-synchronise its clock via the [NTP protocol](https://en.wikipedia.org/wiki/Network_Time_Protocol) and sometimes it can go back in time (1). +{.annotate} + +1. To avoid this problem the solution is to use a monotonic clock (via the `hrtime()` PHP function). + +With Innmind you don't have to worry about that! + +```php +$start = $os->clock()->now(); + +// do some stuff + +$duration = $os + ->clock() + ->now() + ->elapsedSince($start); +``` + +Here `$duration` is an instance of `Innmind\TimeContinuum\ElapsedPeriod` that contains the number of milliseconds between the 2 points in time. And it handles the case that your machine may go back in time. + +??? info + The time shift is handled when working with objects coming from `$clock->now()`, this is not the case when working with objects coming from `$clock->at()`. + ## In the ecosystem + +All packages that depend on this abstraction use this clock, but this abstraction itself also uses this clock. So no matter the level of abstractions you work on you can change the clock implementation in your tests. From 5d454ffcbfbfa72f7c0d7475b9b8db5f79da1b3a Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 4 May 2024 16:48:18 +0200 Subject: [PATCH 30/68] add http --- docs/getting-started/operating-system/http.md | 176 ++++++++++++++++++ 1 file changed, 176 insertions(+) diff --git a/docs/getting-started/operating-system/http.md b/docs/getting-started/operating-system/http.md index f434eb2..39774bd 100644 --- a/docs/getting-started/operating-system/http.md +++ b/docs/getting-started/operating-system/http.md @@ -1,17 +1,193 @@ # HTTP +This HTTP client uses the immutable object describing the protocol from the [`innmind/http` package](https://github.com/Innmind/Http). + ## Usage +```php +use Innmind\HttpTransport\Success; +use Innmind\Http\{ + Request, + Method, + ProtocolVersion, +}; +use Innmind\Url\Url; + +$http = $os->remote()->http(); + +$request = Request::of( + Url::of('https://github.com/'), + Method::get, + ProtocolVersion::v11, +); +$http($request)->match( + static fn(Success $success) => var_dump( + $success + ->response() + ->body() + ->toString(), + ), + static fn(object $error) => throw new \RuntimeException(), +); +``` + +When sending an HTTP request it will return an `Either`, where each of this classes are located in the `Innmind\HttpTransport\` namespace. This type may be scarry at first but it allows you to use static analysis to deal with every possible situation (or not by throwing an exception like in the example). No more surprises of uncaught exceptions in production! + +??? info + Responses are wrapped in classes such as `Success`, `Redirection`, etc... to avoid confusion as a response can be on both sides of the `Either`. This way you now for sure a `2XX` response is on the right side and the other ones on the left one. + +You can specify headers on your requests like this: + +```php +use Innmind\Http\{ + Headers, + Header\Header, + Header\Value\Value, +}; + +$request = Request::of( + Url::of('https://github.com/'), + Method::get, + ProtocolVersion::v11, + Headers::of( + new Header('User-Agent', new Value('your custom user agent string')), + ), +); +``` + +??? tip + `innmind/http` comes with a lot of header classes to simplify some common cases. + +You can always specify a body like so: + +```php +use Innmind\Filesystem\File\Content; +use Innmind\Http\Header\ContentType; +use Innmind\Json\Json; + +$request = Request::of( + Url::of('https://your-service.com/api/some-endpoint'), + Method::post, + ProtocolVersion::v11, + Headers::of( + ContentType::of('application', 'json'), + ), + Content::ofString(Json::encode(['some' => 'payload'])), # (1) +); +``` + +1. see [`innmind/json`](../../packages.md#json) + +Here we send some json must you can send anything you want. + +The body of a `Request`, and a `Response`, is expressed via the `Content` class from the filesystem abstraction. This means that it can contain any valid file content. + +You'll learn more on this `Content` in the [next section](filesystem.md). + ## Following redirections +By default the client returned by `$os->remote()->http()` doesn't follow redirections. In order to do so you need to decorate the client like this: + +```php +use Innmind\HttpTransport\FollowRedirections; + +$http = FollowRedirections::of($os->remote()->http()); +``` + +This decorator will follow to up to `5` redirections. + +??? info + Redirections are handled this way so you can compose all the decorators the way you need. For example you want to [apply exponential backoff](#retry-with-exponential-backoff) between each redirection. + ## Resiliency +We tend to think networks are always stable or services as always up, but at some point failures **will** happen. This abstraction comes with 2 strategies to deal with them. + ### Circuit breaker +If you need to call a service a lot but at some point becomes unavailable (for maintenance for example), you don't want to continue to try to call this service for a certain amount of time. + +The [circuit breaker](https://en.wikipedia.org/wiki/Circuit_breaker_design_pattern) is a pattern that will automatically return an error response (without doin the actual call) if the service failed in the previous `x` amount of time. + +You apply this pattern via this decorator: + +```php +use Innmind\HttpTransport\CircuitBreaker; +use Innmind\TimeContinuum\Earth\Period\Second; + +$http = CircuitBreaker::of( + $os->remote()->http(), + $os->clock(), + Second::of(10), +); +``` + +!!! note "" + The circuit breaks on a per domain name logic. + +??? info + In case a circuit is open then the error response will be a `503 Service Unavailable` with a custom header `X-Circuit-Opened` so you can understand who responded. + ### Retry with exponential backoff +When a call fail you can automatically retry the call after a certain amount of time. You can apply the retries like this: + +```php +use Innmind\HttpTransport\ExponentialBackoff; + +$http = ExponentialBackoff::of( + $os->remote()->http(), + $os->process()->halt(...), +); +``` + +This will retry all errors `5XX` responses and connection failures at most 5 times and will wait `100ms`, `271ms`, `738ms`, `2s` and `5.4s` between each retry. + +??? tip + You can improve the resiliency of the whole operating system abstractions like this: + + ```php + use Innmind\OperatingSystem\OperatingSystem\Resilient; + + $os = Resilient::of($os); + ``` + + Even though for now it only applies this strategy to the HTTP client, you future prood yourself by using this decorator. + ## Traps ### Unsent requests +The HTTP client doesn't send the request when you call `$http($request)` to allow for [concurrent calls](../concurrency/http.md). The call is actually done when you call `->match()` on the returned `Either`. + +This means that this code will not send the request: + +```php +$http = $os->remote()->http(); +$http(Request::of( + Url::of('https://your-service.com/api/some-resource'), + Method::delete, + ProtocolVersion::v11, +)); +``` + +Even if you don't care about the response you need to do this: + +```php hl_lines="6-9" +$http = $os->remote()->http(); +$http(Request::of( + Url::of('https://your-service.com/api/some-resource'), + Method::delete, + ProtocolVersion::v11, +))->match( + static fn() => null, + static fn() => null, +); +``` + ### Streaming + +The default client uses `cURL` under the hood and the way it is structured prevents the streaming of requests/responses. + +??? info + However the work of the [distributed abstraction](../concurrency/distributed.md) will require the default client to switch to implementation based on sockets that will open the door to streaming. From 262aa263a40df2cfa0f78e3011b96aa8468fb33a Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sat, 4 May 2024 18:11:07 +0200 Subject: [PATCH 31/68] add filesystem --- .../operating-system/filesystem.md | 251 ++++++++++++++++++ 1 file changed, 251 insertions(+) diff --git a/docs/getting-started/operating-system/filesystem.md b/docs/getting-started/operating-system/filesystem.md index 54e93f1..cc67881 100644 --- a/docs/getting-started/operating-system/filesystem.md +++ b/docs/getting-started/operating-system/filesystem.md @@ -4,12 +4,263 @@ ### Concepts +Files and directories are accessed via `Adapter`s that are _mounted_ through the `$os`. + +A `Directory` is represented by a `Name` and an immutable [`Sequence`](../handling-data/sequence.md) of files and directories. + +A `File` is represented by a `Name`, a `MediaType` and a `Content`. + +A `Content` is either viewed as an immutable `Sequence` of `Line`s or of chunks. This allows to handle human readable files line by line and alter them like any other `Sequence`. And to handle binary files as a `Sequence` of `Str` chunks. + +!!! tip "" + Since a `Content` can be described via a `Sequence`, anytime you see a `Sequence` you have an opportunity to convert it into a `Content`. + +??? note + Even though a `Content` is immutable it loads the content from the filesystem upon use. This means that if a process deletes the file between the time you retrieved the `File` and the time you work with its `Content` your program will fail. + + So be careful of the concurrency in your program! + +Via these immutable structures you can describe your filesystem structures in a [_pure_ code](../../philosophy/oop-fp.md#purity) and apply it later on in your program. + ### Accessing files +```php +use Innmind\Filesystem\{ + File, + Name, +}; +use Innmind\Url\Path; +use Innmind\Immutable\Predicate\Instance; + +$os + ->filesystem() + ->mount(Path::of('some directory/')) # (1) + ->get(Name::of('some-file.txt')) + ->keep(Instance::of(File::class)) + ->match( + static fn(File $file) => doStuff($file->content()->toString()), + static fn() => fileDoesntExist(), + ); +``` + +1. The path must end with a `/`. + +This reads the content of the file at `some directory/some-file.txt`. But if your file is located under a `sub folder` you would do: + +```php +use Innmind\Filesystem\Directory; + +$os + ->filesystem() + ->mount(Path::of('some directory/')) # (1) + ->get(Name::of('sub folder')) + ->keep(Instance::of(Directory::class)) + ->flatMap(static fn(Directory $directory) => $directory->get( + Name::of('some-file.txt'), + )) + ->match( + static fn(File $file) => doStuff($file->content()->toString()), + static fn() => fileDoesntExist(), + ); +``` + +??? note + You can use any level of directory nesting, as long as it's supported by your machine's filesystem. + +If you wan to access all the files at the root of the adapter you can do: + +```php +$files = $os + ->filesystem() + ->mount(Path::of('some directory/')) + ->root() + ->all() + ->keep(Instance::of(File::class)); +$files; // instance of Sequence +``` + ### Persisting files +To add a file at the root of the adapter you can do: + +```php +$os + ->filesystem() + ->mount(Path::of('some directory/')) + ->add(File::named( + 'some name', + Content::ofString('the file content'), + )); +``` + +??? note + If the write fails for any reason it will throw an exception. But since the files and directories are immutable you can retry them safely. + +You can construct the content of a file either via: + +- `Content::ofString()` where the string is the whole file, but beware of memory allocation +- `Content::ofLines()` that expect a `Sequence`, this automatically handles the lines feed character +- `Content::ofChunks()` that expect a `Sequence` +- `Content::none()` to create an empty file + +If you want to create a file inside a directory you can do: + +```php +$os + ->filesystem() + ->mount(Path::of('some directory/')) + ->add( + Directory::named('sub folder')->add( + File::named( + 'some name', + Content::ofString('the file content'), + ), + ), + ); +``` + +!!! note + If the `sub folder/` already exist it will add your file, any other file inside it won't be affected. + +### Removing files + +If you want to remove a file/directory at the root of the adapter you can do: + +```php +$os + ->filesystem() + ->mount(Path::of('some directory/')) + ->remove(Name::of('some file')); +``` + +!!! note + If you delete a directory it will automatically remove all files inside it! + +If the file/directory doesn't exist it will do nothing, since the end result is the same (the absence of the file/directory). + +To remove a file inside a directory you _add a new version of the directory_: + +```php +$os + ->filesystem() + ->mount(Path::of('some directory/')) + ->add( + Directory::named('sub folder')->remove( + Name::of('some file'), + ), + ); +``` + +??? info + Alternatively you can also retrieve the directory, remove the file and re-add the new directory object. However this will be less performant. + ### Modifying file content +Let's say you have a log file that you want to duplicate but containing only the errors you can do: + +```php +$adapter = $os->filesystem()->mount(Path::of('logs/')); +$adapter + ->get(Name::of('prod.log')) + ->keep(Instance::of(File::class)) + ->map( + static fn(File $file) => $file + ->rename(Name::of('errors.log')) + ->withContent( + $file + ->content() + ->filter( + static fn(Line $line) => $line + ->str() + ->contains('app.ERROR'), + ), + ), + ) + ->match( + static fn(File $file) => $adapter->add($file), + static fn() => null, // prod.log doesn't exist + ); +``` + +You can use `Content::map()` to change each line of a file. `Content::flatMap()` allows to replace one line by multiple ones, you can use this to merge multiple files together. + +??? warning + You can't write to the file you're trying to modify. This means you can't do this: + + ```php + $adapter + ->get(Name::of('some file')) + ->keep(Instance::of(File::class)) + ->map(static fn(File $file) => $file->withContent( + $file + ->content() + ->map(static fn(Line $line) => Line::of(Str::of('some value'))), + )) + ->match( + static fn(File $file) => $adapter->add($file), + static fn() => null, + ); + ``` + + You need to write the modified version to a temporary file, read this file to write it to the original file. But a [feature is planned](https://github.com/Innmind/Filesystem/issues/3) to allow to do in place modification. + ## Watching for changes +Let's say you have a directory and you want to execute some code every time some adds a file to it. You can do this: + +```php +use Innmind\FileWatch\Continuation; +use Innmind\Url\Path; + +$watch = $os->filesystem()->watch(Path::of('some directory/')); +$result = $watch( + 0, + static function(int $count, Continuation $continuation) { + if ($count === 42) { + return $continuation->stop($count); + } + + doStuff(); + + return $continuation->continue($count + 1); + }, +); +``` + +Here you'll react to `42` modifications of the directory `some directory/` and then assign `42` to `$result`. In essence this acts as a _reduce_ operation that could be infinite. + +!!! note "" + `0` and `int $count` are a carried value between each call of the function. Here it's an `int` but you can use any type you wish. + +??? warning + You should **not** use this method in production as it executes a `stat` command every second. + ## Loading PHP files + +Let's say you have a script that may be configured by an external PHP file. The config file may or may not exist and your script need to adapt to that. + +```php title="config.php" +return [ + 'some' => 'value', + 'key' => 'foo', +]; +``` + +In your script you can do: + +```php +$config = $os + ->filesystem() + ->require(Path::of('config.php')) + ->match( + static fn(array $config) => $config, + static fn() => [ + 'some' => 'default value', + 'key' => 'default value', + ], + ); +``` + +If the file exist then the return value from `config.php` is passed to the first callable passed to `match` otherwise the second callable is called. + +Here the returned value is an `array` but it can be any value. From eab17f23a58180d502bc381379c148527f53144e Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 5 May 2024 09:53:19 +0200 Subject: [PATCH 32/68] add sql --- docs/getting-started/operating-system/sql.md | 187 ++++++++++++++++++- 1 file changed, 186 insertions(+), 1 deletion(-) diff --git a/docs/getting-started/operating-system/sql.md b/docs/getting-started/operating-system/sql.md index 3e56b9b..8f0e243 100644 --- a/docs/getting-started/operating-system/sql.md +++ b/docs/getting-started/operating-system/sql.md @@ -1,11 +1,196 @@ # SQL +The SQL client is structured by 2 concepts: immutable `Query` objects as input and [`Sequence`s](../handling-data/sequence.md) of immutable `Row`s as output. + ## Usage +```php +use Formal\AccessLayer\{ + Query\SQL, + Row, +}; +use Innmind\Url\Url; + +$sql = $os + ->remote() + ->sql(Url::of('mysql://user:password@127.0.0.1:3306/database_name')); + +$sql(SQL::of('SELECT * FROM users'))->foreach( + static fn(Row $row) => var_dump($row->toArray()), +); +``` + ## Prepared queries +If you need to inject data in your queries you should use parameters. + +!!! warning "" + Do **not** use string concatenation as it can lead to [SQL injection](https://en.wikipedia.org/wiki/SQL_injection). + +```php +use Formal\AccessLayer\Query\Parameter; + +$query = SQL::of('INSERT INTO users VALUES (:id, :username)') + ->with(Parameter::named('id', 'some-id')) + ->with(Parameter::named('username', 'some-username')); + +$sql($query); +``` + +Here named parameters are used via the format `:parameter_name` with the named specified again in `#!php Paramater::named()`. + +You can also bind parameters by indices via the format `?` and then `#!php Parameter::of('value')`. This way you don't duplicate strings, but the order you add the parameters via the `with` method matters. + +## Query builder + +The `SQL` class allows you to specify the exact query you want to execute. But if you want to generate queries programmatically you should use the other classes from the `Formal\AccessLayer\Query\` namespace, such as `Select` or `Insert`. + +=== "Select" + ```php + use Formal\AccessLayer\{ + Query\Select, + Table\Name, + Table\Column, + }; + + $select = Select::from(Name::of('users'))->columns( # (1) + Column\Name::of('id'), + Column\Name::of('username'), + ); + + $sql($select); + ``` + + 1. If you don't specify the columns it will retrieve them all by default. + +=== "Insert" + ```php + use Formal\AccessLayer\{ + Query\Insert, + Row, + }; + + $insert = Insert::into( + Name::of('users'), + Row::of([ + 'id' => 'id-1', + 'username' => 'john', + ]), + Row::of([ + 'id' => 'id-2', + 'username' => 'jane', + ]), + // etc... + ); + + $sql($insert); + ``` + +=== "etc..." + Other query builders include: + + - `CreateTable` + - `DropTable` + - `Delete` + - `Update` + ## Filtering +When selecting from a table you can restrict the rows by specifying them manually in the `SQL` class. But if you need to programmatically construct the _where_ clause you can use the [specification pattern](https://en.wikipedia.org/wiki/Specification_pattern) via the `Select` class. + +For example let's say you want to retrieve all users whose username starts with `a`. The first step is to create a specification: + +```php +/** @psalm-immutable */ +final class Username implements Comparator +{ + use Composable; + + private string $value; + + private function __construct(string $value) + { + $this->value = $value; + } + + /** @psalm-pure */ + public static function startsWith(string $value): self + { + return new self($value); + } + + public function property(): string + { + return 'username'; + } + + public function sign(): Sign + { + return Sign::startsWith; + } + + public function value(): string + { + return $this->value; + } +} +``` + +And then you use it like this: + +```php +$select = Select::from(Name::of('users')) + ->where(Username::startsWith('a')); + +$sql($select); +``` + +!!! success "" + The big advantage of specifications is that you can easily compose them. For example if you want users starting with `a` or `b` you'd do `#!php Username::startsWith('a')->or(Username::startsWith('b'))`; and if you all execpt these ones you can chain a `->not()` to negate the whole condition. + + Another advantage is that this composition forces you to think about precedence of your conditions to reduce the risk of implicit behaviours. + ## Laziness -## Query builder +All the queries you've seen so far return [deferred `Sequence`s](../handling-data/sequence.md#deferred) meaning that the queries are executed immediately but the returned rows will be loaded (and kept) in memory when you use the returned sequence. + +For most queries this is fine. But if you want to select a large amount of data that may not fit in memory you should use lazy queries. + +To do so instead of using `#!php SQL::of()`/`#!php Select::from()` use `#!php SQL::onDemand()`/`#!php Select::onDemand()`. + +```php +$select = Select::onDemand(Name::of('users')); + +$sql($select)->foreach( + static fn(Row $row) => doStuff($row), +); +``` + +With this even if the result contains a million rows there'll only be one at a time in memory. + +??? info + However this means that if you call `foreach` twice it will run the query twice. The returned rows may change between the 2 calls, if you need the results to be the same you can use lazy queries! + +## Transactions + +To run queries inside a transaction you need to run the corresponding sql queries like this: + +```php +use Formal\AccessLayer\Query\{ + StartTransaction, + Commit, + Rollback, +}; + +try { + $sql(new StartTransaction); + + // run your queries here + + $sql(new Commit); +} catch (\Throwable $e) { + $sql(new Rollback); + + throw $e; +} +``` From ddcb84f21596a490c24f3dfd6748176841f48d8f Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 5 May 2024 09:54:19 +0200 Subject: [PATCH 33/68] add missing negation --- docs/philosophy/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/philosophy/index.md b/docs/philosophy/index.md index 31853c1..d0a7b91 100644 --- a/docs/philosophy/index.md +++ b/docs/philosophy/index.md @@ -6,7 +6,7 @@ While this objective doesn't directly matter for your projects it structures thi _Innmind itself tries to solve a problem._ -This is why all the packages fits together to help solve bigger and bigger problems. It also means it won't go away while the goal is not reached. And since the goal may even be unreachable, Innmind is here to stay! +This is why all the packages fits together to help solve bigger and bigger problems. It also means it won't go away while the goal is not reached. And since the goal may even not be unreachable, Innmind is here to stay! This also enforces 2 things. Abstractions need to be extremely robust to safely build higher abstractions. And they need to be reusable outside this project (to avoid being wasted in case the goal is not reachable). From 3e6dabe901d73a2055e5ff101cef254e0618c273 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 5 May 2024 10:30:12 +0200 Subject: [PATCH 34/68] add php process --- .../operating-system/php-process.md | 77 +++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/docs/getting-started/operating-system/php-process.md b/docs/getting-started/operating-system/php-process.md index 5a0d16b..eef70a9 100644 --- a/docs/getting-started/operating-system/php-process.md +++ b/docs/getting-started/operating-system/php-process.md @@ -2,4 +2,81 @@ ## Pausing +If you need to pause your program to wait for external thing to happen (or any other reason), you can pause it this way: + +```php +use Innmind\TimeContinuum\Earth\Period\Second; + +$os + ->process() + ->halt(Second::of(10)); +``` + +You can use any unit of period except months because it's not a absolute value. + +??? info + If you want to wait for years it will compute that as `365` days. But if you need to do this there may be a design problem in your app. + ## Handling CLI Signals + +Any process can receive signals to tell them a user (or the system) wants to shut them down allowing the process to terminate gracefully (1). +{.annotate} + +1. This is the prevalent usage, but [there are more](https://en.wikipedia.org/wiki/Signal_(IPC)). + +For example let's you need to import a large csv file into a database but you want to be able to stop it gracefully. You can do: + +```php hl_lines="13 15 18-21 31-33" +use Innmind\Signals\Signal; +use Innmind\Filesystem\{ + File, + File\Content\Line, + Name, +}; +use Innmind\Url\Path; +use Innmind\Immutable\{ + Sequence, + Predicate\Instance, +}; + +$signaled = false; +$stop = static function() use (&$signaled): void { + $signaled = true; +}; + +$os + ->process() + ->signals() + ->listen(Signal::interrupt, $stop); + +$os + ->filesystem() + ->mount(Path::of('data/')) + ->get(Name::of('users.csv')) + ->keep(Instance::of(File::class)) + ->map(static fn(File $file) => $file->content()->lines()) + ->toSequence() # (1) + ->flatMap(static fn(Sequence $lines) => $lines) + ->takeWhile(static function() use (&$signaled) { + return !$signaled; + }) + ->foreach(static fn(Line $line) => importToDb($line)); + +$os + ->process() + ->signals() + ->remove($stop); +``` + +1. `Maybe->toSequence()->flatMap(fn($sequence) => $sequence)` is a way to _swallow_ the fact that the file may not exist. + +This way if a user sends a signal to interrupt the script, it will: + +- pause the execution +- call the `$stop` function +- modify the `$signaled` flag +- resume the execution +- the next line that is attempted to be read won't be done because of `takeWhile` + +??? tip + You can specify multiple listeners for a single signal and they'll be executed in the order you added them. From 26b14ac9b357a5fcf2dd06809575f2fb30247b3c Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 5 May 2024 11:24:27 +0200 Subject: [PATCH 35/68] add processes --- .../operating-system/processes.md | 123 +++++++++++++++++- 1 file changed, 122 insertions(+), 1 deletion(-) diff --git a/docs/getting-started/operating-system/processes.md b/docs/getting-started/operating-system/processes.md index 92d5427..d7a0b20 100644 --- a/docs/getting-started/operating-system/processes.md +++ b/docs/getting-started/operating-system/processes.md @@ -2,8 +2,129 @@ ## Usage +```php +use Innmind\Server\Control\Server\{ + Command, + Process\Success, + Process\TimedOut, + Process\Failed, + Process\Signaled, +}; + +$process = $os + ->control() + ->processes() + ->execute( + Command::foreground('apt-get') + ->withArgument('install') + ->withArgument('cowsay') + ->withShortOption('y'), + ); +$process + ->wait() + ->match( + static fn(Success $success) => doStuff(), + static fn(TimedOut|Failed|Signaled $error) => throw new RuntimeException(); + ); +``` + +This example waits for the installation of [`cowsay`](https://en.wikipedia.org/wiki/Cowsay) before continuing via `doStuff()` or it will fail with an exception. + +??? note + By default the process is executed with no environment variables. If you try to execute a command that is reachable only because you modified your `$PATH` environment variable, you'll need to specify via `Command::foreground('command')->withEnvironment('$PATH', 'your path value')`. + + This may seem restrictive at first but it's done to force your program to be [explicit](../../philosophy/explicit.md). And it will help other developers to understand what's needed for the command to be run. + +??? info + If you don't want to wait for a process to finish you can replace `#!php Command::foreground()` by `#!php Command::background()` and remove the code `#!php $process->wait()`. + +If you dont't really care about the process failing or not and simply want to _forward_ its output you can use: + +```php +use Innmind\Server\Control\Server\Process\Output\Type; +use Innmind\Immutable\Str; + +$process + ->output() + ->foreach(static function(Str $chunk, Type $type): void { + // $type is either Type::output or Type::error + echo $chunk->toString(); + }); +``` + +This code will print the output of the underlying process in real time. The `foreach` call will return when the process is finished. + +??? tip + If you still need to check the result of the process you can still call `#!php $process->wait()` that immediately return the result. + +You can also send content to the `STDIN` of the process via: + +```php +use Innmind\Filesystem\File\Content; + +echo $os + ->control() + ->processes() + ->execute( + Command::foreground('echo') + ->withInput(Content::ofString('some input')), + ) + ->output() + ->toString(); +``` + +The input can be [any valid `Content`](filesystem.md) object, even lazy ones. + ## Streaming -## In the ecosystem +By default the process output is kept in memory so you can use it multiple times. However for some commands the output can be quite large and it won't fit in memory. + +For example you want to run an archive command that you want to stream to the output. + +```php hl_lines="10" +$os + ->control() + ->processes() + ->execute( + Command::foreground('zip') + ->withShortOption('q') + ->withShortOption('r') + ->withArgument('-') + ->withArgument('some folder/') + ->streamOutput(), + ) + ->output() + ->foreach(static function(Str $chunk) { + echo $chunk->toString(); + }); +``` + +!!! note "" + You won't be able to reuse the output twice, if you try it will throw a `\LogicException`. + +??? info + However if you've walked over the whole output you can still call `#!php $process->wait()` to check if there was an error or not. ## SSH + +You can execute commands on a remote machine through SSH the same way you'd do it on the local machine via: + +```php hl_lines="4-5" +use Innmind\Url\Url; + +$process = $os + ->remote() + ->ssh(Url::of('ssh://user@machine-name-or-ip:22/')) + ->processes() + ->execute( + Command::foreground('apt-get') + ->withArgument('install') + ->withArgument('cowsay'), + ); +``` + +!!! note "" + You can't specify the password to connect to the machine via the url. It's done to force you to use SSH keys. + +??? info + For now it's not possible to use an input when running commands through SSH. From b1c4d622d860815c9ba353e14912b79e5811ade2 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 5 May 2024 11:33:10 +0200 Subject: [PATCH 36/68] add new use case --- docs/use-cases/wait-server-start.md | 29 +++++++++++++++++++++++++++++ mkdocs.yml | 1 + 2 files changed, 30 insertions(+) create mode 100644 docs/use-cases/wait-server-start.md diff --git a/docs/use-cases/wait-server-start.md b/docs/use-cases/wait-server-start.md new file mode 100644 index 0000000..6c45ba6 --- /dev/null +++ b/docs/use-cases/wait-server-start.md @@ -0,0 +1,29 @@ +# Wait for a server to start + +Let's say you want to start the PHP HTTP server to starting sending requests to it. Before sending requests you need to make sure it's up. + +You can do so with: + +```php +use Innmind\Server\Control\Server\Command; +use Innmind\Immutable\Str; + +$process = $os + ->control() + ->processes() + ->execute( + Command::foreground('php') + ->withShortOption('S') + ->withArgument('localhost:8080'), + ); +$process + ->output() + ->chunks() + ->map(static fn(array $chunk) => $chunk[0]) + ->takeWhile(static fn(Str $chunk) => !$chunk->contains('started')) + ->memoize(); + +// you can send requests here +``` + +The `memoize` call is important because it's at this point that it will wait for an output chunk to contain the `started` text. Since by default the output use a [deferred `Sequence`](../getting-started/handling-data/sequence.md#deferred) without the `memoize` it would do nothing (as if the code wasn't there at all). diff --git a/mkdocs.yml b/mkdocs.yml index 5735bb6..a2a4b9d 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -60,6 +60,7 @@ nav: - Persist a SQL result to a file: use-cases/persist-sql-result-to-file.md - Persist crawled links to a database: use-cases/persist-crawled-links-to-database.md - Creating an archive of a directory: use-cases/creating-archive-directory.md + - Wait for a server to start: use-cases/wait-server-start.md - Testing: - testing/index.md - Property Based testing: testing/property-based-testing.md From 61f94f770dd66038f11c7d02a017940ef94040aa Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 5 May 2024 11:59:13 +0200 Subject: [PATCH 37/68] add monitoring --- .../operating-system/monitoring.md | 90 +++++++++++++++++++ 1 file changed, 90 insertions(+) diff --git a/docs/getting-started/operating-system/monitoring.md b/docs/getting-started/operating-system/monitoring.md index a9222a9..360e0a1 100644 --- a/docs/getting-started/operating-system/monitoring.md +++ b/docs/getting-started/operating-system/monitoring.md @@ -2,12 +2,102 @@ ## Processes +You can access information on all processes actually running on the machine via: + +```php +$os + ->status() + ->processes() + ->all() + ->foreach(static function(Process $process): void { + \printf( + '%s is running %s', + $process->user()->toString(), + $process->command()->toString(), + ); + }); +``` + +On each process you have access to: + +- its pid +- the user that started it +- the current cpu percentage +- the current amount of memory used +- when it started (may not always be available) +- the command + +The cpu and memory usage is a snapshot of when you called `->all()`. If you want an updated value you need to refetch the process via: + +```php +$updatedProcess = $os + ->status() + ->processes() + ->get($process->pid()); +``` + +??? info + Since the process may have finished in the meantime `->get()` returns a `Maybe`. + ## Disk +You can access all the mounted volumes via: + +```php +$os + ->status() + ->disk() + ->volumes() + ->foreach(static function(Volume $volume): void { + \printf( + '%s uses %s', + $volume->mountPoint()->toString(), + $volume->used()->toString(), + ); + }); +``` + +On each volume you have access to its mount point and its usage. The values are a snapshot of when you called `->volumes()`, if you want an updated value you need to refetch the volumes. + ## CPU +```php +$cpu = $os + ->status() + ->cpu(); +``` + +On `$cpu` you have access to a snapshot of the percentage of cpu used by the user or the system. You also have access to the number of cores available, you can use this information to adapt your program if you want to start child processes. + ## Memory +```php +$memory = $os + ->status() + ->memory(); +``` + +On `$memory` you have access to a snapshot of the memory used, the swap used and the total memory available. + ## Load average +```php +$load = $os + ->status() + ->loadAverage(); +$load->lastMinute(); +$load->lastFiveMinutes(); +$load->lastFifteenMinutes(); +``` + +You can use this load average to know if you can handle more work in your program or start throttling. + ## Temporary directory + +```php +$tmp = $os + ->status() + ->tmp(); +``` + +`$tmp` is a `Innmind\Url\Path` that you can use to [mount a filesystem](filesystem.md) or use as a working directory when [launching processes](processes.md). From 5859823ad08bab4cf8897da5ef98d3a067b3d6a5 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 5 May 2024 14:51:38 +0200 Subject: [PATCH 38/68] add networking --- .../operating-system/network.md | 173 +++++++++++++++++- 1 file changed, 171 insertions(+), 2 deletions(-) diff --git a/docs/getting-started/operating-system/network.md b/docs/getting-started/operating-system/network.md index e277590..3a5ba66 100644 --- a/docs/getting-started/operating-system/network.md +++ b/docs/getting-started/operating-system/network.md @@ -2,12 +2,181 @@ ## Unix socket +If you look to communicate between processes you should head to the [IPC section](../concurrency/ipc.md). + ### Server +The first part to build a socket server is to accept incoming connections at an ardress: + +```php +use Innmind\IO\Sockets\Server; +use Innmind\Socket\Address\Unix; +use Innmind\Immutable\Sequence; + +$server = $os + ->sockets() + ->open(Unix::of('/tmp/some-socket-name')) + ->match( + static fn(Server $server) => $server, + static fn() => throw new \RuntimeException('Failed to open socket'), + ); +$clients = Sequence::of(); + +while (true) { + $clients = $server + ->watch() + ->accept() + ->toSequence() + ->append($clients); +} +``` + +This will wait forever for a connection to open, when it does it's added to `$clients` and then resume watching for new connections. + +The next step is to define a protocol. Let's take a silly example where when connecting a client must send `hello world\n` followed by their message ending with `\n`. You can define such protocol like this: + +```php +use Innmind\IO\Readable\Frame\{ + Chunk, + Line, +}; +use Innmind\Immutable\Str; + +$protocol = Chunk::of(12) + ->flatMap(static fn(Str $hello) => Line::new()) + ->map(Str $message) => $message->rightTrim("\n")); +``` + +`Chunk::of(12)` expresses the expected hello world string. `flatMap` expresses what to do next with the read value, in this case we tell that we want a line ending with `\n`. `map` transform the line read previously to remove the `\n` at the end since it's not part of the message. + +??? info + You can explore the `Innmind\IO\Readable\Frame\` namespace to see the other kind of frames you can use. And you can also define your own. + + You can look at [`innmind/http-parser`](https://github.com/Innmind/http-parser) or [`innmind/amqp`](https://github.com/Innmind/AMQP) for concrete examples of protocols defined this way. + +??? tip + Here the `map` only modifies the message but you can change the value to any type you wish. It's even encouraged to encapsulate the data in your own classes to make sure it's the format you expect. + +You can use then the procol like this: + +```php hl_lines="11-12" +use Innmind\IO\Sockets\Client; +use Innmind\Immutable\Str; + +$server + ->watch() + ->accept() + ->flatMap( + static fn(Client $client) => $client + ->toEncoding(Str\Encoding::ascii) + ->watch() + ->frames($protocol) + ->one(), + ) + ->match( + static fn(Str $message) => $message, + static fn() => null, // either no connection or failed to read the message + ); +``` + +Sending data to the incoming connection is the same way as from the client side ([see below](#client)). + ### Client +To connect to a server you can do: + +```php +use Innmind\IO\Sockets\Client; +use Innmind\Socket\Address\Unix; + +$client = $os + ->sockets() + ->connectTo(Unix::of('/tmp/some-socket-name')) + ->match( + static fn(Client $client) => $client, + static fn() => throw new \RuntimeException('Failed to connect'), + ); +``` + +Then to send data: + +```php +use Innmind\Immutable\{ + Str, + Sequence, +}; + +$client + ->toEncoding(Str\Encoding::ascii) + ->send(Sequence::of( + Str::of("hello world\nThis is your message\n"), + )) + ->match( + static fn() => null, // message sent + static fn() => throw new \RuntimeException('Failed to send'), + ); +``` + +??? info + As you can see `send` expect a `Sequence` of messages meaning you can send multiple ones. This is so you don't have to loop yourself. + + In case you use a lazy sequence and you want to abort midway (say because a [signal tells you to stop](php-process.md#handling-cli-signals)), you can do it like this: + + ```php + $signaled = false; + $client + ->abortWhen(static function() use (&$signaled) { + return $signaled; + }) + ->send($messages) + ->match( + static fn() => null, // message sent + static fn() => throw new \RuntimeException('Failed to send'), + ); + ``` + + If the sending is aborted then it will always reach the error case, here meaning it will throw the exception. + +If you want to read data coming from the server you'd do it the same way the server does ([see above](#server)). + ## Over the wire -### Server +This works exactly the same way as unix sockets except for the method to open the server and the method to connect to it: -### Client +=== "Open server" + ```php + use Innmind\IO\Sockets\Server; + use Innmind\Socket\Internet\Transport; + use Innmind\IP\IP; + use Innmind\Url\Authority\Port; + + $server = $os + ->ports() + ->open( + Transport::tcp(), + IP::v4('0.0.0.0'), + Port::of(8080), + ) + ->match( + static fn(Server $server) => $server, + static fn() => throw new \RuntimeException(), + ); + ``` + +=== "Open connection" + ```php + use Innmind\IO\Sockets\Client; + use Innmind\Socket\Internet\Transport; + use Innmind\Url\Url; + + $client = $os + ->remote() + ->socket( + Transport::tcp(), + Url::of('tcp://machine-ip:8080/')->authority(), + ) + ->match( + static fn(Client $client) => $client, + static fn() => throw new \RuntimeException(), + ); + ``` From 72cdc00f6ed3085fddd515106e96b2ccc914a103 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 5 May 2024 15:16:26 +0200 Subject: [PATCH 39/68] add cli --- docs/getting-started/app/cli.md | 89 +++++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) diff --git a/docs/getting-started/app/cli.md b/docs/getting-started/app/cli.md index 613b35e..03d2f57 100644 --- a/docs/getting-started/app/cli.md +++ b/docs/getting-started/app/cli.md @@ -1,5 +1,94 @@ # CLI +This package allows you to build scripts in a more structured way. + ## Installation +```sh +composer require innmind/cli:~3.6 +``` + ## Usage + +```php title="cli.php" +output(Str::of("Hello world\n")); + } +}; +``` + +If you run `php cli.php` in your terminal it will print `Hello world`. + +You should already be familiar with the `$os` variable by now, if not go the [dedicated section](../operating-system/index.md). + +The `$env` variable is the abstraction to deal with everything inputed in your script and everything output that comes out. It behaves like an immutable object, meaning you **must** always use the new instance returned by its methods. + +To change the returned exit code you can do `return $env->exit(1)`. + +If you only have one action in your script you can do everything in the `main` method. But if you want to expose multiple commands you can do: + +```php title="cli.php" +use Innmind\CLI\{ + Commands, + Console, + Command, +}; + +new class extends Main { + protected function main(Environment $env, OperatingSystem $os): Environment + { + $commands = Commands::of( + new class implements Command { + public function __invoke(Console $console): Console + { + return $console->output( + Str::of('Hello ')->append( + $console->arguments()->get('name'), + ), + ); + } + + public function usage(): string + { + return 'greet name'; + } + }, + new class implements Command { + public function __invoke(Console $console): Console + { + return $console->output( + Str::of($console->arguments()->get('name')) + ->toUpper() + ->prepend('Hello '), + ); + } + + public function usage(): string + { + return 'shout name'; + } + }, + ); + + return $commands($env); + } +}; +``` + +If you run `php cli.php greet Jane` it will output `Hello Jane` and if you run `php cli.php shout John` it will output `Hello JOHN`. + +??? info + For simplicity this example use anonymous classes but you can use any class as long as it implements `Command`. From 359e7ddd6d2d58a540b8522a4c013795fea0a9e5 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 5 May 2024 15:39:17 +0200 Subject: [PATCH 40/68] add http --- docs/getting-started/app/http.md | 93 ++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) diff --git a/docs/getting-started/app/http.md b/docs/getting-started/app/http.md index 806e190..9520035 100644 --- a/docs/getting-started/app/http.md +++ b/docs/getting-started/app/http.md @@ -1,5 +1,98 @@ # HTTP +This package allows to build simple HTTP applications by representing requests and responses via objects. + ## Installation +```sh +composer require innmind/http-server:~4.1 +``` + ## Usage + +```php title="index.php" +protocolVersion(), + null, + Content::ofString('Hello world'), + ); + } +} +``` + +If you run the PHP server in the directory of this file via `php -S localhost:8080` and run `curl http://localhost:8080/` it will print `Hello world`. + +??? note + You can expose this script via any HTTP server that supports PHP. + +As you can see the response body is a file content, meaning it accepts any [file content](../operating-system/filesystem.md). + +```php title="index.php" +use Innmind\OperatingSystem\OperatingSystem; +use Innmind\Filesystem\{ + File, + Name, +}; +use Innmind\Http\{ + Headers, + Header\ContentType, +}; +use Innmind\Url\Path; +use Innmind\Immutable\Predicate\Instance; + +new class extends Main { + private OperatingSystem $os; + + protected function preload(OperatingSystem $os): void + { + $this->os = $os; + } + + protected function main(ServerRequest $request): Response + { + return Response::of( + Response\StatusCode::ok, + $request->protocolVersion(), + Headers::of( + ContentType::of('image', 'png'), + ), + $this + ->os + ->filesystem() + ->mount(Path::of('images/')) + ->get(Name::of('some-image.png')) + ->keep(Instance::of(File::class)) + ->match( + static fn(File $file) => $file->content(), + static fn() => throw new \RuntimeException(), + ), + ); + } +} +``` + +This example will send back the image at `images/some-image.png`. If the image is not found then it will throw an exception. + +??? note + The `main` function will catch all thrown exceptions and will return an empty `500` response. This is done to make sure not stack trace is ever shown to a user. + + During development if you want to see the exception you can catch all exceptions yourself and use `filp/whoops` to render it. Or you can use [Innmind's framework](../framework/index.md) and its [profiler](../framework/profiler.md). + +!!! info "" + For a very simple app this is enough, you can even do some routing manually by analyzing `$request->url()`. For any more than that you should start looking at the [framework](../framework/index.md). From 4d98855c84c43b541e3528ad277c3ad3a7fe02a2 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 5 May 2024 16:21:08 +0200 Subject: [PATCH 41/68] add framework introduction --- docs/getting-started/framework/index.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/docs/getting-started/framework/index.md b/docs/getting-started/framework/index.md index 7ab19c4..f947002 100644 --- a/docs/getting-started/framework/index.md +++ b/docs/getting-started/framework/index.md @@ -2,6 +2,21 @@ ## Installation +```sh +composer require innmind/framework:~2.2 +``` + ## Concepts +The framework is defined by an entrypoint defines the context in which the framework will be run. Each entrypoint exposes a `configure` method to configure an immutable `Application` object. + +`Application` is the way to describe what your program can do. This is the same class no matter which entrypoint you choose. This allows you to switch the execution context without modifying any line of your code (1). +{.annotate} + +1. For example moving from a synchronous HTTP context to an async HTTP server. + +The other advantage of this approach is that if your program is accessible from both HTTP and CLI it can be [configured by the same code](middlewares.md). + ## Advanced usage + +The framework offers more than the features shown in this documentation, after reading the following sections you should head to the [package](https://github.com/Innmind/framework/) to learn the extent of its capabilities. From ebc4d7aaf7a72cf9f9fc69b700ac49b028ae5e5e Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 5 May 2024 16:21:16 +0200 Subject: [PATCH 42/68] add framework cli --- docs/getting-started/framework/cli.md | 117 ++++++++++++++++++++++++++ 1 file changed, 117 insertions(+) diff --git a/docs/getting-started/framework/cli.md b/docs/getting-started/framework/cli.md index f19da1b..119dd6f 100644 --- a/docs/getting-started/framework/cli.md +++ b/docs/getting-started/framework/cli.md @@ -2,4 +2,121 @@ ## Usage +The first step is to define the entrypoint: + +```php title="bin/console" +command( + static fn() => new class implements Command { + public function __invoke(Console $console): Console + { + return $console->output( + Str::of('Hello ')->append( + $console->arguments()->get('name'), + ), + ); + } + + public function usage(): string + { + return 'greet name'; + } + }, + ); + } +}; +``` + +You can now do `php bin/console greet John` to print `Hello John`. + +??? info + This is the same classes used in a small [CLI app](../app/cli.md). This allows you to easily migrate in case you app grows and you decide to use this framework. + +??? tip + The full definition of the function passed to the `command` method is: + + ```php + use Innmind\DI\Container; + use Innmind\OperatingSystem\OperatingSystem; + use Innmind\Framework\Environment; + use Innmind\CLI\Command; + + static fn(Container $container, OperatingSystem $os, Environment $env): Command; + ``` + + - `$container` is a service locator + - `$os` you've seen it in previous section + - `$env` contains the environment variables + +You can add as many commands as uou wish by chaining calls to the `command` method. + ## Composition + +You can decorate all commands to execute some code on every command like this: + +```php title="bin/console" +new class extends Cli { + protected function configure(Application $app): Application + { + return $app + ->mapCommand( + static fn(Command $command) => new class($command) implements Command { + public function __construct( + private Command $inner, + ) {} + + public function __invoke(Console $console): Console + { + // you can execute code before here + $console = ($this->inner)($console); + // you can execute code after here + + return $console; + } + + public function usage(): string + { + return $this->inner->usage(); + } + } + ) + ->command(/* ... */) + ->command(/* ... */) + ->command(/* ... */); + ); + } +}; +``` + +For example you can use this approach to prevent commands to be run during deployments by checking if a file exists on the filesystem. From 3ba3ecf233ca58dd2c37714d5ec2bbb305669491 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Sun, 5 May 2024 16:57:58 +0200 Subject: [PATCH 43/68] add framework http --- docs/getting-started/framework/http.md | 158 +++++++++++++++++++++++++ 1 file changed, 158 insertions(+) diff --git a/docs/getting-started/framework/http.md b/docs/getting-started/framework/http.md index 4dd9d62..fca433d 100644 --- a/docs/getting-started/framework/http.md +++ b/docs/getting-started/framework/http.md @@ -2,10 +2,168 @@ ## Usage +The first step is to define the entrypoint: + +```php title="public/index.php" +route( + 'GET /', + static fn(ServerRequest $request) => Response::of( + Response\StatusCode::ok, + $request->protocolVersion(), + null, + Content::ofString('Hello world'), + ), + ); + } +}; +``` + +Now `curl http://localhost:8080/` will return a `200` response with the content `Hello world`. + +You can specify placeholder in your routes like this: + +```php title="public/index.php" hl_lines="1 7 10 15" +use Innmind\Router\Route\Variables; + +new class extends Http { + protected function configure(Application $app): Application + { + return $app->route( + 'GET /greet/{name}', + static fn( + ServerRequest $request, + Variables $variables + ) => Response::of( + Response\StatusCode::ok, + $request->protocolVersion(), + null, + Content::ofString('Hello '.$variables->get('name')), + ), + ); + } +}; +``` + +`curl http://localhost:8080/greet/Jane` will return `Hello Jane`. + +!!! info "" + The route template is defined by the [RFC6570](https://tools.ietf.org/html/rfc6570). You can learn more about its implementation in this [package](https://github.com/Innmind/UrlTemplate). + +??? tip + The full definition of the function passed to the `route` method is: + + ```php + use Innmind\Http\{ + ServerRequest, + Response, + }; + use Innmind\Router\Route\Variables; + use Innmind\DI\Container; + use Innmind\OperatingSystem\OperatingSystem; + use Innmind\Framework\Environment; + + static fn( + ServerRequest $request + Variable $variables, + Container $container, + OperatingSystem $os, + Environment $env + ): Response; + ``` + + - `$request` is the parsed request sent by a user + - `$variables` gathers all the values described by the route template + - `$container` is a service locator + - `$os` you've seen it in previous section + - `$env` contains the environment variables + ## Composition +You can decorate all routes to execute some code on every route like this: + +```php title="public/index.php" +use Innmind\Framework\Http\RequestHandler; + +new class extends Http { + protected function configure(Application $app): Application + { + return $app + ->mapRequestHandler( + static fn(RequestHandle $route) => new class($route) implements RequestHandler { + public function __construct( + private RequestHandler $inner, + ) {} + + public function __invoke(ServerRequest $request): Response + { + // you can execute code before here + $response = ($this->inner)($request); + // you can execute code after here + + return $response; + } + } + ) + ->route(/* ... */) + ->route(/* ... */) + ->route(/* ... */); + ); + } +}; +``` + +For example you can use this approach to prevent routes to be run during deployments by checking if a file exists on the filesystem. + ## Webserver ### Apache, Nginx, Caddy, etc... +In the example above we expose the program via a `public/` folder. You can expose this folder with any HTTP server you're familiar with. + +You'll need to enable url rewriting so all paths requested are redirected to the `index.php` file. + ### Built-in + +Instead of using the `Innmind\Framework\Main\Http` entrypoint you can use `Innmind\Framework\Main\Async\Http`. Now the PHP file is a CLI program that will open the port `8080` by default on your machine. + +You can send it `curl` requests just as before. The difference is that your code now runs asynchronously (1). +{.annotate} + +1. As long as you use the [Operating System abstraction](../operating-system/index.md). + +!!! warning "" + This execution mode however is limited. For example it doesn't support multipart requests. + + You should use this as an experiment to see how your code behave asynchronously. From d3b6feca05916ec56d30ba82ea16c619ca4bb9e0 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Wed, 8 May 2024 09:43:55 +0200 Subject: [PATCH 44/68] add middlewares --- docs/getting-started/framework/middlewares.md | 145 ++++++++++++++++++ 1 file changed, 145 insertions(+) diff --git a/docs/getting-started/framework/middlewares.md b/docs/getting-started/framework/middlewares.md index 1e80a21..7d77cc0 100644 --- a/docs/getting-started/framework/middlewares.md +++ b/docs/getting-started/framework/middlewares.md @@ -1 +1,146 @@ # Middlewares + +So far you've configured each kind of app directly in its entrypoint. This is fine for small apps that you don't unit test. But as your program grows you'll need to better structure it and test it. + +The way to organise the framework configuration is through _middlewares_. And it looks like that: + +```php +use Innmind\Framework\{ + Application, + Middleware, +}; + +final class MyMiddleware implements Middleware +{ + public function __invoke(Application $app): Application + { + return $app + ->command(/* as seen previously */) + ->route(/* as seen previously */); + } +} +``` + +In this method you can configure the `Application` the same way you would do in the entrypoint. And since the configuration api is the same no matter the entry point chosen (HTTP or CLI) you can declare both CLI commands and HTTP routes inside the same middleware. + +And to use it: + +```php +use Innmind\Framework\{ + Main\Http, + Application, +}; + +new class extends Http { + protected function configure(Application $app): Application + { + return $app->map(new MyMiddleware); + } +}; +``` + +??? info + The notation `$app->map($middleware)` is just an invertion of who calls who for better chaining methods. If you look at the implementation it does `$middleware($app)`. + +Since the middleware is plain old PHP object, you can also add parameters to it. + +Let's say your program is a website that is accessible both in french and english. Instead of adding a parameter in every route and pass it around in every layer of your program you could do: + +=== "Entrypoint" + ```php + use Innmind\Framework\{ + Main\Http, + Application, + }; + + new class extends Http { + protected function configure(Application $app): Application + { + return $app + ->map(new MyMiddleware('fr')) + ->map(new MyMiddleware('en')); + } + }; + ``` + +=== "Middleware" + ```php + final class MyMiddleware implements Middleware + { + private string $language; + + public function __construct(string $language) + { + $this->language = $language; + } + + public function __invoke(Application $app): Application + { + return $app + ->route("GET /{$this->language}", /* index handler */) + ->route("GET /{$this->language}/route1", /* handler */) + ->route("GET /{$this->language}/route2", /* handler */) + ->route("GET /{$this->language}/route/etc", /* handler */); + } + } + ``` + +??? tip + And since you have access to the language at the configuration time you could even use different databases. + + === "Middleware" + ```php + final class MyMiddleware implements Middleware + { + private string $language; + + public function __construct(string $language) + { + $this->language = $language; + } + + public function __invoke(Application $app): Application + { + return $app + ->service( + Services::database($this->language), + fn($_, $os) => $os + ->remote() + ->sql(Url::of(match ($this->language) { + 'en' => 'mysql://127.0.0.1:3306/website_en', + 'fr' => 'mysql://127.0.0.1:3306/website_fr', + })), + ) + ->route( + "GET /{$this->language}", + function( + $request, + $variables, + Container $get, + ) { + $sql = $get(Services::database($this->language)); + $someData = $sql(/* some Query */); + + return Response::of(/* build response with $someData */); + } + ); + } + } + ``` + + === "`Services`" + ```php + enum Services + { + case databaseEn; + case databaseFr; + + public static function database(string $language): self + { + return match ($language) { + 'en' => self::databaseEn, + 'fr' => self::databaseFr, + }; + } + } + ``` From a77b71fa3e311080b243e8cefdec9886c64bf540 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Wed, 8 May 2024 10:36:34 +0200 Subject: [PATCH 45/68] add profiler --- docs/assets/profiler/app_graph.png | Bin 0 -> 232818 bytes docs/assets/profiler/environment.png | Bin 0 -> 73880 bytes docs/assets/profiler/exception.png | Bin 0 -> 211533 bytes docs/assets/profiler/http.png | Bin 0 -> 160977 bytes docs/assets/profiler/index.png | Bin 0 -> 82839 bytes docs/assets/profiler/processes.png | Bin 0 -> 99023 bytes docs/assets/profiler/remote_http.png | Bin 0 -> 163254 bytes docs/assets/profiler/remote_processes.png | Bin 0 -> 119446 bytes docs/getting-started/framework/profiler.md | 87 +++++++++++++++++++++ mkdocs.yml | 3 + 10 files changed, 90 insertions(+) create mode 100644 docs/assets/profiler/app_graph.png create mode 100644 docs/assets/profiler/environment.png create mode 100644 docs/assets/profiler/exception.png create mode 100644 docs/assets/profiler/http.png create mode 100644 docs/assets/profiler/index.png create mode 100644 docs/assets/profiler/processes.png create mode 100644 docs/assets/profiler/remote_http.png create mode 100644 docs/assets/profiler/remote_processes.png diff --git a/docs/assets/profiler/app_graph.png b/docs/assets/profiler/app_graph.png new file mode 100644 index 0000000000000000000000000000000000000000..71dc0ac8a4ef2a990802cc3cd878f8c823908f8c GIT binary patch literal 232818 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%0A*DWj>sTKOZftpgy7->t(x^Y6h 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

Y{)lV0s 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 Bl)nG~ literal 0 HcmV?d00001 diff --git a/docs/assets/profiler/exception.png b/docs/assets/profiler/exception.png new file mode 100644 index 0000000000000000000000000000000000000000..a8c9efaaf45c626ab051e55f6b279c4e30f1ec3d GIT binary patch literal 211533 zcmeEuby$>rw=N*vNJ$9{ASf}?-9wjv5>nD2-3=l&Gz!uUN;lFa-AH$LcQbGv-f!=3 zf7jXj>~~+sf6gDrYlLy;$@N=t-}hRN!EY3$u+T}-;o#t~WTYV~aBvtraB#>FRAk_j zm^jD`92};sxw!Zn8F6u{H}*Cr=9b2AaMHow)KN54dx%oCRAkJ2QKiuugH^KS&@v=& zqh3v+%1~vrN8v*Dddty^bs!=-!|(8jU7V1NigGOs@%D<>GoT^mEJT*M4KnaLmmY^+ zhn|abx10UE4=-H~1~B3HI0f=Jh{utrlvJofBT@AgWE2d))WIXXNymzZJG!!e$7PPa9#7afl3Mx^n44~7j!WM>6HgmIbRwtA-hUS;o2U1FX7~6 zRxyIE8A1CG+#or7!%WVbFnK#3VuKp7-yl19ZspZ_c?KN0-?kIoCLLYatMVj4MaNc4 zJ#X#4UE~n(%2;AOV10?=?|;bGh>6b}B*`KQi8iE~2#kL@Bm-5M{lL`$QtU4cm&YsV zUqm(#&Y%TB1|kQ#V*zVqdcs_>50T1hz(>G^xm-v$u&iOW<>Po+WsaZUnKV%wbHA z>|7JtqeQrnUun2#zMk!12qzDGh_CjQR>sNKFo+y7 zPP*h>zP8x**9Hu%U!N&DwksTo%uz-LPJZB-v!k4I z;h7z}@DK7=Z1rk=Cq}%yA%FaITK&AVh4wcRjladm!K-qUIqY)x6>3+wwV*j3d~SG_ zE7xbi;V8eRQs49q8xpLOd zD5<+hR{;fiWBT>t^Ww&0$}tC|R?zw-o~?<@W_P=0CIS(e_jLeMvA?i0X5aky05RP9 z1N4Ud{A=Egk4XHc@a{?ElO-+WZ<=XN0v2%Cf{34vZz=|FkURy|p4evll|&KdJJpY$R>VnA6OZX)<1Ag!R5E8 zl~U{>3x9^Cqmd)ix7aKpY{9AjVyK^K*UPH9U-iBC%E~9kUkWQX=ydnMgDKW!& zi)ReQI7`_K#78k8b~W4B7 z(%9ghQX~x$HQ#XqEDa3L!MHM(LL84Ed^_a9R-GmEi1uh(q0~rli~7>LE9(Y4;Q+nP z!)4eNJwnO{S=$#^cs2en{h3-V#a?E7E{(R0vL$U&5cHpffWF97(z~}+vwn+LNS4zU zos*xF5>VWub;d`Lrv1v=lRzL6LU$~Ul&v!IVnla@b%ag@XPa3w)Kb)$J}7#$`{~J3 zdn7lUYliEm*LZGGnQ~>{uapg5BJ`5?zUsx6#aIV@4`P!Z&zezvk{di`xnuB=?x(MN zqI=Sfikw`ZY@fPCd8~%T7q#ybO7Bg79+)>~ZI33Kkey;jj73!Sq9DVUsF=uwz zZ`=F~;YQY-0!9mCffaFydlYi1Yo#~7sefOueEao+ogyTn2wTfEP_axgU=Thfl+UY< zK!;x^ffN-lLz54f z7RW)rOqq=LJ|vr*J;TM?!>U1^MqWo2CaokpBikX1;FjlNVk_hlFqrCSk9U@5VUMc~ zsZDbWzxIxqX1HKj&Rx$UmDC|U?=-7aF8%U5x8E#n_+8dzC)4WdRq|ENPK8bvd0Tw? z=$;o93RUsRT-#(;uV;KXd>p5@U|A2ZB@|NRR~0rBt+}n(DPFU4hrW(Zv|{5opD-Qd zz~LI=(zEd%Ync43k7q_*rD0>&zk=2m)nT$;{z@}P0~Y%u_Dd{!pH=LBte@J2nv9xU z;f3aW*^l?P8m8|{ssSrhmz5?Mu@C)N*uc>WDT*xWcFx)-ndNrAaDM5$IKw$DSjAnw zIYT@Q5;t!PEj@mo0grLY!0&evo;yh z8h-53cFCwM)j`+U(K!e=jtGBVZ)7<-Wx8tF`8`~V{h+@_sW`Q`wwPbrrgpnt!BJ~v zV&$TBz9;2Sci+3i?*Q+h?044m>b2|UaqF>G=i-r(tK!MsM8)`NR$O&lf5ESU$=Oc+ z`TEY=x=3H8{9e4 zBuk7fbR(o6DBhG)ghnLo82MOrl$I1ss0$=_(EaW~lS5-+3_GkZ0pyr&ZO5zqo8&kh zVl-lXVzX^$ZC_jSTMq)Y0!#xYgD$09CHup9p36YPLbUPSQY<>x9d>JA_>J^~X|AtA zh`!;zBXkm;dHJ4bo((O9!)~NbrrOZbkd{@Uj4GC_p5;O@*-P7dt|U4*di906lJ~Pi zB4O~oJOYirNo%VAWH5Db!BZPLUfP#m-$y%r&7qs5YnDM%&`cWPG@gsOR%OXf%nnga z8kIKhG3Ose{t>7!|N5tC;%4QD`Q(pTC2*p*bzo1}9Ep_4PXF3~K$N1ilFVZCy)SWJ z!8(?aE&E5dn``oW$$M4N(hrU4>d&aO89if2qH4KL?bJjj>I!w0qjJT@=r^DR?L!qb z71buqJ;4Lh-`Hc4zSe^yljBldq%*-iUy>7zg$m5na>g{@zuND;>|2al1c!dzkD)o) zKG{HcQloF9%EQp4JjaO1RLJ7V&+m5O3u*+(D9@7T@b+yAyut?G>$3>O30FI%t~Yd? z9t@ZcEmpy4MwO*IWt_Ku4G;_k5$)^B>m*lPUD6fHO|ZEA#Vv@+?1b}aP`mG78`hWOoWexhlJ~V8~!$sWXV;u zaF!wa*6Al-w!2=q`M^mccM?((*a~f7q;%ZU;(Fq8F|@h4jM+fTut>+M!x?bqeH<6s zL!MK=Asi=u1?SkqyBfLj0t=VB168L5Cnpd2%ffuAUBdH5kDUGeE7r5F4dl2$tK0b7 zULOSEm)`Ct4mU%S7gGB+f=dqR%fz#KAFvNgKjW*cY7!0vjM2S@v6+sVJ(&QyMX z$Bz>SKR5??thbKG7o<#nEuOCt+IOGC`W4>A?O-GHkaZOKODohG-#Tu7xKY(^^2~a_ znf&2rNngQkcjIplt4sWY#hncoVJ|A5ql}z2YM6cpO{kPpm=NI>9cDq!0N{RMtxeyA6|mHoXg^&GWFq z&H04Omxq*CgZCmgZ?1=r4f}F(m8yeI0t2%JNR)mOwk(OTv%|ZVVZgb+n&Wqb6G_Pz z+RQ^#PE&Y?dPiRoZevaLcwBu08z)CW5a{tl|NQfh>oj&X|Bo|S zJN(;i0XGPK{07X*@*4clV*|SiJbude#@yA|QUhXcWo+#LoI{9>hnr2{uO0r=SO0O! zf7w;@KXzs1dd=~#yZ*~p|F)|D`0*D0<(B?oufIM83?_sw0RE@(h0v*&f>wd`AUB67 zy#;yz~&u>f@EtL32CY16d*OrEyXt$~upi^PEx{z>P<1uKt>y_X&0nVAxQk`(f%;SX zkFv1rmlk-szZRX-e5Bp|V$a+()y>2gb@1VO$j9IRb)M1hYbtFBD4HuilL3T$!gd+l{rNGZG~ES z_>a=I?b1`8bi_emtxA9Sp=b@!xW8|7KW8d=pUQu7t+zRQbG~bJLLY54RjSWrI+*;V zS}J$_k52gLn$LV4&UeO(95x4?hb4$Lfy!L?aXeqG%s?W@d$L%k%4(MD(O(*mS~0jB zHso)23QA;;OLNWs?`;aK2hVFX^4AEPTvjvB@RElFFSU24%Cg?&zWLSrjd3&LW}y*) z+z0bq9v7A#*XwaQh?@Zz#Lwde#fpgjU@dWdRcPPrAecfr@AjuFax_@ab|;6h1<&4) z@z|#S1n$#X6N8AU^b3vDjA@#eiD6enc+v|k#=bbP4Qj!4bnu@g8Bg)_w@8DiNn{*m zONfJH+}4#8{LTckcC}|Caz%g#Pvj_3a)+z`K3VVEZ^IGh`0;3#23k!`^;&!50@a)d zeC`sRdNt5y;hT3a{$$l}pZKca^UzpZ&s64dTF*`8zs)nysR!K)w}W`q1%3wfkb0H zuk&x;z+`6 zu+@ti28614C=qjc3cvHrjFW}c#olz4$E7v#I4?f@Q7E{{%+1YBt=Zd)JA5Ocg;!X3 zaiU0T^9QlEt>{cpbVGMDP&FpX45cjIH2c2G*Y0^=ZEcmp@8XPLkqM!(O=U9<3Ds6O z+p-L<9WAbLCit@edGY2Ig6WJl;BvdaGyGCqSAr)hOqB|Nx{FT<)~f4AORlz@HYk`Z ztm1Xpn97!k*1p-Ft>!GQ3`+ zyA%JiKmK0js3LoN3pA`OoQ!+sM|e{I1@qH^>u4pRG7@%^nti}&+1h{Q&GJ?~| zWxgwVKQ5sbL2vs)p zSg0_K^b_*A_e|n-_`$4M-VR+6@Var-sSE?_*J60Bb4wMHzryU~{Zb2TReIEA@Y9+c>yOSj@ zc#(JlIFv$jCPS$d3Pdh$EA7E7pDT!YJgC`&8;?lzEA$rYT@GumA?nV1Q^Uwuq-%%+ zknCb0h&VrvF(mdg<9~DSAZE0jDAeR~-qT3p^oRv2zzZT7z5~VgFaONwK#?QlX-nAZ zL`}NA*tdY)URHO8lkxjHJUizRcn)|;8DPJeVx4-+g$B2ayVIfBv+dC~TDwhp`S_(w zZuR`PJ!pw|Y(aRLctRBo4x5Vf_CJIqG=VVKUkL?QUF^?lb%YS^r~6@-lX8A+pAT=q z<0*Onv$r#h#BjAM(nZWvFQ|s!{QG~6wEu^^nEV5xtj-dqO?yYzbC1Fl@0)Gsvtg+& zLLPh_5}Fw{F@3~AsGn(nyuOm)d5l5|-?)|18ICe5Xsw|^KwVeBmwor-^i*d7T7*$? zFke4QsIINAQ|D+0vN|b#|MMdgDf>C*07kO#)zT9(Rs(+^F$|*RwQ(d8|7qe;L`~*J z1J7sx1&paZSMWXbHgyl^B;BD0btIX;>Y6A+yu}%XfdGqL>HR}j zd1SkQ`3Nn&eX5X```nY;P2q>>kCVk#%vx2IiJTUlh$FNY2XK< zy9RQAOrtnASD+5Aro2_5)Kk)va=th>@*d8V;L>kJB;&Queq@PFcPD-EW=Z>Oe*`UY zeaZ279H>rCPLgwLy>2fQm*xN%V=19kh9O=PAB+cQ&dto6PIb znr(fLB7Eih$Y7vN67q=gX@CkLpS^Z{y2=0Lw8n1L5^$)pAD~pp>^Xpo(L8;O9i1_=r??7kK)|r{ zp2V{nCiCzSP^$)c!)|!(PBVg@?|?+`e@#zzO$IdN;-BlwrsTHezbmi=GWNwrlFiJ> zcR86Ce}p&S@u1>Vn}~yBWjgiFTt?lvyW<7w@=N5BauFfPUbLo=UZD26D90y&R9@7v ztL3TCiLZr;By9ao;d8PVGp?czOXakP4K2R|G=W+ez{q=EWNBaQ&ipLEBIo&C=eWJn zJ`7E2Y$0J~-{=_7e`}6782v(_JWkiWC%8mM4ECoNFGod>G&oiXkR9h~<2c?g?89I2 z7-*<2S`EM~FPL{3-{vk=Jqi>H-nUlt_CU?308pJDEz1e}^;n*2*CXDB3}TUT*v?KA z>+H4<^u;n)0136OyHB_B5k?jO)gSBG>lQ`cb%JV2gpK)nm#$2ipjMMA>J~{V1w_;K zfgyp@uz^&;*>B%{{xFFJqpcOTB)r1syv{EuE(cg7S*t#nR#JN}U{ENLeO9B{>(<%h zd|W-Ho1_ddXYZQt8`5EWUES0qQ+|UrAS2KRnxr3_}n4W9}NM60J}($ha)c=+ivQ zA8`vn5-9MsD&{eg5^iz_V_4lzjOeXX`J7($82zD*WpKOQeA%r;);!n0slSh7(Mi5~ z1~4@v!~tlGSNl2ufO}(EbUq$7UZ#dq3NHZJbKAc^;{z|+i!xf&Z!dFXqF+o@+vxG% zU#%8Ngc7L%I6V$onLX3&$843A1A^%en_(xW$4*|3{L02N*@6EdV)(B&6H!6z^>0at zb=;pBXKA`Jc+7?t8sVgzg#d@F0>BM%<26u1s~#)X4~3+?aPEat0On5vxmTys6l}|) z*Bt%M%)9WN+1NnuIA443yS)9AnR>72eVBdOzOLYaGnmZOV`AXO1SaImuAD%|`O)Yv z#A4S;qE_#0rEU!**yO1?mG82}b3l=-@gic<_%I~=(4deeG|#-7h6)uq!2j?Y;mNaS zRKMVmG%wI_(I|Zyfos?^EhZ05ftwswOySc665T%RauIxS@>awI@fmLCCnjW1)+@Oe z|ArN771IGsuU4SOd?j z98RANLG+Ua>O(+yTLbz>H6T^g(69qomA)wvpdF!2e}(q%y=Mhu+bWEUxl$@pHbXlv zs~jdAsywa{#)g=1sgB%HhxqcFLt@&99JKOjV#Gk-6*YN9i@(V`#S*x9A^S zV%P7ikg0F!Tgu;{X9Cf5d9-A6Ie@$-Pdyv9^Fzj(>$A+{u8@yu%~Q>(6Gn7`R^*d= z6}+?L?$)PLIX#e|vAPTit}<=&oK0#TECR==FZNDanG#|jSP{O*36pSM;Pk1ndRSti zc>wsl7LbzWDTj4|r7;gNut?ZbxC2x<|jH73U7768l~fC6dqZDuOX zmxD2;-G3nwPvxX}zn4b0$_I3=-6Yf$R{t7dU?GuSgd#SbrX2Dt^JwZi3~+Lpk7P4# z6c>hs!s#j0EC-UI8#N1~C10uwdz=n%&jt|dKI6Ae_5sxU2xbdOL^e9xqhBawm&BM) zdDf!DzYa!#3to5c>pk4WK`v!fRa=cvwY{&`54gJlq`TTw8r?6Ht)IT5cYi`m#%>~C zUeBPziuWOksR^D;z_s-FT{h$eWehZIB8~`%su56HqrK{}sJmLM;6bm<-!RXw)NeKr z2RZVc_h%Fx>jCwrK(D!JeRH!uZW?NKooy9>PFVQ9C@|J##H%cKfIml|0sQK;!o=f} zVDP*4wbyWJv*|bYyWihw5*_aOA58UpYC9#a#6IX`Nn+8UYXB82bV1$?HJ#gP=B?|3 zv8}~olh^()6iTKyr=cu$-4cR~rED5J*K5)HsU8Pt6Yl z+zW+Fuf7v^|5F;tFb3Rj2firJZ4uyZ(zy}WfoOG99vTGnNdDt?{P`bpEVb=uhhBA0 zoO*fD(|~I4jRD`f!M*4?DiLV93aq|)TM*8J8efrgT8kXG(Fmwl4kQf^_qSY*TffiP zM^ot}(}4uS@=Ey2Qaylhdgs#+2cNIqZWHIC!a4>jKBW$}@2AdRq7-PQ z%Z|amsq5P5sUDNnn34mOp`Mbu_agvx_xx42Q#&VTGdAEdOjZ2PK zb$uej1}rot-S?L=Kxl3c4+fYDZeOK;bybTE^BF|)-llNdr~4b4-h;;wjbNJisH3kM zbG90QI1i^Qx}Z$`l|V6wb=fggoNF*0-K;XaE3q27sqMkL*2_OR$FA=6IxIc;sg;1w z+kEat-}1fxQCP73E zRQHdTf__XxJgb<1{H$O(@5>R5;cW&qK|0f+K;D>n)}K(=gF+`KyDj_qljobA7>9LD zB|f3tnzV1C6$}r_jCU%+Co|%I7oqfTOppeff}!iUr>>%)({HzP286R%Z0!THQhKHy z&5DP{PPHGgih6r+c)y$$U$GNRf$=s@y=|OOCT3omDDy<)osjL7^&(2bl9TbIy0Oa>-pZn9avO>vl z(sg9zPPIFmz{OC*&ag5-?P}+;E4jLCeh{qkOz&U&Olcr8Xi?I*5yk%Oi^qkLf)InI zimdum#5F&atYpR^ceZ2Ej`KpyuM*dr+RJe>%IY8gh8aqyh$Im6NF`}!OtY$ee@L6( zv9i%lv|rmW^M=?LyLUQRpI@+wTV0-@4b$GjPJj}tQ^`)+o0F=Bg>j9fR05F98eD%eZA@;)}CSEY!x0CHF z0LJ(yVdq|pWAnBLzspxIVexf%Nq!Bq@@A53nl!0C(vMR;y=(D(Vg=Bc?{63h6JGf~ z5nW;uPWo8#=0+ZE4?LM;)Da*>Zs#uuWI|R;K<48T+HbO&t(xK+fQtM;#OB|7eQEqG zO$p@7J_}%A-N%gSrE)vjd~fWs=;dO0EfU{DDC`JywPuyPPw=$>k%3Hl7lno10dvjo zYeqH)orH)G1LsKXNg+Kxsyr49%A6`!NHJQ$Rr7%#`xJzuv5JJ2j!7 zqeW0Rdxs+Qah>eEG)47!RSJ6=HurZyy}Z+PwY)AIt4FM7wZ@5bl9B4UQv-nMiTrnr zyFgP7uQrGa#P(ef!to;&%8P4Hbs#ljUNt50(k7re7SMo*ZXWYpk5V;2Vo;+e&Yu8 zpqZZ*n>*EjqR<+`>@fRSSn3#7AXV=x&Awofu+dHg-X1nD0%bMn7fso>fd1@Jl-51A zdEx$oQnyS|_eFL4Qn{;&k&k>XM|2)RFD%lDFQ@Aa+B;Oxgxph z-Fz4cd(%224&N5lrcWkeM^3Tk=|eN*mmrE46-V!~_e+l6-G#<_M#fZV3}1N)nB5lq z*$Lo8wR(D5OM7x7$-8e)l8)wEMiw_EXUz6AZ>%M?Yaz*?{Jk`uius^ zZC{-`7Av7KYWI?TB_y5z7{Y?vW(va3^-!uaVVk@w(Po@YEZC>hk3e7TCC-lQrch@Z z%9-53W^}Fd>L@_)cD+%kSF)8>*soJc0o=HlJQc(C*w6~vyKVHh!&-mN2nG+qVwboj z1Q>(sIvBatC%%JN*5sb%B-_gt?m%#xU>CE7eZeLw=XiA6&3DI}?s{V|b3X6x%{19X zrFK?rr8Udqgl*4d8Z9Ac)pvJ=Y%JqnD8p56VKVtbeUw9vH_~;+*K7{v@8^UVD4OWD z{k{rPnn}GHa=&9$%z=3?w*E-CO1Bhd%u1EGHXX@sjTCCJiTW-VS7#b^CwVl)bdB}P zOL&OE`0s+T05L>jssD*%=GDnaY8?6a$pu>6X+9~q1otWKIDQ7ZDk2Wl&rMU_9g%S_ z@=ZY8B_vHkpcFvbmj*rubG3>spW*|8j!{XayZRzd&iOURN7JerXSp@+<(~9k5HVNE z@3h1)+PH~JYSz92n%B@itD!p0V(-c?aZjKPxE3^}BI$uk(axY4h=w>HrZV>aF~}4$ z0|nu-P&O3n`#7avt^LH9FTgd)b0h7qrjo2%7G7q3?0&#rf!WHwAHH9Mo5BOHXw z6b5a}Z9!z2SP+B-sO%Z+&}R`$6n_$I-QFw=+g8FT%o)OSOL72n3=RSHWnxh1){_1R ztJ+Ri=%ky5%b*=<>tuNkkXi2gT>9$|(7^?t2QT%_Ql`NI$4D?3DVQMGCfGD)Re~8h z$`I7Oc18oj#>aY@YUfRp&2x9umNIl=&SRRRnDWu*W;Csdj!DX>b<_BzA3Sd59KL)sNJ&Sm{SeVau5oinBF71Ak39-y{Z;v;&1mXq$dn_WkkPPRcfvd{ftATTWeNyy(JMR*W~ z^4zuMsBBWlC56K4Z1^A*YA8-grLqOcK(GvZ^GLyqsVRFNzY>kRW?w#`UhNtf&|-DI zbpZQIC+vb&ln?3$`F5G;9Z$DO;M%!7c`g~x$Pfp)=N+RdPJ~(4>kpeOxaVyB7CYu= zV*(GwaeJ@rfKjUYTM18d02_x}2&xX^VSd?TuAW;#M*O`|P|`H>Y_H9WuG4F5s?2b{ z_M7xpa_{*|{N~i&^PYD?T@Q4OEPJClkz|f*No}y#yIU1NCb-yKxP6q=>m%4-2MfHu z!v!rpik1?q;UNn;nO+YgjgiZ9*8o{RfJ80BkS>pKgswi!c~JJ&0gODX#O5feh0LjK zlie)Zfsf;+yTtpPk^TyEk_IZd)bI4kpZ^$PQc-5Cu|g8uS$TOZ_!~^2cs6R{)Q~jDWq#44mPZb zO!bSOP87YbM|DTxhCO^qoDSUbCx$^)r6Yfb3hO!^e~u=8xH~STU`78dOnDxU>J9J! z-_ZBL(hR`Zz`lCk?N7D5KEf)CgU~9&kw#5p&Du#Uwc{fU%gwMH%gwRoT6bzT5rIxQ zRDZdK-{=7Y5S(lUUDxGVKie2#L~~RDGqM#jP|Y=0@s&XUJ}vW&=NEjTitw}V`aq%f ziw|k?of;)G5T^VdgUW}Rh%V5B>Y724rO=bx+-xvAuC|i?($+1oe1Tn`z zxB;>>*drc+W%3WXWk}wi*+p<~GH1RRq`_RqcB0Rx9&XITxu>c$iUe=cWXdB_qQfAwPFtOjm z{bln!o15^>Ru(JeQlH3guQ|J}>kb4}T}hSda_h68#runDMXE?!#59yppeNLkD7lvR zW{G6B)aJ#gP}KIlzD`J@@J7607<5d#5BjNN31N^OVx{|uWJ5GY`HtKVeM@`+7<5`| zQu)NgRS8TMO`tu&+h@OeA`U%Id${XrER4J+7s@Z{Aq0(jsx+9ARTdQQWSD+ zm#k)C4(N7@W;V?*XG>eznpC$tzSbcCUv;J64DU1Hka6|voVHpeXXR<9v7PVsXs7W+ z_JshUPtNC<>via{7|Iz6PkA=~_HGHdEmQj5O(B0#I&F2HA7`WD7s02;9SfV@Cq48B zHGz1UF9qgr<7pyzTF;p?<=Lmcit=6Qct3Fsb%9A*4mCb;g7xX$ulQe_S=^9c($C@8 zEqKuQAkN&Sw)oi2x8ppkQA z?daRPH+3+^Ue;l@IUj&i)-L*DUZDH9(9Y0nrxoL@=%y|rL#z}p5~clBk&(Xx7gZl@1*p0Yf(ol%HON>fd@10G7`}lBymS@*f105c^?* zI2NrPe0o}+3UXAp#KIwEnEsBfoL&86Nddb&Q}Qtf3>Hd z&LJmj4HsTfp19#2St(FaR?jDynoO#J3rc|qrYGwS8=hUJwiH?6x~>CU#X+SEa>yrwxhcD{?M)6L& zMez~-JS2*_0!%p^OQFgKuSq_jhnGm<8qed1w19_&<@zr10!V(LfpCiPGpNJpddV+8 zL-^=*%+9phALfEymjC ze)*-Op&ojWbhimYUU}OB&1GviyjFuSQ7!F?M!Z_`rlC;+2&@6^VX1_n_zv>m`9UV}p+S_IK-agucSfCPF_7W4rr6 z;~1lPZ3+83J>`{F@e8zNyyT#+uou+GtBmBwOz$Xv9kaZA_*NWwv5z^lxaGxWKC-VT z^kDSE+ZOk-y?W8xgRP!G8o$aHtLKKQ=~+8f#oOZGy9Iq*L(SuVlz+84FWQuHbn+{5 zo$e|e*&rL4d2wTRA%cs-F3JVRnZrv3=fpgmR}rShV}fT^$9E3OcUOX)>;b^JE{8Cs z*Pn-Z7#y^T8Ae_6A2#3@k2L&^fFHx>TZoqImf*J(mum#2btCcZPKav|@Ej^gH2wC< z2S1OOfQO3jsP&22)wQeY1ht~*UZ0;EVi}E8gyZnr>$i>zQOat?A9eaDo$K~t?h0zl zu>}*qPmm)^8)vyR0E(d9PCpY;69^55CYhH+PVLRco5`+EZB$q6%~m^fDfTVK+CVdL zIYxC6ts4BPW(ZblUGX}*vv`<1&7&3Xdr*_{(vMbNRBp*7xtim)ot$)$4U+{Q?1vkE zZW#$p(ujNm|3zN2Ecb{d!JYmoPen;&?E0zOk}t{}hPMVNTeN?xqh1J0RW|}pAB#qe z5!?wpAfBZe#DJquy2)tpv>h&)OqunmIo=+X>W zF$}rhlT(J75wLQ!hW&n~fh+m@62UYLSyV7nPB_=kFr;~<34NFjhGO>`v@~+z1+BvK zbzk*d;afrKy&{;|L5ctUppTDTzCsG&Z_ud%lM4GWmdY0^CET1Fl_)hW)be4?ic*jq zwZO>zf^cCpzj0uM<~7($7%-|3$Gat9^hld(hWFY4lS*W4GrZ*OYg-JtOQFCLyx+*k zrYS(y7P8^-51MgHZ||R3o2EG)>W9wy7_Z)Q2>7hd)91`Kiv5X2bEE3u9x9UNffT0UE|Ih5E zgN`dJALA6~a!6Th^n|OG=6<>;Ro3*!Uas$+EXIMaY4{|~K52Z01~t6ir1P_};V~A{ z{sCGpPm5F+ol)Y@MvR6q)4qD1*0Dh+C8K%veE^uTL1#{k8@s1NM_X;A4Q`4G4&j*s zCvZTbFVgITMvren36kNft2Eu^MWqZ@!(I;hyssL>mylF#jwD5ba|c3qR?t>F-TgaJ zTV1zFNWpcuY&T}U%Uu4ps9-#%;RjqN$pES`-?%8$MBHpUYlG!JC!wL|;qvllwXfY- z&7msc#_pbN#D2m4s4=U0sce*lJV9WaII!LU=-?~MM`&{!stjb-3z+26VFN`0{mhCo z9b8%Jm?KF&`W>FGr=j$Sm*#z~W2cbH&(F9jbECpVU+KrJzGgm6xbT&~jGUma^8~tc z_0WYvdNDAJjsqDNmjYw;Jt6v`M$i>bSv_~A->LEET)T+Z8h#E@-s@Ss(Gk1*WHt?W zvjM-5bm4k?We?H3i~RPqz~&o{IK zEic;p7l8S!k6BWY&IrbkBWSMp>gXEvLvBk#CF%ukry=wq5SwCWqs^yw>9*#=-!FD6 zbeR}47wkmO#z~|E=@leOS-XkJ(^I;*S$mbz_R#7~@J^v=q@~ffnd|1P z=SuWOa7Bvp_@21=Dga;hR^Tq?*6u*vlfdaf6KbD&;Drfl03?w5+l$9;H@=dW@8e`clp(0`G6^#$4EcE7qv)DPKOXqY_{Xv*{ob~y!Kz*egn zeTn{VrX-3Hk=9o6LRxxhPueX*T7L@nn?J(d3IWe;oXQx=Fh3~4l_;d+X>jezejLVb zYuxA<{X$Nhmmol(t%=V$hx-`QB1BP98yVFKx70Nmm?Dbq7Q-S*yAAU1aA&A%*)%i5=1?-CHdkE-BwcCLD z3{mrO%>n~)4}jq^`vTmnE9n(|QsKz>Pq}Bh zaXaGu$;lq2w$lcNht=Ba}Seozb z>CKF;fgT3OjvT>0nRU%C`e22u%nV@TJNz#bWgdr()gtYtY04~DLU)MXlUf46gztC3 z)RqJ*u0}epU+jhVho`*4=S~lu$5vr&(t|t5X0iv-yRs&=(3y96B?FM_#J#`5uv=R z;x5L2Y$54T+|}9g0qwj=DHtDev>lFIwllJNAmFkXeS_oIxiwK9!Z%O!-it78hMUcK zT2VEq-B>Mi;8QBk-7}I2@d@~3UG^lLl|IJ`K@@lZsC!0!*_!qZz z{&%-kZZ7{YeI}Z46!6aOCS86A#ru?i?)N|?tmiDw@+$q!Qu0=lP@x>#P_H!QO;xUs ziHGu?v>)qM0WfZBeecqItFu=iY~As2FVQS(4?OTh@y_y(BsbHQ0W&EL@c-uq1(!l`TKcKRi;&3I!~!rFwwfJgV}^re%(1L``|S_9}? z_K~sm_P#5!xNcLdZq(}{?z^^EN%`MUn==tD29tC!g+=`uBISyv;fkq9PSc+?`Ic2xwgR2wzB=rju+fUV77|TZ$&5*+| z^mW`;5VYgyQfQ`P2)sbRD!9^wugLQ&MGJ}s3$+-@VYF3TqmRbpX+G&?WIfhkyQkN! zmvztq;zz2%;%iBoa2o#43I<^Q%qa=p33 zVTt0zv^OU+7HD+$!F3@D=ZPVY&kBh*&z(Emm(yU4)Il#yyk>L!KvcG{Zt@b#ra;kb z4;#;81UsuSXm7te;!wsg7;nTwv}v)^1|jpxq4)-D7UMYYsq+_n0`09NODzpf${iIg z9HqTJ6M(r34~$6>UC1-oH8Sc*!%h;6IDYz@ADYjS>S1dWa+1Nr~YX8mca8eTs8{=#ILAraXK@*uQ+xs-rX$Pc&I6rS<#f(rTv!pJ>TTzamg!{sWdzRwDSne(ujGw z7e8P5y!Y4x;GLV`S0UAJyGWc9nkS%7?lv}aGY zj9No?r~~-pM#Vymx*8LpPl_3U(y1kr1U;NH6vCQ5eOJQc1V#maF3#9&{mx*uI{}7{ z_vnSMd#Xp;wL~ig{3D+sd=>J#$v(T@214V?Aj&(L;l{rE*{^P^>Ukmy#VeK4TvP}B zY+Gbq%;y4A>(P0*ENThlY5Jc~hLd2Xw$Vi_P2s;lSIxP`Gblih@O|1A+ayP(uRT^P z?%AnW>Mx%7hX%pEI34HdYEb+Onmq@S{abZlkdWT~+>f&}lF|my{^RSB12gL#kp_eB zvJnUGQ9aq2dxuQKm*izoIq*IjXkRJ`T^n&ng_*U_5##poroIMiA#7?NdG$aYS{(!k zeI0&G=E%d`%O~k4;q9;Vrm*u9B5Gcf2tRvn+DpP=7F920BJ^=s+Mj#DH4FdD2N3og zWK?S-kA;#c(jEy;JIpL0fLT@jVBpTFHD|rSWU2MBG4YDqxP?|Z6-MQ6OVetG%x&Aq z6kZqL)YEaj)mTK#qdE!y1ewP~zY(trXyw3`^QSz22xaoXh`;p*Mq)p*c6+WHbxf1w z1XU%$@q@Zu78kF_-g!8*cw1u%`9i4+g^tFSr2rT}@OfIUG+}C-6-le5rqQgOI`kh7 z9|Sy$>nWE`=JheTvk;W?r(QTO@7j#x& zk%af5SgU$a0{mi!Xjt_6&dJ-mX|_b=(xONuj?r>*j@YUz+oSE3v4GzHrqJ^$<0-d1 zK2(Qkyyb6KTu8RH)VfoYWl;>|sxY8|Hh zoqNoQ59#rsHSN?XM+RS{=y#FP^L)e;55gYmjrzkM44yqpv2o*MqaF`WgBfKhOyCyS z5uBx0HJtZ~Ig{=6P&KyaA6$Kvy0*30EYfsc-*4+6V9vz!)JX)FLKYh~1#b=Hm%h>> z^>T2#g(=K2o*1iu`8Mnc zjfCk0`JBJ*%TspkjR(0jyv%yMMK#m%MaXVrwh657iPegqQyRLX5O;a%Sp&lXNo}7?X zz3wKHdYnNp%6qh(Djs63=q_Y=M)=c=@0+q~Q6_Y6Ux{Bh7g^6kksO&N_C{W__Y35 z7$qIF{G`&AUgJD*a7}Eqc|arq58^?!mfp>bIE_AOXPG}baE+vH$p=2y0dCFSv!w0H z00YQH0&Ywpu0!2?Y6T(=u$yky3=z8@hSZj4@s?9NS;>6jjMHXYnN@gMW-AnTY zphC0{k38Z}A!FLQ)F~^twM-azdr(nd_O;{{?UYPjP&ZE{`Kq?PO{$4`)~0NZv;q_{ zj=3c*ZeG&A_<(MSr0cuabTo%fkXP`;U=oPJZA4}Ywkijk@Cyii2-+W>hu>g1b8-w4 zP}(3zA?%b#o`}R_$BgODt+Pj;&J`RlHEItL|S`$f4h=L(PLDgaKz5-}gf==z|-bUob zH4bw5ns-UAq^o#~I0+85dnBoX{uXN2{yG^_U7H1?`~6nm>9vl3cwu$72~S4a=;HNh zRDhXIf!9O5Y?gg+i{j|l&fnt!g>`{}TxDd;!waCA#*2RZeD=vGvc|XEUbH6Q zp`6s>HHEl_-K%e|F6UNzA4Ey^UV}wP8g6v0*wUdmND(Ej;5QXM8BQYlQ4U?ys~q zb@SWR0#3^_i#?mSf$#UhD}#Oi-9yxcy^Md{BCht3*)u2&;65o{955h`=`vTD`^)@XvMY&e6sr9KlJziO$$;ch0f~+QU-9JGx%Q2`&#m{ zUCQGZf?`WNc#CdBe)Qyae;EGJPz6dia?#Q#v<^$kFyIEkIVRHiIfq}>U{#9T`8Wm? zSj;I_6V+7~R4G_`N%YTBk^=B5ONWAs4?09rt~PiThTmlYrG#oeH|~2(&4h{bV_^&e z-hxs1Yofm3UBx&)mg3lAh8q_-4)0tWH{*`D7xBuK0OPPFoN3JN&J{&t&83Ix?BLLV z8|#lU_3yVTc~6UZDK^})Ij@{NM0OPEgZ1(K3B%nipl*_TUPCMM-ZfP0s0(u3V>Y#W z`z@@D;wIhdLHTla!3CmgrALEwzTyNI+yZHD!pN}lsku_DfFQhehl(pek@$T@F8VH? z0BX)GYzlRvB*Fcoz$R>B9mvZ|2J}2Sxtcz2%=TpOV_tmEe{}i#PHNqRfZC!GbY!BB z@V4c{>%>`Nj0$?Cgcl~_*Ll5TpL~Y9q9ece_$I)`micl0-Vul&7ot_|9}~3odZWxI zj9+*GAYz`v@gUvt#yLs(bq-1=HX0uX19&(VENQzWbrWUD5AHZOs+4=8X@eM!%5CE~ zd>lCUtBo6k&MO8Q2YZ41rgNW~hM(Xl>L1EyL;%gEDEUB<<3CQG>=Yr?`b#QnZpJGf za=WyRsb+Dn=st4UDiMr_5#D}-+(`2i3$6_h@a?GzdoLpXD9|2=tZ2}R*%aw=6RxId z+TgUKaRGg|xk!GKwzq>~``TMlA|ZZz0#e`1USIM3dPf)>o|jaLZNwKrQI>X!6Yg?E z2I3;0*OVWbVP9|%?oiDi+Ayy*;i^q!us6{-GN0ogSMqXhaj9N}BeEJEXYO8ifw{C+ zAH}%=?rMJatJ3|}j9o3$KcfT>2`#Qf`a^yX_dqtTkhqtpW(SFzqE|H+`N0Bl# zC27Za*t_knF}SXyoiKN@`Q#xzV)1W}!8_FFr*z$^Zk0ayS$x*;IZmw0V zH@(4+Je-YC3gzJSeH>;kAfKnq*LDm7Ao8pV*Y!rroiY;b+gK)ovOPL)4v=F$eWhe` zd^iAgMwrYcpLnL{*gU*GGvKe9vX)DC=ImM}LXk?$vvj0mQ;NLxk26^MQhtpo$+00g z3;4aSX&F)l8sg8VQP@6HA+5WyM79P2lSiTQzRJ$>K;C08Ctx--0I!yu(Ts82FqT$7 zRJfUr>A}tLG@hllcV|*$4GbJd(_90~tH6Di^C{~Sf*i)RP??8#*jn5SZa)7OzF1i+A#Md5ljBmqNZ+u5anumOWJIC8ur>@{9RH^2KxWMyew_a0Bx0 z-f=jrD3PadCEz*$LC+1@0oMy?xUUJnY*mA_?iE3IZAg!=Um|ULcKolzCfK=M1@}+8eM_-ee$TY27|j+0HKeUr(x4RRJzubnqW* zP|Akg#h%m=FnCs;G%ecK#8OI+H26Io4ZH(9F0UQ+EFzQiQ&`}5@C$V{X))s6VuAf; z_2;fSD11ca&--o=wH`)*=u~DG>ywk1G`!hwhn66IwO{wK)Jypq{LBv9k{iD7aZgoK zIK&`|gO1oFAq!+1tGG`(94@X21i2^4h`q0g<qsxEl-Ve5U@mA*ELHQ6QQmHUc zKf(GU`SPNjig)mRNj^imsc6rX@ZkXC`%-Fp--txxTN+dhSder1n{Q$lCdYy9T78mt z*;~|VHe!Uk5)g)TUzisA8ESE1(m$YK$M^G?iLqO$tR=Ba5-8r(w1MS)4G;-^T>^6H zoH%@3Ol~|cb7_M2?4!hdlwFTe2a1C7i3CA}L$T)rJSjrQAUk=^m{8+)>&00%MrLA_4%LBF(acrETdJwbP-TQqf7Y{U<{!#W_| zNlum2(l2JPPoyqZ!jn8aw-Syi$)=hq__j@~l_NiM8%BthmzKSTGAZ)-{Q%{IRCT`+q= zP^Gd4qPp<5j<*;DlbbB$VrQU~IH)fJAP8aDUHSp;Kf=>|0#Y8+AJ95lEfD}?ssQXD z+`=Tpge=9&nLy?wb19gT@%dW>;g2t}-+sKd?l!$jOZ%ZZq?2j*3mgkql+f}Oxw+fPv*wv-i4$2h$2iT!J)Ri*>RX`BDM%xsez`IG% zxC%{k_$*d_UA)0dPVjE{jfh3$M>*qBUS9ktE;lLY-Ei~dy6?NvLxJ5w?7AA{O=#B} zJk~+sf>qydb8=ZhBj{_Cax*x)HY}NGVY zL;3lHqN17!Ma}G~c9ecnU2;EMB9=rDVgEKwJD_x5go!JgK#yn6#BuyfnC5|uXhMry z^S*v6b!%)(XC!ibs-Y7d07I2juQR%TwGOE~s`UXcvycA~lsr-qTF_C1~cuhNU8-vLz`V6kzN)BbI!^cWH zUmA2@vbRQgvg26FWma|4^Eo93p%?Zh`7~i07w$`Z+;GaBFd69Q<84t!ECWx&cynRE zC$bho`IBEZI2W$Q1uoYvB14MAW@5>q3sk-YjHTQ+7`bX(ryAvWQnU;$WgAFjDjlef z_wZoo8a~_r*TLQ@50_{SfR?D6#hxd4kAEbjGOL*^7&#-?pvdSV6XH(TjrX$htK`L* zk%j}$y)hTz+D+h@j%5dw6S&!nxiaZXIRrcoc!w5v3hV!&L3fE{ikZO8pj~M0QaBO8 zTS2bj5*wTI>Gd;}rk#|`wlaKeb}ecj)(I3y?I^v@OAZDL#+!EprigdrZID$K!ij3% zGmw6OFd9lq5s|>(@JD{v@r_M)%1VcBe%p5{^skoYn+N4FLXbe)B2c9)7KqT5nvh1# z_#Ioy&*Bcf?2?+5-$s57cpGZYtb0~RJ5cIXn8_c$0u5684xu2EsC9r&H9&^|Zf}w? z7VTT7B5jI~*i|@%$jB!rLzV|ukytAiAJK!2xaY*kCu*F+Jb*UA6}ZNzdff>ic~E~$uND(}@bHKpY0J?_cNnlK7sYNj zpaT(|qkU2Bp+tUATmr^yM7vn>3ybwMfnE@bi*+Z!+WAxMfeK5c^|wM~}AkB5K9< zmA%jGBX7m|KxV`Q4oxT-g&b(++bMPYRd)zRmA;9Wb+KE2SN{0tflcrBR&iqQpgI1K zE6LVtHlZ##^(k;z6NL98fZ(UMfc@YdCVscDEuz#Kzqbd73twFn-3Fau!(=Mf>q&KC zx68KFzx3>7J_w^LcT^lj!A^z-^t0{e7%tzDYG}vAB9>bEDDtBJJYttj@?9-F9+x*I z!B6E|3PIuYs$8!M<4vQ0+ChJ#0EYZKvpWFg(v+e~8hMR%RPq%*j&v #CmBu_CL zxBm&iHnap_#(ZHQ{Itq_HQmJAptsO`yMdeLj-FKPc)&B)c8(H3gUfK5mo;>^*_!!@ z!}h&miY}#}#dUvg@qVW3pD!+v_ZZjX@XnK7Uz@jb#6#7g`@d| zpj@A(mK1)Yqsp$TUIQ^5SGmCTafVvTIPCmoxo8Y{NEr1>`?l)Y3-s31;@*{1+i0&I za&gY&hSK+VNeb>MtA4HRVI!XCdf2?tz<3M zEXht~gz!MblhK6UH9+egQtZX(#ryY-f$%8)uI+to!7luL2Pk>h9lA)MlaKcn?cND= z5RMK(KHHF^30w*qEX?&WInE#q+zmUtot*8yv()s*<--hUG15w>psd&d8gBkf87Ss1 z>d_nWO}Bj|U#UItrx)VG+6^cq<nqhIieffIZn!edPJ4$Gs=Vj)CQI(3uiqGd zaYHV}+F-=qik5EV-EH4H89ReUVU5-NQ$$tw03z z!A|$e3+nI&YXyjD&MjzX8CKj5JsMw)x7{vXPF<4$bx1k~NolD-lKT?Iok1j>u%0I

YiNydc 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℞?X4ys0~Hk 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

G^FVv$L+ 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 literal 0 HcmV?d00001 diff --git a/docs/assets/profiler/http.png b/docs/assets/profiler/http.png new file mode 100644 index 0000000000000000000000000000000000000000..c1c6dfe6201379b8fbc30524b0c5d9949fbade69 GIT binary patch literal 160977 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

H~H;V>@yOqpzmY%ER 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

039wpQ`e7!{rIPZEte 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 XeZ%#m%97qo;GYvR3da(U=v@C_+NL&R literal 0 HcmV?d00001 diff --git a/docs/assets/profiler/remote_http.png b/docs/assets/profiler/remote_http.png new file mode 100644 index 0000000000000000000000000000000000000000..d1d4f744b3fe8ffd2c8618af51a2250f27ae40aa GIT binary patch literal 163254 zcmeFZbzD^M+b)WTN=S?#or9DhNJul(&?N!_lF~>^w;G|WNOun1ooDfV zfA8M!=bZQK-##DDpWDwUT3TX|ifCwDzpBNP8nCXLdiq_Hsg36fj&2#Fd z9%-Gs?z`{1EzDjc`g!gd9QOvEBk{iD&*dN(dqS!3figH8^|PFmoPK2OBjoo#F@GQ( zTzqBVV`e56B5J(X($@Jt{+_vxzUGeSUPnxUGUoV^&@$y9PWPoV&OI`cc58euIuhlT zP{ZjCa_$R-?~_7LaedVC+SR{krneJ)(abHA3PA|f6CkmLc10UL`Z@Rfv_QlIe|5O= zQE5JuG7jmds2_I(%Q6~en2(dJ_B<1fpF=a%3I?p8$;K$e`p8M0T1_ihx;ss;h9jN} zac|yrA6Kv0Vf~zs+XSp`P+w*=Sw+HAo*wh#sZHuDYFd0f_ke|IuJh49pl?&wqxjgwB%B12xjFH|DKNy4U8m)HMqfEdr}7^ z`Mz)%c^m#7LgP}6@AZ~LR*P?(D(02xR!8lxCsc>T3j`yx+@S*UFW1HCPe0-$^^YZ!JXM&)7XL7#5)H(Rdi`0F|;ghx82;`U%Nc5 z={uY8WFHWTtRt#}-Tf1XJUVutkoFaIH1zsP9#0bOpg3Uhg}i%&@9^BLbGn3Dn!hZF zJm=%Eb%m1(geOAcCftc%PS%iat?0C=zaSWjr1v9v(+N<29j#an`#%AW~Cu)?eD@U!jh}zXg>#3KXrtkLkZRv@1XYUfM#%=~^2~c1VwZ z;CHq&u@dw@ThT35BaRE~DS4ts^wDcf4^s`pZ7{x+xd7YMAJ^vTV5`<5dRTk3H3SyU z(yY3ua$#8y67<#S++VuAphHg4mA0n609E@i_%OAai!h{lmqc4fSQ9tO3HVGv!I4rG zbS`aGtg%1jl4Uf7XJuz4_~mzAIp98%d=f zaZcbL^DVtEG{3!E5?zw6KFG-QN%yImmBp!V%y``G2V09S)r1AoIy7uS=)O@VQ`&6!RA zO^g$nldA31Kl?_y&&{6tw-_@S?&u~Poe<(+?qF6woqD?VRFJrW zlV5MLqy2}2EHit2O;Am$bLgc<%oP0@{Zh_a2C=vn@oA??gaa@2c_-7# z+ZEE4cb#&bj%I z=L&usooKmot&M<^7!&u>s(LDzV@z1$M-$ZUg=QA)XJq3;;{8lqjTZFz)Ak-X1sjt zI3vC)zCXVue`2PSZ?3NMx;ETPAsLRITHc7VfV1G+=3sR}V)y*IZ=pl5%QO6b z1?>#i2iHM%1FHmm@rgOc2D-tMtY;n+lP?X3+A;DlYbnghm{8}5ZUT0@2aWa(1u<+e zBYjDqJGULK^dm^IJ4C2O`b1{hPTHbc^IG@(G<=PHC;ZPPoW%P>xyhvhLV`4Lom0#@ z*KD_|Z*d#w22-702jR!!sJyfnoM!lhKgWia!eKK~D^;a$uK$Wvu9Py4q>lMaKG|K< zW41UtFnWbnRl$RBA77B=P8ON^vr#L|XCja)F#m-W4bLlvs87-MQQ0&TG)+=ya_UJV z?+j;SE|r*nCH@LhN*a|k?J?yWeVXMbH~03paU!B(#B?HSMu8>K!_u!OWR^(6Xsds9 zfImWBQbB4V`p%1>FMkcwz?%IF+tnrMo%o%SaEWfiPgO!nO-8pEqKF#KW1EjcjgQay%nRHAmQtJ{&F1Mt@V~}l zx%#q+)(12+37fb@vb(Psn&|i_*L0yF=zj*b&;N1$9U+U z(4bJQ*x}fLBy-Nf`I9thW&7W}zg%=eO$Uw=xsskFu~?wZkCcp=n_Z5dF9bI=mA=u_ z&@a@o=x_jxc^BL9)js#}cR02^pPWP7{!O(^S-zR$&7P9|yuH1v?0G?+#P-Y62G{J} z-3!)}uJxz!eiqk1u6sR^1sObCj%=^s6K4{;RsxH*KbHt*biQD*Va2@zhuRWfCqd=3 z266{d{AtO*SR7jMTx?J3IFeQJYr3}|bmwLK$)J(&4|_>L!p$r&?+D(8I&SxmYtUsU z*MI$TlzTR+m<_+fznke{-(l|>e3~raHn=~Vb__uzF*|9Qm>-+-UDP4=pUpH(ld!nx znC~6znrtQyIiGwO%EXNqWx03obzN&6`;nhA5mhu-4cT>>z-$Ta;%?{{1y|Y}ZD|}4JiRM$UO(80Z}PtXvYk4zaIAUew$Tw3-^t?GKzyHPPieWh zw_QK+-KuwaJUeEH`Aql1AK@hnpim7rcs5f*45RANbjBi>kNUz=?QxfkfRyKdeV8xt|)i`a} z{pR8n@;tPgU0`-hlf!A5s-BG4#q=ps?vrofWocZ>se zD-RD3%Ud=UHnumw5pQgrE$u!#y|J{V{*R0N=XIclw)$U9t?f*$EGZwZ`&rM*-cA4v zei-O~{P~ajG;}ikpCeh?{%cym1X&)wVPR!{%kn?24V=pV@G0+mQzt`nHK?hDp`|S_ z284~9i`@+sVP)J8Tg6(us6WYH30w6|Hn_@{iA2h>GZlHNJv6RQcz)Kr$;*} z&yrO-E}L|CgHOV~DT6jCz3KIYpL~BqpDrHyu2cC&{lz;m{q(@V#2nT$e0>fm6X*#j z1Mel&1^1EZND?J;iXi+)&HdC$LtWMGp4LTUDtyn>cD*DN5lB1a6N9MATW+@##S!aOEW+0h3rqc6yS9lz=RvtbW8BF;XulGSHSYKLfFOSv=MSRg6RwE^*r;Jl~)A?Q6sy#7u68PdO0+=KAFGI_ zKZS3?51YbrG+Uv{Vy1GcNUIKO9zQ+tuNF{<;RScj6ZpF?e@bZO64ii-?Dn(6nQ)da z1@AAzBwf`H%^vwdB0Eh7Z${vEM1*6@-?c8 z_+FB5SyuR_GTVV*U14Nq!Gao^LD`c2__}6l`~LL;r}?C=5(K8#=8s)fV~ZfKe*=9-@K*zVcx63=4$D_9woKu3tPEzZ?XI=o zHd4v|_&ew&W35uD>$&AjqkElPDr64kdFPz;&MeOTaxFg7Dbdd4uQDAsHyUY$H-gh* znh*qo3!H0iPnKq=orf|0e-+1KRFHY7oWzl24G?WueEoqD zGZm)#v9DGB*%>1^%tFWGGBXy~8MKJ=y}6{9xlZqFk&!$7{c3;7{REy*vH85C6@l)%LNzxHq=;r)xdEUa^6H zci+Mf_k9M|1(Tg`47cI%i>pLBmQfu*(S^2% zL3wLAJW~|7QntK(WMLq4${QQU=_eCmf0wR$QND^CJpT^(p$4$~JFC$Ol`sL>*`F+J3yd87%>8v$GF~E-_}wg?a2bIB_4{=z z#9&INO#&7%2YpH#H>*9cftuvNrM}vm|0#*I(L{j{V4Lkh$4EHMOBj^0Ci(X3SGKxY z4gYEi)+M;zL@n%e=`N>R4kJ=@Q&o+pZ$wE$HV6S5inf@qm@>Zy55olSF7%UlY_nz> z0kailO3u4IZ@Pbod!GO^(pp_}@-_xbSuHfqIqc8x_Qr0p;#fRn9<0 zrr9tf|KHq9v@YUK^^W`6jxX?;)O3NkQI;taPpk+t?*H+*FP=qV6UF_Y<=MwZH)lE* zaW%R5&pyVLr6H3E7VcLkQVjR&14$YaMOvX7gKs`nlnkcuY1BFFYLc&p4iT>q_Qf%m zS9R7KS~Xr~x!+wPn29T9ay89WZO3lFh3vn(50FK2Rg1v z9LxfV>W6O9k!!{cdluXp*eg}5sj`m1>RSgnvHxvo`QISZMP1qmC2wPtZcGx+3VAX< z^(K$o0>H%_Oh!fZha)oRz6>P3tNh&dlmJBZ=p+C{Z9bUHGi+cJPbZhS3g&lhDJS5J zp2SE4@m>Q;*?Cx!f}J4{8!ZkNTjUpI+qVFtR0lFlde1DIV!olfpRzTY z0ivsZWY)^wuh_p^bR5vbqR$3;gbdXHCOqEc>1j4wU5d-^uNc{OTn;$!Or=HA?tH_{ zIy}`1$iK-0KUk?{UpRU!w+AxU+5+$~xtZv*Euk z!rblVuxsY0@b{fb{qRsmC)z7EaSkJ&HdGi01D?z?3UfP>O5(IgoPljnfc2q0&d$zz zPKPM)f<8Fh(V4oDxxdzN-%?f6#@Bvxq$9Ahr|!#GUa84I3_AyllgIt-xy5RCB&WxX z6I}t;sEPJp0Y)qbWF7{m^Q9|s0`x0y)Z>V5;vy|CF?WQPbn5qT< zinMAbDOzmnzxrK2z%uc0a*N`IvqX2`+a=n8zrxqwPMDN&9O}z>0THe& zVE=Jd=2LnPJZd0`YsP*;i-0Q?pc}lUw#C{FvmQG#&Tc&JL{n4o(U%>;1T*b{xE6nM z6f3{3NnZm=TMukm+4tZ0=KmMJ{;GV?AK25^XA4H0?auJE*aF$C0I=03KJ80rP}z{l zAM^tOu;b%n%;94t1pz}KpJGPWUhaF|UyuKi!lmZ5{lP-g@YWgdc24^(WsTooVg-)6 zsTaDxvuSx;u8r3@TIGNGofnM0+xKmVha;6v=_pec6^4MP?zh8ZRB8Vz`h(v`2+4~( zorx8w7Q;?AN4p+ixdgfMuXk4SvtNLf5;`G84+fDOSN#j27wR<4)5`wPr4|n1d_DQ?(c=OD-pLn)5E4-N&OMz=ict9MGoR`u$*u^SjPmBvbWJ>#O5Vf!kXYko?t@`wti_!yoWlrFGIjSIN ze+_`rV7X44sbaHE_JJP+eEy2rAbtfH|CF}dp%`7K1KO#= zUqvh^C9@YBl~dL#8J|N%A9G!QAS^H|M3+dolz`Z^l+{#SCr#u@mBoC$^VztD70>W- z+#3yZ0N1^;iA?Ls26zc`5Jx)VDJF5X1rX$qcr_Tv> zvr`-rfr*&Rmm4cEP217i8IgFKql`kG#CL8^Mipj~d2DA(PyTi?tX^!?PFd(smBy{S z`~pBz@r#(m09?g&sXY9wpL6^HtZF;2y#&zFO^EX$n=@syczbeuJYsz+jGISLa3L@w zfzGNQ5z0+mdd!1J)>p|>wpsqtG!P$H->@+qTnglQgK)vS>R{eowm*V@#e#9XM9^Y@ zME!1azM)PF2;t+v(x|ecbZV>Z_`=PFzJ&}q0knbBa+aHf-6*6`t8N@EVJ_@mMznUW z&arNzPqq}mtHi^p2~kZ1lI576?b`e>cmF6U{PwuLdSD6q%Vw3XY3xcArwRHGN%Raz zpi>p5qms0LNoFOzg%WW2mFS>wRc+_Yf6{6sh@bks_+p63l!U?EQ6G!NRGHz~Ufuq* z4;rpH0IB6CNzs2q>*C3HTPLh=n2xkxo$Z>@!JN{`940@1Y;duUe;UaSHqDx;vU2n` z?q#!Gmvuerp`&pKi~JMvSDfsX#7|jtSnekP_wEAOrLxjurZ#arN3jjaR;CZ&W;mtk zYKw8E%rF=*^C@l5TYC~gkNQIO@=meuXWodTQ$BUy^)3xx@wo!c!nlt`(iZU(jbup{ z3j{Le@WjnZ<4dQRI*+r7?Q;xR;Ph;cA~he7-FHLS2TK4%SGV#J00V)=j4FAnVRZoZ zs)D!rV(iu+VC6*YM%9M5z+QB_Birfy6n#uayHP^f2YCcuTPX%4f|%R>Sp8DmMaXon z65WID)Bwnm9UlB-l* za0_&rJeaYMEC8+UjZWk2c(KktSgsf_=y|texgWYf!FP>+iT#FF$rZD0$=_ z7fWhU8deQsfJSpL`L&*?T@}z}?CRw{5#R{vDkvYzhT0xoB2tYL2Oc#Df~IxcPgNWR zl!kR~w^YvnRD$?cWGkgwBpv&j)8)jZO#+axE@|AI$XMi%?RI$9f9PxaQ@Fi2p9Q>m zvZ!_|kHfaVa1KjZ&~;qhcxtz5VNdti%??<}F7ejxLiV2{fF@xFx#?i>P&7E)TrC4Q zfJTX~*L4zyY1H<`ht)7?N@Ru?)d-mDtUzAL9AS)_a<<`d$-odea~p18JL++AxKV4v+-p~&lP0@V;`H7A>F?L5n?#>qu$0_ z<3RqVYo9CC_kRayOYXC@we0Bz>4fr0oCCL1C87l?Ym*uUdUY*W7?H{6Oyq{HALYv$ zNC+kyZ%!@UYwE8)Hd^xKTbo$r54q?v9UbpIp*HWjb|k*Et>2rgs}oFb0TkS^weSf2 zxmx?qLx8XBf%>{VyFmyN{9t-$7U$Jn(K}5`drOKkCX}Gb4xOS>K*c5Om)Oz2K+F@i@y$ zvMj@3sekJ*Uws$Hr2ax}teKQ2(Of`D);mV}HKj*@TNS z^t6HMZLxZJR&bERUJYUzAmTfmT3>r;g|`ad?{!J4u+o@{{aW zuV9g|>a}x?n2KGYJYW@I(kXq5Km;rQ+~${=nsCO%iVR4bwu;w*cng^_1dg+hr4Dw4 z$xS@sT)%}k)&a5%35Q8Ud*+=1VzHv+S_uokN+^>48rZ8Hag9R~CnM5#Ut(OzsnE?H zst&)R<&To)@Dx|H9OqPYQ}CgbBq$yS-zg@?RCUPu0LG_csf-Ley}+Evk|UW&DA(@_ zE9L0FS;F=#A<%Y8Yp(rnN=0xp1c*TH6AWRfvmvq(AwAD%M5RonqrSPlcd4*l(o*1s z?(z7rRj%<#A&R61Mbb4LCK9i<$j>)|>eqfzES`2Ul1OF|hOipf z^SziO7REr3ebfEjb?Nd4;vHm(gPDPj2bj#&e4p)Sw6HpRuUARg6D8i)S*9$N|4)Ju_aLxM~Za zrS_3MAaxvfZoKHOIbp_VTA@GZK+Xookyj#;ZNo@DKq^15^T;6`5+Y;m2;uQ76+iBQ zgO!ba{2o->x!@K1lb?fSvy|`u+%j-UCsgBAEqK&{HitCojbqY8{igu{zQOzI%I;ZR z^B>zGjyjYB_i+9rNhT%n^vfx@2fl`ppS*X~oI_HI$JJ)(sa-AqN(j3-0Fg`WpN+~g zU!*Oy`IDr)g1KxlWY`*)(Ne@PF=R5LAs-3nDh{rnS%c6|Q$P+s!YPh5e0 z?YFHC9@eT}D;N6LWu!Ty;gG9twEkR*VX&x|P(3fTxG{y5OgytavP9EPHtOg@c-#Jy z8-07=FBrn;Bu^U(-xo@GVM7S=t1^K0KY!xh_ok|v-ccz__OOmTMydS_$oItn1!YWI zy!?rxBoa$I&8N5^ni2h2k4t@u@*rj3t;^j!yW&~iqPj<=c}2(L!kA~Rx10BO`}ZNk zuj*-B#Fu#X^YV+1dLDEthr3(FhAc=->6$92L>w zQYdTg_fo3Icn-ew$W5`&{5N$PuRmy{*4_wuZ}fq%^4GWbJ0Gn)Z%1ON`6Q01M{LK~ zVfOisA!J6bA7w*mc^3cC*3#1y75)6~#;Y1tOj3v(*zu;A)yvu&Z+ERc^-~{E0#KIV zuYyD_@+5F9bYCE8940N?bPn<#_p24Y2n^IiJA>nt5=JtJ4(!j?u+Q4P9{?nZkwDcv z)neurTZZIIfYVL`3a%n$9$g3Jhnr@v#}9-i^ZjcwHWlP&-+=|@9Q&AdlJJ82{hmTk z5N0^<7QHI~s`V!UEnolnlP34;vq|280HG|Df9ljI4r_U5Q>mrn39@BwPt7o3tMMDsj567G5bAu$R}NfAT5sp&is9fc^j- z=?VIHY)=$d#WJea)>5J00Y#!Y|9O_Co3dtBX;-Ql3L9OUQ8}(D00Q9TPltQn=qGU> znz7b|Cu=DuP7Yoh6LXm80)lk_S|M<+<`1SrLB_7xh?`?b? zpJIl7lQuxCa@@59N=8!HUfOjI7TZHe5h7E=sFMOc$UVCRytdyk*`flcTyS;bl764)prl3PWjn@O6zGL3j9y( zR~)SnlfoK@{UGJ0p$_wF^+Ajb0wC@7T#931(G4=(S+4gdEF8r8lYR|27993oR+=cf zy{A?==ocnI4P7~?$0P3A28br#M}9>HLjyi)t^+3T2T3=UQPFN-I~QE0tX-dEVXIJMhTK*P}NC5d`T0;nDEd5`N| z$FDoOw*TQv7(D27cT#TX(n#h*9=U-*N0mXb%%^ z(-4m-SPXrNx``d+pY0|D%vtfRKC093+8ZvCyeyGA`BeOfaXxufS1xzBeE3 zz|R*PW-LnApzOI<0Z}J9cQ>|8EL)cxWP+>53Yoif%Y;RAWt`{zcH&4qaoFjWx%0TW zqUs02f8MBgM&-ee5bP51V-zm0(JZLgbfCQ`tC_cfm#|!s&6IbW^R*#=PFCiCj;cgj^ zRn^|~D}o%h<7y=xJQJ4nXv5^fV=y?~v^7l(!ofaV0!k#$LC?}3SwY`i&7U_S2ry)c zMo3r>6g;m+k+)54q3i3@7@^z8(`LoL%i)k2G>uxXMd3EtlvhYI#e zK?uPW4_!I2JpA|*Dz%9Ca35$?dsRDo*oqi)z!*1HWS^-7^cC%=5Bw`v;%YWPs||1J z+Nkxw0};AA$rf}MH3{4BSu){yN(Ro^XYC?gLAgK3EFhfV60tuDM<=+o=^eq-xm!=N z;{8lJL9X{^I*Tj4Bh{vp$oJ~E>@-qWkDaH^xIva1$NHyJ#OS`LKUsV84b``GSVu#! z;T~qi6L2-IVU#QKZp4`ciaBA_U0EMyGsyyB-Wtdx)!TCYlS@Te2^4+Uet8a!7^LU z4u5|EvEmoJJx;x^aNTdH8d_L~G-UmoqTc(Fe}aVsw$ETa)C%Z13NCRp8NH|INw5fb ze{m45=6izLbg|M#K*0|}KIrOmY-d14a#uD0-!uR`fH{vQJ?-Yktx6|zZ{kxXv+CrY zGt1;)&$&UY#hUhnMh7)Zi57cmh1TfZdav&W5-Sk}4G!C(7b6}ou2uxEGnHR4w#bJ& zoE)l)pOyhO0SD{b)knv%@;@ss$~)vy2RKLK{S2?Ev6f#?KV4R^3b=Q}Qv&Z$TEAw( zY@I$H5ezX<;_+|!7Sg_viaIG@T8@!OzCT4WrQ0m3!0$xteh2dN=NXmcYY++iYj zrsQ6SzlD9`!0=iu8_Kj^n-zj;SbfJc{@I^w-631vjs6DUeYaOO73F{;#obIAr!KPdPD%|d^YT8epX%x3Wz$nUNxqyrQe?PZBFI_76+_nQmHp_xfc1UTv zfbTy{i!Txar?O*PYHa1nOsSk@8Sf%+O}#$sqNqD27LQn8+=O(I+W%23vHa(>**PS3s&H>x=B$w2a>*pwU->+#szHw;w5oV-c z3?r#A=a$(NXjU0?_#N_wS;JSkjQ)H$1<`CajkrVPI__$-~`-e4+ zC0@a8&yXN=-lpCs2&QHb+elSanf5Zku)6<^7#9MAV{d5>W9%y?Ov674+i| z0ylaw17R)DbKg@8!Jp#Tq;ul8I1nqK9Y#z;v(haAR|Mn?qQdspg{DEa>^Yj2KVb_%;r1ngvZ8>hx~w*#oz zydd-i+Au~Ji2Hc>#UT!I@4>XbXV`b{K_>Yp_Y`GY|-< z=Wc<2;3h;bDVH*9)m8@#X`h4yY(&X0+kgknlNa8jcwL}9%H!G+t$?@@?6${K0o^31 z(%PB=)wS6KDHH}rA zj(KltKEON-XPD$%eee2C{nZ?T5G=ENT)p5w!E|ZE52kaWX5;lB*XJWkzOe8SB1$Xc zDiWS%h2zaK)@!+JW)`g=_Z1*&UVbO*TE4;zSBx^WebRI2DHe#Su}9EJErbmxQV}8T zq$fLMQlV(MWM;UJEebz7eO|nj2Au{gZ3RlKL^4J%XRMmYibm@HP2DPn*GmtV z|Jdf)qqmBEIC4ie$iwUu?#@K1s_)>hRqlABZ0VhZd=`CChYpVqvkF8Dyf5MjPEiej zCcCxtLbeLK`Jv&DMPIb~C?MTu?!P(nOZrsIOq@lJ{CGzF>~!Y0ZTy-QoD2E^H940BnF}I~6N=8NRgY@0sz{3O(Jn=IZvaH4 z4;K-*pH8Ud>p24SF9}yeH^QLzXPrF4)|(yj1rpWYOtK2plmp^rYjDwEQxg)SN0+kz zY~A}V$OIavv^>$%PW5A;=nH7}1GU6r8>U@uj1-9e@_!$?{n7?)8L22VhdZzW)d`2e z8H1X@$i<@#+xG%viyTfE1jF`LQ$7eGTwaUUaUkQFBrhfd=Sd80_*Y9X1sp_TJtthQ zelIDCvM6|W7+y;60DbO$GAyC>=?>HrnG#)e}8Mk-gX5)pfvx>4fWg`g7qgu0^4;tkWR0Q zDR`GF$pc?!ai0e@kf&)$faK%bwsf%MxR`V2G2%iO`YRv<^u5gooR);FDR+a;;>!X6Hu+R{D(@E zbT4F42%t0b8)_oizYlmSU-hl`MfQ#6OhzEoZ^+w(+G2uX|JQ812KUaL+uh^O*?K zeriXr_rKuyhz0c~DWm1%?$X$)GvUpnCo(qIKV^&k4dzb`KHM85igUWXx2b2$*h#Yr zMx;hBNkDGK4-`|Jvlh7wFN*vZkoYxRgU|N{twxpqO^<|huuv(`oqhXaF4m+A)d&#I zwxHT+Ke;}cqBI`*4E#EtS+a5-tlmMayo|WQeM9hwMiDbGvFq)$ z+X+2Gut)n;t-V>A|9Zyn`y7#0CknZA3X}A7tTP!}%;Butp?zy!8_!>(IW`_{KI)Y( z@jKqsS}`+8_&T9B>TY4qqrL{!I7e#ndnGG`9}s#GQV5FzG@(_TLhkLX-&-syT4dU3 z3NSq9tq z&w?XBHje6L=2ug1MQr&aT_<^bOcqe1fM2bWwYlL_J*5F?Y!*OGQobaFo?Ox1s7+On+S00uAm-9_O!OVKN5sa=a zXEUYFC1)Jw8TfrVbt0T_;45Qu1$fu9Ue!N!FxhQ5YfzavP(N`}6|WIpz(0kXvjkC? zmQ>BV^Z|10;yP{vwF}UoG3TloZ*ni_QTM`0_}{fr)rbgrBkbTlDDbdkf-pQkP^1)n zH?w?8`Mso=GfoS2VxV!F6H{b0r3G9`@oDVfgMHx{-le0{O$KN<>PCh+C_lQMe5iiX5y^hx(h|@Gm2$kGq!g z@A_U*nVeeqR{)xOd5J#IjV97^3^d$na_H*N3St%?r{9Dx(8Xt^VgJ-jxKK~81oL(+ zqrn1kTxTq*YIXznaszrnb}n^5eITVda*Z9%KT6M{SXtb3=aTx0Gc+gwIQUQjs@DY+ zV`0dkGIncX)CRWlbNvcLj#${e*sSmnu{g(+Vfy7>)4glEg zIobCE1gaO%WwN?Xl<8v|O`qt=<`E%J!C&QsQH<6!sL-ZJqUNt-F<1LLIIREcYdGs{ z@n(B;(C}rLywlsCE7%@0B=MWj#)8w2saYvu$Kn;1;?$`7u^t-S1ML!cRrkGq;aCq~?JMmrqk-BaKU`4r9`)#k zp3OHiyb8z+Goy#XJ+rud>Dba8sm;tPsj*TdQm1M$#Y}3P?(b>cKC2`{=tsA`7Wl=` z9M}sz*>-72AoO_rbS_2MeNp{&Y$N`SZ?;mWwDAN-bnTGM00lqkes14`faGO&;l)DJ zMh*>umR;nqF!bLW?*mP9n-$&|ue8uG8&3Dd)j9NP0vfva4BfQH`16%(qJpbCpD|lO zqHL@C-Rips3q(n~o_YFdOGx@#hi&-3GaIk?N2(pGjT3Z>*u8$;=rl+{H)dM%1@nzn zx8zKfd&XK5ck@H_WlP#lEM0^8S6ZW6^G}b)u)r)*LD{ad;)SA=IwnuoMo>>;_v=3d zrQIW$GFn=oGY`NOcRqkWl2X_Jsbe{?FG?!9AYva-S)&iBo>70`r1;hslnHJ>MlLWw z@t@FkweVV6v}(F_(3jkI62~*5P>kdFCD(Z|B>hJNOaOGrQRDlTm$;j5qxzP}!mSi3 z(A{}NIu%>k`=G^L>5=xgcOKFwQs4tUD9x#es;9OaFJ#eWI8TRwJevsv2I9GbEP zRnnmdoSnGM&4#i0@ckD@64jJ7eq=R_-M;j;1$rKWj=<>zM|2#VLx?NjEc19a0(wo+ z^1MA-8UYx${^lduK&^C@E*iw&1b751E1&|E@4;fkQy@%NHLDpAuelG zR!{!(cL6Mh>aV2!+u{ZzN|4+^NOySn>i}Dz!D6kwDZuhV*YiQQz{&l+{f85*?5Ak> zXr*J|kkWVN;W-*;bU+H7e6q=CmR$MeF`}-!k+kkVD~$R(_LasRK2B4a4Mig5jUO}b z-76gjlxHAY#9XV)$ooJuOWhJhpuCt?zH;t|pB~x=r2Eao7Jsa+&vq-FM~&$G{*f^p zs6(J9A*gu5q;0qOFC&@e4@b0A|K$~8TQanAWqRU}U#^ktZQpF`%k*+l4{`8usW5G( zf&NqULcNpkOcp^o=|JW8y3+$_rwk5^?Fy%`61?nDXpE$tM^E3R@@dD3IoTYg%UsH1 z7ie1Y7n!z6-{_~(M|lP0MzaFmC5hH_@Q`n0`(^;EK{rmkLRM?F+UKusepnPx$FsI| zS`AG%k`##pPsP3pOoLj_3jSfkJyR&g8o3YE0phVhifsu{XF2E8ZAPkcn=*`dr*1W6 z6A_FbzVrNTHsO%2y5Owe>VtL$0Qp*1UHVoT)q~`21?htwc=N<)`i(g!3Y-+Jg|<~L z;3Tc8#)EL zkT6s`*4a-%9h*(`2ApnoPPgKz(dEO9dT&?ylYyQO2cSw(dp+~;KUoEoQfs!mJ$|zq%|iv(vm9u@5TSmPXhly+ws8im6l`Ez{7@?{+t4T9=hh!Q_C%Iij zUu8{+O!i+ri-Y!4Uo`FD(42T)rJN2V=D<*9iFq*7!bPQwA;Ax&!X=*VO9>GgHJ1$Z-^OoOCR$>r zyL?d{jqc&)NIpdXGl>#^CLX=Q)PpuGJ0_BbKXifE8kY8ojxu0SkgC6HmknwYO;q8vby(nneG1-cN7_U3LT{rUah%2wP)wAf~54)4L zeR7+%w*!{_{-7S-(z@PWf#x^|FdAFc+qi~d>ndJ zMsmAjONOt*C54)O%hli?+EO1Fes4>0Hn#i5!XN1}<;SXYX0K8SQ=>0lW=|$d6PL~d z(m-u zb7gT!H0rz%$7aDXsf`85TMr|$9)p^Dh}(T&4mFx6%-AY9lv%U1!+0-ycqtR;3|g2F9!rTHwb@aG{*mG% zr-e37B<3{eHAFRaq-5viLrA4czBRPdm$A*VqnrJAmtp*;%UB7FwLoC-Hpivwvy!2g zOIm=)c8Hi$r_x~1%kGZb?>?i%JOY&>++TRciSy4q;#-NA)+1bV8ld)&J#I+maeGn% z$<(=dn#R1Ut&n!Wk|Su)hlbx$#ok7KQkvmmuB-u zpLC$iIJ7wRHpv*&{STMNOI|7=IU^uW?buNab$SVFVY$-ai;9hQ=WwFjDg`-t%jI$I zN<$*{*-xElhm|5lESql|hhZwiXCwCH!$$0Zayi`w{BZ(H*<(TX=Saoa8eu+0GR#L}2(eGkvQ?R)uG9+#in5WJp8!36I;>&i z-J=9kj#ok?`yuZ8)Nwpk$zvgBY{$5TA3|0Y=bRt1w!^7Nj=+$YcGV8bia1U+CO-(U z8dmz!t4<_C+O3f;=I~$#F#+^HhX9^((lm?*xsDpZQipBPw^<D(NNGGfO=>f0;3Kw+7BN7ZqdV9AsSSp&lu|m#bN3|CY;j3iR!y;sjkvW!k>K_A zp9^h|vjfR1hL+!iQjYg!k<}zr2wlUHB9-j!ZSpVO#yuLh3SU>k*lxodbY^)#!d5!r zI2Y6-R%yu6HA@_jaX!hd>$DI7W)%B}g^o3M#btxMKv91*z3*;9uP8rYNZbf5%@_-oB{{(=}S?zIWWPnUeYIzklddz&8uj}R@T2h00)}Q(axv{5BG8v z-N}sC&G|Re#TQ-(^I?x$wUBY?HKLcr?D;+Uh=qn;=SvbG;gcGKv5GzXf&4`}cVj$y z*2Is`t7$k|kZ{#@TaRhVy*)gEMYkB2G4@n$?Se=yvfhQBZ&649#L| zdrWgBS?0xy{qc-wzoHtD@iJ%8zr-n~It-T7x{0dEN_mn@2*&6KJCU+ydxxu*eEjdZ zfGB7P{?0B&vI=vLDHD#^f=&espF3)nzfJ-$nY)=^ttY5wcL@}7qLHl+58YC6rO{r7 z{OVc0y}COBFu%iVLq4HNFGEUFGI}(8O);!4dDEie1aObefxiA}vguNZgJlf+cCyZ{ zX02-l4ja!aYN_A{?@Nh>Sca^=mtcV^bJ+Q4b0dp_CChCYR}6|5LP$pUe5~ARZrDiN z0(}~n_?#?pA!v?`UD8B|gnwkU$nx8lxJ2DSPw*7Hz{Hzy>c4YA-DejZ(fZ4LA^wywkb^ROZ!!O*)uvl zLY{?g+FU1-bF{yn|FBUcP;WYsl1J!>UA>z)%tfF-n;v|{FadaxXA2{R?~R<-YhHdh z$-aZrv;i%eNx|F`6R_D{Pm~`!I=v-V;a)C}jUm}|=65JvA_PiOF)masET%%}!l60B z*HB^KPI5jThWL$&Fz3S3ZnnK=k@X)#Gqe_bQky)9hI8f4gv)I>q0z|hL&fG1XEn(Y z%sp6j%d}HU#?i}pTnq>?@jH|8BsMCFm(jOAc}@kLPW}^BPlOqVXZi|E+bj?qX;Rv>U36l+7a^FH6;+u(+fknpGFL8;P z{zi|#+m+|Lev;PIy>vKga1#Yvb1Fh9ue9~3_GT&LWFHq&Ay-Gw7b9oRtF71*tkpnI zpnb)-)NA$`3&x#~WQ^E;E_3l#o7MIBg%Iviw(C4Y>L%j%rG^2!!kqA4Y)F_Zt=MvK z6GB}kPK2lWc|8iv-LwvLDZf+M_u}49n?#fDw`W3hsU&=E0%$g^A>UI{ZBb&;cle?BHD1YPgOr~|=a=`UFW;lMQ-f23mGrTU;(Xg@(I?xOj6w!y;TY>T zalC3!sdw9rPb9bLV3X$&e~4r3or3{bw3shJb7T}n@A!L0L#XOrO8J;tl&9Ipm`bzn z5T~KATE7LWti$f@qlo46B+8Fs#~Vx#kA=~+n&ZQV&%_7kC1~C+7ku@d<^f}qwQIpK zbeE|b=ag7ouex*Mohs#l`RA5oJE{DeW%|Jv?P-ZkQUK#MIN%7HQT6~LM35mk1Pu|r z-V&xDG~%0+*oy5)MPI*c@^*S$c&~Ac=5}Q4Mvtk#9iV#{$u<%w42zTGl(^{vgb2pC z&obhkzM%vHje2)pqBpcq;k^@#QkX7s(xwrPii>%_t4&+!g)Gfxf-wiNO{@t(5a zVLX+kY7hcaCb|e7V&O;L;|w?pJ-G%CjpB&_MJV{4d+#& z&<>}Vt+=;d(#jV067gBaK!BrSLk53}EmhHa4yYVl8-y5%Z>DNIlIEzP3x(oa zG2@cRVb1@Afb;~&tvYlFT>Y^!v$*#4rB)xa_v*56o&<-J6xCYAn>5aoU>1l@%K3hg z4HyFAFWj5tRARd5+^X=^y&bkpBa36Wo8+T^@+dFW(W2PdL}-$=pNnGS*=7gqaW|djIXjjO;BjTOG1CEd_`L#l``u& zt)r1gvM{?XkC-a;qvYH>_r=T_cG}-kc8Hcp!c%$*>4eQg&_#*FtZ{>A0H%n^=K{Nh za{tcm>b)qf*)Ezfzuk`4Yrb`CM3nxR)HJ&f18+Wey-U4%ui0K)`-Qkb*^I}<^eNCm zR=>&ckppAP4o;vc#~`cooLmv3Cka;~?Z8io7b?Dgx5&7kmImkIc`KSwBU`P!77XOq zQMh;VpM7cD@NXsUp&5F|y(=N^L+g!Rg`6ASLw$YF^AzXptwO?5Eu~3pL7W$UYsp{; z!@G`800x?Eb^vAZIo?N$bCkTt2q(M8oArII?-#$pcv?QZjo&=#rCh!7ux{)SZQv@B zCdX!|N0nrjfCTGiJAtJTy>nnxbAF0Y2~#pBH<+Y=%e>F=A+wKGm~|!Wal*OmG$Txk z3l}Y&;lL5ZB@=!?l}SA-9d+qQl?s1Of2Di+h850v{GQB+pV2vTM#r)g&^#(1rH9cd zbgdl5nG4I{$>yQ*2{_IP*^jwDH9E)$PgioFIKkYTAYKoZf`Czp>7lzM|nINR*T z=@|WaX4zcH;fOB6`T8?#9Qx3u6@hp8Gw#zjD7?|5A61M`i7_xuq2+^tLVjU6+sBs2 z@_aVaI4U`%#M#x@+oLNOb8B5 zDL7qCGQYFfrJf+16r-tcDVP3?F-3_#_ zdeAj@4)4*^g~qcrzF7at+lZ}AdEz|niKf@X5bzimf0t4o-796@k2UUQZ4%EI8LQ95 z4RV2D-&@g{lq9K}toK$8OFYcgPQbp_QE<8xhx=0kxhUZwsM7l&+e+`AkL$*;-T<)_u_O&6*1YR8z^uS~E zNAPM&o>{R^A$Y4p91`MESLhqPCU3cA81M^Ssb@jScwPP)%F+kMLq~vUnlP^|)9Lv5 zQD)Cue1gR)3TQaX=h$5>9KG>iCSZrF!tQ$| zay7DbX$F_~DvEDLM9G%eupCXQ_*JPZWqwyO`n}e!*9*e}b{O{+GshE)R)%mV63a_% zMjWxwrFI`Ft2U;4**(}xk-s}Cyo%;l32KO>WPB$1=aZXdRb#vZ30eO6@Pw|4th&Ea;U@7CA7pn`xU&R$8cs$*?ep#-e2#<;;6 zw+u1YB2D*>hk>vk?^%u%h1&xz5-){TOTN*V5R%Oyj#Q4DJ#2-_uHuSAQl)2v3o-*z z#UW(|r%$pr+Ly>I+ltv?P}`^I{8NoGaVFY|foJYs@J~n?<{F2y_K6#26-^{QMR=C5 zbc?Z*PG)JSZ16%zj7%T!o|)TBt0zE2*Ea7=yQ&=`+>+TpwH0O(dxJvx7U(~DD4z2Y zyC+S@9B~F>;n`QulU)r>29kTkwU~d<%*|7IvIBJ3>v4cYpkZD7%GDqy{?QlLufJux z_muKAC7)r0zGb2R#?>mDLdzDTv0}&Y4GrFJhZb7T5xYZG2MfEan()evoQ9;DT+y|& zSwDJRsiN_k=kGThFXW?y-x^W5?zBiHWT|9Vp5l<>NPIAS|0T(Ul8{s+FTyXR1I(V< z=viN(j&I4pkGzk!YsD&elU!J%S4?gdMs*SM0JcK;j%eiVG(OWk*km>l4gFV z?<|0xw`Ut$ky18=`nOq+O*vcN8KL~VwS+N>FYsRVlBHyM3dID6PWQpXoap6U37#=PuHc@x0wdGooAUwamv-)o zYJx1b+xNcjv7##bmDy|X$BV6ekEOA@;Y`=sD%=8p5Bnv3TXE;JB>UfrahZ89=*yw0cAx&=IR@OEn_FmBmbbt+IH#>#(+iDVyvkdC@A)HHkE3{ zU-!@LZd3n@67P;V$}NHPAbI}(jEkGc_GG7X+(e>steWr#0Wp9({2rB2GWXU*)sTd$ zkw4owhnP4NBxgtj9TM1ulQ4n_Q4+j~4&jv#yDygmPUg782Je0s19?Tn zAp$9wPXWsL3mUm&-9%V2f|aUH!#Kf^d(tswCLK9R#kVHjhd*R(#ZH^Y&Y=63-Ril2 z4OE2qRnz6kqUu4GiRJ=GpuI3zm;byBz9Muuv^GF-+NGv#7jdvY(swNihlScvaz3zb zI3NLsgahihqX))hy1aoJy$;Qv|Qji5#d%!}eqJC}R*H{B)IQ0aQ zi)fWg4eJab%=D>{Sk1=Ex&aaIZE|1TBYQ^}(R#Mow|pWA({UYN=66_r19HV_zuC zt}UM~9>VGTdJT~_MRL6Qx}Dw< z;5YFnu_v>$*dL1Or=f?ryffKHt>RJwYa*vf`zU?d=+rj^Kwt-cQs2p!GjYhRZdF|H<$kt3dAseM_OGpSVz$x#IyrTaHe9=Gjov|rD0J@R*Hvq0h za_lQ;JA4yO`!imk`+pVIrJ)!Zky6ruy4T?HhY+zf_(i(${fRs*r|ksx=?exvJ&zUp zSgQ-5!<4?B5hWFLE&&XI)->6ehO}tPNOFKY#1$OM*S#QBOm`D~-!(G@nk42xJjLw1 z5A;17?`{gw-bp(|y!;a?mEU2PM5x0LMs}Cf?y#M1{Ev;oT~}QOM>2Y8$1%UvwA&*x_NoIVfQwasV}9 zu*gs*8|VXY@MF(d#oK`vpoB@YbQshQkmHbmXxh2>7F(+IU$y z>c#dp0V;q81}3rydGx`E@ zj*gDd5no4bXH)>U7WgIjb;Y-W>k>AT*@tp9hq9D2XOl&J-WtDe{{zlix!f-1eO)>{ z!ftDF!Vdz_FD5k44&SagE?nn`5pt^xA{QLhaoONRfIek|TkC6$8;2)tT zly}A!=-cF%wSa4;c@j+HD4A1jI>byPE(8Eww-y(;ZT}5KjH^Up-AbvNB6$N^QP+{%`yIum9=!E*y#N_Zu89cpd#Z^+%J3Y5|YI}>bgx>Z$lIma}Z4^3OogZ z)TvRkr%+!CiCjg3b?Mde%z)`E25golnN=!*{8QIdT)q%e?k*!(j5#2(ag2i3V-AGthXANE z{1z2c?`1%2jDVB1?6&N)T`W}C?aOc&{_r$ketQ;#>WVS z`Ru}?g}zRb>_wgl+i&uZXU&dN9Lu0x!heXGNyUXN-Xt1`pEGQM$9ZTvL?kC`Cf%>B z6zEsjVjU!H=4h@ca@XX+p-A#A#S~ifM}(gr;k$Rumcay#3+ZNO3O>NxAvTAxF<%Bd z&O1)wZj+!~)C4qcdH|P^`eNz|I`$orH@{s%`Jo>MUwVq7LX;%tfmv>Oh(;EU3Vgq1 zl-I{TEP%J?#=MulhG#|&x>E#>@-x#wHO&N=$6?;8Cwl-SX;i<06AO-5#=VH<0c3qKHsrD`OInu1f|7m4_eStgj-Qym(j2Sf&Vqc z&n|v=@l#(LJ!cNZ3qt_8!$3@)$a6gXj#@=I54iABK@cqktn{Txxem%kBq-gRAJX*@ zBu!*}Au5}|cVJ^V2S|iubnEeNTYzHVTNb}s-gf+={6K>JE_awT` zCJR(LY?g){rrc71dkbx7K;nJaC<4EUc5xVY1^R{EZw9rEqSvo0g;g9N;D6DZ%U+zH zQP-pZUf_rW2HDbO7?^<$d0=_6*_RHZ@9YDY59PGkI7?wzrB9Ww+>bNbOWU>?vp3fV zC;|-=7r^D+0ccc1DBHxA*iU`q=h}p{;?ottmlXoIofKf+>H#83AXDiu71xMC*fEHR z^ubuX#^%L719s8Ia9gk`|9;KdcdmMnc8JFWxV8G}EAVm@9XImaEfagi&m7L9S z#T5Wt3?3r25JpoA^aAO12hnW$MbigPO9^UB2yG09bXFS>l;~A$lm-BF2|Kuk-~%{9 z+i(yrwYr-Mz1L>K+`jc=$M4TgZyG8>i30n^-~|E3hzx`WfgsgrTpuYee%u0HGOW4R z!S3oC=uyp<;mj&9wZ<>jO1yg!eb0JnP;;aLi9%I$k+|QY+STKzNs!B)nbqzm&}#ys zG!M`c5rRP17aTN|oK(KWJ*=PnYS|($P+->zlvjA&6yms;p0+yKxykdbd`4>6_t!@_ z5X{`L;X?hnCPLl7{j(O~^TKhaf!-)l7*Nf&i+0f&Xk+N8wYS&2|52OteNpP3F+Rzt zv$2+av9wjW-3@&CN2K9#LsxKV4xofYWyWTI5M}zQNOtOI~AbdgReP4M^ zd;cJ=QCfaHAgoiYMs!uN*)Dezu^T+9K00^7!u&zM^yf#Iiabxi5&)n&_DahsLHpH0 zrS;M=iykn7Y=#MfJ5nGOeR`dgk5R{MV<4LKMFYt&iPFy*hC9e70JkTQ0Crm&y#NKc zy{!>ZNfAU2^fk}+xoBotry(4l57u(Su`%jDhgLa5E=S`i>i?Zg1pZq=WQCENR zSAKoezrT}T3;2gM|FtcCZHvD#k-xUZuWj*bTl_=9`~SQXSyUvU`I80k@B95<0o(uc zPx$Mp{^k__>-GM!^8da+er@(&G2!2wmjA2ULZ_ZMn#=fEV1f`=S_kA-BIEI00v4U> zw=~yr|8;7Ac=DMuo4=6#R?)Ew=O zqTD}Kqw>VZ{9YG^B~aKHb^68h88-uIgZ|uo(w4jpd+nXCYtv*XFhi~y<&g@Dn##hL zadO3(?~Whsm+G?ndj2&w!SSPvf?FJ@L*h7@X3v}B}vX}f3to6&$~q#T6bEp zr$3IEOSU>|E>uW&%kp^py+4kH(BB=X>=w%99ik?9J7;yRlyiD_Q6Wa*!&AU~l7b-0BXREQ1puUGt!rsCHt z{%>deA9nbEKgFM~#(g~(Vr&k)jVl#zEqjTF5CfynJz3&Fb!`xlA z4r_{6y9m!tl6l|_VcAYs^EGi%=7fnT&};?n5CEk}|9(D;qu{Hd%o=6rk2mxSm@$FL znsNh1T1M^)geEWsJ1YLQ^mPQHV0>LA&V{1VVSIb}hQ^Y#3k2`Nbu&@LQvKmtrB8l< z+s!HNs0ecrUK;|f) zG-q=Xk4xdPZ`Gft&5tFtIlWw~d6c0B)v4a^mti}uuP=OE-(aRvwO%Z93j1*JEpMx8 zrIu(P`c7}3KSjT{Tzce8+u8P8uDdh`s*Eu#o-6{~LTc{x-RyF4Odj+hS(|A;NB$MJRS(F&=)#F?X664;@|H zo#kZMZtmuujn)qSMnJh;ZFJPI{-dYni7e6~A%G{d(Ma%Il1OCsr*;rv&$f*dZBd)D zvD+WdH;%v;a2`t8IlDM_A1vFOMzr~d%)?)a9&gpVf@7zu&buF>N#lp(*VhEJj z_-s1I|9rrzXDiZuXU@js_6-s)-};oREs}9&CF3ta+&IXZFfJJi?<@NIH063Cu-a zssA95+4-aH5h~|EfgD$5@MFVbs=|pIeCI(VL}5!hkz~#;&(sKO*G~>Kg~;QNunW- zjdPRUOJ6#B@Kj<6PgefYLR+FC&;xzoLVc}t=U`k67G#VN*1We}-E!Zhv4pN~HW)gI zQ?*%Tde{d39t+=QGLhp{-GGi2FKQjatdAy}-EDtFss*20TM?elY?m--`!#~wKqZgi zX4>PCpdrh6mDEiaqp9-UNCt+RYFfhl(<8?R640)OF8qW6< zvX>UAE6Ej`UL<}!^jo8-sBH`Xc5)ya*Mj#+Zs2vB(2a zY>afnj(8yuP^dHI`OM8@Dg+0(yD3J%vx^mDg;8H3paa6A z7CrVc`5qgoL$jX+75ssbi&YWdEL020$+F4H6EK>O_FroAYE*iDR20S%&~kC=*yI*x zRw}J3=iKih*)*=OXmlnwXn9L*%EfNos+*i`ZBCJKLuo1QGe*^q9KZ*HogwFbNq06G*ng zQSC!67I&;hwwT*HtF1eqPFEO?MTTaHr^9?wgafxOj*j%x1?~N-AQcQxKXIzKS_~#@ zG|9MF^mAZtVUct4WOv71ee5}hOs5HjoeO6t*O;Nq7H1>5g*mU9@VVXV15zA>_$05B z;-HbcJwH9E)nz#{r`fWzMtV8MN2kkBiq0(dbhKW}nxkfyx!8bwKlt8ai;mAaKKJ=T zGyT@dS5A*sdj9mTE`Iyq#POZ5VP`~cvCCtaE~3Vi8nq>CL@ZwrFSFN%1TklMP6VxW z{5D$aFmW{Ns}$@zrE@rD*0uk3knEZ9Vwg}oUiy}UGXXtxc9CIrxj49M@}fUQp$UFr z=Wd?>?sqQ*X0FH{L;46><)P&?7{O-QRXv<@X0$U6B@Zm27}$}f3sxv!-d-E zSu94FMuJpibMnOz*{p)cg;GV*vWLP&G?&w}_}BH<@aNhw1k$rwJm7u0vjw;}1F$sh zGRmQREIK5+PYJN)x7N8!bP2?DCJ|xU?Bh!XZnGy+dAh5Egb-IsX5O8TJm=MObL;J} zJR*e`6ZsaW1B}ySY5H-F$6tI>6z3%I=TZaO>gT`8^D*X~d{r6gKI5LE5QaB@d}9m5 zrm&1MsV2%X@{ihy?kg)hx!JW5+KHoU{f-MOYCw$*Azjk3vKTDW^*Pf!MVm{JpWxf6 z>qet*=o*>6xHy{LxY-EJ z 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 M>FVdQ&MBb@0NX&~)&Kwi literal 0 HcmV?d00001 diff --git a/docs/assets/profiler/remote_processes.png b/docs/assets/profiler/remote_processes.png new file mode 100644 index 0000000000000000000000000000000000000000..48d8e81207dc8d2531bcee9735bbfd94c76345cd GIT binary patch literal 119446 zcmeFZby$?`+Aj=9_lSZt3=#^`-7$bDjnduSogy`Kh#=A-pdj7d9n#3qHFS6Gn`gai zz3cei_uJ3j+wYI>kL@wSICJN9UFZ3W^SljJl$XZAB*8>LK){iC4N*owz~V(fK$=8H z1wLVQo$^OOzWWtc@e5K*0x_aGuS7Zl^4`Bp}touai&XjmCDp>=+P45H4t z*S^ob_rmNoe1Px%h1=dBHUdAF;CD`<2^1;?WvcLKbOSjVIiuJ*L?p!woG%Cm7mhCk zn3+jLiJR_qboBxz6`AW9YVY{&^&}Oj;*SwUm#K#EdoDfj?~xF6+Yk0xsG>guouz{mBF|V-EYYP~4Yrb)*Tgv;abt zfRG^(%p1e9j6oF@=q{@}&qN#S+Csg8l~&m7U>ae6F7mv5t6R?la5^ckhhLTSzK2UvJSjNhBe~9zz&E!N-OoU40vyU*-!SEc6Q^g$P$PA zJhWNtedqA`Ebj@Qj5W?ZPHc?8!2J*P_%B&Q#My*lpNyy`gTK5OmVqk6^tn61@&hH2 zvY_ID1yn%j6bt#5ZRs7^WECS9ZcYQ?d z7)xJ4DNX#u{2_wjo^`nh6?g!Vzj+H{<_DA~_QoGHs7Rr(>#tXfET^)(i-^QMNaBlG zBiLR!`KHegz9NLRrsHGydv~xvxEPUx6z?4%1xnMZLE zkhiFK8B#aV8{S{6n92HT{kEnR34V?+1bb-kw= z9z^B~_h+GzXsy#}iv1(TMTK`(d(9IEl2cr+Pt-8q5KCg@@_O%n-_6($g~RFL^Xgyo2nDD-gkjNa%`f)iqN>^G2{Nj3Qrk#JCnhRA|&;_3}Pw@6miAwpPLvY zLRh1`<#H{n5REn zYL3Ja-eo*mU@+3hE%bj>*iG(^=!cKp)&jxDdMx(x3t~Of$88N%(*O^BHU^Y6eXePQ zA1$gS=uzW5Y$><)p&ZgsQkjy4G=>XdyP(RK-C3BF%0LW*@NOe zh6YlPycUcL%c0SLA}diH$9#LuS4Q|EPd+GqJYraZtP`r5Rk@*C0TS}p6)n!v*-&vtc=Uy^tAmM+XaH?R zzf_$hA+)yyMV(mHf5H$)9m{(tv6Q(G&ntw$0d=TNXAv{1Y03{{Pu1Cn|?K`vIKRjSk-Tn3Yun>dlrq^n`0^FWHX#!KUT$6g}bJ>emaYj z&x4HwY+9TkUA^%nzkPnoeEXAI!mE&5O)H~Ov0k%Y={oL=gFGziC$5%Ruzaa}&=6v3 zIKNNb6CDAaC}ssWf7{AE>bdQ@N1oV1JdNs&f{jl-y-tQUg(m4YVVfbFSSN2!s<+d} z_f7S&tx!W+&6rGf^ixbvp5f!{;MAc0MqNV{A*moeA>AU4;*sTMVlU(tG@S12_~I(d z%#m0dR-5h-dFdPfo8gRMDSs`SL`sL`w9C9gsU-GS{(yP<$ouT`E~XXM6|xnsF1ao@ zS$hKdPrY>Ia#deaxHm~{SZDk={hWVq+-BdiO3J0muE@c^+Va?Nkh5~|gtLD7YQrvI zF=;l$iN`(6t!L*u-Z1si0Ax;GrEcdiu#C|k(`mX^_EIBH{Wc*tAvOWC-zH%v&pWKcj#4xMuGX!+2cJTwk~@%y9h{ zs^Tew&k(_;U<$Zke?uI+!|JI(v~OQIQn&#@1ugW-HcR-y*d*_6BMciqeW|iv+aoYB%fU zoVAuGm(SYfdQ(f$f4!LN1pLX&Wg9V3;~VYE)B+Q{1IIh$N5RRU=}^O<~#kGAh@@u$#FD|BiK zzR&gvMOf}+k!TD|+tLE3La9Rw9^29KJ%16W`N<_Nk9LZ-Sq4K+BYBj|WH$a%g*oSI zPMAva*lUYk3xP4z++evm)=IOl@QP83sa%)>%U569;NFN?VrkQ@fz?6582Q%6HtddCyT)N&s?sESV373wO**@t7nN$NlbHloyF1{oAT8}xWHUBZ(Kw3xnbbds=mSC_{^XT@{!s_e9wdtlbS$k4lUGIBgJEK=w5$mhXi zYwn-(Cz)^Fxm5D!c;2ybpKePyU+^i#*C(-m0E zyLfKT_j!*4hVfhkZ))C_6M12DFSF3R8+aSywmmSZMW2__;AnaD{cKDr zZ}^Vz4%W-D!_hs2nj+*qv_G49EDTR(cGoetKDHLPsE6;P!5U{sSv>Wu_YQW=H&cFj zoGAbLMvy4Ma_<`CwbnNAr66@Gu4t}Cc-M0Zr!}&h$H`9kKKmfLRV&<cn=pne4u@xW8b#r}3AU%{jr|!q&Q*h!2(DL1x}6^{qiCO}Mm6^c*GS9?t%*JNv23 zu*&9GYtyL6>0P16`oT_O^T&J3?ex)wW9>8Vjn1&dE*7^&lKUSnRJMzI+YM6zc75|C z&2zUy@VTV(7yFbrLwBNAikBmYM*VsD3e_P;!NEC##0r&9TNXt*I1t@Su@F38&I&jq zh^GD!hJQy^N|$?&enVdw``!!t+;1R3v*!RV@ZsY&i3uwN5+qKX|%FU`O_F z2+dAtbGk26H;|KfTA(6)NBIz4mYLZ)C?P@V)?#djWG|@a)ASA#l!nv9qncHyAaa<{Rzb>epy0{^uIKk)wHV-_&gUz<2v34zt+6saWa98IXW zm^qnQ!NQnSR8)eF#-{wr5UKyz9r%|J*xcFKo}Y!q&CQM3jf2_F(Ts(SkB^Uqm7Rs1 z{S~mqD<=I z%UAz-%75Ec<3D%hVdwt$J^$^S|JYNI<>3zg?T-F2Tz`EEjF&K`Aj`kTUKo?1h7bps z4l)af!aLwM(!<;UGiL?-VED)HhxaoJR;^-D2neDGG7zzM?ua|7Xem!8E}QlE!%w0< zyavVMf}vo-cdXMN!ItCdMzWphv`Q+RbZl&Fbe0iawh<%vrI06(2<3P9n{voGGIk$p zobLqb`Of`ZYuwJO<{JBb7lzH;W|CCW_>PBWllDFG#LxHU&XZ-4A)YkBm4ujRjv;Qt+$|9)Bh z|7cu9YYBO$e!TC;6}hoD3bTP#4XXasT+7`e`NQ>0tB|3Ml|ssCt}jjLQ^D5BZ98k8 z?tK)RoN$w=82X0?U(;Ni{qder;BxiTZVyegvyj2&=(n?Zul?U;CjH|af0(7-_>0y) z;Z-YCA9?xyhjBNVQ$(uUya#g_$4=<{%~nD2%+2Mo&Hj92mEA&9xd% zk>s(N8LxBOw(UOSpNtZ@bGI7F3fe|wR4b~$6S?^%oOV?@_=T^1vQR_C*DF|)`H#-{ zO*BIrGX+**YxD>e+a8nxBcB-BnkwG^Wj9mNOXySABWX{;W1I5o(pu*KtJ`w}rYabh z+_Euh*93=zv!sEp$J}0L*4IbpX@Vjgoe}4JC4D;#Bn(Su3dtX?+Tk&A3z?81%CM{8` z$Ki74TDe*N#2>}EA||q<)M7->mu8>qv!{%~cemFtC24Y#092eZ*WH=USHMD&?1phFGiHqDrHN_F9MTi3ahkID`Q8Nl z2P;}J0VBSyh1kLAczy7v#aJ$ooVj34KJ_3m;#dyY7gLV9!`+ekCrn zVYq_FGsBgK)KTZMy))H(SE-d4>9-o4pLF!)vDj5fJ8pTZfZNPhE~}m6VUg$wTGF)_ zcz-rpR>*JOFGegT_6$msIRp}rSKGiQf4uu{nC^S^eK3imyXofWZGn1e76I8lteS<< zn$mNFx4!j)6?EJt$mO`OTGC1%1?Q{Mp$Aayv}wk&{IN-B3j(fc79hG z_dbR-T2=pCD4Aa$O11Jj-*Zt)LVPJa47_NQw>wx>wxc=qvspF>bbcs zW;+;&{GIw~H2FcNU6G^@C~-CC$#!?pC%wTM|PnlDTcR0>^afT`P^Eg(gG4+B9p-dAj`6ZS-V*+b30V+eK>k?DPuA zjw-L-Z2nPJUW@_95FnXl@$%Ts&kpf#GYK3=aO^@=r8^))=#l5UFn9)wcFix-;WV56 zgjXC{yu&GcW2%Mfv7?BWivf6rhMi&Zs}V6@8`{x_tc{2rIAB+2yUEITue7QvZ0G8T zN0PNFElqUloJ-GkVfBJNqy}74#Qlk{s;j%2OzfI2bA9eE;mkATuzbHiOSkeEtAQ=V zZ1%e|l{z^_$U}2=ZskA{>&6Ww;-$f-i{n6o1B>~0Fb?SsK#14^hkHptpFrGdKi>83 zK2}&9K+WQ%5vR*?E(?yitQeCo2R5v`qOrFf%axPOkh^VEx=-RT<@e`^{a$T5w*`Uu z*604&1ylTW!L1G}U6DVX@`fgx{rt9PYs<;!Zw}NeRyO=K>Ro@@%+`!Z3Q8RaI z7I3rW)R&6?#&3V<-V9L2R8^0P19p z%qMg9YT0*N@6(IR_?*_KFAi61hGzMyfSFN$zF8w+@$G+udi__G8UF~0kJ>(%Vrd3VHPa2Jf!fIvscpY zfj1Ix(ir2?Kxn*8Jpei&zbfk!Rt8+&Z<9nFQ*wUi5+F`s1|j68m6j7>^`ss&_PXV! zkpN;0(aEQ51P(RfI=GF#`Ljes|A5rkb{(Dcsm^gY6oS+8yi0*KKu|CmLA0b8A^-$C zDAXw5>7`Gv*c{8N-wnN^ekm20l9&kZ3#Yd?)$#Rh>L)FAF__Gj#;d>DD)?zNRV1Gy zH$PFJ7AmYJ5vlfMT{3j==e>lg(m_ zKfu1vk-AYFoEYq-1b0w|2K-J&q|Yu^qKRHQQm`2Y67WnF>n;3vU$EZMDeTEUk_FP( zpRFC^wwYOl3`vCGzETXaM|3!LnbI)>^04Enp&#{k;v@N2CPefz^pHJj;T!q_izJc|7^8HzL zvkgFnIkH$nF3U!+VyB99tbkNg4lEg1cC@gkBE|UTkAk8yVV^7Y2bdT)(?bg!%)As# zieqsRUu@8CMWT1jZTd5!i0^;@xQEZ5W5V)RhX3g5^6;?#yYVqbi1luM1mB_a+JwD*?iUic4k=q+X|GWPz^hiI{TrhYq~V1XG&o@Qpxq1A z4UXZ%)x;d8(`c05`hWyE>E(L*Co_Zy;uWQ$M;Rg`h71Ov;khcs0nlpcvOVcyXb9;+ z4{dBo`c6bZ1H`{<&T0@A5r6D)AO?Xo0ClASk?th1M;{O$MZ6w3-JWt&%9au3Tm#Zu zEki$$vz?YV6a!_+ug>@PI|d&pUO0jrvY8&G9??;j{CLOYX$-+_~Tf<208Vms1 zN1ya(Yy(0?6;lq7&FLl|FH&ynFQ4Hsjl(P|yzFK(FTL*8b$@=4E?c`}WUkJo9KZ?^FaE{ZaySeBVddLD#Ahlb6!g`KmLz~EjrSHc9KE4;q|;nnKEDxmxv8uX#Q+ z8E`lZ0AA=Co7iYx3#?VudRH4#Ui*wxkM$&Zvd9k}fX7j4KAKsQWP@G;dQH$u>~K7$ zAY$VLA969-O#dU?gSNCHJL)dVeh&TWy<0h@3E(gGQVG#x8s;-`Gs?jvo5Ba8+IZB* z2ymlm;$uUTBTX?ff?xtPGiE4GqI zPa#e4H-+Dg1JU~#lRqAM2aI?Oe-5twk?as1w>g)|0yUN?eB@5u*E>N&)}r2-;LlHDgiXD z77$N{hE`Qx1{^As6G`mC0NM50DebntI@x^wDfGX05dT*P|A~0U0D6kWBQV^msJ5%l zb$6?y8$AW|oW@)#XNQK_?{Y1%%KOsM>wM15X1OEu!TO;$#zpB5V&yX@5I5Z(vOt<%LLM470gRio)lUj}mZz(okU@V#?;j-i{bpf0W?OH%MIbAbpR`jHK?eQh^Ipu0iih%I_XX#rq zP*7P}ML!~9mhBKwJr=(61ho0@VQoG_0mPzgAXQWWq#5S5->9~;_Wi>EIxAHKq6YSb z;X&d*lb2(vXo2d_Litqwv)^XvN%uCX+b*iNfNP0Mj&vjzGF1BR?f=}u#Kl1}kzd3< zdk}pZW~pn)-4J027GF=dbYo-WjU;?f9u`smyRr z)O=IrnDu#znazHm46|Mqhuh|8r@Zi`@%BPx0RO@Azs{HrA8vTn($*wl0=JC}(J*1s}h4>?U`c2HcsaT2VX!(_27>jH;H|MnXd0 z3e`;e?jS1+7*ew3d^zXzNY}s|ZVj1{T$QKa4&2@D`%#YCFmHANDs~VsI*l%R!kO#x zbHdd;EFSAq4Ig$>?xS8TeyUmby*cc51(HQ>l9BDMYyQ=5r(vO~y}E5?wB+mT;~@c- zvv1+E{766KG-zA&+tY7W=_OUu#a=zwZ~!jVH9ydPe`d+Od}MG8*#CO3epn|P6BfyG zeBc$^YJH=cEaKPXbG4ag%W7qCZK2f*TD(hMm}4H2y>Z2^4%hE98%^`;W1gDRr$;23omaa*N0)pGm6OFvdxpFS zqbgGO?`L|_k33H{mhPZunvI?=i6U*0K){l&J@_t?DUL}Ahkocep67cudFj4&R$9|3 zyRd55bg9v90G@D3^}Huz)n*$OOGTQH*9?Hv*of}tkR{LS-D(^}ez2Lw5^@yZ`ZFRn zG9@2im18Mr_e=u3Z(0~|-o=&8RRET&y#U#WpzgRmjP_$<)p&kzTI@H6(cOD=wOw5O zLM7Lj&CTS!Hu8mKn;g&FJF065nMH44>HvhAV6I(_n|4^a(W-N{u-4!J$Gq@w#}k>Y zY1WTviIt{Ea(4CB2okfszk!R;)+v1b`j}2)5g>Gq&0_L`hmiB2RO2&hoJa5PPx3^5 z*Ep=i%}H*Cg(3tPAL2~^%9MyK2Gg=%Wc==8cfA=z3^&8wxn?H*W-hAtKHbJzl9ms+_31~3(tPg8zYqcAL@gWGF08I*l z>!4Pj0Xde!`=AwxtNCQ~tCQ(i=8`dafkB(Po1^~JgZVth zVwEAK3+wrYODbgaPRxaqYP)wSYdx6J@1j3YP)@Q_x;9m>x+Y> zO|x8~w-KU2m`}Ce`GQ;Bc4sC&dof_72=zz|4m;u;jJQk{Y8U~`FyYHMlR`DW0wbTnVWidgStm79Zj*jCk-u|0dP|Q;PAJmJdz#m!$Rjz)bmh4J*fWs-f#ie zIhU!OIsITLp*@Gf-vTNrD!}&D3nr{%~=O5UgFrGB-QWAokv4g1q3|%u%o2iuNO|RY6ssX2w01eo44!7S$+S@ zNgEsa)tmL|6of=}Jb@inHSR3!K&ALvv*EPYxFKC&@ZR}?pUC918CmCwwnBg^GJ}g0 z0uBUT+8)B7EkPL{ptS~kz5-*$qk)@vl^)>!)BOdJ$-)Q3&Xr3h)QTGVB^??w4Y-I8 z(pU#_Z2tAAYQW4GWUlMb`P3m#o8JCQP?{+Fsb%*^0_NpRJm^nceEK3a>54i5 zmSX~8KOx+wFqtkfaP5CpU4sY}*6|>U_r(2bnuyS}KO#*TY0{Ty>U)w+*_n`JptuOQ zLKbGJE~?f-0Zf3lu?7gJjme1<}|{p`AZr=uX_-cFdO-x!RziXUOw`1Yn~e9?nEur1&%d ze%k;B$!%FW7~*%-OaBv~xo30xzC1-Od`XiXa-h8&KYLmI$pb#!buNh6oCDdO_!NMs7R6doj3IFFS5K6 z%5T&j1Bj)Zox(Wm$$lu-d0L1aCwU3iUP_!%QnUO!=t^s$rm>IWu2l{v_&M`Iq;5h$ zw;8b` zkZYdWzEnGwrtruiC;*B9DoAi;-lKi;m0x5PN-U8Pb}Pobm9GJN*#hu{6s&6n2Uf!<>$ZLr?4XHU`2W_9HYR*E<|Az`Y@`eeBOzu@yj387AjB zvuA+^+xx8$lsuYNJi7L>VDwm^%5Ikv#&&gubg8Hy?4k{zgVkJJC9rz>p|cXCprla> zFo}vn2N^ma{yFsyti&JyIDKCw4(I@$?zgAA;|nBmls<;tAnWD||IVM)^OgWgI22ke z02O1K(VY9RZXe^FtkDivVb(E#*;oO#hphTsg@ua1R(`g2`W2uKu$xRKl%LM)*tepb z0i3b!?%k}-`fQK@oEgqAQU{piYR08GW($A{tu<<|)&26#$(!#EC=Zt~hBUwjl2oWZ zItd;k!(TO_>#2Mh3DK&u-n^Ov%0+Q^IUa!i{s~MeO4er{prHK#UR%|GC)^hH$_dtV zoVs7buneivEHe%T$Sl)jFkmAtr1_jR2S^(-VkODs;RXISsq_1yW^fD%IB7ClY6}|b zCQ6vMTk#ZI_`>UurS(2fo_u@0v3~FiTYJ;RGFJM4oJ{{|@HV~AAs~keVxDkvJ`+Fe1*2lcf|^u7pKle3K)#qeWY$7N~>(15UzG9Ax8Q(<8wO>xl}=zz0E!3YTQ+k{0PNkPWYx=uzOwaIT_ z=GC{4&C)zf3%4NnO#m-9>JK$lJ_XTkHs2h=J@v+KE%<$V;OTD`6gt?n6;`c_k~Y1U zXtac(Ro^`2a&Syq(MGD?-OBtB?x!4fzIt6}a>?#wp*bteK;A^V84xE#X)gV8*z<-> zKJV6dp)EJ*BEwpQF*{B2(rh%REn2w6E@rJivED4^M(SXg=@O^aM`W16Fxlhu`C^WjuSR$YOH9!Bc#wzah4$&Dlf~Dt1KiT3o>&^35mYdu z9fbC3vbt%F2ut=7!n3?Ud3O+kGC2l^HVoDhk-*_NJhS@nRJSyOi(nWp3#G>@2=J8N z)$nusjYtv^`;C9{W`&pmzOFkl@gpRxqq>8m?=Xw7!y;b7*zpPk3JDE< zGR)fyQYLd6U>h>K5IV7agTZ^%g&RA@xHC>NygULL@r)F7mc*N`-I4OrFth95* zzNZD#^z*k>)~ry>6uahI*C~b2$NR%8W%GXJOJ)ZCcuU&wXs3IBGzwPlo%5!1A%Uep zf>|L@cd)Q%&aYCV?kkD4(KP2#nbI|TRK3y@zeg_K@wN8X01a9@gX^NlvQJ5NWY4;# zdhON9Z>*1TAV6&{?Dy0*c+gYqYS#z_j{FS!fZn5S+qzA<=J5LJ7dQ(cz=L>32aBzH zz979Bpj@@0IUMhVEb-h6W>Z~@h*)u1w_U`6dTp;4>Ojc_7*cMww2%4o9DVvaih-Yw zpN9|qdc&};&vv&_$uHOKMF#k3xrr<^jA3aEW z4B_@u^ehms6Zzu2U`5;yEp=1op*%2i$NiDlAZfrdh1U*Sv->a3rX2Rz;_Y9jA zoofN3OIpgp45`P|NpP{H{VwO3^qtaS;Ay984Gs3Yq!t88AqB6s&uX)FNNFAi$&v6P zk;`6%*+!0Y#S3A(S&`cn%KH+LnAf z(G}E!QJ~j~;~oXZwboQvRycD_SKvL+S>-kPsmkk0PrDJHn2KVB7P*a9*F31rGz)E% zj-}yXSB$rh@*^iQMFq|w4rtb!RL!TU4Upwqs$+j{lB&>Eb*XCDQHCvX^t#Oz9L2km@UAl~RsX}(t$L>TBJ#7LZW-e=c9 zb@DiTPY@nNayiz`H=j}s{mL878YnQHnjZ`~&lSE1_!TGAloAbP2YFNJcjdE)+hUJw z0!m{ISq89=QUny{f*;*4W2Eqf6bn+Z(}LOHTrQAj?UxD~4}B%DRPIB=1HJpJL@l~~ zpsSE`{gF2@dYuB`S~aWd_w~QtQk{&vJLuQD8^u@!MJ*odkJP*EtB*kipJECck>U;* z&!Dl-i4?w7I;Kx^&jQ7MwIT+UJkxIR2+kkGVr>_MvWKM`DI)sxzyNn~Rt*!sJNRsX zW0==~D$57ePanPX!K|uJoIp1Teb>*mo+ol^A#0rY3N^DO$)8vIQz!-bF#Zeb56o5x zI3nS!%ne1Y`T$t&&40K~%U@#A4{rgrE9klYHbFtnwvToK+P4Uyj^TQciU?lh2bHGd zw=q?mKIgs?X^W5qJ81UPU5qI9*~kn@;T>B@j9CTjPPev@{EN7od?SksVbn+mdFmmI zU4V~;;mBi5aYXA$Uw8nCx9*s_E_Ds)I;*kLt%-Ev{JgD_>noJBO#pY$C)B|LyJ_+%R&matJTFQo zz?80Ql8m=N)nb2**4%H0V0T!w0Nt&1%P8`@8cR?4mF6p#zH%3MO+Dmgw;C;)yg+b) zSCo8#IBL&qS_jPgyjpClih zX7F{i?+MMhKuoLd(tZ@=I&gdJRBX2Y81^B5uveEL)V{AJqii`~^pO7h6;qUCozL^s zvNogi@Z-*<0Od8UIAMmlzfuAAO{cPr-;Z0c3T6E612s4E#d>m9xU=tfU+U;em3mhNvfXRSEZHj-H&UjsssMtN@dvmPuiWJQRjP}UmAw#l}!PJTK< zl$8^r5y~{X9yA2?cfXMD7)QY(tYPSh*YWw44LGj~Fupx0SiPfR7Souf-giln0`5g$ zShefd-Df_H1c8rHQ2bF?q(JX~sUnLTT(=SBj(p69nNy0xUnN)9n1}VNF}bzTgBiiI zVh9oFuTElOK(ZR@&rN^tl78d#*HACxQ$PlpweWcjYy&tr6mUg3-?T?K7WS6 zL~X}Vg31eTeFXChtd6U1cz#I4g0Q*Ny@oG}hfATp!vavJ>raN4@h< zG|JNSny^lVo|N+yjC^Q`$FhP!C8z#q9bK~f=St!R|$06@-pw0MF&9CfdSUkgLK z8b{kl3e}@aMR6)OBiF;i!okkz#2uC7qH`kEiVqPB+PTboWGzy}O_E zBZK{doniH62ppqxhPFj4BFCalh5o|tdTbKqB?eCY#LRj1YT0j3 z;@LC=*@Hz~()dmMPKjTxr%%?fS$i>&s}CmZ)Aq4}Kt5w^Sgi=2&Bm|HA%(#6M(ouk z3h+}AUekeRJRi^v*t#-a75$!vYDXRXBAwDGy1vtWK6m{LEWLbOGamwHx>TZw1vP>$ z$wZ<{QxWBExW!{4Sbvkkscye`VHQ1|FREF_L z5857?UtGGYOj65>?eqtDAeUxKN4t)^yL{(7U&5xE>FLu?$u@oFSIJyp&p2*w?I9uk z`;I*MK_f6P6WB;4@3$5s|CwPZe4MF z8_YxP26UrUB{IUM3K{x)W8@)pMRx}R&696(4V+K|kIR+FjY!D(Sr?m_{${6Kp>+O- z*SUr2@7xn*8woH{eosmFA6*I_v^?5F5n%$2QkkAC>!b(2VCjaI1cNd^6B%V*Zj2O4 z#D}m(9zSKnFhm%N%zqYIf$oY=>w!f>VCw1JP84u~HA69cQ6b2JP@3ODeAwR4(!7Ie zTOy<@0)a$-81XBkaG(;GMrG26E{QK;gM9tY>lZq+#zCNyV!zvhxBVhuuE!Ilg(M?w zAb*D&&@#BK1D_*;gsV@7(i_IxC0tgeM&Vf2A0pZeCd}um0 z$`DlA<8T+n`^k8@nS$4YLu!)Hd6z6F63%ikMHbjjws7zjhw+Pn(g@9Vmf*^zlQ(OY zQpYcJ4sj!Wv1einSSdav$fr=|+YH>O7k6RTFCmF1lpU?m4{u@T)H71ZTam}1+fX8g z6&3RWN`3MB5INqSFf07s1J^Zw^Be4<7WP_UldY*wjl!3n@GVYjG#BHRN9Ru16yhh* zq9P}1IZON>SWW^MMh^oheNL48&Ec!zY#$Jm(s`PcTU%Z+0b$uBB})1%#bw?Depxuj zIn&$*9aySzU(OM^zZ|wjFy}>QZJ_^%1-7xner^z>=}xH?=W=}7vu5#5yXThaF3O89 z3a$CQgci^nSAQ?wvUhD%lj<|t81l;Y{&VE@*uhPtTY8G^Jti?Bw*o2t=u&^^y0Guf zMO$3=9AT9|^7pF@qzaLwqF5ZtcVxqT`Cc2adt3mnO#dbrnvuJv}rYZ<5?!6AqJS@s4XQCyQy(0{?a}v zEU@2KSQo`YWW*jM`?xYD-`$%qIgyOkWF(OrSXGP_=DNz)i44yp&f}h6iPODY)^9c* z#h07$>m!%XBZC@~a79H&Q}tK1WmQO?4+gE}AK>~E$u_o4-4WTOPb@Y|>xASIA{iE-km9~IGb#lhy{FVil8%F@A+yZ-+ zr=d5VB>s9PD(cJ>VfCJ&!H9fWq+@R$iaV5uk=4c5rjIiucJ(=WU6#M7y14ny)0zmC z$Q_Y^k;4QZGbQxMs}+T)qtB3T#t*~{UT1!rASXg9r5{CaiH8<|KS+w`I4&N``6wBm z!>d5Iu`ZHaU=kx9)Jl_u8>#RqO3?c@H+3<0iY7E7=m zYev&}YR|a3An3)py7zj@>i~6LDBY*OsP6CWPX*4n_gFBccU+fm9-X7!&1{U(ub^$7 zLn(bat{*DH@(jDj2P%8rwR(q2Me0$ zFT5Rx>@8fz;TYQ5L9Uz6=e_2rSSLYz2_jh$URXY$wOBWXhyJJWbD-}^U1n-_yu*ULVC=_@h(CEe(a- z-Mok_CQ{*i-n7q3`@gCsZ#iJ$%hDt}z#NtV7IN(+WEh&}eI#>EHbu*S5WP@@tQqq+ zT_vIx1Tigq6Esx*;2k0i`P7MV39ZXma% zve9-IhB1hsDLp@*Sd`S|z&#~HQAStMqPhBU+)ykL~cJM)u4 z;vPS7gb-p5sm1a^9Hdev%ra%+e%{Bi%n_)4$TTJ#vw3&8^`rY9Ml}j6iuBk zo3wB1}6_%3KFPxjWcY$^}@$0=+1V&;rHP2)5lSAS?0IB z7h*5v{J+bpeQvd=6mqHS#w= zf!^8WV7qOz#GqZ9@^t%|Y?lyI>mQKib@qlf$YY8+|YSe_OWG|6I0` zw|yT?#?VaKh*Uc_0|1V8F{lzR$}@IGKc-i<6d>;Jly!Yo!rUv!NaM2s%eqV2l{}=u z>B=Yu9y6%F)VtkMD=ogOd3t|Mbo;XRTcWNdHhS#euil=zmZU^JbQsVXWCqkS91R(D zH-Iwrn2`5yL7Lh7AF2+Z3HQvkL1|0e#H47V+9Vg~l6&iL-Z*H8I-aJ^0O-SfWjFn- zK(VoDE&7@Db#oX?!tq)T|4+s2(ls1%lWRBYvKu0_naQ78I$EJ=uTLxkIVuu~2rGuG z*+$}z+MSsI{V-n%J91kkjr|dtBJKqWVFK!ll~1YdE^58bUdb~?C324tu^)CA_vXl` z)|_82+|Ro^1b{G-iJDA0l|l0!t?${9+DUC|GF#wt`#_h=3c=iA1Vg{DA(O@HZw zp7?1Wb)Y1E_|m>lg;}~@!wW;t4xhX<&mRKS_yku(Q#lH1izz({bTsx4B_pHdQsWzi z2G`H)b-&OQqur;T>xuXY(_5M;A(}!~Vj6c#eY*BjK2GmN>p=rGC2E)bT?faF{lzH)7*0?smz&Yn1y_+K!kRgX~?Nhy944ZYAb*o35FPVWc+8@hB_R(DfR`0!xds z%HMhOBEz^S)MNzh+p>b-$~$k>T%YHk%e-$LeZI<3#=lrtJ`qbw!}FfV%?Bt`Rdaq* z+^c_4rhi67LPSfFS&jEZ3#rLU`oAg~%STar|NOrI{$C6X#Tn!>W_zje?zc}mcwM%} z9Srp#+zlBbfN`<+DbHnlf(xt|tYn0^)H!gN5eR#DiUtw~O{SOoYW(2IKUf$&jsL~M zXxJImRr`Nf7}tT!ANO#{`D=#x9{Yq!Hot5AaXtxLBXeePgtjU!|wDKa*Z;9?QD1=0+Zh4-_TH zr0a6I2O2@`AN4||27C}>Q&upJ%V_O~P!v zc9*sJ0X=$e%^@pP<_Lgl6+5b+%06EEjVF%I1CB7Ye>BxUny;mvsGSl$5A*cra3Kd; zfsF_!Ne#Ad&lf0*!UoN@Xu`()lzRUK1lfL_`dvwU+lA$SJ!V+nlC zowpJI#Bt(#%J@PNjNkOz!(M)FUvaV#R zycHb;8MF5??ZU6js_2gkBb=8i!Ai(xzDB_xP1BMT|Mq#aH^~oD-5>zk0f9ULzp1jA z>(Z>Uwg}-7nI+-2-pEQW!%=!>sIS`)Lt#MXhaS>!FeS}-)@F+Q1?UL39|;ewlXO-T z_DlWm9Qu+s#KUU4KA+wTuN%UIwq;;Kw=DASAWupjx~t9q2Yc@wPxb%*|Gy|DDnuw5 zQT8T#m4iwVva*Woy|+Up+etPDMaWL}JhrSO*<04J*RjX(dz{{{*YEp&jraSN@8_@Y z_xt*%OBXIU&&Ts|zd!EdcE3J8`164?Wq8gPSuI`|uuUg>XRe7>X^dEqc#!-(E|-(% zk2*b8qAxF@H7T*$A@D8w_2p*y_&LHWub_O!NcOLlKmx?o?{9&XAyRy)=UU_SGl6Qb zlK3BCQiU%xmh>=0QtW&$BP;f~eWtQqayG`GuJ@eeumVJv9<2}LvX1Oi=N1W`J3Ymr zt&zWFjcwE4?`q}~ul^oXiygN1e?r}Pr%B1je%IA5`60W1h>Vblbcf7X|TB#x?d6`;PdS)Dcw^ zoA-=cssW|=VTSQx+`vq<-U=jY)6a!`nFumCAW#Bm#EMLSTiP8Y5icx@LXmF3-g(+{F9 zbF5UPQy`TEg~m?G0xcisCtAd*>a84WY6qhB)w3(HrNf!&SWCI&Np8)O}@LJ;v2_M&t z`E>861y?W~X?(h-l3VseeFXEDBJ+MHqPcsWL6qCg#5fFZ(8=S5ZBc_@zS#mO0E+Eq z?lW1*Zpw?Cmby&kRJ`yq>GP3ji3TR<6w#~KW6{*e%dAg+6tbS^4D&3o4wpO&CC%=V zZ5Z^21HJHf324aEh-e4@E|16N-;^XzzsJ8q%!kgH2XgK5FY!S9YR^R+LqEY7Hy?U< z%5(!^mu&p4yXpDq)In35TJ6B8)Q6kC=asgA!d&&;1dunf>3RUg@A7~F%yEx2BZOkm zu<_11hoi!Fqqrv;+Xh;cmLT|O&38xd^eu?A9vEs1%3dlVsiF+CHj$_c(~G`)zRqc1 z=0r-Bwg1fOr%930C-wtl%RhGpotN zA3@Xoi6vNHZMTb;fEKRt{R7a&(r>1PR2Qlh?VT8+4EOgbjZ_ngrv>z-iZm&5L2JZMX1_+eMNa-Q>3= z(tw-bS--h638B)d_9*L|eaBK~0De(t6_MCSwtg_HQv`{y0-}BkJ$lX07s2tGR56}z ztq;*N{L}+<(5q2L2q4h@Qq)E$EuU;vy`-HedvLCfvsz&y1jkEz5j#DmUN&w7xi}+e zWb&)Q@cm{m=OrGNKz*-Gb?_0#;GBXpfLV%YDvzsNI=qW@0&gU!X(NJbgojF6Ul84I zOtL}5Wp=iHfPHwP#_M^V;v3}P9-{;^Y4s;&1zIvo<4n{kM8?1Dhj5W-aPzP1#~t7; zVB*^`@}2eM->pU0bCg^dPsQ zh0Md_mC#*@h@Gm{K`;e7;A1EU`tX+ zppYsOe8Smwed=S)U`g|;Gf0z%u!2Mi0~MDIQ*{rV*N@`8{0v!N*~d=rB51_j2Er93 z=FI}=1X#%e)o8;QxwHdbt#<5OLA3LC+lzG{)tBFhv+hm{A^r6IzzYh zi{OMC$xpxutGTY&UVNcKKd4U&JA;0%-(nE+uWF(03r$IP9n8rc*(feuvOVi zlu4M?U{HQ(GrbvNr=wrnJ_HQEaTF6_qQpoP4Za^;2;01JqlK>UE10Dhla5#(RxAhF z{b-ZXy8Y<|u~QF|fUHMjD|zyc0C!E4ebRw~^&uvC{MAmiMO%X$S;=whYZzxc5y_U= zX!U9tV_c%!LWb2E1%ePLe^5 zY{La0A^%PY`&a7GllLR@NaDSuDd71d2pjX=GcKlRgz;;D-|#7WuHen_Z1VBnn9w7U z)Awa2v@bo(>6wIp<|aZ(#ktbUcX?PyGDZJ~Vmj$4yUhSq`n}kB=0orXo4F{%*V*ux zG2$rn=L~M?(si&F4R47f_d!(b&%yWdDa=IhLH;BDRt%U`Q(%3_tUChu7uXrKvoifv znEk~IIJcV81)&&pQpMiqjZUaUZ@(aG#QI`Ai<0vI4CmCZ`u1;@vo7?(&%JS8a3$C2 zcXhVQ;yK`(-G#mBrkZ?sy63!54Kv}hD_ev+SjI!h$FE~T#U5$mOX?6ixdy+d=fn6& ztU<+!t2to`Mv@VCw};Zv@GDMN$|r6StH+g)QC+V+LyB9Gh5qU!&TKzltJIUsGh@9L}E{|Gt(Sk&djWRywX}xZhV-1vS;1avuWdfh9hRP^A{)KcOH0OzjM2AG6W;! zv1@~v+ZR3>)k-^G=^uTF4KyLALx(;prJR4p(X`j*svX51@3jp^EAqiiZ0T%s&=cDI zhOb0ii^zKcCiXtxvZEQ)Cbxve_ z1XG>EGQaHTUC=*hkL6p&>Y=JHPIHjbDve;+s3gj{B^$)g?qKFOJv+I&BG7*5)6bqh zZcj2vf-Dw%fBCkIQQ1oqeS0_H`O!UQ8-+gO$U^9Yp0jqQp1>{`J)U7(8{uf5{mWZo z{Wwg5P{HM0s|Xu+ z|GR7(XloVi)@2E7#}1OxDUP>HNsEMlR2M zcTX{h2qr5ubmJ@gU7(sxJ|vHPZPFl7$F&DxC?aWz@XxILz~m+n7LZb>yxnFvb(62F zwkm{@C%MMB@5pWF3scE6mzJB+rT85dgpGx|r=>oKXwVVtH1SLgxV~hY6tlLNDj0(s zyeDzJcHJ5%balu~bY(a6&p#6-U!7t1#C^Y3=S!Gi6C=VvcJnhI3Gp63D>(t5roz_l zrE?-=FL+^JVZ|JppKmY*rsx0xH@l3G51}Le1vQAmCVAi|O+Om~rIgN>6mKhSHf0?| zUfmn326I|*$A@BzF2aHM&4ic$O6&y7{1!!9Uet_?qZ@{q4%_*MQ&41!V;<;^ z7!!`fHv#+_rU%vJ98btfFMiir<9R;{zQeh}x>!n%9nIW2=Du)Bo%oc#_96}7>If#a zY_TjLl(!aJbd$7Y?05B;&wq%6czDjn8Y^eo@_M~FU#3Q1m!kL7V;;vx6w|9UUhTOI zG}%r;pw`1h=dZ9M!N_WN(;m_?tw;?TjR1jA!5hE`JZ)ZuE0>KdcboSoo2Tj;o!n38 zcUU$rcwj;V$L4YwI15f4-}x@!^$U*jy}piqhUj#Uo6~ZV`%2k?BWU}Ci+P$}20|{) zdG3ojB_ra&6vD=n41vQ?CDa2?2PH56gD9If^oESxJNKf$lo}h+vFmO4dxg<=N%-b; zz9zcA9jDRf@hB5>gF5LZ?c-0*MxgEA7X9RM2~q2&$GcD&@x||hvYZF+COy>DBA`Y# zdP;{b#g_=+dzP)MZ-GSY^x?`L;VJ4p4%kgM1bDs7wdGns+dYHd1ehG1a+hR{fIH@bKco$*xkw8OsC3h^K z++b-8ITsna_8cCNyrz?qsZo7=HTleI&?;amXGp?Dk@n!fnPc;BCXRmOrOEwD!@uVv zlz;!$R{AQ*b^IyPVaRYxTbq5`cgY4Dd{O^wH&BYLm}+rK7DDeiK*lM9iEDksNL+E6 z2)T3vNqR3Ch|=eBPbOdmXEqqnB+!;>s80itS!pGp{E#woal`O^=Q;!EJNFwhuIbS` zT`J=<>k0Sw;-2=U(We||M52ItwfS7AdYJX@Hy2GLMP3l$4K_J%C}Guc3ly@(u z8Azx~ev#0YU-y&HKLk|7kz4(Gie+ctThonw4`1xMZ8<;EY~z_SzLzHjO7l%p=~zK! zaZ3=MW^K`7ClpgKRp*AR1#>m!2gI|{TzV_p=ob)je=9brEwT(wu&aU0#A&75X-`^DWW7 z^(qG^Z9@@5ul=VR*zTuv^0*+zm3T)xqZq*qeS3ixQV|5?zDk(bgNEeY@5Vr&W#NLU z^%Ow#?;g!1ZSi=&sa+FOfBSdMqg-O>j1?=p8oL_#=L zHzkF__`W(Tx(_&Y3KJ_?9aq=EZuKK zCW9<|5PQ{!kG^NfeCA@H(gzM;IlHh6C%3XAr)R9}7|Exc^Z_HP%WQuT$Wif#PXVhQz+!>`9O|9X5VTVLLIFL#^p!oP0 zj<Q$s9kCSesXhAqebPcag}piAEvHBp2P4j%17g% zLSWaH+BQ|roTIaXgHar+&8dDr73leT$1?sTOUd}V&!ytabT5Tn&bJqn)@Yx22XO); z5X0|ozZ{{xv*#ikSI{XTI>uPC0zw}rrQu6^VjlE{bT0l+?j151I52 z)?65-C%r-nmELoDQ6zQJ)vt}c;ste-XTx@uG_=DYSih6C1)zPmwu{asy%~4d$&?32 z1nAp00T8$ySSU7#Wg*qGe9^ex-NuE5^B&xAWurLBSelJfDfX1_*iLUaz?mWA<7dM)I$Xt zaPSW)IG#j2x=Y3pd*naX7IdqjX(@h=(r|J2l4*?p7{pbPOjYPfC#20kgSed7H5T6! z(vk>xdhv`ya*N$eZ%k>wI2gPj!gTW`>_>X&~FjK8fBH5=sj%Msyq8cbSYw%Bg<<6Ol-k&A@zxeCl}lz%R-z!+%r9Le&oOt^=Da`~#*TX6;lS&~ z+>43)I0k87>C1_yqP$1e_1U6qFS>^eoYHGkDTV6+j`WH20Dnk0ujh49`8Bu|3Ps02c6v8*l2!OxAJR!()V&MDYDaL_#7TfmNs zrA9GnrZSG^+(}?C2#X6?syq%#Ep}c$KU|^zVtJUmIr4TjOhh#6`KAhiVcE4yjP zWup)&ifjBk-pr1xsRSZmUHC5jJ-*ay4PTe|%=_4}noTSjCxbj=ljTzBTyoG-@vxP> z`+A0TXxP%%>+h!A=dQImXubVmm30dpj!jU^0Z^_N0Up*@o$%xX;`QSZ`_3XQtFp#5 z6)e%}rG4^zpm~|l6*BdN$h<#!HL3m6Kx;{zrJk4AHi4}(R)GQ$mWuG-mjUwb)wzf( zK75n2=6O|ppg}nEs?|S|M2Nvm_R&&f2Yyhj9vDdtp_LqK3Z*v35>^fm4=JB~Tf>sV znC=<{URRd=(jIXrecM4-H}RI$$bf(4ARrt9##sm{{{g>$dl9=cjNu`y0e&lBS>+O6W6Qf63wgYM-uQ2szJf7dchGq@ z5ap)Z!5pl@ILu}LMobOxH?hP*&S0Q5ApT%;ehSj;?_c$Xl7|oK|AgmsGk&o1%7`iG zsRveV^=W}R)8T*sxa#eGB&#g{!&hzX2B4(obY~8bt;+Tu@po(+gbFty#n2B#K|BGp zK4uDEuSG2`&iM9QFu<_vuql|N6=<&Bpwc8iS7_2z7b?0UgcTI_=IV$>p+RYT2}mUi zK#JG^rhdq^@?t;BfYq{~&YS#bndV8?eH3o00=RceT+qFsB0vfHI(@#-bt*(~gmC8V zHE*R$=LsxJ1^(0nS0$t?ye8bB1Z94+rXly-+SLriDU!2n_4 zkUWDG{TUR3(Nw0_y7~IPmOwZrDmMkAqy;} z3_z5J!C7rzCK*vyK5E-c?F3v3WA+XRNtP%OyE1jlLvMypJ9yY1>_$MAd9k|eBnzs5 z!_Hq~@;sN#`zl@Sr8nChjluNyHs})p)D8s6dhc05p8GwXwHZ^^KlzhKZm0c60GfoW z0u{AxR$I^m=pJ8>)Iv&h7Js)Ge@150sbfiKWncpfSPXD8S>Nc)0n+;?6#zgJQ9K|FF*=Z6`UTME3Yq<@cgH`rH@S`g}8(1HSB{^v?#fRK21KIKl zDNxEfInd7lWMat=ETUW|m|X>WIpZYH?O0Ob1J8{5drS$>!H4H-=!eYRxLTM8%Ojlk z^o()yK?ClyHd!ZViq}VhtgfK<@!weM-@J+m=xICUiD3LP;A^n(dJ4lU`S!pJ&*Rwc zqF~9ek)@QI)_{2!5HAO`wUAZ`>TbZ`)dVVP9kN+~_0j~;Iyhyl<#d(vsxIgv|2y)~ zP^Fz%4m*z<00-I(mq(9HlZc<$?*h8CfEL);K^MgVSMvZQOa%U56g=+FHu$^c{?mc} zyYEW5GQI()b}~zeX?GKrx$$E}&@lFH%lfO1YeKXvvCOUh;Q>)%t{czY0jXH~#_U`z zw*8O;hWYynj5~4n_A9@@@V{aOQ&7})Lq7p#G0A&?@<90&$kq7fN zBdSS#OxlB3eQYzd0|1DZDUO_vk9M>`EP=g3p%54Wl~U3mk@N>`z>>#eC9pgcEEE)s z3&M=PM^!j38ujbC=a32)B*9KEFSbO8=vU{qgX3&M3^3RMqd3wNK(KQyE&gZBIw@DC zH!8Ts7l9YMwS+yWeNLUlV(tmA(Q?rkrBYmQ_u*{=j?r<_D4C1tGj`1JV;iW0mSEWt zA3NXITzS8NOc1pMC{WJw4FG~7H8d1=+q9uaVY>tY5mizmy5jW@jM`(K88ijwgGcJ9 z22>rJ@Y%mP&;RU({{1WOv`N3PfYW|5TtTGe3=xe56Wr#7YM$<>jOs-g@#M4fx6#1S z>XXD6cf=Wj!{)%pbTgh*feDKa?oiEqZ2Mvwh?pB%u!nNp6se*Z z&of;wX#jX$`rO7@0J_^k>zlvAhd1I0A5_)2096{EC1Ep2ko^Zz%QaT;i=WvrXFhcETh8x>=42-|GjQQ!LRY z`&s?#TnttS{Q~s~BSE_$Y2Wm~-F!)F8_@NJfr!}>bUeHY(vD#XqOg90%7e3*4%RT= zyKmk+Y>2|oCzJ^gFGi)`UM^Bs0c0ApjN&oo|vb|u$sJrT#~21 zr1@OYE7x|Vn~#a9z_+c5S{@bIf67^=W)!Iw|j8aBzR>Kdj2{Zl8v$ zG)@6}1>ZJM0Np^? zB;ch2Nqk(6l6s9WULvY9DJf?-PY>ZXF8XlkTdKT8<$6=tone-Vk#xnRyS1oI`S0_f z$?_a!8Uo1bk$7;w^H(kbMd=q-W#g9^k`sJteBzIfe9n;AfMC&asdOqdAB;uFX2y(w zNXkMKIN?hw=?_A7OJi9D)9*I}6_K(424q7`U_VNti^aiXhShbjn2dnXG~3O-g8*r| z{J2UOFH7Z%uz0`mQIYkygox8p%&2=xh(If=3dpn=^pzS~m(@bCyS(JVVp`xgB8lCn zAHYqy22I8~tsXzO*uTA*w#b@j8XJY)cp#p+47QJoMfKinSY0h(iTm4HhqT@40B0O* zhq0OhK#be#YD~Q{$HYLY&{;$R(y34f7ssm=I3PV<%gQY` z+guvt6Bu>q)&Rl|gQ8xwARv9@mJOy1!-Jzb5-7sQlE}Cahjwb3!m1jacyA>;(?*?! zEyL=XSs)3aMXQl3Np;;U9`Mk!)DB-!nv4}`o7ox44j>3O=)IUFTQJ)}j|T^d3n^Pp zq4EQ`5D$nksj+SFDKMcA1IKzJXl+XF#BtvE`Hc?Neod8pSNRl@B7o$93J5034l}WN4a=qWLNB@Y{wxU2TS| z=T;-^6Ui!^J_URsy>DD}?4|1&61$a<@ivO)stm< z1YCN--UGkWoBD1`xvcEOi$cKf?`>}<|9y6|#O8aQVQcBp_HeVvVm2vIp1P~uF3WAy z1*H`i0CCU<7jCRKkSg}vGR)Wl>AVo30HGk)EoDLalkAdR0z&>6Z+oTJps3)qxzNkD zJq|sd8?A8WH~n^lP%V8+<%z`JV(IU8}wh@E^eB@aD_sg%}f&;4>T+m$)@ zSi45JHjMxYU`4?lg2Q3};YG`#ZV~I+xo@KOAW=;CwWOpNsB9p!U)U>AJ)=I^?>|k? z$~!S)kVDf2E-D%Tt@9L=h`2$ds#;66FL0A|y0lwv=Yi`14LNe_%DvatuYUG)`q%#R z!NtS=0YLkitFRp(ut0a{gAR8n*m=g&Q_V0KKw&W^(qcR+*Cq+EyPUlAa@2|5Ii1uy z`cp{2ehUD^V8hFBP_SFou&&zr%=H~qE`k8hOfqZY5G$JkugdfK$xH{IjQLR*4hl3h zWPl|mgDj56W};>eWH7Q4cGF)<0l#a?mqOPcdxZed2@{ME$e-*eq{IGt5S+<@8jAkQ z3j+S2J0z%HyH|a%5(KzQH_6#Gh(S8N>3cGNMEB^Ol*}2pd^I>@gTT#c*8zAx(GegL z83FTqol?}v!ZeWKC!>tt{0JVwV}~DA1(pOJb;iGzdEhv(e+>7ek(=aLdXeHy;#^PJ#>Yto31FGMkAaruNk zWZ^nk6QUa`CtMR|S*e;bO5?1PzHuV3CT?`GCtVXBTwG+Mke2TW9he(flm1gJWG7sc zKoVjb&Za@upWGk61<*axU`=T5rk!+6f~8VqXpaLmTTl82iJ7^;%NuKEKH*luBLG{) z-;(8o%hF1SFBHAQbN__<*$2EkJbkUe6TZ6*@MANc!Iyqp-Je_4NAG~G`V5@-9I6CA z=1QA#!Z%LF4A!5nIQ68)^UrJh!;byuwf$*(|6^@`4D0`~wm-TjpMRX>AMNI!v+WPA zRqEaU4QCs|ehmH_3*bM*AOASae;no?y}>^Y^KZlFe;nrjl@9a&a3_hr^eMeP?$T6x zC~U{LnwGZXfEl!~3SY&RpZhx-|K02KD3<~^tLirzvB~0D7<_G2|W}qs;v;C7NXq z3oS-@<4R0uz~DvBEtT*S<-bx#c(a{JwD!iGA)0(fjhh+W2H;Nke6vMWgRESw-ebng z+$uF?O^ng3f`XQP{A#O}ZsZoZJWCNL`YSccBzJG4cA5|rXjBJLBpm$#7pY34V)QV8 zY21T1Yh)xtD_!IL41p^P#|c+Q=_xW>cpW+5{P{j|IJd~M(0tH}W$Y-+oec+-S;eMm zZ8e;0S-3iY$*M?6grDR?Pp~m??~S(bShn)3!p)aJ&){;CL7pTz9|{?KtN#ffSaIE# zUs!&(3;u4)_!u&9J8zG~tj)eM>8(^<8nACREcl|nlna)FN?0-d8R$}n�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 I$3F7E0ByfRga7~l literal 0 HcmV?d00001 diff --git a/docs/getting-started/framework/profiler.md b/docs/getting-started/framework/profiler.md index 83336ee..17418bb 100644 --- a/docs/getting-started/framework/profiler.md +++ b/docs/getting-started/framework/profiler.md @@ -1,5 +1,92 @@ # Profiler +Innmind comes with an optional profiler to help you debug your program. + +!!! success "" + It works for both HTTP (sync or async) and CLI programs. + ## Installation +```sh +composer require --dev innmind/debug:~4.0 +``` + ## Usage + +```php +use Innmind\Framework\{ + Application, + Main\Http, + Middleware\Optional, +}; +use Innmind\Profiler\Web\Kernel as Profiler; +use Innmind\Debug\Kernel as Debug; +use Innmind\Url\Path; + +new class extends Http { + protected function configure(Application $app): Application + { + return $app + ->map(Optional::of( + Debug::class, + static fn() => Debug::inApp()->operatingSystem(), #(1) + )) + ->map(new MyMiddleware) + ->map(Optional::of( + Profiler::class, + static fn() => Profiler::inApp(Path::of('var/profiler/')), #(2) + )) + ->map(Optional::of( + Debug::class, + static fn() => Debug::inApp()->app(), #(3) + )); + } +}; +``` + +1. This will record every calls made to the Operating System. +2. This exposes the profiler's HTTP routes. The path is where the profiles will be stored. +3. This will record the incoming HTTP requests and CLI commands and their results. + +!!! note "" + The `Optional` middleware will not call the underlying middleware if the class doesn't exist. This allows to automatically not declare the profiler in production, since it's a composer _dev_ dependency. + +You can then access the profiler via `GET /_profiler/`. It will show the list of recorded profiles: + +![](../../assets/profiler/index.png) + +:material-checkbox-blank-circle:{ style="color: rgb(104, 255, 101) " } is successful, :material-checkbox-blank-circle:{ style="color: rgb(255, 179, 48) " } is still running and :material-checkbox-blank-circle:{ style="color: rgb(255, 79, 86) " } failed. + +This profiler's advantages is that you can see the profiles while it's being recorded. This means that you don't have to wait for a long CLI command to finish to see what happened. + +The other advantage is the way profiles are stored: in a human readable way. If your program does a lot of things (like hundreds of HTTP calls) you can browse the profile's folder and look around individual calls. + +??? Tip "Screenshots" + === "HTTP" + ![](../../assets/profiler/http.png) + + === "Exception" + ![](../../assets/profiler/exception.png) + + !!! warning "" + You need to have [graphviz](https://graphviz.org) installed to view this. + + === "App graph" + ![](../../assets/profiler/app_graph.png) + + This is the object tree loaded to respond to a request/command. + + !!! warning "" + You need to have [graphviz](https://graphviz.org) installed to view this. + + === "Environment" + ![](../../assets/profiler/environment.png) + + === "Processes" + ![](../../assets/profiler/processes.png) + + === "Remote Processes" + ![](../../assets/profiler/remote_processes.png) + + === "Remote HTTP" + ![](../../assets/profiler/remote_http.png) diff --git a/mkdocs.yml b/mkdocs.yml index a2a4b9d..bdf6e3f 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -138,6 +138,9 @@ markdown_extensions: - toc: permalink: true - footnotes + - pymdownx.emoji: + emoji_index: !!python/name:material.extensions.emoji.twemoji + emoji_generator: !!python/name:material.extensions.emoji.to_svg extra_css: - assets/stylesheets/extra.css From 563e7e9ccc1c8377813a7f7bd642a71cb461d357 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Wed, 8 May 2024 10:46:02 +0200 Subject: [PATCH 46/68] add extensions --- docs/getting-started/framework/extensions.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docs/getting-started/framework/extensions.md b/docs/getting-started/framework/extensions.md index 502a05b..9716f80 100644 --- a/docs/getting-started/framework/extensions.md +++ b/docs/getting-started/framework/extensions.md @@ -2,4 +2,11 @@ ## Built-in +This framework comes with these middlewares: + +- `Innmind\Framework\Middleware\Optional` to load a middleware only if the class exist, as seen in the [profiler section](profiler.md) +- `Innmind\Framework\Middleware\LoadDotEnv` to load a `.env` file and inject the values in the `Innmind\Framework\Environment` object + ## Others + +You can find other packages exposing middlewares via the virutal package `innmind/framework-middlewares` on [Packagist](https://packagist.org/providers/innmind/framework-middlewares). From 0b92a23c67df4b95ac65562a51b55a4b42f3e024 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Wed, 8 May 2024 11:06:24 +0200 Subject: [PATCH 47/68] add orm intro --- docs/getting-started/orm/index.md | 39 +++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/docs/getting-started/orm/index.md b/docs/getting-started/orm/index.md index 4ff0a37..a1fb57f 100644 --- a/docs/getting-started/orm/index.md +++ b/docs/getting-started/orm/index.md @@ -1,9 +1,48 @@ # ORM +This ORM focuses to simplify data manipulation. + +!!! success "" + It can handle any amount of data by being memory safe and reduces the complexity of data lifecycle by using immutable objects. + +??? info + Its monadic design allows it to be compatible with [Innmind's asynchronous context](../concurrency/async.md). + ## Installation +```sh +composer require formal/orm:~2.0 +``` + ## Example +```php +use Formal\ORM\{ + Manager, + Sort, +}; +use Innmind\Url\Url; + +$manager = Manager::sql( + $os + ->remote() + ->sql(Url::of('mysql://user:pwd@host:3306/database?charset=utf8mb4')), +); +$_ = $manager + ->repository(YourAggregate::class) + ->all() + ->sort('someProperty', Sort::asc) + ->drop(150) + ->take(50) + ->foreach(static fn(YourAggregate $aggregate) => doStuff($aggregate)); +``` + ## Tips +Since it focuses on usage and not _abstracting a persistence model_ this ORM allows 3 different persistence models: + +- SQL +- Filesystem (real one or in memory) +- Elasticsearch + *[ORM]: Object Relational Mapping From d54521b7d3a16c66329df3580f68fd3c68056999 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Wed, 8 May 2024 15:20:02 +0200 Subject: [PATCH 48/68] add orm development --- docs/getting-started/orm/development.md | 395 ++++++++++++++++++++++++ 1 file changed, 395 insertions(+) diff --git a/docs/getting-started/orm/development.md b/docs/getting-started/orm/development.md index 0cf1429..c82e316 100644 --- a/docs/getting-started/orm/development.md +++ b/docs/getting-started/orm/development.md @@ -2,14 +2,409 @@ ## Setup +For this section we'll work with a `User` class that can have multiple `Address` objects. + +To keep things simple we'll work with an in memory persistence. You'll learn how to really persist them in the [next section](production.md). + +```php +use Formal\ORM\Manager; +use Innmind\Filesystem\Adapter\InMemory; + +$orm = Manager::filesystem(InMemory::emulateFilesystem()); #(1) +``` + +1. From this point on every time you see `$orm` it will come from this example. + +=== "`User`" + ```php + use Formal\ORM\{ + Id, + Definition\Contains, + }; + use Innmind\Immutable\Set; + + final readonly class User + { + /** + * @param Id $id + * @param Set

$addresses + */ + private function __construct( + private Id $id, + private string $username, + #[Contains(Address::class)] #(1) + private Set $addresses, + ) {} + + public static function new(string $username): self + { + return new self( + Id::new(self::class), + $username, + Set::of(), + ); + } + + public function addAdress(Address $address): self + { + return new self( + $this->id, + $this->username, + $this->addresses->add($address), + ); + } + } + ``` + + 1. You'll learn more on why this annotation is required in the [production section](production.md) + + A `User` is called an aggregate in this ORM. This is the root object that have ownership of every data inside it (more on that below). + + An aggregate must have an `Id $id` property. All the other properties will be automatically stored if the ORM understands the type defined on the property. + + ??? info + A `Set` is an immutable unsorted collection of unique objects. + +=== "`Address`" + ```php + final readonly class Address + { + public function __construct( + private string $street, + private string $zipcode, + private string $city, + ) {} + } + ``` + + An `Address` is called an entity in this ORM. As you can see it doesn't have any id. The ORM knows an object of this class belongs to a given user because it is found inside its `$addresses` property. + + Of course nothing prevents you to add your own id to an entity, but the ORM will treat it as any other property. + ## Persisting a new aggregate +```php +use Innmind\Immutable\Either; + +$repository = $orm->repository(User::class); +$orm->transactional( + static function() use ($repository) { + $repository->put(User::new('john')); + $repository->put(User::new('jane')); + + return Either::right(null); + }, +); +``` + +In order to persist aggregates you need to first access their repository. You can think of this `$repository` as a persistent collection of all your objects for a given class. + +To modify (1) any data it has to be done in a transaction via `$orm->transactional()`. This is done to make sure your program is structurally correct. If you try to modify the data outside it will throw an exception, this prevents unforeseen modifications outside of the context you expect. Note that this applies to calls on a repository methods, not the aggregate objects. +{.annotate} + +1. `#!php $repository->put()` or `#!php $repository->remove()` + +The function passed to `transactional` has to return an [`Either`](../handling-data/either.md). If it contains a value on the _right_ side then it will commit the transaction and if it contains a value on the _left_ side (or throws an exception) it will rollback the transaction. The `transactional` method will return the `Either` as you'd expect. + +In our case we return `null` on the right side as we don't have any business logic that can fail. + +Let's say now that we want to create 2 users that live in the same city: + +```php +$address = new Address('somewhere', '75001', 'Paris'); +$john = User::new('john')->addAddress($address); +$jane = User::new('jane')->addAddress($address); + +$repository = $orm->repository(User::class); +$orm->transactional( + static function() use ($repository, $john, $jane) { + $repository->put($john); + $repository->put($jane); + + return Either::right(null); + }, +); +``` + +Even though we use the same `Address` object for both users the address will be stored twice. This is possible because the `Address` is an immutable object that represents data, the object _reference_ has no relevance for the ORM. + +!!! success "" + This design as a HUGE benefit: you can't mess up your objects relations. + ## Retrieving an aggregate +Once you persisted an aggregate you'll need to retrieve it, which pretty straight forward: + +```php +$repository + ->get(Id::of(User::class, 'some-uuid')) + ->match( + static fn(User $user) => doStuff($user), + static fn() => userDoesntExist(), + ); +``` + +You should replace `'some-uuid'` with the string representation of and id (via the `toString` method). + +Since the user you're asking for may not exist in the storage, the repository returns a [`Maybe`](../handling-data/maybe.md) so you're forced to handle both cases. + ## Modifying an aggregate +To modify an aggregate you need to _re-add_ it to the repository since the objects are immutable. + +```php +$orm->transactional( + static function() use ($repository) { + $_ = $repository + ->get(Id::of(User::class, 'some-uuid')) + ->map(static fn(User $user) => $user->addAddress( + new Address('somewhere', 'SW9 9SL', 'London'), + )) + ->match( + static fn(User $user) => $repository->put($user), + static fn() => null, + ); + + return Either::right(null); + }, +); +``` + +The benefit here is that you can't persist data by accident. All modifications to the persistence are [explicit](../../philosophy/explicit.md). + ## Deleting an aggregate +```php +$orm->transactional( + static function() use ($repository) { + $repository->remove(Id::of(User::class, 'some-uuid')); + + return Either::right(null); + }, +); +``` + +Whether any aggregate with this id existed or not it will return nothing and won't throw an exception. + ## Retrieving a collection of aggregates +The simplest way is to retrieve all aggregates: + +```php +$repository + ->all() + ->foreach(static fn(User $user) => doStuff($user)); +``` + +Even with you have thousands of aggregates in your storage this code will work because the ORM keeps track of an aggregate as long as _you_ keep it in memory. + +Usually you won't want to retrieve all aggregates, you need only a subset. You could use `#!php $repository->all()->filter()` but this fairly innefficient as it retrieve all aggregates and throw out the ones you don't one. + +The best approach is to filter directly at the storage level. You do this via the [specification pattern](../operating-system/sql.md#filtering). + +Let's say we want all users with an address in `London`. First we need to build a specification: + +```php +use Innmind\Specification\{ + Comparator, + Composable, + Sign, +}; + +/** @psalm-immutable */ +final class City implements Comparator +{ + use Composable; + + private function __construct( + private string $city, + ) {} + + /** @psalm-pure */ + public static function of(string $city): self + { + return new self($city); + } + + public function property(): string + { + return 'city'; #(1) + } + + public function sign(): Sign + { + return Sign::equality; + } + + public function value(): string #(2) + { + return $this->city; + } +} +``` + +1. This is the name of the property in the `Address` class. +2. This return type has to be the same as the one on the property. + +And you use like this: + +```php +use Formal\ORM\Specification\Child; + +$repository + ->matching(Child::of( + 'addresses', #(1) + City::of('London'), + )) + ->foreach(static fn(User $user) => doStuff($user)); +``` + +1. This is the property name on the `User` class. + +And if you want to target `London` or `Paris` you can do `#!php City::of('London')->or(City::of('Paris'))`. + +!!! success "" + This is the same approach as the [pure SQL one](../operating-system/sql.md#filtering). So you can more easily upgrade from one to the other. + +You can of course also limit the number of aggregates to retrieve via `#!php $repository->matching($specification)->drop($x)->take($y)`. + ## Custom types + +So far you've only seen how to persist `string` properties. But you can use your own types. + +For example let's you want to create a `Username` class to prevent using empty usernames. + +```php +final readonly class Username +{ + private string $value; + + public function __construct(string $value) + { + if ($value === '') { + throw new \DomainException; + } + + $this->value = $value; + } + + public function toString(): string + { + return $this->value; + } +} +``` + +Now you need to update the aggregate: + +```php hl_lines="15 20" +use Formal\ORM\{ + Id, + Definition\Contains, +}; +use Innmind\Immutable\Set; + +final readonly class User +{ + /** + * @param Id $id + * @param Set
$addresses + */ + private function __construct( + private Id $id, + private Username $username, + #[Contains(Address::class)] + private Set $addresses, + ) {} + + public static function new(Username $username): self + { + return new self( + Id::new(self::class), + $username, + Set::of(), + ); + } + + public function addAdress(Address $address): self + { + return new self( + $this->id, + $this->username, + $this->addresses->add($address), + ); + } +} +``` + +The last part is to tell the ORM how to convert this type. You need to create a class implementing the `Type` interface. + +```php +use Formal\ORM\Definition\{ + Type, + Types, +}; +use Innmind\Type\{ + Type as Concrete, + ClassName, +}; +use Innmind\Immutable\Maybe; + +/** + * @psalm-immutable + * @implements Type + */ +final class UsernameType implements Type +{ + /** + * @psalm-pure + * + * @return Maybe + */ + public static function of(Types $types, Concrete $type): Maybe + { + return Maybe::just($type) + ->filter(static fn($type) => $type->accepts( + ClassName::of(Username::class) #(1) + )) + ->map(static fn() => new self); + } + + public function normalize(mixed $value): null|string|int|bool + { + return $value->toString(); + } + + public function denormalize(null|string|int|bool $value): mixed + { + if (!\is_string($value)) { + throw new \LogicException; + } + + return new Username($value); + } +} +``` + +1. This is what tells the ORM the type this class supports converting. + +??? tip + You don't need to handle the `null` value in your type, the ORM already does that for you. + +And you register this class when creating the ORM: + +```php hl_lines="10-12" +use Formal\ORM\{ + Manager, + Definition\Aggregates, + Definition\Types, +}; +use Innmind\Filesystem\Adapter\InMemory; + +$orm = Manager::filesystem( + InMemory::emulateFilesystem(), + Aggregates::of(Types::of( + Username::of(...), + )), +); +``` From 9f8484a9ccf80850a6e3c7b3e3fb97f559a55a96 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Wed, 8 May 2024 18:11:38 +0200 Subject: [PATCH 49/68] add orm production --- docs/getting-started/orm/index.md | 2 +- docs/getting-started/orm/production.md | 144 +++++++++++++++++++++++++ 2 files changed, 145 insertions(+), 1 deletion(-) diff --git a/docs/getting-started/orm/index.md b/docs/getting-started/orm/index.md index a1fb57f..86c2ce0 100644 --- a/docs/getting-started/orm/index.md +++ b/docs/getting-started/orm/index.md @@ -42,7 +42,7 @@ $_ = $manager Since it focuses on usage and not _abstracting a persistence model_ this ORM allows 3 different persistence models: - SQL -- Filesystem (real one or in memory) +- Filesystem - Elasticsearch *[ORM]: Object Relational Mapping diff --git a/docs/getting-started/orm/production.md b/docs/getting-started/orm/production.md index 9d100cc..402ddf8 100644 --- a/docs/getting-started/orm/production.md +++ b/docs/getting-started/orm/production.md @@ -2,16 +2,160 @@ ## Choose the right storage +Now that you know how to use the main features of this ORM, it's time to really persist the data. + +As said in the introduction you have 3 options: + +- SQL +- Elasticsearch +- Filesystem + +If you need a reliable storage you should use SQL as it's battle proven. + +If your're trying to build a proof of concept then it's probable not necessary to use any third party storage and go with the filesystem. + +If you need efficiency when searching for your aggregates then you should go with Elasticsearch. + +!!! success "" + The 3 storages are tested against the same properties. This means that the behaviour between all of them will be the same. So you can switch between them. + ## SQL ### Setup +```php +use Formal\ORM\Manager; +use Innmind\Url\Url; + +$connection = $os + ->remote() + ->sql(Url::of('mysql://user:password@127.0.0.1:3306/database')); +$orm = Manager::sql($connection); +``` + +The rest of your code doesn't have to change. + ### Creating the tables +In order to persist your data you first need to create the tables where they'll be stored. + +```php +$aggregates = Aggregates::of(Types::default()); #(1) +$show = ShowCreateTable::of($aggregates); + +$_ = $show(User::class)->foreach($connection); #(2) +``` + +1. Don't forget to also declare your own types here. +2. You don't need to specify the entities here, only the aggregates class. + +This code automatically execute the queries to create the tables. You could instead print them (1) and store them in a database migration tool. +{.annotate} + +1. `#!php $_ = $show(User::class)->foreach(var_dump(...));` + +??? warning + Unfortunately Innmind doesn't have a migration package yet. For now you could use [`doctrine/migrations`](https://packagist.org/packages/doctrine/migrations). + ## Elasticsearch +You first need to run an Elasticsearch instance, head to their [documentation](https://www.elastic.co/guide/en/elasticsearch/reference/current/getting-started.html) to learn how to start one. + +Then change the adapter of the manager: + +```php +use Formal\ORM\Adapter\Elasticsearch; +use Innmind\Url\Url; + +$orm = Manager::of( + Elasticsearch::of( + $os->remote()->http(), + Url::of('http://localhost:9200/'), #(1) + ), +); +``` + +1. If you use a local instance you can omit this parameter. + +??? tip + If you want to run tests against a real instance of Elasticsearch you should decorate the HTTP client like this: + + ```php + use Formal\ORM\Adapter\Elasticsearch\Refresh; + + Elasticsearch::of(Refresh::of( + $os->remote()->http(), + )); + ``` + + This decorator makes sure each modification to the index are applied instantaneously. **DO NOT** use this decorator in production as it will overload your instance. + +Finally you need to create the index: + +```php +use Formal\ORM\{ + Definition\Aggregates, + Definition\Types, + Adapter\Elasticsearch\CreateIndex, +}; +use Innmind\Url\Url; + +$aggregates = Aggregates::of(Types::default()); #(1) +$createIndex = CreateIndex::of( + $os->remote()->http(), + $aggregates, + Url::of('http://localhost:9200/'), +); + +$_ = $createIndex(User::class)->match( + static fn() => null, + static fn() => throw new \RuntimeException('Failed to create index'), +); +``` + ## Filesystem ### Local +This is the best storage when starting to develop a new program as there's no schema to update. This allows for rapid prototyping. + +```php +use Innmind\Url\Path; + +$orm = Manager::filesystem( + $os + ->filesystem() + ->mount(Path::of('path/where/to/store/data')), +); +``` + +And... that's it. + ### S3 + +You should this storage for small programs without much concurrency that you need to synchronise for multiple clients. A good example is a CLI program that you want to work across multiple machines. + +First you need to require the S3 package: + +```sh +composer require innmind/s3:~4.1 +``` + +Then configure the ORM: + +```php +use Innmind\S3\{ + Factory, + Region, + Filesystem, +}; +use Innmind\Url\Url; + +$bucket = Factory::of($os)->build( + Url::of('https://acces_key:acces_secret@bucket-name.s3.region-name.scw.cloud/'), + Region::of('region-name'), +); +$orm = Manager::filesystem( + Filesystem\Adapter::of($bucket), +); +``` From e374381d3d6ac9df24d80bcfd98a973d0b19d9e0 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Wed, 8 May 2024 18:16:01 +0200 Subject: [PATCH 50/68] add missing annotation --- docs/getting-started/orm/production.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/getting-started/orm/production.md b/docs/getting-started/orm/production.md index 402ddf8..c859b88 100644 --- a/docs/getting-started/orm/production.md +++ b/docs/getting-started/orm/production.md @@ -113,6 +113,8 @@ $_ = $createIndex(User::class)->match( ); ``` +1. Don't forget to also declare your own types here. + ## Filesystem ### Local From 4866f222e8d013a46d8be92bb2473a0cc8b68fb5 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Thu, 9 May 2024 08:11:24 +0200 Subject: [PATCH 51/68] add elasticsearch warning --- docs/getting-started/orm/production.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/getting-started/orm/production.md b/docs/getting-started/orm/production.md index c859b88..7bbc61d 100644 --- a/docs/getting-started/orm/production.md +++ b/docs/getting-started/orm/production.md @@ -115,6 +115,11 @@ $_ = $createIndex(User::class)->match( 1. Don't forget to also declare your own types here. +??? warning + Unlike other storages Elasticsearch doesn't support transactions. + + Elasticsearch also doesn't allo to list more than 10k aggregates, this means that if you store more than that you won't be able to list them all in a single `Sequence`. You'll need to use explicit search queries to find them all back. + ## Filesystem ### Local From bf4fb927af33276ed38e86554308e7a3a521ddc6 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Thu, 9 May 2024 08:35:15 +0200 Subject: [PATCH 52/68] add orm testing --- docs/getting-started/orm/testing.md | 55 +++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/docs/getting-started/orm/testing.md b/docs/getting-started/orm/testing.md index 43cb9d3..cef62f2 100644 --- a/docs/getting-started/orm/testing.md +++ b/docs/getting-started/orm/testing.md @@ -2,8 +2,63 @@ ## Guarantees +When it comes to testing your program a question arises: should you use the same kind of database than in production or use a faster implementation to speed up the test suite. + +When using ORMs that let the SQL bleed through their APIs this question becomes tricky because you may not end up having the same behaviour between your tests and in production. + +!!! success "" + This ORM doesn't have such problem. It uses [Property Based Testing](../../testing/property-based-testing.md) to make sure all storage implementations behave the same way. + +This means that you can safely use a faster storage for your tests and it will behave the same way as in production. + ## Setup ### Filesystem +You should use an in memory filesystem for your tests as it's the fastest since it never writes to the actual filesystem. And since the data is isolated to the process, you could run your tests in parallel thus speeding up even more your test suite. + +```php +use Formal\ORM\Manager; +use Innmind\Filesystem\Adapter\InMemory; + +$adapter = InMemory::emulateFilesystem(); +$orm = Manager::filesystem($adapter); +``` + +Your aggregates will be kept in memory as long as there is a reference to `$adapter`. This means that if your test looks something like this it won't work: + +```php +$orm = Manager::filesystem(InMemory::emulateFilesystem()); + +// do some work that creates aggregates + +$orm = Manager::filesystem(InMemory::emulateFilesystem()); + +// run expectations on your aggregates +``` + +The second instanciation of `$orm` will free the first one from memory and your aggregates will disappear. + ### Elasticsearch + +In case you want test a concrete instance of Elasticsearch to replicate the exact behaviour as in production, you should change one line when creating the orm: + +```php hl_lines="9" +use Formal\ORM\{ + Manager, + Adapter\Elasticsearch, + Adapter\Elasticsearch\Refresh, +}; + +$orm = Manager::of( + Elasticsearch::of( + Refresh::of( + $os->remote()->http(), + ), + ), +); +``` + +This decorator will make sure that every modification to an index is applied immediately. The default behaviour of Elasticsearch is that it will put the modification in an internal queue and there's at least a 1 second delay before seeing the change in the index. This is fine in production but it's difficult to do some assertions in a test. + +If you need to assert you can fetch an aggregate after persisting it, then this decorator is for you. From 33dd9253959d3648fd5e4bba190271f7a8f5e43a Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Thu, 9 May 2024 09:46:58 +0200 Subject: [PATCH 53/68] add concurrency intro --- docs/getting-started/concurrency/index.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/docs/getting-started/concurrency/index.md b/docs/getting-started/concurrency/index.md index 5cbbf4f..224f6b5 100644 --- a/docs/getting-started/concurrency/index.md +++ b/docs/getting-started/concurrency/index.md @@ -1 +1,13 @@ # Concurrency + +Concurrency is about executing multiple parts of a program in way to waste as little time as possible. There is 2 ways possible to achieve this: + +- asynchronity +- parallelism + +Asynchronous code means there are at all times only one part of a program that's executed. But each part of the program advances ones after the other in the same process. This mode is useful when your program is I/O bound, for example if a part of your program makes an HTTP call then another part can be executed while you wait for the response. However if your program is CPU bound then this mode has no usefulness. + +Parallel code means that multiple processes will be executed at the same time. Each process will be spread across the cores available on your CPU. This mode is useful when your program is CPU bound. But it comes with the disadvantage of coordinating the results of each process (when needed). + +!!! success "" + Innmind offers solutions for both needs. From 07f4119d879d5ab9588f7edebc18e1861f22ee59 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Thu, 9 May 2024 09:47:13 +0200 Subject: [PATCH 54/68] add concurrent http calls --- docs/getting-started/concurrency/http.md | 166 +++++++++++++++++++++++ 1 file changed, 166 insertions(+) diff --git a/docs/getting-started/concurrency/http.md b/docs/getting-started/concurrency/http.md index 75538e4..fa844b4 100644 --- a/docs/getting-started/concurrency/http.md +++ b/docs/getting-started/concurrency/http.md @@ -1,5 +1,171 @@ # HTTP calls +Traditionnaly the HTTP requests in PHP programs are synchronous for the sake of simplicity as PHP is single threaded. But this is wasteful when multiple requests could be sent at the same time. + +Innmind's HTTP client allows to move from synchronous calls to concurrent ones very easily. + ## Example +Imagine you want to fetch 2 pages, this would be the synchronous code: + +```php +use Innmind\HttpTransport\Success; +use Innmind\Http\{ + Request, + Method, + ProtocolVersion, +}; +use Innmind\Url\Url; + +$http = $os->remote()->http(); +$github = $http(Request::of( + Url::of('https://github.com'), + Method::get, + ProtocolVersion::v11, +)); +$github->match( + static fn(Success $success) => doStuff($success->response()), + static fn() => failedToFetch(), +); +$gitlab = $http(Request::of( + Url::of('https://gitlab.com'), + Method::get, + ProtocolVersion::v11, +)); +$gitlab->match( + static fn(Success $success) => doStuff($success->response()), + static fn() => failedToFetch(), +); +``` + +Remember that the [value returned by `$http` calls](../operating-system/http.md) is an [`Either`](../handling-data/either.md). More precisely it uses a deferred `Either`, meaning that the value it represents will be evaluated when you try to extract the value via the `match` method. + +This means that to make the calls concurrent you only need to move all the `match` calls after asking to make requests: + +```php hl_lines="12-15" +$http = $os->remote()->http(); +$github = $http(Request::of( + Url::of('https://github.com'), + Method::get, + ProtocolVersion::v11, +)); +$gitlab = $http(Request::of( + Url::of('https://gitlab.com'), + Method::get, + ProtocolVersion::v11, +)); +$github->match( + static fn(Success $success) => doStuff($success->response()), + static fn() => failedToFetch(), +); +$gitlab->match( + static fn(Success $success) => doStuff($success->response()), + static fn() => failedToFetch(), +); +``` + +This way the HTTP client will execute all the requests planned before the first `match` is called. + ## Tips + +### Unsent requests + +Remember to always keep a reference to a returned `Either` before calling a `match` method otherwise the non referenced request won't be sent. While this may seem tedious this opens a feature that may be very useful in certain cases. + +This way you can plan a bunch of requests and afterward based on some logic unplan some requests by de-referencing the `Either`s before calling a `match` method. + +This allows better flexibility in the way you can decouple your logic. + +### Max concurrency + +By default the client will send all planned requests at once. But this can be problematic if you plan too many requests, the underlying `cURL` implementation may return some errors. + +You can configure the max concurrency at the start of your program and leave your business logic as is. You can do it this way: + +=== "Operating System" + ```php + use Innmind\OperatingSystem\{ + Factory, + Config, + }; + + $os = Factory::build( + Config::of()->limitHttpConcurrencyTo(20), + ); + + // rest of your script + ``` + +=== "Framework" + ```php + use Innmind\Framework\{ + Main\Cli, + Application, + }; + use Innmind\OperatingSystem\Config; + + new class(Config::of()->limitHttpConcurrencyTo(20)) extends Cli { + protected function configure(Application $app): Application + { + // configure your app here + return $app; + } + } + ``` + + Here we use the [`Cli` entrypoint](../framework/cli.md) but it works the same way for the [`Http` ones](../framework/http.md). + +=== "CLI app" + ```php + use Innmind\CLI\{ + Main, + Environment, + }; + use Innmind\OperatingSystem\{ + OperatingSystem, + Config, + }; + + new class(Config::of()->limitHttpConcurrencyTo(20)) extends Main { + protected function main(Environment $env, OperatingSystem $os): Environment + { + // your code here + return $env; + } + }; + ``` + + [Related section](../app/cli.md) + +=== "HTTP app" + ```php + use Innmind\HttpServer\Main; + use Innmind\Http\{ + ServerRequest, + Response, + }; + use Innmind\OperatingSystem\Config; + + new class(Config::of()->limitHttpConcurrencyTo(20)) extends Main { + protected function main(ServerRequest $request): Response + { + // your code here + return Response::of( + Response\StatusCode::ok, + $request->protocolVersion(), + ); + } + }; + ``` + + [Related section](../app/http.md) + +The examples here use a maximum of `20` but you should adapt it to the needs of your program. + +### Limits + +When calling a `match` method it will wait for all planned request to finish before giving you access to your request response. + +This means that you can't react as soon as a response is accessible. Your program can still stay idle for some time. + +If you need better reaction timing you should head to the [asynchronous section](async.md). From abe596166392fcdc67f2e6ecb8c47a94b31d81f8 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Thu, 9 May 2024 11:17:06 +0200 Subject: [PATCH 55/68] add concurrency async --- docs/getting-started/concurrency/async.md | 196 ++++++++++++++++++++++ 1 file changed, 196 insertions(+) diff --git a/docs/getting-started/concurrency/async.md b/docs/getting-started/concurrency/async.md index 36f9377..71660ae 100644 --- a/docs/getting-started/concurrency/async.md +++ b/docs/getting-started/concurrency/async.md @@ -1,9 +1,205 @@ # Asynchronous code +Since Innmind offers to access all I/O operations through the [operating system abstraction](../operating-system/index.md), it can easily execute these operations asynchronously. + ## Installation +```sh +composer require innmind/mantle:~2.1 +``` + ## Usage +Mantle works a bit like a reduce operation. The _reducer_ function allows to launch `Task`s and react to their results. Both the _reducer_ and tasks are run asynchronously. + +=== "Reducer" + ```php + use Innmind\Mantle\Forerunner; + use Innmind\Http\Response; + use Innmind\Immutable\Sequence; + + $run = Forerunner::of($os); + $responses = $run( + Carried::new(), + new Reducer, + ); + $responses; // instance of Sequence + ``` + +=== "Carried value" + Like in a real reduce operation you need a carried value that will be passed to the reducer every time it's called. + + Here we use a `Carried` class but you can use any type you wish. + + ```php + use Innmind\Http\Response; + use Innmind\Immutable\Sequence; + + final readonly class Carried + { + /** @var Sequence */ + private function __construct( + private bool $tasksLaucnhed, + private Sequence $responses, + ) {} + + public static function new(): self + { + return new self(false, Sequence::of()); + } + + public function tasksLaunched(): self + { + return new self(true, $this->responses); + } + + public function needsToLaunchTasks(): bool + { + return !$this->tasksLaunched; + } + + public function got(?Response $response): self + { + return new self( + $this->tasksLaunched, + $this->responses->add($response), + ); + } + + /** @return Sequence */ + public function responses(): Sequence + { + return $this->responses; + } + } + ``` + + !!! warning "" + To avoid unexpected side effects you should always use an immutable value for the carried value. + +=== "Reducer" + ```php + use Innmind\Mantle\{ + Source\Continuation, + Task, + }; + use Innmind\OperatingSystem\OperatingSystem; + use Innmind\Http\Response; + use Innmind\Immutable\Sequence; + + final class Reducer + { + /** + * @param Continuation $continuation + * @param Sequence $results + * + * @return Continuation + */ + public function __invoke( + Carried $carried, + OperatingSystem $os, #(1) + Continuation $continuation, + Sequence $results, #(2) + ): Continuation { + if ($carried->needsToLaunchTasks()) { + return $continuation + ->carryWith($carried->tasksLaunched()) #(3) + ->launch(Sequence::of( + Task::of( #(4) + static fn(OperatingSystem $os) => MyTask::of( + $os, + 'https://github.com/' + ), + ), + Task::of( + static fn(OperatingSystem $os) => MyTask::of( + $os, + 'https://gitlab.com/' + ), + ), + )); + } + + $carried = $results->reduce( + $carried, + static fn( + Carried $carried, + ?Response $response + ) => $carried->got($response), + ); + + if ($carried->responses()->size() === 2) { + return $continuation + ->carryWith($carried) + ->terminate(); #(5) + } + + return $continuation->carryWith($carried); + } + } + ``` + + 1. This `$os` variable is a new instance built by Mantle and runs asynchronously. + 2. This will contain the values returned by the tasks as soon as available. + 3. We flip the flag in order to not launch the tasks each time the reducer is called. + 4. The `$os` variable below is a dedicated new instance for each task. + 5. This tells Mantle to stop calling the reducer and return the carried value. + + This `__invoke` method will be called once when starting the runner and then each time a task finishes. + + The flag to know if the tasks have been launched is stored in the carried value, but since we're in an object it could be placed as a property. This is done so you can better differentiate the carried values from the `$results` in this example. + +=== "MyTask" + ```php + use Innmind\OperatingSystem\OperatingSystem; + use Innmind\Http\{ + Request, + Response, + Method, + ProtocolVersion, + }; + use Innmind\Url\Url; + + final class MyTask { + public static function of( + OperatingSystem $os, + string $url, + ): ?Response { + return $os + ->remote() + ->http()(Request::of( + Url::of($url), + Method::get, + ProtocolVersion::v11, + )) + ->match( + static fn(Success $success) => $success->response(), + static fn() => null, + ); + } + } + ``` + + ## Advantages +The first big advantage of this design is that your task is completely unaware that it is run asynchronously. It all depends on the `$os` variable inject (1). This means that you can easily experiment a piece of your program in an async context by what code calls it, your program logic itself doesn't have to change! +{.annotate} + +1. If it comes from Mantle it's async otherwise it's sync. + +The side effect of this is that you can test your code synchronously even though it's run asynchronously. + +The other advantage is that since all state is local you can compose async code inside sync code transparently. You can't affect a global state since there is none. + ## Limitations + +- CLI signals are currently not supported in this context +- HTTP calls are currently done via `cURL` and uses micro sleeps instead of watching sockets +- SQL queries are still run synchronously for now +- It seems there is a limit of 10k concurrent tasks before performance degradation + +Most of these limitations are planned to be fixed in the future. + +!!! warning "" + You may not want to use this in production just yet, or at least for mission critical code. From b14062e401ced8eb7f5b263debe69427b1c2cce0 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Thu, 9 May 2024 14:53:56 +0200 Subject: [PATCH 56/68] add queues --- docs/getting-started/concurrency/queues.md | 119 ++++++++++++++++++++- 1 file changed, 118 insertions(+), 1 deletion(-) diff --git a/docs/getting-started/concurrency/queues.md b/docs/getting-started/concurrency/queues.md index 1bcadae..8b03ff4 100644 --- a/docs/getting-started/concurrency/queues.md +++ b/docs/getting-started/concurrency/queues.md @@ -1,7 +1,124 @@ # Queues +Innmind uses the [AMQP protocol](https://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol) to build queues. + +You need to first install a server that implements this protocol (1). The most well known server is [RabbitMQ](https://www.rabbitmq.com). +{.annotate} + +1. Only the version `0.9` is supported. (`1.0` is a completely different protocol) + ## Installation +```sh +composer require innmind/amqp:~5.0 +``` + ## Usage -## Tips +```php +use Innmind\AMQP\{ + Factory, + Command\DeclareExchange, + Command\DeclareQueue, + Command\Bind, + Model\Exchange\Type, +}; +use Innmind\Socket\Internet\Transport; +use Innmind\TimeContinuum\Earth\Period\Second; +use Innmind\Url\Url; + +$client = Factory::of($os) + ->build( + Transport::tcp(), + Url::of('amqp://guest:guest@localhost:5672/'), + Second::of(1)->asElapsedPeriod(), // heartbeat + ) + ->with(DeclareExchange::of('crawler', Type::direct)) + ->with(DeclareQueue::of('parser')) + ->with(Bind::of('crawler', 'parser')); +``` + +This builds the basis of an AMQP client. As is it does nothing until it's run (more in a bit). The client is immutable and each call to `with` returns a new instance. In this case the `$client` will create an exchange named `crawler`, create a queue `parser` and will route every message published to `crawler` directly to `parser`. + +??? tip + You can head to the [RabbitMQ tutorials](https://www.rabbitmq.com/tutorials) to understand exchanges, queues and how to route your messages between the two. + +The first step is to publish messages before trying to consume them. + +```php +use Innmind\AMPQ\{ + Model\Basic\Message, + Command\Publish, + Failure, +}; +use Innmind\Immutable\Str; + +$message = Message::of( + Str::of('https://github.com'); +); +$client + ->with(Publish::one($message)->to('crawler')) + ->run(null) #(1) + ->match( + static fn() => null, // success + static fn(Failure $failure) => handleFailure($failure), + ); +``` + +1. For now don't worry about this `null`, just know that it's required. + +The client will execute anything only when the `run` method is run. In this case, because we reuse the client from aboce, it will create the exchange, the queue and bind them together and then publish one message that will end up in the queue. + +If everything works fine then it will return an [`Either`](../handling-data/either.md) with `null` on the right side. If any error occurs it will be a `Failure` on the left side. + +Using a client that always declare the the exchange and queues that it requires allows for a hot declaration of your infrastructure when you try to use the client. And if the exchanges, queues and bindings already exist it will silently continue to execute as the structure is the way you expect on the AMQP server. + +Then to consume the queue: + +```php +use Innmind\AMQP\{ + Command\Consume, + Model\Basic\Message, + Consumer\Continuation, + Failure, +}; + +$client + ->with(Consume::of('parser')->handle( + static function( + int $count, #(1) + Message $message, + Continuation $continuation, + ): Continuation { + doStuff($message); + + if ($count === 42) { + return $continuation->cancel($count); + } + + return $continuation->continue($count + 1); + }, + )) + ->run(0) #(2) + ->match( + static fn(int $count) => var_dump($count), + static fn(Failure $failure) => handleFailure($failure), + ); +``` + +1. This argument is a carried value between each call of this function. +2. This is the initial value passed to the function handling the messages. + +Here we reuse the client from the first example to make sure we indeed have a `parser` queue to work on. Then we _consume_ the queue, meaning we'll wait for incoming messages and call the function when one arrives. This function behaves like a reduce operation where the initial value is `0` and is incremented each time a message is received. On the 43th message we'll handle the message and ask the client to stop consuming the queue. + +At this point the `run` method will return `42` on the right side of the `Either` or a failure on the left side. + +In this case the carried value is an `int` but you can use any type you wish. + +??? tip + If you only need to pull one message from the queue you should use `Innmind\AMQP\Command\Get` instead of `Consume`. + +??? tip + When consuming a queue by default the server will send as many messages as it can through the socket so there's no wait time when dealing the _next_ message. However depending on the throughput of your program it can send too many messages in advance. + + To prevent network saturation you can use `#!php Innmind\AMQP\Command\Qos::of(100)` where `100` is the number of messages to send in advance. Add this command before adding the `Consume` command to the client. From 85e9f254042207af468740659e1d9aaee76c3d87 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Thu, 9 May 2024 15:21:37 +0200 Subject: [PATCH 57/68] add ipc --- docs/getting-started/concurrency/ipc.md | 80 ++++++++++++++++++++++++- 1 file changed, 78 insertions(+), 2 deletions(-) diff --git a/docs/getting-started/concurrency/ipc.md b/docs/getting-started/concurrency/ipc.md index 05bcfc5..e4af88f 100644 --- a/docs/getting-started/concurrency/ipc.md +++ b/docs/getting-started/concurrency/ipc.md @@ -1,9 +1,85 @@ # Inter Process Communication +When your program runs across multiple processes you may want to communicate between them to update some state. + +Innmind IPC use unis sockets to send messages between processes. + ## Installation +```sh +composer require innmind/ipc:~4.4 +``` + ## Usage -### Server +=== "Server" + ```php + use Innmind\IPC\{ + Factory, + Process\Name, + Message, + Continuation, + }; + + $ipc = Factory::of($os); + $serve = $ipc->listen(Name::of('server-name')); + $counter = $serve( + 0, #(1) + static function( + Message $message, + Continuation $continuation, + int $counter, #(2) + ): Continuation { + if ($counter === 42) { + return $continuation->stop($counter); + } + + return $continuation->respond( + $counter + 1, #(3) + Message\Generic::of('text/plain', 'pong'), + ); + }, + )->match( + static fn(int $counter) => $counter, + static fn() => throw new \RuntimeException('Unable to start the server'), + ); + ``` + + 1. This is the initial carried value. + 2. This is the carried value between every call of the function. + 3. This updates the carried value for the next message. + + The server behaves like a reduce operation, with a carried value and a function that's called every time a client sends a message. The carried value can be of any type. + + In this case the server will stop after receiving `42` messages. + + The returned value is an [`Either`](../handling-data/either.md) with the carried value on the right side or an error on the left side if the server failed to start. + +=== "Client" + ```php + use Innmind\IPC\{ + Factory, + Process, + Process\Name, + Message, + }; + + $ipc = Factory::of($os); + $ipc + ->wait(Name::of('server-name')) + ->flatMap(fn(Process $process) => $process->send(Sequence::of( + Message\Generic::of('text/plain', 'ping'), + ))) + ->flatMap(fn(Process $process) => $process->wait()) + ->match( + static fn(Message $message) => print( + 'server responded '.$message->content()->toString(), + ), + static fn() => print('no response from the server'), + ); + ``` + + This will wait for the server to be up then it will send a `ping` message and wait for the server to respond. Then it will print `server responded pong` since the server always repond with this message unless it has stopped in the meantime. -### Client + ??? tip + If you want to immediately stop if the server is not up you can replace `$ipc->wait()` by `$ipc->get()`. From c7e0ab61ace5d3920e01b45efbfe7fbe0c4de7f1 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Thu, 9 May 2024 15:47:12 +0200 Subject: [PATCH 58/68] add distributed --- .../concurrency/distributed.md | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/docs/getting-started/concurrency/distributed.md b/docs/getting-started/concurrency/distributed.md index 39e1d1a..554ee04 100644 --- a/docs/getting-started/concurrency/distributed.md +++ b/docs/getting-started/concurrency/distributed.md @@ -1,5 +1,31 @@ # Distributed +Innmind intends to provide a way to build distributed programs with the same philosophy seen so far. + +This way you'll be able to move to a distributed program with little effort. + ## Actor Model +The [Actor Model](https://en.wikipedia.org/wiki/Actor_model) is a way to build concurrent programs. It's built arount 3 concepts: + +- an Actor is a compute unit that handle state +- an Actor can create actors +- an Actor can send/receive messages + +An actor can only receive one message at a time, meaning there's no concurrency on a single actor. This simplify drastically the complexity of handling state and eliminate data races. + +The concurrency as a whole is handled by the tree of actors that spread the work. + +!!! abstract "" + You can think of this model as a queuing system that dynamically create new queues. + +But because having one process per actor would be too expensive in resources, it's required to be able to run multiple actors asynchronously inside a single process. Hence all the tools you've seen previously. + ## Work in progress + +The implementation of this model is still underway at [`innmind/witness`](https://github.com/Innmind/witness). + +There's been quite a gap in activity on this repository because early work on the implementation revealed that the use of exceptions was untenable for the system stability. + +!!! info "" + This is what motivated the move to the monadic approach across all Innmind packages. From 93b1344f2d6032f07ea6f9932f67ac754c26d08b Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Thu, 9 May 2024 15:48:32 +0200 Subject: [PATCH 59/68] use the same spacing for all annotations --- docs/getting-started/handling-data/maybe.md | 2 +- docs/getting-started/operating-system/clock.md | 2 +- docs/getting-started/operating-system/filesystem.md | 4 ++-- docs/getting-started/operating-system/http.md | 2 +- docs/getting-started/operating-system/php-process.md | 2 +- docs/getting-started/operating-system/sql.md | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/getting-started/handling-data/maybe.md b/docs/getting-started/handling-data/maybe.md index a453a79..412f8ac 100644 --- a/docs/getting-started/handling-data/maybe.md +++ b/docs/getting-started/handling-data/maybe.md @@ -126,7 +126,7 @@ This becomes even more flagrant if the method that returns the brother id itself === "Innmind" ```php hl_lines="2" getUser(42) - ->flatMap(static fn(User $user) => $user->getBrotherId()) # (1) + ->flatMap(static fn(User $user) => $user->getBrotherId()) #(1) ->flatMap(static fn(int $id) => getUser($id)) ->match( static fn(User $brother) => doStuff($brother), diff --git a/docs/getting-started/operating-system/clock.md b/docs/getting-started/operating-system/clock.md index bd1d1f0..bd3753d 100644 --- a/docs/getting-started/operating-system/clock.md +++ b/docs/getting-started/operating-system/clock.md @@ -47,7 +47,7 @@ When you receive a `string` (1) that represent a date and you want to convert it ```php $point = $os ->clock() - ->at($string, new ISO8601) # (1) + ->at($string, new ISO8601) #(1) ->match( static fn(PointInTime $point) => $point, static fn() => throw new \RuntimeException("'$string' is not a valid date"), diff --git a/docs/getting-started/operating-system/filesystem.md b/docs/getting-started/operating-system/filesystem.md index cc67881..8d82be9 100644 --- a/docs/getting-started/operating-system/filesystem.md +++ b/docs/getting-started/operating-system/filesystem.md @@ -34,7 +34,7 @@ use Innmind\Immutable\Predicate\Instance; $os ->filesystem() - ->mount(Path::of('some directory/')) # (1) + ->mount(Path::of('some directory/')) #(1) ->get(Name::of('some-file.txt')) ->keep(Instance::of(File::class)) ->match( @@ -52,7 +52,7 @@ use Innmind\Filesystem\Directory; $os ->filesystem() - ->mount(Path::of('some directory/')) # (1) + ->mount(Path::of('some directory/')) #(1) ->get(Name::of('sub folder')) ->keep(Instance::of(Directory::class)) ->flatMap(static fn(Directory $directory) => $directory->get( diff --git a/docs/getting-started/operating-system/http.md b/docs/getting-started/operating-system/http.md index 39774bd..22f5dfe 100644 --- a/docs/getting-started/operating-system/http.md +++ b/docs/getting-started/operating-system/http.md @@ -72,7 +72,7 @@ $request = Request::of( Headers::of( ContentType::of('application', 'json'), ), - Content::ofString(Json::encode(['some' => 'payload'])), # (1) + Content::ofString(Json::encode(['some' => 'payload'])), #(1) ); ``` diff --git a/docs/getting-started/operating-system/php-process.md b/docs/getting-started/operating-system/php-process.md index eef70a9..d65db92 100644 --- a/docs/getting-started/operating-system/php-process.md +++ b/docs/getting-started/operating-system/php-process.md @@ -55,7 +55,7 @@ $os ->get(Name::of('users.csv')) ->keep(Instance::of(File::class)) ->map(static fn(File $file) => $file->content()->lines()) - ->toSequence() # (1) + ->toSequence() #(1) ->flatMap(static fn(Sequence $lines) => $lines) ->takeWhile(static function() use (&$signaled) { return !$signaled; diff --git a/docs/getting-started/operating-system/sql.md b/docs/getting-started/operating-system/sql.md index 8f0e243..5a78721 100644 --- a/docs/getting-started/operating-system/sql.md +++ b/docs/getting-started/operating-system/sql.md @@ -53,7 +53,7 @@ The `SQL` class allows you to specify the exact query you want to execute. But i Table\Column, }; - $select = Select::from(Name::of('users'))->columns( # (1) + $select = Select::from(Name::of('users'))->columns( #(1) Column\Name::of('id'), Column\Name::of('username'), ); From addc479f3d0a15f92bcc0185083f63000403d505 Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Thu, 9 May 2024 15:55:27 +0200 Subject: [PATCH 60/68] rename sections to chapters --- docs/getting-started/app/cli.md | 2 +- docs/getting-started/concurrency/http.md | 6 +++--- docs/getting-started/framework/cli.md | 2 +- docs/getting-started/framework/extensions.md | 2 +- docs/getting-started/framework/http.md | 2 +- docs/getting-started/framework/index.md | 2 +- docs/getting-started/handling-data/either.md | 2 +- docs/getting-started/handling-data/index.md | 2 +- docs/getting-started/index.md | 2 +- docs/getting-started/operating-system/http.md | 2 +- docs/getting-started/operating-system/index.md | 2 +- docs/getting-started/operating-system/network.md | 2 +- docs/getting-started/orm/development.md | 6 +++--- docs/index.md | 2 +- docs/philosophy/development.md | 2 +- docs/philosophy/index.md | 2 +- docs/use-cases/index.md | 2 +- docs/use-cases/serve-s3-file.md | 2 +- 18 files changed, 22 insertions(+), 22 deletions(-) diff --git a/docs/getting-started/app/cli.md b/docs/getting-started/app/cli.md index 03d2f57..740068c 100644 --- a/docs/getting-started/app/cli.md +++ b/docs/getting-started/app/cli.md @@ -32,7 +32,7 @@ new class extends Main { If you run `php cli.php` in your terminal it will print `Hello world`. -You should already be familiar with the `$os` variable by now, if not go the [dedicated section](../operating-system/index.md). +You should already be familiar with the `$os` variable by now, if not go the [dedicated chapter](../operating-system/index.md). The `$env` variable is the abstraction to deal with everything inputed in your script and everything output that comes out. It behaves like an immutable object, meaning you **must** always use the new instance returned by its methods. diff --git a/docs/getting-started/concurrency/http.md b/docs/getting-started/concurrency/http.md index fa844b4..2e7d23f 100644 --- a/docs/getting-started/concurrency/http.md +++ b/docs/getting-started/concurrency/http.md @@ -135,7 +135,7 @@ You can configure the max concurrency at the start of your program and leave you }; ``` - [Related section](../app/cli.md) + [Related chapter](../app/cli.md) === "HTTP app" ```php @@ -158,7 +158,7 @@ You can configure the max concurrency at the start of your program and leave you }; ``` - [Related section](../app/http.md) + [Related chapter](../app/http.md) The examples here use a maximum of `20` but you should adapt it to the needs of your program. @@ -168,4 +168,4 @@ When calling a `match` method it will wait for all planned request to finish bef This means that you can't react as soon as a response is accessible. Your program can still stay idle for some time. -If you need better reaction timing you should head to the [asynchronous section](async.md). +If you need better reaction timing you should head to the [asynchronous chapter](async.md). diff --git a/docs/getting-started/framework/cli.md b/docs/getting-started/framework/cli.md index 119dd6f..c13c3e0 100644 --- a/docs/getting-started/framework/cli.md +++ b/docs/getting-started/framework/cli.md @@ -76,7 +76,7 @@ You can now do `php bin/console greet John` to print `Hello John`. ``` - `$container` is a service locator - - `$os` you've seen it in previous section + - `$os` you've seen it in the previous chapter - `$env` contains the environment variables You can add as many commands as uou wish by chaining calls to the `command` method. diff --git a/docs/getting-started/framework/extensions.md b/docs/getting-started/framework/extensions.md index 9716f80..103b6de 100644 --- a/docs/getting-started/framework/extensions.md +++ b/docs/getting-started/framework/extensions.md @@ -4,7 +4,7 @@ This framework comes with these middlewares: -- `Innmind\Framework\Middleware\Optional` to load a middleware only if the class exist, as seen in the [profiler section](profiler.md) +- `Innmind\Framework\Middleware\Optional` to load a middleware only if the class exist, as seen in the [profiler chapter](profiler.md) - `Innmind\Framework\Middleware\LoadDotEnv` to load a `.env` file and inject the values in the `Innmind\Framework\Environment` object ## Others diff --git a/docs/getting-started/framework/http.md b/docs/getting-started/framework/http.md index fca433d..0037150 100644 --- a/docs/getting-started/framework/http.md +++ b/docs/getting-started/framework/http.md @@ -106,7 +106,7 @@ new class extends Http { - `$request` is the parsed request sent by a user - `$variables` gathers all the values described by the route template - `$container` is a service locator - - `$os` you've seen it in previous section + - `$os` you've seen it in the previous chapter - `$env` contains the environment variables ## Composition diff --git a/docs/getting-started/framework/index.md b/docs/getting-started/framework/index.md index f947002..057f95c 100644 --- a/docs/getting-started/framework/index.md +++ b/docs/getting-started/framework/index.md @@ -19,4 +19,4 @@ The other advantage of this approach is that if your program is accessible from ## Advanced usage -The framework offers more than the features shown in this documentation, after reading the following sections you should head to the [package](https://github.com/Innmind/framework/) to learn the extent of its capabilities. +The framework offers more than the features shown in this documentation, after reading the following chapters you should head to the [package](https://github.com/Innmind/framework/) to learn the extent of its capabilities. diff --git a/docs/getting-started/handling-data/either.md b/docs/getting-started/handling-data/either.md index 40cdda4..1e7c3df 100644 --- a/docs/getting-started/handling-data/either.md +++ b/docs/getting-started/handling-data/either.md @@ -175,4 +175,4 @@ In all examples you've seen the use of `flatMap` but you can also use the `map` But the beauty is that if you don't want to deal with the different errors you can throw them away by converting the `Either` to a `Maybe` via `$either->maybe()`. -Like `Maybe` and `Sequence` is has a [deferred mode](sequence.md#deferred) that allows to postpone some actions as you'll see in the [concurrent HTTP calls section](../concurrency/http.md). +Like `Maybe` and `Sequence` is has a [deferred mode](sequence.md#deferred) that allows to postpone some actions as you'll see in the [concurrent HTTP calls chapter](../concurrency/http.md). diff --git a/docs/getting-started/handling-data/index.md b/docs/getting-started/handling-data/index.md index 428fc92..447cf37 100644 --- a/docs/getting-started/handling-data/index.md +++ b/docs/getting-started/handling-data/index.md @@ -2,7 +2,7 @@ Handling data is an essential part of any program. Handling them simply and in a safe way can become difficult as a program becomes more complex. -In this section you'll find the 3 most used data structures throughout Innmind. +In this chapter you'll find the 3 most used data structures throughout Innmind. You'll learn how to them for simple cases and how they become indispensable as a program grow. diff --git a/docs/getting-started/index.md b/docs/getting-started/index.md index 180b8e2..079f3db 100644 --- a/docs/getting-started/index.md +++ b/docs/getting-started/index.md @@ -1,6 +1,6 @@ # Getting started -In this section you'll learn all the basic information to create simple scripts to handle data up to distributed programs. +In this chapter you'll learn all the basic information to create simple scripts to handle data up to distributed programs. !!! note For advanced usage of a particular package you should head to the package documentation. diff --git a/docs/getting-started/operating-system/http.md b/docs/getting-started/operating-system/http.md index 22f5dfe..ec1248f 100644 --- a/docs/getting-started/operating-system/http.md +++ b/docs/getting-started/operating-system/http.md @@ -82,7 +82,7 @@ Here we send some json must you can send anything you want. The body of a `Request`, and a `Response`, is expressed via the `Content` class from the filesystem abstraction. This means that it can contain any valid file content. -You'll learn more on this `Content` in the [next section](filesystem.md). +You'll learn more on this `Content` in the [next chapter](filesystem.md). ## Following redirections diff --git a/docs/getting-started/operating-system/index.md b/docs/getting-started/operating-system/index.md index 88ba101..9c9cc99 100644 --- a/docs/getting-started/operating-system/index.md +++ b/docs/getting-started/operating-system/index.md @@ -20,7 +20,7 @@ $os = Factory::build(); $os instanceof OperatingSystem; // returns true ``` -You'll see in the following sections all the ways you can use this object. +You'll see in the following chapters all the ways you can use this object. !!! info "" From this point on everytime you see the variable `$os` it references this object. diff --git a/docs/getting-started/operating-system/network.md b/docs/getting-started/operating-system/network.md index 3a5ba66..4de2eb3 100644 --- a/docs/getting-started/operating-system/network.md +++ b/docs/getting-started/operating-system/network.md @@ -2,7 +2,7 @@ ## Unix socket -If you look to communicate between processes you should head to the [IPC section](../concurrency/ipc.md). +If you look to communicate between processes you should head to the [IPC chapter](../concurrency/ipc.md). ### Server diff --git a/docs/getting-started/orm/development.md b/docs/getting-started/orm/development.md index c82e316..64d4d69 100644 --- a/docs/getting-started/orm/development.md +++ b/docs/getting-started/orm/development.md @@ -2,9 +2,9 @@ ## Setup -For this section we'll work with a `User` class that can have multiple `Address` objects. +For this chapter we'll work with a `User` class that can have multiple `Address` objects. -To keep things simple we'll work with an in memory persistence. You'll learn how to really persist them in the [next section](production.md). +To keep things simple we'll work with an in memory persistence. You'll learn how to really persist them in the [next chapter](production.md). ```php use Formal\ORM\Manager; @@ -56,7 +56,7 @@ $orm = Manager::filesystem(InMemory::emulateFilesystem()); #(1) } ``` - 1. You'll learn more on why this annotation is required in the [production section](production.md) + 1. You'll learn more on why this annotation is required in the [production chapter](production.md) A `User` is called an aggregate in this ORM. This is the root object that have ownership of every data inside it (more on that below). diff --git a/docs/index.md b/docs/index.md index 104dcda..678f9f7 100644 --- a/docs/index.md +++ b/docs/index.md @@ -53,4 +53,4 @@ If you've seen modern Java, C#, Rust, Swift and co you should find Innmind very This example sends an HTTP response of a `.tar.gz` containing all files contained in a `avatars` directory and with a CSV of all users stored in a database. All this is done with the guarantee that you won't run in "out of memory" errors, and other advantages you'll learn throughout this documentation. -By following the links at the bottom of each page you'll progressively learn your way through Innmind. While the [Philosophy](philosophy/index.md) section is an important part you can skip to the [Getting started](getting-started/index.md) section if you want to feel what it's like to code with Innmind. +By following the links at the bottom of each page you'll progressively learn your way through Innmind. While the [Philosophy](philosophy/index.md) chapter is an important part you can skip to the [Getting started](getting-started/index.md) one if you want to feel what it's like to code with Innmind. diff --git a/docs/philosophy/development.md b/docs/philosophy/development.md index 66a664a..3d9d365 100644 --- a/docs/philosophy/development.md +++ b/docs/philosophy/development.md @@ -20,7 +20,7 @@ Changelogs and the type system will help you through all changes. > and make it hard to use it wrong. -This summarizes all the previous sections. +This summarizes all the previous chapters. To reach this all packages go through the same iteration loop: diff --git a/docs/philosophy/index.md b/docs/philosophy/index.md index d0a7b91..628c485 100644 --- a/docs/philosophy/index.md +++ b/docs/philosophy/index.md @@ -10,6 +10,6 @@ This is why all the packages fits together to help solve bigger and bigger probl This also enforces 2 things. Abstractions need to be extremely robust to safely build higher abstractions. And they need to be reusable outside this project (to avoid being wasted in case the goal is not reachable). -All the following sections will describe the principles behind the abstractions robustness. +All the following chapters will describe the principles behind the abstractions robustness. [^1]: You can learn more in this [french article](https://github.com/Innmind/Research-N-Development/blob/master/Papers/Sur%20la%20conscience.md) diff --git a/docs/use-cases/index.md b/docs/use-cases/index.md index ca8aae1..9b1172e 100644 --- a/docs/use-cases/index.md +++ b/docs/use-cases/index.md @@ -1,3 +1,3 @@ # Use cases -In this section you'll find a set of use cases using packages already shown in previous sections and [a few other new ones](../packages.md). +In this chapter you'll find a set of use cases using packages already shown in previous chapters and [a few other new ones](../packages.md). diff --git a/docs/use-cases/serve-s3-file.md b/docs/use-cases/serve-s3-file.md index ffe25ff..1674647 100644 --- a/docs/use-cases/serve-s3-file.md +++ b/docs/use-cases/serve-s3-file.md @@ -65,4 +65,4 @@ new class extends Http { ``` !!! tip - Head to the [framework section](../getting-started/framework/index.md) to learn how to call this server. + Head to the [framework chapter](../getting-started/framework/index.md) to learn how to call this server. From 4cb9f8df8c0849bce4e7123e68b4a693c3a6819f Mon Sep 17 00:00:00 2001 From: Baptiste Langlade Date: Thu, 9 May 2024 16:33:06 +0200 Subject: [PATCH 61/68] add tools --- docs/assets/dependency-graph/dependencies.svg | 792 ++++ docs/assets/dependency-graph/innmind.svg | 3786 +++++++++++++++++ .../innmind_cli_dependencies.svg | 1123 +++++ .../innmind_cli_dependents.svg | 287 ++ docs/assets/dependency-graph/macOS-app.png | Bin 0 -> 1462041 bytes docs/assets/lab-station/overview.mov | Bin 0 -> 4376963 bytes docs/tools.md | 75 +- 7 files changed, 6059 insertions(+), 4 deletions(-) create mode 100644 docs/assets/dependency-graph/dependencies.svg create mode 100644 docs/assets/dependency-graph/innmind.svg create mode 100644 docs/assets/dependency-graph/innmind_cli_dependencies.svg create mode 100644 docs/assets/dependency-graph/innmind_cli_dependents.svg create mode 100644 docs/assets/dependency-graph/macOS-app.png create mode 100644 docs/assets/lab-station/overview.mov diff --git a/docs/assets/dependency-graph/dependencies.svg b/docs/assets/dependency-graph/dependencies.svg new file mode 100644 index 0000000..844c360 --- /dev/null +++ b/docs/assets/dependency-graph/dependencies.svg @@ -0,0 +1,792 @@ + + + + + + +packages + + +cluster_composer + + +composer + + + + +cluster_guzzlehttp + + +guzzlehttp + + + + +cluster_innmind + + +innmind + + + + +cluster_league + + +league + + + + +cluster_paragonie + + +paragonie + + + + +cluster_psr + + +psr + + + + +cluster_ralouphie + + +ralouphie + + + + +cluster_ramsey + + +ramsey + + + + +cluster_symfony + + +symfony + + + + + +composer__semver + + +semver@1.4.2 + + + + + +guzzlehttp__guzzle + + +guzzle@6.3.3 + + + + + +guzzlehttp__promises + + +promises@v1.3.1 + + + + + +guzzlehttp__guzzle->guzzlehttp__promises + + +^1.0 + + + +guzzlehttp__psr7 + + +psr7@1.5.2 + + + + + +guzzlehttp__guzzle->guzzlehttp__psr7 + + +^1.4 + + + +psr__http_message + + +http-message@1.0.1 + + + + + +guzzlehttp__psr7->psr__http_message + + +~1.0 + + + +ralouphie__getallheaders + + +getallheaders@2.0.5 + + + + + +guzzlehttp__psr7->ralouphie__getallheaders + + +^2.0.5 + + + +innmind__cli + + +cli@1.5.1 + + + + + +innmind__immutable + + +immutable@2.13.1 + + + + + +innmind__cli->innmind__immutable + + +^2.7 + + + +innmind__operating_system + + +operating-system@1.3.0 + + + + + +innmind__cli->innmind__operating_system + + +^1.0 + + + +innmind__stream + + +stream@1.4.0 + + + + + +innmind__cli->innmind__stream + + +^1.3 + + + +innmind__time_warp + + +time-warp@1.0.0 + + + + + +innmind__cli->innmind__time_warp + + +^1.0 + + + +innmind__url + + +url@2.0.3 + + + + + +innmind__cli->innmind__url + + +^2.0 + + + +innmind__colour + + +colour@2.1.0 + + + + + +innmind__colour->innmind__immutable + + +~2.10 + + + +innmind__filesystem + + +filesystem@3.3.0 + + + + + +innmind__filesystem->innmind__immutable + + +~2.10 + + + +innmind__filesystem->innmind__stream + + +^1.3 + + + +symfony__filesystem + + +filesystem@v4.2.2 + + + + + +innmind__filesystem->symfony__filesystem + + +^3.0|~4.0 + + + +symfony__finder + + +finder@v4.2.2 + + + + + +innmind__filesystem->symfony__finder + + +~3.0|~4.0 + + + +innmind__graphviz + + +graphviz@1.2.1 + + + + + +innmind__graphviz->innmind__colour + + +^2.0 + + + +innmind__graphviz->innmind__immutable + + +^2.6 + + + +innmind__graphviz->innmind__stream + + +^1.4 + + + +innmind__graphviz->innmind__url + + +^2.0 + + + +innmind__http + + +http@3.8.3 + + + + + +innmind__http->innmind__filesystem + + +~3.0 + + + +innmind__http->innmind__immutable + + +~2.1 + + + +innmind__http->innmind__stream + + +^1.3 + + + +innmind__time_continuum + + +time-continuum@1.3.0 + + + + + +innmind__http->innmind__time_continuum + + +^1.0 + + + +innmind__http->innmind__url + + +~2.0 + + + +innmind__http_transport + + +http-transport@4.0.0 + + + + + +innmind__http_transport->guzzlehttp__guzzle + + +^6.2 + + + +innmind__http_transport->innmind__http + + +~3.0 + + + +psr__log + + +log@1.1.0 + + + + + +innmind__http_transport->psr__log + + +^1.0 + + + +ramsey__uuid + + +uuid@3.8.0 + + + + + +innmind__http_transport->ramsey__uuid + + +^3.5 + + + +innmind__json + + +json@1.1.0 + + + + + +innmind__operating_system->innmind__time_continuum + + +^1.2 + + + +innmind__server_control + + +server-control@2.7.0 + + + + + +innmind__server_control->innmind__immutable + + +^2.10 + + + +innmind__server_control->innmind__stream + + +^1.3 + + + +innmind__server_control->innmind__url + + +^2.0 + + + +innmind__server_control->psr__log + + +^1.0 + + + +symfony__process + + +process@v4.2.2 + + + + + +innmind__server_control->symfony__process + + +^3.2|~4.0 + + + +innmind__stream->innmind__immutable + + +^2.3 + + + +innmind__stream->innmind__time_continuum + + +^1.0 + + + +innmind__time_warp->innmind__time_continuum + + +^1.2 + + + +innmind__url->innmind__immutable + + +~2.0 + + + +league__uri + + +uri@5.3.0 + + + + + +innmind__url->league__uri + + +~5.0 + + + +league__uri_components + + +uri-components@1.8.2 + + + + + +league__uri->league__uri_components + + +^1.8 + + + +league__uri_hostname_parser + + +uri-hostname-parser@1.1.1 + + + + + +league__uri->league__uri_hostname_parser + + +^1.1 + + + +league__uri_interfaces + + +uri-interfaces@1.1.1 + + + + + +league__uri->league__uri_interfaces + + +^1.0 + + + +league__uri_manipulations + + +uri-manipulations@1.5.0 + + + + + +league__uri->league__uri_manipulations + + +^1.5 + + + +league__uri_parser + + +uri-parser@1.4.1 + + + + + +league__uri->league__uri_parser + + +^1.4 + + + +league__uri_schemes + + +uri-schemes@1.2.1 + + + + + +league__uri->league__uri_schemes + + +^1.2 + + + +league__uri->psr__http_message + + +^1.0 + + + +league__uri_components->league__uri_hostname_parser + + +^1.1.0 + + + +psr__simple_cache + + +simple-cache@1.0.1 + + + + + +league__uri_hostname_parser->psr__simple_cache + + +^1 + + + +league__uri_manipulations->league__uri_components + + +^1.8.0 + + + +league__uri_manipulations->league__uri_interfaces + + +^1.0 + + + +league__uri_manipulations->psr__http_message + + +^1.0 + + + +league__uri_schemes->league__uri_interfaces + + +^1.1 + + + +league__uri_schemes->league__uri_parser + + +^1.4.0 + + + +league__uri_schemes->psr__http_message + + +^1.0 + + + +paragonie__random_compat + + +random_compat@v9.99.99 + + + + + +ramsey__uuid->paragonie__random_compat + + +^1.0|^2.0|9.99.99 + + + +symfony__polyfill_ctype + + +polyfill-ctype@v1.10.0 + + + + + +ramsey__uuid->symfony__polyfill_ctype + + +^1.8 + + + +symfony__filesystem->symfony__polyfill_ctype + + +~1.8 + + + diff --git a/docs/assets/dependency-graph/innmind.svg b/docs/assets/dependency-graph/innmind.svg new file mode 100644 index 0000000..b34c03e --- /dev/null +++ b/docs/assets/dependency-graph/innmind.svg @@ -0,0 +1,3786 @@ + + + + + + +packages + + +cluster_innmind + + +innmind + + + + +cluster_ramsey + + +ramsey + + + + +cluster_ovh + + +ovh + + + + +cluster_symfony + + +symfony + + + + +cluster_phpunit + + +phpunit + + + + +cluster_friendsofphp + + +friendsofphp + + + + +cluster_monolog + + +monolog + + + + +cluster_composer + + +composer + + + + +cluster_doctrine + + +doctrine + + + + +cluster_psr + + +psr + + + + +cluster_music_companion + + +music-companion + + + + +cluster_jeremykendall + + +jeremykendall + + + + +cluster_formal + + +formal + + + + +cluster_twig + + +twig + + + + +cluster_league + + +league + + + + + +innmind__immutable + + +immutable@5.3.0 + + + + + +innmind__acl + + +acl@3.1.0 + + + + + +innmind__acl->innmind__immutable + + +~4.0|~5.0 + + + +innmind__time_continuum + + +time-continuum@3.4.1 + + + + + +innmind__time_continuum->innmind__immutable + + +~4.0|~5.0 + + + +psr__log + + +log@3.0.0 + + + + + +innmind__time_continuum->psr__log + + +~3.0 + + + +innmind__math + + +math@6.1.0 + + + + + +innmind__math->innmind__immutable + + +~4.15|~5.0 + + + +innmind__url + + +url@4.3.0 + + + + + +innmind__url->innmind__immutable + + +~4.15|~5.0 + + + +league__uri_parser + + +uri-parser@1.4.1 + + + + + +innmind__url->league__uri_parser + + +~1.2 + + + +league__uri_components + + +uri-components@7.4.1 + + + + + +innmind__url->league__uri_components + + +~2.0 + + + +innmind__operating_system + + +operating-system@5.0.0 + + + + + +innmind__operating_system->innmind__time_continuum + + +~3.0 + + + +innmind__filesystem + + +filesystem@7.5.1 + + + + + +innmind__operating_system->innmind__filesystem + + +~7.1 + + + +innmind__stream + + +stream@4.2.0 + + + + + +innmind__operating_system->innmind__stream + + +~4.0 + + + +innmind__io + + +io@2.7.0 + + + + + +innmind__operating_system->innmind__io + + +~2.7 + + + +innmind__http_transport + + +http-transport@7.2.1 + + + + + +innmind__operating_system->innmind__http_transport + + +~7.2 + + + +innmind__server_control + + +server-control@5.2.1 + + + + + +innmind__operating_system->innmind__server_control + + +~5.0 + + + +innmind__time_warp + + +time-warp@3.0.0 + + + + + +innmind__operating_system->innmind__time_warp + + +~3.0 + + + +innmind__file_watch + + +file-watch@4.0.0 + + + + + +innmind__operating_system->innmind__file_watch + + +~4.0 + + + +innmind__server_status + + +server-status@4.1.0 + + + + + +innmind__operating_system->innmind__server_status + + +~4.0 + + + +innmind__socket + + +socket@6.1.0 + + + + + +innmind__operating_system->innmind__socket + + +~6.0 + + + +innmind__signals + + +signals@3.1.0 + + + + + +innmind__operating_system->innmind__signals + + +~3.0 + + + +formal__access_layer + + +access-layer@2.15.0 + + + + + +innmind__operating_system->formal__access_layer + + +^2.0 + + + +innmind__media_type + + +media-type@2.2.0 + + + + + +innmind__media_type->innmind__immutable + + +~4.15|~5.0 + + + +innmind__filesystem->innmind__immutable + + +~4.15|~5.0 + + + +innmind__filesystem->innmind__time_continuum + + +~3.4 + + + +innmind__filesystem->innmind__url + + +~4.2 + + + +innmind__filesystem->innmind__media_type + + +~2.1 + + + +innmind__filesystem->innmind__stream + + +~4.1 + + + +innmind__filesystem->innmind__io + + +~2.2 + + + +symfony__filesystem + + +filesystem@v7.0.7 + + + + + +innmind__filesystem->symfony__filesystem + + +~6.0|~7.0 + + + +innmind__filesystem->psr__log + + +~3.0 + + + +innmind__stream->innmind__immutable + + +~4.15|~5.0 + + + +innmind__stream->innmind__time_continuum + + +~3.3 + + + +innmind__stream->innmind__url + + +~4.2 + + + +innmind__stream->psr__log + + +~3.0 + + + +innmind__io->innmind__immutable + + +~5.2 + + + +innmind__io->innmind__stream + + +~4.0 + + + +innmind__io->innmind__socket + + +~6.1 + + + +innmind__amqp + + +amqp@5.0.0 + + + + + +innmind__amqp->innmind__immutable + + +~5.2 + + + +innmind__amqp->innmind__time_continuum + + +~3.1 + + + +innmind__amqp->innmind__math + + +~6.0 + + + +innmind__amqp->innmind__url + + +~4.1 + + + +innmind__amqp->innmind__operating_system + + +~5.0 + + + +innmind__amqp->innmind__media_type + + +~2.0 + + + +innmind__amqp->innmind__filesystem + + +~7.0 + + + +innmind__amqp->innmind__stream + + +~4.0 + + + +innmind__amqp->innmind__io + + +~2.6 + + + +ramsey__uuid + + +uuid@4.7.6 + + + + + +innmind__amqp->ramsey__uuid + + +~4.0 + + + +innmind__scaleway_sdk + + +scaleway-sdk@2.2.0 + + + + + +innmind__scaleway_sdk->innmind__immutable + + +~3.3 + + + +innmind__scaleway_sdk->innmind__time_continuum + + +~2.0 + + + +innmind__scaleway_sdk->innmind__url + + +^3.5.1 + + + +innmind__scaleway_sdk->innmind__filesystem + + +~4.0 + + + +innmind__json + + +json@1.4.0 + + + + + +innmind__scaleway_sdk->innmind__json + + +^1.1 + + + +innmind__scaleway_sdk->innmind__http_transport + + +~5.0 + + + +innmind__ip + + +ip@3.2.0 + + + + + +innmind__scaleway_sdk->innmind__ip + + +~2.0 + + + +innmind__scaleway_sdk->ramsey__uuid + + +^3.8|^4.0 + + + +innmind__ssh_key_provider + + +ssh-key-provider@3.2.0 + + + + + +innmind__ssh_key_provider->innmind__immutable + + +~4.9|~5.0 + + + +innmind__ssh_key_provider->innmind__filesystem + + +~7.1 + + + +innmind__ssh_key_provider->innmind__http_transport + + +~7.0 + + + +innmind__ark + + +ark@3.1.0 + + + + + +innmind__ark->innmind__immutable + + +~3.5 + + + +innmind__ark->innmind__url + + +~3.3 + + + +innmind__ark->innmind__operating_system + + +~2.0 + + + +innmind__ark->innmind__scaleway_sdk + + +~2.0 + + + +innmind__ark->innmind__ssh_key_provider + + +~2.0 + + + +innmind__ark->ramsey__uuid + + +^3.8 + + + +ovh__ovh + + +ovh@v3.3.0 + + + + + +innmind__ark->ovh__ovh + + +^2.0 + + + +innmind__mantle + + +mantle@2.1.0 + + + + + +innmind__mantle->innmind__immutable + + +~5.2 + + + +innmind__mantle->innmind__operating_system + + +~4.1|~5.0 + + + +innmind__mantle->innmind__filesystem + + +~7.3 + + + +innmind__http_parser + + +http-parser@2.1.0 + + + + + +innmind__http_parser->innmind__immutable + + +~5.2 + + + +innmind__http_parser->innmind__time_continuum + + +~3.2 + + + +innmind__http_parser->innmind__stream + + +~4.0 + + + +innmind__http_parser->innmind__io + + +~2.7 + + + +innmind__http + + +http@7.0.1 + + + + + +innmind__http_parser->innmind__http + + +~7.0 + + + +innmind__cli + + +cli@3.6.0 + + + + + +innmind__cli->innmind__immutable + + +~4.15|~5.0 + + + +innmind__cli->innmind__url + + +~4.0 + + + +innmind__cli->innmind__operating_system + + +~4.0|~5.0 + + + +innmind__cli->innmind__stream + + +~4.0 + + + +innmind__stack_trace + + +stack-trace@4.1.0 + + + + + +innmind__cli->innmind__stack_trace + + +~4.0 + + + +innmind__async_http_server + + +async-http-server@3.0.0 + + + + + +innmind__async_http_server->innmind__operating_system + + +~5.0 + + + +innmind__async_http_server->innmind__io + + +~2.7 + + + +innmind__async_http_server->innmind__mantle + + +~2.0 + + + +innmind__async_http_server->innmind__http_parser + + +~2.1 + + + +innmind__async_http_server->innmind__cli + + +^3.3 + + + +innmind__json->innmind__immutable + + +~5.3 + + + +innmind__black_box + + +black-box@5.6.3 + + + + + +innmind__black_box->innmind__json + + +^1.1 + + + +symfony__var_dumper + + +var-dumper@v7.0.7 + + + + + +innmind__black_box->symfony__var_dumper + + +~6.0|~7.0 + + + +phpunit__phpunit + + +phpunit@11.1.3 + + + + + +innmind__black_box->phpunit__phpunit + + +~10.0 + + + +phpunit__php_timer + + +php-timer@7.0.0 + + + + + +innmind__black_box->phpunit__php_timer + + +^6.0 + + + +phpunit__php_code_coverage + + +php-code-coverage@11.0.3 + + + + + +innmind__black_box->phpunit__php_code_coverage + + +^10.1 + + + +innmind__black_box_symfony + + +black-box-symfony@1.2.0 + + + + + +innmind__black_box_symfony->innmind__black_box + + +~5.3 + + + +symfony__framework_bundle + + +framework-bundle@v7.0.7 + + + + + +innmind__black_box_symfony->symfony__framework_bundle + + +~6.0|~7.0 + + + +symfony__browser_kit + + +browser-kit@v7.0.7 + + + + + +innmind__black_box_symfony->symfony__browser_kit + + +~6.0|~7.0 + + + +symfony__http_foundation + + +http-foundation@v7.0.7 + + + + + +innmind__black_box_symfony->symfony__http_foundation + + +~6.0|~7.0 + + + +symfony__http_kernel + + +http-kernel@v7.0.7 + + + + + +innmind__black_box_symfony->symfony__http_kernel + + +~6.0|~7.0 + + + +innmind__stack_trace->innmind__immutable + + +~4.1|~5.0 + + + +innmind__stack_trace->innmind__url + + +~4.0 + + + +innmind__graphviz + + +graphviz@3.4.0 + + + + + +innmind__stack_trace->innmind__graphviz + + +~3.1 + + + +innmind__coding_standard + + +coding-standard@2.0.1 + + + + + +friendsofphp__php_cs_fixer + + +php-cs-fixer@v3.56.0 + + + + + +innmind__coding_standard->friendsofphp__php_cs_fixer + + +~3.13 + + + +innmind__colour + + +colour@4.2.0 + + + + + +innmind__colour->innmind__immutable + + +~4.0|~5.0 + + + +innmind__http->innmind__immutable + + +~4.15|~5.0 + + + +innmind__http->innmind__time_continuum + + +~3.0 + + + +innmind__http->innmind__url + + +~4.0 + + + +innmind__http->innmind__media_type + + +^2.0.1 + + + +innmind__http->innmind__filesystem + + +~7.0 + + + +innmind__http->innmind__stream + + +~4.0 + + + +innmind__http->innmind__io + + +~2.2 + + + +innmind__http->ramsey__uuid + + +~4.7 + + + +innmind__url_resolver + + +url-resolver@5.1.0 + + + + + +innmind__url_resolver->innmind__immutable + + +~4.0|~5.0 + + + +innmind__url_resolver->innmind__url + + +~4.0 + + + +innmind__html + + +html@6.3.0 + + + + + +innmind__html->innmind__url + + +~4.0 + + + +innmind__html->innmind__filesystem + + +~7.1 + + + +innmind__xml + + +xml@7.6.0 + + + + + +innmind__html->innmind__xml + + +~7.6 + + + +symfony__dom_crawler + + +dom-crawler@v7.0.7 + + + + + +innmind__html->symfony__dom_crawler + + +~6.3|~7.0 + + + +innmind__http_transport->innmind__immutable + + +~4.15|~5.0 + + + +innmind__http_transport->innmind__time_continuum + + +~3.0 + + + +innmind__http_transport->innmind__url + + +~4.0 + + + +innmind__http_transport->innmind__filesystem + + +~7.1 + + + +innmind__http_transport->innmind__stream + + +~4.0 + + + +innmind__http_transport->innmind__io + + +~2.2 + + + +innmind__http_transport->innmind__http + + +~7.0 + + + +innmind__http_transport->innmind__time_warp + + +~3.0 + + + +innmind__http_transport->ramsey__uuid + + +^4.7 + + + +innmind__http_transport->psr__log + + +~3.0 + + + +innmind__crawler + + +crawler@6.1.0 + + + + + +innmind__crawler->innmind__immutable + + +~3.3 + + + +innmind__crawler->innmind__time_continuum + + +~2.0 + + + +innmind__crawler->innmind__math + + +~5.0 + + + +innmind__crawler->innmind__filesystem + + +~4.0 + + + +innmind__crawler->innmind__colour + + +~3.0 + + + +innmind__crawler->innmind__http + + +~4.0 + + + +innmind__crawler->innmind__url_resolver + + +~4.0 + + + +innmind__crawler->innmind__html + + +~5.0 + + + +innmind__crawler->innmind__http_transport + + +~5.0 + + + +innmind__robots_txt + + +robots-txt@6.2.0 + + + + + +innmind__robots_txt->innmind__immutable + + +~4.13|~5.0 + + + +innmind__robots_txt->innmind__url + + +~4.1 + + + +innmind__robots_txt->innmind__http_transport + + +~7.0 + + + +innmind__logger + + +logger@2.1.0 + + + + + +innmind__logger->innmind__url + + +~3.0 + + + +monolog__monolog + + +monolog@3.6.0 + + + + + +innmind__logger->monolog__monolog + + +~2.0 + + + +innmind__logger->psr__log + + +^1.0 + + + +innmind__rest_client + + +rest-client@8.1.0 + + + + + +innmind__homeostasis + + +homeostasis@4.1.0 + + + + + +innmind__homeostasis->innmind__immutable + + +~3.5 + + + +innmind__homeostasis->innmind__time_continuum + + +~2.2 + + + +innmind__homeostasis->innmind__math + + +~5.0 + + + +innmind__homeostasis->innmind__filesystem + + +~4.0 + + + +innmind__homeostasis->innmind__json + + +^1.2 + + + +innmind__homeostasis->innmind__server_status + + +~2.0 + + + +innmind__log_reader + + +log-reader@5.3.0 + + + + + +innmind__homeostasis->innmind__log_reader + + +~4.0 + + + +innmind__installation_monitor + + +installation-monitor@3.1.0 + + + + + +innmind__installation_monitor->innmind__immutable + + +~3.5 + + + +innmind__installation_monitor->innmind__operating_system + + +~2.0 + + + +innmind__installation_monitor->innmind__cli + + +~2.0 + + + +innmind__installation_monitor->innmind__json + + +^1.0 + + + +innmind__silent_cartographer + + +silent-cartographer@2.2.0 + + + + + +innmind__installation_monitor->innmind__silent_cartographer + + +~2.0 + + + +innmind__ipc + + +ipc@4.4.0 + + + + + +innmind__installation_monitor->innmind__ipc + + +~3.0 + + + +innmind__silent_cartographer->innmind__immutable + + +~3.5 + + + +innmind__silent_cartographer->innmind__url + + +~3.3 + + + +innmind__silent_cartographer->innmind__operating_system + + +~2.0 + + + +innmind__silent_cartographer->innmind__cli + + +~2.0 + + + +innmind__silent_cartographer->innmind__json + + +^1.1 + + + +innmind__silent_cartographer->innmind__ipc + + +~3.0 + + + +innmind__stack + + +stack@1.2.0 + + + + + +innmind__ipc->innmind__immutable + + +~4.15|~5.0 + + + +innmind__ipc->innmind__url + + +~4.0 + + + +innmind__ipc->innmind__operating_system + + +~5.0 + + + +innmind__ipc->innmind__media_type + + +~2.0 + + + +innmind__ipc->innmind__server_control + + +~5.0 + + + +innmind__ipc->innmind__socket + + +~6.0 + + + +innmind__genome + + +genome@3.1.0 + + + + + +innmind__genome->innmind__operating_system + + +^2.1 + + + +innmind__cli_framework + + +cli-framework@1.4.0 + + + + + +innmind__genome->innmind__cli_framework + + +^1.2 + + + +innmind__crawler_app + + +crawler-app@1.5.2 + + + + + +innmind__crawler_app->innmind__operating_system + + +~2.0 + + + +innmind__crawler_app->innmind__amqp + + +~3.0 + + + +innmind__crawler_app->innmind__cli + + +~2.0 + + + +innmind__crawler_app->innmind__json + + +^1.1 + + + +innmind__crawler_app->innmind__crawler + + +~6.0 + + + +innmind__crawler_app->innmind__robots_txt + + +~5.0 + + + +innmind__crawler_app->innmind__logger + + +~2.0 + + + +innmind__crawler_app->innmind__rest_client + + +~8.0 + + + +innmind__crawler_app->innmind__homeostasis + + +~4.0 + + + +innmind__crawler_app->innmind__installation_monitor + + +~3.0 + + + +innmind__crawler_app->innmind__silent_cartographer + + +~2.0 + + + +innmind__crawler_app->innmind__stack + + +^1.0 + + + +innmind__crawler_app->innmind__ipc + + +~3.0 + + + +innmind__crawler_app->innmind__genome + + +^3.0 + + + +innmind__crawler_app->innmind__cli_framework + + +^1.2 + + + +symfony__dotenv + + +dotenv@v7.0.7 + + + + + +innmind__crawler_app->symfony__dotenv + + +~5.0 + + + +innmind__crawler_app->monolog__monolog + + +~2.0 + + + +innmind__server_control->innmind__immutable + + +~4.15|~5.0 + + + +innmind__server_control->innmind__time_continuum + + +^3.1,<3.3|^3.4.1 + + + +innmind__server_control->innmind__url + + +~4.0 + + + +innmind__server_control->innmind__filesystem + + +~7.0 + + + +innmind__server_control->innmind__stream + + +~4.0 + + + +innmind__server_control->innmind__time_warp + + +^3.0 + + + +innmind__server_control->psr__log + + +~3.0 + + + +innmind__cron + + +cron@3.2.0 + + + + + +innmind__cron->innmind__immutable + + +~4.2|~5.0 + + + +innmind__cron->innmind__server_control + + +~4.1|~5.0 + + + +innmind__profiler + + +profiler@4.1.0 + + + + + +innmind__profiler->innmind__immutable + + +~5.2 + + + +innmind__profiler->innmind__operating_system + + +~4.1|~5.0 + + + +innmind__profiler->innmind__json + + +^1.3 + + + +innmind__profiler->innmind__html + + +~6.2 + + + +innmind__framework + + +framework@2.2.0 + + + + + +innmind__profiler->innmind__framework + + +~2.0 + + + +innmind__url_template + + +url-template@3.1.0 + + + + + +innmind__profiler->innmind__url_template + + +^3.0 + + + +innmind__profiler->ramsey__uuid + + +~4.7 + + + +innmind__framework->innmind__immutable + + +~5.2 + + + +innmind__framework->innmind__url + + +^4.1 + + + +innmind__framework->innmind__operating_system + + +~4.1|~5.0 + + + +innmind__framework->innmind__filesystem + + +~7.0 + + + +innmind__framework->innmind__cli + + +^3.1 + + + +innmind__di + + +di@2.1.0 + + + + + +innmind__framework->innmind__di + + +~2.1 + + + +innmind__http_server + + +http-server@4.1.0 + + + + + +innmind__framework->innmind__http_server + + +~4.0 + + + +innmind__router + + +router@4.1.0 + + + + + +innmind__framework->innmind__router + + +~4.1 + + + +innmind__framework->ramsey__uuid + + +^4.7 + + + +innmind__object_graph + + +object-graph@3.2.0 + + + + + +innmind__object_graph->innmind__immutable + + +~4.13|~5.0 + + + +innmind__object_graph->innmind__url + + +~4.1 + + + +innmind__object_graph->innmind__graphviz + + +~3.2 + + + +innmind__reflection + + +reflection@5.2.0 + + + + + +innmind__object_graph->innmind__reflection + + +~5.0 + + + +innmind__debug + + +debug@4.0.0 + + + + + +innmind__debug->innmind__stack_trace + + +~4.0 + + + +innmind__debug->innmind__http + + +~7.0 + + + +innmind__debug->innmind__profiler + + +~4.0 + + + +innmind__debug->innmind__framework + + +~2.0 + + + +innmind__debug->innmind__object_graph + + +~3.1 + + + +innmind__graphviz->innmind__immutable + + +~4.0|~5.0 + + + +innmind__graphviz->innmind__url + + +~4.0 + + + +innmind__graphviz->innmind__filesystem + + +~7.0 + + + +innmind__graphviz->innmind__colour + + +~4.0 + + + +innmind__dependency_graph + + +dependency-graph@3.6.0 + + + + + +innmind__dependency_graph->innmind__immutable + + +~5.2 + + + +innmind__dependency_graph->innmind__url + + +~4.1 + + + +innmind__dependency_graph->innmind__operating_system + + +~4.1|~5.0 + + + +innmind__dependency_graph->innmind__json + + +^1.1 + + + +innmind__dependency_graph->innmind__framework + + +~2.0 + + + +innmind__dependency_graph->innmind__graphviz + + +~3.1 + + + +composer__semver + + +semver@3.4.0 + + + + + +innmind__dependency_graph->composer__semver + + +~3.0 + + + +innmind__specification + + +specification@3.0.1 + + + + + +innmind__doctrine + + +doctrine@2.5.1 + + + + + +innmind__doctrine->innmind__immutable + + +~4.0|~5.0 + + + +innmind__doctrine->innmind__specification + + +~3.0 + + + +innmind__doctrine->ramsey__uuid + + +^4.0 + + + +doctrine__orm + + +orm@3.1.3 + + + + + +innmind__doctrine->doctrine__orm + + +^2.7 + + + +innmind__encoding + + +encoding@1.0.0 + + + + + +innmind__encoding->innmind__immutable + + +~5.1 + + + +innmind__encoding->innmind__time_continuum + + +~3.4 + + + +innmind__encoding->innmind__filesystem + + +~7.1 + + + +innmind__time_warp->innmind__time_continuum + + +~3.0 + + + +innmind__time_warp->psr__log + + +~3.0 + + + +innmind__file_watch->innmind__time_continuum + + +~3.0 + + + +innmind__file_watch->innmind__url + + +~4.0 + + + +innmind__file_watch->innmind__server_control + + +~5.0 + + + +innmind__file_watch->innmind__time_warp + + +~3.0 + + + +innmind__file_watch->psr__log + + +~3.0 + + + +innmind__http_server->innmind__operating_system + + +~4.0|~5.0 + + + +innmind__http_server->innmind__http + + +~7.0 + + + +innmind__router->innmind__immutable + + +~4.9|~5.0 + + + +innmind__router->innmind__url + + +~4.1 + + + +innmind__router->innmind__http + + +~7.0 + + + +innmind__router->innmind__url_template + + +~3.0 + + + +innmind__git + + +git@3.2.0 + + + + + +innmind__git->innmind__immutable + + +~4.0|~5.0 + + + +innmind__git->innmind__time_continuum + + +~3.0 + + + +innmind__git->innmind__url + + +~4.0 + + + +innmind__git->innmind__server_control + + +~4.1|~5.0 + + + +innmind__git_release + + +git-release@3.1.0 + + + + + +innmind__git_release->innmind__immutable + + +~4.2|~5.0 + + + +innmind__git_release->innmind__cli + + +~3.0 + + + +innmind__git_release->innmind__git + + +^3.0.2 + + + +innmind__hash + + +hash@1.5.0 + + + + + +innmind__hash->innmind__immutable + + +~4.5|~5.0 + + + +innmind__hash->innmind__filesystem + + +~7.0 + + + +innmind__server_status->innmind__immutable + + +~4.15|~5.0 + + + +innmind__server_status->innmind__time_continuum + + +~3.0 + + + +innmind__server_status->innmind__url + + +~4.0 + + + +innmind__server_status->innmind__server_control + + +~5.0 + + + +innmind__server_status->psr__log + + +~3.0 + + + +innmind__log_reader->innmind__immutable + + +~4.9|~5.0 + + + +innmind__log_reader->innmind__time_continuum + + +~3.1 + + + +innmind__log_reader->innmind__url + + +~4.1 + + + +innmind__log_reader->innmind__filesystem + + +~7.0 + + + +innmind__log_reader->innmind__json + + +^1.1 + + + +innmind__log_reader->innmind__http + + +~7.0 + + + +innmind__log_reader->psr__log + + +^3.0 + + + +innmind__xml->innmind__immutable + + +^4.7.1|~5.0 + + + +innmind__xml->innmind__filesystem + + +~7.0 + + + +innmind__http_authentication + + +http-authentication@4.0.0 + + + + + +innmind__http_authentication->innmind__http + + +~7.0 + + + +innmind__http_session + + +http-session@4.0.0 + + + + + +innmind__http_session->innmind__immutable + + +~4.9|~5.0 + + + +innmind__http_session->innmind__http + + +~7.0 + + + +innmind__infrastructure_amqp + + +infrastructure-amqp@3.1.0 + + + + + +innmind__infrastructure_amqp->innmind__genome + + +^3.0 + + + +innmind__rabbitmq_management + + +rabbitmq-management@3.2.0 + + + + + +innmind__infrastructure_amqp->innmind__rabbitmq_management + + +~2.0 + + + +innmind__infrastructure_neo4j + + +infrastructure-neo4j@3.1.0 + + + + + +innmind__infrastructure_neo4j->innmind__genome + + +^3.0 + + + +innmind__infrastructure_nginx + + +infrastructure-nginx@3.1.0 + + + + + +innmind__infrastructure_nginx->innmind__genome + + +^3.0 + + + +innmind__url_template->innmind__immutable + + +~4.3|~5.0 + + + +innmind__url_template->innmind__url + + +~4.1 + + + +innmind__infrastructure + + +infrastructure@1.3.0 + + + + + +innmind__infrastructure->innmind__crawler + + +^6.0 + + + +innmind__infrastructure->innmind__genome + + +^3.0 + + + +innmind__infrastructure->innmind__infrastructure_amqp + + +^3.0.2 + + + +innmind__infrastructure->innmind__infrastructure_neo4j + + +^3.0.2 + + + +innmind__infrastructure->innmind__infrastructure_nginx + + +^3.0.2 + + + +innmind__infrastructure->innmind__url_template + + +^2.0 + + + +innmind__rabbitmq_management->innmind__immutable + + +~4.5|~5.0 + + + +innmind__rabbitmq_management->innmind__time_continuum + + +~3.0 + + + +innmind__rabbitmq_management->innmind__url + + +~4.1 + + + +innmind__rabbitmq_management->innmind__server_control + + +~4.2|~5.0 + + + +innmind__socket->innmind__immutable + + +~4.0|~5.0 + + + +innmind__socket->innmind__url + + +~4.0 + + + +innmind__socket->innmind__stream + + +~4.0 + + + +innmind__socket->innmind__ip + + +~3.0 + + + +innmind__ip->innmind__immutable + + +~4.1|~5.0 + + + +innmind__validation + + +validation@1.4.0 + + + + + +innmind__validation->innmind__immutable + + +~5.3 + + + +innmind__validation->innmind__time_continuum + + +~3.4 + + + +innmind__kalmiya + + +kalmiya@2.0.0 + + + + + +innmind__kalmiya->innmind__ipc + + +~4.4 + + + +innmind__kalmiya->innmind__framework + + +~2.2 + + + +innmind__kalmiya->innmind__dependency_graph + + +~3.6 + + + +innmind__kalmiya->innmind__validation + + +^1.4 + + + +music_companion__apple_music + + +apple-music@4.0.0 + + + + + +innmind__kalmiya->music_companion__apple_music + + +~4.0 + + + +innmind__lab_station + + +lab-station@4.1.0 + + + + + +innmind__lab_station->innmind__immutable + + +~5.2 + + + +innmind__lab_station->innmind__url + + +~4.0 + + + +innmind__lab_station->innmind__operating_system + + +~5.0 + + + +innmind__lab_station->innmind__mantle + + +~2.0 + + + +innmind__lab_station->innmind__cli + + +~3.4 + + + +innmind__lab_station->innmind__json + + +^1.1 + + + +innmind__event_bus + + +event-bus@4.1.0 + + + + + +innmind__command_bus + + +command-bus@4.2.0 + + + + + +innmind__rest_server + + +rest-server@8.1.0 + + + + + +innmind__neo4j_onm + + +neo4j-onm@7.1.0 + + + + + +innmind__http_framework + + +http-framework@2.3.0 + + + + + +innmind__library + + +library@1.7.1 + + + + + +innmind__library->innmind__immutable + + +~3.5 + + + +innmind__library->innmind__time_continuum + + +~2.2 + + + +innmind__library->innmind__url + + +~3.3 + + + +innmind__library->innmind__cli + + +~2.0 + + + +innmind__library->innmind__colour + + +~3.1 + + + +innmind__library->innmind__logger + + +~2.0 + + + +innmind__library->innmind__installation_monitor + + +~3.0 + + + +innmind__library->innmind__silent_cartographer + + +~2.0 + + + +innmind__library->innmind__stack + + +^1.0 + + + +innmind__library->innmind__genome + + +^3.0 + + + +innmind__library->innmind__specification + + +~2.0 + + + +innmind__library->innmind__http_server + + +~2.0 + + + +innmind__library->innmind__http_authentication + + +~2.0 + + + +innmind__library->innmind__event_bus + + +~4.0 + + + +innmind__library->innmind__command_bus + + +~4.0 + + + +innmind__library->innmind__rest_server + + +~8.0 + + + +innmind__library->innmind__neo4j_onm + + +~7.0 + + + +innmind__library->innmind__http_framework + + +~2.0 + + + +jeremykendall__php_domain_parser + + +php-domain-parser@6.3.0 + + + + + +innmind__library->jeremykendall__php_domain_parser + + +~5.0 + + + +innmind__reflection->innmind__immutable + + +~4.0|~5.0 + + + +innmind__type + + +type@1.2.0 + + + + + +innmind__reflection->innmind__type + + +~1.0 + + + +innmind__signals->innmind__immutable + + +~4.0|~5.0 + + + +innmind__s3 + + +s3@4.1.0 + + + + + +innmind__s3->innmind__immutable + + +~4.15|~5.0 + + + +innmind__s3->innmind__time_continuum + + +~3.1 + + + +innmind__s3->innmind__url + + +~4.1 + + + +innmind__s3->innmind__operating_system + + +~4.0|~5.0 + + + +innmind__s3->innmind__filesystem + + +~7.5 + + + +innmind__s3->innmind__http + + +~7.0 + + + +innmind__s3->innmind__http_transport + + +~7.0 + + + +innmind__s3->innmind__hash + + +^1.1 + + + +innmind__s3->innmind__xml + + +^7.2 + + + +innmind__templating + + +templating@3.2.0 + + + + + +innmind__templating->innmind__immutable + + +~4.0|~5.0 + + + +innmind__templating->innmind__url + + +~4.0 + + + +innmind__templating->innmind__filesystem + + +~5.0|~6.0 + + + +twig__twig + + +twig@v3.9.3 + + + + + +innmind__templating->twig__twig + + +^3.3.8 + + + +innmind__tower + + +tower@2.2.0 + + + + + +innmind__tower->innmind__immutable + + +~3.5 + + + +innmind__tower->innmind__url + + +~3.3 + + + +innmind__tower->innmind__json + + +^1.1 + + + +innmind__tower->innmind__genome + + +^3.0 + + + +innmind__tower->innmind__cli_framework + + +^1.2 + + + +symfony__config + + +config@v7.0.7 + + + + + +innmind__tower->symfony__config + + +~5.0 + + + +symfony__yaml + + +yaml@v7.0.7 + + + + + +innmind__tower->symfony__yaml + + +~5.0 + + + +innmind__virtual_machine + + +virtual-machine@1.0.0 + + + + + +innmind__virtual_machine->innmind__cli + + +^2.2 + + + +innmind__warden + + +warden@2.2.0 + + + + + +innmind__warden->innmind__immutable + + +~3.5 + + + +innmind__warden->innmind__genome + + +^3.0 + + + +innmind__warden->innmind__cli_framework + + +^1.2 + + + +symfony__framework_bundle->symfony__http_foundation + + +^6.4|^7.0 + + + +symfony__framework_bundle->symfony__http_kernel + + +^6.4|^7.0 + + + +symfony__framework_bundle->symfony__filesystem + + +^6.4|^7.0 + + + +symfony__framework_bundle->symfony__config + + +^6.4|^7.0 + + + +symfony__browser_kit->symfony__dom_crawler + + +^6.4|^7.0 + + + +symfony__http_kernel->symfony__http_foundation + + +^6.4|^7.0 + + + +symfony__http_kernel->psr__log + + +^1|^2|^3 + + + +symfony__config->symfony__filesystem + + +^6.4|^7.0 + + + +phpunit__phpunit->phpunit__php_timer + + +^7.0 + + + +phpunit__phpunit->phpunit__php_code_coverage + + +^11.0 + + + +friendsofphp__php_cs_fixer->symfony__filesystem + + +^5.4 || ^6.0 || ^7.0 + + + +friendsofphp__php_cs_fixer->composer__semver + + +^3.4 + + + +monolog__monolog->psr__log + + +^2.0 || ^3.0 + + + +music_companion__apple_music->innmind__immutable + + +~4.4|~5.0 + + + +music_companion__apple_music->innmind__url + + +~4.1 + + + +music_companion__apple_music->innmind__operating_system + + +~4.0|~5.0 + + + +music_companion__apple_music->innmind__json + + +~1.4 + + + +music_companion__apple_music->innmind__colour + + +~4.0 + + + +music_companion__apple_music->innmind__validation + + +~1.4 + + + +formal__access_layer->innmind__immutable + + +~4.0|~5.0 + + + +formal__access_layer->innmind__url + + +~4.0 + + + +formal__access_layer->innmind__specification + + +^3.0.1 + + + +formal__access_layer->psr__log + + +~3.0 + + + diff --git a/docs/assets/dependency-graph/innmind_cli_dependencies.svg b/docs/assets/dependency-graph/innmind_cli_dependencies.svg new file mode 100644 index 0000000..4493994 --- /dev/null +++ b/docs/assets/dependency-graph/innmind_cli_dependencies.svg @@ -0,0 +1,1123 @@ + + + + + + +packages + + +cluster_innmind + + +innmind + + + + +cluster_psr + + +psr + + + + +cluster_league + + +league + + + + +cluster_symfony + + +symfony + + + + +cluster_brick + + +brick + + + + +cluster_ramsey + + +ramsey + + + + +cluster_formal + + +formal + + + + + +innmind__immutable + + +immutable@5.3.0 + + + + + +innmind__time_continuum + + +time-continuum@3.4.1 + + + + + +innmind__time_continuum->innmind__immutable + + +~4.0|~5.0 + + + +psr__log + + +log@3.0.0 + + + + + +innmind__time_continuum->psr__log + + +~3.0 + + + +innmind__url + + +url@4.3.0 + + + + + +innmind__url->innmind__immutable + + +~4.15|~5.0 + + + +league__uri_parser + + +uri-parser@1.4.1 + + + + + +innmind__url->league__uri_parser + + +~1.2 + + + +league__uri_components + + +uri-components@7.4.1 + + + + + +innmind__url->league__uri_components + + +~2.0 + + + +innmind__stream + + +stream@4.2.0 + + + + + +innmind__stream->innmind__immutable + + +~4.15|~5.0 + + + +innmind__stream->innmind__time_continuum + + +~3.3 + + + +innmind__stream->innmind__url + + +~4.2 + + + +innmind__stream->psr__log + + +~3.0 + + + +innmind__media_type + + +media-type@2.2.0 + + + + + +innmind__media_type->innmind__immutable + + +~4.15|~5.0 + + + +innmind__ip + + +ip@3.2.0 + + + + + +innmind__ip->innmind__immutable + + +~4.1|~5.0 + + + +innmind__socket + + +socket@6.1.0 + + + + + +innmind__socket->innmind__immutable + + +~4.0|~5.0 + + + +innmind__socket->innmind__url + + +~4.0 + + + +innmind__socket->innmind__stream + + +~4.0 + + + +innmind__socket->innmind__ip + + +~3.0 + + + +innmind__io + + +io@2.7.0 + + + + + +innmind__io->innmind__immutable + + +~5.2 + + + +innmind__io->innmind__stream + + +~4.0 + + + +innmind__io->innmind__socket + + +~6.1 + + + +innmind__filesystem + + +filesystem@7.5.1 + + + + + +innmind__filesystem->innmind__immutable + + +~4.15|~5.0 + + + +innmind__filesystem->innmind__time_continuum + + +~3.4 + + + +innmind__filesystem->innmind__url + + +~4.2 + + + +innmind__filesystem->innmind__stream + + +~4.1 + + + +innmind__filesystem->innmind__media_type + + +~2.1 + + + +innmind__filesystem->innmind__io + + +~2.2 + + + +innmind__filesystem->psr__log + + +~3.0 + + + +symfony__filesystem + + +filesystem@v7.0.7 + + + + + +innmind__filesystem->symfony__filesystem + + +~6.0|~7.0 + + + +innmind__time_warp + + +time-warp@3.0.0 + + + + + +innmind__time_warp->innmind__time_continuum + + +~3.0 + + + +innmind__time_warp->psr__log + + +~3.0 + + + +innmind__server_control + + +server-control@5.2.1 + + + + + +innmind__server_control->innmind__immutable + + +~4.15|~5.0 + + + +innmind__server_control->innmind__time_continuum + + +^3.1,<3.3|^3.4.1 + + + +innmind__server_control->innmind__url + + +~4.0 + + + +innmind__server_control->innmind__stream + + +~4.0 + + + +innmind__server_control->innmind__filesystem + + +~7.0 + + + +innmind__server_control->innmind__time_warp + + +^3.0 + + + +innmind__server_control->psr__log + + +~3.0 + + + +innmind__server_status + + +server-status@4.1.0 + + + + + +innmind__server_status->innmind__immutable + + +~4.15|~5.0 + + + +innmind__server_status->innmind__time_continuum + + +~3.0 + + + +innmind__server_status->innmind__url + + +~4.0 + + + +innmind__server_status->innmind__server_control + + +~5.0 + + + +innmind__server_status->psr__log + + +~3.0 + + + +innmind__http + + +http@7.0.1 + + + + + +innmind__http->innmind__immutable + + +~4.15|~5.0 + + + +innmind__http->innmind__time_continuum + + +~3.0 + + + +innmind__http->innmind__url + + +~4.0 + + + +innmind__http->innmind__stream + + +~4.0 + + + +innmind__http->innmind__media_type + + +^2.0.1 + + + +innmind__http->innmind__io + + +~2.2 + + + +innmind__http->innmind__filesystem + + +~7.0 + + + +ramsey__uuid + + +uuid@4.7.6 + + + + + +innmind__http->ramsey__uuid + + +~4.7 + + + +innmind__http_transport + + +http-transport@7.2.1 + + + + + +innmind__http_transport->innmind__immutable + + +~4.15|~5.0 + + + +innmind__http_transport->innmind__time_continuum + + +~3.0 + + + +innmind__http_transport->innmind__url + + +~4.0 + + + +innmind__http_transport->innmind__stream + + +~4.0 + + + +innmind__http_transport->innmind__io + + +~2.2 + + + +innmind__http_transport->innmind__filesystem + + +~7.1 + + + +innmind__http_transport->innmind__time_warp + + +~3.0 + + + +innmind__http_transport->innmind__http + + +~7.0 + + + +innmind__http_transport->psr__log + + +~3.0 + + + +innmind__http_transport->ramsey__uuid + + +^4.7 + + + +innmind__signals + + +signals@3.1.0 + + + + + +innmind__signals->innmind__immutable + + +~4.0|~5.0 + + + +innmind__file_watch + + +file-watch@4.0.0 + + + + + +innmind__file_watch->innmind__time_continuum + + +~3.0 + + + +innmind__file_watch->innmind__url + + +~4.0 + + + +innmind__file_watch->innmind__time_warp + + +~3.0 + + + +innmind__file_watch->innmind__server_control + + +~5.0 + + + +innmind__file_watch->psr__log + + +~3.0 + + + +innmind__specification + + +specification@3.0.1 + + + + + +innmind__operating_system + + +operating-system@5.0.0 + + + + + +innmind__operating_system->innmind__time_continuum + + +~3.0 + + + +innmind__operating_system->innmind__stream + + +~4.0 + + + +innmind__operating_system->innmind__socket + + +~6.0 + + + +innmind__operating_system->innmind__io + + +~2.7 + + + +innmind__operating_system->innmind__filesystem + + +~7.1 + + + +innmind__operating_system->innmind__time_warp + + +~3.0 + + + +innmind__operating_system->innmind__server_control + + +~5.0 + + + +innmind__operating_system->innmind__server_status + + +~4.0 + + + +innmind__operating_system->innmind__http_transport + + +~7.2 + + + +innmind__operating_system->innmind__signals + + +~3.0 + + + +innmind__operating_system->innmind__file_watch + + +~4.0 + + + +formal__access_layer + + +access-layer@2.15.0 + + + + + +innmind__operating_system->formal__access_layer + + +^2.0 + + + +innmind__colour + + +colour@4.2.0 + + + + + +innmind__colour->innmind__immutable + + +~4.0|~5.0 + + + +innmind__graphviz + + +graphviz@3.4.0 + + + + + +innmind__graphviz->innmind__immutable + + +~4.0|~5.0 + + + +innmind__graphviz->innmind__url + + +~4.0 + + + +innmind__graphviz->innmind__filesystem + + +~7.0 + + + +innmind__graphviz->innmind__colour + + +~4.0 + + + +innmind__stack_trace + + +stack-trace@4.1.0 + + + + + +innmind__stack_trace->innmind__immutable + + +~4.1|~5.0 + + + +innmind__stack_trace->innmind__url + + +~4.0 + + + +innmind__stack_trace->innmind__graphviz + + +~3.1 + + + +innmind__cli + + +cli@3.6.0 + + + + + +innmind__cli->innmind__immutable + + +~4.15|~5.0 + + + +innmind__cli->innmind__url + + +~4.0 + + + +innmind__cli->innmind__stream + + +~4.0 + + + +innmind__cli->innmind__operating_system + + +~4.0|~5.0 + + + +innmind__cli->innmind__stack_trace + + +~4.0 + + + +psr__http_message + + +http-message@2.0 + + + + + +psr__http_factory + + +http-factory@1.0.2 + + + + + +psr__http_factory->psr__http_message + + +^1.0 || ^2.0 + + + +league__uri_interfaces + + +uri-interfaces@7.4.1 + + + + + +league__uri_interfaces->psr__http_message + + +^1.1 || ^2.0 + + + +league__uri_interfaces->psr__http_factory + + +^1 + + + +league__uri + + +uri@7.4.1 + + + + + +league__uri->league__uri_interfaces + + +^7.3 + + + +league__uri_components->league__uri + + +^7.3 + + + +symfony__polyfill_ctype + + +polyfill-ctype@v1.29.0 + + + + + +symfony__polyfill_mbstring + + +polyfill-mbstring@v1.29.0 + + + + + +symfony__process + + +process@v7.0.7 + + + + + +symfony__filesystem->symfony__polyfill_ctype + + +~1.8 + + + +symfony__filesystem->symfony__polyfill_mbstring + + +~1.8 + + + +symfony__filesystem->symfony__process + + +^6.4|^7.0 + + + +brick__math + + +math@0.12.1 + + + + + +ramsey__collection + + +collection@2.0.0 + + + + + +ramsey__uuid->brick__math + + +^0.8.8 || ^0.9 || ^0.10 || ^0.11 || ^0.12 + + + +ramsey__uuid->ramsey__collection + + +^1.2 || ^2.0 + + + +formal__access_layer->innmind__immutable + + +~4.0|~5.0 + + + +formal__access_layer->innmind__url + + +~4.0 + + + +formal__access_layer->innmind__specification + + +^3.0.1 + + + +formal__access_layer->psr__log + + +~3.0 + + + diff --git a/docs/assets/dependency-graph/innmind_cli_dependents.svg b/docs/assets/dependency-graph/innmind_cli_dependents.svg new file mode 100644 index 0000000..0943717 --- /dev/null +++ b/docs/assets/dependency-graph/innmind_cli_dependents.svg @@ -0,0 +1,287 @@ + + + + + + +packages + + +cluster_innmind + + +innmind + + + + + +innmind__async_http_server + + +async-http-server@3.0.0 + + + + + +innmind__cli + + +cli@3.6.0 + + + + + +innmind__async_http_server->innmind__cli + + +^3.3 + + + +innmind__crawler_app + + +crawler-app@1.5.2 + + + + + +innmind__installation_monitor + + +installation-monitor@3.1.0 + + + + + +innmind__crawler_app->innmind__installation_monitor + + +~3.0 + + + +innmind__silent_cartographer + + +silent-cartographer@2.2.0 + + + + + +innmind__crawler_app->innmind__silent_cartographer + + +~2.0 + + + +innmind__crawler_app->innmind__cli + + +~2.0 + + + +innmind__debug + + +debug@4.0.0 + + + + + +innmind__framework + + +framework@2.2.0 + + + + + +innmind__debug->innmind__framework + + +~2.0 + + + +innmind__profiler + + +profiler@4.1.0 + + + + + +innmind__debug->innmind__profiler + + +~4.0 + + + +innmind__dependency_graph + + +dependency-graph@3.6.0 + + + + + +innmind__dependency_graph->innmind__framework + + +~2.0 + + + +innmind__framework->innmind__cli + + +^3.1 + + + +innmind__git_release + + +git-release@3.1.0 + + + + + +innmind__git_release->innmind__cli + + +~3.0 + + + +innmind__installation_monitor->innmind__silent_cartographer + + +~2.0 + + + +innmind__installation_monitor->innmind__cli + + +~2.0 + + + +innmind__kalmiya + + +kalmiya@2.0.0 + + + + + +innmind__kalmiya->innmind__dependency_graph + + +~3.6 + + + +innmind__kalmiya->innmind__framework + + +~2.2 + + + +innmind__lab_station + + +lab-station@4.1.0 + + + + + +innmind__lab_station->innmind__cli + + +~3.4 + + + +innmind__library + + +library@1.7.1 + + + + + +innmind__library->innmind__installation_monitor + + +~3.0 + + + +innmind__library->innmind__silent_cartographer + + +~2.0 + + + +innmind__library->innmind__cli + + +~2.0 + + + +innmind__profiler->innmind__framework + + +~2.0 + + + +innmind__silent_cartographer->innmind__cli + + +~2.0 + + + +innmind__virtual_machine + + +virtual-machine@1.0.0 + + + + + +innmind__virtual_machine->innmind__cli + + +^2.2 + + + diff --git a/docs/assets/dependency-graph/macOS-app.png b/docs/assets/dependency-graph/macOS-app.png new file mode 100644 index 0000000000000000000000000000000000000000..9f7e7adef93b22f91e7c087a8decc38ce1c8294b GIT binary patch literal 1462041 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 z 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 waIIibKVOMm} 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�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

LBrB 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 z

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 a$>*LdfIHs8}QL>>zfk27C?HqgLNz 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ΜdwRerT2c5*|l)gVx)X)09 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

ok}^Y&7AS_o{JDyf7w!FC-pAA? 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%0D`h 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 literal 0 HcmV?d00001 diff --git a/docs/assets/profiler/index.png b/docs/assets/profiler/index.png new file mode 100644 index 0000000000000000000000000000000000000000..213154ec8e15f887d761a6156ce784efae1e595f GIT binary patch literal 82839 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 literal 0 HcmV?d00001 diff --git a/docs/assets/profiler/processes.png b/docs/assets/profiler/processes.png new file mode 100644 index 0000000000000000000000000000000000000000..e42776cb5063c21d5678e3d7fb47a8a6615c779b GIT binary patch literal 99023 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