django-pfx 1.2.dev139__tar.gz → 1.3.dev4__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.
Files changed (128) hide show
  1. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/.gitlab-ci.yml +1 -4
  2. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/PKG-INFO +5 -2
  3. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/README.md +3 -0
  4. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/django_pfx.egg-info/PKG-INFO +5 -2
  5. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/django_pfx.egg-info/requires.txt +1 -1
  6. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/models/pfx_models.py +2 -2
  7. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/requirements.txt +4 -1
  8. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/setup.cfg +1 -1
  9. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/.gitignore +0 -0
  10. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/.pre-commit-config.yaml +0 -0
  11. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/LICENSE +0 -0
  12. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/MANIFEST.in +0 -0
  13. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/django_pfx.egg-info/SOURCES.txt +0 -0
  14. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/django_pfx.egg-info/dependency_links.txt +0 -0
  15. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/django_pfx.egg-info/top_level.txt +0 -0
  16. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/doc/Makefile +0 -0
  17. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/doc/conf.py +0 -0
  18. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/doc/index.rst +0 -0
  19. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/doc/source/api.views.rst +0 -0
  20. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/doc/source/authentication.md +0 -0
  21. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/doc/source/decorator.md +0 -0
  22. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/doc/source/generate_openapi.md +0 -0
  23. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/doc/source/getting_started.md +0 -0
  24. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/doc/source/internationalisation.md +0 -0
  25. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/doc/source/model.md +0 -0
  26. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/doc/source/pfx_views.md +0 -0
  27. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/doc/source/profiling.md +0 -0
  28. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/doc/source/settings.md +0 -0
  29. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/doc/source/testing.md +0 -0
  30. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/img/pfx.png +0 -0
  31. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/img/pfx.svg +0 -0
  32. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/__init__.py +0 -0
  33. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/__init__.py +0 -0
  34. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/apidoc/__init__.py +0 -0
  35. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/apidoc/parameters.py +0 -0
  36. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/apidoc/schema.py +0 -0
  37. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/apidoc/tags.py +0 -0
  38. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/apps.py +0 -0
  39. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/decorator/__init__.py +0 -0
  40. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/decorator/rest.py +0 -0
  41. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/default_settings.py +0 -0
  42. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/exceptions.py +0 -0
  43. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/fields.py +0 -0
  44. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/http/__init__.py +0 -0
  45. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/http/json_response.py +0 -0
  46. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.mo +0 -0
  47. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.po +0 -0
  48. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/management/__init__.py +0 -0
  49. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/management/commands/__init__.py +0 -0
  50. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/management/commands/makeapidoc.py +0 -0
  51. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/management/commands/profile.py +0 -0
  52. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/middleware/__init__.py +0 -0
  53. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/middleware/authentication.py +0 -0
  54. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/middleware/locale.py +0 -0
  55. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/middleware/profiling.py +0 -0
  56. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/models/__init__.py +0 -0
  57. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/models/cache_mixins.py +0 -0
  58. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/models/not_null_fields.py +0 -0
  59. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/models/user_filtered_queryset_mixin.py +0 -0
  60. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/serializers/__init__.py +0 -0
  61. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/serializers/json.py +0 -0
  62. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/settings.py +0 -0
  63. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/shortcuts.py +0 -0
  64. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/storage/__init__.py +0 -0
  65. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/storage/s3_storage.py +0 -0
  66. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/templates/registration/password_reset_email.txt +0 -0
  67. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/templates/registration/password_reset_subject.txt +0 -0
  68. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/templates/registration/welcome_email.txt +0 -0
  69. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/templates/registration/welcome_subject.txt +0 -0
  70. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/test.py +0 -0
  71. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/urls.py +0 -0
  72. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/__init__.py +0 -0
  73. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/authentication_views.py +0 -0
  74. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/fields.py +0 -0
  75. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/filters_views.py +0 -0
  76. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/locale_views.py +0 -0
  77. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/__init__.py +0 -0
  78. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/date_format.py +0 -0
  79. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/groups.py +0 -0
  80. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/list_count.py +0 -0
  81. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/list_items.py +0 -0
  82. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/list_mode.py +0 -0
  83. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/list_order.py +0 -0
  84. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/list_search.py +0 -0
  85. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/media_redirect.py +0 -0
  86. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/meta_fields.py +0 -0
  87. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/meta_filters.py +0 -0
  88. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/meta_orders.py +0 -0
  89. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/subset.py +0 -0
  90. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/subset_limit.py +0 -0
  91. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/subset_offset.py +0 -0
  92. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/subset_page.py +0 -0
  93. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/subset_page_size.py +0 -0
  94. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/subset_page_subset.py +0 -0
  95. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pfx/pfxcore/views/rest_views.py +0 -0
  96. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/pyproject.toml +0 -0
  97. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/runtest.py +0 -0
  98. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/serve-doc +0 -0
  99. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/setup.py +0 -0
  100. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/__init__.py +0 -0
  101. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/models.py +0 -0
  102. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/settings/__init__.py +0 -0
  103. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/settings/ci.py +0 -0
  104. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/settings/common.py +0 -0
  105. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/settings/dev.py +0 -0
  106. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/settings/dev_custom_example.py +0 -0
  107. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/settings/dev_default.py +0 -0
  108. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/__init__.py +0 -0
  109. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/basic_api_errors.py +0 -0
  110. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/basic_api_test.py +0 -0
  111. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_api_doc.py +0 -0
  112. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_auth_api.py +0 -0
  113. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_cache.py +0 -0
  114. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_client.py +0 -0
  115. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_fields.py +0 -0
  116. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_filters.py +0 -0
  117. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_locale_api.py +0 -0
  118. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_perm_tests.py +0 -0
  119. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_perms_api.py +0 -0
  120. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_profiling_middleware.py +0 -0
  121. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_shortcuts.py +0 -0
  122. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_timezone_middleware.py +0 -0
  123. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_tools.py +0 -0
  124. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_user_queryset.py +0 -0
  125. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_view_decorators.py +0 -0
  126. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/tests/test_view_fields.py +0 -0
  127. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/urls.py +0 -0
  128. {django-pfx-1.2.dev139 → django-pfx-1.3.dev4}/tests/views.py +0 -0
@@ -49,10 +49,7 @@ test:
49
49
  path: coverage.xml
50
50
  parallel:
51
51
  matrix:
52
- - DJANGO_VERSION: 'Django==3.2.*' # LTS
53
- - DJANGO_VERSION: 'Django>=3.2,<4.0'
54
- - DJANGO_VERSION: 'Django>=4.0,<5.0'
55
- - DJANGO_VERSION: 'Django>=4.2.*' # LTS
52
+ - DJANGO_VERSION: 'django==4.2.*' # LTS
56
53
 
57
54
  build doc:
58
55
  stage: build
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: django-pfx
3
- Version: 1.2.dev139
3
+ Version: 1.3.dev4
4
4
  Summary: Django PFX is a toolkit designed to streamline the development of RESTful APIs using the Django framework.
5
5
  Author: Hervé Martinet
6
6
  Author-email: herve.martinet@gmail.com
@@ -25,7 +25,7 @@ Classifier: Topic :: Internet :: WWW/HTTP
25
25
  Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
26
26
  Description-Content-Type: text/markdown
27
27
  License-File: LICENSE
28
- Requires-Dist: django<5.0,>=3.2
28
+ Requires-Dist: django<5.0,>=4.2
29
29
  Requires-Dist: django-cors-headers
30
30
  Requires-Dist: django_json_widget
31
31
  Requires-Dist: pyjwt>=2.1
@@ -48,6 +48,9 @@ using the Django framework, leveraging views and the ORM (Object-Relational Mapp
48
48
  With a focus on simplicity and efficiency, Django PFX enables developers to rapidly
49
49
  create robust web service APIs for web applications and simplifies the testing process.
50
50
 
51
+ > From version 1.3 PFX is only compatible with Django 4.2 LTS,
52
+ > please use version 1.2 for older Django versions.
53
+
51
54
  ### Key Features:
52
55
  - Predefined CRUD API (but customizable)
53
56
  - Internationalization
@@ -10,6 +10,9 @@ using the Django framework, leveraging views and the ORM (Object-Relational Mapp
10
10
  With a focus on simplicity and efficiency, Django PFX enables developers to rapidly
11
11
  create robust web service APIs for web applications and simplifies the testing process.
12
12
 
13
+ > From version 1.3 PFX is only compatible with Django 4.2 LTS,
14
+ > please use version 1.2 for older Django versions.
15
+
13
16
  ### Key Features:
14
17
  - Predefined CRUD API (but customizable)
15
18
  - Internationalization
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: django-pfx
3
- Version: 1.2.dev139
3
+ Version: 1.3.dev4
4
4
  Summary: Django PFX is a toolkit designed to streamline the development of RESTful APIs using the Django framework.
5
5
  Author: Hervé Martinet
6
6
  Author-email: herve.martinet@gmail.com
@@ -25,7 +25,7 @@ Classifier: Topic :: Internet :: WWW/HTTP
25
25
  Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
26
26
  Description-Content-Type: text/markdown
27
27
  License-File: LICENSE
28
- Requires-Dist: django<5.0,>=3.2
28
+ Requires-Dist: django<5.0,>=4.2
29
29
  Requires-Dist: django-cors-headers
30
30
  Requires-Dist: django_json_widget
31
31
  Requires-Dist: pyjwt>=2.1
@@ -48,6 +48,9 @@ using the Django framework, leveraging views and the ORM (Object-Relational Mapp
48
48
  With a focus on simplicity and efficiency, Django PFX enables developers to rapidly
49
49
  create robust web service APIs for web applications and simplifies the testing process.
50
50
 
51
+ > From version 1.3 PFX is only compatible with Django 4.2 LTS,
52
+ > please use version 1.2 for older Django versions.
53
+
51
54
  ### Key Features:
52
55
  - Predefined CRUD API (but customizable)
53
56
  - Internationalization
@@ -1,4 +1,4 @@
1
- django<5.0,>=3.2
1
+ django<5.0,>=4.2
2
2
  django-cors-headers
3
3
  django_json_widget
4
4
  pyjwt>=2.1
@@ -66,7 +66,7 @@ class JSONReprMixin():
66
66
  class ErrorMessageMixin():
67
67
  """A model mixin to improve mode validation errors."""
68
68
 
69
- def validate_unique(self, exclude=None):
69
+ def validate_constraints(self, exclude=None):
70
70
  """Override validate_unique to allow to customize error message
71
71
  for :class:`UniqueConstraint`.
72
72
  """
@@ -79,7 +79,7 @@ class ErrorMessageMixin():
79
79
  return v
80
80
 
81
81
  try:
82
- return super().validate_unique(exclude=exclude)
82
+ return super().validate_constraints(exclude=exclude)
83
83
  except ValidationError as e:
84
84
  errors = e.update_error_dict({})
85
85
  non_field_errors = []
@@ -1,4 +1,4 @@
1
- Django>=3.2,<4.0
1
+ django>=4.2,<5.0
2
2
  unittest-xml-reporting
3
3
  pre-commit
4
4
  flake8
@@ -15,3 +15,6 @@ sphinx
15
15
  myst-parser
16
16
  sphinx-rtd-theme
17
17
  dill
18
+ apispec
19
+ pyyaml
20
+ pytz
@@ -31,7 +31,7 @@ classifiers =
31
31
  packages = find_namespace:
32
32
  include_package_data = true
33
33
  install_requires =
34
- django>=3.2,<5.0
34
+ django>=4.2,<5.0
35
35
  django-cors-headers
36
36
  django_json_widget
37
37
  pyjwt>=2.1
File without changes
File without changes
File without changes