griffe-runtime-objects 0.3.1__tar.gz → 0.3.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- griffe_runtime_objects-0.3.2/AI_POLICY.md +15 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/CHANGELOG.md +8 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/CONTRIBUTING.md +5 -14
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/LICENSE +1 -1
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/PKG-INFO +6 -8
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/README.md +2 -4
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/config/git-changelog.toml +1 -1
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/config/ruff.toml +1 -1
- griffe_runtime_objects-0.3.2/config/zed/debug.json +44 -0
- griffe_runtime_objects-0.3.2/config/zed/settings.json +43 -0
- griffe_runtime_objects-0.3.2/config/zed/tasks.json +72 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/duties.py +50 -6
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/pyproject.toml +4 -4
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/scripts/gen_credits.py +20 -8
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/scripts/get_version.py +19 -1
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/scripts/make.py +29 -3
- griffe_runtime_objects-0.3.2/src/griffe_runtime_objects/__init__.py +28 -0
- griffe_runtime_objects-0.3.2/src/griffe_runtime_objects/_internal/__init__.py +17 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/src/griffe_runtime_objects/_internal/debug.py +18 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/src/griffe_runtime_objects/_internal/extension.py +18 -0
- griffe_runtime_objects-0.3.2/tests/__init__.py +25 -0
- griffe_runtime_objects-0.3.2/tests/conftest.py +19 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/tests/test_api.py +18 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/tests/test_extension.py +18 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/zensical.toml +1 -0
- griffe_runtime_objects-0.3.1/src/griffe_runtime_objects/__init__.py +0 -10
- griffe_runtime_objects-0.3.1/src/griffe_runtime_objects/_internal/__init__.py +0 -0
- griffe_runtime_objects-0.3.1/tests/__init__.py +0 -7
- griffe_runtime_objects-0.3.1/tests/conftest.py +0 -1
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/CODE_OF_CONDUCT.md +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/config/coverage.ini +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/config/pytest.ini +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/config/ty.toml +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/config/vscode/launch.json +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/config/vscode/settings.json +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/config/vscode/tasks.json +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/docs/.overrides/main.html +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/docs/.overrides/partials/comments.html +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/docs/changelog.md +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/docs/code_of_conduct.md +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/docs/contributing.md +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/docs/credits.md +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/docs/css/apidocs.css +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/docs/index.md +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/docs/js/feedback.js +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/docs/license.md +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/docs/reference/api.md +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/scripts/make +0 -0
- {griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/src/griffe_runtime_objects/py.typed +0 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# AI Contribution Policy
|
|
2
|
+
|
|
3
|
+
We accept AI-*assisted* contributions, both for code and documentation, with the following expectations:
|
|
4
|
+
|
|
5
|
+
- AI-assisted contributions must disclaim their use of AI.
|
|
6
|
+
- Contributors must fully understand the proposed changes and be able to explain why they are the correct approach.
|
|
7
|
+
- Issues must be created before creating pull requests (unless there is already a relevant issue).
|
|
8
|
+
- Issue and pull request templates must be followed.
|
|
9
|
+
- Comments (including bodies) in issues and pull requests must be written by humans. If you use LLMs to translate from one language to another, please include your original comment and the translated one.
|
|
10
|
+
- Git commits must be authored by humans, not AI/bot accounts or identities.
|
|
11
|
+
- Git commit messages must be written by humans, in English. If you cannot write English, please state so in the pull request body and we will write the commit messages ourselves.
|
|
12
|
+
|
|
13
|
+
Failure to comply with any of these requirements will result in issues or pull requests being closed immediately without comment. Repeated violations of this policy will result in a ban of the offending accounts/identities from contributing to this project and any related project from the same author/organization.
|
|
14
|
+
|
|
15
|
+
We do not accept AI-generated content in community spaces we maintain or moderate, such as GitHub discussions or Matrix rooms.
|
|
@@ -6,6 +6,14 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
|
|
|
6
6
|
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
8
|
<!-- insertion marker -->
|
|
9
|
+
## [0.3.2](https://github.com/mkdocstrings/griffe-runtime-objects/releases/tag/0.3.2) - 2026-10-06
|
|
10
|
+
|
|
11
|
+
<small>[Compare with 0.3.1](https://github.com/mkdocstrings/griffe-runtime-objects/compare/0.3.1...0.3.2)</small>
|
|
12
|
+
|
|
13
|
+
### Build
|
|
14
|
+
|
|
15
|
+
- Drop support for Python 3.10 ([f467fa6](https://github.com/mkdocstrings/griffe-runtime-objects/commit/f467fa69a1ce956d1720c49614856cc35e35c969) by Timothée Mazzucotelli).
|
|
16
|
+
|
|
9
17
|
## [0.3.1](https://github.com/mkdocstrings/griffe-runtime-objects/releases/tag/0.3.1) - 2026-02-20
|
|
10
18
|
|
|
11
19
|
<small>[Compare with 0.3.0](https://github.com/mkdocstrings/griffe-runtime-objects/compare/0.3.0...0.3.1)</small>
|
|
@@ -1,28 +1,19 @@
|
|
|
1
1
|
# Contributing
|
|
2
2
|
|
|
3
|
-
Contributions are welcome, and they are greatly appreciated
|
|
3
|
+
Contributions are welcome, and they are greatly appreciated. Every little bit helps, and credit will always be given.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
**Please always create an issue before working on a new feature or a bug fix, so that we can discuss the implementation and make sure that your work will be merged.**
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
## Environment setup
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Install [uv](https://github.com/astral-sh/uv) and [direnv](https://direnv.net/), fork and clone the repository, then:
|
|
10
10
|
|
|
11
11
|
```bash
|
|
12
12
|
cd griffe-runtime-objects
|
|
13
|
+
direnv allow
|
|
13
14
|
make setup
|
|
14
15
|
```
|
|
15
16
|
|
|
16
|
-
> NOTE: If it fails for some reason, you'll need to install [uv](https://github.com/astral-sh/uv) manually.
|
|
17
|
-
>
|
|
18
|
-
> You can install it with:
|
|
19
|
-
>
|
|
20
|
-
> ```bash
|
|
21
|
-
> curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
22
|
-
> ```
|
|
23
|
-
>
|
|
24
|
-
> Now you can try running `make setup` again, or simply `uv sync`.
|
|
25
|
-
|
|
26
17
|
You now have the dependencies installed.
|
|
27
18
|
|
|
28
19
|
Run `make help` to see all the available actions!
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
ISC License
|
|
2
2
|
|
|
3
|
-
Copyright (c) 2024, Timothée Mazzucotelli
|
|
3
|
+
Copyright (c) 2024, Timothée Mazzucotelli and contributors
|
|
4
4
|
|
|
5
5
|
Permission to use, copy, modify, and/or distribute this software for any
|
|
6
6
|
purpose with or without fee is hereby granted, provided that the above
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: griffe-runtime-objects
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.2
|
|
4
4
|
Summary: Make runtime objects available through `extra`.
|
|
5
|
-
Author-Email:
|
|
5
|
+
Author-Email: Timothée Mazzucotelli <dev@pawamoy.fr>
|
|
6
6
|
License-Expression: ISC
|
|
7
7
|
License-File: LICENSE
|
|
8
8
|
Classifier: Development Status :: 4 - Beta
|
|
@@ -10,11 +10,11 @@ Classifier: Intended Audience :: Developers
|
|
|
10
10
|
Classifier: Programming Language :: Python
|
|
11
11
|
Classifier: Programming Language :: Python :: 3
|
|
12
12
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
13
|
-
Classifier: Programming Language :: Python :: 3.10
|
|
14
13
|
Classifier: Programming Language :: Python :: 3.11
|
|
15
14
|
Classifier: Programming Language :: Python :: 3.12
|
|
16
15
|
Classifier: Programming Language :: Python :: 3.13
|
|
17
16
|
Classifier: Programming Language :: Python :: 3.14
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.15
|
|
18
18
|
Classifier: Topic :: Documentation
|
|
19
19
|
Classifier: Topic :: Software Development
|
|
20
20
|
Classifier: Topic :: Utilities
|
|
@@ -27,7 +27,7 @@ Project-URL: Issues, https://github.com/mkdocstrings/griffe-runtime-objects/issu
|
|
|
27
27
|
Project-URL: Discussions, https://github.com/mkdocstrings/griffe-runtime-objects/discussions
|
|
28
28
|
Project-URL: Gitter, https://gitter.im/mkdocstrings/griffe-runtime-objects
|
|
29
29
|
Project-URL: Funding, https://github.com/sponsors/pawamoy
|
|
30
|
-
Requires-Python: >=3.
|
|
30
|
+
Requires-Python: >=3.11
|
|
31
31
|
Requires-Dist: griffelib>=2.0
|
|
32
32
|
Description-Content-Type: text/markdown
|
|
33
33
|
|
|
@@ -103,7 +103,7 @@ plugins:
|
|
|
103
103
|
<a href="https://github.com/BenHammersley"><img alt="BenHammersley" src="https://avatars.githubusercontent.com/u/99436?u=4499a7b507541045222ee28ae122dbe3c8d08ab5&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
104
104
|
<a href="https://github.com/trevorWieland"><img alt="trevorWieland" src="https://avatars.githubusercontent.com/u/28811461?u=74cc0e3756c1d4e3d66b5c396e1d131ea8a10472&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
105
105
|
<a href="https://github.com/MarcoGorelli"><img alt="MarcoGorelli" src="https://avatars.githubusercontent.com/u/33491632?u=7de3a749cac76a60baca9777baf71d043a4f884d&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
106
|
-
<a href="https://github.com/analog-cbarber"><img alt="analog-cbarber" src="https://avatars.githubusercontent.com/u/7408243?u=
|
|
106
|
+
<a href="https://github.com/analog-cbarber"><img alt="analog-cbarber" src="https://avatars.githubusercontent.com/u/7408243?u=fe0e7bf2882d1c9c901a341c2502e1518466527a&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
107
107
|
<a href="https://github.com/OdinManiac"><img alt="OdinManiac" src="https://avatars.githubusercontent.com/u/22727172?u=36ab20970f7f52ae8e7eb67b7fcf491fee01ac22&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
108
108
|
<a href="https://github.com/rstudio-sponsorship"><img alt="rstudio-sponsorship" src="https://avatars.githubusercontent.com/u/58949051?u=0c471515dd18111be30dfb7669ed5e778970959b&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
109
109
|
<a href="https://github.com/schlich"><img alt="schlich" src="https://avatars.githubusercontent.com/u/21191435?u=6f1240adb68f21614d809ae52d66509f46b1e877&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
@@ -115,17 +115,15 @@ plugins:
|
|
|
115
115
|
<a href="https://github.com/activeloopai"><img alt="activeloopai" src="https://avatars.githubusercontent.com/u/34816118?v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
116
116
|
<a href="https://github.com/roboflow"><img alt="roboflow" src="https://avatars.githubusercontent.com/u/53104118?v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
117
117
|
<a href="https://github.com/cmclaughlin"><img alt="cmclaughlin" src="https://avatars.githubusercontent.com/u/1061109?u=ddf6eec0edd2d11c980f8c3aa96e3d044d4e0468&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
118
|
-
<a href="https://github.com/blaisep"><img alt="blaisep" src="https://avatars.githubusercontent.com/u/254456?u=97d584b7c0a6faf583aa59975df4f993f671d121&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
119
118
|
<a href="https://github.com/RapidataAI"><img alt="RapidataAI" src="https://avatars.githubusercontent.com/u/104209891?v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
120
119
|
<a href="https://github.com/rodolphebarbanneau"><img alt="rodolphebarbanneau" src="https://avatars.githubusercontent.com/u/46493454?u=6c405452a40c231cdf0b68e97544e07ee956a733&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
121
120
|
<a href="https://github.com/theSymbolSyndicate"><img alt="theSymbolSyndicate" src="https://avatars.githubusercontent.com/u/111542255?v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
122
121
|
<a href="https://github.com/blakeNaccarato"><img alt="blakeNaccarato" src="https://avatars.githubusercontent.com/u/20692450?u=bb919218be30cfa994514f4cf39bb2f7cf952df4&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
123
122
|
<a href="https://github.com/ChargeStorm"><img alt="ChargeStorm" src="https://avatars.githubusercontent.com/u/26000165?v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
124
|
-
<a href="https://github.com/Alphadelta14"><img alt="Alphadelta14" src="https://avatars.githubusercontent.com/u/480845?v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
125
123
|
<a href="https://github.com/Cusp-AI"><img alt="Cusp-AI" src="https://avatars.githubusercontent.com/u/178170649?v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
126
124
|
</p></div>
|
|
127
125
|
|
|
128
126
|
|
|
129
|
-
*And
|
|
127
|
+
*And 4 more private sponsor(s).*
|
|
130
128
|
|
|
131
129
|
<!-- sponsors-end -->
|
|
@@ -70,7 +70,7 @@ plugins:
|
|
|
70
70
|
<a href="https://github.com/BenHammersley"><img alt="BenHammersley" src="https://avatars.githubusercontent.com/u/99436?u=4499a7b507541045222ee28ae122dbe3c8d08ab5&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
71
71
|
<a href="https://github.com/trevorWieland"><img alt="trevorWieland" src="https://avatars.githubusercontent.com/u/28811461?u=74cc0e3756c1d4e3d66b5c396e1d131ea8a10472&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
72
72
|
<a href="https://github.com/MarcoGorelli"><img alt="MarcoGorelli" src="https://avatars.githubusercontent.com/u/33491632?u=7de3a749cac76a60baca9777baf71d043a4f884d&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
73
|
-
<a href="https://github.com/analog-cbarber"><img alt="analog-cbarber" src="https://avatars.githubusercontent.com/u/7408243?u=
|
|
73
|
+
<a href="https://github.com/analog-cbarber"><img alt="analog-cbarber" src="https://avatars.githubusercontent.com/u/7408243?u=fe0e7bf2882d1c9c901a341c2502e1518466527a&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
74
74
|
<a href="https://github.com/OdinManiac"><img alt="OdinManiac" src="https://avatars.githubusercontent.com/u/22727172?u=36ab20970f7f52ae8e7eb67b7fcf491fee01ac22&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
75
75
|
<a href="https://github.com/rstudio-sponsorship"><img alt="rstudio-sponsorship" src="https://avatars.githubusercontent.com/u/58949051?u=0c471515dd18111be30dfb7669ed5e778970959b&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
76
76
|
<a href="https://github.com/schlich"><img alt="schlich" src="https://avatars.githubusercontent.com/u/21191435?u=6f1240adb68f21614d809ae52d66509f46b1e877&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
@@ -82,17 +82,15 @@ plugins:
|
|
|
82
82
|
<a href="https://github.com/activeloopai"><img alt="activeloopai" src="https://avatars.githubusercontent.com/u/34816118?v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
83
83
|
<a href="https://github.com/roboflow"><img alt="roboflow" src="https://avatars.githubusercontent.com/u/53104118?v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
84
84
|
<a href="https://github.com/cmclaughlin"><img alt="cmclaughlin" src="https://avatars.githubusercontent.com/u/1061109?u=ddf6eec0edd2d11c980f8c3aa96e3d044d4e0468&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
85
|
-
<a href="https://github.com/blaisep"><img alt="blaisep" src="https://avatars.githubusercontent.com/u/254456?u=97d584b7c0a6faf583aa59975df4f993f671d121&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
86
85
|
<a href="https://github.com/RapidataAI"><img alt="RapidataAI" src="https://avatars.githubusercontent.com/u/104209891?v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
87
86
|
<a href="https://github.com/rodolphebarbanneau"><img alt="rodolphebarbanneau" src="https://avatars.githubusercontent.com/u/46493454?u=6c405452a40c231cdf0b68e97544e07ee956a733&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
88
87
|
<a href="https://github.com/theSymbolSyndicate"><img alt="theSymbolSyndicate" src="https://avatars.githubusercontent.com/u/111542255?v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
89
88
|
<a href="https://github.com/blakeNaccarato"><img alt="blakeNaccarato" src="https://avatars.githubusercontent.com/u/20692450?u=bb919218be30cfa994514f4cf39bb2f7cf952df4&v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
90
89
|
<a href="https://github.com/ChargeStorm"><img alt="ChargeStorm" src="https://avatars.githubusercontent.com/u/26000165?v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
91
|
-
<a href="https://github.com/Alphadelta14"><img alt="Alphadelta14" src="https://avatars.githubusercontent.com/u/480845?v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
92
90
|
<a href="https://github.com/Cusp-AI"><img alt="Cusp-AI" src="https://avatars.githubusercontent.com/u/178170649?v=4" style="height: 32px; border-radius: 100%;"></a>
|
|
93
91
|
</p></div>
|
|
94
92
|
|
|
95
93
|
|
|
96
|
-
*And
|
|
94
|
+
*And 4 more private sponsor(s).*
|
|
97
95
|
|
|
98
96
|
<!-- sponsors-end -->
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
// Project-local debug tasks
|
|
2
|
+
//
|
|
3
|
+
// For more documentation on how to configure debug tasks,
|
|
4
|
+
// see: https://zed.dev/docs/debugger
|
|
5
|
+
[
|
|
6
|
+
{
|
|
7
|
+
"label": "python (current file)",
|
|
8
|
+
"adapter": "Debugpy",
|
|
9
|
+
"request": "launch",
|
|
10
|
+
"program": "$ZED_FILE",
|
|
11
|
+
"justMyCode": false
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"label": "run",
|
|
15
|
+
"adapter": "Debugpy",
|
|
16
|
+
"request": "launch",
|
|
17
|
+
"module": "griffe_runtime_objects",
|
|
18
|
+
"justMyCode": false
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"label": "docs",
|
|
22
|
+
"adapter": "Debugpy",
|
|
23
|
+
"request": "launch",
|
|
24
|
+
"module": "zensical",
|
|
25
|
+
"args": [
|
|
26
|
+
"serve"
|
|
27
|
+
],
|
|
28
|
+
"justMyCode": false
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"label": "test",
|
|
32
|
+
"adapter": "Debugpy",
|
|
33
|
+
"request": "launch",
|
|
34
|
+
"module": "pytest",
|
|
35
|
+
"args": [
|
|
36
|
+
"-c=config/pytest.ini",
|
|
37
|
+
"-vvv",
|
|
38
|
+
"--no-cov",
|
|
39
|
+
"--dist=no",
|
|
40
|
+
"tests"
|
|
41
|
+
],
|
|
42
|
+
"justMyCode": false
|
|
43
|
+
}
|
|
44
|
+
]
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
// Zed settings
|
|
2
|
+
//
|
|
3
|
+
// For information on how to configure Zed, see the Zed
|
|
4
|
+
// documentation: https://zed.dev/docs/configuring-zed
|
|
5
|
+
//
|
|
6
|
+
// To see all of Zed's default settings without changing your
|
|
7
|
+
// custom settings, run `zed: open default settings` from the
|
|
8
|
+
// command palette (cmd-shift-p / ctrl-shift-p)
|
|
9
|
+
{
|
|
10
|
+
"languages": {
|
|
11
|
+
"YAML": {
|
|
12
|
+
"auto_indent_on_paste": false,
|
|
13
|
+
"auto_indent": "preserve_indent",
|
|
14
|
+
"format_on_save": "off"
|
|
15
|
+
},
|
|
16
|
+
"Python": {
|
|
17
|
+
"language_servers": ["ty", "ruff"],
|
|
18
|
+
"code_actions_on_format": {
|
|
19
|
+
"source.organizeImports.ruff": true
|
|
20
|
+
},
|
|
21
|
+
"formatter": {
|
|
22
|
+
"language_server": {
|
|
23
|
+
"name": "ruff"
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"lsp": {
|
|
29
|
+
"ty": {
|
|
30
|
+
"settings": {
|
|
31
|
+
"configurationFile": "config/ty.toml"
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
"ruff": {
|
|
35
|
+
"initialization_options": {
|
|
36
|
+
"settings": {
|
|
37
|
+
"configurationPreference": "filesystemFirst",
|
|
38
|
+
"configuration": "config/ruff.toml"
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"label": "changelog",
|
|
4
|
+
"command": "scripts/make",
|
|
5
|
+
"args": ["changelog"]
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
"label": "check",
|
|
9
|
+
"command": "scripts/make",
|
|
10
|
+
"args": ["check"]
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
"label": "check-quality",
|
|
14
|
+
"command": "scripts/make",
|
|
15
|
+
"args": ["check-quality"]
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"label": "check-types",
|
|
19
|
+
"command": "scripts/make",
|
|
20
|
+
"args": ["check-types"]
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"label": "check-docs",
|
|
24
|
+
"command": "scripts/make",
|
|
25
|
+
"args": ["check-docs"]
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"label": "check-api",
|
|
29
|
+
"command": "scripts/make",
|
|
30
|
+
"args": ["check-api"]
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"label": "clean",
|
|
34
|
+
"command": "scripts/make",
|
|
35
|
+
"args": ["clean"]
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"label": "docs",
|
|
39
|
+
"command": "scripts/make",
|
|
40
|
+
"args": ["docs"]
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"label": "docs-deploy",
|
|
44
|
+
"command": "scripts/make",
|
|
45
|
+
"args": ["docs-deploy"]
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"label": "format",
|
|
49
|
+
"command": "scripts/make",
|
|
50
|
+
"args": ["format"]
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"label": "release",
|
|
54
|
+
"command": "scripts/make",
|
|
55
|
+
"args": ["release"]
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"label": "setup",
|
|
59
|
+
"command": "scripts/make",
|
|
60
|
+
"args": ["setup"]
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"label": "test",
|
|
64
|
+
"command": "scripts/make",
|
|
65
|
+
"args": ["test", "coverage"]
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"label": "vscode",
|
|
69
|
+
"command": "scripts/make",
|
|
70
|
+
"args": ["vscode"]
|
|
71
|
+
}
|
|
72
|
+
]
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
# SPDX-License-Identifier: ISC
|
|
2
|
+
#
|
|
3
|
+
# ISC License
|
|
4
|
+
#
|
|
5
|
+
# Copyright (c) 2024, Timothée Mazzucotelli and contributors
|
|
6
|
+
#
|
|
7
|
+
# Permission to use, copy, modify, and/or distribute this software for any
|
|
8
|
+
# purpose with or without fee is hereby granted, provided that the above
|
|
9
|
+
# copyright notice and this permission notice appear in all copies.
|
|
10
|
+
#
|
|
11
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
12
|
+
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
13
|
+
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
14
|
+
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
15
|
+
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
16
|
+
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
17
|
+
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
18
|
+
|
|
1
19
|
"""Development tasks."""
|
|
2
20
|
|
|
3
21
|
from __future__ import annotations
|
|
@@ -22,7 +40,7 @@ WINDOWS = os.name == "nt"
|
|
|
22
40
|
PTY = not WINDOWS and not CI
|
|
23
41
|
MULTIRUN = os.environ.get("MULTIRUN", "0") == "1"
|
|
24
42
|
PY_VERSION = f"{sys.version_info.major}{sys.version_info.minor}"
|
|
25
|
-
PY_DEV = "
|
|
43
|
+
PY_DEV = "316"
|
|
26
44
|
|
|
27
45
|
|
|
28
46
|
def pyprefix(title: str) -> str:
|
|
@@ -35,7 +53,7 @@ def pyprefix(title: str) -> str:
|
|
|
35
53
|
def _get_changelog_version() -> str:
|
|
36
54
|
changelog_version_re = re.compile(r"^## \[(\d+\.\d+\.\d+)\].*$")
|
|
37
55
|
with Path(__file__).parent.joinpath("CHANGELOG.md").open("r", encoding="utf8") as file:
|
|
38
|
-
return next(filter(bool, map(changelog_version_re.match, file))).group(1) # ty: ignore[
|
|
56
|
+
return next(filter(bool, map(changelog_version_re.match, file))).group(1) # ty: ignore[unresolved-attribute]
|
|
39
57
|
|
|
40
58
|
|
|
41
59
|
@duty
|
|
@@ -97,6 +115,21 @@ def check_api(ctx: Context, *cli_args: str) -> None:
|
|
|
97
115
|
)
|
|
98
116
|
|
|
99
117
|
|
|
118
|
+
@duty
|
|
119
|
+
def check_security(ctx: Context) -> None:
|
|
120
|
+
"""Check for security vulnerabilities."""
|
|
121
|
+
ctx.run(
|
|
122
|
+
["uv", "audit"],
|
|
123
|
+
title="Auditing dependencies",
|
|
124
|
+
pty=PTY,
|
|
125
|
+
)
|
|
126
|
+
ctx.run(
|
|
127
|
+
["zizmor", "."],
|
|
128
|
+
title="Auditing GitHub Actions workflows",
|
|
129
|
+
pty=PTY,
|
|
130
|
+
)
|
|
131
|
+
|
|
132
|
+
|
|
100
133
|
@duty
|
|
101
134
|
def docs(ctx: Context, *cli_args: str, host: str = "127.0.0.1", port: int = 8000) -> None:
|
|
102
135
|
"""Serve the documentation (localhost:8000).
|
|
@@ -157,9 +190,20 @@ def publish(ctx: Context) -> None:
|
|
|
157
190
|
"""Publish source and wheel distributions to PyPI."""
|
|
158
191
|
if not Path("dist").exists():
|
|
159
192
|
ctx.run("false", title="No distribution files found")
|
|
160
|
-
dists = [str(dist) for dist in Path("dist").iterdir() if dist.suffix in (".
|
|
193
|
+
dists = [str(dist) for dist in Path("dist").iterdir() if dist.suffix in (".gz", ".whl")]
|
|
194
|
+
password = None
|
|
195
|
+
if password_cmd := os.getenv("PUBLISH_PASS_CMD"):
|
|
196
|
+
password = ctx.run(
|
|
197
|
+
password_cmd.format(project="griffe-runtime-objects"),
|
|
198
|
+
capture="stdout",
|
|
199
|
+
pty=False,
|
|
200
|
+
silent=True,
|
|
201
|
+
allow_overrides=False,
|
|
202
|
+
).strip()
|
|
161
203
|
ctx.run(
|
|
162
|
-
tools.twine.upload(*dists, skip_existing=True),
|
|
204
|
+
tools.twine.upload(*dists, skip_existing=True, password=password),
|
|
205
|
+
# Keep the password out of the displayed command, including on failure.
|
|
206
|
+
command=tools.twine.upload(*dists, skip_existing=True).cli_command,
|
|
163
207
|
title="Publishing distributions to PyPI",
|
|
164
208
|
pty=PTY,
|
|
165
209
|
)
|
|
@@ -172,8 +216,8 @@ def release(ctx: Context, version: str = "") -> None:
|
|
|
172
216
|
Parameters:
|
|
173
217
|
version: The new version number to use.
|
|
174
218
|
"""
|
|
175
|
-
if not
|
|
176
|
-
ctx.run(
|
|
219
|
+
if not version:
|
|
220
|
+
version = ctx.run(tools.git_changelog(latest_version=True), silent=True).strip()
|
|
177
221
|
ctx.run("git add pyproject.toml CHANGELOG.md", title="Staging files", pty=PTY)
|
|
178
222
|
ctx.run(["git", "commit", "-m", f"chore: Prepare release {version}"], title="Committing changes", pty=PTY)
|
|
179
223
|
ctx.run(f"git tag -m '' -a {version}", title="Tagging commit", pty=PTY)
|
|
@@ -15,7 +15,7 @@ license-files = [
|
|
|
15
15
|
"LICENSE",
|
|
16
16
|
]
|
|
17
17
|
readme = "README.md"
|
|
18
|
-
requires-python = ">=3.
|
|
18
|
+
requires-python = ">=3.11"
|
|
19
19
|
keywords = []
|
|
20
20
|
dynamic = []
|
|
21
21
|
classifiers = [
|
|
@@ -24,11 +24,11 @@ classifiers = [
|
|
|
24
24
|
"Programming Language :: Python",
|
|
25
25
|
"Programming Language :: Python :: 3",
|
|
26
26
|
"Programming Language :: Python :: 3 :: Only",
|
|
27
|
-
"Programming Language :: Python :: 3.10",
|
|
28
27
|
"Programming Language :: Python :: 3.11",
|
|
29
28
|
"Programming Language :: Python :: 3.12",
|
|
30
29
|
"Programming Language :: Python :: 3.13",
|
|
31
30
|
"Programming Language :: Python :: 3.14",
|
|
31
|
+
"Programming Language :: Python :: 3.15",
|
|
32
32
|
"Topic :: Documentation",
|
|
33
33
|
"Topic :: Software Development",
|
|
34
34
|
"Topic :: Utilities",
|
|
@@ -37,7 +37,7 @@ classifiers = [
|
|
|
37
37
|
dependencies = [
|
|
38
38
|
"griffelib>=2.0",
|
|
39
39
|
]
|
|
40
|
-
version = "0.3.
|
|
40
|
+
version = "0.3.2"
|
|
41
41
|
|
|
42
42
|
[project.urls]
|
|
43
43
|
Homepage = "https://mkdocstrings.github.io/griffe-runtime-objects"
|
|
@@ -98,12 +98,12 @@ ci = [
|
|
|
98
98
|
"ty>=0.0.14",
|
|
99
99
|
"types-markdown>=3.6",
|
|
100
100
|
"types-pyyaml>=6.0",
|
|
101
|
+
"zizmor>=1.0",
|
|
101
102
|
]
|
|
102
103
|
docs = [
|
|
103
104
|
"ghp-import>=2.1",
|
|
104
105
|
"markdown-callouts>=0.4",
|
|
105
106
|
"markdown-exec>=1.8",
|
|
106
107
|
"mkdocstrings[python]>=0.29",
|
|
107
|
-
"tomli>=2.0; python_version < '3.11'",
|
|
108
108
|
"zensical>=0.0.21",
|
|
109
109
|
]
|
|
@@ -1,8 +1,26 @@
|
|
|
1
|
+
# SPDX-License-Identifier: ISC
|
|
2
|
+
#
|
|
3
|
+
# ISC License
|
|
4
|
+
#
|
|
5
|
+
# Copyright (c) 2024, Timothée Mazzucotelli and contributors
|
|
6
|
+
#
|
|
7
|
+
# Permission to use, copy, modify, and/or distribute this software for any
|
|
8
|
+
# purpose with or without fee is hereby granted, provided that the above
|
|
9
|
+
# copyright notice and this permission notice appear in all copies.
|
|
10
|
+
#
|
|
11
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
12
|
+
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
13
|
+
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
14
|
+
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
15
|
+
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
16
|
+
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
17
|
+
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
18
|
+
|
|
1
19
|
# Script to generate the project's credits.
|
|
2
20
|
|
|
3
21
|
from __future__ import annotations
|
|
4
22
|
|
|
5
|
-
import
|
|
23
|
+
import tomllib
|
|
6
24
|
from collections import defaultdict
|
|
7
25
|
from collections.abc import Iterable
|
|
8
26
|
from importlib.metadata import distributions
|
|
@@ -14,12 +32,6 @@ from jinja2 import StrictUndefined
|
|
|
14
32
|
from jinja2.sandbox import SandboxedEnvironment
|
|
15
33
|
from packaging.requirements import Requirement
|
|
16
34
|
|
|
17
|
-
# YORE: EOL 3.10: Replace block with line 2.
|
|
18
|
-
if sys.version_info >= (3, 11):
|
|
19
|
-
import tomllib
|
|
20
|
-
else:
|
|
21
|
-
import tomli as tomllib
|
|
22
|
-
|
|
23
35
|
project_dir = Path.cwd()
|
|
24
36
|
with project_dir.joinpath("pyproject.toml").open("rb") as pyproject_file:
|
|
25
37
|
pyproject = tomllib.load(pyproject_file)
|
|
@@ -53,7 +65,7 @@ def _extra_marker(req: Requirement) -> str | None:
|
|
|
53
65
|
if not req.marker:
|
|
54
66
|
return None
|
|
55
67
|
try:
|
|
56
|
-
return next(marker[2].value for marker in req.marker._markers if getattr(marker[0], "value", None) == "extra")
|
|
68
|
+
return next(marker[2].value for marker in req.marker._markers if getattr(marker[0], "value", None) == "extra") # ty:ignore[unresolved-attribute]
|
|
57
69
|
except StopIteration:
|
|
58
70
|
return None
|
|
59
71
|
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
# SPDX-License-Identifier: ISC
|
|
2
|
+
#
|
|
3
|
+
# ISC License
|
|
4
|
+
#
|
|
5
|
+
# Copyright (c) 2024, Timothée Mazzucotelli and contributors
|
|
6
|
+
#
|
|
7
|
+
# Permission to use, copy, modify, and/or distribute this software for any
|
|
8
|
+
# purpose with or without fee is hereby granted, provided that the above
|
|
9
|
+
# copyright notice and this permission notice appear in all copies.
|
|
10
|
+
#
|
|
11
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
12
|
+
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
13
|
+
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
14
|
+
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
15
|
+
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
16
|
+
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
17
|
+
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
18
|
+
|
|
1
19
|
# Get current project version from Git tags or changelog.
|
|
2
20
|
|
|
3
21
|
import re
|
|
@@ -22,7 +40,7 @@ def get_version() -> str:
|
|
|
22
40
|
if scm_version.version <= Version("0.1"): # Missing Git tags?
|
|
23
41
|
with suppress(OSError, StopIteration): # noqa: SIM117
|
|
24
42
|
with _changelog.open("r", encoding="utf8") as file:
|
|
25
|
-
match = next(filter(None, map(_changelog_version_re.match, file)))
|
|
43
|
+
match = next(filter(None, map(_changelog_version_re.match, file)))
|
|
26
44
|
scm_version = scm_version._replace(version=Version(match.group(1)))
|
|
27
45
|
return default_version_formatter(scm_version)
|
|
28
46
|
|
|
@@ -1,4 +1,22 @@
|
|
|
1
1
|
#!/usr/bin/env python3
|
|
2
|
+
# SPDX-License-Identifier: ISC
|
|
3
|
+
#
|
|
4
|
+
# ISC License
|
|
5
|
+
#
|
|
6
|
+
# Copyright (c) 2024, Timothée Mazzucotelli and contributors
|
|
7
|
+
#
|
|
8
|
+
# Permission to use, copy, modify, and/or distribute this software for any
|
|
9
|
+
# purpose with or without fee is hereby granted, provided that the above
|
|
10
|
+
# copyright notice and this permission notice appear in all copies.
|
|
11
|
+
#
|
|
12
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
13
|
+
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
14
|
+
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
15
|
+
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
16
|
+
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
17
|
+
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
18
|
+
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
19
|
+
|
|
2
20
|
from __future__ import annotations
|
|
3
21
|
|
|
4
22
|
import os
|
|
@@ -14,8 +32,8 @@ if TYPE_CHECKING:
|
|
|
14
32
|
from collections.abc import Iterator
|
|
15
33
|
|
|
16
34
|
|
|
17
|
-
PYTHON_VERSIONS = os.getenv("PYTHON_VERSIONS", "3.
|
|
18
|
-
PYTHON_DEV = "3.
|
|
35
|
+
PYTHON_VERSIONS = os.getenv("PYTHON_VERSIONS", "3.11 3.12 3.13 3.14 3.15").split()
|
|
36
|
+
PYTHON_DEV = "3.16"
|
|
19
37
|
|
|
20
38
|
|
|
21
39
|
def shell(cmd: str, *, capture_output: bool = False, **kwargs: Any) -> str | None:
|
|
@@ -128,6 +146,11 @@ def vscode() -> None:
|
|
|
128
146
|
shutil.copytree("config/vscode", ".vscode", dirs_exist_ok=True)
|
|
129
147
|
|
|
130
148
|
|
|
149
|
+
def zed() -> None:
|
|
150
|
+
"""Configure Zed to work on this project."""
|
|
151
|
+
shutil.copytree("config/zed", ".zed", dirs_exist_ok=True)
|
|
152
|
+
|
|
153
|
+
|
|
131
154
|
def main() -> int:
|
|
132
155
|
"""Main entry point."""
|
|
133
156
|
args = list(sys.argv[1:])
|
|
@@ -147,6 +170,7 @@ def main() -> int:
|
|
|
147
170
|
3.x Run a command in the virtual environment for Python 3.x.
|
|
148
171
|
clean Delete build artifacts and cache files.
|
|
149
172
|
vscode Configure VSCode to work on this project.
|
|
173
|
+
zed Configure Zed to work on this project.
|
|
150
174
|
""",
|
|
151
175
|
),
|
|
152
176
|
flush=True,
|
|
@@ -197,9 +221,11 @@ def main() -> int:
|
|
|
197
221
|
setup()
|
|
198
222
|
elif cmd == "vscode":
|
|
199
223
|
vscode()
|
|
224
|
+
elif cmd == "zed":
|
|
225
|
+
zed()
|
|
200
226
|
elif cmd == "check":
|
|
201
227
|
multirun("duty", "check-quality", "check-types", "check-docs")
|
|
202
|
-
run("default", "duty", "check-api")
|
|
228
|
+
run("default", "duty", "check-security", "check-api")
|
|
203
229
|
elif cmd in {"check-quality", "check-docs", "check-types", "test"}:
|
|
204
230
|
multirun("duty", cmd, *opts)
|
|
205
231
|
else:
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# SPDX-License-Identifier: ISC
|
|
2
|
+
#
|
|
3
|
+
# ISC License
|
|
4
|
+
#
|
|
5
|
+
# Copyright (c) 2024, Timothée Mazzucotelli and contributors
|
|
6
|
+
#
|
|
7
|
+
# Permission to use, copy, modify, and/or distribute this software for any
|
|
8
|
+
# purpose with or without fee is hereby granted, provided that the above
|
|
9
|
+
# copyright notice and this permission notice appear in all copies.
|
|
10
|
+
#
|
|
11
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
12
|
+
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
13
|
+
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
14
|
+
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
15
|
+
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
16
|
+
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
17
|
+
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
18
|
+
|
|
19
|
+
"""griffe-runtime-objects package.
|
|
20
|
+
|
|
21
|
+
Make runtime objects available through `extra`.
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
from __future__ import annotations
|
|
25
|
+
|
|
26
|
+
from griffe_runtime_objects._internal.extension import RuntimeObjectsExtension
|
|
27
|
+
|
|
28
|
+
__all__: list[str] = ["RuntimeObjectsExtension"]
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# SPDX-License-Identifier: ISC
|
|
2
|
+
#
|
|
3
|
+
# ISC License
|
|
4
|
+
#
|
|
5
|
+
# Copyright (c) 2024, Timothée Mazzucotelli and contributors
|
|
6
|
+
#
|
|
7
|
+
# Permission to use, copy, modify, and/or distribute this software for any
|
|
8
|
+
# purpose with or without fee is hereby granted, provided that the above
|
|
9
|
+
# copyright notice and this permission notice appear in all copies.
|
|
10
|
+
#
|
|
11
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
12
|
+
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
13
|
+
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
14
|
+
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
15
|
+
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
16
|
+
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
17
|
+
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
# SPDX-License-Identifier: ISC
|
|
2
|
+
#
|
|
3
|
+
# ISC License
|
|
4
|
+
#
|
|
5
|
+
# Copyright (c) 2024, Timothée Mazzucotelli and contributors
|
|
6
|
+
#
|
|
7
|
+
# Permission to use, copy, modify, and/or distribute this software for any
|
|
8
|
+
# purpose with or without fee is hereby granted, provided that the above
|
|
9
|
+
# copyright notice and this permission notice appear in all copies.
|
|
10
|
+
#
|
|
11
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
12
|
+
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
13
|
+
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
14
|
+
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
15
|
+
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
16
|
+
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
17
|
+
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
18
|
+
|
|
1
19
|
from __future__ import annotations
|
|
2
20
|
|
|
3
21
|
import os
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
# SPDX-License-Identifier: ISC
|
|
2
|
+
#
|
|
3
|
+
# ISC License
|
|
4
|
+
#
|
|
5
|
+
# Copyright (c) 2024, Timothée Mazzucotelli and contributors
|
|
6
|
+
#
|
|
7
|
+
# Permission to use, copy, modify, and/or distribute this software for any
|
|
8
|
+
# purpose with or without fee is hereby granted, provided that the above
|
|
9
|
+
# copyright notice and this permission notice appear in all copies.
|
|
10
|
+
#
|
|
11
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
12
|
+
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
13
|
+
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
14
|
+
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
15
|
+
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
16
|
+
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
17
|
+
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
18
|
+
|
|
1
19
|
from __future__ import annotations
|
|
2
20
|
|
|
3
21
|
from typing import TYPE_CHECKING, Any
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# SPDX-License-Identifier: ISC
|
|
2
|
+
#
|
|
3
|
+
# ISC License
|
|
4
|
+
#
|
|
5
|
+
# Copyright (c) 2024, Timothée Mazzucotelli and contributors
|
|
6
|
+
#
|
|
7
|
+
# Permission to use, copy, modify, and/or distribute this software for any
|
|
8
|
+
# purpose with or without fee is hereby granted, provided that the above
|
|
9
|
+
# copyright notice and this permission notice appear in all copies.
|
|
10
|
+
#
|
|
11
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
12
|
+
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
13
|
+
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
14
|
+
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
15
|
+
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
16
|
+
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
17
|
+
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
18
|
+
|
|
19
|
+
"""Tests suite for `griffe_runtime_objects`."""
|
|
20
|
+
|
|
21
|
+
from pathlib import Path
|
|
22
|
+
|
|
23
|
+
TESTS_DIR = Path(__file__).parent
|
|
24
|
+
TMP_DIR = TESTS_DIR / "tmp"
|
|
25
|
+
FIXTURES_DIR = TESTS_DIR / "fixtures"
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# SPDX-License-Identifier: ISC
|
|
2
|
+
#
|
|
3
|
+
# ISC License
|
|
4
|
+
#
|
|
5
|
+
# Copyright (c) 2024, Timothée Mazzucotelli and contributors
|
|
6
|
+
#
|
|
7
|
+
# Permission to use, copy, modify, and/or distribute this software for any
|
|
8
|
+
# purpose with or without fee is hereby granted, provided that the above
|
|
9
|
+
# copyright notice and this permission notice appear in all copies.
|
|
10
|
+
#
|
|
11
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
12
|
+
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
13
|
+
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
14
|
+
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
15
|
+
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
16
|
+
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
17
|
+
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
18
|
+
|
|
19
|
+
"""Configuration for the pytest test suite."""
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
# SPDX-License-Identifier: ISC
|
|
2
|
+
#
|
|
3
|
+
# ISC License
|
|
4
|
+
#
|
|
5
|
+
# Copyright (c) 2024, Timothée Mazzucotelli and contributors
|
|
6
|
+
#
|
|
7
|
+
# Permission to use, copy, modify, and/or distribute this software for any
|
|
8
|
+
# purpose with or without fee is hereby granted, provided that the above
|
|
9
|
+
# copyright notice and this permission notice appear in all copies.
|
|
10
|
+
#
|
|
11
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
12
|
+
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
13
|
+
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
14
|
+
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
15
|
+
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
16
|
+
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
17
|
+
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
18
|
+
|
|
1
19
|
"""Tests for our own API exposition."""
|
|
2
20
|
|
|
3
21
|
from __future__ import annotations
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
# SPDX-License-Identifier: ISC
|
|
2
|
+
#
|
|
3
|
+
# ISC License
|
|
4
|
+
#
|
|
5
|
+
# Copyright (c) 2024, Timothée Mazzucotelli and contributors
|
|
6
|
+
#
|
|
7
|
+
# Permission to use, copy, modify, and/or distribute this software for any
|
|
8
|
+
# purpose with or without fee is hereby granted, provided that the above
|
|
9
|
+
# copyright notice and this permission notice appear in all copies.
|
|
10
|
+
#
|
|
11
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
12
|
+
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
13
|
+
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
14
|
+
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
15
|
+
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
16
|
+
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
17
|
+
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
18
|
+
|
|
1
19
|
"""Test extension."""
|
|
2
20
|
|
|
3
21
|
import griffe
|
|
@@ -5,6 +5,7 @@ site_author = "Timothée Mazzucotelli"
|
|
|
5
5
|
site_url = "https://mkdocstrings.github.io/griffe-runtime-objects"
|
|
6
6
|
repo_url = "https://github.com/mkdocstrings/griffe-runtime-objects"
|
|
7
7
|
repo_name = "mkdocstrings/griffe-runtime-objects"
|
|
8
|
+
edit_uri = "edit/main/docs/"
|
|
8
9
|
copyright = "Copyright © 2024 Timothée Mazzucotelli"
|
|
9
10
|
extra_css = ["css/apidocs.css"]
|
|
10
11
|
extra_javascript = ["js/feedback.js"]
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"""griffe-runtime-objects package.
|
|
2
|
-
|
|
3
|
-
Make runtime objects available through `extra`.
|
|
4
|
-
"""
|
|
5
|
-
|
|
6
|
-
from __future__ import annotations
|
|
7
|
-
|
|
8
|
-
from griffe_runtime_objects._internal.extension import RuntimeObjectsExtension
|
|
9
|
-
|
|
10
|
-
__all__: list[str] = ["RuntimeObjectsExtension"]
|
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"""Configuration for the pytest test suite."""
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/docs/.overrides/partials/comments.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{griffe_runtime_objects-0.3.1 → griffe_runtime_objects-0.3.2}/src/griffe_runtime_objects/py.typed
RENAMED
|
File without changes
|