From 714a9d0879861df58bb39fa59528e5705541b704 Mon Sep 17 00:00:00 2001 From: L-Nafaryus Date: Fri, 6 Sep 2024 11:13:25 +0500 Subject: [PATCH] new: documentation fix: config env parsing --- .gitignore | 3 + docs/api.md | 52 ++++ docs/img/favicon.png | Bin 0 -> 132267 bytes docs/img/logo-full.png | Bin 0 -> 82858 bytes docs/index.md | 12 + docs/reference/app.md | 1 + docs/reference/core.md | 1 + docs/reference/index.md | 5 + docs/reference/models.md | 1 + docs/reference/routers.md | 1 + docs/reference/security.md | 1 + docs/reference/tasks.md | 1 + flake.nix | 43 +++ mkdocs.yml | 89 ++++++ pdm.lock | 332 ++++++++++++++++++++++- pyproject.toml | 5 +- src/materia/app/app.py | 14 +- src/materia/app/cli.py | 6 +- src/materia/core/config.py | 2 +- src/materia/core/database.py | 4 +- src/materia/routers/__init__.py | 2 +- src/materia/routers/api/__init__.py | 10 +- src/materia/routers/api/auth/__init__.py | 0 src/materia/routers/api/docs.py | 40 +++ src/materia/routers/docs.py | 33 +++ src/materia/routers/root.py | 5 +- 26 files changed, 638 insertions(+), 25 deletions(-) create mode 100644 docs/api.md create mode 100644 docs/img/favicon.png create mode 100644 docs/img/logo-full.png create mode 100644 docs/index.md create mode 100644 docs/reference/app.md create mode 100644 docs/reference/core.md create mode 100644 docs/reference/index.md create mode 100644 docs/reference/models.md create mode 100644 docs/reference/routers.md create mode 100644 docs/reference/security.md create mode 100644 docs/reference/tasks.md create mode 100644 mkdocs.yml create mode 100644 src/materia/routers/api/auth/__init__.py create mode 100644 src/materia/routers/api/docs.py create mode 100644 src/materia/routers/docs.py diff --git a/.gitignore b/.gitignore index 4fb9e1a..1662ae7 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,6 @@ __pycache__/ .pytest_cache .coverage + +/site +src/materia/docs diff --git a/docs/api.md b/docs/api.md new file mode 100644 index 0000000..908cfcc --- /dev/null +++ b/docs/api.md @@ -0,0 +1,52 @@ +--- +hide: + - navigation + - toc +--- + + + + + diff --git a/docs/img/favicon.png b/docs/img/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..d403418b550f4ec0d1a1a4098ff796a0027f78f6 GIT binary patch literal 132267 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 literal 0 HcmV?d00001 diff --git a/docs/img/logo-full.png b/docs/img/logo-full.png new file mode 100644 index 0000000000000000000000000000000000000000..fac4975f393b7fba3ab8183de3893a5af6dfc0d0 GIT binary patch literal 82858 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 +.md-content .md-typeset h1 { display: none; } + + +

+ Materia +

+

+ Materia is easy and fast cloud storage +

diff --git a/docs/reference/app.md b/docs/reference/app.md new file mode 100644 index 0000000..b3d34d6 --- /dev/null +++ b/docs/reference/app.md @@ -0,0 +1 @@ +::: materia.app diff --git a/docs/reference/core.md b/docs/reference/core.md new file mode 100644 index 0000000..60a2cbb --- /dev/null +++ b/docs/reference/core.md @@ -0,0 +1 @@ +::: materia.core diff --git a/docs/reference/index.md b/docs/reference/index.md new file mode 100644 index 0000000..175fcef --- /dev/null +++ b/docs/reference/index.md @@ -0,0 +1,5 @@ +# Reference + +Here's the reference or code API, the classes, functions, parameters, attributes, and +all the Materia parts. + diff --git a/docs/reference/models.md b/docs/reference/models.md new file mode 100644 index 0000000..ff7eef3 --- /dev/null +++ b/docs/reference/models.md @@ -0,0 +1 @@ +::: materia.models diff --git a/docs/reference/routers.md b/docs/reference/routers.md new file mode 100644 index 0000000..f59bbf8 --- /dev/null +++ b/docs/reference/routers.md @@ -0,0 +1 @@ +::: materia.routers diff --git a/docs/reference/security.md b/docs/reference/security.md new file mode 100644 index 0000000..a5dad5d --- /dev/null +++ b/docs/reference/security.md @@ -0,0 +1 @@ +::: materia.security diff --git a/docs/reference/tasks.md b/docs/reference/tasks.md new file mode 100644 index 0000000..db79d29 --- /dev/null +++ b/docs/reference/tasks.md @@ -0,0 +1 @@ +::: materia.tasks diff --git a/flake.nix b/flake.nix index 2fc5caa..7feca98 100644 --- a/flake.nix +++ b/flake.nix @@ -164,6 +164,49 @@ postgresql-devel = bonfire.packages.x86_64-linux.postgresql; redis-devel = bonfire.packages.x86_64-linux.redis; + + materia-devel = let + user = "materia"; + dataDir = "/var/lib/materia"; + entryPoint = pkgs.writeTextDir "entrypoint.sh" '' + materia start + ''; + in + pkgs.dockerTools.buildImage { + name = "materia"; + tag = "latest"; + + copyToRoot = pkgs.buildEnv { + name = "image-root"; + pathsToLink = ["/bin" "/etc" "/"]; + paths = with pkgs; [ + bash + self.packages.x86_64-linux.materia + entryPoint + ]; + }; + runAsRoot = with pkgs; '' + #!${runtimeShell} + ${dockerTools.shadowSetup} + groupadd -r ${user} + useradd -r -g ${user} --home-dir=${dataDir} ${user} + mkdir -p ${dataDir} + chown -R ${user}:${user} ${dataDir} + ''; + + config = { + Entrypoint = ["bash" "/entrypoint.sh"]; + StopSignal = "SIGINT"; + User = "${user}:${user}"; + WorkingDir = dataDir; + ExposedPorts = { + "54601/tcp" = {}; + }; + Env = [ + "MATERIA_APPLICATION__WORKING_DIRECTORY=${dataDir}" + ]; + }; + }; }; devShells.x86_64-linux.default = pkgs.mkShell { diff --git a/mkdocs.yml b/mkdocs.yml new file mode 100644 index 0000000..30db284 --- /dev/null +++ b/mkdocs.yml @@ -0,0 +1,89 @@ +site_name: Materia Documentation +site_description: Materia cloud storage +#site_url: +repo_name: L-Nafaryus/materia +repo_url: https://vcs.elnafo.ru/L-Nafaryus/materia +copyright: Copyright © 2024 L-Nafaryus + +theme: + name: material + features: + - content.code.annotate + - content.code.copy + # - content.code.select + - content.footnote.tooltips + - content.tabs.link + - content.tooltips + - navigation.footer + - navigation.indexes + - navigation.instant + - navigation.instant.prefetch + # - navigation.instant.preview + - navigation.instant.progress + - navigation.path + - navigation.tabs + - navigation.tabs.sticky + - navigation.top + - navigation.tracking + - search.highlight + - search.share + - search.suggest + - toc.follow + logo: img/favicon.png + favicon: img/favicon.png + palette: + - media: "(prefers-color-scheme: light)" + scheme: slate + primary: deep purple + accent: deep purple + toggle: + icon: material/weather-sunny + name: Switch to light mode + - media: "(prefers-color-scheme: dark)" + scheme: default + primary: deep purple + accent: deep purple + toggle: + icon: material/weather-night + name: Switch to dark mode + + +plugins: +- search: +- mkdocstrings: + handlers: + python: + paths: [src] # search packages in the src folder + options: + extensions: + - griffe_typingdoc + #preload_modules: + #- sqlalchemy + #docstring_style: sphinx + show_submodules: true + show_source: true + show_if_no_docstring: true + show_symbol_type_heading: true + show_symbol_type_toc: true + show_root_heading: true + unwrap_annotated: true + merge_init_into_class: true + docstring_section_style: spacy + signature_crossrefs: true + inherited_members: true + members_order: source + separate_signature: true + filters: + - '!^_' + +nav: + - Materia: index.md + - Reference: + - reference/index.md + - reference/app.md + - reference/core.md + - reference/models.md + - reference/routers.md + - reference/security.md + - reference/tasks.md + - API: api.md diff --git a/pdm.lock b/pdm.lock index d69daa0..f17c69d 100644 --- a/pdm.lock +++ b/pdm.lock @@ -5,7 +5,7 @@ groups = ["default", "dev"] strategy = ["cross_platform", "inherit_metadata"] lock_version = "4.4.1" -content_hash = "sha256:ba7a816a8bfe503b899a8eba3e5ca58e2d751a278c19b1c1db6e647f83fcd62d" +content_hash = "sha256:764de758c9c4b274659cef493a76abb117253e6ccf30dce9f4e61a74afce2228" [[package]] name = "aiofiles" @@ -157,6 +157,17 @@ files = [ {file = "authlib-1.3.1.tar.gz", hash = "sha256:7ae843f03c06c5c0debd63c9db91f9fda64fa62a42a77419fa15fbb7e7a58917"}, ] +[[package]] +name = "babel" +version = "2.16.0" +requires_python = ">=3.8" +summary = "Internationalization utilities" +groups = ["dev"] +files = [ + {file = "babel-2.16.0-py3-none-any.whl", hash = "sha256:368b5b98b37c06b7daf6696391c3240c938b37767d4584413e8438c5c435fa8b"}, + {file = "babel-2.16.0.tar.gz", hash = "sha256:d1f3554ca26605fe173f3de0c65f750f5a42f924499bf134de6423582298e316"}, +] + [[package]] name = "bcrypt" version = "4.1.2" @@ -264,7 +275,7 @@ name = "certifi" version = "2024.7.4" requires_python = ">=3.6" summary = "Python package for providing Mozilla's CA Bundle." -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "certifi-2024.7.4-py3-none-any.whl", hash = "sha256:c198e21b1289c2ab85ee4e67bb4b4ef3ead0892059901a8d5b622f24a1101e90"}, {file = "certifi-2024.7.4.tar.gz", hash = "sha256:5a1e7645bc0ec61a09e26c36f6106dd4cf40c6db3a1fb6352b0244e7fb057c7b"}, @@ -310,7 +321,7 @@ name = "charset-normalizer" version = "3.3.2" requires_python = ">=3.7.0" summary = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "charset-normalizer-3.3.2.tar.gz", hash = "sha256:f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5"}, {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0b2b64d2bb6d3fb9112bafa732def486049e63de9618b5843bcdd081d8144cd8"}, @@ -393,7 +404,6 @@ version = "0.4.6" requires_python = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" summary = "Cross-platform colored terminal text." groups = ["default", "dev"] -marker = "sys_platform == \"win32\" or platform_system == \"Windows\"" files = [ {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, @@ -584,6 +594,19 @@ files = [ {file = "fastapi-0.112.0.tar.gz", hash = "sha256:d262bc56b7d101d1f4e8fc0ad2ac75bb9935fec504d2b7117686cec50710cf05"}, ] +[[package]] +name = "ghp-import" +version = "2.1.0" +summary = "Copy your docs directly to the gh-pages branch." +groups = ["dev"] +dependencies = [ + "python-dateutil>=2.8.1", +] +files = [ + {file = "ghp-import-2.1.0.tar.gz", hash = "sha256:9c535c4c61193c2df8871222567d7fd7e5014d835f97dc7b7439069e2413d343"}, + {file = "ghp_import-2.1.0-py3-none-any.whl", hash = "sha256:8337dd7b50877f163d4c0289bc1f1c7f127550241988d568c1db512c4324a619"}, +] + [[package]] name = "greenlet" version = "3.0.3" @@ -603,6 +626,35 @@ files = [ {file = "greenlet-3.0.3.tar.gz", hash = "sha256:43374442353259554ce33599da8b692d5aa96f8976d567d4badf263371fbe491"}, ] +[[package]] +name = "griffe" +version = "1.2.0" +requires_python = ">=3.8" +summary = "Signatures for entire Python programs. Extract the structure, the frame, the skeleton of your project, to generate API documentation or find breaking changes in your API." +groups = ["dev"] +dependencies = [ + "colorama>=0.4", +] +files = [ + {file = "griffe-1.2.0-py3-none-any.whl", hash = "sha256:a8b2fcb1ecdc5a412e646b0b4375eb20a5d2eac3a11dd8c10c56967a4097663c"}, + {file = "griffe-1.2.0.tar.gz", hash = "sha256:1c9f6ef7455930f3f9b0c4145a961c90385d1e2cbc496f7796fbff560ec60d31"}, +] + +[[package]] +name = "griffe-typingdoc" +version = "0.2.6" +requires_python = ">=3.8" +summary = "Griffe extension for PEP 727 – Documentation Metadata in Typing." +groups = ["dev"] +dependencies = [ + "griffe>=0.49", + "typing-extensions>=4.7", +] +files = [ + {file = "griffe_typingdoc-0.2.6-py3-none-any.whl", hash = "sha256:2726e6cf1e986f42fe9cab4a95cef103a745327f035a32055816849ca47893e4"}, + {file = "griffe_typingdoc-0.2.6.tar.gz", hash = "sha256:852a17c1e2d29bbbf14a287e7cc5982669343cf60a4ea1618e486eb57aba3248"}, +] + [[package]] name = "gunicorn" version = "22.0.0" @@ -726,7 +778,7 @@ name = "idna" version = "3.7" requires_python = ">=3.5" summary = "Internationalized Domain Names in Applications (IDNA)" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "idna-3.7-py3-none-any.whl", hash = "sha256:82fee1fc78add43492d3a1898bfa6d8a904cc97d8427f683ed8e798d07761aa0"}, {file = "idna-3.7.tar.gz", hash = "sha256:028ff3aadf0609c1fd278d8ea3089299412a7a8b9bd005dd08b9f8285bcb5cfc"}, @@ -748,7 +800,7 @@ name = "jinja2" version = "3.1.4" requires_python = ">=3.7" summary = "A very fast and expressive template engine." -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "MarkupSafe>=2.0", ] @@ -856,12 +908,23 @@ files = [ {file = "Mako-1.3.5.tar.gz", hash = "sha256:48dbc20568c1d276a2698b36d968fa76161bf127194907ea6fc594fa81f943bc"}, ] +[[package]] +name = "markdown" +version = "3.7" +requires_python = ">=3.8" +summary = "Python implementation of John Gruber's Markdown." +groups = ["dev"] +files = [ + {file = "Markdown-3.7-py3-none-any.whl", hash = "sha256:7eb6df5690b81a1d7942992c97fad2938e956e79df20cbc6186e9c3a77b1c803"}, + {file = "markdown-3.7.tar.gz", hash = "sha256:2ae2471477cfd02dbbf038d5d9bc226d40def84b4fe2986e49b59b6b472bbed2"}, +] + [[package]] name = "markupsafe" version = "2.1.5" requires_python = ">=3.7" summary = "Safely add untrusted strings to HTML/XML markup." -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:8dec4936e9c3100156f8a2dc89c4b88d5c435175ff03413b443469c7c8c5f4d1"}, {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:3c6b973f22eb18a789b1460b4b91bf04ae3f0c4234a0a6aa6b0a92f6f7b951d4"}, @@ -888,6 +951,147 @@ dependencies = [ "loguru<1.0.0,>=0.7.2", ] +[[package]] +name = "mergedeep" +version = "1.3.4" +requires_python = ">=3.6" +summary = "A deep merge function for 🐍." +groups = ["dev"] +files = [ + {file = "mergedeep-1.3.4-py3-none-any.whl", hash = "sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307"}, + {file = "mergedeep-1.3.4.tar.gz", hash = "sha256:0096d52e9dad9939c3d975a774666af186eda617e6ca84df4c94dec30004f2a8"}, +] + +[[package]] +name = "mkdocs" +version = "1.6.1" +requires_python = ">=3.8" +summary = "Project documentation with Markdown." +groups = ["dev"] +dependencies = [ + "click>=7.0", + "colorama>=0.4; platform_system == \"Windows\"", + "ghp-import>=1.0", + "jinja2>=2.11.1", + "markdown>=3.3.6", + "markupsafe>=2.0.1", + "mergedeep>=1.3.4", + "mkdocs-get-deps>=0.2.0", + "packaging>=20.5", + "pathspec>=0.11.1", + "pyyaml-env-tag>=0.1", + "pyyaml>=5.1", + "watchdog>=2.0", +] +files = [ + {file = "mkdocs-1.6.1-py3-none-any.whl", hash = "sha256:db91759624d1647f3f34aa0c3f327dd2601beae39a366d6e064c03468d35c20e"}, + {file = "mkdocs-1.6.1.tar.gz", hash = "sha256:7b432f01d928c084353ab39c57282f29f92136665bdd6abf7c1ec8d822ef86f2"}, +] + +[[package]] +name = "mkdocs-autorefs" +version = "1.2.0" +requires_python = ">=3.8" +summary = "Automatically link across pages in MkDocs." +groups = ["dev"] +dependencies = [ + "Markdown>=3.3", + "markupsafe>=2.0.1", + "mkdocs>=1.1", +] +files = [ + {file = "mkdocs_autorefs-1.2.0-py3-none-any.whl", hash = "sha256:d588754ae89bd0ced0c70c06f58566a4ee43471eeeee5202427da7de9ef85a2f"}, + {file = "mkdocs_autorefs-1.2.0.tar.gz", hash = "sha256:a86b93abff653521bda71cf3fc5596342b7a23982093915cb74273f67522190f"}, +] + +[[package]] +name = "mkdocs-get-deps" +version = "0.2.0" +requires_python = ">=3.8" +summary = "MkDocs extension that lists all dependencies according to a mkdocs.yml file" +groups = ["dev"] +dependencies = [ + "mergedeep>=1.3.4", + "platformdirs>=2.2.0", + "pyyaml>=5.1", +] +files = [ + {file = "mkdocs_get_deps-0.2.0-py3-none-any.whl", hash = "sha256:2bf11d0b133e77a0dd036abeeb06dec8775e46efa526dc70667d8863eefc6134"}, + {file = "mkdocs_get_deps-0.2.0.tar.gz", hash = "sha256:162b3d129c7fad9b19abfdcb9c1458a651628e4b1dea628ac68790fb3061c60c"}, +] + +[[package]] +name = "mkdocs-material" +version = "9.5.34" +requires_python = ">=3.8" +summary = "Documentation that simply works" +groups = ["dev"] +dependencies = [ + "babel~=2.10", + "colorama~=0.4", + "jinja2~=3.0", + "markdown~=3.2", + "mkdocs-material-extensions~=1.3", + "mkdocs~=1.6", + "paginate~=0.5", + "pygments~=2.16", + "pymdown-extensions~=10.2", + "regex>=2022.4", + "requests~=2.26", +] +files = [ + {file = "mkdocs_material-9.5.34-py3-none-any.whl", hash = "sha256:54caa8be708de2b75167fd4d3b9f3d949579294f49cb242515d4653dbee9227e"}, + {file = "mkdocs_material-9.5.34.tar.gz", hash = "sha256:1e60ddf716cfb5679dfd65900b8a25d277064ed82d9a53cd5190e3f894df7840"}, +] + +[[package]] +name = "mkdocs-material-extensions" +version = "1.3.1" +requires_python = ">=3.8" +summary = "Extension pack for Python Markdown and MkDocs Material." +groups = ["dev"] +files = [ + {file = "mkdocs_material_extensions-1.3.1-py3-none-any.whl", hash = "sha256:adff8b62700b25cb77b53358dad940f3ef973dd6db797907c49e3c2ef3ab4e31"}, + {file = "mkdocs_material_extensions-1.3.1.tar.gz", hash = "sha256:10c9511cea88f568257f960358a467d12b970e1f7b2c0e5fb2bb48cab1928443"}, +] + +[[package]] +name = "mkdocstrings" +version = "0.26.0" +requires_python = ">=3.8" +summary = "Automatic documentation from sources, for MkDocs." +groups = ["dev"] +dependencies = [ + "Jinja2>=2.11.1", + "Markdown>=3.6", + "MarkupSafe>=1.1", + "click>=7.0", + "mkdocs-autorefs>=1.2", + "mkdocs>=1.4", + "platformdirs>=2.2", + "pymdown-extensions>=6.3", +] +files = [ + {file = "mkdocstrings-0.26.0-py3-none-any.whl", hash = "sha256:1aa227fe94f88e80737d37514523aacd473fc4b50a7f6852ce41447ab23f2654"}, + {file = "mkdocstrings-0.26.0.tar.gz", hash = "sha256:ff9d0de28c8fa877ed9b29a42fe407cfe6736d70a1c48177aa84fcc3dc8518cd"}, +] + +[[package]] +name = "mkdocstrings-python" +version = "1.10.9" +requires_python = ">=3.8" +summary = "A Python handler for mkdocstrings." +groups = ["dev"] +dependencies = [ + "griffe>=0.49", + "mkdocs-autorefs>=1.0", + "mkdocstrings>=0.25", +] +files = [ + {file = "mkdocstrings_python-1.10.9-py3-none-any.whl", hash = "sha256:cbe98710a6757dfd4dff79bf36cb9731908fb4c69dd2736b15270ae7a488243d"}, + {file = "mkdocstrings_python-1.10.9.tar.gz", hash = "sha256:f344aaa47e727d8a2dc911e063025e58e2b7fb31a41110ccc3902aa6be7ca196"}, +] + [[package]] name = "more-itertools" version = "10.3.0" @@ -932,6 +1136,16 @@ files = [ {file = "packaging-24.1.tar.gz", hash = "sha256:026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002"}, ] +[[package]] +name = "paginate" +version = "0.5.7" +summary = "Divides large result sets into pages for easier browsing" +groups = ["dev"] +files = [ + {file = "paginate-0.5.7-py2.py3-none-any.whl", hash = "sha256:b885e2af73abcf01d9559fd5216b57ef722f8c42affbb63942377668e35c7591"}, + {file = "paginate-0.5.7.tar.gz", hash = "sha256:22bd083ab41e1a8b4f3690544afb2c60c25e5c9a63a30fa2f483f6c60c8e5945"}, +] + [[package]] name = "pathspec" version = "0.12.1" @@ -1166,6 +1380,17 @@ files = [ {file = "pyflakes-3.2.0.tar.gz", hash = "sha256:1c61603ff154621fb2a9172037d84dca3500def8c8b630657d1701f026f8af3f"}, ] +[[package]] +name = "pygments" +version = "2.18.0" +requires_python = ">=3.8" +summary = "Pygments is a syntax highlighting package written in Python." +groups = ["dev"] +files = [ + {file = "pygments-2.18.0-py3-none-any.whl", hash = "sha256:b8e6aca0523f3ab76fee51799c488e38782ac06eafcf95e7ba832985c8e7b13a"}, + {file = "pygments-2.18.0.tar.gz", hash = "sha256:786ff802f32e91311bff3889f6e9a86e81505fe99f2735bb6d60ae0c5004f199"}, +] + [[package]] name = "pyjwt" version = "2.9.0" @@ -1177,6 +1402,21 @@ files = [ {file = "pyjwt-2.9.0.tar.gz", hash = "sha256:7e1e5b56cc735432a7369cbfa0efe50fa113ebecdc04ae6922deba8b84582d0c"}, ] +[[package]] +name = "pymdown-extensions" +version = "10.9" +requires_python = ">=3.8" +summary = "Extension pack for Python Markdown." +groups = ["dev"] +dependencies = [ + "markdown>=3.6", + "pyyaml", +] +files = [ + {file = "pymdown_extensions-10.9-py3-none-any.whl", hash = "sha256:d323f7e90d83c86113ee78f3fe62fc9dee5f56b54d912660703ea1816fed5626"}, + {file = "pymdown_extensions-10.9.tar.gz", hash = "sha256:6ff740bcd99ec4172a938970d42b96128bdc9d4b9bcad72494f29921dc69b753"}, +] + [[package]] name = "pyright" version = "1.1.374" @@ -1242,7 +1482,7 @@ name = "python-dateutil" version = "2.9.0.post0" requires_python = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" summary = "Extensions to the standard Python datetime module" -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "six>=1.5", ] @@ -1278,7 +1518,7 @@ name = "pyyaml" version = "6.0.1" requires_python = ">=3.6" summary = "YAML parser and emitter for Python" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, @@ -1290,6 +1530,20 @@ files = [ {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"}, ] +[[package]] +name = "pyyaml-env-tag" +version = "0.1" +requires_python = ">=3.6" +summary = "A custom YAML tag for referencing environment variables in YAML files. " +groups = ["dev"] +dependencies = [ + "pyyaml", +] +files = [ + {file = "pyyaml_env_tag-0.1-py3-none-any.whl", hash = "sha256:af31106dec8a4d68c60207c1886031cbf839b68aa7abccdb19868200532c2069"}, + {file = "pyyaml_env_tag-0.1.tar.gz", hash = "sha256:70092675bda14fdec33b31ba77e7543de9ddc88f2e5b99160396572d11525bdb"}, +] + [[package]] name = "redis" version = "5.0.8" @@ -1317,12 +1571,37 @@ files = [ {file = "redis-5.0.8.tar.gz", hash = "sha256:0c5b10d387568dfe0698c6fad6615750c24170e548ca2deac10c649d463e9870"}, ] +[[package]] +name = "regex" +version = "2024.7.24" +requires_python = ">=3.8" +summary = "Alternative regular expression module, to replace re." +groups = ["dev"] +files = [ + {file = "regex-2024.7.24-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:fe4ebef608553aff8deb845c7f4f1d0740ff76fa672c011cc0bacb2a00fbde86"}, + {file = "regex-2024.7.24-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:74007a5b25b7a678459f06559504f1eec2f0f17bca218c9d56f6a0a12bfffdad"}, + {file = "regex-2024.7.24-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:7df9ea48641da022c2a3c9c641650cd09f0cd15e8908bf931ad538f5ca7919c9"}, + {file = "regex-2024.7.24-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a1141a1dcc32904c47f6846b040275c6e5de0bf73f17d7a409035d55b76f289"}, + {file = "regex-2024.7.24-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:80c811cfcb5c331237d9bad3bea2c391114588cf4131707e84d9493064d267f9"}, + {file = "regex-2024.7.24-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7214477bf9bd195894cf24005b1e7b496f46833337b5dedb7b2a6e33f66d962c"}, + {file = "regex-2024.7.24-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d55588cba7553f0b6ec33130bc3e114b355570b45785cebdc9daed8c637dd440"}, + {file = "regex-2024.7.24-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:558a57cfc32adcf19d3f791f62b5ff564922942e389e3cfdb538a23d65a6b610"}, + {file = "regex-2024.7.24-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a512eed9dfd4117110b1881ba9a59b31433caed0c4101b361f768e7bcbaf93c5"}, + {file = "regex-2024.7.24-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:86b17ba823ea76256b1885652e3a141a99a5c4422f4a869189db328321b73799"}, + {file = "regex-2024.7.24-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:5eefee9bfe23f6df09ffb6dfb23809f4d74a78acef004aa904dc7c88b9944b05"}, + {file = "regex-2024.7.24-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:731fcd76bbdbf225e2eb85b7c38da9633ad3073822f5ab32379381e8c3c12e94"}, + {file = "regex-2024.7.24-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:eaef80eac3b4cfbdd6de53c6e108b4c534c21ae055d1dbea2de6b3b8ff3def38"}, + {file = "regex-2024.7.24-cp312-cp312-win32.whl", hash = "sha256:185e029368d6f89f36e526764cf12bf8d6f0e3a2a7737da625a76f594bdfcbfc"}, + {file = "regex-2024.7.24-cp312-cp312-win_amd64.whl", hash = "sha256:2f1baff13cc2521bea83ab2528e7a80cbe0ebb2c6f0bfad15be7da3aed443908"}, + {file = "regex-2024.7.24.tar.gz", hash = "sha256:9cfd009eed1a46b27c14039ad5bbc5e71b6367c5b2e6d5f5da0ea91600817506"}, +] + [[package]] name = "requests" version = "2.32.3" requires_python = ">=3.8" summary = "Python HTTP for Humans." -groups = ["default"] +groups = ["default", "dev"] dependencies = [ "certifi>=2017.4.17", "charset-normalizer<4,>=2", @@ -1339,7 +1618,7 @@ name = "six" version = "1.16.0" requires_python = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" summary = "Python 2 and 3 compatibility utilities" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, @@ -1471,7 +1750,7 @@ name = "typing-extensions" version = "4.12.2" requires_python = ">=3.8" summary = "Backported and Experimental Type Hints for Python 3.8+" -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "typing_extensions-4.12.2-py3-none-any.whl", hash = "sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d"}, {file = "typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"}, @@ -1493,7 +1772,7 @@ name = "urllib3" version = "2.2.2" requires_python = ">=3.8" summary = "HTTP library with thread-safe connection pooling, file post, and more." -groups = ["default"] +groups = ["default", "dev"] files = [ {file = "urllib3-2.2.2-py3-none-any.whl", hash = "sha256:a448b2f64d686155468037e1ace9f2d2199776e17f0a46610480d311f73e3472"}, {file = "urllib3-2.2.2.tar.gz", hash = "sha256:dd505485549a7a552833da5e6063639d0d177c04f23bc3864e41e5dc5f612168"}, @@ -1579,6 +1858,33 @@ files = [ {file = "vine-5.1.0.tar.gz", hash = "sha256:8b62e981d35c41049211cf62a0a1242d8c1ee9bd15bb196ce38aefd6799e61e0"}, ] +[[package]] +name = "watchdog" +version = "5.0.0" +requires_python = ">=3.9" +summary = "Filesystem events monitoring" +groups = ["dev"] +files = [ + {file = "watchdog-5.0.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:1e26f570dd7f5178656affb24d6f0e22ce66c8daf88d4061a27bfb9ac866b40d"}, + {file = "watchdog-5.0.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:d146331e6b206baa9f6dd40f72b5783ad2302c240df68e7fce196d30588ccf7b"}, + {file = "watchdog-5.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6c96b1706430839872a3e33b9370ee3f7a0079f6b828129d88498ad1f96a0f45"}, + {file = "watchdog-5.0.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:bc16d448a74a929b896ed9578c25756b2125400b19b3258be8d9a681c7ae8e71"}, + {file = "watchdog-5.0.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:7e6b0e9b8a9dc3865d65888b5f5222da4ba9c4e09eab13cff5e305e7b7e7248f"}, + {file = "watchdog-5.0.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:4fe6780915000743074236b21b6c37419aea71112af62237881bc265589fe463"}, + {file = "watchdog-5.0.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:0710e9502727f688a7e06d48078545c54485b3d6eb53b171810879d8223c362a"}, + {file = "watchdog-5.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:d76efab5248aafbf8a2c2a63cd7b9545e6b346ad1397af8b862a3bb3140787d8"}, + {file = "watchdog-5.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:ff4e957c45c446de34c513eadce01d0b65da7eee47c01dce472dd136124552c9"}, + {file = "watchdog-5.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:16c1aa3377bb1f82c5e24277fcbf4e2cac3c4ce46aaaf7212d53caa9076eb7b7"}, + {file = "watchdog-5.0.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:22fcad6168fc43cf0e709bd854be5b8edbb0b260f0a6f28f1ea9baa53c6907f7"}, + {file = "watchdog-5.0.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:0120b2fa65732797ffa65fa8ee5540c288aa861d91447df298626d6385a24658"}, + {file = "watchdog-5.0.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:2aa59fab7ff75281778c649557275ca3085eccbdf825a0e2a5ca3810e977afe5"}, + {file = "watchdog-5.0.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:78db0fe0336958fc0e1269545c980b6f33d04d184ba191b2800a8b71d3e971a9"}, + {file = "watchdog-5.0.0-py3-none-win32.whl", hash = "sha256:d1acef802916083f2ad7988efc7decf07e46e266916c0a09d8fb9d387288ea12"}, + {file = "watchdog-5.0.0-py3-none-win_amd64.whl", hash = "sha256:3c2d50fdb86aa6df3973313272f5a17eb26eab29ff5a0bf54b6d34597b4dc4e4"}, + {file = "watchdog-5.0.0-py3-none-win_ia64.whl", hash = "sha256:1d17ec7e022c34fa7ddc72aa41bf28c9d1207ffb193df18ba4f6fde453725b3c"}, + {file = "watchdog-5.0.0.tar.gz", hash = "sha256:990aedb9e2f336b45a70aed9c014450e7c4a70fd99c5f5b1834d57e1453a177e"}, +] + [[package]] name = "watchfiles" version = "0.22.0" diff --git a/pyproject.toml b/pyproject.toml index 3c1c828..ce3cde2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -48,7 +48,7 @@ requires = ["pdm-backend"] build-backend = "pdm.backend" [project.scripts] -materia = "materia.main:main" +materia = "materia.app.cli:cli" [tool.pyright] reportGeneralTypeIssues = false @@ -70,6 +70,9 @@ dev = [ "pytest-asyncio>=0.23.7", "asgi-lifespan>=2.1.0", "pytest-cov>=5.0.0", + "mkdocs-material>=9.5.34", + "mkdocstrings-python>=1.10.9", + "griffe-typingdoc>=0.2.6", ] [tool.pdm.build] diff --git a/src/materia/app/app.py b/src/materia/app/app.py index bedf8b4..f4e17de 100644 --- a/src/materia/app/app.py +++ b/src/materia/app/app.py @@ -2,11 +2,13 @@ from contextlib import _AsyncGeneratorContextManager, asynccontextmanager import os import sys from typing import AsyncIterator, TypedDict, Self, Optional +from pathlib import Path import uvicorn from fastapi import FastAPI from fastapi.routing import APIRoute from fastapi.middleware.cors import CORSMiddleware +from fastapi.staticfiles import StaticFiles from materia.core import ( Config, Logger, @@ -78,8 +80,9 @@ class Application: async def prepare_working_directory(self): try: - self.logger.debug("Changing working directory") - os.chdir(self.config.application.working_directory.resolve()) + path = self.config.application.working_directory.resolve() + self.logger.debug(f"Changing working directory to {path}") + os.chdir(path) except FileNotFoundError as e: self.logger.error("Failed to change working directory: {}", e) sys.exit() @@ -117,7 +120,11 @@ class Application: self.backend = FastAPI( title="materia", version="0.1.0", - docs_url="/api/docs", + docs_url=None, + redoc_url=None, + swagger_ui_init_oauth=None, + swagger_ui_oauth2_redirect_url=None, + openapi_url="/api/openapi.json", lifespan=lifespan, ) self.backend.add_middleware( @@ -127,6 +134,7 @@ class Application: allow_methods=["*"], allow_headers=["*"], ) + self.backend.include_router(routers.docs.router) self.backend.include_router(routers.api.router) self.backend.include_router(routers.resources.router) self.backend.include_router(routers.root.router) diff --git a/src/materia/app/cli.py b/src/materia/app/cli.py index 0d506f8..dc9ce56 100644 --- a/src/materia/app/cli.py +++ b/src/materia/app/cli.py @@ -15,7 +15,8 @@ def cli(): @cli.command() @click.option("--config", type=Path) -def start(config: Path): +@click.option("--debug", "-d", is_flag=True, default=False, help="Enable debug output.") +def start(config: Path, debug: bool): config_path = config logger = Logger.new() @@ -48,6 +49,9 @@ def start(config: Path): logger.info("Using the default configuration.") config = Config() + if debug: + config.log.level = "debug" + async def main(): app = await Application.new(config) await app.start() diff --git a/src/materia/core/config.py b/src/materia/core/config.py index cc2dd9c..3e3ac42 100644 --- a/src/materia/core/config.py +++ b/src/materia/core/config.py @@ -150,7 +150,7 @@ class Repository(BaseModel): capacity: int = 5 << 30 -class Config(BaseSettings, env_prefix="materia_", env_nested_delimiter="_"): +class Config(BaseSettings, env_prefix="materia_", env_nested_delimiter="__"): application: Application = Application() log: Log = Log() server: Server = Server() diff --git a/src/materia/core/database.py b/src/materia/core/database.py index 70b5aaf..f020486 100644 --- a/src/materia/core/database.py +++ b/src/materia/core/database.py @@ -77,7 +77,9 @@ class Database: async with database.connection() as connection: await connection.rollback() except Exception as e: - raise DatabaseError(f"Failed to connect to database: {url}") from e + raise DatabaseError( + f"Failed to connect to database '{url}': {e}" + ) from e return database diff --git a/src/materia/routers/__init__.py b/src/materia/routers/__init__.py index 432e0a0..e42f683 100644 --- a/src/materia/routers/__init__.py +++ b/src/materia/routers/__init__.py @@ -1 +1 @@ -from materia.routers import middleware, api, resources, root +from materia.routers import middleware, api, resources, root, docs diff --git a/src/materia/routers/api/__init__.py b/src/materia/routers/api/__init__.py index 6b58e57..6581b92 100644 --- a/src/materia/routers/api/__init__.py +++ b/src/materia/routers/api/__init__.py @@ -1,11 +1,17 @@ -from fastapi import APIRouter +from fastapi import APIRouter, HTTPException from materia.routers.api.auth import auth, oauth -from materia.routers.api import user, repository, directory, file +from materia.routers.api import docs, user, repository, directory, file router = APIRouter(prefix="/api") +router.include_router(docs.router) router.include_router(auth.router) router.include_router(oauth.router) router.include_router(user.router) router.include_router(repository.router) router.include_router(directory.router) router.include_router(file.router) + + +@router.get("/api/{catchall:path}", status_code=404, include_in_schema=False) +def not_found(): + raise HTTPException(status_code=404) diff --git a/src/materia/routers/api/auth/__init__.py b/src/materia/routers/api/auth/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/materia/routers/api/docs.py b/src/materia/routers/api/docs.py new file mode 100644 index 0000000..38295cb --- /dev/null +++ b/src/materia/routers/api/docs.py @@ -0,0 +1,40 @@ +from fastapi import APIRouter, Request +from fastapi.responses import HTMLResponse + +router = APIRouter() + + +@router.get("/docs", response_class=HTMLResponse, include_in_schema=False) +async def rapidoc(request: Request): + return f""" + + + + + + + + + + + + + + """ diff --git a/src/materia/routers/docs.py b/src/materia/routers/docs.py new file mode 100644 index 0000000..ad5a860 --- /dev/null +++ b/src/materia/routers/docs.py @@ -0,0 +1,33 @@ +from fastapi import APIRouter, Request, Response, status, HTTPException, Depends +from fastapi.responses import HTMLResponse, FileResponse +from fastapi.templating import Jinja2Templates +from fastapi.staticfiles import StaticFiles +import mimetypes +from pathlib import Path +from materia.core.misc import optional +from materia.routers import middleware + +from materia import docs as materia_docs + +router = APIRouter() + +# templates = Jinja2Templates(directory=Path(materia_docs.__path__[0])) +# p = Path(__file__).parent.joinpath("..", "docs").resolve() +# router.mount("/docs", StaticFiles(directory="doces", html=True), name="docs") + + +@router.get("/docs/{catchall:path}", include_in_schema=False) +async def docs(request: Request, ctx: middleware.Context = Depends()): + docs_directory = Path(materia_docs.__path__[0]).resolve() + target = docs_directory.joinpath(request.path_params["catchall"]).resolve() + + if not optional(target.relative_to, docs_directory): + raise HTTPException(status.HTTP_403_FORBIDDEN) + + if target.is_dir() and (index := target.joinpath("index.html")).is_file(): + return FileResponse(index) + + if not target.is_file(): + raise HTTPException(status.HTTP_404_NOT_FOUND) + + return FileResponse(target) diff --git a/src/materia/routers/root.py b/src/materia/routers/root.py index ad0f4e1..ea60028 100644 --- a/src/materia/routers/root.py +++ b/src/materia/routers/root.py @@ -1,5 +1,5 @@ from pathlib import Path -from fastapi import APIRouter, Request +from fastapi import APIRouter, Request, HTTPException from fastapi.responses import HTMLResponse from fastapi.templating import Jinja2Templates @@ -13,6 +13,7 @@ else: templates = Jinja2Templates(directory=Path(materia_frontend.__path__[0]) / "dist") - @router.get("/{spa:path}", response_class=HTMLResponse) + @router.get("/{spa:path}", response_class=HTMLResponse, include_in_schema=False) async def root(request: Request): + # raise HTTPException(404) return templates.TemplateResponse(request, "base.html", {"view": "app"})