pulpcore 3.80.2__tar.gz → 3.81.0__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.

Potentially problematic release.


This version of pulpcore might be problematic. Click here for more details.

Files changed (555) hide show
  1. {pulpcore-3.80.2 → pulpcore-3.81.0}/CHANGES.md +190 -20
  2. {pulpcore-3.80.2 → pulpcore-3.81.0}/PKG-INFO +21 -21
  3. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/app/__init__.py +1 -1
  4. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/__init__.py +1 -1
  5. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/pytest_plugin.py +22 -104
  6. pulpcore-3.81.0/pulp_file/tests/functional/api/test_bad_sync.py +132 -0
  7. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/apps.py +1 -1
  8. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/entrypoint.py +4 -1
  9. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/files.py +15 -5
  10. pulpcore-3.81.0/pulpcore/app/netutil.py +20 -0
  11. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/content.py +1 -1
  12. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/fields.py +10 -0
  13. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/content/__init__.py +2 -1
  14. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/content/entrypoint.py +4 -1
  15. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/download/base.py +9 -2
  16. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore.egg-info/PKG-INFO +21 -21
  17. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore.egg-info/SOURCES.txt +1 -0
  18. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore.egg-info/requires.txt +20 -20
  19. {pulpcore-3.80.2 → pulpcore-3.81.0}/pyproject.toml +28 -28
  20. pulpcore-3.80.2/pulp_file/tests/functional/api/test_bad_sync.py +0 -72
  21. {pulpcore-3.80.2 → pulpcore-3.81.0}/CODE_OF_CONDUCT.md +0 -0
  22. {pulpcore-3.80.2 → pulpcore-3.81.0}/COMMITMENT +0 -0
  23. {pulpcore-3.80.2 → pulpcore-3.81.0}/CONTRIBUTING.md +0 -0
  24. {pulpcore-3.80.2 → pulpcore-3.81.0}/COPYRIGHT +0 -0
  25. {pulpcore-3.80.2 → pulpcore-3.81.0}/LICENSE +0 -0
  26. {pulpcore-3.80.2 → pulpcore-3.81.0}/MANIFEST.in +0 -0
  27. {pulpcore-3.80.2 → pulpcore-3.81.0}/README.md +0 -0
  28. {pulpcore-3.80.2 → pulpcore-3.81.0}/ci_requirements.txt +0 -0
  29. {pulpcore-3.80.2 → pulpcore-3.81.0}/functest_requirements.txt +0 -0
  30. {pulpcore-3.80.2 → pulpcore-3.81.0}/manage.py +0 -0
  31. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/__init__.py +0 -0
  32. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/app/migrations/0001_initial.py +0 -0
  33. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/app/migrations/0002_alter_rhsmcertguard_contentguard_ptr_and_more.py +0 -0
  34. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/app/migrations/__init__.py +0 -0
  35. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/app/models.py +0 -0
  36. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/app/serializers.py +0 -0
  37. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/app/utils.py +0 -0
  38. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/app/viewsets.py +0 -0
  39. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/pytest_plugin.py +0 -0
  40. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/__init__.py +0 -0
  41. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/__init__.py +0 -0
  42. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/api/__init__.py +0 -0
  43. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/api/test_rhsm_certguard.py +0 -0
  44. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/api/test_x509_certguard.py +0 -0
  45. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/katello-default-ca.crt +0 -0
  46. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/katello-default-ca.key +0 -0
  47. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/trusted_but_expired.pem +0 -0
  48. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/uber.cert +0 -0
  49. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/untrusted_cert-key.pem +0 -0
  50. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/untrusted_cert.pem +0 -0
  51. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v1/1514454871848760713-key.pem +0 -0
  52. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v1/1514454871848760713.pem +0 -0
  53. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v1/159442575569388840-key.pem +0 -0
  54. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v1/159442575569388840.pem +0 -0
  55. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v3/4260035510644027985-key.pem +0 -0
  56. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v3/4260035510644027985.pem +0 -0
  57. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v3/5527980418107729172-key.pem +0 -0
  58. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/rhsm/v3/5527980418107729172.pem +0 -0
  59. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/thirdparty_ca/certificates/ca.pem +0 -0
  60. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/thirdparty_ca/genca.sh +0 -0
  61. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/thirdparty_ca/keys/ca.pem +0 -0
  62. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/certificates/ca.pem +0 -0
  63. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/certificates/client.pem +0 -0
  64. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/certificates/server.pem +0 -0
  65. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/certificates/un_urlencoded_cert.txt +0 -0
  66. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/certificates/untrusted_client.pem +0 -0
  67. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/genall.sh +0 -0
  68. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/genca.sh +0 -0
  69. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/genclient.sh +0 -0
  70. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/gensrv.sh +0 -0
  71. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/keys/ca.pem +0 -0
  72. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/keys/client.pem +0 -0
  73. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/artifacts/x509/keys/server.pem +0 -0
  74. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/conftest.py +0 -0
  75. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/functional/constants.py +0 -0
  76. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/unit/__init__.py +0 -0
  77. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_certguard/tests/unit/test_models.py +0 -0
  78. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/__init__.py +0 -0
  79. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0001_initial.py +0 -0
  80. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0001_initial_squashed_0016_add_domain.py +0 -0
  81. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0002_file_related_names.py +0 -0
  82. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0003_auto_20191014_1721.py +0 -0
  83. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0004_filefilesystemexporter.py +0 -0
  84. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0005_filerepository.py +0 -0
  85. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0006_delete_filefilesystemexporter.py +0 -0
  86. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0007_filefilesystemexporter.py +0 -0
  87. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0008_add_manifest_field.py +0 -0
  88. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0009_move_data_to_new_master_distribution_model.py +0 -0
  89. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0010_auto_publish.py +0 -0
  90. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0011_fix_auto_publish.py +0 -0
  91. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0012_delete_filefilesystemexporter.py +0 -0
  92. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0013_file_acs.py +0 -0
  93. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0014_new_rbac_permissions.py +0 -0
  94. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0015_allow_null_manifest.py +0 -0
  95. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0016_add_domain.py +0 -0
  96. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/0017_alter_filealternatecontentsource_alternatecontentsource_ptr_and_more.py +0 -0
  97. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/migrations/__init__.py +0 -0
  98. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/modelresource.py +0 -0
  99. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/models.py +0 -0
  100. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/replica.py +0 -0
  101. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/serializers.py +0 -0
  102. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/tasks/__init__.py +0 -0
  103. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/tasks/publishing.py +0 -0
  104. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/tasks/synchronizing.py +0 -0
  105. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/app/viewsets.py +0 -0
  106. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/manifest.py +0 -0
  107. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/__init__.py +0 -0
  108. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/__init__.py +0 -0
  109. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/__init__.py +0 -0
  110. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_acs.py +0 -0
  111. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_auto_publish.py +0 -0
  112. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_content_labels.py +0 -0
  113. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_crud_content_unit.py +0 -0
  114. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_crud_remotes.py +0 -0
  115. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_domains.py +0 -0
  116. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_download_policies.py +0 -0
  117. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_generic_list.py +0 -0
  118. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_labels.py +0 -0
  119. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_mime_types.py +0 -0
  120. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_publish.py +0 -0
  121. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_pulp_export.py +0 -0
  122. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_rbac.py +0 -0
  123. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_remote_settings.py +0 -0
  124. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/functional/api/test_sync.py +0 -0
  125. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/unit/__init__.py +0 -0
  126. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/unit/test_safe_paths.py +0 -0
  127. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulp_file/tests/unit/test_serializers.py +0 -0
  128. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/__init__.py +0 -0
  129. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/__init__.py +0 -0
  130. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/access_policy.py +0 -0
  131. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/authentication.py +0 -0
  132. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/checks.py +0 -0
  133. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/global_access_conditions.py +0 -0
  134. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/importexport.py +0 -0
  135. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/loggers.py +0 -0
  136. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/manage.py +0 -0
  137. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/__init__.py +0 -0
  138. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/__init__.py +0 -0
  139. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/add-signing-service.py +0 -0
  140. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/analyze-publication.py +0 -0
  141. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/clean-up-progress-reports.py +0 -0
  142. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/datarepair-2327.py +0 -0
  143. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/dump-permissions.py +0 -0
  144. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/dump-publications-to-fs.py +0 -0
  145. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/handle-artifact-checksums.py +0 -0
  146. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/migrationstat.py +0 -0
  147. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/openapi.py +0 -0
  148. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/rebasemigrations.py +0 -0
  149. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/remove-plugin.py +0 -0
  150. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/remove-signing-service.py +0 -0
  151. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/repository-size.py +0 -0
  152. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/reset-admin-password.py +0 -0
  153. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/management/commands/rotate-db-key.py +0 -0
  154. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0001_initial.py +0 -0
  155. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0001_squashed_0090_char_to_text_field.py +0 -0
  156. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0002_increase_artifact_size_field.py +0 -0
  157. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0003_remove_upload_completed.py +0 -0
  158. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0004_add_duplicated_reserved_resources.py +0 -0
  159. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0005_progressreport_code.py +0 -0
  160. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0006_repository_plugin_managed.py +0 -0
  161. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0007_delete_progress_proxies.py +0 -0
  162. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0008_published_metadata_as_content.py +0 -0
  163. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0009_remove_task_non_fatal_errors.py +0 -0
  164. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0010_pulp_fields.py +0 -0
  165. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0011_relative_path.py +0 -0
  166. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0012_auto_20191104_2000.py +0 -0
  167. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0013_repository_pulp_type.py +0 -0
  168. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0014_remove_repository_plugin_managed.py +0 -0
  169. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0015_auto_20191112_1426.py +0 -0
  170. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0016_charfield_to_textfield.py +0 -0
  171. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0017_remove_task_parent.py +0 -0
  172. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0018_auto_20191127_2350.py +0 -0
  173. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0019_add_signing_service_model.py +0 -0
  174. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0020_change_publishedartifact_constraints.py +0 -0
  175. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0021_add_signing_service_foreign_key.py +0 -0
  176. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0022_rename_last_version.py +0 -0
  177. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0023_change_exporter_models.py +0 -0
  178. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0024_use_local_storage_for_uploads.py +0 -0
  179. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0025_task_parent_task.py +0 -0
  180. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0026_task_group.py +0 -0
  181. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0027_export_backend.py +0 -0
  182. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0028_import_importer_pulpimporter_pulpimporterrepository.py +0 -0
  183. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0029_export_delete.py +0 -0
  184. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0030_taskgroup_all_tasks_dispatched.py +0 -0
  185. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0031_import_export_validate_params.py +0 -0
  186. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0032_export_to_chunks.py +0 -0
  187. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0033_increase_remote_artifact_size_field.py +0 -0
  188. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0034_groupprogressreport.py +0 -0
  189. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0035_content_upstream_id.py +0 -0
  190. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0036_unprotect_last_export.py +0 -0
  191. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0037_pulptemporaryfile.py +0 -0
  192. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0038_repository_remote.py +0 -0
  193. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0039_change_download_concurrency.py +0 -0
  194. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0040_set_admin_is_staff.py +0 -0
  195. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0041_accesspolicy.py +0 -0
  196. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0042_rbac_for_tasks.py +0 -0
  197. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0043_toc_attribute.py +0 -0
  198. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0044_temp_file_artifact_field.py +0 -0
  199. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0045_accesspolicy_permissions_allow_null.py +0 -0
  200. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0046_task__resource_job_id.py +0 -0
  201. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0047_improve_orphan_cleanup.py +0 -0
  202. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0048_fips_checksums.py +0 -0
  203. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0049_add_file_field_to_uploadchunk.py +0 -0
  204. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0050_namespace_access_policies.py +0 -0
  205. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0051_timeoutfields.py +0 -0
  206. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0052_tasking_logging_cid.py +0 -0
  207. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0053_remote_headers.py +0 -0
  208. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0054_add_public_key.py +0 -0
  209. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0055_label.py +0 -0
  210. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0056_remote_rate_limit.py +0 -0
  211. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0057_add_label_indexes.py +0 -0
  212. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0058_accesspolicy_customized.py +0 -0
  213. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0059_proxy_creds.py +0 -0
  214. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0060_data_migration_proxy_creds.py +0 -0
  215. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0061_call_handle_artifact_checksums_command.py +0 -0
  216. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0062_add_new_distribution_mastermodel.py +0 -0
  217. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0063_repository_retained_versions.py +0 -0
  218. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0064_add_new_style_task_columns.py +0 -0
  219. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0064_repository_user_hidden.py +0 -0
  220. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0065_merge_20210615_1211.py +0 -0
  221. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0066_download_concurrency_and_retry_changes.py +0 -0
  222. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0067_add_protect_to_task_reservation.py +0 -0
  223. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0068_add_timestamp_of_interest.py +0 -0
  224. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0069_update_json_fields.py +0 -0
  225. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0070_rename_retained_versions.py +0 -0
  226. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0071_filesystemexport_filesystemexporter.py +0 -0
  227. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0072_add_method_to_filesystem_exporter.py +0 -0
  228. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0073_encrypt_remote_fields.py +0 -0
  229. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0074_acs.py +0 -0
  230. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0075_rbaccontentguard.py +0 -0
  231. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0076_remove_reserved_resource.py +0 -0
  232. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0077_move_remote_url_credentials.py +0 -0
  233. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0078_grouprole_role_userrole.py +0 -0
  234. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0079_rename_permissions_assignment_accesspolicy_creation_hooks.py +0 -0
  235. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0080_proxy_group_model.py +0 -0
  236. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0081_reapplabel_group_permissions.py +0 -0
  237. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0082_add_manage_roles_permissions.py +0 -0
  238. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0083_alter_group_options.py +0 -0
  239. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0084_alter_rbaccontentguard_options.py +0 -0
  240. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0085_contentredirectcontentguard.py +0 -0
  241. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0086_task_json_fields.py +0 -0
  242. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0087_taskschedule.py +0 -0
  243. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0088_accesspolicy_queryset_scoping.py +0 -0
  244. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0089_alter_contentredirectcontentguard_options.py +0 -0
  245. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0090_char_to_text_field.py +0 -0
  246. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0091_systemid.py +0 -0
  247. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0092_alter_upload_options.py +0 -0
  248. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0093_add_info_field_repositoryversion.py +0 -0
  249. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0094_protect_repository_content.py +0 -0
  250. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0095_artifactdistribution.py +0 -0
  251. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0096_alter_task_logging_cid.py +0 -0
  252. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0097_remove_telemetry_task_schedule.py +0 -0
  253. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0098_pulp_labels.py +0 -0
  254. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0099_versions_field.py +0 -0
  255. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0100_upstreampulp.py +0 -0
  256. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0101_add_domain.py +0 -0
  257. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0102_add_domain_relations.py +0 -0
  258. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0103_alter_export_task.py +0 -0
  259. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0104_delete_label.py +0 -0
  260. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0105_abstract_uuid_gen.py +0 -0
  261. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0106_alter_artifactdistribution_distribution_ptr_and_more.py +0 -0
  262. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0107_distribution_hidden.py +0 -0
  263. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0108_task_versions.py +0 -0
  264. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0109_contentartifact_relative_path_index.py +0 -0
  265. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0110_apiappstatus.py +0 -0
  266. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0111_task_enc_args_task_enc_kwargs.py +0 -0
  267. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0112_alter_upstreampulp_options.py +0 -0
  268. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0113_headercontentguard.py +0 -0
  269. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0114_remove_task_args_remove_task_kwargs.py +0 -0
  270. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0115_compositecontentguard.py +0 -0
  271. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0116_alter_remoteartifact_md5_alter_remoteartifact_sha1_and_more.py +0 -0
  272. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0117_task_unblocked_at.py +0 -0
  273. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0118_task_core_task_unblock_2276a4_idx_and_more.py +0 -0
  274. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0119_grouprole_core_groupr_object__250e22_idx_and_more.py +0 -0
  275. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0120_get_url_removal.py +0 -0
  276. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0121_add_profile_artifacts_table.py +0 -0
  277. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0122_record_last_replication_timestamp.py +0 -0
  278. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0123_upstreampulp_q_select.py +0 -0
  279. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0124_task_deferred_task_immediate.py +0 -0
  280. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0125_openpgpdistribution_openpgpkeyring_openpgppublickey_and_more.py +0 -0
  281. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0126_remoteartifact_failed_at.py +0 -0
  282. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0127_remove_upstreampulp_pulp_label_select.py +0 -0
  283. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0128_domain_pulp_labels.py +0 -0
  284. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0129_content_pulp_labels.py +0 -0
  285. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0130_upstreampulp_policy.py +0 -0
  286. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0131_distribution_checkpoint_publication_checkpoint.py +0 -0
  287. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/0132_alter_content_options.py +0 -0
  288. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/migrations/__init__.py +0 -0
  289. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/mime_types.py +0 -0
  290. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/modelresource.py +0 -0
  291. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/__init__.py +0 -0
  292. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/access_policy.py +0 -0
  293. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/acs.py +0 -0
  294. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/analytics.py +0 -0
  295. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/base.py +0 -0
  296. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/content.py +0 -0
  297. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/domain.py +0 -0
  298. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/exporter.py +0 -0
  299. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/fields.py +0 -0
  300. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/generic.py +0 -0
  301. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/importer.py +0 -0
  302. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/openpgp.py +0 -0
  303. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/progress.py +0 -0
  304. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/publication.py +0 -0
  305. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/replica.py +0 -0
  306. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/repository.py +0 -0
  307. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/role.py +0 -0
  308. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/status.py +0 -0
  309. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/storage.py +0 -0
  310. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/task.py +0 -0
  311. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/models/upload.py +0 -0
  312. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/openpgp.py +0 -0
  313. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/protobuf/__init__.py +0 -0
  314. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/protobuf/analytics_pb2.py +0 -0
  315. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/pulp_hashlib.py +0 -0
  316. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/pulpcore_gunicorn_application.py +0 -0
  317. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/redis_connection.py +0 -0
  318. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/replica.py +0 -0
  319. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/response.py +0 -0
  320. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/role_util.py +0 -0
  321. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/__init__.py +0 -0
  322. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/access_policy.py +0 -0
  323. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/acs.py +0 -0
  324. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/base.py +0 -0
  325. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/domain.py +0 -0
  326. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/exporter.py +0 -0
  327. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/importer.py +0 -0
  328. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/openpgp.py +0 -0
  329. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/orphans.py +0 -0
  330. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/progress.py +0 -0
  331. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/publication.py +0 -0
  332. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/purge.py +0 -0
  333. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/reclaim.py +0 -0
  334. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/repair.py +0 -0
  335. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/replica.py +0 -0
  336. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/repository.py +0 -0
  337. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/status.py +0 -0
  338. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/task.py +0 -0
  339. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/upload.py +0 -0
  340. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/serializers/user.py +0 -0
  341. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/settings.py +0 -0
  342. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/tasks/__init__.py +0 -0
  343. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/tasks/analytics.py +0 -0
  344. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/tasks/base.py +0 -0
  345. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/tasks/export.py +0 -0
  346. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/tasks/importer.py +0 -0
  347. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/tasks/migrate.py +0 -0
  348. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/tasks/orphan.py +0 -0
  349. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/tasks/purge.py +0 -0
  350. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/tasks/reclaim_space.py +0 -0
  351. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/tasks/replica.py +0 -0
  352. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/tasks/repository.py +0 -0
  353. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/tasks/telemetry.py +0 -0
  354. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/tasks/test.py +0 -0
  355. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/tasks/upload.py +0 -0
  356. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/templates/rest_framework/api.html +0 -0
  357. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/templatetags/__init__.py +0 -0
  358. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/templatetags/pulp_urls.py +0 -0
  359. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/urls.py +0 -0
  360. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/util.py +0 -0
  361. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/views/__init__.py +0 -0
  362. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/views/importer.py +0 -0
  363. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/views/orphans.py +0 -0
  364. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/views/repair.py +0 -0
  365. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/views/status.py +0 -0
  366. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/__init__.py +0 -0
  367. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/access_policy.py +0 -0
  368. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/acs.py +0 -0
  369. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/base.py +0 -0
  370. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/content.py +0 -0
  371. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/custom_filters.py +0 -0
  372. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/domain.py +0 -0
  373. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/exporter.py +0 -0
  374. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/importer.py +0 -0
  375. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/openpgp.py +0 -0
  376. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/orphans.py +0 -0
  377. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/publication.py +0 -0
  378. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/reclaim.py +0 -0
  379. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/replica.py +0 -0
  380. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/repository.py +0 -0
  381. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/task.py +0 -0
  382. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/upload.py +0 -0
  383. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/viewsets/user.py +0 -0
  384. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/app/wsgi.py +0 -0
  385. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/backends.py +0 -0
  386. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/cache/__init__.py +0 -0
  387. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/cache/cache.py +0 -0
  388. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/constants.py +0 -0
  389. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/content/authentication.py +0 -0
  390. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/content/handler.py +0 -0
  391. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/content/instrumentation.py +0 -0
  392. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/download/__init__.py +0 -0
  393. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/download/factory.py +0 -0
  394. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/download/file.py +0 -0
  395. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/download/http.py +0 -0
  396. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/exceptions/__init__.py +0 -0
  397. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/exceptions/base.py +0 -0
  398. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/exceptions/plugin.py +0 -0
  399. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/exceptions/validation.py +0 -0
  400. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/filters.py +0 -0
  401. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/metrics.py +0 -0
  402. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/middleware.py +0 -0
  403. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/migrations.py +0 -0
  404. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/openapi/__init__.py +0 -0
  405. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/openapi/hooks.py +0 -0
  406. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/__init__.py +0 -0
  407. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/access_policy.py +0 -0
  408. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/actions.py +0 -0
  409. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/apps.py +0 -0
  410. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/authentication/__init__.py +0 -0
  411. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/cache/__init__.py +0 -0
  412. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/constants.py +0 -0
  413. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/content.py +0 -0
  414. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/download/__init__.py +0 -0
  415. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/exceptions.py +0 -0
  416. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/files.py +0 -0
  417. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/importexport.py +0 -0
  418. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/migrations.py +0 -0
  419. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/modelresources.py +0 -0
  420. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/models/__init__.py +0 -0
  421. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/models/role.py +0 -0
  422. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/publication_utils.py +0 -0
  423. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/pulp_hashlib.py +0 -0
  424. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/replica.py +0 -0
  425. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/repo_version_utils.py +0 -0
  426. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/responses.py +0 -0
  427. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/serializers/__init__.py +0 -0
  428. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/serializers/content.py +0 -0
  429. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/stages/__init__.py +0 -0
  430. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/stages/api.py +0 -0
  431. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/stages/artifact_stages.py +0 -0
  432. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/stages/content_stages.py +0 -0
  433. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/stages/declarative_version.py +0 -0
  434. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/stages/models.py +0 -0
  435. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/storage.py +0 -0
  436. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/sync.py +0 -0
  437. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/tasking.py +0 -0
  438. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/util.py +0 -0
  439. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/viewsets/__init__.py +0 -0
  440. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/plugin/viewsets/content.py +0 -0
  441. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/pytest_plugin.py +0 -0
  442. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/responses.py +0 -0
  443. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tasking/__init__.py +0 -0
  444. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tasking/_util.py +0 -0
  445. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tasking/entrypoint.py +0 -0
  446. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tasking/kafka.py +0 -0
  447. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tasking/storage.py +0 -0
  448. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tasking/tasks.py +0 -0
  449. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tasking/worker.py +0 -0
  450. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/__init__.py +0 -0
  451. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/__init__.py +0 -0
  452. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/__init__.py +0 -0
  453. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_access_policy.py +0 -0
  454. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_api_docs.py +0 -0
  455. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_api_root_rewrite.py +0 -0
  456. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_artifact_distribution.py +0 -0
  457. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_auth.py +0 -0
  458. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_correlation_id.py +0 -0
  459. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_crd_artifacts.py +0 -0
  460. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_crud_domains.py +0 -0
  461. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_filter.py +0 -0
  462. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_login.py +0 -0
  463. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_openapi_schema.py +0 -0
  464. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_openpgp.py +0 -0
  465. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_replication.py +0 -0
  466. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_repos.py +0 -0
  467. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_role.py +0 -0
  468. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_root_endpoint.py +0 -0
  469. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_scoping.py +0 -0
  470. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_signing_service.py +0 -0
  471. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_status.py +0 -0
  472. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_task_purge.py +0 -0
  473. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_tasking.py +0 -0
  474. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_upload.py +0 -0
  475. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_users_groups.py +0 -0
  476. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/test_workers.py +0 -0
  477. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/__init__.py +0 -0
  478. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_checkpoint.py +0 -0
  479. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_content_access.py +0 -0
  480. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_content_cache.py +0 -0
  481. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_content_delivery.py +0 -0
  482. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_content_directory.py +0 -0
  483. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_content_path.py +0 -0
  484. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_content_promotion.py +0 -0
  485. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_contentguard.py +0 -0
  486. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_crud_repos.py +0 -0
  487. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_distributions.py +0 -0
  488. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_filesystemexport.py +0 -0
  489. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_labels.py +0 -0
  490. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_migrate.py +0 -0
  491. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_orphans.py +0 -0
  492. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_pagination.py +0 -0
  493. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_prn.py +0 -0
  494. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_proxy.py +0 -0
  495. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_pulpimport.py +0 -0
  496. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_reclaim_disk_space.py +0 -0
  497. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_repair.py +0 -0
  498. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_repo_versions.py +0 -0
  499. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_tasks.py +0 -0
  500. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/api/using_plugin/test_unlinking_repo.py +0 -0
  501. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/assets/__init__.py +0 -0
  502. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/content_with_coverage.py +0 -0
  503. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/functional/utils.py +0 -0
  504. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/performance/__init__.py +0 -0
  505. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/performance/test_performance.py +0 -0
  506. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/__init__.py +0 -0
  507. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/conftest.py +0 -0
  508. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/content/__init__.py +0 -0
  509. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/content/test_handler.py +0 -0
  510. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/content/test_heartbeat.py +0 -0
  511. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/download/__init__.py +0 -0
  512. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/download/test_downloader_base.py +0 -0
  513. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/download/test_downloader_factory.py +0 -0
  514. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/metrics/__init__.py +0 -0
  515. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/metrics/conftest.py +0 -0
  516. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/metrics/test_aiohttp_instrumentation.py +0 -0
  517. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/metrics/test_django_instrumentation.py +0 -0
  518. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/migration/__init__.py +0 -0
  519. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/migration/test_0077_move_remote_url_credentials.py +0 -0
  520. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/models/__init__.py +0 -0
  521. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/models/test_base.py +0 -0
  522. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/models/test_content.py +0 -0
  523. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/models/test_remote.py +0 -0
  524. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/models/test_repository.py +0 -0
  525. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/models/test_task.py +0 -0
  526. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/roles/__init__.py +0 -0
  527. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/roles/test_roles.py +0 -0
  528. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/__init__.py +0 -0
  529. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/test_base.py +0 -0
  530. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/test_domain.py +0 -0
  531. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/test_fields.py +0 -0
  532. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/test_orphans_cleanup.py +0 -0
  533. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/test_pulpexport.py +0 -0
  534. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/test_repository.py +0 -0
  535. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/serializers/test_user.py +0 -0
  536. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/stages/__init__.py +0 -0
  537. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/stages/test_artifactdownloader.py +0 -0
  538. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/stages/test_stages.py +0 -0
  539. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/test_cache.py +0 -0
  540. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/test_chunked_file.py +0 -0
  541. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/test_content_guard.py +0 -0
  542. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/test_files.py +0 -0
  543. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/test_import_checks.py +0 -0
  544. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/test_pulp_urls.py +0 -0
  545. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/test_settings.py +0 -0
  546. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/test_util.py +0 -0
  547. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/test_viewsets.py +0 -0
  548. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/viewsets/__init__.py +0 -0
  549. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore/tests/unit/viewsets/test_viewset_base.py +0 -0
  550. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore.egg-info/dependency_links.txt +0 -0
  551. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore.egg-info/entry_points.txt +0 -0
  552. {pulpcore-3.80.2 → pulpcore-3.81.0}/pulpcore.egg-info/top_level.txt +0 -0
  553. {pulpcore-3.80.2 → pulpcore-3.81.0}/setup.cfg +0 -0
  554. {pulpcore-3.80.2 → pulpcore-3.81.0}/test_requirements.txt +0 -0
  555. {pulpcore-3.80.2 → pulpcore-3.81.0}/unittest_requirements.txt +0 -0
@@ -8,21 +8,33 @@
8
8
 
9
9
  [//]: # (towncrier release notes start)
10
10
 
11
- ## 3.80.2 (2025-06-24) {: #3.80.2 }
11
+ ## 3.81.0 (2025-06-24) {: #3.81.0 }
12
12
 
13
- ### REST API {: #3.80.2-rest-api }
13
+ ### REST API {: #3.81.0-rest-api }
14
14
 
15
- No significant changes.
15
+ #### Features {: #3.81.0-rest-api-feature }
16
16
 
17
- ### Plugin API {: #3.80.2-plugin-api }
17
+ - Checksum calculation of files being uploaded or downloaded to Pulp is now multithreaded.
18
18
 
19
- No significant changes.
19
+ #### Bugfixes {: #3.81.0-rest-api-bugfix }
20
+
21
+ - Changed default http bind address from `[::]` to `0.0.0.0` if IPv6 is not available.
22
+ [#6606](https://github.com/pulp/pulpcore/issues/6606)
23
+ - Raised the minimum version of gunicorn to 22.0.
24
+ [#6640](https://github.com/pulp/pulpcore/issues/6640)
25
+
26
+ ### Plugin API {: #3.81.0-plugin-api }
27
+
28
+ #### Bugfixes {: #3.81.0-plugin-api-bugfix }
20
29
 
21
- ### Pulp File {: #3.80.2-pulp-file }
30
+ - Fixed the `pulp_labels` field on the NoArtifactContentSerializer to work inside ViewSets for multipart/form uploads.
31
+ [#6713](https://github.com/pulp/pulpcore/issues/6713)
32
+
33
+ ### Pulp File {: #3.81.0-pulp-file }
22
34
 
23
35
  No significant changes.
24
36
 
25
- ### Pulp Cert Guard {: #3.80.2-pulp-cert-guard }
37
+ ### Pulp Cert Guard {: #3.81.0-pulp-cert-guard }
26
38
 
27
39
  No significant changes.
28
40
 
@@ -63,7 +75,7 @@ No significant changes.
63
75
 
64
76
  ### Plugin API {: #3.80.0-plugin-api }
65
77
 
66
- #### Removals {: #3.80.0-plugin-api-removal }
78
+ #### Deprecations {: #3.80.0-plugin-api-deprecation }
67
79
 
68
80
  - Deprecated `TaskGroup.finish()` for removal with Pulp 4.
69
81
  [#task_group_finish](https://github.com/pulp/pulpcore/issues/task_group_finish)
@@ -78,6 +90,26 @@ No significant changes.
78
90
 
79
91
  ---
80
92
 
93
+ ## 3.79.1 (2025-05-27) {: #3.79.1 }
94
+
95
+ ### REST API {: #3.79.1-rest-api }
96
+
97
+ No significant changes.
98
+
99
+ ### Plugin API {: #3.79.1-plugin-api }
100
+
101
+ No significant changes.
102
+
103
+ ### Pulp File {: #3.79.1-pulp-file }
104
+
105
+ No significant changes.
106
+
107
+ ### Pulp Cert Guard {: #3.79.1-pulp-cert-guard }
108
+
109
+ No significant changes.
110
+
111
+ ---
112
+
81
113
  ## 3.79.0 (2025-05-20) {: #3.79.0 }
82
114
 
83
115
  ### REST API {: #3.79.0-rest-api }
@@ -124,7 +156,7 @@ No significant changes.
124
156
 
125
157
  #### Misc {: #3.78.0-rest-api-misc }
126
158
 
127
- -
159
+ -
128
160
 
129
161
  ### Plugin API {: #3.78.0-plugin-api }
130
162
 
@@ -187,7 +219,7 @@ No significant changes.
187
219
 
188
220
  #### Misc {: #3.77.0-rest-api-misc }
189
221
 
190
- -
222
+ -
191
223
 
192
224
  ### Plugin API {: #3.77.0-plugin-api }
193
225
 
@@ -502,6 +534,68 @@ No significant changes.
502
534
 
503
535
  ---
504
536
 
537
+ ## 3.73.12 (2025-06-11) {: #3.73.12 }
538
+
539
+ ### REST API {: #3.73.12-rest-api }
540
+
541
+ No significant changes.
542
+
543
+ ### Plugin API {: #3.73.12-plugin-api }
544
+
545
+ No significant changes.
546
+
547
+ ### Pulp File {: #3.73.12-pulp-file }
548
+
549
+ No significant changes.
550
+
551
+ ### Pulp Cert Guard {: #3.73.12-pulp-cert-guard }
552
+
553
+ No significant changes.
554
+
555
+ ---
556
+
557
+ ## 3.73.11 (2025-06-04) {: #3.73.11 }
558
+
559
+ ### REST API {: #3.73.11-rest-api }
560
+
561
+ No significant changes.
562
+
563
+ ### Plugin API {: #3.73.11-plugin-api }
564
+
565
+ No significant changes.
566
+
567
+ ### Pulp File {: #3.73.11-pulp-file }
568
+
569
+ No significant changes.
570
+
571
+ ### Pulp Cert Guard {: #3.73.11-pulp-cert-guard }
572
+
573
+ No significant changes.
574
+
575
+ ---
576
+
577
+ ## 3.73.10 (2025-05-27) {: #3.73.10 }
578
+
579
+ ### REST API {: #3.73.10-rest-api }
580
+
581
+ #### Bugfixes {: #3.73.10-rest-api-bugfix }
582
+
583
+ - Prevent downloader session to be closed when there is a digest validation in on_demand content serving.
584
+
585
+ ### Plugin API {: #3.73.10-plugin-api }
586
+
587
+ No significant changes.
588
+
589
+ ### Pulp File {: #3.73.10-pulp-file }
590
+
591
+ No significant changes.
592
+
593
+ ### Pulp Cert Guard {: #3.73.10-pulp-cert-guard }
594
+
595
+ No significant changes.
596
+
597
+ ---
598
+
505
599
  ## 3.73.9 (2025-05-06) {: #3.73.9 }
506
600
 
507
601
  ### REST API {: #3.73.9-rest-api }
@@ -1273,7 +1367,7 @@ No significant changes.
1273
1367
  - Downloaders now always ensure the download ends up under `WORKING_DIRECTORY`.
1274
1368
  [#5912](https://github.com/pulp/pulpcore/issues/5912)
1275
1369
 
1276
- #### Removals {: #3.67.0-plugin-api-removal }
1370
+ #### Deprecations {: #3.67.0-plugin-api-deprecation }
1277
1371
 
1278
1372
  - Deprecated `AccessPolicyFromDB` for removal in 4.0.
1279
1373
  [#5822](https://github.com/pulp/pulpcore/issues/5822)
@@ -1413,6 +1507,48 @@ No significant changes.
1413
1507
 
1414
1508
  ---
1415
1509
 
1510
+ ## 3.63.20 (2025-06-04) {: #3.63.20 }
1511
+
1512
+ ### REST API {: #3.63.20-rest-api }
1513
+
1514
+ No significant changes.
1515
+
1516
+ ### Plugin API {: #3.63.20-plugin-api }
1517
+
1518
+ No significant changes.
1519
+
1520
+ ### Pulp File {: #3.63.20-pulp-file }
1521
+
1522
+ No significant changes.
1523
+
1524
+ ### Pulp Cert Guard {: #3.63.20-pulp-cert-guard }
1525
+
1526
+ No significant changes.
1527
+
1528
+ ---
1529
+
1530
+ ## 3.63.19 (2025-05-27) {: #3.63.19 }
1531
+
1532
+ ### REST API {: #3.63.19-rest-api }
1533
+
1534
+ #### Bugfixes {: #3.63.19-rest-api-bugfix }
1535
+
1536
+ - Prevent downloader session to be closed when there is a digest validation in on_demand content serving.
1537
+
1538
+ ### Plugin API {: #3.63.19-plugin-api }
1539
+
1540
+ No significant changes.
1541
+
1542
+ ### Pulp File {: #3.63.19-pulp-file }
1543
+
1544
+ No significant changes.
1545
+
1546
+ ### Pulp Cert Guard {: #3.63.19-pulp-cert-guard }
1547
+
1548
+ No significant changes.
1549
+
1550
+ ---
1551
+
1416
1552
  ## 3.63.18 (2025-05-13) {: #3.63.18 }
1417
1553
 
1418
1554
  ### REST API {: #3.63.18-rest-api }
@@ -4249,6 +4385,23 @@ No significant changes.
4249
4385
  - Starting from this release pulp_file will be shipped as part of the pulpcore package.
4250
4386
  [#4550](https://github.com/pulp/pulpcore/issues/4550)
4251
4387
 
4388
+ ## 3.39.32 (2025-05-27) {: #3.39.32 }
4389
+
4390
+ ### REST API {: #3.39.32-rest-api }
4391
+
4392
+ #### Bugfixes {: #3.39.32-rest-api-bugfix }
4393
+
4394
+ - Fixed bug which prevented the Pulp API usaging from a web browser
4395
+ [#5250](https://github.com/pulp/pulpcore/issues/5250)
4396
+ - pass envvars to Signing Scripts to access GNUPGHOME
4397
+ [#5911](https://github.com/pulp/pulpcore/issues/5911)
4398
+
4399
+ ### Plugin API {: #3.39.32-plugin-api }
4400
+
4401
+ No significant changes.
4402
+
4403
+ ---
4404
+
4252
4405
  ## 3.39.31 (2025-05-20) {: #3.39.31 }
4253
4406
 
4254
4407
  ### REST API {: #3.39.31-rest-api }
@@ -5218,6 +5371,23 @@ No significant changes.
5218
5371
 
5219
5372
  - [#3798](https://github.com/pulp/pulpcore/issues/3798)
5220
5373
 
5374
+ ## 3.28.39 (2025-05-27) {: #3.28.39 }
5375
+
5376
+ ### REST API {: #3.28.39-rest-api }
5377
+
5378
+ #### Bugfixes {: #3.28.39-rest-api-bugfix }
5379
+
5380
+ - Fixed bug which prevented the Pulp API usaging from a web browser
5381
+ [#5250](https://github.com/pulp/pulpcore/issues/5250)
5382
+ - pass envvars to Signing Scripts to access GNUPGHOME
5383
+ [#5911](https://github.com/pulp/pulpcore/issues/5911)
5384
+
5385
+ ### Plugin API {: #3.28.39-plugin-api }
5386
+
5387
+ No significant changes.
5388
+
5389
+ ---
5390
+
5221
5391
  ## 3.28.38 (2025-05-20) {: #3.28.38 }
5222
5392
 
5223
5393
  ### REST API {: #3.28.38-rest-api }
@@ -7918,7 +8088,7 @@ No significant changes.
7918
8088
  - Documented the use of `RolesMixin` in the plugin writer concepts section.
7919
8089
  [#3085](https://github.com/pulp/pulpcore/issues/3085)
7920
8090
 
7921
- #### Removals
8091
+ #### Deprecations
7922
8092
 
7923
8093
  - Deprecated `verify_signature` in favor of `gpg_verify` for removal in 3.25.
7924
8094
  [#2930](https://github.com/pulp/pulpcore/issues/2930)
@@ -8061,6 +8231,13 @@ No significant changes.
8061
8231
  - Update installation instructions about "User and database configuration" for the Database setup to point to a matching Django documentation.
8062
8232
  [#2877](https://github.com/pulp/pulpcore/issues/2877)
8063
8233
 
8234
+ #### Deprecations
8235
+
8236
+ - Deprecated creation hook interface was removed. Creation hook need to be registered with the view
8237
+ set by the plugin writer before being used. Creation hooks can no longer be added with the
8238
+ deprecated name `permission_assignments`.
8239
+ [#2559](https://github.com/pulp/pulpcore/issues/2559)
8240
+
8064
8241
  #### Removals
8065
8242
 
8066
8243
  - Removed the group permission endpoints `api/v3/groups/:id/model_permissions/` and
@@ -8069,10 +8246,6 @@ No significant changes.
8069
8246
  - Removed django-guardian from the stack. The `guardian.backends.ObjectPermissionBackend` should
8070
8247
  not be used anymore.
8071
8248
  [#2051](https://github.com/pulp/pulpcore/issues/2051)
8072
- - Deprecated creation hook interface was removed. Creation hook need to be registered with the view
8073
- set by the plugin writer before being used. Creation hooks can no longer be added with the
8074
- deprecated name `permission_assignments`.
8075
- [#2559](https://github.com/pulp/pulpcore/issues/2559)
8076
8249
 
8077
8250
  #### Misc
8078
8251
 
@@ -9052,13 +9225,10 @@ No significant changes.
9052
9225
  - Expose Roles model in plugin api.
9053
9226
  [#2185](https://github.com/pulp/pulpcore/issues/2185)
9054
9227
 
9055
- #### Removals
9228
+ #### Deprecations
9056
9229
 
9057
9230
  - Deprecate the the use of `custom_file_object` parameter in `BaseDownloader`.
9058
9231
  [#2123](https://github.com/pulp/pulpcore/issues/2123)
9059
-
9060
- #### Deprecations
9061
-
9062
9232
  - The `API_ROOT` constant has been deprecated and turned into a setting. Its removal is scheduled
9063
9233
  for 3.20. Please use the setting with the same name instead.
9064
9234
  [#2148](https://github.com/pulp/pulpcore/issues/2148)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pulpcore
3
- Version: 3.80.2
3
+ Version: 3.81.0
4
4
  Summary: Pulp Django Application and Related Modules
5
5
  Author-email: Pulp Team <pulp-list@redhat.com>
6
6
  Project-URL: Homepage, https://pulpproject.org
@@ -21,17 +21,17 @@ Classifier: Programming Language :: Python :: 3.12
21
21
  Requires-Python: >=3.9
22
22
  Description-Content-Type: text/markdown
23
23
  License-File: LICENSE
24
- Requires-Dist: aiodns<=3.4.0,>=3.3
25
- Requires-Dist: aiofiles<24.2.0,>=22.1
26
- Requires-Dist: aiohttp<3.12,>=3.8.1
24
+ Requires-Dist: aiodns<3.6,>=3.3.0
25
+ Requires-Dist: aiofiles<=24.1.0,>=22.1
26
+ Requires-Dist: aiohttp<3.13,>=3.8.1
27
27
  Requires-Dist: asyncio-throttle<=1.0.2,>=1.0
28
28
  Requires-Dist: async-timeout<4.0.4,>=4.0.3; python_version < "3.11"
29
- Requires-Dist: backoff<2.2.2,>=2.1.2
30
- Requires-Dist: click<=8.1.8,>=8.1.0
31
- Requires-Dist: cryptography<45.0.5,>=38.0.1
29
+ Requires-Dist: backoff<2.3,>=2.1.2
30
+ Requires-Dist: click<8.2,>=8.1.0
31
+ Requires-Dist: cryptography<46.0,>=38.0.1
32
32
  Requires-Dist: Django~=4.2.0
33
33
  Requires-Dist: django-filter<=25.1,>=23.1
34
- Requires-Dist: django-guid<=3.5.1,>=3.3
34
+ Requires-Dist: django-guid<3.6,>=3.3.0
35
35
  Requires-Dist: django-import-export<3.4.0,>=2.9
36
36
  Requires-Dist: django-lifecycle<=1.2.4,>=1.0
37
37
  Requires-Dist: djangorestframework<=3.16.0,>=3.14.0
@@ -40,28 +40,28 @@ Requires-Dist: drf-access-policy<1.5.1,>=1.1.2
40
40
  Requires-Dist: drf-nested-routers<=0.94.2,>=0.93.4
41
41
  Requires-Dist: drf-spectacular==0.27.2
42
42
  Requires-Dist: dynaconf<3.3.0,>=3.2.5
43
- Requires-Dist: gunicorn<23.1.0,>=20.1
43
+ Requires-Dist: gunicorn<23.1.0,>=22.0
44
44
  Requires-Dist: importlib-metadata<=6.0.1,>=6.0.1
45
45
  Requires-Dist: jinja2<=3.1.6,>=3.1
46
46
  Requires-Dist: json_stream<2.4,>=2.3.2
47
- Requires-Dist: jq<1.9.0,>=1.6.0
47
+ Requires-Dist: jq<1.10.0,>=1.6.0
48
48
  Requires-Dist: PyOpenSSL<26.0
49
- Requires-Dist: opentelemetry-api<1.34,>=1.27.0
50
- Requires-Dist: opentelemetry-sdk<1.34,>=1.27.0
51
- Requires-Dist: opentelemetry-exporter-otlp-proto-http<1.34,>=1.27.0
49
+ Requires-Dist: opentelemetry-api<1.35,>=1.27.0
50
+ Requires-Dist: opentelemetry-sdk<1.35,>=1.27.0
51
+ Requires-Dist: opentelemetry-exporter-otlp-proto-http<1.35,>=1.27.0
52
52
  Requires-Dist: protobuf<6.0,>=4.21.1
53
- Requires-Dist: pulp-glue<0.33,>=0.18.0
53
+ Requires-Dist: pulp-glue<0.34,>=0.18.0
54
54
  Requires-Dist: pygtrie<=2.5.0,>=2.5
55
55
  Requires-Dist: psycopg[binary]<3.3,>=3.1.8
56
- Requires-Dist: pyparsing<=3.2.3,>=3.1.0
56
+ Requires-Dist: pyparsing<3.3,>=3.1.0
57
57
  Requires-Dist: python-gnupg<=0.5.4,>=0.5
58
- Requires-Dist: PyYAML<=6.0.2,>=5.1.1
59
- Requires-Dist: redis<5.2.2,>=4.3
60
- Requires-Dist: tablib<3.6.0
61
- Requires-Dist: url-normalize<=2.2.1,>=1.4.3
62
- Requires-Dist: uuid6<=2024.7.10,>=2023.5.2
58
+ Requires-Dist: PyYAML<6.1,>=5.1.1
59
+ Requires-Dist: redis<5.3,>=4.3.0
60
+ Requires-Dist: tablib<3.6,>=3.5.0
61
+ Requires-Dist: url-normalize<2.3,>=1.4.3
62
+ Requires-Dist: uuid6<=2025.0.0,>=2023.5.2
63
63
  Requires-Dist: whitenoise<6.10.0,>=5.0
64
- Requires-Dist: yarl<1.20.1,>=1.8
64
+ Requires-Dist: yarl<1.21,>=1.8
65
65
  Provides-Extra: sftp
66
66
  Requires-Dist: django-storages[sftp]==1.14.6; extra == "sftp"
67
67
  Provides-Extra: s3
@@ -6,6 +6,6 @@ class PulpCertGuardPluginAppConfig(PulpPluginAppConfig):
6
6
 
7
7
  name = "pulp_certguard.app"
8
8
  label = "certguard"
9
- version = "3.80.2"
9
+ version = "3.81.0"
10
10
  python_package_name = "pulpcore"
11
11
  domain_compatible = True
@@ -8,6 +8,6 @@ class PulpFilePluginAppConfig(PulpPluginAppConfig):
8
8
 
9
9
  name = "pulp_file.app"
10
10
  label = "file"
11
- version = "3.80.2"
11
+ version = "3.81.0"
12
12
  python_package_name = "pulpcore"
13
13
  domain_compatible = True
@@ -1,12 +1,7 @@
1
1
  import os
2
2
  import uuid
3
- import subprocess
4
- from collections import defaultdict
5
- from pathlib import Path
6
3
 
7
- import aiofiles
8
4
  import pytest
9
- from aiohttp import web
10
5
 
11
6
  from pulpcore.tests.functional.utils import BindingsNamespace, generate_iso, generate_manifest
12
7
 
@@ -37,9 +32,9 @@ def file_random_content_unit(file_content_unit_with_name_factory):
37
32
 
38
33
 
39
34
  @pytest.fixture
40
- def file_content_unit_with_name_factory(file_bindings, random_artifact, monitor_task):
35
+ def file_content_unit_with_name_factory(file_bindings, random_artifact_factory, monitor_task):
41
36
  def _file_content_unit_with_name_factory(name):
42
- artifact_attrs = {"artifact": random_artifact.pulp_href, "relative_path": name}
37
+ artifact_attrs = {"artifact": random_artifact_factory().pulp_href, "relative_path": name}
43
38
  return file_bindings.ContentFilesApi.read(
44
39
  monitor_task(
45
40
  file_bindings.ContentFilesApi.create(**artifact_attrs).task
@@ -74,14 +69,13 @@ def file_distribution_factory(file_bindings, gen_object_with_cleanup):
74
69
  return _file_distribution_factory
75
70
 
76
71
 
77
- @pytest.fixture
78
- def file_fixtures_root(tmp_path):
79
- fixture_dir = tmp_path / "fixtures"
80
- fixture_dir.mkdir()
72
+ @pytest.fixture(scope="class")
73
+ def file_fixtures_root(tmp_path_factory):
74
+ fixture_dir = tmp_path_factory.mktemp("fixtures")
81
75
  return fixture_dir
82
76
 
83
77
 
84
- @pytest.fixture
78
+ @pytest.fixture(scope="class")
85
79
  def write_3_iso_file_fixture_data_factory(file_fixtures_root):
86
80
  def _write_3_iso_file_fixture_data_factory(name, overwrite=False, seed=None):
87
81
  file_fixtures_root.joinpath(name).mkdir(exist_ok=overwrite)
@@ -96,12 +90,12 @@ def write_3_iso_file_fixture_data_factory(file_fixtures_root):
96
90
  return _write_3_iso_file_fixture_data_factory
97
91
 
98
92
 
99
- @pytest.fixture
93
+ @pytest.fixture(scope="class")
100
94
  def basic_manifest_path(write_3_iso_file_fixture_data_factory):
101
95
  return write_3_iso_file_fixture_data_factory("basic")
102
96
 
103
97
 
104
- @pytest.fixture
98
+ @pytest.fixture(scope="class")
105
99
  def copy_manifest_only_factory(file_fixtures_root):
106
100
  def _copy_manifest_only(name):
107
101
  file_fixtures_root.joinpath(f"{name}-manifest").mkdir()
@@ -114,12 +108,12 @@ def copy_manifest_only_factory(file_fixtures_root):
114
108
  return _copy_manifest_only
115
109
 
116
110
 
117
- @pytest.fixture
111
+ @pytest.fixture(scope="class")
118
112
  def basic_manifest_only_path(copy_manifest_only_factory):
119
113
  return copy_manifest_only_factory("basic")
120
114
 
121
115
 
122
- @pytest.fixture
116
+ @pytest.fixture(scope="class")
123
117
  def large_manifest_path(file_fixtures_root):
124
118
  one_megabyte = 1048576
125
119
  file_fixtures_root.joinpath("large").mkdir()
@@ -128,7 +122,7 @@ def large_manifest_path(file_fixtures_root):
128
122
  return "/large/PULP_MANIFEST"
129
123
 
130
124
 
131
- @pytest.fixture
125
+ @pytest.fixture(scope="class")
132
126
  def range_header_manifest_path(file_fixtures_root):
133
127
  """A path to a File repository manifest that contains 8 unique files each 4mb in size."""
134
128
  one_megabyte = 1048576
@@ -147,7 +141,7 @@ def range_header_manifest_path(file_fixtures_root):
147
141
  return "/range/PULP_MANIFEST"
148
142
 
149
143
 
150
- @pytest.fixture
144
+ @pytest.fixture(scope="class")
151
145
  def manifest_path_with_commas(file_fixtures_root):
152
146
  file_fixtures_root.joinpath("comma_test").mkdir()
153
147
  file_fixtures_root.joinpath("comma_test/comma,folder").mkdir()
@@ -161,15 +155,15 @@ def manifest_path_with_commas(file_fixtures_root):
161
155
  return "/comma_test/PULP_MANIFEST"
162
156
 
163
157
 
164
- @pytest.fixture
158
+ @pytest.fixture(scope="class")
165
159
  def invalid_manifest_path(file_fixtures_root, basic_manifest_path):
166
- file_path_to_corrupt = file_fixtures_root / Path("basic/1.iso")
160
+ file_path_to_corrupt = file_fixtures_root / "basic/1.iso"
167
161
  with open(file_path_to_corrupt, "w") as f:
168
162
  f.write("this is not the right data")
169
163
  return basic_manifest_path
170
164
 
171
165
 
172
- @pytest.fixture
166
+ @pytest.fixture(scope="class")
173
167
  def duplicate_filename_paths(write_3_iso_file_fixture_data_factory):
174
168
  return (
175
169
  write_3_iso_file_fixture_data_factory("file"),
@@ -177,24 +171,24 @@ def duplicate_filename_paths(write_3_iso_file_fixture_data_factory):
177
171
  )
178
172
 
179
173
 
180
- @pytest.fixture
174
+ @pytest.fixture(scope="class")
181
175
  def file_fixture_server_ssl_client_cert_req(
182
176
  ssl_ctx_req_client_auth, file_fixtures_root, gen_fixture_server
183
177
  ):
184
178
  return gen_fixture_server(file_fixtures_root, ssl_ctx_req_client_auth)
185
179
 
186
180
 
187
- @pytest.fixture
181
+ @pytest.fixture(scope="class")
188
182
  def file_fixture_server_ssl(ssl_ctx, file_fixtures_root, gen_fixture_server):
189
183
  return gen_fixture_server(file_fixtures_root, ssl_ctx)
190
184
 
191
185
 
192
- @pytest.fixture
186
+ @pytest.fixture(scope="class")
193
187
  def file_fixture_server(file_fixtures_root, gen_fixture_server):
194
188
  return gen_fixture_server(file_fixtures_root, None)
195
189
 
196
190
 
197
- @pytest.fixture
191
+ @pytest.fixture(scope="class")
198
192
  def file_remote_factory(file_fixture_server, file_bindings, gen_object_with_cleanup):
199
193
  def _file_remote_factory(
200
194
  manifest_path=None, url=None, policy="immediate", pulp_domain=None, **body
@@ -213,7 +207,7 @@ def file_remote_factory(file_fixture_server, file_bindings, gen_object_with_clea
213
207
  return _file_remote_factory
214
208
 
215
209
 
216
- @pytest.fixture
210
+ @pytest.fixture(scope="class")
217
211
  def file_remote_ssl_factory(
218
212
  file_fixture_server_ssl,
219
213
  file_bindings,
@@ -235,7 +229,7 @@ def file_remote_ssl_factory(
235
229
  return _file_remote_ssl_factory
236
230
 
237
231
 
238
- @pytest.fixture
232
+ @pytest.fixture(scope="class")
239
233
  def file_remote_client_cert_req_factory(
240
234
  file_fixture_server_ssl_client_cert_req,
241
235
  file_bindings,
@@ -290,83 +284,7 @@ def file_publication_factory(file_bindings, gen_object_with_cleanup):
290
284
  return _file_publication_factory
291
285
 
292
286
 
293
- @pytest.fixture
294
- def gen_bad_response_fixture_server(gen_threaded_aiohttp_server):
295
- """
296
- This server will perform 3 bad responses for each file requested.
297
-
298
- 1st response will be incomplete, sending only half of the data.
299
- 2nd response will have corrupted data, with one byte changed.
300
- 3rd response will return error 429.
301
- 4th response will be correct.
302
- """
303
-
304
- def _gen_fixture_server(fixtures_root, ssl_ctx):
305
- record = []
306
- num_requests = defaultdict(int)
307
-
308
- async def handler(request):
309
- nonlocal num_requests
310
- record.append(request)
311
- relative_path = request.raw_path[1:] # Strip off leading "/"
312
- file_path = Path(fixtures_root) / Path(relative_path)
313
- # Max retries is 3. So on fourth request, send full data
314
- num_requests[relative_path] += 1
315
- if "PULP_MANIFEST" in relative_path or num_requests[relative_path] % 4 == 0:
316
- return web.FileResponse(file_path)
317
-
318
- # On third request send 429 error, TooManyRequests
319
- if num_requests[relative_path] % 4 == 3:
320
- raise web.HTTPTooManyRequests
321
-
322
- size = file_path.stat().st_size
323
- response = web.StreamResponse(headers={"content-length": f"{size}"})
324
- await response.prepare(request)
325
- async with aiofiles.open(file_path, "rb") as f:
326
- # Send only partial content causing aiohttp.ClientPayloadError if request num == 1
327
- chunk = await f.read(size // 2)
328
- await response.write(chunk)
329
- # Send last chunk with modified last byte if request num == 2
330
- if num_requests[relative_path] % 4 == 2:
331
- chunk2 = await f.read()
332
- await response.write(chunk2[:-1])
333
- await response.write(bytes([chunk2[-1] ^ 1]))
334
- else:
335
- request.transport.close()
336
-
337
- return response
338
-
339
- app = web.Application()
340
- app.add_routes([web.get("/{tail:.*}", handler)])
341
- return gen_threaded_aiohttp_server(app, ssl_ctx, record)
342
-
343
- return _gen_fixture_server
344
-
345
-
346
- @pytest.fixture
347
- def bad_response_fixture_server(file_fixtures_root, gen_bad_response_fixture_server):
348
- return gen_bad_response_fixture_server(file_fixtures_root, None)
349
-
350
-
351
- @pytest.fixture
352
- def wget_recursive_download_on_host():
353
- def _wget_recursive_download_on_host(url, destination):
354
- subprocess.check_output(
355
- [
356
- "wget",
357
- "--recursive",
358
- "--no-parent",
359
- "--no-host-directories",
360
- "--directory-prefix",
361
- destination,
362
- url,
363
- ]
364
- )
365
-
366
- return _wget_recursive_download_on_host
367
-
368
-
369
- @pytest.fixture
287
+ @pytest.fixture(scope="class")
370
288
  def generate_server_and_remote(
371
289
  file_bindings, gen_fixture_server, file_fixtures_root, gen_object_with_cleanup
372
290
  ):