From 645e41e787b9cb0697bdb32e2997e9149cc49705 Mon Sep 17 00:00:00 2001
From: Cody Fincher <204685+cofin@users.noreply.github.com>
Date: Sat, 23 Sep 2023 17:06:11 -0500
Subject: [PATCH] feat: add `mssql` support to the repository (#2321)
---
.pre-commit-config.yaml | 4 +-
.../sqlalchemy/models_and_repository.rst | 1 +
poetry.lock | 131 +++++++++---------
pyproject.toml | 2 +-
4 files changed, 70 insertions(+), 68 deletions(-)
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 5fd3b13f53..0f3f24fd57 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -115,7 +115,7 @@ repos:
sqlalchemy>=2.0.12,
starlette,
structlog,
- advanced-alchemy==0.1.1,
+ advanced-alchemy==0.2.0,
time-machine,
types-beautifulsoup4,
types-python-jose,
@@ -176,7 +176,7 @@ repos:
rich,
rich-click,
sqlalchemy>=2.0.12,
- advanced-alchemy==0.1.1,
+ advanced-alchemy==0.2.0,
starlette,
structlog,
time-machine,
diff --git a/docs/usage/databases/sqlalchemy/models_and_repository.rst b/docs/usage/databases/sqlalchemy/models_and_repository.rst
index 0a3e237115..e2fc6dda6f 100644
--- a/docs/usage/databases/sqlalchemy/models_and_repository.rst
+++ b/docs/usage/databases/sqlalchemy/models_and_repository.rst
@@ -23,6 +23,7 @@ Features
- Oracle via `oracledb `_
- Google Spanner via `spanner-sqlalchemy `_
- DuckDB via `duckdb_engine `_
+ - Microsoft SQL Server via `pyodbc `_
Basic Use
---------
diff --git a/poetry.lock b/poetry.lock
index 2406d8ce6c..8423f78e3d 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -16,13 +16,13 @@ pygments = ">=1.5"
[[package]]
name = "advanced-alchemy"
-version = "0.1.1"
+version = "0.2.0"
description = "Ready-to-go SQLAlchemy concoctions."
optional = true
python-versions = ">=3.8"
files = [
- {file = "advanced_alchemy-0.1.1-py3-none-any.whl", hash = "sha256:fbb524c4de0d393013e1b222a0648194903a126c330ea2435ab6c323a43cf586"},
- {file = "advanced_alchemy-0.1.1.tar.gz", hash = "sha256:b06e34e7dd79fe8fdc91fcbb11f2a5a8e144734a93b9988a9df6c0ff14bc5dad"},
+ {file = "advanced_alchemy-0.2.0-py3-none-any.whl", hash = "sha256:f5aca306c45d161f43a3d6487ede5e21682f61485ef44df0a62e52ec06cb2ec3"},
+ {file = "advanced_alchemy-0.2.0.tar.gz", hash = "sha256:df9729c90af70493801a594afc5c956914501b0512e14c502e99561ae9db30f8"},
]
[package.dependencies]
@@ -2519,13 +2519,13 @@ testing = ["pytest", "pytest-benchmark"]
[[package]]
name = "polyfactory"
-version = "2.8.2"
+version = "2.9.0"
description = "Mock data generation factories"
optional = false
python-versions = ">=3.8,<4.0"
files = [
- {file = "polyfactory-2.8.2-py3-none-any.whl", hash = "sha256:82f0a7662eedb713260508a82587a4e37dc290a22e8715862d806a6a40c74388"},
- {file = "polyfactory-2.8.2.tar.gz", hash = "sha256:1f2571b143172f22f9ad1f85dec8b79e83a0620ea5844f1a1f67d275df6cc465"},
+ {file = "polyfactory-2.9.0-py3-none-any.whl", hash = "sha256:7513347be6327739174dbd4ca6ddd96981fb697437283acb5362a604cf6d7f58"},
+ {file = "polyfactory-2.9.0.tar.gz", hash = "sha256:af61fc5b03d0c5bb343a2289bdce457f27bbf8aefba69c592dca0841f905e7a5"},
]
[package.dependencies]
@@ -2535,10 +2535,11 @@ typing-extensions = "*"
[package.extras]
attrs = ["attrs (>=22.2.0)"]
beanie = ["beanie", "pydantic[email]"]
-full = ["attrs (>=22.2.0)", "beanie", "msgspec", "odmantic", "pydantic[email]"]
+full = ["attrs (>=22.2.0)", "beanie", "msgspec", "odmantic", "pydantic[email]", "sqlalchemy (>=2)"]
msgspec = ["msgspec"]
odmantic = ["odmantic", "pydantic[email]"]
pydantic = ["pydantic[email]"]
+sqlalchemy = ["sqlalchemy (>=2)"]
[[package]]
name = "pre-commit"
@@ -3746,67 +3747,67 @@ docstring-parser = ">=0.12"
[[package]]
name = "time-machine"
-version = "2.12.0"
+version = "2.13.0"
description = "Travel through time in your tests."
optional = false
python-versions = ">=3.8"
files = [
- {file = "time_machine-2.12.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:786efcc336edc196e5a854a73ff714be198bc57da6856064083677a188c8e018"},
- {file = "time_machine-2.12.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:35ec4170e5045ac0d5dfb1255320e301d5b6fc359f9cf36010007bf572888e73"},
- {file = "time_machine-2.12.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:47dc877f3a475d0e818b31a6ad6fc1fbe40f334dcd73d2cb076057aff4d73beb"},
- {file = "time_machine-2.12.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fcb41d70da706e14a805fcbf42bdb17435d4a91420bd5b6a88f8f61beb95b862"},
- {file = "time_machine-2.12.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8676471983482522f3e124ad2c8fe38d6d6ed957379504910d2ea0c646d96cb4"},
- {file = "time_machine-2.12.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:1e3b07d7aa993a2f24e3a2ef5a216869f0a1fcaaba6227ad73b265c4f15feca5"},
- {file = "time_machine-2.12.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:328266ea13f0c517cdf758c16a2d83f0118516b8ac7910bba4eba6d4d3b3b2f1"},
- {file = "time_machine-2.12.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:496a47e2eef78893eb6915d0a5215c59346ebe29d5c88a56301ed74deebe45cc"},
- {file = "time_machine-2.12.0-cp310-cp310-win32.whl", hash = "sha256:d7442e9cffccd76115521f8d64c270e923e566e9487ba9da9824149653cf0641"},
- {file = "time_machine-2.12.0-cp310-cp310-win_amd64.whl", hash = "sha256:796968ca8e770ee1121fe209a18cee9bd462bc0cacf57e2b1d528df08c6f18d6"},
- {file = "time_machine-2.12.0-cp310-cp310-win_arm64.whl", hash = "sha256:a525dd4fd6f7a2ecf2b54fce3c8b9982650dc570992ca6e38987c3922684099a"},
- {file = "time_machine-2.12.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:ead6c3a1858c551b4edbba781d48892a487fda6ef6416c87f8ed559bfb29c904"},
- {file = "time_machine-2.12.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:93c84850c9e529433613af2b2097634d27b30e9853271b6ea1384ee00be5424a"},
- {file = "time_machine-2.12.0-cp311-cp311-macosx_13_0_arm64.whl", hash = "sha256:8ec623cff18e328781ab7a6251f1ee77e225f14e1f5a26633028a14b7d90ed82"},
- {file = "time_machine-2.12.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b3fe070414ef05359c55bbbf94b7a895d532af726705e6f33e6f2eeb26326042"},
- {file = "time_machine-2.12.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:43a4a5d722f7a6b6ee8f1d3cdeffe6d7c3421452219dce0d22778e6810fb645c"},
- {file = "time_machine-2.12.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc80ba01ff5663c74ce74c9ee2267dbf900ee8e8d18d55937b5e83eb1e179998"},
- {file = "time_machine-2.12.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d4f546b262e0d955376bf0af9a4de13a910f5f27c5e44e4db46ceea61b4c4a7d"},
- {file = "time_machine-2.12.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:05f7320851edb3e887d79a5c797966c8c1b64458fb8b8ee74982c6593606a387"},
- {file = "time_machine-2.12.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:669437542e9027db55e06ff05e848a9cb0e88d1fc6e659b412e9721be227b9be"},
- {file = "time_machine-2.12.0-cp311-cp311-win32.whl", hash = "sha256:82062eef6096c42ce14c7c07a7898caa3d696ac189fdb1586f59562893f6abf4"},
- {file = "time_machine-2.12.0-cp311-cp311-win_amd64.whl", hash = "sha256:8176eba6b182f88fa8afd9a964c9391b73f3456f6c2f59bb2514957ec6269724"},
- {file = "time_machine-2.12.0-cp311-cp311-win_arm64.whl", hash = "sha256:d09aaa1d323c4a4b5b4569f44a02bb24ba5030b55adc9710a895843796363c0c"},
- {file = "time_machine-2.12.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:2b84449a2b170ed51c26a725a2ca983bc98490c5f23d28e9473402adc7e694ba"},
- {file = "time_machine-2.12.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b9dec9619ff5e89798e9cfb5e2a53e1eed18afa1b20460d7158fa2db94dd2d3b"},
- {file = "time_machine-2.12.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a1b7b1b758de72de73fcf063be8ae9e2e98dd4bab0e6cd8b32c8e7d0462d78b0"},
- {file = "time_machine-2.12.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a9f13f8c8dc72541654830d16efcc6249969bac1cbe591bee4a0ac19490592e2"},
- {file = "time_machine-2.12.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c764bd6690b83a72b4294934774044c8cea4356cb9b103b7dbb8232242b3047"},
- {file = "time_machine-2.12.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:fafb423453e711ea95a669373bdaf628e9e8a0c606c1366499835f3e446554dc"},
- {file = "time_machine-2.12.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:26d2be6009151de7aa210e8569c49eece6563b8beb7e290ebd4a10b2b8d2fc5c"},
- {file = "time_machine-2.12.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:81b88ac04e61c772854fa85b8e04428e3068fe690487a50b69bb07dda2168c36"},
- {file = "time_machine-2.12.0-cp312-cp312-win32.whl", hash = "sha256:58ec76d58dcc3ab6a3d7951ae08ae99c7b413a40c7e8255c106b5df4f768f8dd"},
- {file = "time_machine-2.12.0-cp312-cp312-win_amd64.whl", hash = "sha256:156fdd17fde2a3ea9c41a8108b8ac877e4f90a7ac5e6db533ab6ecb86f723891"},
- {file = "time_machine-2.12.0-cp312-cp312-win_arm64.whl", hash = "sha256:5240e1cb013826449a5065062b47a46ce3d431fc47cbddc938e3c05e3fe4a951"},
- {file = "time_machine-2.12.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:bb60d061978487db5cba8a20fb84b3ae29af5ca004a0e991cd5eaa31b0851b59"},
- {file = "time_machine-2.12.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:e8d5ae0f0a25b3aa7207688edf23de514f918a91ea05edbeffdbdd56d8497c13"},
- {file = "time_machine-2.12.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3992b9285c75c6f74fabfdb0ca7f17f12e22d0fc631ff43d0e110ccd53382569"},
- {file = "time_machine-2.12.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:33ee51c6f9f02d7b1d792d379b42321a3d13b819ecd8d136fb287be4adc7b9da"},
- {file = "time_machine-2.12.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:715956ef123645ef22d1c7a13963bb9bc50c02b8578797704715a410bfa49575"},
- {file = "time_machine-2.12.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:e45505414fba93a15957a43ff52bbf737c3ef7905464eb16ef45e1395e95206d"},
- {file = "time_machine-2.12.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:4bd89a8bf7756b50de180258517004f30857deea82c1841f291a2c8e25cfaa83"},
- {file = "time_machine-2.12.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:9c389ef8508f787ff1ec963b473838616773db8e00bc043cab9374f36d9e8201"},
- {file = "time_machine-2.12.0-cp38-cp38-win32.whl", hash = "sha256:5e62e45a71674b5df9f9275ffbb342c78ba026c9b556478d0b4bc4470e9f2b4b"},
- {file = "time_machine-2.12.0-cp38-cp38-win_amd64.whl", hash = "sha256:9ac560499086184142b0a0b28eca0ea1d245e9df1c008ef3356b0e3ea6cb1536"},
- {file = "time_machine-2.12.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:b535a2524e1adbac3c8028c49cdceb764f800ca95c2f7421aad11c5d4c274ed7"},
- {file = "time_machine-2.12.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d365d6e0faaf6bcddacfb71d8c033011b7a65f1a94142350a1bc9da3c85bfb8e"},
- {file = "time_machine-2.12.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0f9c48f19a6af887ac769740e914f8eb8e406a3d33a651e107f28bba1adc3796"},
- {file = "time_machine-2.12.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2a0a3fb0c316c23b0d79810cf7a158c7d4671acc02a5dfa5cda7aa673478a0dc"},
- {file = "time_machine-2.12.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:353b6b43e43aee22df79194584c587225ec1a06a2f444099ada2096d806d602e"},
- {file = "time_machine-2.12.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0613aef850db722f2ceee1923d67fc050ae8d6a09fa2cd1ca1dae0748864e6d7"},
- {file = "time_machine-2.12.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:a5304de3e41c33cd6e4be7b85f09409b1059b9ff6a8289482352c42fb50b4e42"},
- {file = "time_machine-2.12.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4cf10267610244d4398312c4eea5cfc2f68f9a0286260d2157d45d1a54dcc6b2"},
- {file = "time_machine-2.12.0-cp39-cp39-win32.whl", hash = "sha256:9b255feaa4f3c46c7ebd1319a630ee1e3aa87078c9b428f9428980597c3ce830"},
- {file = "time_machine-2.12.0-cp39-cp39-win_amd64.whl", hash = "sha256:81095391ccef01c56b6061248216da4e2d749b543952fce199b628b8a8ce5ca2"},
- {file = "time_machine-2.12.0-cp39-cp39-win_arm64.whl", hash = "sha256:dfe8b2478b4c3556a913b187ce598ad2afd07e6acfcf652be8e5a56dee2bf200"},
- {file = "time_machine-2.12.0.tar.gz", hash = "sha256:e0c98003096624cc70caa5743fe6a1fd0e97ffeaf9b44560e4158b0e1a38168e"},
+ {file = "time_machine-2.13.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:685d98593f13649ad5e7ce3e58efe689feca1badcf618ba397d3ab877ee59326"},
+ {file = "time_machine-2.13.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ccbce292380ebf63fb9a52e6b03d91677f6a003e0c11f77473efe3913a75f289"},
+ {file = "time_machine-2.13.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:679cbf9b15bfde1654cf48124128d3fbe52f821fa158a98fcee5fe7e05db1917"},
+ {file = "time_machine-2.13.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a26bdf3462d5f12a4c1009fdbe54366c6ef22c7b6f6808705b51dedaaeba8296"},
+ {file = "time_machine-2.13.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dabb3b155819811b4602f7e9be936e2024e20dc99a90f103e36b45768badf9c3"},
+ {file = "time_machine-2.13.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0db97f92be3efe0ac62fd3f933c91a78438cef13f283b6dfc2ee11123bfd7d8a"},
+ {file = "time_machine-2.13.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:12eed2e9171c85b703d75c985dab2ecad4fe7025b7d2f842596fce1576238ece"},
+ {file = "time_machine-2.13.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:bdfe4a7f033e6783c3e9a7f8d8fc0b115367330762e00a03ff35fedf663994f3"},
+ {file = "time_machine-2.13.0-cp310-cp310-win32.whl", hash = "sha256:3a7a0a49ce50d9c306c4343a7d6a3baa11092d4399a4af4355c615ccc321a9d3"},
+ {file = "time_machine-2.13.0-cp310-cp310-win_amd64.whl", hash = "sha256:1812e48c6c58707db9988445a219a908a710ea065b2cc808d9a50636291f27d4"},
+ {file = "time_machine-2.13.0-cp310-cp310-win_arm64.whl", hash = "sha256:5aee23cd046abf9caeddc982113e81ba9097a01f3972e9560f5ed64e3495f66d"},
+ {file = "time_machine-2.13.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e9a9d150e098be3daee5c9f10859ab1bd14a61abebaed86e6d71f7f18c05b9d7"},
+ {file = "time_machine-2.13.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2bd4169b808745d219a69094b3cb86006938d45e7293249694e6b7366225a186"},
+ {file = "time_machine-2.13.0-cp311-cp311-macosx_13_0_arm64.whl", hash = "sha256:8d526cdcaca06a496877cfe61cc6608df2c3a6fce210e076761964ebac7f77cc"},
+ {file = "time_machine-2.13.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cfef4ebfb4f055ce3ebc7b6c1c4d0dbfcffdca0e783ad8c6986c992915a57ed3"},
+ {file = "time_machine-2.13.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9f128db8997c3339f04f7f3946dd9bb2a83d15e0a40d35529774da1e9e501511"},
+ {file = "time_machine-2.13.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:21bef5854d49b62e2c33848b5c3e8acf22a3b46af803ef6ff19529949cb7cf9f"},
+ {file = "time_machine-2.13.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:32b71e50b07f86916ac04bd1eefc2bd2c93706b81393748b08394509ee6585dc"},
+ {file = "time_machine-2.13.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:1ac8ff145c63cd0dcfd9590fe694b5269aacbc130298dc7209b095d101f8cdde"},
+ {file = "time_machine-2.13.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:19a3b10161c91ca8e0fd79348665cca711fd2eac6ce336ff9e6b447783817f93"},
+ {file = "time_machine-2.13.0-cp311-cp311-win32.whl", hash = "sha256:5f87787d562e42bf1006a87eb689814105b98c4d5545874a281280d0f8b9a2d9"},
+ {file = "time_machine-2.13.0-cp311-cp311-win_amd64.whl", hash = "sha256:62fd14a80b8b71726e07018628daaee0a2e00937625083f96f69ed6b8e3304c0"},
+ {file = "time_machine-2.13.0-cp311-cp311-win_arm64.whl", hash = "sha256:e9935aff447f5400a2665ab10ed2da972591713080e1befe1bb8954e7c0c7806"},
+ {file = "time_machine-2.13.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:34dcdbbd25c1e124e17fe58050452960fd16a11f9d3476aaa87260e28ecca0fd"},
+ {file = "time_machine-2.13.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:e58d82fe0e59d6e096ada3281d647a2e7420f7da5453b433b43880e1c2e8e0c5"},
+ {file = "time_machine-2.13.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:71acbc1febbe87532c7355eca3308c073d6e502ee4ce272b5028967847c8e063"},
+ {file = "time_machine-2.13.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dec0ec2135a4e2a59623e40c31d6e8a8ae73305ade2634380e4263d815855750"},
+ {file = "time_machine-2.13.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4e3a2611f8788608ebbcb060a5e36b45911bc3b8adc421b1dc29d2c81786ce4d"},
+ {file = "time_machine-2.13.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:42ef5349135626ad6cd889a0a81400137e5c6928502b0817ea9e90bb10702000"},
+ {file = "time_machine-2.13.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:6c16d90a597a8c2d3ce22d6be2eb3e3f14786974c11b01886e51b3cf0d5edaf7"},
+ {file = "time_machine-2.13.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4f2ae8d0e359b216b695f1e7e7256f208c390db0480601a439c5dd1e1e4e16ce"},
+ {file = "time_machine-2.13.0-cp312-cp312-win32.whl", hash = "sha256:f5fa9610f7e73fff42806a2ed8b06d862aa59ce4d178a52181771d6939c3e237"},
+ {file = "time_machine-2.13.0-cp312-cp312-win_amd64.whl", hash = "sha256:02b33a8c19768c94f7ffd6aa6f9f64818e88afce23250016b28583929d20fb12"},
+ {file = "time_machine-2.13.0-cp312-cp312-win_arm64.whl", hash = "sha256:0cc116056a8a2a917a4eec85661dfadd411e0d8faae604ef6a0e19fe5cd57ef1"},
+ {file = "time_machine-2.13.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:de01f33aa53da37530ad97dcd17e9affa25a8df4ab822506bb08101bab0c2673"},
+ {file = "time_machine-2.13.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:67fa45cd813821e4f5bec0ac0820869e8e37430b15509d3f5fad74ba34b53852"},
+ {file = "time_machine-2.13.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d4a2d3db2c3b8e519d5ef436cd405abd33542a7b7761fb05ef5a5f782a8ce0b1"},
+ {file = "time_machine-2.13.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7558622a62243be866a7e7c41da48eacd82c874b015ecf67d18ebf65ca3f7436"},
+ {file = "time_machine-2.13.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab04cf4e56e1ee65bee2adaa26a04695e92eb1ed1ccc65fbdafd0d114399595a"},
+ {file = "time_machine-2.13.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:b0c8f24ae611a58782773af34dd356f1f26756272c04be2be7ea73b47e5da37d"},
+ {file = "time_machine-2.13.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:4ca20f85a973a4ca8b00cf466cd72c27ccc72372549b138fd48d7e70e5a190ab"},
+ {file = "time_machine-2.13.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:9fad549521c4c13bdb1e889b2855a86ec835780d534ffd8f091c2647863243be"},
+ {file = "time_machine-2.13.0-cp38-cp38-win32.whl", hash = "sha256:20205422fcf2caf9a7488394587df86e5b54fdb315c1152094fbb63eec4e9304"},
+ {file = "time_machine-2.13.0-cp38-cp38-win_amd64.whl", hash = "sha256:2dc76ee55a7d915a55960a726ceaca7b9097f67e4b4e681ef89871bcf98f00be"},
+ {file = "time_machine-2.13.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7693704c0f2f6b9beed912ff609781edf5fcf5d63aff30c92be4093e09d94b8e"},
+ {file = "time_machine-2.13.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:918f8389de29b4f41317d121f1150176fae2cdb5fa41f68b2aee0b9dc88df5c3"},
+ {file = "time_machine-2.13.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5fe3fda5fa73fec74278912e438fce1612a79c36fd0cc323ea3dc2d5ce629f31"},
+ {file = "time_machine-2.13.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5c6245db573863b335d9ca64b3230f623caf0988594ae554c0c794e7f80e3e66"},
+ {file = "time_machine-2.13.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e433827eccd6700a34a2ab28fd9361ff6e4d4923f718d2d1dac6d1dcd9d54da6"},
+ {file = "time_machine-2.13.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:924377d398b1c48e519ad86a71903f9f36117f69e68242c99fb762a2465f5ad2"},
+ {file = "time_machine-2.13.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:66fb3877014dca0b9286b0f06fa74062357bd23f2d9d102d10e31e0f8fa9b324"},
+ {file = "time_machine-2.13.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0c9829b2edfcf6b5d72a6ff330d4380f36a937088314c675531b43d3423dd8af"},
+ {file = "time_machine-2.13.0-cp39-cp39-win32.whl", hash = "sha256:1a22be4df364f49a507af4ac9ea38108a0105f39da3f9c60dce62d6c6ea4ccdc"},
+ {file = "time_machine-2.13.0-cp39-cp39-win_amd64.whl", hash = "sha256:88601de1da06c7cab3d5ed3d5c3801ef683366e769e829e96383fdab6ae2fe42"},
+ {file = "time_machine-2.13.0-cp39-cp39-win_arm64.whl", hash = "sha256:3c87856105dcb25b5bbff031d99f06ef4d1c8380d096222e1bc63b496b5258e6"},
+ {file = "time_machine-2.13.0.tar.gz", hash = "sha256:c23b2408e3adcedec84ea1131e238f0124a5bc0e491f60d1137ad7239b37c01a"},
]
[package.dependencies]
@@ -4329,4 +4330,4 @@ structlog = ["structlog"]
[metadata]
lock-version = "2.0"
python-versions = ">=3.8,<4.0"
-content-hash = "87df1ebe0ac2aab40d922a23d3429bfa5e2ee77c9764d45c76f092d41df578f9"
+content-hash = "c4cb12f67db9676dce9acf0fabe14f4afa5d8ebf6abf873faf422efbe4fc4016"
diff --git a/pyproject.toml b/pyproject.toml
index 7e5ee69692..5b27b304be 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -96,7 +96,7 @@ rich = { version = ">=13.0.0", optional = true }
rich-click = { version = "*", optional = true }
sqlalchemy = { version = ">=2.0.12", optional = true }
structlog = { version = "*", optional = true }
-advanced-alchemy = { version = "0.1.1", optional = true }
+advanced-alchemy = { version = "0.2.0", optional = true }
typing-extensions = "*"
uvicorn = { extras = ["standard"], version = ">=0.22.0", optional = true }