django-dynamic-admin-forms 3.2.9__tar.gz → 3.2.10__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.
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/.ambient-package-update/metadata.py +1 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/.github/workflows/ci.yml +12 -10
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/.gitignore +4 -1
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/.pre-commit-config.yaml +7 -7
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/.readthedocs.yaml +1 -1
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/CHANGES.md +3 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/CONTRIBUTING.md +4 -6
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/PKG-INFO +62 -41
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/README.md +29 -15
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/django_dynamic_admin_forms/__init__.py +1 -1
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/docs/conf.py +0 -1
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/manage.py +1 -1
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/pyproject.toml +49 -42
- django_dynamic_admin_forms-3.2.10/scripts/unix/install_requirements.sh +3 -0
- django_dynamic_admin_forms-3.2.10/scripts/unix/publish_to_pypi.sh +4 -0
- django_dynamic_admin_forms-3.2.10/scripts/windows/install_requirements.ps1 +2 -0
- django_dynamic_admin_forms-3.2.10/scripts/windows/publish_to_pypi.ps1 +3 -0
- django_dynamic_admin_forms-3.2.10/uv.lock +1008 -0
- django_dynamic_admin_forms-3.2.9/scripts/unix/install_requirements.sh +0 -4
- django_dynamic_admin_forms-3.2.9/scripts/unix/publish_to_pypi.sh +0 -3
- django_dynamic_admin_forms-3.2.9/scripts/windows/install_requirements.ps1 +0 -3
- django_dynamic_admin_forms-3.2.9/scripts/windows/publish_to_pypi.ps1 +0 -2
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/.ambient-package-update/templates/snippets/content.tpl +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/.ambient-package-update/templates/snippets/installation.tpl +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/.editorconfig +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/.python-version +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/LICENSE.md +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/MANIFEST.in +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/SECURITY.md +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/django_dynamic_admin_forms/admin.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/django_dynamic_admin_forms/apps.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/django_dynamic_admin_forms/static/js/dynamic_admin.js +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/django_dynamic_admin_forms/templates/admin/change_form.html +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/django_dynamic_admin_forms/urls.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/docs/Makefile +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/docs/demo.gif +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/docs/features/changelog.rst +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/docs/index.rst +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/docs/make.bat +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/e2e/cypress/integration/dynamic-select.spec.js +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/e2e/cypress/plugins/index.js +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/e2e/cypress/support/commands.js +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/e2e/cypress/support/index.js +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/e2e/cypress/support/paths.js +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/e2e/cypress.json +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/e2e/package.json +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/e2e/yarn.lock +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/fixtures/fixtures-dev.json +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/settings.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/testapp/__init__.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/testapp/admin.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/testapp/apps.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/testapp/migrations/0001_initial.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/testapp/migrations/0002_extend_example.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/testapp/migrations/0003_example_file_field.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/testapp/migrations/__init__.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/testapp/models.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/testapp/urls.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/tests/__init__.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/tests/test_admin_generic.py +0 -0
- {django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/tests/test_admin_unit.py +0 -0
|
@@ -29,6 +29,7 @@ METADATA = PackageMetadata(
|
|
|
29
29
|
development_status="5 - Production/Stable",
|
|
30
30
|
has_migrations=False,
|
|
31
31
|
main_branch="main",
|
|
32
|
+
claim="Add simple dynamic interaction to the otherwise static django admin.",
|
|
32
33
|
readme_content=ReadmeContent(
|
|
33
34
|
tagline="Add simple interactions to the otherwise static django admin.",
|
|
34
35
|
),
|
{django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/.github/workflows/ci.yml
RENAMED
|
@@ -12,10 +12,10 @@ jobs:
|
|
|
12
12
|
steps:
|
|
13
13
|
- uses: actions/checkout@v4
|
|
14
14
|
|
|
15
|
-
- name: Set up Python 3.
|
|
15
|
+
- name: Set up Python 3.13
|
|
16
16
|
uses: actions/setup-python@v5
|
|
17
17
|
with:
|
|
18
|
-
python-version: "3.
|
|
18
|
+
python-version: "3.13"
|
|
19
19
|
|
|
20
20
|
- name: Install required packages
|
|
21
21
|
run: pip install pre-commit
|
|
@@ -23,13 +23,12 @@ jobs:
|
|
|
23
23
|
- name: Run pre-commit hooks
|
|
24
24
|
run: pre-commit run --all-files
|
|
25
25
|
|
|
26
|
-
|
|
27
26
|
tests:
|
|
28
27
|
name: Python ${{ matrix.python-version }}, django ${{ matrix.django-version }}
|
|
29
28
|
runs-on: ubuntu-24.04
|
|
30
29
|
strategy:
|
|
31
30
|
matrix:
|
|
32
|
-
python-version: ['3.
|
|
31
|
+
python-version: ['3.10', '3.11', '3.12', '3.13', '3.14', ]
|
|
33
32
|
django-version: ['42', '51', '52', ]
|
|
34
33
|
|
|
35
34
|
exclude:
|
|
@@ -46,8 +45,10 @@ jobs:
|
|
|
46
45
|
uses: actions/setup-python@v5
|
|
47
46
|
with:
|
|
48
47
|
python-version: ${{ matrix.python-version }}
|
|
48
|
+
- name: Install uv
|
|
49
|
+
uses: astral-sh/setup-uv@v5
|
|
49
50
|
- name: Install tox
|
|
50
|
-
run: pip install tox
|
|
51
|
+
run: uv pip install --system tox tox-uv
|
|
51
52
|
- name: Run Tests
|
|
52
53
|
env:
|
|
53
54
|
TOXENV: django${{ matrix.django-version }}
|
|
@@ -56,7 +57,7 @@ jobs:
|
|
|
56
57
|
uses: actions/upload-artifact@v4
|
|
57
58
|
with:
|
|
58
59
|
name: coverage-data-${{ matrix.python-version }}-${{ matrix.django-version }}
|
|
59
|
-
path: '${{ github.workspace }}/.coverage
|
|
60
|
+
path: '${{ github.workspace }}/.coverage'
|
|
60
61
|
include-hidden-files: true
|
|
61
62
|
if-no-files-found: error
|
|
62
63
|
|
|
@@ -69,7 +70,7 @@ jobs:
|
|
|
69
70
|
|
|
70
71
|
- uses: actions/setup-python@v5
|
|
71
72
|
with:
|
|
72
|
-
python-version: '3.
|
|
73
|
+
python-version: '3.13'
|
|
73
74
|
|
|
74
75
|
- name: Install dependencies
|
|
75
76
|
run: python -m pip install --upgrade coverage[toml]
|
|
@@ -77,13 +78,14 @@ jobs:
|
|
|
77
78
|
- name: Download data
|
|
78
79
|
uses: actions/download-artifact@v4
|
|
79
80
|
with:
|
|
80
|
-
path: ${{ github.workspace }}
|
|
81
|
+
path: ${{ github.workspace }}/coverage-reports
|
|
81
82
|
pattern: coverage-data-*
|
|
82
|
-
merge-multiple:
|
|
83
|
+
merge-multiple: false
|
|
83
84
|
|
|
84
85
|
- name: Combine coverage and fail if it's <100.0%
|
|
85
86
|
run: |
|
|
86
|
-
python -m coverage combine
|
|
87
|
+
python -m coverage combine coverage-reports/*/.coverage
|
|
88
|
+
python -m coverage xml
|
|
87
89
|
python -m coverage html --skip-covered --skip-empty
|
|
88
90
|
python -m coverage report --fail-under=100.0
|
|
89
91
|
echo "## Coverage summary" >> $GITHUB_STEP_SUMMARY
|
|
@@ -140,7 +140,7 @@ cython_debug/
|
|
|
140
140
|
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
|
|
141
141
|
.idea/
|
|
142
142
|
|
|
143
|
-
#
|
|
143
|
+
# Deprecated dependency files
|
|
144
144
|
requirements.txt
|
|
145
145
|
|
|
146
146
|
# sphinx build folder
|
|
@@ -156,3 +156,6 @@ _build
|
|
|
156
156
|
|
|
157
157
|
# Test databases
|
|
158
158
|
*.sqlite
|
|
159
|
+
|
|
160
|
+
# AI
|
|
161
|
+
.claude/
|
{django_dynamic_admin_forms-3.2.9 → django_dynamic_admin_forms-3.2.10}/.pre-commit-config.yaml
RENAMED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
repos:
|
|
5
5
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
6
|
-
rev: v0.
|
|
6
|
+
rev: v0.14.0
|
|
7
7
|
hooks:
|
|
8
8
|
# Run the Ruff formatter.
|
|
9
9
|
- id: ruff-format
|
|
@@ -12,27 +12,27 @@ repos:
|
|
|
12
12
|
args: [--fix, --exit-non-zero-on-fix]
|
|
13
13
|
|
|
14
14
|
- repo: https://github.com/adamchainz/blacken-docs
|
|
15
|
-
rev: 1.
|
|
15
|
+
rev: 1.20.0
|
|
16
16
|
hooks:
|
|
17
17
|
- id: blacken-docs
|
|
18
18
|
additional_dependencies:
|
|
19
|
-
- black==25.
|
|
19
|
+
- black==25.9.0
|
|
20
20
|
files: '(?:README\.md|\.ambient-package-update\/templates\/snippets\/.*\.tpl|docs\/.*\.(?:md|rst))'
|
|
21
21
|
|
|
22
22
|
- repo: https://github.com/asottile/pyupgrade
|
|
23
23
|
rev: v3.20.0
|
|
24
24
|
hooks:
|
|
25
25
|
- id: pyupgrade
|
|
26
|
-
args: [ --
|
|
26
|
+
args: [ --py310-plus ]
|
|
27
27
|
|
|
28
28
|
- repo: https://github.com/adamchainz/django-upgrade
|
|
29
|
-
rev: 1.
|
|
29
|
+
rev: 1.29.0
|
|
30
30
|
hooks:
|
|
31
31
|
- id: django-upgrade
|
|
32
32
|
args: [--target-version, "4.2"]
|
|
33
33
|
|
|
34
34
|
- repo: https://github.com/adamchainz/djade-pre-commit
|
|
35
|
-
rev: 1.
|
|
35
|
+
rev: 1.6.0
|
|
36
36
|
hooks:
|
|
37
37
|
- id: djade
|
|
38
38
|
args: [--target-version, "4.2"]
|
|
@@ -43,7 +43,7 @@ repos:
|
|
|
43
43
|
)$
|
|
44
44
|
|
|
45
45
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
46
|
-
rev:
|
|
46
|
+
rev: v6.0.0
|
|
47
47
|
hooks:
|
|
48
48
|
- id: check-ast
|
|
49
49
|
- id: check-builtin-literals
|
|
@@ -3,9 +3,8 @@
|
|
|
3
3
|
## Setup package for development
|
|
4
4
|
|
|
5
5
|
- Create a Python virtualenv and activate it
|
|
6
|
-
- Install "
|
|
7
|
-
-
|
|
8
|
-
- Sync the dependencies with your virtualenv with `pip-sync`
|
|
6
|
+
- Install "uv" with `pip install -U uv`
|
|
7
|
+
- Sync the requirements with `uv sync --frozen --group dev`
|
|
9
8
|
|
|
10
9
|
## Add functionality
|
|
11
10
|
|
|
@@ -58,7 +57,6 @@ Example: run all hooks of pre-push stage
|
|
|
58
57
|
- To build the documentation, run: `sphinx-build docs/ docs/_build/html/`.
|
|
59
58
|
- Open `docs/_build/html/index.html` to see the documentation.
|
|
60
59
|
|
|
61
|
-
|
|
62
60
|
### Translation files
|
|
63
61
|
|
|
64
62
|
If you have added custom text, make sure to wrap it in `_()` where `_` is
|
|
@@ -66,12 +64,12 @@ gettext_lazy (`from django.utils.translation import gettext_lazy as _`).
|
|
|
66
64
|
|
|
67
65
|
How to create translation file:
|
|
68
66
|
|
|
69
|
-
* Navigate to `
|
|
67
|
+
* Navigate to `django_dynamic_admin_forms`
|
|
70
68
|
* `python manage.py makemessages -l de`
|
|
71
69
|
* Have a look at the new/changed files within `django_dynamic_admin_forms/locale`
|
|
72
70
|
|
|
73
71
|
How to compile translation files:
|
|
74
72
|
|
|
75
|
-
* Navigate to `
|
|
73
|
+
* Navigate to `django_dynamic_admin_forms`
|
|
76
74
|
* `python manage.py compilemessages`
|
|
77
75
|
* Have a look at the new/changed files within `django_dynamic_admin_forms/locale`
|
|
@@ -1,9 +1,35 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: django-dynamic-admin-forms
|
|
3
|
-
Version: 3.2.
|
|
3
|
+
Version: 3.2.10
|
|
4
4
|
Summary: Add simple dynamic interaction to the otherwise static django admin.
|
|
5
|
+
Project-URL: Homepage, https://github.com/ambient-innovation/django-dynamic-admin/
|
|
6
|
+
Project-URL: Documentation, https://django-dynamic-admin-forms.readthedocs.io/en/latest/index.html
|
|
7
|
+
Project-URL: Maintained by, https://ambient.digital/
|
|
8
|
+
Project-URL: Bugtracker, https://github.com/ambient-innovation/django-dynamic-admin/issues
|
|
9
|
+
Project-URL: Changelog, https://django-dynamic-admin-forms.readthedocs.io/en/latest/features/changelog.html
|
|
5
10
|
Author-email: Ambient Digital <hello@ambient.digital>, Fabian Binz <fabian.binz@ambient.digital>
|
|
6
|
-
|
|
11
|
+
License: MIT License
|
|
12
|
+
|
|
13
|
+
Copyright (c) 2022 Ambient Innovation: GmbH
|
|
14
|
+
|
|
15
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
16
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
17
|
+
in the Software without restriction, including without limitation the rights
|
|
18
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
19
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
20
|
+
furnished to do so, subject to the following conditions:
|
|
21
|
+
|
|
22
|
+
The above copyright notice and this permission notice shall be included in all
|
|
23
|
+
copies or substantial portions of the Software.
|
|
24
|
+
|
|
25
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
26
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
27
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
28
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
29
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
30
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
31
|
+
SOFTWARE.
|
|
32
|
+
License-File: LICENSE.md
|
|
7
33
|
Classifier: Development Status :: 5 - Production/Stable
|
|
8
34
|
Classifier: Environment :: Web Environment
|
|
9
35
|
Classifier: Framework :: Django
|
|
@@ -16,33 +42,15 @@ Classifier: Natural Language :: English
|
|
|
16
42
|
Classifier: Operating System :: OS Independent
|
|
17
43
|
Classifier: Programming Language :: Python
|
|
18
44
|
Classifier: Programming Language :: Python :: 3
|
|
19
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
20
45
|
Classifier: Programming Language :: Python :: 3.10
|
|
21
46
|
Classifier: Programming Language :: Python :: 3.11
|
|
22
47
|
Classifier: Programming Language :: Python :: 3.12
|
|
23
48
|
Classifier: Programming Language :: Python :: 3.13
|
|
49
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
24
50
|
Classifier: Topic :: Utilities
|
|
25
|
-
Requires-
|
|
26
|
-
Requires-Dist:
|
|
27
|
-
|
|
28
|
-
Requires-Dist: pytest-mock~=3.14 ; extra == "dev"
|
|
29
|
-
Requires-Dist: coverage~=7.6 ; extra == "dev"
|
|
30
|
-
Requires-Dist: pre-commit~=4.2 ; extra == "dev"
|
|
31
|
-
Requires-Dist: ruff~=0.11 ; extra == "dev"
|
|
32
|
-
Requires-Dist: sphinx~=7.1 ; extra == "dev"
|
|
33
|
-
Requires-Dist: sphinx-rtd-theme~=2.0 ; extra == "dev"
|
|
34
|
-
Requires-Dist: m2r2==0.3.3.post2 ; extra == "dev"
|
|
35
|
-
Requires-Dist: mistune<2.0.0 ; extra == "dev"
|
|
36
|
-
Requires-Dist: flit~=3.12 ; extra == "dev"
|
|
37
|
-
Requires-Dist: keyring~=25.6 ; extra == "dev"
|
|
38
|
-
Requires-Dist: ambient-package-update ; extra == "dev"
|
|
39
|
-
Requires-Dist: unittest-parametrize~=1.4 ; extra == "dev"
|
|
40
|
-
Project-URL: Bugtracker, https://github.com/ambient-innovation/django-dynamic-admin/issues
|
|
41
|
-
Project-URL: Changelog, https://django-dynamic-admin-forms.readthedocs.io/en/latest/features/changelog.html
|
|
42
|
-
Project-URL: Documentation, https://django-dynamic-admin-forms.readthedocs.io/en/latest/index.html
|
|
43
|
-
Project-URL: Homepage, https://github.com/ambient-innovation/django-dynamic-admin/
|
|
44
|
-
Project-URL: Maintained by, https://ambient.digital/
|
|
45
|
-
Provides-Extra: dev
|
|
51
|
+
Requires-Python: >=3.10
|
|
52
|
+
Requires-Dist: django>=4.2
|
|
53
|
+
Description-Content-Type: text/markdown
|
|
46
54
|
|
|
47
55
|
[](https://pypi.org/project/django-dynamic-admin-forms/)
|
|
48
56
|
[](https://pepy.tech/project/django-dynamic-admin-forms)
|
|
@@ -53,11 +61,9 @@ Provides-Extra: dev
|
|
|
53
61
|
|
|
54
62
|
Add simple interactions to the otherwise static django admin.
|
|
55
63
|
|
|
56
|
-
|
|
57
|
-
* [GitHub](https://github.com/ambient-innovation/django-dynamic-admin)
|
|
58
|
-
* [Full documentation](https://django-dynamic-admin-forms.readthedocs.io/en/latest/index.html)
|
|
59
|
-
* Creator & Maintainer: [Ambient Digital](https://ambient.digital/)
|
|
64
|
+
[PyPI](https://pypi.org/project/django-dynamic-admin-forms/) | [GitHub](https://github.com/ambient-innovation/django-dynamic-admin) | [Full documentation](https://django-dynamic-admin-forms.readthedocs.io/en/latest/index.html)
|
|
60
65
|
|
|
66
|
+
Creator & Maintainer: [Ambient Digital](https://ambient.digital/)
|
|
61
67
|
|
|
62
68
|
# django-dynamic-admin-forms
|
|
63
69
|
|
|
@@ -224,27 +230,43 @@ $ yarn cypress # or npm run cypress
|
|
|
224
230
|
- Trigger new build at ReadTheDocs.io (follow instructions in admin panel at RTD) if the GitHub webhook is not yet set
|
|
225
231
|
up.
|
|
226
232
|
|
|
227
|
-
###
|
|
233
|
+
### Preparation and building
|
|
234
|
+
|
|
235
|
+
This package uses [uv](https://github.com/astral-sh/uv) for dependency management and building.
|
|
228
236
|
|
|
229
237
|
- Update documentation about new/changed functionality
|
|
230
238
|
|
|
231
|
-
- Update the `
|
|
239
|
+
- Update the `CHANGES.md`
|
|
232
240
|
|
|
233
241
|
- Increment version in main `__init__.py`
|
|
234
242
|
|
|
235
|
-
- Create pull request / merge to main
|
|
243
|
+
- Create pull request / merge to "main"
|
|
236
244
|
|
|
237
|
-
- This project uses
|
|
238
|
-
|
|
239
|
-
|
|
245
|
+
- This project uses uv to publish to PyPI. This will create distribution files in the `dist/` directory.
|
|
246
|
+
|
|
247
|
+
```bash
|
|
248
|
+
uv build
|
|
240
249
|
```
|
|
241
250
|
|
|
242
|
-
|
|
243
|
-
shown [here](https://flit.readthedocs.io/en/latest/upload.html#using-pypirc) and use the following command:
|
|
251
|
+
### Publishing to PyPI
|
|
244
252
|
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
253
|
+
To publish to the production PyPI:
|
|
254
|
+
|
|
255
|
+
```bash
|
|
256
|
+
uv publish
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
To publish to TestPyPI first (recommended for testing):
|
|
260
|
+
|
|
261
|
+
```bash
|
|
262
|
+
uv publish --publish-url https://test.pypi.org/legacy/
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
You can then test the installation from TestPyPI:
|
|
266
|
+
|
|
267
|
+
```bash
|
|
268
|
+
uv pip install --index-url https://test.pypi.org/simple/ ambient-package-update
|
|
269
|
+
```
|
|
248
270
|
|
|
249
271
|
### Maintenance
|
|
250
272
|
|
|
@@ -254,4 +276,3 @@ configuration and setup files. It works similar to well-known updaters like `pyu
|
|
|
254
276
|
|
|
255
277
|
To run an update, refer to the [documentation page](https://pypi.org/project/ambient-package-update/)
|
|
256
278
|
of the "ambient-package-update".
|
|
257
|
-
|
|
@@ -7,11 +7,9 @@
|
|
|
7
7
|
|
|
8
8
|
Add simple interactions to the otherwise static django admin.
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
* [GitHub](https://github.com/ambient-innovation/django-dynamic-admin)
|
|
12
|
-
* [Full documentation](https://django-dynamic-admin-forms.readthedocs.io/en/latest/index.html)
|
|
13
|
-
* Creator & Maintainer: [Ambient Digital](https://ambient.digital/)
|
|
10
|
+
[PyPI](https://pypi.org/project/django-dynamic-admin-forms/) | [GitHub](https://github.com/ambient-innovation/django-dynamic-admin) | [Full documentation](https://django-dynamic-admin-forms.readthedocs.io/en/latest/index.html)
|
|
14
11
|
|
|
12
|
+
Creator & Maintainer: [Ambient Digital](https://ambient.digital/)
|
|
15
13
|
|
|
16
14
|
# django-dynamic-admin-forms
|
|
17
15
|
|
|
@@ -178,27 +176,43 @@ $ yarn cypress # or npm run cypress
|
|
|
178
176
|
- Trigger new build at ReadTheDocs.io (follow instructions in admin panel at RTD) if the GitHub webhook is not yet set
|
|
179
177
|
up.
|
|
180
178
|
|
|
181
|
-
###
|
|
179
|
+
### Preparation and building
|
|
180
|
+
|
|
181
|
+
This package uses [uv](https://github.com/astral-sh/uv) for dependency management and building.
|
|
182
182
|
|
|
183
183
|
- Update documentation about new/changed functionality
|
|
184
184
|
|
|
185
|
-
- Update the `
|
|
185
|
+
- Update the `CHANGES.md`
|
|
186
186
|
|
|
187
187
|
- Increment version in main `__init__.py`
|
|
188
188
|
|
|
189
|
-
- Create pull request / merge to main
|
|
189
|
+
- Create pull request / merge to "main"
|
|
190
190
|
|
|
191
|
-
- This project uses
|
|
192
|
-
|
|
193
|
-
|
|
191
|
+
- This project uses uv to publish to PyPI. This will create distribution files in the `dist/` directory.
|
|
192
|
+
|
|
193
|
+
```bash
|
|
194
|
+
uv build
|
|
194
195
|
```
|
|
195
196
|
|
|
196
|
-
|
|
197
|
-
shown [here](https://flit.readthedocs.io/en/latest/upload.html#using-pypirc) and use the following command:
|
|
197
|
+
### Publishing to PyPI
|
|
198
198
|
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
199
|
+
To publish to the production PyPI:
|
|
200
|
+
|
|
201
|
+
```bash
|
|
202
|
+
uv publish
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
To publish to TestPyPI first (recommended for testing):
|
|
206
|
+
|
|
207
|
+
```bash
|
|
208
|
+
uv publish --publish-url https://test.pypi.org/legacy/
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
You can then test the installation from TestPyPI:
|
|
212
|
+
|
|
213
|
+
```bash
|
|
214
|
+
uv pip install --index-url https://test.pypi.org/simple/ ambient-package-update
|
|
215
|
+
```
|
|
202
216
|
|
|
203
217
|
### Maintenance
|
|
204
218
|
|
|
@@ -62,7 +62,6 @@ templates_path = ["_templates"]
|
|
|
62
62
|
# This pattern also affects html_static_path and html_extra_path.
|
|
63
63
|
exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
|
|
64
64
|
|
|
65
|
-
|
|
66
65
|
# -- Options for HTML output -------------------------------------------------
|
|
67
66
|
|
|
68
67
|
# The theme to use for HTML and HTML Help pages. See the documentation for
|
|
@@ -9,7 +9,7 @@ def main():
|
|
|
9
9
|
"""Run administrative tasks."""
|
|
10
10
|
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settings")
|
|
11
11
|
try:
|
|
12
|
-
from django.core.management import execute_from_command_line
|
|
12
|
+
from django.core.management import execute_from_command_line # noqa: PLC0415
|
|
13
13
|
except ImportError as exc:
|
|
14
14
|
raise ImportError(
|
|
15
15
|
"Couldn't import Django. Are you sure it's installed and "
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[build-system]
|
|
2
|
-
requires = ["
|
|
3
|
-
build-backend = "
|
|
2
|
+
requires = ["hatchling"]
|
|
3
|
+
build-backend = "hatchling.build"
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "django-dynamic-admin-forms"
|
|
@@ -22,43 +22,36 @@ classifiers = [
|
|
|
22
22
|
"Operating System :: OS Independent",
|
|
23
23
|
"Programming Language :: Python",
|
|
24
24
|
"Programming Language :: Python :: 3",
|
|
25
|
-
"Programming Language :: Python :: 3.9",
|
|
26
25
|
"Programming Language :: Python :: 3.10",
|
|
27
26
|
"Programming Language :: Python :: 3.11",
|
|
28
27
|
"Programming Language :: Python :: 3.12",
|
|
29
28
|
"Programming Language :: Python :: 3.13",
|
|
29
|
+
"Programming Language :: Python :: 3.14",
|
|
30
30
|
"Topic :: Utilities",
|
|
31
31
|
]
|
|
32
|
-
dynamic = ["version"
|
|
32
|
+
dynamic = ["version"]
|
|
33
|
+
description = "Add simple dynamic interaction to the otherwise static django admin."
|
|
33
34
|
license = {"file" = "LICENSE.md"}
|
|
35
|
+
requires-python = ">=3.10"
|
|
34
36
|
dependencies = [
|
|
35
37
|
'Django>=4.2',
|
|
36
38
|
]
|
|
37
39
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
[project.optional-dependencies]
|
|
40
|
+
[dependency-groups]
|
|
42
41
|
dev = [
|
|
43
|
-
'typer~=0.
|
|
44
|
-
'pytest-
|
|
45
|
-
'pytest-
|
|
46
|
-
'
|
|
47
|
-
'pre-commit~=4.
|
|
48
|
-
'
|
|
49
|
-
'sphinx~=
|
|
50
|
-
'
|
|
51
|
-
'
|
|
52
|
-
'mistune<2.0.0',
|
|
53
|
-
'flit~=3.12',
|
|
54
|
-
'keyring~=25.6',
|
|
42
|
+
'typer~=0.19',
|
|
43
|
+
'pytest-cov~=7.0',
|
|
44
|
+
'pytest-django~=4.11',
|
|
45
|
+
'pytest-mock~=3.15',
|
|
46
|
+
'pre-commit~=4.3',
|
|
47
|
+
'sphinx~=7.4',
|
|
48
|
+
'sphinx-rtd-theme~=3.0',
|
|
49
|
+
'm2r2~=0.3',
|
|
50
|
+
'uv~=0.9',
|
|
55
51
|
'ambient-package-update',
|
|
56
52
|
'unittest-parametrize~=1.4',
|
|
57
53
|
]
|
|
58
54
|
|
|
59
|
-
[tool.flit.module]
|
|
60
|
-
name = "django_dynamic_admin_forms"
|
|
61
|
-
|
|
62
55
|
[project.urls]
|
|
63
56
|
'Homepage' = 'https://github.com/ambient-innovation/django-dynamic-admin/'
|
|
64
57
|
'Documentation' = 'https://django-dynamic-admin-forms.readthedocs.io/en/latest/index.html'
|
|
@@ -95,6 +88,7 @@ lint.select = [
|
|
|
95
88
|
"ERA", # Commented out code
|
|
96
89
|
"INP", # Ban PEP-420 implicit namespace packages
|
|
97
90
|
"C90", # McCabe code complexity
|
|
91
|
+
"FURB", # Refurbish Python code
|
|
98
92
|
]
|
|
99
93
|
lint.ignore = [
|
|
100
94
|
"RUF012", # Mutable class attributes should be annotated with `typing.ClassVar`
|
|
@@ -130,6 +124,7 @@ lint.fixable = [
|
|
|
130
124
|
"ERA", # Commented out code
|
|
131
125
|
"INP", # Ban PEP-420 implicit namespace packages
|
|
132
126
|
"C90", # McCabe code complexity
|
|
127
|
+
"FURB", # Refurbish Python code
|
|
133
128
|
]
|
|
134
129
|
lint.unfixable = []
|
|
135
130
|
|
|
@@ -163,8 +158,8 @@ line-length = 120
|
|
|
163
158
|
# Allow unused variables when underscore-prefixed.
|
|
164
159
|
lint.dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
|
|
165
160
|
|
|
166
|
-
# Assume Python 3.
|
|
167
|
-
target-version = "
|
|
161
|
+
# Assume Python 3.13
|
|
162
|
+
target-version = "py313"
|
|
168
163
|
|
|
169
164
|
[tool.ruff.format]
|
|
170
165
|
# Like Black, use double quotes for strings.
|
|
@@ -202,25 +197,34 @@ line-ending = "auto"
|
|
|
202
197
|
]
|
|
203
198
|
|
|
204
199
|
[tool.tox]
|
|
205
|
-
|
|
206
|
-
[
|
|
200
|
+
requires = ["tox>=4", "tox-uv>=1.0.0"]
|
|
201
|
+
env_list = ["django42", "django51", "django52", ]
|
|
202
|
+
|
|
203
|
+
[tool.tox.env_run_base]
|
|
207
204
|
# Django deprecation overview: https://www.djangoproject.com/download/
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
205
|
+
package = "wheel"
|
|
206
|
+
wheel_build_env = ".pkg"
|
|
207
|
+
runner = "uv-venv-lock-runner"
|
|
208
|
+
dependency_groups = ["dev", ]
|
|
209
|
+
commands = [
|
|
210
|
+
["pytest", "--cov=django_dynamic_admin_forms", "--cov-report=term", "--cov-report=xml", "--ds", "settings", "tests"]
|
|
211
|
+
]
|
|
212
|
+
|
|
213
|
+
[tool.tox.env.django42]
|
|
214
|
+
deps = ["Django==4.2.*"]
|
|
215
|
+
|
|
216
|
+
[tool.tox.env.django51]
|
|
217
|
+
deps = ["Django==5.1.*"]
|
|
215
218
|
|
|
216
|
-
[
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
"""
|
|
219
|
+
[tool.tox.env.django52]
|
|
220
|
+
deps = ["Django==5.2.*"]
|
|
221
|
+
|
|
222
|
+
[tool.tox.gh_actions.python]
|
|
223
|
+
"3.10" = "py310"
|
|
224
|
+
"3.11" = "py311"
|
|
225
|
+
"3.12" = "py312"
|
|
226
|
+
"3.13" = "py313"
|
|
227
|
+
"3.14" = "py314"
|
|
224
228
|
|
|
225
229
|
[tool.pytest.ini_options]
|
|
226
230
|
python_files = [
|
|
@@ -262,3 +266,6 @@ source = [
|
|
|
262
266
|
"django_dynamic_admin_forms",
|
|
263
267
|
".tox/**/site-packages",
|
|
264
268
|
]
|
|
269
|
+
|
|
270
|
+
[tool.hatch.version]
|
|
271
|
+
path = "django_dynamic_admin_forms/__init__.py"
|