django-dynamic-admin-forms 3.0.4__tar.gz → 3.1.1__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.0.4 → django_dynamic_admin_forms-3.1.1}/.ambient-package-update/metadata.py +8 -2
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/.ambient-package-update/templates/snippets/content.tpl +20 -21
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/.ambient-package-update/templates/snippets/installation.tpl +4 -4
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/.github/workflows/ci.yml +2 -4
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/.pre-commit-config.yaml +1 -1
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/CHANGES.md +7 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/PKG-INFO +7 -8
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/README.md +0 -1
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/django_dynamic_admin_forms/__init__.py +1 -1
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/docs/conf.py +0 -2
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/pyproject.toml +25 -18
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/tests/test_admin_unit.py +0 -2
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/.coveragerc +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/.editorconfig +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/.gitignore +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/.python-version +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/.readthedocs.yaml +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/LICENSE.md +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/MANIFEST.in +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/django_dynamic_admin_forms/admin.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/django_dynamic_admin_forms/apps.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/django_dynamic_admin_forms/static/js/dynamic_admin.js +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/django_dynamic_admin_forms/templates/admin/change_form.html +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/django_dynamic_admin_forms/urls.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/docs/Makefile +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/docs/demo.gif +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/docs/features/changelog.rst +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/docs/index.rst +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/docs/make.bat +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/e2e/cypress/integration/dynamic-select.spec.js +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/e2e/cypress/plugins/index.js +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/e2e/cypress/support/commands.js +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/e2e/cypress/support/index.js +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/e2e/cypress/support/paths.js +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/e2e/cypress.json +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/e2e/package.json +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/e2e/yarn.lock +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/fixtures/fixtures-dev.json +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/manage.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/scripts/unix/install_requirements.sh +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/scripts/unix/publish_to_pypi.sh +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/scripts/windows/install_requirements.ps1 +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/scripts/windows/publish_to_pypi.ps1 +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/settings.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/setup.cfg +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/testapp/__init__.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/testapp/admin.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/testapp/apps.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/testapp/migrations/0001_initial.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/testapp/migrations/0002_extend_example.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/testapp/migrations/0003_example_file_field.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/testapp/migrations/__init__.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/testapp/models.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/testapp/urls.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/tests/__init__.py +0 -0
- {django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/tests/test_admin_generic.py +0 -0
|
@@ -7,6 +7,7 @@ from ambient_package_update.metadata.constants import (
|
|
|
7
7
|
from ambient_package_update.metadata.maintainer import PackageMaintainer
|
|
8
8
|
from ambient_package_update.metadata.package import PackageMetadata
|
|
9
9
|
from ambient_package_update.metadata.readme import ReadmeContent
|
|
10
|
+
from ambient_package_update.metadata.ruff_ignored_inspection import RuffIgnoredInspection
|
|
10
11
|
|
|
11
12
|
METADATA = PackageMetadata(
|
|
12
13
|
package_name="django_dynamic_admin_forms",
|
|
@@ -33,7 +34,7 @@ METADATA = PackageMetadata(
|
|
|
33
34
|
supported_django_versions=SUPPORTED_DJANGO_VERSIONS,
|
|
34
35
|
supported_python_versions=SUPPORTED_PYTHON_VERSIONS,
|
|
35
36
|
dependencies=[
|
|
36
|
-
"
|
|
37
|
+
f"Django>={SUPPORTED_DJANGO_VERSIONS[0]}",
|
|
37
38
|
],
|
|
38
39
|
optional_dependencies={
|
|
39
40
|
"dev": [
|
|
@@ -41,5 +42,10 @@ METADATA = PackageMetadata(
|
|
|
41
42
|
"unittest-parametrize~=1.4",
|
|
42
43
|
],
|
|
43
44
|
},
|
|
44
|
-
ruff_ignore_list=[
|
|
45
|
+
ruff_ignore_list=[
|
|
46
|
+
RuffIgnoredInspection(
|
|
47
|
+
key="RUF012", comment="Mutable class attributes should be annotated with `typing.ClassVar`"
|
|
48
|
+
),
|
|
49
|
+
RuffIgnoredInspection(key="TRY003", comment="Avoid specifying long messages outside the exception class"),
|
|
50
|
+
],
|
|
45
51
|
)
|
|
@@ -16,8 +16,8 @@ Add simple interactions to the otherwise static django admin.
|
|
|
16
16
|
- Add the module to `INSTALLED_APPS`:
|
|
17
17
|
```python
|
|
18
18
|
INSTALLED_APPS = (
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
"django_dynamic_admin_forms",
|
|
20
|
+
"django.contrib.admin",
|
|
21
21
|
)
|
|
22
22
|
```
|
|
23
23
|
Ensure that the `dynamic_admin_forms` comes before the
|
|
@@ -28,8 +28,8 @@ Add simple interactions to the otherwise static django admin.
|
|
|
28
28
|
```python
|
|
29
29
|
TEMPLATES = [
|
|
30
30
|
{
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
"BACKEND": "django.template.backends.django.DjangoTemplates",
|
|
32
|
+
"APP_DIRS": True,
|
|
33
33
|
},
|
|
34
34
|
]
|
|
35
35
|
```
|
|
@@ -43,8 +43,8 @@ Add simple interactions to the otherwise static django admin.
|
|
|
43
43
|
from django.urls import path, include
|
|
44
44
|
|
|
45
45
|
urlpatterns = [
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
path("admin/", admin.site.urls),
|
|
47
|
+
path("dynamic-admin-form/", include("django_dynamic_admin_forms.urls")),
|
|
48
48
|
]
|
|
49
49
|
```
|
|
50
50
|
- In addition to the standard `fields` declaration, specify a list of `dynamic_fields`
|
|
@@ -65,23 +65,22 @@ Add simple interactions to the otherwise static django admin.
|
|
|
65
65
|
|
|
66
66
|
@admin.register(MyModel)
|
|
67
67
|
class MyModelAdmin(DynamicModelAdminMixin, admin.ModelAdmin):
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
68
|
+
fields = ("name", "city")
|
|
69
|
+
dynamic_fields = ("city",)
|
|
70
|
+
|
|
71
|
+
def get_dynamic_city_field(self, data):
|
|
72
|
+
# automatically choose first city that matches first letter of name
|
|
73
|
+
name = data.get("name")
|
|
74
|
+
if not name:
|
|
75
|
+
queryset = City.objects.all()
|
|
76
|
+
value = data.get("city")
|
|
77
|
+
else:
|
|
78
|
+
queryset = City.objects.filter(name__startswith=name[0])
|
|
79
|
+
value = queryset.first()
|
|
80
|
+
hidden = not queryset.exists()
|
|
81
|
+
return queryset, value, hidden
|
|
82
82
|
```
|
|
83
83
|
|
|
84
|
-
|
|
85
84
|
## How it works
|
|
86
85
|
Whenever a dynamic form changes, an event handler makes a request to a special endpoint, which returns new HTML to swap
|
|
87
86
|
into the existing form. This new HTML is directly generated by `django.contrib.admin`, so we only have to set the
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
- Add the module to `INSTALLED_APPS`:
|
|
12
12
|
```python
|
|
13
13
|
INSTALLED_APPS = (
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
"django_dynamic_admin_forms",
|
|
15
|
+
"django.contrib.admin",
|
|
16
16
|
)
|
|
17
17
|
```
|
|
18
18
|
Ensure that the `dynamic_admin_forms` comes before the
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
```python
|
|
25
25
|
TEMPLATES = [
|
|
26
26
|
{
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
"BACKEND": "django.template.backends.django.DjangoTemplates",
|
|
28
|
+
"APP_DIRS": True,
|
|
29
29
|
},
|
|
30
30
|
]
|
|
31
31
|
```
|
{django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/.github/workflows/ci.yml
RENAMED
|
@@ -27,12 +27,10 @@ jobs:
|
|
|
27
27
|
runs-on: ubuntu-22.04
|
|
28
28
|
strategy:
|
|
29
29
|
matrix:
|
|
30
|
-
python-version: ['3.
|
|
30
|
+
python-version: ['3.9', '3.10', '3.11', '3.12', ]
|
|
31
31
|
django-version: ['42', '50', ]
|
|
32
32
|
|
|
33
33
|
exclude:
|
|
34
|
-
- python-version: '3.8'
|
|
35
|
-
django-version: 50
|
|
36
34
|
- python-version: '3.9'
|
|
37
35
|
django-version: 50
|
|
38
36
|
|
|
@@ -73,7 +71,7 @@ jobs:
|
|
|
73
71
|
with:
|
|
74
72
|
name: coverage-data
|
|
75
73
|
|
|
76
|
-
- name: Combine coverage and fail if it's <100%
|
|
74
|
+
- name: Combine coverage and fail if it's <100.0%
|
|
77
75
|
run: |
|
|
78
76
|
python -m coverage html --skip-covered --skip-empty
|
|
79
77
|
python -m coverage report --fail-under=100.0
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
|
-
Name:
|
|
3
|
-
Version: 3.
|
|
2
|
+
Name: django_dynamic_admin_forms
|
|
3
|
+
Version: 3.1.1
|
|
4
4
|
Summary: Add simple dynamic interaction to the otherwise static django admin.
|
|
5
5
|
Author-email: Ambient Digital <hello@ambient.digital>, Fabian Binz <fabian.binz@ambient.digital>
|
|
6
6
|
Description-Content-Type: text/markdown
|
|
@@ -15,26 +15,26 @@ Classifier: Natural Language :: English
|
|
|
15
15
|
Classifier: Operating System :: OS Independent
|
|
16
16
|
Classifier: Programming Language :: Python
|
|
17
17
|
Classifier: Programming Language :: Python :: 3
|
|
18
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
19
18
|
Classifier: Programming Language :: Python :: 3.9
|
|
20
19
|
Classifier: Programming Language :: Python :: 3.10
|
|
21
20
|
Classifier: Programming Language :: Python :: 3.11
|
|
22
21
|
Classifier: Programming Language :: Python :: 3.12
|
|
23
22
|
Classifier: Topic :: Utilities
|
|
24
|
-
Requires-Dist:
|
|
23
|
+
Requires-Dist: Django>=4.2
|
|
25
24
|
Requires-Dist: typer~=0.9 ; extra == "dev"
|
|
26
25
|
Requires-Dist: freezegun~=1.3 ; extra == "dev"
|
|
27
26
|
Requires-Dist: pytest-django~=4.7 ; extra == "dev"
|
|
28
27
|
Requires-Dist: pytest-mock~=3.12 ; extra == "dev"
|
|
29
28
|
Requires-Dist: coverage~=7.3 ; extra == "dev"
|
|
30
|
-
Requires-Dist: pre-commit~=3.
|
|
31
|
-
Requires-Dist: ruff~=0.
|
|
29
|
+
Requires-Dist: pre-commit~=3.7 ; extra == "dev"
|
|
30
|
+
Requires-Dist: ruff~=0.4 ; extra == "dev"
|
|
32
31
|
Requires-Dist: sphinx~=7.1 ; extra == "dev"
|
|
33
32
|
Requires-Dist: sphinx-rtd-theme~=2.0 ; extra == "dev"
|
|
34
33
|
Requires-Dist: m2r2==0.3.3.post2 ; extra == "dev"
|
|
35
34
|
Requires-Dist: mistune<2.0.0 ; extra == "dev"
|
|
36
35
|
Requires-Dist: flit~=3.9 ; extra == "dev"
|
|
37
|
-
Requires-Dist:
|
|
36
|
+
Requires-Dist: keyring~=25.2 ; extra == "dev"
|
|
37
|
+
Requires-Dist: ambient-package-update~=24.7.3 ; extra == "dev"
|
|
38
38
|
Requires-Dist: unittest-parametrize~=1.4 ; extra == "dev"
|
|
39
39
|
Project-URL: Bugtracker, https://github.com/ambient-innovation/django-dynamic-admin/issues
|
|
40
40
|
Project-URL: Changelog, https://django-dynamic-admin-forms.readthedocs.io/en/latest/features/changelog.html
|
|
@@ -141,7 +141,6 @@ Add simple interactions to the otherwise static django admin.
|
|
|
141
141
|
return queryset, value, hidden
|
|
142
142
|
```
|
|
143
143
|
|
|
144
|
-
|
|
145
144
|
## How it works
|
|
146
145
|
Whenever a dynamic form changes, an event handler makes a request to a special endpoint, which returns new HTML to swap
|
|
147
146
|
into the existing form. This new HTML is directly generated by `django.contrib.admin`, so we only have to set the
|
|
@@ -96,7 +96,6 @@ Add simple interactions to the otherwise static django admin.
|
|
|
96
96
|
return queryset, value, hidden
|
|
97
97
|
```
|
|
98
98
|
|
|
99
|
-
|
|
100
99
|
## How it works
|
|
101
100
|
Whenever a dynamic form changes, an event handler makes a request to a special endpoint, which returns new HTML to swap
|
|
102
101
|
into the existing form. This new HTML is directly generated by `django.contrib.admin`, so we only have to set the
|
|
@@ -67,8 +67,6 @@ exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
|
|
|
67
67
|
|
|
68
68
|
# The theme to use for HTML and HTML Help pages. See the documentation for
|
|
69
69
|
# a list of builtin themes.
|
|
70
|
-
#
|
|
71
|
-
# html_theme = "alabaster"
|
|
72
70
|
html_theme = "sphinx_rtd_theme"
|
|
73
71
|
html_theme_options = {
|
|
74
72
|
"display_version": False,
|
|
@@ -3,7 +3,7 @@ requires = ["flit_core>=3.4"]
|
|
|
3
3
|
build-backend = "flit_core.buildapi"
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
|
-
name = "
|
|
6
|
+
name = "django_dynamic_admin_forms"
|
|
7
7
|
authors = [
|
|
8
8
|
{'name' = 'Ambient Digital', 'email' = 'hello@ambient.digital'},
|
|
9
9
|
{'name' = 'Fabian Binz', 'email' = 'fabian.binz@ambient.digital'},
|
|
@@ -21,7 +21,6 @@ classifiers = [
|
|
|
21
21
|
"Operating System :: OS Independent",
|
|
22
22
|
"Programming Language :: Python",
|
|
23
23
|
"Programming Language :: Python :: 3",
|
|
24
|
-
"Programming Language :: Python :: 3.8",
|
|
25
24
|
"Programming Language :: Python :: 3.9",
|
|
26
25
|
"Programming Language :: Python :: 3.10",
|
|
27
26
|
"Programming Language :: Python :: 3.11",
|
|
@@ -31,7 +30,7 @@ classifiers = [
|
|
|
31
30
|
dynamic = ["version", "description"]
|
|
32
31
|
license = {"file" = "LICENSE.md"}
|
|
33
32
|
dependencies = [
|
|
34
|
-
'
|
|
33
|
+
'Django>=4.2',
|
|
35
34
|
]
|
|
36
35
|
|
|
37
36
|
|
|
@@ -42,14 +41,15 @@ dev = [
|
|
|
42
41
|
'pytest-django~=4.7',
|
|
43
42
|
'pytest-mock~=3.12',
|
|
44
43
|
'coverage~=7.3',
|
|
45
|
-
'pre-commit~=3.
|
|
46
|
-
'ruff~=0.
|
|
44
|
+
'pre-commit~=3.7',
|
|
45
|
+
'ruff~=0.4',
|
|
47
46
|
'sphinx~=7.1',
|
|
48
47
|
'sphinx-rtd-theme~=2.0',
|
|
49
48
|
'm2r2==0.3.3.post2',
|
|
50
49
|
'mistune<2.0.0',
|
|
51
50
|
'flit~=3.9',
|
|
52
|
-
'
|
|
51
|
+
'keyring~=25.2',
|
|
52
|
+
'ambient-package-update~=24.7.3',
|
|
53
53
|
'unittest-parametrize~=1.4',
|
|
54
54
|
]
|
|
55
55
|
|
|
@@ -75,18 +75,25 @@ lint.select = [
|
|
|
75
75
|
"DTZ", # flake8-datetimez
|
|
76
76
|
"DJ", # flake8-django
|
|
77
77
|
"TD", # flake8-to-do
|
|
78
|
-
"
|
|
78
|
+
"RUF", # Ruff-specific rules
|
|
79
79
|
"YTT", # Avoid non-future-prove usages of "sys"
|
|
80
|
-
# "FBT", # Protects you from the "boolean trap bug"
|
|
81
80
|
"C4", # Checks for unnecessary conversions
|
|
82
81
|
"PIE", # Bunch of useful rules
|
|
83
|
-
# "SIM", # Simplifies your code
|
|
84
82
|
"INT", # Validates your gettext translation strings
|
|
85
83
|
"PERF", # PerfLint
|
|
86
84
|
"PGH", # No all-purpose "# noqa" and eval validation
|
|
87
85
|
"PL", # PyLint
|
|
86
|
+
"LOG", # flake8-logging
|
|
87
|
+
"TID", # flake8-tidy-imports
|
|
88
|
+
"PLR2004", # Magic numbers
|
|
89
|
+
"BLE", # Checks for except clauses that catch all exceptions
|
|
90
|
+
"ANN401", # Checks that function arguments are annotated with a more specific type than Any
|
|
91
|
+
"TRY", # Clean try/except
|
|
92
|
+
"ERA", # Commented out code
|
|
88
93
|
]
|
|
89
94
|
lint.ignore = [
|
|
95
|
+
'RUF012', # Mutable class attributes should be annotated with `typing.ClassVar`
|
|
96
|
+
'TRY003', # Avoid specifying long messages outside the exception class
|
|
90
97
|
]
|
|
91
98
|
|
|
92
99
|
# Allow autofix for all enabled rules (when `--fix`) is provided.
|
|
@@ -101,16 +108,21 @@ lint.fixable = [
|
|
|
101
108
|
"DTZ", # flake8-datetimez
|
|
102
109
|
"DJ", # flake8-django
|
|
103
110
|
"TD", # flake8-to-do
|
|
104
|
-
"
|
|
111
|
+
"RUF", # Ruff-specific rules
|
|
105
112
|
"YTT", # Avoid non-future-prove usages of "sys"
|
|
106
|
-
# "FBT", # Protects you from the "boolean trap bug"
|
|
107
113
|
"C4", # Checks for unnecessary conversions
|
|
108
114
|
"PIE", # Bunch of useful rules
|
|
109
|
-
# "SIM", # Simplifies your code
|
|
110
115
|
"INT", # Validates your gettext translation strings
|
|
111
116
|
"PERF", # PerfLint
|
|
112
117
|
"PGH", # No all-purpose "# noqa" and eval validation
|
|
113
118
|
"PL", # PyLint
|
|
119
|
+
"LOG", # flake8-logging
|
|
120
|
+
"TID", # flake8-tidy-imports
|
|
121
|
+
"PLR2004", # Magic numbers
|
|
122
|
+
"BLE", # Checks for except clauses that catch all exceptions
|
|
123
|
+
"ANN401", # Checks that function arguments are annotated with a more specific type than Any
|
|
124
|
+
"TRY", # Clean try/except
|
|
125
|
+
"ERA", # Commented out code
|
|
114
126
|
]
|
|
115
127
|
lint.unfixable = []
|
|
116
128
|
|
|
@@ -142,7 +154,7 @@ exclude = [
|
|
|
142
154
|
line-length = 120
|
|
143
155
|
|
|
144
156
|
# Allow unused variables when underscore-prefixed.
|
|
145
|
-
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
|
|
157
|
+
lint.dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
|
|
146
158
|
|
|
147
159
|
# Assume Python 3.12
|
|
148
160
|
target-version = "py312"
|
|
@@ -162,10 +174,6 @@ line-ending = "auto"
|
|
|
162
174
|
|
|
163
175
|
[tool.tox]
|
|
164
176
|
legacy_tox_ini = """
|
|
165
|
-
[tox]
|
|
166
|
-
envlist = py{38,39,310,311}-django{32,41,42}
|
|
167
|
-
isolated_build = True
|
|
168
|
-
|
|
169
177
|
[testenv]
|
|
170
178
|
# Django deprecation overview: https://www.djangoproject.com/download/
|
|
171
179
|
deps =
|
|
@@ -177,7 +185,6 @@ commands =
|
|
|
177
185
|
|
|
178
186
|
[gh-actions]
|
|
179
187
|
python =
|
|
180
|
-
3.8: py38
|
|
181
188
|
3.9: py39
|
|
182
189
|
3.10: py310
|
|
183
190
|
3.11: py311
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/docs/features/changelog.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/e2e/cypress/plugins/index.js
RENAMED
|
File without changes
|
|
File without changes
|
{django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/e2e/cypress/support/index.js
RENAMED
|
File without changes
|
{django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/e2e/cypress/support/paths.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/fixtures/fixtures-dev.json
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/testapp/migrations/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_dynamic_admin_forms-3.0.4 → django_dynamic_admin_forms-3.1.1}/tests/test_admin_generic.py
RENAMED
|
File without changes
|