instant-python 0.22.0__py3-none-any.whl → 0.23.1__py3-none-any.whl
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.
- instant_python/__init__.py +1 -1
- instant_python/shared/supported_built_in_features.py +1 -0
- instant_python/templates/boilerplate/github/ci.yml +17 -17
- instant_python/templates/boilerplate/github/dependabot.yml +62 -0
- instant_python/templates/boilerplate/github/pages.yml +63 -0
- instant_python/templates/boilerplate/github/release.yml +5 -5
- instant_python/templates/boilerplate/mkdocs.yml +70 -0
- instant_python/templates/boilerplate/pyproject.toml +20 -0
- instant_python/templates/boilerplate/scripts/makefile +8 -2
- instant_python/templates/project_structure/clean_architecture/main_structure.yml +2 -1
- instant_python/templates/project_structure/documentation/documentation.yml +14 -0
- instant_python/templates/project_structure/domain_driven_design/main_structure.yml +2 -1
- instant_python/templates/project_structure/github/github_action.yml +11 -1
- instant_python/templates/project_structure/standard_project/main_structure.yml +2 -1
- {instant_python-0.22.0.dist-info → instant_python-0.23.1.dist-info}/METADATA +2 -2
- {instant_python-0.22.0.dist-info → instant_python-0.23.1.dist-info}/RECORD +19 -15
- {instant_python-0.22.0.dist-info → instant_python-0.23.1.dist-info}/WHEEL +0 -0
- {instant_python-0.22.0.dist-info → instant_python-0.23.1.dist-info}/entry_points.txt +0 -0
- {instant_python-0.22.0.dist-info → instant_python-0.23.1.dist-info}/licenses/LICENSE +0 -0
instant_python/__init__.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
__version__ = "0.
|
|
1
|
+
__version__ = "0.23.1"
|
|
@@ -15,12 +15,12 @@ jobs:
|
|
|
15
15
|
runs-on: ubuntu-latest
|
|
16
16
|
steps:
|
|
17
17
|
- name: 🛡️ Harden runner
|
|
18
|
-
uses: step-security/harden-runner@
|
|
18
|
+
uses: step-security/harden-runner@9af89fc71515a100421586dfdb3dc9c984fbf411 # v2.19.4
|
|
19
19
|
with:
|
|
20
20
|
egress-policy: audit
|
|
21
21
|
|
|
22
22
|
- name: 📥 Checkout the repository
|
|
23
|
-
uses: actions/checkout@
|
|
23
|
+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
|
24
24
|
with:
|
|
25
25
|
ref: {% raw %}${{ github.head_ref }}{% endraw %}
|
|
26
26
|
|
|
@@ -38,12 +38,12 @@ jobs:
|
|
|
38
38
|
runs-on: ubuntu-latest
|
|
39
39
|
steps:
|
|
40
40
|
- name: 🛡️ Harden runner
|
|
41
|
-
uses: step-security/harden-runner@
|
|
41
|
+
uses: step-security/harden-runner@9af89fc71515a100421586dfdb3dc9c984fbf411 # v2.19.4
|
|
42
42
|
with:
|
|
43
43
|
egress-policy: audit
|
|
44
44
|
|
|
45
45
|
- name: 📥 Checkout the repository
|
|
46
|
-
uses: actions/checkout@
|
|
46
|
+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
|
47
47
|
with:
|
|
48
48
|
ref: {% raw %}${{ github.head_ref }}{% endraw %}
|
|
49
49
|
|
|
@@ -60,12 +60,12 @@ jobs:
|
|
|
60
60
|
runs-on: ubuntu-latest
|
|
61
61
|
steps:
|
|
62
62
|
- name: 🛡️ Harden runner
|
|
63
|
-
uses: step-security/harden-runner@
|
|
63
|
+
uses: step-security/harden-runner@9af89fc71515a100421586dfdb3dc9c984fbf411 # v2.19.4
|
|
64
64
|
with:
|
|
65
65
|
egress-policy: audit
|
|
66
66
|
|
|
67
67
|
- name: 📥 Checkout the repository
|
|
68
|
-
uses: actions/checkout@
|
|
68
|
+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
|
69
69
|
with:
|
|
70
70
|
ref: {% raw %}${{ github.head_ref }}{% endraw %}
|
|
71
71
|
|
|
@@ -87,12 +87,12 @@ jobs:
|
|
|
87
87
|
|
|
88
88
|
steps:
|
|
89
89
|
- name: 🛡️ Harden runner
|
|
90
|
-
uses: step-security/harden-runner@
|
|
90
|
+
uses: step-security/harden-runner@9af89fc71515a100421586dfdb3dc9c984fbf411 # v2.19.4
|
|
91
91
|
with:
|
|
92
92
|
egress-policy: audit
|
|
93
93
|
|
|
94
94
|
- name: 📥 Checkout the repository
|
|
95
|
-
uses: actions/checkout@
|
|
95
|
+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
|
96
96
|
with:
|
|
97
97
|
ref: {% raw %}${{ github.head_ref }}{% endraw %}
|
|
98
98
|
|
|
@@ -100,7 +100,7 @@ jobs:
|
|
|
100
100
|
persist-credentials: false
|
|
101
101
|
|
|
102
102
|
- name: ▶️ CodeQL Initialization
|
|
103
|
-
uses: github/codeql-action/init@
|
|
103
|
+
uses: github/codeql-action/init@8aad20d150bbac5944a9f9d289da16a4b0d87c1e # v4.36.2
|
|
104
104
|
with:
|
|
105
105
|
languages: python
|
|
106
106
|
build-mode: none
|
|
@@ -108,7 +108,7 @@ jobs:
|
|
|
108
108
|
# config-file: ./codeql-config.yml
|
|
109
109
|
|
|
110
110
|
- name: 🧐 CodeQL Analysis
|
|
111
|
-
uses: github/codeql-action/analyze@
|
|
111
|
+
uses: github/codeql-action/analyze@8aad20d150bbac5944a9f9d289da16a4b0d87c1e # v4.36.2
|
|
112
112
|
with:
|
|
113
113
|
category: '/language:python'
|
|
114
114
|
|
|
@@ -123,12 +123,12 @@ jobs:
|
|
|
123
123
|
|
|
124
124
|
steps:
|
|
125
125
|
- name: 🛡️ Harden runner
|
|
126
|
-
uses: step-security/harden-runner@
|
|
126
|
+
uses: step-security/harden-runner@9af89fc71515a100421586dfdb3dc9c984fbf411 # v2.19.4
|
|
127
127
|
with:
|
|
128
128
|
egress-policy: audit
|
|
129
129
|
|
|
130
130
|
- name: 📥 Checkout the repository
|
|
131
|
-
uses: actions/checkout@
|
|
131
|
+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
|
132
132
|
with:
|
|
133
133
|
fetch-depth: 0
|
|
134
134
|
persist-credentials: false
|
|
@@ -148,12 +148,12 @@ jobs:
|
|
|
148
148
|
|
|
149
149
|
steps:
|
|
150
150
|
- name: 🛡️ Harden runner
|
|
151
|
-
uses: step-security/harden-runner@
|
|
151
|
+
uses: step-security/harden-runner@9af89fc71515a100421586dfdb3dc9c984fbf411 # v2.19.4
|
|
152
152
|
with:
|
|
153
153
|
egress-policy: audit
|
|
154
154
|
|
|
155
155
|
- name: 📥 Checkout the repository
|
|
156
|
-
uses: actions/checkout@
|
|
156
|
+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
|
157
157
|
with:
|
|
158
158
|
fetch-depth: 0
|
|
159
159
|
persist-credentials: false
|
|
@@ -169,12 +169,12 @@ jobs:
|
|
|
169
169
|
runs-on: ubuntu-latest
|
|
170
170
|
steps:
|
|
171
171
|
- name: 🛡️ Harden runner
|
|
172
|
-
uses: step-security/harden-runner@
|
|
172
|
+
uses: step-security/harden-runner@9af89fc71515a100421586dfdb3dc9c984fbf411 # v2.19.4
|
|
173
173
|
with:
|
|
174
174
|
egress-policy: audit
|
|
175
175
|
|
|
176
176
|
- name: 📥 Checkout the repository
|
|
177
|
-
uses: actions/checkout@
|
|
177
|
+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
|
178
178
|
with:
|
|
179
179
|
fetch-depth: 0
|
|
180
180
|
persist-credentials: false
|
|
@@ -189,7 +189,7 @@ jobs:
|
|
|
189
189
|
run: {{ general.dependency_manager }} run pytest --cov --cov-report=xml --cov-branch test -ra -s
|
|
190
190
|
|
|
191
191
|
- name: 📥 Upload coverage report to Codecov
|
|
192
|
-
uses: codecov/codecov-action@
|
|
192
|
+
uses: codecov/codecov-action@e79a6962e0d4c0c17b229090214935d2e33f8354 # v6.0.1
|
|
193
193
|
with:
|
|
194
194
|
files: coverage.xml
|
|
195
195
|
flags: unittests
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
version: 2
|
|
2
|
+
|
|
3
|
+
updates:
|
|
4
|
+
- package-ecosystem: "{{ general.dependency_manager }}"
|
|
5
|
+
directory: "/"
|
|
6
|
+
versioning-strategy: "increase"
|
|
7
|
+
open-pull-requests-limit: 5
|
|
8
|
+
commit-message:
|
|
9
|
+
prefix: "build"
|
|
10
|
+
schedule:
|
|
11
|
+
interval: "weekly"
|
|
12
|
+
day: "monday"
|
|
13
|
+
time: "06:00"
|
|
14
|
+
timezone: "Europe/Madrid"
|
|
15
|
+
cooldown:
|
|
16
|
+
semver-major-days: 90
|
|
17
|
+
semver-minor-days: 7
|
|
18
|
+
semver-patch-days: 3
|
|
19
|
+
groups:
|
|
20
|
+
development-minor-patch:
|
|
21
|
+
dependency-type: "development"
|
|
22
|
+
update-types:
|
|
23
|
+
- "minor"
|
|
24
|
+
- "patch"
|
|
25
|
+
production-minor-patch:
|
|
26
|
+
dependency-type: "production"
|
|
27
|
+
update-types:
|
|
28
|
+
- "minor"
|
|
29
|
+
- "patch"
|
|
30
|
+
|
|
31
|
+
- package-ecosystem: "github-actions"
|
|
32
|
+
directory: "/"
|
|
33
|
+
open-pull-requests-limit: 5
|
|
34
|
+
commit-message:
|
|
35
|
+
prefix: "ci"
|
|
36
|
+
schedule:
|
|
37
|
+
interval: "weekly"
|
|
38
|
+
day: "monday"
|
|
39
|
+
time: "06:00"
|
|
40
|
+
timezone: "Europe/Madrid"
|
|
41
|
+
|
|
42
|
+
- package-ecosystem: "docker"
|
|
43
|
+
directory: "/"
|
|
44
|
+
open-pull-requests-limit: 5
|
|
45
|
+
commit-message:
|
|
46
|
+
prefix: "build"
|
|
47
|
+
schedule:
|
|
48
|
+
interval: "weekly"
|
|
49
|
+
day: "monday"
|
|
50
|
+
time: "06:00"
|
|
51
|
+
timezone: "Europe/Madrid"
|
|
52
|
+
|
|
53
|
+
- package-ecosystem: "docker-compose"
|
|
54
|
+
directory: "/"
|
|
55
|
+
open-pull-requests-limit: 5
|
|
56
|
+
commit-message:
|
|
57
|
+
prefix: "build"
|
|
58
|
+
schedule:
|
|
59
|
+
interval: "weekly"
|
|
60
|
+
day: "monday"
|
|
61
|
+
time: "06:00"
|
|
62
|
+
timezone: "Europe/Madrid"
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
name: Build and Deploy Documentation to GitHub Pages
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- main
|
|
7
|
+
workflow_dispatch:
|
|
8
|
+
|
|
9
|
+
permissions:
|
|
10
|
+
contents: read
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
build:
|
|
14
|
+
name: Build documentation
|
|
15
|
+
runs-on: ubuntu-latest
|
|
16
|
+
permissions:
|
|
17
|
+
contents: read
|
|
18
|
+
|
|
19
|
+
steps:
|
|
20
|
+
- name: 🛡️ Harden runner
|
|
21
|
+
uses: step-security/harden-runner@9af89fc71515a100421586dfdb3dc9c984fbf411 # v2.19.4
|
|
22
|
+
with:
|
|
23
|
+
egress-policy: audit
|
|
24
|
+
|
|
25
|
+
- name: 📥 Checkout the repository
|
|
26
|
+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
|
27
|
+
with:
|
|
28
|
+
fetch-depth: 0
|
|
29
|
+
persist-credentials: false
|
|
30
|
+
|
|
31
|
+
- name: 🛠️ Setup environment
|
|
32
|
+
uses: ./.github/actions/python_setup
|
|
33
|
+
|
|
34
|
+
- name: 📖 Build documentation
|
|
35
|
+
run: uv run mkdocs build
|
|
36
|
+
|
|
37
|
+
- name: 📤 Upload documentation artifact
|
|
38
|
+
uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # v5
|
|
39
|
+
with:
|
|
40
|
+
path: site
|
|
41
|
+
|
|
42
|
+
deploy:
|
|
43
|
+
name: Deploy to GitHub Pages
|
|
44
|
+
needs: build
|
|
45
|
+
if: github.ref == 'refs/heads/main'
|
|
46
|
+
runs-on: ubuntu-latest
|
|
47
|
+
permissions:
|
|
48
|
+
pages: write
|
|
49
|
+
id-token: write
|
|
50
|
+
|
|
51
|
+
environment:
|
|
52
|
+
name: github-pages
|
|
53
|
+
url: ${{ steps.deployment.outputs.page_url }}
|
|
54
|
+
|
|
55
|
+
steps:
|
|
56
|
+
- name: 🛡️ Harden runner
|
|
57
|
+
uses: step-security/harden-runner@9af89fc71515a100421586dfdb3dc9c984fbf411 # v2.19.4
|
|
58
|
+
with:
|
|
59
|
+
egress-policy: audit
|
|
60
|
+
|
|
61
|
+
- name: 🚀 Deploy to GitHub Pages
|
|
62
|
+
id: deployment
|
|
63
|
+
uses: actions/deploy-pages@cd2ce8fcbc39b97be8ca5fce6e763baed58fa128 # v5
|
|
@@ -27,19 +27,19 @@ jobs:
|
|
|
27
27
|
|
|
28
28
|
steps:
|
|
29
29
|
- name: 🛡️ Harden runner
|
|
30
|
-
uses: step-security/harden-runner@
|
|
30
|
+
uses: step-security/harden-runner@9af89fc71515a100421586dfdb3dc9c984fbf411 # v2.19.4
|
|
31
31
|
with:
|
|
32
32
|
egress-policy: audit
|
|
33
33
|
|
|
34
34
|
- name: 📥 Checkout the repository
|
|
35
|
-
uses: actions/checkout@
|
|
35
|
+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
|
36
36
|
with:
|
|
37
37
|
fetch-depth: 0
|
|
38
38
|
persist-credentials: false
|
|
39
39
|
|
|
40
40
|
- name: 🔖 Create release
|
|
41
41
|
id: released
|
|
42
|
-
uses: python-semantic-release/python-semantic-release@
|
|
42
|
+
uses: python-semantic-release/python-semantic-release@350c48fcb3ffcdfd2e0a235206bc2ecea6b69df0 # v10.0.2
|
|
43
43
|
with:
|
|
44
44
|
build: true
|
|
45
45
|
push: true
|
|
@@ -72,12 +72,12 @@ jobs:
|
|
|
72
72
|
|
|
73
73
|
steps:
|
|
74
74
|
- name: 🛡️ Harden runner
|
|
75
|
-
uses: step-security/harden-runner@
|
|
75
|
+
uses: step-security/harden-runner@9af89fc71515a100421586dfdb3dc9c984fbf411 # v2.19.4
|
|
76
76
|
with:
|
|
77
77
|
egress-policy: audit
|
|
78
78
|
|
|
79
79
|
- name: 📥 Checkout the repository
|
|
80
|
-
uses: actions/checkout@
|
|
80
|
+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
|
81
81
|
with:
|
|
82
82
|
fetch-depth: 0
|
|
83
83
|
persist-credentials: false
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
site_name: {{ general.slug }}
|
|
2
|
+
site_url: https://{{ git.username }}.github.io/{{ general.slug }}/
|
|
3
|
+
site_description: >
|
|
4
|
+
{{ general.description }}
|
|
5
|
+
repo_name: {{ general.slug }}
|
|
6
|
+
repo_url: https://github.com/{{ git.username }}/{{ general.slug }}
|
|
7
|
+
docs_dir: docs/documentation
|
|
8
|
+
plugins:
|
|
9
|
+
- search
|
|
10
|
+
- tags
|
|
11
|
+
- section-index
|
|
12
|
+
extra_javascript:
|
|
13
|
+
- https://cdn.jsdelivr.net/npm/chart.js
|
|
14
|
+
markdown_extensions:
|
|
15
|
+
- admonition
|
|
16
|
+
- pymdownx.details
|
|
17
|
+
- pymdownx.superfences:
|
|
18
|
+
- attr_list:
|
|
19
|
+
- pymdownx.emoji:
|
|
20
|
+
emoji_index: !!python/name:material.extensions.emoji.twemoji
|
|
21
|
+
emoji_generator: !!python/name:material.extensions.emoji.to_svg
|
|
22
|
+
- pymdownx.highlight:
|
|
23
|
+
anchor_linenums: true
|
|
24
|
+
line_spans: __span
|
|
25
|
+
pygments_lang_class: true
|
|
26
|
+
- pymdownx.inlinehilite:
|
|
27
|
+
- pymdownx.snippets:
|
|
28
|
+
- pymdownx.superfences:
|
|
29
|
+
theme:
|
|
30
|
+
name: material
|
|
31
|
+
font:
|
|
32
|
+
text: Roboto
|
|
33
|
+
code: Roboto Mono
|
|
34
|
+
favicon: assets/favicon.svg
|
|
35
|
+
logo: assets/logo.svg
|
|
36
|
+
icon:
|
|
37
|
+
logo: logo
|
|
38
|
+
features:
|
|
39
|
+
- navigation.path
|
|
40
|
+
- navigation.instant
|
|
41
|
+
- navigation.instant.prefetch
|
|
42
|
+
- navigation.instant.progress
|
|
43
|
+
- navigation.sections
|
|
44
|
+
- navigation.indexes
|
|
45
|
+
- navigation.tracking
|
|
46
|
+
- content.code.annotate
|
|
47
|
+
- toc.follow
|
|
48
|
+
- navigation.footer
|
|
49
|
+
- navigation.top
|
|
50
|
+
- content.code.copy
|
|
51
|
+
- content.tabs.link
|
|
52
|
+
- navigation.tabs
|
|
53
|
+
- navigation.tabs.sticky
|
|
54
|
+
- search.suggest
|
|
55
|
+
- search.highlight
|
|
56
|
+
palette:
|
|
57
|
+
- scheme: slate
|
|
58
|
+
toggle:
|
|
59
|
+
icon: material/weather-sunny
|
|
60
|
+
name: Dark Mode
|
|
61
|
+
primary: '#B4BEFE'
|
|
62
|
+
accent: '#FAB387'
|
|
63
|
+
- scheme: default
|
|
64
|
+
toggle:
|
|
65
|
+
icon: material/weather-night
|
|
66
|
+
name: Light Mode
|
|
67
|
+
primary: '#B4BEFE'
|
|
68
|
+
accent: '#FAB387'
|
|
69
|
+
nav:
|
|
70
|
+
- Home: HOME.md
|
|
@@ -31,6 +31,13 @@
|
|
|
31
31
|
"pytest": ["github_actions", "makefile", "precommit_hook"],
|
|
32
32
|
"pytest-asyncio": ["async_alembic", "async_sqlalchemy"],
|
|
33
33
|
"object-mother-sindri": ["value_objects"]
|
|
34
|
+
},
|
|
35
|
+
"docs": {
|
|
36
|
+
"mkdocs": ["custom_documentation"],
|
|
37
|
+
"mkdocs-literate-nav": ["custom_documentation"],
|
|
38
|
+
"mkdocs-macros-plugin": ["custom_documentation"],
|
|
39
|
+
"mkdocs-material": ["custom_documentation"],
|
|
40
|
+
"mkdocs-section-index": ["custom_documentation"]
|
|
34
41
|
}
|
|
35
42
|
} %}
|
|
36
43
|
{% macro get_dev_group_dependencies(group_name) -%}
|
|
@@ -48,6 +55,7 @@
|
|
|
48
55
|
{% set release_deps = get_dev_group_dependencies("release") %}
|
|
49
56
|
{% set lint_deps = get_dev_group_dependencies("lint") %}
|
|
50
57
|
{% set test_deps = get_dev_group_dependencies("test") %}
|
|
58
|
+
{% set docs_deps = get_dev_group_dependencies("docs") %}
|
|
51
59
|
[project]
|
|
52
60
|
name = "{{ general.slug }}"
|
|
53
61
|
version = "{{ general.version }}"
|
|
@@ -75,6 +83,9 @@ dev = [
|
|
|
75
83
|
{% if test_deps.strip() %}
|
|
76
84
|
{include-group = "test"},
|
|
77
85
|
{% endif %}
|
|
86
|
+
{% if docs_deps.strip() %}
|
|
87
|
+
{include-group = "docs"},
|
|
88
|
+
{% endif %}
|
|
78
89
|
]
|
|
79
90
|
{% if release_deps.strip() %}
|
|
80
91
|
release = [
|
|
@@ -88,6 +99,15 @@ lint = [
|
|
|
88
99
|
test = [
|
|
89
100
|
{{ test_deps }}]
|
|
90
101
|
{% endif %}
|
|
102
|
+
{% if docs_deps.strip() %}
|
|
103
|
+
docs = [
|
|
104
|
+
{{ docs_deps }}]
|
|
105
|
+
{% endif %}
|
|
106
|
+
{% endif %}
|
|
107
|
+
|
|
108
|
+
{% if general.dependency_manager == "uv" %}
|
|
109
|
+
[tool.uv]
|
|
110
|
+
exclude-newer = "3 days"
|
|
91
111
|
{% endif %}
|
|
92
112
|
|
|
93
113
|
{% if dependencies | has_dependency("ruff") or has_github_actions_or_makefile %}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
{% set has_pre_commit_hooks = "precommit_hook" in template.built_in_features %}
|
|
4
4
|
{% set has_github_actions_or_makefile = ["github_actions", "makefile"] | is_in(template.built_in_features) %}
|
|
5
5
|
{% set has_agents = "ai_agents" in template.built_in_features %}
|
|
6
|
+
{% set has_custom_docs = "custom_docs" in template.built_in_features %}
|
|
6
7
|
.DEFAULT_GOAL := help
|
|
7
8
|
|
|
8
9
|
.PHONY: help
|
|
@@ -31,7 +32,8 @@ install: ## Install dependencies.
|
|
|
31
32
|
update: ## Update dependencies.
|
|
32
33
|
@echo "⌛ Updating dependencies...\n"
|
|
33
34
|
{% if has_uv %}
|
|
34
|
-
@uv
|
|
35
|
+
@uv lock --upgrade
|
|
36
|
+
@uv sync --all-groups
|
|
35
37
|
{% elif has_pdm %}
|
|
36
38
|
@pdm update
|
|
37
39
|
{% endif %}
|
|
@@ -183,7 +185,6 @@ search: ## Show package details.
|
|
|
183
185
|
{% elif has_uv %}
|
|
184
186
|
@uv pip show $$package
|
|
185
187
|
{% endif %}
|
|
186
|
-
|
|
187
188
|
{% if has_agents %}
|
|
188
189
|
.PHONY: claude
|
|
189
190
|
claude: ## Create symlinks for Claude Code compatibility (CLAUDE.md → AGENTS.md, .claude → .agents).
|
|
@@ -200,4 +201,9 @@ opencode: ## Create symlinks for OpenCode compatibility.
|
|
|
200
201
|
@ln -s ../.agents/commands .opencode/commands
|
|
201
202
|
@ls -la .opencode
|
|
202
203
|
|
|
204
|
+
{% endif %}
|
|
205
|
+
{% if has_custom_docs %}
|
|
206
|
+
.PHONY: docs-serve
|
|
207
|
+
docs-serve: ## Start server for documentation.
|
|
208
|
+
@uv run mkdocs serve
|
|
203
209
|
{% endif %}
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
{# === Documentation and Metadata === #}
|
|
33
33
|
{% set doc_features = [
|
|
34
34
|
{"feature": "citation_file", "template": "documentation/citation.yml"},
|
|
35
|
-
{"feature": "security_file", "template": "documentation/security.yml"}
|
|
35
|
+
{"feature": "security_file", "template": "documentation/security.yml"},
|
|
36
|
+
{"feature": "custom_documentation", "template": "documentation/documentation.yml"}
|
|
36
37
|
] %}
|
|
37
38
|
{{ macros.render_features(doc_features, 0) }}
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
{# === Documentation and Metadata === #}
|
|
33
33
|
{% set doc_features = [
|
|
34
34
|
{"feature": "citation_file", "template": "documentation/citation.yml"},
|
|
35
|
-
{"feature": "security_file", "template": "documentation/security.yml"}
|
|
35
|
+
{"feature": "security_file", "template": "documentation/security.yml"},
|
|
36
|
+
{ "feature": "custom_documentation", "template": "documentation/documentation.yml" }
|
|
36
37
|
] %}
|
|
37
38
|
{{ macros.render_features(doc_features, 0) }}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
- name: .github
|
|
2
2
|
type: directory
|
|
3
3
|
children:
|
|
4
|
+
- name: dependabot
|
|
5
|
+
type: file
|
|
6
|
+
extension: .yml
|
|
7
|
+
template: github/dependabot.yml
|
|
4
8
|
- name: actions
|
|
5
9
|
type: directory
|
|
6
10
|
children:
|
|
@@ -21,4 +25,10 @@
|
|
|
21
25
|
- name: release
|
|
22
26
|
type: file
|
|
23
27
|
extension: .yml
|
|
24
|
-
template: github/release.yml
|
|
28
|
+
template: github/release.yml
|
|
29
|
+
{% if ["custom_documentation"] | is_in(template.built_in_features) %}
|
|
30
|
+
- name: documentation
|
|
31
|
+
type: file
|
|
32
|
+
extension: .yml
|
|
33
|
+
template: github/pages.yml
|
|
34
|
+
{% endif %}
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
{# === Documentation and Metadata === #}
|
|
33
33
|
{% set doc_features = [
|
|
34
34
|
{"feature": "citation_file", "template": "documentation/citation.yml"},
|
|
35
|
-
{"feature": "security_file", "template": "documentation/security.yml"}
|
|
35
|
+
{"feature": "security_file", "template": "documentation/security.yml"},
|
|
36
|
+
{ "feature": "custom_documentation", "template": "documentation/documentation.yml" }
|
|
36
37
|
] %}
|
|
37
38
|
{{ macros.render_features(doc_features, 0) }}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: instant-python
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.23.1
|
|
4
4
|
Summary: Instant boilerplate generation for Python projects
|
|
5
5
|
Project-URL: documentation, https://dimanu-py.github.io/instant-python/
|
|
6
6
|
Project-URL: repository, https://github.com/dimanu-py/instant-python/
|
|
@@ -218,7 +218,7 @@ Classifier: Topic :: Software Development :: Libraries
|
|
|
218
218
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
219
219
|
Classifier: Topic :: System :: Installation/Setup
|
|
220
220
|
Classifier: Topic :: System :: Shells
|
|
221
|
-
Requires-Python: >=3.
|
|
221
|
+
Requires-Python: >=3.10
|
|
222
222
|
Requires-Dist: click>=8.1.0
|
|
223
223
|
Requires-Dist: jinja2>=3.1.6
|
|
224
224
|
Requires-Dist: platformdirs>=4.4.0
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
instant_python/__init__.py,sha256=
|
|
1
|
+
instant_python/__init__.py,sha256=EmtVqV41YmZp6Mj5pkm4iGXDMznVEE4GQEUYGGidq30,23
|
|
2
2
|
instant_python/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
3
|
instant_python/cli/cli.py,sha256=JJBJ48YFf7mwjyGjZLSZBzBVDF6syEt5B2n-hkQR1lg,1618
|
|
4
4
|
instant_python/cli/instant_python_typer.py,sha256=jVk2VV8O4WHbyVGGn56D8Id-oo03KriwfmxgPTQOdy4,1230
|
|
@@ -64,7 +64,7 @@ instant_python/metrics/infra/post_hog_metrics_reporter.py,sha256=PWT807a_rhB0u9a
|
|
|
64
64
|
instant_python/metrics/infra/user_identity_manager.py,sha256=-gsqMUDjFaiaIXX630j6WY8gvFJHLOWtez4ewf869Pc,1750
|
|
65
65
|
instant_python/shared/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
66
66
|
instant_python/shared/application_error.py,sha256=SwiOXMf5U9JCKxe9Jz0yQM5WKt72NP_CQdaJCKDgvaY,227
|
|
67
|
-
instant_python/shared/supported_built_in_features.py,sha256=
|
|
67
|
+
instant_python/shared/supported_built_in_features.py,sha256=eaJnKB1_S6jXR1Sr5gUmikqUubKTinvycT3FTfHLjlA,669
|
|
68
68
|
instant_python/shared/supported_licenses.py,sha256=VXZqm4wNNVw9wBjRTpGBI8ell8_HmAJNV4gH5EEUsvs,232
|
|
69
69
|
instant_python/shared/supported_managers.py,sha256=jydeepM5ouZOyl5JRFh3E65lj8hZyaGvGH0ch3Nq3qE,208
|
|
70
70
|
instant_python/shared/supported_python_versions.py,sha256=KTtD8Cu7zJiLW_9C6quWCR_ft7aKxapRpyF90mhWgOc,284
|
|
@@ -86,8 +86,9 @@ instant_python/templates/boilerplate/CITATION.cff,sha256=m1fHRwEfq7HvL9uMJ8H1sPk
|
|
|
86
86
|
instant_python/templates/boilerplate/LICENSE,sha256=wzw1JFV1qGbnRMfokpku4CO4ZKvtreFsyIksljC7hLI,47428
|
|
87
87
|
instant_python/templates/boilerplate/README.md,sha256=qlaO6Tnd8k0A_ccRNVI8yt5Vn1dQP6AwxW_WH80P8Is,238
|
|
88
88
|
instant_python/templates/boilerplate/SECURITY.md,sha256=l2T8a7mcV3PUs1vloUDqFXlRXKseInsT_nR71wlLvGo,2024
|
|
89
|
+
instant_python/templates/boilerplate/mkdocs.yml,sha256=WOp2M_SWQAoyEMhTCZhg7loi4MuuqkFkXAb6GicoEjM,1727
|
|
89
90
|
instant_python/templates/boilerplate/mypy.ini,sha256=unPeeeN5XStcdwqobdxtHsPj-Ru1NWPyZ5WF4PbQqik,889
|
|
90
|
-
instant_python/templates/boilerplate/pyproject.toml,sha256=
|
|
91
|
+
instant_python/templates/boilerplate/pyproject.toml,sha256=qQCCtwSoMlkERpG18i15FP4uAE9KxLIVQ-W8KxLqoqk,5531
|
|
91
92
|
instant_python/templates/boilerplate/agents/AGENTS.md,sha256=tpmTcRFxfGKUwlHERUldQMOhWEZKANJMD-vOeyFILao,13109
|
|
92
93
|
instant_python/templates/boilerplate/agents/adr-guidelines.md,sha256=KRCz48YJKzbUy2d0xW_JB13qas9qz3v7yE-KyxqTud0,1655
|
|
93
94
|
instant_python/templates/boilerplate/agents/design-doc-guidelines.md,sha256=f-j-WsNsdW2jpz4YicrvnvAboGS4mr1d2dFciBwjzk0,4194
|
|
@@ -139,9 +140,11 @@ instant_python/templates/boilerplate/fastapi/lifespan.py,sha256=AGiueYWbr4cLZtGM
|
|
|
139
140
|
instant_python/templates/boilerplate/fastapi/success_response.py,sha256=3K-Xw-fRV0Z9S2p1Oi201pwvhDsA5JL35WwBTfwyFUA,259
|
|
140
141
|
instant_python/templates/boilerplate/github/action.yml,sha256=orPXW0IIasWJDe3KZelFoITILKDPqRTYFC3WWOXQGa8,1036
|
|
141
142
|
instant_python/templates/boilerplate/github/bug_report.yml,sha256=DQ1OkBkQa2YNxXg2d7uPW1FI2sA_QZQH2E7Ju9tyi_g,1613
|
|
142
|
-
instant_python/templates/boilerplate/github/ci.yml,sha256=
|
|
143
|
+
instant_python/templates/boilerplate/github/ci.yml,sha256=8LDnASJNCzghLFYCF6pkwTj_CfdYuCn_QLnw2pwtLx0,5705
|
|
144
|
+
instant_python/templates/boilerplate/github/dependabot.yml,sha256=HAsP84i9tXJKpmnYOHpUkmBQDPyBOhI_r5wvx1qdVGM,1414
|
|
143
145
|
instant_python/templates/boilerplate/github/feature_request.yml,sha256=Au116oHxO-julX2wJyNHbteTWKq68ulo2F45UakJppk,758
|
|
144
|
-
instant_python/templates/boilerplate/github/
|
|
146
|
+
instant_python/templates/boilerplate/github/pages.yml,sha256=ZJzpyreZY8EjqCoOySt5TdB43bLhHCX9qbCJQUOXAYQ,1592
|
|
147
|
+
instant_python/templates/boilerplate/github/release.yml,sha256=QcdeEos2r1bIApD1rRH52Mi481GW_rDHdswrs3xa8vQ,3409
|
|
145
148
|
instant_python/templates/boilerplate/logger/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
146
149
|
instant_python/templates/boilerplate/logger/file_logger.py,sha256=LqpdnKYcVjTDZPBeGU8saLw9QEj3cBRoiTg1imzJ5Rc,1329
|
|
147
150
|
instant_python/templates/boilerplate/logger/file_rotating_handler.py,sha256=5ZY98_zNbGyAVngJY-Qo7p1TM-CWwNEO9C6ctKVCbNc,1197
|
|
@@ -167,7 +170,7 @@ instant_python/templates/boilerplate/scripts/create_aggregate.py,sha256=dgMCAtJE
|
|
|
167
170
|
instant_python/templates/boilerplate/scripts/insert_template.py,sha256=RFRZcKP6sEQ2nDCXyxDAg-N4qkUd7f952WfFV2bG_Ok,4264
|
|
168
171
|
instant_python/templates/boilerplate/scripts/integration.sh,sha256=bQe0acRChPrdBqzeEIviZezfZxlt8CeibHj1QXjLyZE,972
|
|
169
172
|
instant_python/templates/boilerplate/scripts/local_setup.py,sha256=oVUkqwudgzlI6AjTCf5eWLkvL4v0yAjFiz_xXhD2fY8,250
|
|
170
|
-
instant_python/templates/boilerplate/scripts/makefile,sha256=
|
|
173
|
+
instant_python/templates/boilerplate/scripts/makefile,sha256=1amy8PtvRyAQ_Hhm_Y9LYS7hv80kMyUUzDxXqq4jq-8,6703
|
|
171
174
|
instant_python/templates/boilerplate/scripts/post-merge.py,sha256=b0Be5pbZi34ZvlCWpVM0VrqrFqlMPkXBfPdQslEwsVA,916
|
|
172
175
|
instant_python/templates/boilerplate/scripts/pre-commit.py,sha256=juV42m6haVvbBSTB-R0bIDJqkEzj2S3JeciAb6Xieqk,278
|
|
173
176
|
instant_python/templates/boilerplate/scripts/pre-push.py,sha256=2UpPIkPTnwO8UusCAij18JSSzYArrYBqFEQWjaXG1Po,50
|
|
@@ -177,7 +180,7 @@ instant_python/templates/project_structure/errors.yml,sha256=3NJqG36F0yD-90NjyIO
|
|
|
177
180
|
instant_python/templates/project_structure/logger.yml,sha256=-79x1UA30407BDTi-hE1eeXVnY8PKllan4c8ENudKfY,385
|
|
178
181
|
instant_python/templates/project_structure/macros.j2,sha256=H2FN9abT3KRbiVzwPGn1Gw24NCroOcZOwUlCb7xRQ2k,2186
|
|
179
182
|
instant_python/templates/project_structure/agents/agents.yml,sha256=KsX3WAg-6Xt7MnQP9POJq1Llhf9K-8EszTdQ5D7Dl5M,3894
|
|
180
|
-
instant_python/templates/project_structure/clean_architecture/main_structure.yml,sha256=
|
|
183
|
+
instant_python/templates/project_structure/clean_architecture/main_structure.yml,sha256=aFJ-TOKhpexOJOEbviReVn_TMUyBkR-WmXTdvGddwCQ,1915
|
|
181
184
|
instant_python/templates/project_structure/clean_architecture/source.yml,sha256=trZVgOSQGw1BbBmr8cybS3hqyKuZl2iS8HpELPxrr0Q,412
|
|
182
185
|
instant_python/templates/project_structure/clean_architecture/test.yml,sha256=wzZJGXIQAre_qjJMtG2XLWkmRQ_Ko21_7gzToTgKsaY,411
|
|
183
186
|
instant_python/templates/project_structure/clean_architecture/layers/application.yml,sha256=vHlWg9bAxOzX60b0FIT2kflf5pO9OOEUmdA3sx1RrD8,52
|
|
@@ -193,10 +196,11 @@ instant_python/templates/project_structure/config_files/mypy.yml,sha256=rR4YM1OI
|
|
|
193
196
|
instant_python/templates/project_structure/config_files/pyproject.yml,sha256=3FS5TJEVGvOGhHcSchyaCrBJi33WoPX6XjGs1z38uQc,76
|
|
194
197
|
instant_python/templates/project_structure/config_files/python_version.yml,sha256=j4lqB133YclIhEerbDkHgoxfOrb1A1q9HLdGTzCdn2Y,64
|
|
195
198
|
instant_python/templates/project_structure/documentation/citation.yml,sha256=Rex9-hKT2UbHRt6hpVJogHllpj7asv1jtCIYue9S9J8,72
|
|
199
|
+
instant_python/templates/project_structure/documentation/documentation.yml,sha256=y4IxtCcR9pdBA80gFnciEuCjFnzX0xDqokKkLFN2EMQ,272
|
|
196
200
|
instant_python/templates/project_structure/documentation/license.yml,sha256=A5AF9NMnvJJfYDNxJF-AnF01tl-me3udHi7o7evc11A,48
|
|
197
201
|
instant_python/templates/project_structure/documentation/readme.yml,sha256=TEqP87Zi7LoE2l27dq6YfG48zRMOMf7ROzBpwZ6Jumo,66
|
|
198
202
|
instant_python/templates/project_structure/documentation/security.yml,sha256=QblZ53mNDpL0WjP774fZyuBz_ngYmKrLx_71THyuvIo,70
|
|
199
|
-
instant_python/templates/project_structure/domain_driven_design/main_structure.yml,sha256=
|
|
203
|
+
instant_python/templates/project_structure/domain_driven_design/main_structure.yml,sha256=AokUYibD2790AppJaSfr-FPHmB8PyXLZLsWlRCGgkHM,1921
|
|
200
204
|
instant_python/templates/project_structure/domain_driven_design/source.yml,sha256=faUxuK1Bc-Yb51vS8b2C72CypaQ9xU8k5RbyeP6-Crc,409
|
|
201
205
|
instant_python/templates/project_structure/domain_driven_design/test.yml,sha256=qJSKUN5sfAQcuqaHfXdS5WE2-zqeUgJDTU6Uky7YXss,319
|
|
202
206
|
instant_python/templates/project_structure/domain_driven_design/layers/bounded_context.yml,sha256=vKYCZ3bplbxrwX0wtZfUuofKZJQeFh7zFLNOZCFGgGc,411
|
|
@@ -214,7 +218,7 @@ instant_python/templates/project_structure/events/mock_event_bus.yml,sha256=oF72
|
|
|
214
218
|
instant_python/templates/project_structure/fastapi/fastapi_app.yml,sha256=BTfI7u3XodVgZ1EG_KJvQgrhrbJNWXQXnGaum21qfrs,816
|
|
215
219
|
instant_python/templates/project_structure/fastapi/fastapi_domain.yml,sha256=2LHimbtLC8864Kq0L1l4pag3L6K5Lwy-CuENC5qfNnk,267
|
|
216
220
|
instant_python/templates/project_structure/fastapi/fastapi_infra.yml,sha256=o8b2FDbWKfMzbJYXlY9hkG7LAJiMvmxCqMozm69dHsM,275
|
|
217
|
-
instant_python/templates/project_structure/github/github_action.yml,sha256=
|
|
221
|
+
instant_python/templates/project_structure/github/github_action.yml,sha256=LLu2-JVjfkCKCSHCTLcOSweMpQB2pAhHN9Shioh6cvk,880
|
|
218
222
|
instant_python/templates/project_structure/github/github_issues_template.yml,sha256=Td2oQLBPJGdzTIn2u3s9yZghBOqsV7q04UrKHI4Tk1Q,352
|
|
219
223
|
instant_python/templates/project_structure/github/makefile.yml,sha256=cZWsfa5G6it6cPSvnWhA0__p_DIQJ_TAXHSBDRSHits,58
|
|
220
224
|
instant_python/templates/project_structure/github/precommit_hook.yml,sha256=7tzyvazoX7q63EdFxiXZvZfrqgVH-Dn71t7K4qpKrDk,94
|
|
@@ -224,14 +228,14 @@ instant_python/templates/project_structure/persistence/async_engine_conftest.yml
|
|
|
224
228
|
instant_python/templates/project_structure/persistence/async_sqlalchemy.yml,sha256=DDFRL-76aWuJwjjhZbaX0HfKWx0SsTxTH4TzAj4F6EA,426
|
|
225
229
|
instant_python/templates/project_structure/persistence/persistence.yml,sha256=06cshBctKQxb-NmsyLuzNUaC-EQYAJF2PJX8bHUWQMM,187
|
|
226
230
|
instant_python/templates/project_structure/persistence/synchronous_sqlalchemy.yml,sha256=KtdeZTGaWaOyY_T7iEDqtUaJo_7R1pbI9jwfcZ4_y60,541
|
|
227
|
-
instant_python/templates/project_structure/standard_project/main_structure.yml,sha256=
|
|
231
|
+
instant_python/templates/project_structure/standard_project/main_structure.yml,sha256=CJssyjO0fBB1lEuF2ZFb2l2VIX7dJP5-PvQ44iaDs1U,1913
|
|
228
232
|
instant_python/templates/project_structure/standard_project/source.yml,sha256=9mGkOLZnla08wKtZ_VM36ax5pdlElIC8GvbTZyB5HzA,191
|
|
229
233
|
instant_python/templates/project_structure/standard_project/test.yml,sha256=k5dExCUC0wW_5vnOPBziRI1FWtM8wRomlsmmifXZrsY,168
|
|
230
234
|
instant_python/templates/project_structure/standard_project/layers/source_features.yml,sha256=iVFOa5juIaiZObznHuSFoBCQXWwlDdX3UcO9GfBMAH4,781
|
|
231
235
|
instant_python/templates/project_structure/standard_project/layers/test_event_bus.yml,sha256=81fC2jIvK-0bLOIDSRi2Uab3dXigfjiEk6xT8PbzP0w,165
|
|
232
236
|
instant_python/templates/project_structure/standard_project/layers/test_features.yml,sha256=MfyuXbdF2K8zCXdDYRYTqDnWQ0_kkE1XeEfJVio_ALs,302
|
|
233
|
-
instant_python-0.
|
|
234
|
-
instant_python-0.
|
|
235
|
-
instant_python-0.
|
|
236
|
-
instant_python-0.
|
|
237
|
-
instant_python-0.
|
|
237
|
+
instant_python-0.23.1.dist-info/METADATA,sha256=3i16nt8Nv7sEB53Nzvq1reEZ2Lr74sfX_2SDFFKC8T0,19801
|
|
238
|
+
instant_python-0.23.1.dist-info/WHEEL,sha256=mffPy8wBnZQn2VnJUU5jE99KsxaSfiyMHV9Yt0aLVxs,87
|
|
239
|
+
instant_python-0.23.1.dist-info/entry_points.txt,sha256=M8YUHQaTszBM3np_x9j7wmc1ngrmpfrd4ajBv2EzQuk,51
|
|
240
|
+
instant_python-0.23.1.dist-info/licenses/LICENSE,sha256=kf7wA-1IsqXkzXjlsG95sdQJtsqUON_lNXombfPlklo,11353
|
|
241
|
+
instant_python-0.23.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|