commonground-api-common 2.6.0__tar.gz → 2.6.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (227) hide show
  1. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/CHANGELOG.rst +10 -0
  2. {commonground_api_common-2.6.0/commonground_api_common.egg-info → commonground_api_common-2.6.2}/PKG-INFO +1 -2
  3. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2/commonground_api_common.egg-info}/PKG-INFO +1 -2
  4. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/commonground_api_common.egg-info/SOURCES.txt +1 -0
  5. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/commonground_api_common.egg-info/requires.txt +0 -1
  6. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/setup.cfg +1 -2
  7. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_filter_extension.py +13 -0
  8. commonground_api_common-2.6.2/tests/test_serializer_fields.py +58 -0
  9. commonground_api_common-2.6.2/vng_api_common/__init__.py +1 -0
  10. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/filtersets.py +10 -0
  11. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/serializers.py +9 -22
  12. commonground_api_common-2.6.0/vng_api_common/__init__.py +0 -1
  13. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/MANIFEST.in +0 -0
  14. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/README.rst +0 -0
  15. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/bin/generate_schema +0 -0
  16. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/commonground_api_common.egg-info/dependency_links.txt +0 -0
  17. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/commonground_api_common.egg-info/not-zip-safe +0 -0
  18. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/commonground_api_common.egg-info/top_level.txt +0 -0
  19. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/pyproject.toml +0 -0
  20. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/setup.py +0 -0
  21. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_autorisatie_validation.py +0 -0
  22. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_cache_headers.py +0 -0
  23. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_cached_hyperlinkrelatedfields.py +0 -0
  24. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_check_query_params.py +0 -0
  25. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_checks.py +0 -0
  26. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_choices.py +0 -0
  27. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_configuration_steps_applicaties.py +0 -0
  28. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_configuration_steps_jwtsecrets.py +0 -0
  29. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_content_type_headers.py +0 -0
  30. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_field_extensions.py +0 -0
  31. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_filters.py +0 -0
  32. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_gegevensgroepen.py +0 -0
  33. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_get_resource.py +0 -0
  34. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_jwt_decoding.py +0 -0
  35. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_jwtsecrets.py +0 -0
  36. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_migrations.py +0 -0
  37. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_nested_serializer_validation.py +0 -0
  38. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_pagination.py +0 -0
  39. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_permissions.py +0 -0
  40. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_publish_validators.py +0 -0
  41. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_schema.py +0 -0
  42. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_serializer_extensions.py +0 -0
  43. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_server_errors.py +0 -0
  44. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_utils.py +0 -0
  45. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_validators.py +0 -0
  46. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/tests/test_views.py +0 -0
  47. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/admin.py +0 -0
  48. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/api/__init__.py +0 -0
  49. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/api/permissions.py +0 -0
  50. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/api/serializers.py +0 -0
  51. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/api/urls.py +0 -0
  52. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/api/views.py +0 -0
  53. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/apps.py +0 -0
  54. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/__init__.py +0 -0
  55. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/admin.py +0 -0
  56. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/api/__init__.py +0 -0
  57. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/api/scopes.py +0 -0
  58. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/api/serializers.py +0 -0
  59. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/apps.py +0 -0
  60. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/audits.py +0 -0
  61. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0001_initial.py +0 -0
  62. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0002_auto_20190516_0830.py +0 -0
  63. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0003_auto_20190517_0844.py +0 -0
  64. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0004_auto_20190520_1238.py +0 -0
  65. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0005_auto_20190520_1450.py +0 -0
  66. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0006_audittrail_toelichting.py +0 -0
  67. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0007_auto_20190522_0916.py +0 -0
  68. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0008_audittrail_resource_weergave.py +0 -0
  69. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0009_auto_20190712_1643.py +0 -0
  70. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0010_audittrail_request_id.py +0 -0
  71. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0011_auto_20190918_1335.py +0 -0
  72. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0012_auto_20200619_0545.py +0 -0
  73. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0012_remove_audittrail_request_id.py +0 -0
  74. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0013_audittrail_logrecord_id.py +0 -0
  75. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0013_auto_20201207_0846.py +0 -0
  76. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0014_auto_20201221_0905.py +0 -0
  77. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0014_auto_20210323_1654.py +0 -0
  78. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0015_auto_20220318_1608.py +0 -0
  79. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0016_merge_20220607_0517.py +0 -0
  80. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0017_alter_audittrail_bron.py +0 -0
  81. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/0018_auto_20221212_0745.py +0 -0
  82. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/__init__.py +0 -0
  83. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/migrations/_operations.py +0 -0
  84. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/models.py +0 -0
  85. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/utils.py +0 -0
  86. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/audittrails/viewsets.py +0 -0
  87. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/__init__.py +0 -0
  88. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/admin.py +0 -0
  89. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/middleware.py +0 -0
  90. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0001_initial.py +0 -0
  91. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0002_authorizationsconfig.py +0 -0
  92. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0003_auto_20190502_0409.py +0 -0
  93. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0004_auto_20190503_0941.py +0 -0
  94. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0005_auto_20190506_0842.py +0 -0
  95. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0006_auto_20190506_0901.py +0 -0
  96. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0007_auto_20190506_1212.py +0 -0
  97. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0008_auto_20190712_1541.py +0 -0
  98. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0009_update_enums.py +0 -0
  99. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0010_auto_20190712_1643.py +0 -0
  100. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0011_auto_20191114_0728.py +0 -0
  101. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0012_auto_20200619_0545.py +0 -0
  102. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0013_auto_20201207_0846.py +0 -0
  103. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0014_auto_20201221_0905.py +0 -0
  104. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0015_auto_20220318_1608.py +0 -0
  105. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0016_remove_authorizationsconfig_api_root_and_more.py +0 -0
  106. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/0017_alter_applicatie_client_ids_and_more.py +0 -0
  107. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/migrations/__init__.py +0 -0
  108. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/models.py +0 -0
  109. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/serializers.py +0 -0
  110. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/utils.py +0 -0
  111. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/authorizations/validators.py +0 -0
  112. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/caching/__init__.py +0 -0
  113. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/caching/decorators.py +0 -0
  114. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/caching/etags.py +0 -0
  115. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/caching/introspection.py +0 -0
  116. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/caching/models.py +0 -0
  117. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/caching/registry.py +0 -0
  118. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/caching/signals.py +0 -0
  119. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/checks.py +0 -0
  120. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/choices.py +0 -0
  121. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/client.py +0 -0
  122. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/compat.py +0 -0
  123. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/conf/__init__.py +0 -0
  124. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/conf/api.py +0 -0
  125. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/constants.py +0 -0
  126. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/contrib/__init__.py +0 -0
  127. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/contrib/setup_configuration/__init__.py +0 -0
  128. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/contrib/setup_configuration/models.py +0 -0
  129. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/contrib/setup_configuration/steps.py +0 -0
  130. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/db/__init__.py +0 -0
  131. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/db/operations.py +0 -0
  132. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/decorators.py +0 -0
  133. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/descriptors.py +0 -0
  134. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/doc.py +0 -0
  135. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/exception_handling.py +0 -0
  136. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/exceptions.py +0 -0
  137. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/extensions/__init__.py +0 -0
  138. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/extensions/file.py +0 -0
  139. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/extensions/gegevensgroep.py +0 -0
  140. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/extensions/geojson.py +0 -0
  141. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/extensions/hyperlink.py +0 -0
  142. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/extensions/polymorphic.py +0 -0
  143. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/extensions/query.py +0 -0
  144. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/fields.py +0 -0
  145. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/filters.py +0 -0
  146. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/generators.py +0 -0
  147. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/geo.py +0 -0
  148. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/locale/nl/LC_MESSAGES/django.mo +0 -0
  149. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/locale/nl/LC_MESSAGES/django.po +0 -0
  150. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/middleware.py +0 -0
  151. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/migrations/0001_initial.py +0 -0
  152. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/migrations/0002_apicredential.py +0 -0
  153. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/migrations/0003_auto_20190417_1145.py +0 -0
  154. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/migrations/0004_auto_20190517_0903.py +0 -0
  155. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/migrations/0005_auto_20190614_1346.py +0 -0
  156. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/migrations/0006_delete_apicredential.py +0 -0
  157. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/migrations/__init__.py +0 -0
  158. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/mocks.py +0 -0
  159. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/models.py +0 -0
  160. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/__init__.py +0 -0
  161. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/api/__init__.py +0 -0
  162. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/api/urls.py +0 -0
  163. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/api/views.py +0 -0
  164. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/apps.py +0 -0
  165. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/handlers.py +0 -0
  166. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/migrations/0001_initial.py +0 -0
  167. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/migrations/0002_subscription__subscription.py +0 -0
  168. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/migrations/0003_auto_20190319_1048.py +0 -0
  169. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/migrations/0004_auto_20190325_1313.py +0 -0
  170. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/migrations/0005_fix_default_nrc.py +0 -0
  171. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/migrations/0006_auto_20190417_1142.py +0 -0
  172. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/migrations/0007_auto_20190429_1442.py +0 -0
  173. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/migrations/0008_auto_20190502_0415.py +0 -0
  174. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/migrations/0009_auto_20190729_0427.py +0 -0
  175. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/migrations/0010_auto_20220704_1419.py +0 -0
  176. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/migrations/0011_remove_subscription_config_and_more.py +0 -0
  177. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/notifications/migrations/__init__.py +0 -0
  178. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/oas.py +0 -0
  179. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/pagination.py +0 -0
  180. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/permissions.py +0 -0
  181. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/polymorphism.py +0 -0
  182. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/routers.py +0 -0
  183. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/schema.py +0 -0
  184. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/scopes.py +0 -0
  185. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/search.py +0 -0
  186. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/css/admin/admin_overrides.css +0 -0
  187. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/css/screen.css +0 -0
  188. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/ico/favicon.png +0 -0
  189. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/img/vng.svg +0 -0
  190. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/LICENSE.txt +0 -0
  191. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/css/all.css +0 -0
  192. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/css/all.min.css +0 -0
  193. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-brands-400.eot +0 -0
  194. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-brands-400.svg +0 -0
  195. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-brands-400.ttf +0 -0
  196. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-brands-400.woff +0 -0
  197. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-brands-400.woff2 +0 -0
  198. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-regular-400.eot +0 -0
  199. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-regular-400.svg +0 -0
  200. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-regular-400.ttf +0 -0
  201. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-regular-400.woff +0 -0
  202. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-regular-400.woff2 +0 -0
  203. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-solid-900.eot +0 -0
  204. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-solid-900.svg +0 -0
  205. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-solid-900.ttf +0 -0
  206. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-solid-900.woff +0 -0
  207. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/static/vng_api_common/libs/fontawesome/webfonts/fa-solid-900.woff2 +0 -0
  208. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/templates/vng_api_common/admin/base_site.html +0 -0
  209. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/templates/vng_api_common/includes/kanalen_card.html +0 -0
  210. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/templates/vng_api_common/index.html +0 -0
  211. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/templates/vng_api_common/master.html +0 -0
  212. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/templates/vng_api_common/ref/error_detail.html +0 -0
  213. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/templates/vng_api_common/ref/scopes.html +0 -0
  214. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/templates/vng_api_common/view_config.html +0 -0
  215. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/templatetags/__init__.py +0 -0
  216. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/templatetags/vng_api_common.py +0 -0
  217. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/tests/__init__.py +0 -0
  218. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/tests/auth.py +0 -0
  219. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/tests/caching.py +0 -0
  220. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/tests/schema.py +0 -0
  221. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/tests/urls.py +0 -0
  222. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/urls.py +0 -0
  223. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/utils.py +0 -0
  224. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/validators.py +0 -0
  225. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/version.py +0 -0
  226. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/views.py +0 -0
  227. {commonground_api_common-2.6.0 → commonground_api_common-2.6.2}/vng_api_common/viewsets.py +0 -0
@@ -2,6 +2,16 @@
2
2
  Change history
3
3
  ==============
4
4
 
5
+ 2.6.2 (2025-04-16)
6
+ ------------------
7
+
8
+ * [maykinmedia/open-klant#341] Fix ``help_text`` field in FilterSet
9
+
10
+ 2.6.1 (2025-04-14)
11
+ ------------------
12
+
13
+ * [open-zaak/open-zaak#1799] Fix ``DurationField`` to consistently support negative durations.
14
+
5
15
  2.6.0 (2025-04-07)
6
16
  ------------------
7
17
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: commonground-api-common
3
- Version: 2.6.0
3
+ Version: 2.6.2
4
4
  Summary: Commonground API tooling
5
5
  Home-page: https://github.com/maykinmedia/commonground-api-common
6
6
  Author: Maykin Media, VNG-Realisatie
@@ -28,7 +28,6 @@ Requires-Dist: django-rest-framework-condition
28
28
  Requires-Dist: drf-nested-routers>=0.94.1
29
29
  Requires-Dist: drf-spectacular
30
30
  Requires-Dist: iso-639
31
- Requires-Dist: isodate
32
31
  Requires-Dist: notifications-api-common>=0.3.1
33
32
  Requires-Dist: zgw-consumers>=0.35.1
34
33
  Requires-Dist: oyaml
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: commonground-api-common
3
- Version: 2.6.0
3
+ Version: 2.6.2
4
4
  Summary: Commonground API tooling
5
5
  Home-page: https://github.com/maykinmedia/commonground-api-common
6
6
  Author: Maykin Media, VNG-Realisatie
@@ -28,7 +28,6 @@ Requires-Dist: django-rest-framework-condition
28
28
  Requires-Dist: drf-nested-routers>=0.94.1
29
29
  Requires-Dist: drf-spectacular
30
30
  Requires-Dist: iso-639
31
- Requires-Dist: isodate
32
31
  Requires-Dist: notifications-api-common>=0.3.1
33
32
  Requires-Dist: zgw-consumers>=0.35.1
34
33
  Requires-Dist: oyaml
@@ -34,6 +34,7 @@ tests/test_permissions.py
34
34
  tests/test_publish_validators.py
35
35
  tests/test_schema.py
36
36
  tests/test_serializer_extensions.py
37
+ tests/test_serializer_fields.py
37
38
  tests/test_server_errors.py
38
39
  tests/test_utils.py
39
40
  tests/test_validators.py
@@ -7,7 +7,6 @@ django-rest-framework-condition
7
7
  drf-nested-routers>=0.94.1
8
8
  drf-spectacular
9
9
  iso-639
10
- isodate
11
10
  notifications-api-common>=0.3.1
12
11
  zgw-consumers>=0.35.1
13
12
  oyaml
@@ -1,6 +1,6 @@
1
1
  [metadata]
2
2
  name = commonground-api-common
3
- version = 2.6.0
3
+ version = 2.6.2
4
4
  description = Commonground API tooling
5
5
  long_description = file: README.rst
6
6
  url = https://github.com/maykinmedia/commonground-api-common
@@ -38,7 +38,6 @@ install_requires =
38
38
  drf-nested-routers>=0.94.1
39
39
  drf-spectacular
40
40
  iso-639
41
- isodate
42
41
  notifications-api-common>=0.3.1
43
42
  zgw-consumers>=0.35.1
44
43
  oyaml
@@ -7,6 +7,7 @@ from testapp.models import FkModel
7
7
  from testapp.serializers import PolySerializer
8
8
  from tests import generate_schema
9
9
  from vng_api_common import routers
10
+ from vng_api_common.filtersets import FilterSet
10
11
 
11
12
 
12
13
  class FkModelSerializer(serializers.ModelSerializer):
@@ -33,6 +34,12 @@ class FkModelViewSet(viewsets.ModelViewSet):
33
34
  ]
34
35
 
35
36
 
37
+ class FkModelFilterSet(FilterSet):
38
+ class Meta:
39
+ model = FkModel
40
+ fields = ["name"]
41
+
42
+
36
43
  app_name = "filter_extensions"
37
44
 
38
45
  router = routers.DefaultRouter(trailing_slash=False)
@@ -51,3 +58,9 @@ def test_camilize():
51
58
  assert parameters[0]["name"] == "fieldWithUnderscores"
52
59
  assert parameters[1]["name"] == "name"
53
60
  assert parameters[2]["name"] == "poly__name"
61
+
62
+
63
+ def test_help_text_from_model():
64
+ filter_set = FkModelFilterSet()
65
+ field = filter_set.filters["name"]
66
+ assert field.extra["help_text"] == "FkModel simple name help_text"
@@ -0,0 +1,58 @@
1
+ from dateutil.relativedelta import relativedelta
2
+ from rest_framework import serializers, viewsets
3
+
4
+ from vng_api_common.serializers import DurationField
5
+
6
+ VALID_DURATION_OPTIONS = [
7
+ ("P10D", relativedelta(days=10)),
8
+ ("P1M10D", relativedelta(months=1, days=10)),
9
+ ("P1Y1M10D", relativedelta(years=1, months=1, days=10)),
10
+ ("P-10D", relativedelta(days=-10)),
11
+ ("P-1M-10D", relativedelta(months=-1, days=-10)),
12
+ ("P-1Y-1M-10D", relativedelta(years=-1, months=-1, days=-10)),
13
+ ("P1Y-1M10D", relativedelta(years=+1, months=-1, days=+10)),
14
+ ]
15
+
16
+
17
+ class DurationSerializer(serializers.Serializer):
18
+ duration = DurationField()
19
+
20
+
21
+ class DurationView(viewsets.ModelViewSet):
22
+ serializer_class = DurationSerializer
23
+
24
+
25
+ def test_duration_field_valid_serialization():
26
+ data = {"duration": ""}
27
+ for duration in VALID_DURATION_OPTIONS:
28
+ data["duration"] = duration[0]
29
+ serializer = DurationSerializer(data=data)
30
+ assert serializer.is_valid()
31
+ assert serializer.to_representation({"duration": duration[1]}) == data
32
+
33
+
34
+ def test_duration_field_valid_deserialization():
35
+ data = {"duration": ""}
36
+ for duration in VALID_DURATION_OPTIONS:
37
+ data["duration"] = duration[0]
38
+ serializer = DurationSerializer(data=data)
39
+ assert serializer.is_valid()
40
+ assert serializer.to_internal_value(data) == {"duration": duration[1]}
41
+
42
+
43
+ def test_duration_field_invalid_deserialization():
44
+ duration_options = [
45
+ "test",
46
+ "10D",
47
+ "-P10D",
48
+ "-P-10D",
49
+ ]
50
+ data = {"duration": ""}
51
+ for d in duration_options:
52
+ data["duration"] = d
53
+ serializer = DurationSerializer(data=data)
54
+ assert not serializer.is_valid()
55
+ assert (
56
+ serializer.errors["duration"][0]
57
+ == "Duration has wrong format. Use one of these formats instead: P(n)Y(n)M(n)D."
58
+ )
@@ -0,0 +1 @@
1
+ __version__ = "2.6.2"
@@ -25,3 +25,13 @@ class FilterSet(filterset.FilterSet):
25
25
  """
26
26
 
27
27
  FILTER_DEFAULTS = FILTER_FOR_DBFIELD_DEFAULTS
28
+
29
+ @classmethod
30
+ def filter_for_field(cls, field, field_name, lookup_expr=None):
31
+ """
32
+ Add help texts for model field filters
33
+ """
34
+ filter_set = super().filter_for_field(field, field_name, lookup_expr)
35
+ if not filter_set.extra.get("help_text"):
36
+ filter_set.extra["help_text"] = getattr(field, "help_text", None)
37
+ return filter_set
@@ -1,4 +1,3 @@
1
- import datetime
2
1
  import inspect
3
2
  from collections import OrderedDict
4
3
  from functools import reduce
@@ -8,7 +7,7 @@ from django.db import models, transaction
8
7
  from django.db.models import Model
9
8
  from django.utils.translation import gettext_lazy as _
10
9
 
11
- import isodate
10
+ from dateutil.relativedelta import relativedelta
12
11
  from rest_framework import fields, serializers
13
12
  from rest_framework.request import Request
14
13
  from rest_framework_nested.relations import NestedHyperlinkedRelatedField
@@ -18,41 +17,29 @@ from .descriptors import GegevensGroepType
18
17
 
19
18
  try:
20
19
  # 1.1.x
21
- from relativedeltafield.utils import format_relativedelta, relativedelta
20
+ from relativedeltafield.utils import format_relativedelta, parse_relativedelta
22
21
  except ImportError:
23
22
  try:
24
23
  # 1.0.x
25
- from relativedeltafield import format_relativedelta, relativedelta
24
+ from relativedeltafield import format_relativedelta, parse_relativedelta
26
25
  except ImportError:
27
26
  format_relativedelta = None
28
- relativedelta = None
27
+ parse_relativedelta = None
29
28
 
30
29
 
31
30
  class DurationField(fields.DurationField):
32
31
  def to_internal_value(self, value):
33
- if isinstance(value, datetime.timedelta):
32
+ if isinstance(value, relativedelta):
34
33
  return value
35
34
  try:
36
- parsed = isodate.parse_duration(str(value))
37
- except isodate.ISO8601Error:
35
+ return parse_relativedelta(str(value))
36
+ except ValueError:
38
37
  self.fail("invalid", format="P(n)Y(n)M(n)D")
39
- else:
40
- if isinstance(parsed, isodate.Duration):
41
- # TODO: start should probably be a proper object, but we should
42
- # really switch to relativedeltafield
43
- parsed = parsed.totimedelta(start=datetime.datetime.now())
44
- assert isinstance(parsed, datetime.timedelta)
45
- return parsed
46
38
 
47
39
  def to_representation(self, value) -> Optional[str]:
48
- if relativedelta and isinstance(value, relativedelta):
49
- # relativedeltafield 1.1.2 returns a relativedelta() object with no duration,
50
- # to keep behaviour consistent with older versions, change that to `None`
51
- if not value:
52
- return None
40
+ if isinstance(value, relativedelta):
53
41
  return format_relativedelta(value)
54
-
55
- return isodate.duration_isoformat(value)
42
+ return None
56
43
 
57
44
 
58
45
  class FieldValidationErrorSerializer(serializers.Serializer):
@@ -1 +0,0 @@
1
- __version__ = "2.6.0"