edu-rdm-integration 3.6.0__tar.gz → 3.8.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.
Files changed (198) hide show
  1. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/CHANGELOG.md +36 -0
  2. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/PKG-INFO +142 -28
  3. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/README.md +141 -27
  4. edu_rdm_integration-3.8.0/src/edu_rdm_integration/collect_data/base/consts.py +3 -0
  5. edu_rdm_integration-3.8.0/src/edu_rdm_integration/collect_data/base/mixins.py +425 -0
  6. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/helpers.py +1 -2
  7. edu_rdm_integration-3.8.0/src/edu_rdm_integration/migrations/0017_delete_uploaddatacommand.py +16 -0
  8. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/models.py +0 -39
  9. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration.egg-info/PKG-INFO +142 -28
  10. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration.egg-info/SOURCES.txt +2 -0
  11. edu_rdm_integration-3.6.0/src/edu_rdm_integration/collect_data/base/mixins.py +0 -218
  12. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/CONDUCT.md +0 -0
  13. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/LICENSE +0 -0
  14. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/MANIFEST.in +0 -0
  15. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/pyproject.toml +0 -0
  16. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/setup.cfg +0 -0
  17. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/__init__.py +0 -0
  18. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/__init__.py +0 -0
  19. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/apps.py +0 -0
  20. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/caches.py +0 -0
  21. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/consts.py +0 -0
  22. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/enums.py +0 -0
  23. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/errors.py +0 -0
  24. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/functions.py +0 -0
  25. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/helpers.py +0 -0
  26. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/managers.py +0 -0
  27. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/presenters.py +0 -0
  28. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/receivers.py +0 -0
  29. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/results.py +0 -0
  30. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/runners.py +0 -0
  31. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/strategies.py +0 -0
  32. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/strings.py +0 -0
  33. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/tests.py +0 -0
  34. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/adapters/validators.py +0 -0
  35. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/app_meta.py +0 -0
  36. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/app_settings.py +0 -0
  37. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/apps.py +0 -0
  38. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/base.py +0 -0
  39. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_and_export_data/__init__.py +0 -0
  40. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_and_export_data/apps.py +0 -0
  41. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_and_export_data/migrations/0001_initial.py +0 -0
  42. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_and_export_data/migrations/0002_auto_20250204_1413.py +0 -0
  43. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_and_export_data/migrations/__init__.py +0 -0
  44. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_and_export_data/models.py +0 -0
  45. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_and_export_data/utils.py +0 -0
  46. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/__init__.py +0 -0
  47. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/base/__init__.py +0 -0
  48. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/base/caches.py +0 -0
  49. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/base/functions.py +0 -0
  50. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/base/helpers.py +0 -0
  51. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/base/managers.py +0 -0
  52. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/base/runners.py +0 -0
  53. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/__init__.py +0 -0
  54. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/base/__init__.py +0 -0
  55. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/base/caches.py +0 -0
  56. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/base/consts.py +0 -0
  57. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/base/enums.py +0 -0
  58. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/base/errors.py +0 -0
  59. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/base/functions.py +0 -0
  60. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/base/helpers.py +0 -0
  61. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/base/managers.py +0 -0
  62. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/base/presenters.py +0 -0
  63. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/base/results.py +0 -0
  64. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/base/runners.py +0 -0
  65. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/base/strings.py +0 -0
  66. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/base/tests.py +0 -0
  67. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/base/validators.py +0 -0
  68. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/calculated/strategies.py +0 -0
  69. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/collect.py +0 -0
  70. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/generators.py +0 -0
  71. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/helpers.py +0 -0
  72. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/__init__.py +0 -0
  73. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/base/__init__.py +0 -0
  74. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/base/caches.py +0 -0
  75. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/base/consts.py +0 -0
  76. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/base/enums.py +0 -0
  77. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/base/errors.py +0 -0
  78. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/base/functions.py +0 -0
  79. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/base/helpers.py +0 -0
  80. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/base/managers.py +0 -0
  81. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/base/presenters.py +0 -0
  82. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/base/results.py +0 -0
  83. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/base/runners.py +0 -0
  84. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/base/strings.py +0 -0
  85. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/base/tests.py +0 -0
  86. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/base/validators.py +0 -0
  87. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/non_calculated/strategies.py +0 -0
  88. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/collect_data/tests.py +0 -0
  89. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/consts.py +0 -0
  90. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/entities.py +0 -0
  91. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/enum_register/__init__.py +0 -0
  92. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/enum_register/mixins.py +0 -0
  93. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/enum_register/register.py +0 -0
  94. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/enums.py +0 -0
  95. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/__init__.py +0 -0
  96. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/__init__.py +0 -0
  97. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/caches.py +0 -0
  98. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/consts.py +0 -0
  99. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/enums.py +0 -0
  100. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/errors.py +0 -0
  101. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/functions.py +0 -0
  102. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/helpers.py +0 -0
  103. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/managers.py +0 -0
  104. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/presenters.py +0 -0
  105. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/requests.py +0 -0
  106. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/results.py +0 -0
  107. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/runners.py +0 -0
  108. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/strings.py +0 -0
  109. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/tests.py +0 -0
  110. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/base/validators.py +0 -0
  111. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/consts.py +0 -0
  112. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/dataclasses.py +0 -0
  113. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/export.py +0 -0
  114. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/export_manager.py +0 -0
  115. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/generators.py +0 -0
  116. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/helpers.py +0 -0
  117. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/queue.py +0 -0
  118. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/export_data/strategies.py +0 -0
  119. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/__init__.py +0 -0
  120. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/__init__.py-tpl +0 -0
  121. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/apps.py-tpl +0 -0
  122. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/caches.py-tpl +0 -0
  123. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/consts.py-tpl +0 -0
  124. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/enums.py-tpl +0 -0
  125. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/errors.py-tpl +0 -0
  126. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/functions.py-tpl +0 -0
  127. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/helpers.py-tpl +0 -0
  128. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/managers.py-tpl +0 -0
  129. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/presenters.py-tpl +0 -0
  130. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/results.py-tpl +0 -0
  131. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/runners.py-tpl +0 -0
  132. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/strings.py-tpl +0 -0
  133. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/tests.py-tpl +0 -0
  134. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_collect_data_template/validators.py-tpl +0 -0
  135. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/__init__.py-tpl +0 -0
  136. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/apps.py-tpl +0 -0
  137. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/caches.py-tpl +0 -0
  138. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/consts.py-tpl +0 -0
  139. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/enums.py-tpl +0 -0
  140. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/errors.py-tpl +0 -0
  141. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/functions.py-tpl +0 -0
  142. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/helpers.py-tpl +0 -0
  143. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/managers.py-tpl +0 -0
  144. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/presenters.py-tpl +0 -0
  145. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/results.py-tpl +0 -0
  146. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/runners.py-tpl +0 -0
  147. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/strings.py-tpl +0 -0
  148. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/tests.py-tpl +0 -0
  149. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/function_templates/function_export_data_template/validators.py-tpl +0 -0
  150. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/management/__init__.py +0 -0
  151. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/management/commands/__init__.py +0 -0
  152. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/management/commands/async_fix_attachment_size.py +0 -0
  153. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/management/commands/check_upload_status.py +0 -0
  154. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/management/commands/collect_latest_models_data.py +0 -0
  155. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/management/commands/collect_models_data.py +0 -0
  156. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/management/commands/datamart_status.py +0 -0
  157. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/management/commands/datamart_upload.py +0 -0
  158. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/management/commands/export_entities_data.py +0 -0
  159. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/management/commands/export_latest_entities_data.py +0 -0
  160. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/management/general.py +0 -0
  161. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/mapping.py +0 -0
  162. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0001_initial.py +0 -0
  163. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0002_init_data_uploadstatus.py +0 -0
  164. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0003_create_index_file_upload_status.py +0 -0
  165. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0004_uploaderclientlog.py +0 -0
  166. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0005_auto_20231204_1224.py +0 -0
  167. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0006_request_status_data.py +0 -0
  168. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0007_delete_upload_status.py +0 -0
  169. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0008_transferredentity.py +0 -0
  170. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0009_auto_20240522_1619.py +0 -0
  171. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0010_transferredentity_export_enabled.py +0 -0
  172. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0011_exportingdatasubstageentity.py +0 -0
  173. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0012_exportingdatasubstageattachment_attachment_size.py +0 -0
  174. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0013_set_attachment_size.py +0 -0
  175. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0014_uploaddatacommand.py +0 -0
  176. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0015_set_exporting_sub_stage_status.py +0 -0
  177. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/0016_transferredentity_queue_level.py +0 -0
  178. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/migrations/__init__.py +0 -0
  179. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/redis_cache.py +0 -0
  180. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/registry/__init__.py +0 -0
  181. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/registry/actions.py +0 -0
  182. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/registry/ui.py +0 -0
  183. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/signals.py +0 -0
  184. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/storages.py +0 -0
  185. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/tasks.py +0 -0
  186. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/templates/ui-js/transferred-entity-list.js +0 -0
  187. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/typing.py +0 -0
  188. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/uploader_log/__init__.py +0 -0
  189. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/uploader_log/actions.py +0 -0
  190. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/uploader_log/apps.py +0 -0
  191. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/uploader_log/enums.py +0 -0
  192. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/uploader_log/managers.py +0 -0
  193. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/uploader_log/templates/ui-js/object-grid-buttons.js +0 -0
  194. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/uploader_log/ui.py +0 -0
  195. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration/utils.py +0 -0
  196. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration.egg-info/dependency_links.txt +0 -0
  197. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration.egg-info/requires.txt +0 -0
  198. {edu_rdm_integration-3.6.0 → edu_rdm_integration-3.8.0}/src/edu_rdm_integration.egg-info/top_level.txt +0 -0
@@ -28,6 +28,42 @@
28
28
 
29
29
  ### Удалено
30
30
 
31
+
32
+ ## [3.8.0] - 2025-05-15
33
+
34
+ Реализован функционал фильтрации объектов перед сохранением, позволяющий исключать неизменённые данные из операции
35
+ записи. Это позволяет снизить нагрузку на систему и ускорить выполнение функций сбора, особенно при работе с большими
36
+ объёмами данных.
37
+
38
+ Для этого создан миксин FilteredSaveEntitiesFunctionMixin, который может быть использован в функциях сбора для
39
+ реализации общей логики фильтрации до сохранения. Также обеспечена гибкость через параметры _ignored_fields
40
+ и _filtered_operations.
41
+
42
+ ### Добавлено
43
+
44
+ - [EDUSCHL-23441](https://jira.bars.group/browse/EDUSCHL-23441)
45
+ MINOR Реализован миксин FilteredSaveEntitiesFunctionMixin для использования в функциях сбора позволяющий исключать
46
+ неизмененные объекты перед сохранением.
47
+
48
+
49
+ ## [3.7.1] - 2025-05-14
50
+
51
+ Добавлено описание в README.md по поднятию версии до 3.3.0, 3.3.1, 3.4.2
52
+
53
+ ### Добавлено
54
+
55
+ - [EDUSCHL-23121](https://jira.bars.group/browse/EDUSCHL-23121)
56
+ PATCH Добавлено описание в README.md
57
+
58
+
59
+ ## [3.7.0] - 2025-05-12
60
+
61
+ ### Удалено
62
+
63
+ - [EDUSCHL-23121](https://jira.bars.group/browse/EDUSCHL-23121)
64
+ MINOR Удалена неиспользуемая модель UploadDataCommand
65
+
66
+
31
67
  ## [3.6.0] - 2025-04-19
32
68
 
33
69
  Вводится две новые очереди и соответсвущие этим очередям периодические задачи
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: edu-rdm-integration
3
- Version: 3.6.0
3
+ Version: 3.8.0
4
4
  Summary: Интеграция с Региональной витриной данных
5
5
  Author-email: BARS Group <education_dev@bars.group>
6
6
  Project-URL: Homepage, https://stash.bars-open.ru/projects/EDUBASE/repos/edu_rdm_integration/browse
@@ -79,7 +79,7 @@ Dynamic: license-file
79
79
  Стоит обратить внимание, что сущности РВД могут содержать в себе данные из нескольких моделей РВД.
80
80
 
81
81
  Очереди для периодических задач сборки и выгрузки данных
82
- : Важно учитывать, что с версии пакета 3.6 вводится две новые очереди и соответсвущие этим очередям периодические задачи
82
+ : Важно учитывать, что с версии пакета 3.6 вводится две новые очереди и соответствущие этим очередям периодические задачи
83
83
  сбора и выгрузки данных. Очередь для сущности указывается в реестре "Сущности для сбора и экспорта данных" - по умолчанию все
84
84
  сущности относятся к основной очереди.
85
85
  Итого - нужно настроить три очереди для работы.
@@ -142,8 +142,36 @@ Dynamic: license-file
142
142
  ('uploader_client', 'ENABLE_REQUEST_EMULATION'): False,
143
143
  })
144
144
  ```
145
- С версии пакета 3.6 добавляются новые настройки для двух периодических задач разных очередей сбора и выгрузки данных
146
- ```
145
+ Дополнительные настройки с версии 3.4.2
146
+ ```
147
+ PROJECT_DEFAULT_CONFIG.update({
148
+ # Настройки РВД
149
+ ('rdm_general', 'EXPORT_ENTITY_ID_PREFIX'): '', # Дефолтное значение нужно изменить на специфическое системе
150
+ ('rdm_general', 'COLLECT_CHUNK_SIZE'): 500,
151
+ ('rdm_general', 'EXPORT_CHUNK_SIZE'): 500,
152
+ ('rdm_transfer_task', 'MINUTE'): '0',
153
+ ('rdm_transfer_task', 'HOUR'): '*/4',
154
+ ('rdm_transfer_task', 'DAY_OF_WEEK'): '*',
155
+ ('rdm_transfer_task', 'LOCK_EXPIRE_SECONDS'): 21600,
156
+ ('rdm_transfer_task', 'TIMEDELTA'): 3600,
157
+ ('rdm_transfer_task', 'ENTITIES'): '',
158
+ ('rdm_upload_status_task', 'MINUTE'): '*/30',
159
+ ('rdm_upload_status_task', 'HOUR'): '*',
160
+ ('rdm_upload_status_task', 'DAY_OF_WEEK'): '*',
161
+ ('rdm_upload_status_task', 'LOCK_EXPIRE_SECONDS'): 7200,
162
+ ('rdm_upload_data_task', 'MINUTE'): '0',
163
+ ('rdm_upload_data_task', 'HOUR'): '*/2',
164
+ ('rdm_upload_data_task', 'DAY_OF_WEEK'): '*',
165
+ ('rdm_upload_data_task', 'LOCK_EXPIRE_SECONDS'): 7200,
166
+ ('uploader_client', 'URL'): 'http://localhost:8090',
167
+ ('uploader_client', 'DATAMART_NAME'): '',
168
+ ('uploader_client', 'REQUEST_RETRIES'): 10,
169
+ ('uploader_client', 'REQUEST_TIMEOUT'): 10,
170
+ ('uploader_client', 'ENABLE_REQUEST_EMULATION'): False,
171
+ })
172
+ ```
173
+ С версии пакета 3.6 добавляются новые настройки для двух периодических задач разных очередей сбора и выгрузки данных
174
+ ```
147
175
  PROJECT_DEFAULT_CONFIG.update({
148
176
  # Настройки РВД
149
177
  ('rdm_general', 'EXPORT_ENTITY_ID_PREFIX'): '', # Дефолтное значение нужно изменить на специфическое системе
@@ -167,14 +195,18 @@ Dynamic: license-file
167
195
  ('rdm_upload_status_task', 'HOUR'): '*',
168
196
  ('rdm_upload_status_task', 'DAY_OF_WEEK'): '*',
169
197
  ('rdm_upload_status_task', 'LOCK_EXPIRE_SECONDS'): 7200,
198
+ ('rdm_upload_data_task', 'MINUTE'): '0',
199
+ ('rdm_upload_data_task', 'HOUR'): '*/2',
200
+ ('rdm_upload_data_task', 'DAY_OF_WEEK'): '*',
201
+ ('rdm_upload_data_task', 'LOCK_EXPIRE_SECONDS'): 7200,
170
202
  ('uploader_client', 'URL'): 'http://localhost:8090',
171
203
  ('uploader_client', 'DATAMART_NAME'): '',
172
204
  ('uploader_client', 'REQUEST_RETRIES'): 10,
173
205
  ('uploader_client', 'REQUEST_TIMEOUT'): 10,
174
206
  ('uploader_client', 'ENABLE_REQUEST_EMULATION'): False,
175
207
  })
176
-
177
- ```
208
+
209
+ ```
178
210
  - Получение значений настроек из конфигурационного файла в settings.py:
179
211
 
180
212
  ```
@@ -233,21 +265,48 @@ Dynamic: license-file
233
265
  RDM_UPLOADER_CLIENT_ENABLE_REQUEST_EMULATION = conf.get_bool('uploader_client', 'ENABLE_REQUEST_EMULATION')
234
266
 
235
267
  ```
236
- С версии пакета 3.6 добавляются настройки для двух новых периодических задач
237
- ```
238
- # Настройка запуска периодической задачи выгрузки данных - быстрая очередь:
239
- RDM_FAST_TRANSFER_TASK_MINUTE = conf.get('rdm_transfer_task_fast', 'MINUTE')
240
- RDM_FAST_TRANSFER_TASK_HOUR = conf.get('rdm_transfer_task_fast', 'HOUR')
241
- RDM_FAST_TRANSFER_TASK_DAY_OF_WEEK = conf.get('rdm_transfer_task_fast', 'DAY_OF_WEEK')
242
- RDM_FAST_TRANSFER_TASK_LOCK_EXPIRE_SECONDS = conf.get_int('rdm_transfer_task_fast', 'LOCK_EXPIRE_SECONDS')
243
-
244
- # Настройка запуска периодической задачи выгрузки данных - долгая очередь расчетных моделей:
245
- RDM_LONG_TRANSFER_TASK_MINUTE = conf.get('rdm_transfer_task_long', 'MINUTE')
246
- RDM_LONG_TRANSFER_TASK_HOUR = conf.get('rdm_transfer_task_long', 'HOUR')
247
- RDM_LONG_TRANSFER_TASK_DAY_OF_WEEK = conf.get('rdm_transfer_task_long', 'DAY_OF_WEEK')
248
- RDM_LONG_TRANSFER_TASK_LOCK_EXPIRE_SECONDS = conf.get_int('rdm_transfer_task_long', 'LOCK_EXPIRE_SECONDS')
249
-
250
- ```
268
+ Дополнительные настройки с версии 3.3.0
269
+ ```
270
+ # Объем очереди файлов в витрину байтах) - по умолчанию 512 Мбайт.
271
+ RDM_UPLOAD_QUEUE_MAX_SIZE = conf.get_int('rdm_general', 'UPLOAD_QUEUE_MAX_SIZE') or 500_000_000
272
+
273
+ # Настройка очереди Redis для формирования файлов РВД.
274
+ RDM_REDIS_HOST = conf.get('rdm_redis', 'REDIS_HOST')
275
+ RDM_REDIS_PORT = conf.get('rdm_redis', 'REDIS_PORT')
276
+ RDM_REDIS_DB = conf.get('rdm_redis', 'REDIS_DB')
277
+ RDM_REDIS_PASSWORD = conf.get('rdm_redis', 'REDIS_PASSWORD')
278
+
279
+ ```
280
+ Дополнительные настройки с версии 3.3.1
281
+ ```
282
+ # Таймаут для сохранения параметров в общем кеш.
283
+ RDM_REDIS_CACHE_TIMEOUT_SECONDS = conf.get_int('rdm_redis', 'REDIS_CACHE_TIMEOUT_SECONDS') or 60 * 60 * 2
284
+
285
+ ```
286
+ Дополнительные настройки с версии 3.4.2
287
+ ```
288
+ # Настройка запуска периодической задачи отправки файлов с данными РВД
289
+ RDM_UPLOAD_DATA_TASK_MINUTE = conf.get('rdm_upload_data_task', 'MINUTE')
290
+ RDM_UPLOAD_DATA_TASK_HOUR = conf.get('rdm_upload_data_task', 'HOUR')
291
+ RDM_UPLOAD_DATA_TASK_DAY_OF_WEEK = conf.get('rdm_upload_data_task', 'DAY_OF_WEEK')
292
+ RDM_UPLOAD_DATA_TASK_LOCK_EXPIRE_SECONDS = conf.get_int('rdm_upload_data_task', 'LOCK_EXPIRE_SECONDS') or 60 * 60 * 2
293
+
294
+ ```
295
+ С версии пакета 3.6 добавляются настройки для двух новых периодических задач
296
+ ```
297
+ # Настройка запуска периодической задачи выгрузки данных - быстрая очередь:
298
+ RDM_FAST_TRANSFER_TASK_MINUTE = conf.get('rdm_transfer_task_fast', 'MINUTE')
299
+ RDM_FAST_TRANSFER_TASK_HOUR = conf.get('rdm_transfer_task_fast', 'HOUR')
300
+ RDM_FAST_TRANSFER_TASK_DAY_OF_WEEK = conf.get('rdm_transfer_task_fast', 'DAY_OF_WEEK')
301
+ RDM_FAST_TRANSFER_TASK_LOCK_EXPIRE_SECONDS = conf.get_int('rdm_transfer_task_fast', 'LOCK_EXPIRE_SECONDS')
302
+
303
+ # Настройка запуска периодической задачи выгрузки данных - долгая очередь расчетных моделей:
304
+ RDM_LONG_TRANSFER_TASK_MINUTE = conf.get('rdm_transfer_task_long', 'MINUTE')
305
+ RDM_LONG_TRANSFER_TASK_HOUR = conf.get('rdm_transfer_task_long', 'HOUR')
306
+ RDM_LONG_TRANSFER_TASK_DAY_OF_WEEK = conf.get('rdm_transfer_task_long', 'DAY_OF_WEEK')
307
+ RDM_LONG_TRANSFER_TASK_LOCK_EXPIRE_SECONDS = conf.get_int('rdm_transfer_task_long', 'LOCK_EXPIRE_SECONDS')
308
+
309
+ ```
251
310
  Перечень настроек в settings.py указан в таблице ниже.
252
311
 
253
312
  | Название настройки в settings | Описание | Значение по умолчанию |
@@ -264,12 +323,37 @@ Dynamic: license-file
264
323
  | RDM_TRANSFER_TASK_MINUTE | Настройка запуска периодической задачи выгрузки данных. Минута | '0' |
265
324
  | RDM_TRANSFER_TASK_HOUR | Настройка запуска периодической задачи выгрузки данных. Час | '*/4' |
266
325
  | RDM_TRANSFER_TASK_DAY_OF_WEEK | Настройка запуска периодической задачи выгрузки данных. День недели | '*' |
267
- | RDM_TRANSFER_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секунадх) | 21600 |
326
+ | RDM_TRANSFER_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секундах) | 21600 |
268
327
  | RDM_UPLOAD_STATUS_TASK_MINUTE | Настройка запуска периодической задачи статуса загрузки данных в витрину. Минута | '*/30' |
269
328
  | RDM_UPLOAD_STATUS_TASK_HOUR | Настройка запуска периодической задачи статуса загрузки данных в витрину. Час | '*' |
270
329
  | RDM_UPLOAD_STATUS_TASK_DAY_OF_WEEK | Настройка запуска периодической задачи статуса загрузки данных в витрину. День недели | '*' |
271
- | RDM_UPLOAD_STATUS_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секунадх) | 3600 |
330
+ | RDM_UPLOAD_STATUS_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секундах) | 3600 |
272
331
  | RDM_CHECK_SUSPEND_TASK_STAGE_TIMEOUT | Дельта для определения зависшего подэтапа. Минута | 120 |
332
+
333
+ С версии пакета 3.3.0 добавляются новые настройки
334
+
335
+ | Название настройки в settings | Описание | Значение по умолчанию |
336
+ |--------------------------------------------|----------------------------------------------------------------------------------------|-----------------------|
337
+ | RDM_UPLOAD_QUEUE_MAX_SIZE | Объем очереди файлов в витрину (в байтах). | 500_000_000 |
338
+ | RDM_REDIS_HOST | Настройка очереди Redis для формирования файлов РВД (хост). | |
339
+ | RDM_REDIS_PORT | Настройка очереди Redis для формирования файлов РВД (порт). | |
340
+ | RDM_REDIS_DB | Настройка очереди Redis для формирования файлов РВД (номер бд). | |
341
+ | RDM_REDIS_PASSWORD | Настройка очереди Redis для формирования файлов РВД (пароль). | |
342
+
343
+ С версии пакета 3.3.1 добавляются новые настройки
344
+
345
+ | Название настройки в settings | Описание | Значение по умолчанию |
346
+ |--------------------------------------------|----------------------------------------------------------------------------------------|-----------------------|
347
+ | RDM_REDIS_CACHE_TIMEOUT_SECONDS | Таймаут для сохранения параметров в общем кеш (секунды). | 7200 |
348
+
349
+ С версии пакета 3.4.2 добавляются новые настройки
350
+
351
+ | Название настройки в settings | Описание | Значение по умолчанию |
352
+ |--------------------------------------------|----------------------------------------------------------------------------------------|-----------------------|
353
+ | RDM_UPLOAD_DATA_TASK_MINUTE | Настройка запуска периодической задачи отправки файлов с данными РВД (минута). | '0' |
354
+ | RDM_UPLOAD_DATA_TASK_HOUR | Настройка запуска периодической задачи отправки файлов с данными РВД (час). | '*/2' |
355
+ | RDM_UPLOAD_DATA_TASK_DAY_OF_WEEK | Настройка запуска периодической задачи отправки файлов с данными РВД (день недели). | '*' |
356
+ | RDM_UPLOAD_DATA_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секундах). | 7200 |
273
357
 
274
358
  С версии пакета 3.6 добавляются новые настройки
275
359
 
@@ -278,11 +362,11 @@ Dynamic: license-file
278
362
  | RDM_FAST_TRANSFER_TASK_MINUTE | Настройка запуска периодической задачи (быстрая очередь) выгрузки данных. Минута | '*/5' |
279
363
  | RDM_FAST_TRANSFER_TASK_HOUR | Настройка запуска периодической задачи (быстрая очередь) выгрузки данных. Час | '*' |
280
364
  | RDM_FAST_TRANSFER_TASK_DAY_OF_WEEK | Настройка запуска периодической задачи (быстрая очередь) выгрузки данных. День недели | '*' |
281
- | RDM_FAST_TRANSFER_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секунадх) | 1800 |
365
+ | RDM_FAST_TRANSFER_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секундах) | 1800 |
282
366
  | RDM_LONG_TRANSFER_TASK_MINUTE | Настройка запуска периодической задачи (долгая очередь) выгрузки данных. Минута | 0 |
283
367
  | RDM_LONG_TRANSFER_TASK_HOUR | Настройка запуска периодической задачи (долгая очередь) выгрузки данных. Час | '*/6' |
284
368
  | RDM_LONG_TRANSFER_TASK_DAY_OF_WEEK | Настройка запуска периодической задачи (долгая очередь) выгрузки данных. День недели | '*' |
285
- | RDM_LONG_TRANSFER_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секунадх) | 28800 |
369
+ | RDM_LONG_TRANSFER_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секундах) | 28800 |
286
370
 
287
371
  - В дефолтный конфиг проекта необходимо добавить:
288
372
 
@@ -338,8 +422,38 @@ Dynamic: license-file
338
422
  # Включить эмуляцию отправки запросов
339
423
  ENABLE_REQUEST_EMULATION = True
340
424
  ```
341
- - С версии 3.6 в деволтный конфиг также нужно добавить два дополнительных раздела
342
- ```
425
+ - С версии 3.3.0 в дефолтный конфиг нужно добавить
426
+ ```
427
+ [rdm_general]
428
+ ...
429
+ # Объем очереди файлов в витрину (в байтах) - по умолчанию 512 Мбайт.
430
+ UPLOAD_QUEUE_MAX_SIZE = 500_000_000
431
+
432
+ # Настройка очереди Redis для формирования файлов РВД.
433
+ [rdm_redis]
434
+ REDIS_HOST = localhost
435
+ REDIS_PORT = 6379
436
+ REDIS_DB = 1
437
+ REDIS_PASSWORD =
438
+ ```
439
+ - С версии 3.3.1 в дефолтный конфиг нужно добавить
440
+ ```
441
+ [rdm_redis]
442
+ ...
443
+ # Таймаут для сохранения параметров в общем кеш.
444
+ REDIS_CACHE_TIMEOUT_SECONDS = 7200
445
+ ```
446
+ - С версии 3.4.2 в дефолтный конфиг нужно добавить
447
+ ```
448
+ # Настройка запуска периодической задачи отправки csv-файлов в витрину.
449
+ [rdm_upload_data_task]
450
+ MINUTE=*/2
451
+ HOUR=*
452
+ DAY_OF_WEEK=*
453
+ LOCK_EXPIRE_SECONDS = 60 * 60 * 2
454
+ ```
455
+ - С версии 3.6 в дефолтный конфиг также нужно добавить два дополнительных раздела
456
+ ```
343
457
 
344
458
  [rdm_transfer_task_fast]
345
459
  MINUTE=*/2
@@ -352,7 +466,7 @@ Dynamic: license-file
352
466
  HOUR=*
353
467
  DAY_OF_WEEK=*
354
468
  LOCK_EXPIRE_SECONDS = 21600
355
- ```
469
+ ```
356
470
  На основе дефолтного конфига произвести конфигурирование приложений.
357
471
 
358
472
  ## Сборка и распространение
@@ -35,7 +35,7 @@
35
35
  Стоит обратить внимание, что сущности РВД могут содержать в себе данные из нескольких моделей РВД.
36
36
 
37
37
  Очереди для периодических задач сборки и выгрузки данных
38
- : Важно учитывать, что с версии пакета 3.6 вводится две новые очереди и соответсвущие этим очередям периодические задачи
38
+ : Важно учитывать, что с версии пакета 3.6 вводится две новые очереди и соответствущие этим очередям периодические задачи
39
39
  сбора и выгрузки данных. Очередь для сущности указывается в реестре "Сущности для сбора и экспорта данных" - по умолчанию все
40
40
  сущности относятся к основной очереди.
41
41
  Итого - нужно настроить три очереди для работы.
@@ -98,8 +98,36 @@
98
98
  ('uploader_client', 'ENABLE_REQUEST_EMULATION'): False,
99
99
  })
100
100
  ```
101
- С версии пакета 3.6 добавляются новые настройки для двух периодических задач разных очередей сбора и выгрузки данных
102
- ```
101
+ Дополнительные настройки с версии 3.4.2
102
+ ```
103
+ PROJECT_DEFAULT_CONFIG.update({
104
+ # Настройки РВД
105
+ ('rdm_general', 'EXPORT_ENTITY_ID_PREFIX'): '', # Дефолтное значение нужно изменить на специфическое системе
106
+ ('rdm_general', 'COLLECT_CHUNK_SIZE'): 500,
107
+ ('rdm_general', 'EXPORT_CHUNK_SIZE'): 500,
108
+ ('rdm_transfer_task', 'MINUTE'): '0',
109
+ ('rdm_transfer_task', 'HOUR'): '*/4',
110
+ ('rdm_transfer_task', 'DAY_OF_WEEK'): '*',
111
+ ('rdm_transfer_task', 'LOCK_EXPIRE_SECONDS'): 21600,
112
+ ('rdm_transfer_task', 'TIMEDELTA'): 3600,
113
+ ('rdm_transfer_task', 'ENTITIES'): '',
114
+ ('rdm_upload_status_task', 'MINUTE'): '*/30',
115
+ ('rdm_upload_status_task', 'HOUR'): '*',
116
+ ('rdm_upload_status_task', 'DAY_OF_WEEK'): '*',
117
+ ('rdm_upload_status_task', 'LOCK_EXPIRE_SECONDS'): 7200,
118
+ ('rdm_upload_data_task', 'MINUTE'): '0',
119
+ ('rdm_upload_data_task', 'HOUR'): '*/2',
120
+ ('rdm_upload_data_task', 'DAY_OF_WEEK'): '*',
121
+ ('rdm_upload_data_task', 'LOCK_EXPIRE_SECONDS'): 7200,
122
+ ('uploader_client', 'URL'): 'http://localhost:8090',
123
+ ('uploader_client', 'DATAMART_NAME'): '',
124
+ ('uploader_client', 'REQUEST_RETRIES'): 10,
125
+ ('uploader_client', 'REQUEST_TIMEOUT'): 10,
126
+ ('uploader_client', 'ENABLE_REQUEST_EMULATION'): False,
127
+ })
128
+ ```
129
+ С версии пакета 3.6 добавляются новые настройки для двух периодических задач разных очередей сбора и выгрузки данных
130
+ ```
103
131
  PROJECT_DEFAULT_CONFIG.update({
104
132
  # Настройки РВД
105
133
  ('rdm_general', 'EXPORT_ENTITY_ID_PREFIX'): '', # Дефолтное значение нужно изменить на специфическое системе
@@ -123,14 +151,18 @@
123
151
  ('rdm_upload_status_task', 'HOUR'): '*',
124
152
  ('rdm_upload_status_task', 'DAY_OF_WEEK'): '*',
125
153
  ('rdm_upload_status_task', 'LOCK_EXPIRE_SECONDS'): 7200,
154
+ ('rdm_upload_data_task', 'MINUTE'): '0',
155
+ ('rdm_upload_data_task', 'HOUR'): '*/2',
156
+ ('rdm_upload_data_task', 'DAY_OF_WEEK'): '*',
157
+ ('rdm_upload_data_task', 'LOCK_EXPIRE_SECONDS'): 7200,
126
158
  ('uploader_client', 'URL'): 'http://localhost:8090',
127
159
  ('uploader_client', 'DATAMART_NAME'): '',
128
160
  ('uploader_client', 'REQUEST_RETRIES'): 10,
129
161
  ('uploader_client', 'REQUEST_TIMEOUT'): 10,
130
162
  ('uploader_client', 'ENABLE_REQUEST_EMULATION'): False,
131
163
  })
132
-
133
- ```
164
+
165
+ ```
134
166
  - Получение значений настроек из конфигурационного файла в settings.py:
135
167
 
136
168
  ```
@@ -189,21 +221,48 @@
189
221
  RDM_UPLOADER_CLIENT_ENABLE_REQUEST_EMULATION = conf.get_bool('uploader_client', 'ENABLE_REQUEST_EMULATION')
190
222
 
191
223
  ```
192
- С версии пакета 3.6 добавляются настройки для двух новых периодических задач
193
- ```
194
- # Настройка запуска периодической задачи выгрузки данных - быстрая очередь:
195
- RDM_FAST_TRANSFER_TASK_MINUTE = conf.get('rdm_transfer_task_fast', 'MINUTE')
196
- RDM_FAST_TRANSFER_TASK_HOUR = conf.get('rdm_transfer_task_fast', 'HOUR')
197
- RDM_FAST_TRANSFER_TASK_DAY_OF_WEEK = conf.get('rdm_transfer_task_fast', 'DAY_OF_WEEK')
198
- RDM_FAST_TRANSFER_TASK_LOCK_EXPIRE_SECONDS = conf.get_int('rdm_transfer_task_fast', 'LOCK_EXPIRE_SECONDS')
199
-
200
- # Настройка запуска периодической задачи выгрузки данных - долгая очередь расчетных моделей:
201
- RDM_LONG_TRANSFER_TASK_MINUTE = conf.get('rdm_transfer_task_long', 'MINUTE')
202
- RDM_LONG_TRANSFER_TASK_HOUR = conf.get('rdm_transfer_task_long', 'HOUR')
203
- RDM_LONG_TRANSFER_TASK_DAY_OF_WEEK = conf.get('rdm_transfer_task_long', 'DAY_OF_WEEK')
204
- RDM_LONG_TRANSFER_TASK_LOCK_EXPIRE_SECONDS = conf.get_int('rdm_transfer_task_long', 'LOCK_EXPIRE_SECONDS')
205
-
206
- ```
224
+ Дополнительные настройки с версии 3.3.0
225
+ ```
226
+ # Объем очереди файлов в витрину байтах) - по умолчанию 512 Мбайт.
227
+ RDM_UPLOAD_QUEUE_MAX_SIZE = conf.get_int('rdm_general', 'UPLOAD_QUEUE_MAX_SIZE') or 500_000_000
228
+
229
+ # Настройка очереди Redis для формирования файлов РВД.
230
+ RDM_REDIS_HOST = conf.get('rdm_redis', 'REDIS_HOST')
231
+ RDM_REDIS_PORT = conf.get('rdm_redis', 'REDIS_PORT')
232
+ RDM_REDIS_DB = conf.get('rdm_redis', 'REDIS_DB')
233
+ RDM_REDIS_PASSWORD = conf.get('rdm_redis', 'REDIS_PASSWORD')
234
+
235
+ ```
236
+ Дополнительные настройки с версии 3.3.1
237
+ ```
238
+ # Таймаут для сохранения параметров в общем кеш.
239
+ RDM_REDIS_CACHE_TIMEOUT_SECONDS = conf.get_int('rdm_redis', 'REDIS_CACHE_TIMEOUT_SECONDS') or 60 * 60 * 2
240
+
241
+ ```
242
+ Дополнительные настройки с версии 3.4.2
243
+ ```
244
+ # Настройка запуска периодической задачи отправки файлов с данными РВД
245
+ RDM_UPLOAD_DATA_TASK_MINUTE = conf.get('rdm_upload_data_task', 'MINUTE')
246
+ RDM_UPLOAD_DATA_TASK_HOUR = conf.get('rdm_upload_data_task', 'HOUR')
247
+ RDM_UPLOAD_DATA_TASK_DAY_OF_WEEK = conf.get('rdm_upload_data_task', 'DAY_OF_WEEK')
248
+ RDM_UPLOAD_DATA_TASK_LOCK_EXPIRE_SECONDS = conf.get_int('rdm_upload_data_task', 'LOCK_EXPIRE_SECONDS') or 60 * 60 * 2
249
+
250
+ ```
251
+ С версии пакета 3.6 добавляются настройки для двух новых периодических задач
252
+ ```
253
+ # Настройка запуска периодической задачи выгрузки данных - быстрая очередь:
254
+ RDM_FAST_TRANSFER_TASK_MINUTE = conf.get('rdm_transfer_task_fast', 'MINUTE')
255
+ RDM_FAST_TRANSFER_TASK_HOUR = conf.get('rdm_transfer_task_fast', 'HOUR')
256
+ RDM_FAST_TRANSFER_TASK_DAY_OF_WEEK = conf.get('rdm_transfer_task_fast', 'DAY_OF_WEEK')
257
+ RDM_FAST_TRANSFER_TASK_LOCK_EXPIRE_SECONDS = conf.get_int('rdm_transfer_task_fast', 'LOCK_EXPIRE_SECONDS')
258
+
259
+ # Настройка запуска периодической задачи выгрузки данных - долгая очередь расчетных моделей:
260
+ RDM_LONG_TRANSFER_TASK_MINUTE = conf.get('rdm_transfer_task_long', 'MINUTE')
261
+ RDM_LONG_TRANSFER_TASK_HOUR = conf.get('rdm_transfer_task_long', 'HOUR')
262
+ RDM_LONG_TRANSFER_TASK_DAY_OF_WEEK = conf.get('rdm_transfer_task_long', 'DAY_OF_WEEK')
263
+ RDM_LONG_TRANSFER_TASK_LOCK_EXPIRE_SECONDS = conf.get_int('rdm_transfer_task_long', 'LOCK_EXPIRE_SECONDS')
264
+
265
+ ```
207
266
  Перечень настроек в settings.py указан в таблице ниже.
208
267
 
209
268
  | Название настройки в settings | Описание | Значение по умолчанию |
@@ -220,12 +279,37 @@
220
279
  | RDM_TRANSFER_TASK_MINUTE | Настройка запуска периодической задачи выгрузки данных. Минута | '0' |
221
280
  | RDM_TRANSFER_TASK_HOUR | Настройка запуска периодической задачи выгрузки данных. Час | '*/4' |
222
281
  | RDM_TRANSFER_TASK_DAY_OF_WEEK | Настройка запуска периодической задачи выгрузки данных. День недели | '*' |
223
- | RDM_TRANSFER_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секунадх) | 21600 |
282
+ | RDM_TRANSFER_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секундах) | 21600 |
224
283
  | RDM_UPLOAD_STATUS_TASK_MINUTE | Настройка запуска периодической задачи статуса загрузки данных в витрину. Минута | '*/30' |
225
284
  | RDM_UPLOAD_STATUS_TASK_HOUR | Настройка запуска периодической задачи статуса загрузки данных в витрину. Час | '*' |
226
285
  | RDM_UPLOAD_STATUS_TASK_DAY_OF_WEEK | Настройка запуска периодической задачи статуса загрузки данных в витрину. День недели | '*' |
227
- | RDM_UPLOAD_STATUS_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секунадх) | 3600 |
286
+ | RDM_UPLOAD_STATUS_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секундах) | 3600 |
228
287
  | RDM_CHECK_SUSPEND_TASK_STAGE_TIMEOUT | Дельта для определения зависшего подэтапа. Минута | 120 |
288
+
289
+ С версии пакета 3.3.0 добавляются новые настройки
290
+
291
+ | Название настройки в settings | Описание | Значение по умолчанию |
292
+ |--------------------------------------------|----------------------------------------------------------------------------------------|-----------------------|
293
+ | RDM_UPLOAD_QUEUE_MAX_SIZE | Объем очереди файлов в витрину (в байтах). | 500_000_000 |
294
+ | RDM_REDIS_HOST | Настройка очереди Redis для формирования файлов РВД (хост). | |
295
+ | RDM_REDIS_PORT | Настройка очереди Redis для формирования файлов РВД (порт). | |
296
+ | RDM_REDIS_DB | Настройка очереди Redis для формирования файлов РВД (номер бд). | |
297
+ | RDM_REDIS_PASSWORD | Настройка очереди Redis для формирования файлов РВД (пароль). | |
298
+
299
+ С версии пакета 3.3.1 добавляются новые настройки
300
+
301
+ | Название настройки в settings | Описание | Значение по умолчанию |
302
+ |--------------------------------------------|----------------------------------------------------------------------------------------|-----------------------|
303
+ | RDM_REDIS_CACHE_TIMEOUT_SECONDS | Таймаут для сохранения параметров в общем кеш (секунды). | 7200 |
304
+
305
+ С версии пакета 3.4.2 добавляются новые настройки
306
+
307
+ | Название настройки в settings | Описание | Значение по умолчанию |
308
+ |--------------------------------------------|----------------------------------------------------------------------------------------|-----------------------|
309
+ | RDM_UPLOAD_DATA_TASK_MINUTE | Настройка запуска периодической задачи отправки файлов с данными РВД (минута). | '0' |
310
+ | RDM_UPLOAD_DATA_TASK_HOUR | Настройка запуска периодической задачи отправки файлов с данными РВД (час). | '*/2' |
311
+ | RDM_UPLOAD_DATA_TASK_DAY_OF_WEEK | Настройка запуска периодической задачи отправки файлов с данными РВД (день недели). | '*' |
312
+ | RDM_UPLOAD_DATA_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секундах). | 7200 |
229
313
 
230
314
  С версии пакета 3.6 добавляются новые настройки
231
315
 
@@ -234,11 +318,11 @@
234
318
  | RDM_FAST_TRANSFER_TASK_MINUTE | Настройка запуска периодической задачи (быстрая очередь) выгрузки данных. Минута | '*/5' |
235
319
  | RDM_FAST_TRANSFER_TASK_HOUR | Настройка запуска периодической задачи (быстрая очередь) выгрузки данных. Час | '*' |
236
320
  | RDM_FAST_TRANSFER_TASK_DAY_OF_WEEK | Настройка запуска периодической задачи (быстрая очередь) выгрузки данных. День недели | '*' |
237
- | RDM_FAST_TRANSFER_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секунадх) | 1800 |
321
+ | RDM_FAST_TRANSFER_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секундах) | 1800 |
238
322
  | RDM_LONG_TRANSFER_TASK_MINUTE | Настройка запуска периодической задачи (долгая очередь) выгрузки данных. Минута | 0 |
239
323
  | RDM_LONG_TRANSFER_TASK_HOUR | Настройка запуска периодической задачи (долгая очередь) выгрузки данных. Час | '*/6' |
240
324
  | RDM_LONG_TRANSFER_TASK_DAY_OF_WEEK | Настройка запуска периодической задачи (долгая очередь) выгрузки данных. День недели | '*' |
241
- | RDM_LONG_TRANSFER_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секунадх) | 28800 |
325
+ | RDM_LONG_TRANSFER_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секундах) | 28800 |
242
326
 
243
327
  - В дефолтный конфиг проекта необходимо добавить:
244
328
 
@@ -294,8 +378,38 @@
294
378
  # Включить эмуляцию отправки запросов
295
379
  ENABLE_REQUEST_EMULATION = True
296
380
  ```
297
- - С версии 3.6 в деволтный конфиг также нужно добавить два дополнительных раздела
298
- ```
381
+ - С версии 3.3.0 в дефолтный конфиг нужно добавить
382
+ ```
383
+ [rdm_general]
384
+ ...
385
+ # Объем очереди файлов в витрину (в байтах) - по умолчанию 512 Мбайт.
386
+ UPLOAD_QUEUE_MAX_SIZE = 500_000_000
387
+
388
+ # Настройка очереди Redis для формирования файлов РВД.
389
+ [rdm_redis]
390
+ REDIS_HOST = localhost
391
+ REDIS_PORT = 6379
392
+ REDIS_DB = 1
393
+ REDIS_PASSWORD =
394
+ ```
395
+ - С версии 3.3.1 в дефолтный конфиг нужно добавить
396
+ ```
397
+ [rdm_redis]
398
+ ...
399
+ # Таймаут для сохранения параметров в общем кеш.
400
+ REDIS_CACHE_TIMEOUT_SECONDS = 7200
401
+ ```
402
+ - С версии 3.4.2 в дефолтный конфиг нужно добавить
403
+ ```
404
+ # Настройка запуска периодической задачи отправки csv-файлов в витрину.
405
+ [rdm_upload_data_task]
406
+ MINUTE=*/2
407
+ HOUR=*
408
+ DAY_OF_WEEK=*
409
+ LOCK_EXPIRE_SECONDS = 60 * 60 * 2
410
+ ```
411
+ - С версии 3.6 в дефолтный конфиг также нужно добавить два дополнительных раздела
412
+ ```
299
413
 
300
414
  [rdm_transfer_task_fast]
301
415
  MINUTE=*/2
@@ -308,7 +422,7 @@
308
422
  HOUR=*
309
423
  DAY_OF_WEEK=*
310
424
  LOCK_EXPIRE_SECONDS = 21600
311
- ```
425
+ ```
312
426
  На основе дефолтного конфига произвести конфигурирование приложений.
313
427
 
314
428
  ## Сборка и распространение
@@ -0,0 +1,3 @@
1
+ NOT_SPECIFIED_QUEUE_TO_MODEL_ERROR = 'Для переданной модели {} не указана очередь для сохранения!'
2
+
3
+ CACHED_OBJECTS_TYPE_MISMATCH_ERROR = 'Тип сравниваемого объекта не соответствует типу объекта в кеше'