Name | edu-rdm-integration JSON |
Version |
3.4.5
JSON |
| download |
home_page | None |
Summary | Интеграция с Региональной витриной данных |
upload_time | 2024-11-02 07:44:12 |
maintainer | None |
docs_url | None |
author | BARS Group |
requires_python | None |
license | None |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# Проект "Интеграция с Региональной витриной данных (РВД)"
Для интеграции с Региональной витриной данных был выделен отдельный пакет для использования его компонентов в различных
продуктах.
На текущий момент интеграция реализуется в рамках проектов Электронная школа (ЭШ) и Электронный колледж (ЭК).
## Описание концепции
Со стороны Минцифры предоставляется спецификация (ЕФТТ) с требованиями по формату и механизму выгрузки данных.
Выбрана модель промежуточного хранения данных на стороне продукта, которые подлежат выгрузке. При помощи такого подхода,
можно обеспечить формирование не хранящихся в продукте данных и дальнейшее их обновление и удаление. Упрощается процесс
поиска ошибок в данных, т.к. можно явно определить, в каких записях находятся ошибки и далее анализировать существующие
данные в продуктах или функционал по формированию данных.
## Принцип работы
Весь процесс разделен на сбор и выгрузку данных. Выделяются следующие понятия:
Модель продукта
: Django-модель находящаяся в самом продукте. При помощи нее производится накапливание пользовательских данных;
Модель РВД
: Django-модель находящаяся в пакете РВД продукта. Из моделей РВД формируется схема БД, позволяющая хранить данные для
дальнейшей выгрузки в нормализованном виде;
Сущность РВД
: Описание формата выгрузки данных в РВД в виде dataclass-а. Хранит в себе описание первичных, внешних ключей,
обязательность и порядок полей.
На этапе сбора данных производится формирование данных моделей РВД на основе данных моделей продуктов. Существуют так
называемые расчетные модели, для которых данные рассчитываются в процессе сбора.
Стоит обратить внимание, что сущности РВД могут содержать в себе данные из нескольких моделей РВД.
## Требования к окружению
Для работы требуется Python >=3.7. Так же в зависимостях есть внутренние пакеты:
- educommon;
- function-tools;
- m3-db-utils;
- uploader-client.
Версии всех пакетов уточнены в файлах с зависимостями.
## Разворачивание
Перед внедрением пакета в проект, необходимо убедиться, что:
- В проекте используется логирование из educommon;
- В проект внедрен function-tools;
- В проект внедрен m3-db-utils;
- В проект внедрен uploader-client.
## Параметры конфигурационного файла
В разных проектах существуют различные способы добавления настроек, где-то через плагины, где-то напрямую в settings.py.
Будет рассмотрен подход указания настроек в settings.py и указания параметров в конфигурационном файле.
Для возможности конфигурирования необходимо проделать ряд действий:
- Определение значений по умолчанию настроек в settings.py:
```
PROJECT_DEFAULT_CONFIG.update({
# Настройки РВД
('rdm_general', 'EXPORT_ENTITY_ID_PREFIX'): '', # Дефолтное значение нужно изменить на специфическое системе
('rdm_general', 'COLLECT_CHUNK_SIZE'): 500,
('rdm_general', 'EXPORT_CHUNK_SIZE'): 500,
('rdm_transfer_task', 'MINUTE'): '0',
('rdm_transfer_task', 'HOUR'): '*/4',
('rdm_transfer_task', 'DAY_OF_WEEK'): '*',
('rdm_transfer_task', 'LOCK_EXPIRE_SECONDS'): 21600,
('rdm_transfer_task', 'TIMEDELTA'): 3600,
('rdm_transfer_task', 'ENTITIES'): '',
('rdm_upload_status_task', 'MINUTE'): '*/30',
('rdm_upload_status_task', 'HOUR'): '*',
('rdm_upload_status_task', 'DAY_OF_WEEK'): '*',
('rdm_upload_status_task', 'LOCK_EXPIRE_SECONDS'): 7200,
('uploader_client', 'URL'): 'http://localhost:8090',
('uploader_client', 'DATAMART_NAME'): '',
('uploader_client', 'REQUEST_RETRIES'): 10,
('uploader_client', 'REQUEST_TIMEOUT'): 10,
('uploader_client', 'ENABLE_REQUEST_EMULATION'): False,
})
```
- Получение значений настроек из конфигурационного файла в settings.py:
```
# Ссылка на каталог с файлами для загрузки
UPLOADS = 'uploads'
# =============================================================================
# Интеграция с Региональной витриной данных (РВД)
# =============================================================================
# Префикс идентификаторов записей сущностей специфический для продукта
RDM_EXPORT_ENTITY_ID_PREFIX = conf.get('rdm_general', 'EXPORT_ENTITY_ID_PREFIX')
# Количество записей моделей ЭШ обрабатываемых за одну итерацию сбора данных
RDM_COLLECT_CHUNK_SIZE = conf.get_int('rdm_general', 'COLLECT_CHUNK_SIZE')
# Количество записей моделей обрабатываемых за одну итерацию экспорта данных
RDM_EXPORT_CHUNK_SIZE = conf.get_int('rdm_general', 'EXPORT_CHUNK_SIZE')
# Количество не экспортированных записей моделей обрабатываемых за одну итерацию обновления поля modified
RDM_UPDATE_NON_EXPORTED_CHUNK_SIZE = conf.get_int('rdm_general', 'UPDATE_NON_EXPORTED_CHUNK_SIZE')
# Настройка запуска периодической задачи выгрузки данных:
RDM_TRANSFER_TASK_MINUTE = conf.get('rdm_transfer_task', 'MINUTE')
RDM_TRANSFER_TASK_HOUR = conf.get('rdm_transfer_task', 'HOUR')
RDM_TRANSFER_TASK_DAY_OF_WEEK = conf.get('rdm_transfer_task', 'DAY_OF_WEEK')
RDM_TRANSFER_TASK_EXPIRE_SECOND = conf.get('rdm_transfer_task', 'LOCK_EXPIRE_SECONDS')
# Настройка запуска периодической задачи статуса загрузки данных в витрину:
RDM_UPLOAD_STATUS_TASK_MINUTE = conf.get('rdm_upload_status_task', 'MINUTE')
RDM_UPLOAD_STATUS_TASK_HOUR = conf.get('rdm_upload_status_task', 'HOUR')
RDM_UPLOAD_STATUS_TASK_DAY_OF_WEEK = conf.get('rdm_upload_status_task', 'DAY_OF_WEEK')
RDM_UPLOAD_STATUS_TASK_EXPIRE_SECOND = conf.get('rdm_upload_status_task', 'LOCK_EXPIRE_SECONDS')
# Настройка запуска периодической задачи поиска зависших этапов экспорта:
RDM_CHECK_SUSPEND_TASK_MINUTE = conf.get('rdm_check_suspend_task', 'MINUTE')
RDM_CHECK_SUSPEND_TASK_HOUR = conf.get('rdm_check_suspend_task', 'HOUR')
RDM_CHECK_SUSPEND_TASK_DAY_OF_WEEK = conf.get('rdm_check_suspend_task', 'DAY_OF_WEEK')
RDM_CHECK_SUSPEND_TASK_EXPIRE_SECOND = conf.get('rdm_check_suspend_task', 'LOCK_EXPIRE_SECONDS')
RDM_CHECK_SUSPEND_TASK_TIMEDELTA = conf.get_int('rdm_check_suspend_task', 'TIMEDELTA')
# Загрузка данных в Региональную витрину данных (РВД)
# Адрес витрины (schema://host:port)
RDM_UPLOADER_CLIENT_URL = conf.get('uploader_client', 'URL')
# Мнемоника Витрины
RDM_UPLOADER_CLIENT_DATAMART_NAME = conf.get('uploader_client', 'DATAMART_NAME')
# Количество повторных попыток запроса
RDM_UPLOADER_CLIENT_REQUEST_RETRIES = conf.get_int('uploader_client', 'REQUEST_RETRIES')
# Таймаут запроса, сек
RDM_UPLOADER_CLIENT_REQUEST_TIMEOUT = conf.get_int('uploader_client', 'REQUEST_TIMEOUT')
# Включить эмуляцию отправки запросов
RDM_UPLOADER_CLIENT_ENABLE_REQUEST_EMULATION = conf.get_bool('uploader_client', 'ENABLE_REQUEST_EMULATION')
```
Перечень настроек в settings.py указан в таблице ниже.
| Название настройки в settings | Описание | Значение по умолчанию |
|----------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------|-------------------------|
| UPLOADS | Основная директория в MEDIA, в которой будет создана директория edu_rdm_integration для сохранения файлов для дальнейшей выгрузки | 500 |
| RDM_COLLECT_CHUNK_SIZE | Количество записей моделей обрабатываемых за одну итерацию сбора данных | 500 |
| RDM_EXPORT_CHUNK_SIZE | Количество записей моделей обрабатываемых за одну итерацию экспорта | 500 |
| RDM_UPDATE_NON_EXPORTED_CHUNK_SIZE | # Количество не экспортированных записей моделей обрабатываемых за одну итерацию обновления поля modified | 5000 |
| RDM_UPLOADER_CLIENT_URL | Адрес витрины (schema://host:port) | 'http://localhost:8090' |
| RDM_UPLOADER_CLIENT_DATAMART_NAME | Мнемоника Витрины | 'test' |
| RDM_UPLOADER_CLIENT_REQUEST_RETRIES | Количество повторных попыток запроса | 10 |
| RDM_UPLOADER_CLIENT_REQUEST_TIMEOUT | Таймаут запроса, сек | 10 |
| RDM_UPLOADER_CLIENT_ENABLE_REQUEST_EMULATION | Включить эмуляцию отправки запросов | True |
| RDM_TRANSFER_TASK_MINUTE | Настройка запуска периодической задачи выгрузки данных. Минута | '0' |
| RDM_TRANSFER_TASK_HOUR | Настройка запуска периодической задачи выгрузки данных. Час | '*/4' |
| RDM_TRANSFER_TASK_DAY_OF_WEEK | Настройка запуска периодической задачи выгрузки данных. День недели | '*' |
| RDM_TRANSFER_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секунадх) | 21600 |
| RDM_UPLOAD_STATUS_TASK_MINUTE | Настройка запуска периодической задачи статуса загрузки данных в витрину. Минута | '*/30' |
| RDM_UPLOAD_STATUS_TASK_HOUR | Настройка запуска периодической задачи статуса загрузки данных в витрину. Час | '*' |
| RDM_UPLOAD_STATUS_TASK_DAY_OF_WEEK | Настройка запуска периодической задачи статуса загрузки данных в витрину. День недели | '*' |
| RDM_UPLOAD_STATUS_TASK_LOCK_EXPIRE_SECONDS | Время по истечении которого, блокировка может быть снята (в секунадх) | 3600 |
| RDM_CHECK_SUSPEND_TASK_STAGE_TIMEOUT | Дельта для определения зависшего подэтапа. Минута | 120 |
- В дефолтный конфиг проекта необходимо добавить:
```
# Общие настройки интеграции с РВД
[rmd_general]
# Префикс идентификаторов записей сущностей специфический для продукта. Указывается в settings.py и не должен
# изменяться. Возможность изменения через конфигурационный файл оставлена для экстренных случаев.
# EXPORT_ENTITY_ID_PREFIX =
# Количество записей моделей обрабатываемых за одну итерацию экспорта данных
EXPORT_CHUNK_SIZE = 500
# Количество записей моделей ЭШ обрабатываемых за одну итерацию сбора данных
COLLECT_CHUNK_SIZE = 500
# Количество не экспортированных записей моделей обрабатываемых за одну итерацию обновления поля modified
UPDATE_NON_EXPORTED_CHUNK_SIZE = 5_000
# Настройка запуска периодической задачи выгрузки данных
[rdm_transfer_task]
MINUTE=*/2
HOUR=*
DAY_OF_WEEK=*
LOCK_EXPIRE_SECONDS=21600
# Дельта между прошлым и текущим запуском, сек
TIMEDELTA=120
# Сущности, по которым должен производиться сбор и выгрузка данных. Перечисляются через запятую без пробелов.
ENTITIES =
# Настройка запуска периодической задачи статуса загрузки данных в витрину
[rdm_upload_status_task]
MINUTE=*/2
HOUR=*
DAY_OF_WEEK=*
LOCK_EXPIRE_SECONDS=7200
# Настройка запуска периодической задачи поиска зависших этапов экспорта
[rdm_check_suspend_task]
MINUTE=*/10
HOUR=*
DAY_OF_WEEK=*
LOCK_EXPIRE_SECONDS=7200
# Дельта для определения зависшего подэтапа, мин
STAGE_TIMEOUT=120
[uploader_client]
# Адрес витрины
URL = http://localhost:8090
# Мнемоника Витрины
DATAMART_NAME = test
# Количество повторных попыток запроса
REQUEST_RETRIES = 10
# Таймаут запроса, сек
REQUEST_TIMEOUT = 10
# Включить эмуляцию отправки запросов
ENABLE_REQUEST_EMULATION = True
```
На основе дефолтного конфига произвести конфигурирование приложений.
## Сборка и распространение
Сборка пакета производится при помощи [Job-а в Jenkins M3.build_dist](http://jenkins.py.bars.group/view/PY/job/M3.packages/job/M3.build_dist/).
Пакет выкладывается в глобальный [PYPI](https://pypi.org/project/edu-rdm-integration/) и во внутренний [Nexus](http://nexus.py.bars.group/#browse/browse:pypi-edu-private:edu-rdm-integration)
## Документация
С документацией можно ознакомиться по ссылке http://docs.py.bars.group/edu-rdm-integration/
# История изменений
Все изменения проекта должны быть отражены в этом файле.
Формат основан на [Keep a Changelog](http://keepachangelog.com/)
и проект следует [Семантическому версионированию](http://semver.org/).
## [x.y.z] - гггг-мм-дд
Здесь должно быть расширенное описание того, что было сделано, какие есть планы у команды по дальнейшему развитию.
Желательно будущие цели привязывать к конкретным задачам. Т.е. на каждую цель нужно поставить отдельную задачу и
отразить ее номер здесь.
### Добавлено
- [ПРОЕКТ-ZZZZ](https://jira.bars.group/browse/ПРОЕКТ-ZZZZ)
PATCH Название задачи или изменения.
- [ПРОЕКТ-YYYY](https://jira.bars.group/browse/ПРОЕКТ-YYYY)
MINOR Название задачи или изменения.
- [ПРОЕКТ-XXXX](https://jira.bars.group/browse/ПРОЕКТ-XXXX)
MAJOR Название задачи или изменения.
### Изменено
### Исправлено
### Удалено
## 3.4.5 - 2024-11-01
Добавлена обработка ошибок чтения файла при отправке данных в РВД (UploadDataAsyncTask)
## Исправлено
- [EDUSCHL-22734](https://jira.bars.group/browse/EDUSCHL-22734)
Добавлена обработка ошибок чтения файла при отправке данных в РВД (UploadDataAsyncTask)
## 3.4.4 - 2024-10-23
Добавлена ассинхронная менедж-команда простановки размеров файлов выгрузки в модель ExportingDataSubStageAttachment
## Исправлено
- [EDUSCHL-22651](https://jira.bars.group/browse/EDUSCHL-22651)
Добавлена ассинхронная менедж-команда простановки размеров файлов выгрузки в модель ExportingDataSubStageAttachment
## 3.4.3 - 2024-10-17
Исправлена миграция простановки размеров файлов выгрузки в модель ExportingDataSubStageAttachment
## Исправлено
- [EDUSCHL-22651](https://jira.bars.group/browse/EDUSCHL-22651)
Исправлена миграция простановки размеров файлов выгрузки в модель ExportingDataSubStageAttachment
## 3.4.2 - 2024-10-15
Добавлены отдельные параметры по управлению временем запуска UploadDataAsyncTask
## Добавлено
- [EDUSCHL-22166](https://jira.bars.group/browse/EDUSCHL-22166)
Добавлены отдельные параметры по управлению временем запуска UploadDataAsyncTask
## 3.4.1 - 2024-09-26
Добавлена документация по сбору/выгрузке сущностей для ЭДС, ЭК
## Добавлено
- [EDUKNDG-14518](https://jira.bars.group/browse/EDUKNDG-14518)
Добавлена документация по сбору/выгрузке сущностей для ЭДС, ЭК
## 3.4.0 - 2024-09-25
В базовый класс тестирования функций сбора добавлена поддержка формата PhoneNumber для формирования
экземпляра модели AuditLog.
Повышена версия зависимости educommon >= 3.11.0.
Вынесены утилиты и базовый класс для логирования и сбора по модели в рамках сущности
## Добавлено
- [EDUSCHL-22378](https://jira.bars.group/browse/EDUSCHL-22378)
Реализация поля моделей Django содержащего номер телефона
### Изменено
- [EDUKNDG-14516](https://jira.bars.group/browse/EDUKNDG-14516)
PATCH Вынесены утилиты и базовый класс для логирования и сбора по модели в рамках сущности
## 3.3.8 - 2024-10-14
Задача UploadDataAsyncTask изменена с PeriodicAsyncTask на UploadDataAsyncTask
- [EDUSCHL-22519]https://jira.bars.group/browse/EDUSCHL-22519
PATCH Задача UploadDataAsyncTask изменена с PeriodicAsyncTask на UploadDataAsyncTask
## 3.3.7 - 2024-09-06
Добавлены команда (UploadEntitiesData) и модель (UploadDataCommand) для логирования и запуска выгрузки данных в витрину
- [EDUSCHL-22042](https://jira.bars.group/browse/EDUSCHL-22042)
PATCH Добавлены команда (UploadEntitiesData) и модель (UploadDataCommand) для логирования и запуска выгрузки данных
в витрину
## 3.3.6 - 2024-09-02
Добавлена фильтрация по дате выгрузки при обновлении данных на экспорт в BaseExportLatestEntitiesData
### Изменено
- [EDUSCHL-22335](https://jira.bars.group/browse/EDUSCHL-22335)
PATCH Добавлена фильтрация по дате выгрузки при обновлении данных на экспорт в BaseExportLatestEntitiesData
## 3.3.5 - 2024-08-26
Классы UniquePeriodicAsyncTask, PeriodicTaskLocker перенесены в educommon.
### Удалено
- [EDUSCHL-22267](https://jira.bars.group/browse/EDUSCHL-22267)
MINOR Классы UniquePeriodicAsyncTask, PeriodicTaskLocker перенесены в educommon.
## 3.3.4 - 2024-08-16
Поднята максимальная версия Django (<3.3)
### Изменено
- [EDUKNDG-14560](https://jira.bars.group/browse/EDUKNDG-14560)
MINOR Добавлена поддержка Django 3.2
## 3.3.3 - 2024-08-19
Изменен порядок запуска сбора и экспорта по сущностям в периодической задаче TransferLatestEntitiesDataPeriodicTask
с учетом многопоточности, скорректированы номера миграций
### Изменено
- [EDUSCHL-21965](https://jira.bars.group/browse/EDUSCHL-21965)
PATCH Добавлен параметр export_off в модель TransferredEntity и изменен порядок запуска сбора и экспорта в
TransferLatestEntitiesDataPeriodicTask. Скорректированы номера миграций
## 3.3.2 - 2024-07-16
Добавлен параметр use_times_limit в BaseCollectLatestModelsData для использования переданных параметров logs_period_started_at и logs_period_ended_at
### Изменено
- [EDUSCHL-22070](https://jira.bars.group/browse/EDUSCHL-22070)
PATCH Добавлен параметр use_times_limit в BaseCollectLatestModelsData для использования переданных параметров logs_period_started_at и logs_period_ended_at
## 3.3.1 - 2024-06-13
Удалён устаревший параметр logs_sub_period_days у базового класса команды сбора данных BaseCollectModelsDataByGeneratingLogsCommand.
Добавлен таймаут для сохранения информации об объемах файла в кеш.
### Изменено
- [EDUSCHL-20649](https://jira.bars.group/browse/EDUSCHL-20649)
MINOR Удалён устаревший параметр logs_sub_period_days у базового класса команды сбора данных BaseCollectModelsDataByGeneratingLogsCommand
### Исправлено
- [EDUSCHL-21835](https://jira.bars.group/browse/EDUSCHL-21835)
PATCH Реализация многопоточной выгрузки
## 3.3.0 - 2024-06-06
Отправка файлов в РВД вынесена в отдельную задачу UploadDataAsyncTask, добавлен кеш файлов и очередь подэтапов отправки,
а также расчет объемов отправляемых файлов
### Изменено
- [EDUSCHL-21835](https://jira.bars.group/browse/EDUSCHL-21835)
MINOR Реализация многопоточной выгрузки
## 3.2.8 - 2024-08-02
Исправлена ошибка задвоения сборки и экспорта в периодической задаче TransferLatestEntitiesDataPeriodicTask.
### Изменено
- [EDUSCHL-21965](https://jira.bars.group/browse/EDUSCHL-21965)
PATCH Исправлена ошибка задвоения сборки и экспорта в периодической задаче TransferLatestEntitiesDataPeriodicTask.
## 3.2.7 - 2024-07-31
Исправлен файл MANIFEST.in для включения в сборку js-шаблонов.
### Изменено
- [EDUSCHL-21965](https://jira.bars.group/browse/EDUSCHL-21965)
PATCH Добавлено включение js-шаблонов в сборку в файл MANIFEST.in
## 3.2.6 - 2024-07-23
Добавлен параметр export_off (Отключение экспорта для сущности) в модель TransferredEntity
Изменен порядок запуска сбора и экспорта по сущностям в периодической задаче TransferLatestEntitiesDataPeriodicTask
### Изменено
- [EDUSCHL-21965](https://jira.bars.group/browse/EDUSCHL-21965)
PATCH Добавлен параметр export_off в модель TransferredEntity и изменен порядок запуска сбора и экспорта в
TransferLatestEntitiesDataPeriodicTask.
## 3.2.5 - 2024-07-16
Добавлен параметр use_times_limit в BaseCollectLatestModelsData для использования переданных параметров logs_period_started_at и logs_period_ended_at
### Изменено
- [EDUSCHL-22070](https://jira.bars.group/browse/EDUSCHL-22070)
PATCH Добавлен параметр use_times_limit в BaseCollectLatestModelsData для использования переданных параметров logs_period_started_at и logs_period_ended_at
## 3.2.5 - 2024-07-16
Добавлен параметр use_times_limit в BaseCollectLatestModelsData для использования переданных параметров logs_period_started_at и logs_period_ended_at
### Изменено
- [EDUSCHL-22070](https://jira.bars.group/browse/EDUSCHL-22070)
PATCH Добавлен параметр use_times_limit в BaseCollectLatestModelsData для использования переданных параметров logs_period_started_at и logs_period_ended_at
## 3.2.4 - 2024-07-16
Внесены корректировки в запросы используемые в функциях get_collecting_managers_max_period_ended_dates и get_exporting_managers_max_period_ended_dates.
### Изменено
- [EDUSCHL-22217](https://jira.bars.group/browse/EDUSCHL-22217)
PATCH Внесены корректировки в запросы используемые в функциях get_collecting_managers_max_period_ended_dates и get_exporting_managers_max_period_ended_dates.
В подзапросах отсутствовало условие фильтрации по статусу.
## 3.2.3 - 2024-06-06
Внесены корректировки в запросы используемые в функциях get_collecting_managers_max_period_ended_dates и get_exporting_managers_max_period_ended_dates.
### Изменено
- [EDUSCHL-21804](https://jira.bars.group/browse/EDUSCHL-21804)
PATCH Внесены корректировки в запросы используемые в функциях get_collecting_managers_max_period_ended_dates и get_exporting_managers_max_period_ended_dates.
Дата и время окончания предыдущего сбора/экспорта могла быть не корректно определена.
## 3.2.2 - 2024-05-21
Изменения в переодической задаче TransferLatestEntitiesDataPeriodicTask,
Изменено определение даты последнего успешного этапа сбора у менеджеров Функций сбора и экспорта.
Изменения получения крайней даты из переданного поля по указанным моделям в BaseCollectLatestModelsData.
Удалён параметр RDM_TRANSFER_TASK_TIMEDELTA.
### Изменено
- [EDUSCHL-21804](https://jira.bars.group/browse/EDUSCHL-21804)
PATCH Изменение определения даты последнего успешного этапа сбора у менеджеров Функций сбора и экспорта
Изменения получения крайней даты из переданного поля по указанным моделям в BaseCollectLatestModelsData.
Реализованы функции get_collecting_managers_max_period_ended_dates и get_exporting_managers_max_period_ended_dates
для получения даты времени успешного этапа сбора/экспорта.
## 3.2.1 - 2024-05-03
Понижен уровень логирования при возникновении ошибки отправки запросов в РВД с ERROR до WARNING
### Изменено
- [EDUSCHL-21903](https://jira.bars.group/browse/EDUSCHL-21903)
PATCH Понижен уровень логирования при возникновении ошибки отправки запросов в РВД
## 3.2.0 - 2024-05-02
Периодические задачи RDMCheckUploadStatus, CheckSuspendedExportedStagePeriodicTask,
TransferLatestEntitiesDataPeriodicTask сделаны уникальными.
### Изменено
- [EDUSCHL-21891](https://jira.bars.group/browse/EDUSCHL-21891)
MINOR Периодические задачи RDMCheckUploadStatus, CheckSuspendedExportedStagePeriodicTask,
TransferLatestEntitiesDataPeriodicTask сделаны уникальными. Во время действия блокировки не будет возможности
поставить новую подобную задачу.
## 3.1.1 - 2024-05-03
Понижен уровень логирования при возникновении ошибки отправки запросов в РВД с ERROR до WARNING
### Изменено
- [EDUSCHL-21903](https://jira.bars.group/browse/EDUSCHL-21903)
PATCH Понижен уровень логирования при возникновении ошибки отправки запросов в РВД
## 3.1.0 - 2024-04-23
Добавлена поддержка setuptools 69.*.
Поднята минимальная версия пакета pip 23.2.1
### Изменено
- [EDUSCHL-21761](https://jira.bars.group/browse/EDUSCHL-21761)
MINOR Добавлена поддержка setuptools 69.*. Поднять минимальную версию pip до 23.2.1.
## 3.0.4 - 2024-04-17
Возвращено проставление подэтапа выгрузки всем записям модели.
### Изменено
- [EDUSCHL-21761](https://jira.bars.group/browse/EDUSCHL-21761)
PATCH Возвращено проставление подэтапа выгрузки всем записям модели.
## 3.0.3 - 2024-04-11
В классах примесей CollectCommandMixin и ExportCommandMixin указана очередь для celery используемая в рамках пакета.
Указано базовое описание и тип задачи для отражения в реестре "Асинхронные задачи".
### Изменено
- [EDUSCHL-21793](https://jira.bars.group/browse/EDUSCHL-21793)
PATCH В классах примесей CollectCommandMixin и ExportCommandMixin указана очередь для celery
используемая в рамках пакета.
## 3.0.2 - 2024-04-11
Изменены типы полей ОГРН и ОКФС в сущности Organisations на строковые.
Исправлен тип передаваемого параметра institute_ids при выполнении поставленной задачи.
Исправлена ошибка проставления подэтапа выгрузки у неотправленных записей.
### Изменено
- [EDUCLLG-8336](https://jira.bars.group/browse/EDUCLLG-8336)
PATCH Изменены типы полей ОГРН и ОКФС в сущности Organisations на строковые.
- [EDUSCHL-21743](https://jira.bars.group/browse/EDUSCHL-21743)
PATCH Исправлен тип передаваемого параметра institute_ids при выполнении поставленной задачи.
- [EDUSCHL-21761](https://jira.bars.group/browse/EDUSCHL-21761)
PATCH Исправлена ошибка проставления подэтапа.
## 3.0.1 - 2024-04-03
Убрано окружение кавычками пустых необязательных полей.
### Изменено
- [EDUCLLG-8325](https://jira.bars.group/browse/EDUCLLG-8325)
PATCH Убрано окружение кавычками пустых необязательных полей.
## 3.0.0 - 2024-04-02
Расширены возможности кастомизации поведения метода `BaseExportDataFunctionHelper.prepare_record`.
### Добавлено
- [EDUCLLG-8325](https://jira.bars.group/browse/EDUCLLG-8325)
MAJOR Добавлена возможность отдельно указывать, как формировать строковое
представление полей в зависимости от их типа и обязательности. **Требуется добавить
параметр `required_fields` в метод `prepare_record` helper-а функции**.
## [2.2.1] - 2024-03-28
Исправление наследования Meta в моделях EduRdmCollectDataCommandProgress и EduRdmExportDataCommandProgress
### Исправлено
- [EDUSCHL-21569](https://jira.bars.group/browse/EDUSCHL-21569)
MINOR Перенести оставшиеся общие асинхронные задачи из ЭШ в пакет edu_rdm_integration
## [2.2.0] - 2024-03-20
Из ЭШ перенесена периодическая задача по сбору и выгрузке данных в РВД.
Также из ЭШ перенесены и переименованы модели:
- CollectDataCommandProgress перименована в EduRdmCollectDataCommandProgress
- ExportDataCommandProgress перименована в EduRdmExportDataCommandProgress
- Добавлены миксины CollectCommandMixin и ExportCommandMixin
### Добавлено
- [EDUSCHL-21569](https://jira.bars.group/browse/EDUSCHL-21569)
MINOR Перенести оставшиеся общие асинхронные задачи из ЭШ в пакет edu_rdm_integration
## [2.1.0] - 2024-03-18
Добавлена поддержка Django 3.1.
### Добавлено
- [EDUSCHL-18052](https://jira.bars.group/browse/EDUSCHL-18052)
MINOR Поднять версию Django до 3.1.14
## [2.0.3] - 2024-03-11
Добавлено сохранение чанка логов в `list` перед его использованием в запускаемых классах в методе `_get_runnable_objects` класса `BaseCollectingDataRunner`.
### Исправлено
- [EDUSCHL-21581](https://jira.bars.group/browse/EDUSCHL-21581)
PATCH Добавлено сохранение чанка логов в `list` перед его использованием в запускаемых классах в методе `_get_runnable_objects` класса `BaseCollectingDataRunner`.
## [2.0.2] - 2024-03-07
Откатил изменения сделанные в версии 2.0.1. Данные доработки приводили к невозможности отправить данные.
### Исправлено
- [EDUSCHL-21503](https://jira.bars.group/browse/EDUSCHL-21503)
PATCH Откатил изменения сделанные в версии 2.0.1
## [2.0.1] - 2024-03-01
Изменена работа метода _calculate_last_finished_entity_export класса BaseExportLatestEntitiesData
### Исправлено
- [EDUSCHL-21503](https://jira.bars.group/browse/EDUSCHL-21503)
PATCH ЭШ. Все модели РВД. Некорректное определение начала периода экспорта командой при сборе
командой collect_latest_models_data
## [2.0.0] - 2024-02-21
Параметр school_ids переименован в institute_ids.
### Изменено
- [EDUSCHL-20485](https://jira.bars.group/browse/EDUSCHL-20485)
MAJOR Произвести переименование параметра school_ids на institute_ids
## [1.0.2] - 2024-03-06
Добавлено разбиение на чанки запроса на обновление поля modified у невыгруженных записей,
при запуске команды `export_latest_entities_data`.
### Исправлено
- [EDUSCHL-21572](https://jira.bars.group/browse/EDUSCHL-21572)
PATCH Добавлено разбиение на чанки запроса на обновление в методе `_update_model_modified_field`
класса `BaseExportLatestEntitiesData`.
## [1.0.1] - 2024-02-20
Исправлено ограничение сбора логов периодом `RDM_TRANSFER_TASK_TIMEDELTA` в `BaseCollectLatestModelsData`
### Исправлено
- [EDUSCHL-21413](https://jira.bars.group/browse/EDUSCHL-21413)
PATCH Исправлено ограничение сбора логов периодом `RDM_TRANSFER_TASK_TIMEDELTA` в `BaseCollectLatestModelsData`
## [1.0.0] - 2024-01-31
Удален дублирующийся клаcc `LogChange` из `collect_data.non_calculated.base.caches`.
### Удалено
- [EDUSCHL-21308](https://jira.bars.group/browse/EDUSCHL-21308)
MAJOR Удален дублирующийся клаcc `LogChange` из `collect_data.non_calculated.base.caches`.
## [0.10.2] - 2024-02-05
Рефакторинг принудительного запуска функций без добавления их в очередь на исполнение.
В класс кеша BaseCollectingExportedDataFunctionCacheStorage расчетных и не расчетных функций добавлен метод _ignore_logs.
Добавлена утилита build_related_model_graph для построения графа связей между моделями.
Добавлен миксин BaseIgnoreLogMixin, для исключения из обработки логов на основании описанных зависимостей.
### Добавлено
- [EDUSCHL-20550](https://jira.bars.group/browse/EDUSCHL-20550)
MINOR В класс кеша BaseCollectingExportedDataFunctionCacheStorage добавлен метод _ignore_logs.
Добавлена утилита build_related_model_graph. Добавлен миксин BaseIgnoreLogMixin.
### Изменено
- [EDUSCHL-20274](https://jira.bars.group/browse/EDUSCHL-20274)
MINOR Рефакторинг принудительного запуска функций без добавления их в очередь на исполнение.
## [0.10.1] - 2024-02-02
Изменение в формировании LogChange.
Не формируется LogChange с пустым fields.
### Изменено
- [EDUSCHL-21251](https://jira.bars.group/browse/EDUSCHL-21251)
PATCH Изменение в формировании LogChange.
## [0.10.0] - 2024-01-19
Добавлена поддержка Django 3.0.
В класс кеша BaseCollectingExportedDataFunctionCacheStorage расчетных и не расчетных функций добавлен метод _ignore_logs.
Добавлена утилита build_related_model_graph для построения графа связей между моделями.
Добавлен миксин BaseIgnoreLogMixin, для исключения из обработки логов на основании описанных зависимостей.
### Добавлено
- [EDUSCHL-18051](https://jira.bars.group/browse/EDUSCHL-18051)
MINOR Поднять версию Django до 3.0.14
- [EDUSCHL-20550](https://jira.bars.group/browse/EDUSCHL-20550)
MINOR В класс кеша BaseCollectingExportedDataFunctionCacheStorage добавлен метод _ignore_logs.
Добавлена утилита build_related_model_graph. Добавлен миксин BaseIgnoreLogMixin.
## [0.9.2] - 2024-01-17
Добавлена явная регистрация периодических асинхронных задач Celery.
Поднятие версии зависимостей пакета celery.
### Изменено
- [EDUSCHL-14950](https://jira.bars.group/browse/EDUSCHL-14950)
PATCH Добавлена явная регистрация периодических асинхронных задач Celery.
## [0.9.1] - 2024-01-11
Добавлен реестр выбора сущностей для сбора и выгрузки данных.
Удалена настройка RDM_TRANSFER_TASK_ENTITIES, вместо перечисления сущностей в конфиге используется реестр и модель
TransferredEntity.
### Добавлено
- [EDUSCHL-21112](https://jira.bars.group/browse/EDUSCHL-21112)
MINOR Добавлен реестр выбора сущностей для сбора и выгрузки данных.
### Удалено
- [EDUSCHL-21112](https://jira.bars.group/browse/EDUSCHL-21112)
MINOR Удалена настройка RDM_TRANSFER_TASK_ENTITIES.
## [0.9.0] - 2023-12-29
Из ЭШ перенесены периодические задачи по сбору статусов загрузки файлов в витрину, а также
по поиску зависших этапов/подэтапов экспорта.
Также из ЭШ перенесены менедж-команды:
- check_upload_status - проверка состояния отправленных данных в витрину,
- collect_lastest_models_data - сбор на основе логов за период с последней сборки до указанной даты,
- export_latest_entities_data - экспорт данных за период с последней сборки до указанной даты.
Типы получаемых из log_change.fields полей соответствуют типам полей из логируемых моделей.
### Добавлено
- [EDUSCHL-21013](https://jira.bars.group/browse/EDUSCHL-21013)
MINOR Перенесена часть асинхронных РВД задач из ЭШ, а также часть менедж-команд
### Изменено
- [EDUSCHL-20793](https://jira.bars.group/browse/EDUSCHL-20793)
MINOR Типы получаемых из log_change.fields полей должны соответствовать типам полей из логируемых моделей
## [0.8.6] - 2023-12-18
В метод _clean_data класса BaseCollectingFunctionTestCase добавлена возможность обрабатывать поля относящиеся к
списковому типу (ArrayField).
### Добавлено
- [EDUSCHL-19606](https://jira.bars.group/browse/EDUSCHL-19606)
PATCH В метод _clean_data класса BaseCollectingFunctionTestCase добавлена возможность обрабатывать поля относящиеся к
списковому типу (ArrayField).
## [0.8.5] - 2023-12-14
Формирование логов вынесено на уровень команды, а не менеджера.
Добавлено формирование логов на этапе экспорта данных.
### Добавлено
- [EDUSCHL-20073](https://jira.bars.group/browse/EDUSCHL-20073)
MINOR Логи при экспорте данных
### Изменено
- [EDUSCHL-20073](https://jira.bars.group/browse/EDUSCHL-20073)
MINOR Формирование логов вынесено на уровень команды, а не менеджера.
## [0.8.4] - 2023-12-13
Создание базовых хэлперов BaseCollectingDataFunctionHelper, BaseCollectingDataRunnerHelper.
Создание нового метода get_filtered_operations в BaseCollectingDataFunctionHelper.
### Добавлено
- [EDUSCHL-21029](https://jira.bars.group/browse/EDUSCHL-21029)
MINOR Создание базовых хэлперов.
## [0.8.3] - 2023-12-13
Исправление ошибок и несоответствий в журнале логов
### Изменено
- [EDUCLLG-8103](https://jira.bars.group/browse/EDUCLLG-8103)
MINOR Исправление ошибок и несоответствий в журнале логов .
## [0.8.2] - 2023-12-11
Поднятие версии m3-db-utils,изменение UploaderClientLogManager
### Изменено
- [EDUCLLG-7736](https://jira.bars.group/browse/EDUCLLG-7736)
MINOR Поднята версии m3-db-utils до 0.3.10, редактирован `UploaderClientLogManager`.
## [0.8.1] - 2023-12-08
Исправлена ошибка внутри EntityEnumRegisterMixin
### Изменено
- [EDUCLLG-8098](https://jira.bars.group/browse/EDUCLLG-8098)
PATCH Добавлена проверка на наличие атрибута main_model_enum.
## [0.8.0] - 2023-12-08
Вынесен функционал просмотра логов РВД из ЭШ.
Удалено перечисление UploadStatusEnum.
Удалена модель UploadStatus статусов загрузки в витрину. Вместо неё добавлена модель-перечисление DataMartRequestStatus.
### Изменено
- [EDUCLLG-7736](https://jira.bars.group/browse/EDUCLLG-7736)
MINOR Вынесен функционал просмотра логов РВД из ЭШ.
### Удалено
- [EDUSCHL-20965](https://jira.bars.group/browse/EDUSCHL-20965)
MINOR - Удалено перечисление UploadStatusEnum. Удалена модель UploadStatus статусов загрузки в витрину.
### Добавлено
- [EDUSCHL-20965](https://jira.bars.group/browse/EDUSCHL-20965)
MINOR - Вместо удаленной модели UploadStatus добавлена модель-перечисление DataMartRequestStatus.
## [0.7.3] - 2023-12-07
Исправлена аннотация в шаблоне managers.py-tpl для функции экспорта.
### Исправлено
- [EDUSCHL-19604](https://jira.bars.group/browse/EDUSCHL-19604)
PATCH Исправлена аннотация в шаблоне managers.py-tpl для функции экспорта.
## [0.7.2] - 2023-12-05
В метод _clean_data класса BaseCollectingFunctionTestCase добавлена возможность обрабатывать поля относящиеся к
временному типу.
Добавление обработки plugins_info при генерации списка данных формирования команд.
### Добавлено
- [EDUSCHL-19507](https://jira.bars.group/browse/EDUSCHL-19507)
PATCH В метод _clean_data класса BaseCollectingFunctionTestCase добавлена возможность обрабатывать поля относящиеся к
временному типу.
- [EDUSCHL-19507](https://jira.bars.group/browse/EDUSCHL-19507)
PATCH Добавление обработки plugins_info при генерации списка данных формирования команд.
## [0.7.1] - 2023-12-02
Доработано получение множества моделей на основе данных plugins_info при работе метода _get_loggable_models.
### Изменено
- [EDUSCHL-19576](https://jira.bars.group/browse/EDUSCHL-20954)
PATCH Доработано получение множества моделей на основе данных plugins_info при работе метода _get_loggable_models.
## [0.7.0] - 2023-12-02
Добавлено формирование логов для последующего скачивания.
Доработаны шаблоны реализации Функций сбора и выгрузки данных.
Написана документация для реализации функционала новой Сущности.
Добавлено получение моделей на основе данных plugins_info при работе метода _get_loggable_models.
### Добавлено
- [EDUSCHL-20072](https://jira.bars.group/browse/EDUSCHL-20072)
MINOR - Реестр сбора и выгрузки. Логи
- [EDUSCHL-20954](https://jira.bars.group/browse/EDUSCHL-20954)
PATCH Добавлена документация для реализации функционала новой Сущности.
### Изменено
- [EDUSCHL-20954](https://jira.bars.group/browse/EDUSCHL-20954)
PATCH Произведена доработка шаблонов Функций сбора и выгрузки данных.
- [EDUSCHL-19576](https://jira.bars.group/browse/EDUSCHL-19576)
PATCH - Добавлено получение моделей на основе данных plugins_info при работе метода _get_loggable_models.
## [0.6.10] - 2023-11-30
При добавлении префикса RDM_EXPORT_ENTITY_ID_PREFIX в классе BaseExportDataFunctionHelper
учтены поля из get_ignore_prefix_key_fields.
### Изменено
- [EDUSCHL-20961](https://jira.bars.group/browse/EDUSCHL-20961)
PATCH - При добавлении префикса RDM_EXPORT_ENTITY_ID_PREFIX в классе BaseExportDataFunctionHelper учтены поля
- из get_ignore_prefix_key_fields.
## [0.6.9] - 2023-11-30
Доработка обработки ответа при отправке файлов в РВД.
Добавлены менедж-команды для загрузки данных и запроса статуса загрузки в РВД с использованием uploader-client.
Добавлена инструкция по реализации тестов РВД.
В BaseCollectingFunctionTestCase добавлен метод создания подэтапов сбора данных.
### Добавлено
- [EDUSCHL-20946](https://jira.bars.group/browse/EDUSCHL-20946)
PATCH - Доработка обработки ответа при отправке файлов в РВД.
- [EDUSCHL-20946](https://jira.bars.group/browse/EDUSCHL-20946)
MINOR - Добавлены менедж-команды для загрузки данных и запроса статуса загрузки в РВД с использованием uploader-client.
- [EDUSCHL-20951](https://jira.bars.group/browse/EDUSCHL-20951)
MINOR - Инструкция по реализации тестов РВД
- [EDUSCHL-20951](https://jira.bars.group/browse/EDUSCHL-20951)
MINOR - Добавлен метод создания подэтапов сбора данных
## [0.6.8] - 2023-11-24
Скорректировано описание сущности РВД TELECOM.
Рефакторинг обновления полей modified у невыгруженных записей при работе экспорта сущностей.
Временное решение обеспечения совместимости регистрации моделей и сущностей старого и нового подхода.
Добавлена возможность отправки запросов в РВД через Proxy API uploader_client.
Изменено формирование логов для последующей обработки.
### Добавлено
- [EDUSCHL-20854](https://jira.bars.group/browse/EDUSCHL-20854)
MINOR - Добавлена возможность отправки запросов через Proxy API.
### Изменено
- [EDUSCHL-20808](https://jira.bars.group/browse/EDUSCHL-20808)
MINOR - При сборе модели командой collect_latest_models_data сжигается память
### Исправлено
- [EDUSCHL-20884](https://jira.bars.group/browse/EDUSCHL-20884)
PATCH - Изменено название поля rank на rank_contact в сущности РВД TelecomEntity.
- [EDUSCHL-20711](https://jira.bars.group/browse/EDUSCHL-20711)
PATCH - Доработан метод BaseExportLatestEntitiesData._update_model_modified_field.
- [EDUSCHL-20858](https://jira.bars.group/browse/EDUSCHL-20858)
PATCH - Временное решение обеспечения совместимости регистрации моделей и сущностей старого и нового подхода.
## [0.6.7] - 2023-11-01
Добавлен миксин EntityEnumRegisterMixin для регистрации сущностей в RegionalDataMartEntityEnum.
Миксин ModelEnumRegisterMixin для регистрации моделей в RegionalDataMartModelEnum.
Добавлены методы для запуска регистрации моделей и сущностей.
### Добавлено
- [EDUCLLG-7632](https://jira.bars.group/browse/EDUCLLG-7632)
PATCH - Добавлен функционал регистрации моделей и сущностей в моделях-перечислениях.
## [0.6.6] - 2023-10-16
Добавлен базовый класс для тестирования Функций сбора, добавлена явная зависимость Django.
### Добавлено
- [EDUSCHL-20684](https://jira.bars.group/browse/EDUSCHL-20684)
PATCH - Базовый класс для тестирования Функций сбора;
- [EDUSCHL-20684](https://jira.bars.group/browse/EDUSCHL-20684)
PATCH - Добавлена зависимость Django.
## [0.6.5] - 2023-10-11
Получение метода генерации логов вынесено в отдельный метод для избавления от необходимости хранить все методы в одном классе.
### Исправлено
- [EDUCLLG-7634](https://jira.bars.group/browse/EDUCLLG-7634)
PATCH - Получение метода генерации логов вынесено в отдельный метод для избавления от необходимости хранить все методы в одном классе;
- [EDUSCHL-20571](https://jira.bars.group/browse/EDUSCHL-20571)
PATCH - При сборе актуальных данных моделей отслеживаются уже запущенные сборы и новый сбор по модели не запускается.
- [EDUSCHL-20571](https://jira.bars.group/browse/EDUSCHL-20571)
PATCH - Указание назначения полей модели-перечисления сущностей RegionalDataMartEntityEnum;
- [EDUSCHL-20571](https://jira.bars.group/browse/EDUSCHL-20571)
PATCH - Добавление возможности получения значений модели-перечисления RegionalDataMartEntityEnum моделей РВД для указанных сущностей.
## [0.6.4] - 2023-10-09
Исправлена ошибка сборки, из-за которой файлы шаблонов *.py-tpl не попадали в пакет.
### Добавлено
- [EDUCLLG-7634](https://jira.bars.group/browse/EDUCLLG-7634)
PATCH - Добавлено включение шаблонов *.py-tpl в пакет при сборке.
## [0.6.3] - 2023-10-05
Доработка модели AbstractCollectDataCommandProgress и класса BaseFirstCollectModelsDataCommandsGenerator.
### Добавлено
- [EDUSCHL-20350](https://jira.bars.group/browse/EDUSCHL-20350)
PATCH - Добавлено формирование id генерации для команд в классе BaseFirstCollectModelsDataCommandsGenerator.
- Добавлены поля created, generation_id и institute_ids в модель AbstractCollectDataCommandProgress.
## [0.6.2] - 2023-10-04
### Изменено
- [EDUCLLG-7942](https://jira.bars.group/browse/EDUCLLG-7942)
PATCH Доработка сборки документации.
## [0.6.1] - 2023-10-02
Дополнение поведения BaseExportDataFunctionHelper.
### Изменено
- [EDUSCHL-20535](https://jira.bars.group/browse/EDUSCHL-20535)
PATCH - В логике BaseExportDataFunctionHelper добавлена очистка строковых полей от управляющих символов.
## [0.6.0] - 2023-09-29
Добавлена функция set_failed_status_suspended_exporting_data_stages для определения и перевода зависших этапов/подэтапов экспорта в статус (FAILED).
Добавлена функция set_failed_status_suspended_collecting_data_stages для определения и перевода зависших этапов/подэтапов сбора в статус (FAILED).
### Добавлено
- [EDUSCHL-20487](https://jira.bars.group/browse/EDUSCHL-20487)
MINOR Добавлена функция ```set_failed_status_suspended_exporting_data_stages```.
- [EDUSCHL-20487](https://jira.bars.group/browse/EDUSCHL-20487)
MINOR Добавлена функция ```set_failed_status_suspended_collecting_data_stages```.
## [0.5.9] - 2023-09-25
Повышена версия wheel
### Изменено
- [EDUCLLG-7939](https://jira.bars.group/browse/EDUCLLG-7939)
PATCH - Повышена версия wheel
## [0.5.8] - 2023-09-13
Исправлена ошибка добавления в описание асинхронной задачи списка выгруженных сущностей
BaseExportLatestEntitiesData._set_description_to_async_task.
### Исправлено
- [EDUSCHL-20334](https://jira.bars.group/browse/EDUSCHL-20334)
PATCH - Баг с обновлением поля description в BaseExportLatestEntitiesData._set_description_to_async_task.
## [0.5.7] - 2023-09-12
Баг фикс и дополнение поведения BaseExportLatestEntitiesData.
### Изменено
- [EDUSCHL-20435](https://jira.bars.group/browse/EDUSCHL-20435)
PATCH - BaseExportLatestEntitiesData теперь поддерживает выгрузку ни разу невыгруженных сущностей.
### Исправлено
- [EDUSCHL-20435](https://jira.bars.group/browse/EDUSCHL-20435)
PATCH - Баг с условием в фильтре в BaseExportLatestEntitiesData._update_model_modified_field.
## [0.5.6] - 2023-09-06
Доработаны классы BaseExportLatestEntitiesData и BaseExportEntitiesData.
### Исправлено
- [EDUSCHL-20435](https://jira.bars.group/browse/EDUSCHL-20435)
PATCH - Исправлено нахождение левой границы в классе ExportLatestEntitiesData;
- Добавлена проверка на наличие запущенных или готовых к выгрузке сущностей;
- Добавлен параметр update_modified, который обновляет поле modified у собранных моделей,
чтобы выгрузить невыгруженные записи.
## [0.5.5] - 2023-09-04
Добавление pip в зависимости сборки пакета.
### Добавлено
- [EDUSCHL-19919](https://jira.bars.group/browse/EDUSCHL-19919)
PATCH Добавление pip в зависимости сборки пакета.
## [0.5.4] - 2023-09-04
split_by_days_count переименовал в split_by_quantity.
### Изменено
- [EDUSCHL-20302](https://jira.bars.group/browse/EDUSCHL-20302)
PATCH split_by_days_count переименовал в split_by_quantity.
## [0.5.3] - 2023-09-03
Изменены параметры формирования подпериодов в generate_first_collect_models_data_script.
### Изменено
- [EDUSCHL-20302](https://jira.bars.group/browse/EDUSCHL-20302)
PATCH Изменены параметры формирования подпериодов в generate_first_collect_models_data_script.
## [0.5.2] - 2023-08-28
Замена базового класса функций.
### Изменено
- [EDUSCHL-20344](https://jira.bars.group/browse/EDUSCHL-20344)
PATCH Замена базового класса функций на WebEduLazySavingPredefinedQueueFunction.
## [0.5.1] - 2023-08-22
Для BaseFirstCollectModelsDataCommandsGenerator добавлено условие - если не заполнен creating_trigger_models,
то словарь с данными для команды не передается.
### Исправлено
- [EDUSCHL-20227](https://jira.bars.group/browse/EDUSCHL-20227)
PATCH Если у сущности не заполнен creating_trigger_models, то в генераторе BaseFirstCollectModelsDataCommandsGenerator
не формируется словарь с параметрами для команды.
- [EDUSCHL-20229](https://jira.bars.group/browse/EDUSCHL-20229)
PATCH Если у сущности не заполнен creating_trigger_models, то в генераторе BaseFirstCollectModelsDataCommandsGenerator
не формируется словарь с параметрами для команды.
## [0.5.0] - 2023-08-19
Дополнительная функциональность WebEduEntityValueCache была перенесена в EntityCache в function_tools.
### Удалено
- [EDUSCHL-20277](https://jira.bars.group/browse/EDUSCHL-20277)
MINOR Удален WebEduEntityValueCache.
- [EDUSCHL-20277](https://jira.bars.group/browse/EDUSCHL-20277)
MINOR Удален WebEduEntityCacheExtended.
## [0.4.7] - 2023-08-17
Изменено формирование очередности сбора/экспорта моделей/сущностей. Вместо отдельных перечислений используется существующее поле `order_number` модели-перечисления `TitledModelEnum`. В случае, когда `order_number` не указан, т.е. будет использоваться значение по умолчанию `DEFAULT_ORDER_NUMBER`, модель/сущность будет исключена из сбора/экспорта.
### Изменено
- [EDUSCHL-19164](https://jira.bars.group/browse/EDUSCHL-19164)
MINOR Изменено формирование очередности сбора/экспорта моделей/сущностей.
## [0.4.6] - 2023-08-16
Удален лишний вызов метода _prepare_logs
### Исправлено
- [EDUSCHL-19991](https://jira.bars.group/browse/EDUSCHL-19991)
PATCH удален лишний вызов метода ```_prepare_logs``` в методе ```__init__``` класса ```BaseCollectingCalculatedExportedDataFunctionCacheStorage```
## [0.4.5] - 2023-08-09
Объединение обрабатываемых логов относящихся к одному объекту
### Добавлено
- [EDUSCHL-19991](https://jira.bars.group/browse/EDUSCHL-19991)
PATCH Новый миксин ```ReformatLogsMixin``` , новое поле is_merge_logs и новый метод _merge_logs у класса ```BaseCollectingExportedDataFunctionCacheStorage```
## [0.4.4] - 2023-08-12
Исправлен баг с timedelta
### Исправлено
- [EDUSCHL-20200](https://jira.bars.group/browse/EDUSCHL-20200)
PATCH Исправлен баг с timedelta.
## [0.4.3] - 2023-08-12
Исправлен баг с timedelta
### Исправлено
- [EDUSCHL-20200](https://jira.bars.group/browse/EDUSCHL-20200)
PATCH Исправлен баг с timedelta.
## [0.4.2] - 2023-08-11
Исправление ошибки учета миллисекунд, при генерации скриптов сбора и выгрузки данных. В текущий момент chunk_size все
равно работает некорректно. Это связано с тем, что при обнулении миллисекунд за одной записью выборки может скрываться
большое количество, например, которые были созданы или обновлены скриптами. Проблему необходимо решить в будущем, но
текущего решения хватает для эксплуатации.
В выборках моделей и логов не должна входить правая граница периода выборки.
### Исправлено
- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)
PATCH Исправлена ошибка учета миллисекунд в выборках при генерации скриптов с командами для сбора и выгрузки данных.
- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)
PATCH В выборках моделей и логов не должна входить правая граница периода выборки.
## [0.4.1] - 2023-08-09
Доработки для реализации принудительного выполнения функций экспорта данных сущностей.
### Добавлено
- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)
PATCH Доработки для реализации принудительного выполнения функций экспорта данных сущностей.
## [0.4.0] - 2023-08-09
Реализованы общие классы для команд сбора/экспорта.
### Добавлено
- [EDUSCHL-20200](https://jira.bars.group/browse/EDUSCHL-20200)
MINOR Добавлены общие модели, методы и классы.
### Изменено
- [EDUSCHL-20200](https://jira.bars.group/browse/EDUSCHL-20200)
MINOR Реализованы общие классы для команд сбора/экспорта.
## [0.3.3] - 2023-08-08
Добавлено принудительное выполнение функций в ранере для экономии памяти.
### Исправлено
- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)
PATCH Добавлено принудительное выполнение функций в ранере для экономии памяти.
## [0.3.2] - 2023-08-08
Откат к спискам необработанных логов. Исправлена ошибка бесконечного создания чанков логов.
### Исправлено
- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)
PATCH Откат к спискам необработанных логов.
## [0.3.1] - 2023-08-08
Организована передача необработанных логов в виде генератора.
### Изменено
- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)
PATCH Организована передача необработанных логов в виде генератора.
## [0.3.0] - 2023-08-06
Добавление функциональности для отложенного заполнения кешей. Заполнение производится перед началом работы запускаемого
объекта.
### Добавлено
- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)
PATCH Добавлено отложенное заполнение кешей хелперов функций.
- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)
MINOR Добавлено проставление подэтапа выгрузки данных у записей моделей.
## [0.2.2] - 2023-08-06
Для API РВД добавлена поддержка параметра типа операции для загрузки данных.
### Добавлено
- [EDUSCHL-19920](https://jira.bars.group/browse/EDUSCHL-19920)
PATCH Для API РВД добавлена поддержка параметра типа операции для загрузки данных.
## [0.2.1] - 2023-08-05
Восстановление сборки пакета после ухода с poetry.
### Исправлено
- [EDUSCHL-19919](https://jira.bars.group/browse/EDUSCHL-19919)
PATCH Восстановление сборки пакета после миграции с poetry.
## [0.2.0] - 2023-08-04
Перенос стратегий формирования Функций используемых в генерации исходников.
### Добавлено
- [EDUSCHL-19919](https://jira.bars.group/browse/EDUSCHL-19919)
MINOR Перенесены стратегии создания Функций из ЭШ.
## [0.1.4] - 2023-08-03
Возвращение ранее удаленных зависимостей миграции
### Изменено
- [EDUSCHL-20209](https://jira.bars.group/browse/EDUSCHL-20209)
PATCH Возвращение зависимостей миграции.
- [EDUSCHL-20209](https://jira.bars.group/browse/EDUSCHL-20209)
PATCH Доработки по формированию документации.
- [EDUSCHL-20200](https://jira.bars.group/browse/EDUSCHL-20200)
Закреплены версии зависимостей, добавлена ссылка на uploader-client
## [0.1.3] - 2023-07-24
Для раскатки миграций на ЭШ, пришлось закомментировать зависимости в initial-миграции.
### Изменено
- [EDUSCHL-19919](https://jira.bars.group/browse/EDUSCHL-19919)
PATCH Вынести общую часть для работы с РВД из ЭШ для использования в ЭК.
## [0.1.2] - 2023-07-23
Внесены изменения в кодовую базу после переноса механизма логирования из ЭШ в educommon.
### Изменено
- [EDUSCHL-19919](https://jira.bars.group/browse/EDUSCHL-19919)
PATCH Вынести общую часть для работы с РВД из ЭШ для использования в ЭК.
## [0.1.0] - 2023-07-18
Внесены изменения в кодовую базу после переноса механизма логирования из ЭШ в educommon.
### Добавлено
- [EDUSCHL-19919](https://jira.bars.group/browse/EDUSCHL-19919)
MINOR Перенос базовых компонентов интеграции с РВД из ЭШ.
Raw data
{
"_id": null,
"home_page": null,
"name": "edu-rdm-integration",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": null,
"author": "BARS Group",
"author_email": "bars@bars.group",
"download_url": "https://files.pythonhosted.org/packages/28/c1/ac6fd95902bb4007f9cbc61d4e1aeb6b94dfa5e81d8ac08c8d90273ce178/edu-rdm-integration-3.4.5.tar.gz",
"platform": "Any",
"description": "# \u041f\u0440\u043e\u0435\u043a\u0442 \"\u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 \u0420\u0435\u0433\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0432\u0438\u0442\u0440\u0438\u043d\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0420\u0412\u0414)\"\n\n\u0414\u043b\u044f \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 \u0420\u0435\u0433\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0432\u0438\u0442\u0440\u0438\u043d\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 \u0431\u044b\u043b \u0432\u044b\u0434\u0435\u043b\u0435\u043d \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u043f\u0430\u043a\u0435\u0442 \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0435\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0432 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \n\u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430\u0445. \n\n\u041d\u0430 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u042d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u0430\u044f \u0448\u043a\u043e\u043b\u0430 (\u042d\u0428) \u0438 \u042d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u044b\u0439 \u043a\u043e\u043b\u043b\u0435\u0434\u0436 (\u042d\u041a).\n\n## \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u0438\n\n\u0421\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u041c\u0438\u043d\u0446\u0438\u0444\u0440\u044b \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f (\u0415\u0424\u0422\u0422) \u0441 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c\u0438 \u043f\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0443 \u0438 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0443 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445. \n\n\u0412\u044b\u0431\u0440\u0430\u043d\u0430 \u043c\u043e\u0434\u0435\u043b\u044c \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0434\u043b\u0435\u0436\u0430\u0442 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0435. \u041f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430,\n\u043c\u043e\u0436\u043d\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0435 \u0445\u0440\u0430\u043d\u044f\u0449\u0438\u0445\u0441\u044f \u0432 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0435 \u0438\u0445 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435. \u0423\u043f\u0440\u043e\u0449\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \n\u043f\u043e\u0438\u0441\u043a\u0430 \u043e\u0448\u0438\u0431\u043e\u043a \u0432 \u0434\u0430\u043d\u043d\u044b\u0445, \u0442.\u043a. \u043c\u043e\u0436\u043d\u043e \u044f\u0432\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c, \u0432 \u043a\u0430\u043a\u0438\u0445 \u0437\u0430\u043f\u0438\u0441\u044f\u0445 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u043e\u0448\u0438\u0431\u043a\u0438 \u0438 \u0434\u0430\u043b\u0435\u0435 \u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \n\u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430\u0445 \u0438\u043b\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b \u043f\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u0434\u0430\u043d\u043d\u044b\u0445.\n\n## \u041f\u0440\u0438\u043d\u0446\u0438\u043f \u0440\u0430\u0431\u043e\u0442\u044b\n\n\u0412\u0435\u0441\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d \u043d\u0430 \u0441\u0431\u043e\u0440 \u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0443 \u0434\u0430\u043d\u043d\u044b\u0445. \u0412\u044b\u0434\u0435\u043b\u044f\u044e\u0442\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u043e\u043d\u044f\u0442\u0438\u044f:\n\n\u041c\u043e\u0434\u0435\u043b\u044c \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430\n: Django-\u043c\u043e\u0434\u0435\u043b\u044c \u043d\u0430\u0445\u043e\u0434\u044f\u0449\u0430\u044f\u0441\u044f \u0432 \u0441\u0430\u043c\u043e\u043c \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0435. \u041f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043d\u0435\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043d\u0430\u043a\u0430\u043f\u043b\u0438\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445;\n\n\u041c\u043e\u0434\u0435\u043b\u044c \u0420\u0412\u0414\n: Django-\u043c\u043e\u0434\u0435\u043b\u044c \u043d\u0430\u0445\u043e\u0434\u044f\u0449\u0430\u044f\u0441\u044f \u0432 \u043f\u0430\u043a\u0435\u0442\u0435 \u0420\u0412\u0414 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430. \u0418\u0437 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0420\u0412\u0414 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u0445\u0435\u043c\u0430 \u0411\u0414, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0430\u044f \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \n\u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0439 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u043c \u0432\u0438\u0434\u0435;\n\n\u0421\u0443\u0449\u043d\u043e\u0441\u0442\u044c \u0420\u0412\u0414\n: \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0420\u0412\u0414 \u0432 \u0432\u0438\u0434\u0435 dataclass-\u0430. \u0425\u0440\u0430\u043d\u0438\u0442 \u0432 \u0441\u0435\u0431\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043f\u0435\u0440\u0432\u0438\u0447\u043d\u044b\u0445, \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u043a\u043b\u044e\u0447\u0435\u0439, \n\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0438 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u043f\u043e\u043b\u0435\u0439.\n\n\u041d\u0430 \u044d\u0442\u0430\u043f\u0435 \u0441\u0431\u043e\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0420\u0412\u0414 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432. \u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0442\u0430\u043a \n\u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0435 \u0440\u0430\u0441\u0447\u0435\u0442\u043d\u044b\u0435 \u043c\u043e\u0434\u0435\u043b\u0438, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0435 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0441\u0431\u043e\u0440\u0430.\n\n\u0421\u0442\u043e\u0438\u0442 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438 \u0420\u0412\u0414 \u043c\u043e\u0433\u0443\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u0432 \u0441\u0435\u0431\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0420\u0412\u0414.\n\n## \u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044e\n\n\u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f Python >=3.7. \u0422\u0430\u043a \u0436\u0435 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044f\u0445 \u0435\u0441\u0442\u044c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u043f\u0430\u043a\u0435\u0442\u044b:\n\n- educommon;\n- function-tools;\n- m3-db-utils;\n- uploader-client.\n\n\u0412\u0435\u0440\u0441\u0438\u0438 \u0432\u0441\u0435\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0443\u0442\u043e\u0447\u043d\u0435\u043d\u044b \u0432 \u0444\u0430\u0439\u043b\u0430\u0445 \u0441 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044f\u043c\u0438.\n\n## \u0420\u0430\u0437\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u0435\n\n\u041f\u0435\u0440\u0435\u0434 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u0435\u043c \u043f\u0430\u043a\u0435\u0442\u0430 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e:\n\n- \u0412 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u0437 educommon;\n- \u0412 \u043f\u0440\u043e\u0435\u043a\u0442 \u0432\u043d\u0435\u0434\u0440\u0435\u043d function-tools;\n- \u0412 \u043f\u0440\u043e\u0435\u043a\u0442 \u0432\u043d\u0435\u0434\u0440\u0435\u043d m3-db-utils;\n- \u0412 \u043f\u0440\u043e\u0435\u043a\u0442 \u0432\u043d\u0435\u0434\u0440\u0435\u043d uploader-client. \n\n## \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430\n\n\u0412 \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u044b \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a, \u0433\u0434\u0435-\u0442\u043e \u0447\u0435\u0440\u0435\u0437 \u043f\u043b\u0430\u0433\u0438\u043d\u044b, \u0433\u0434\u0435-\u0442\u043e \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0432 settings.py.\n\u0411\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d \u043f\u043e\u0434\u0445\u043e\u0434 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0432 settings.py \u0438 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435.\n\n\u0414\u043b\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0440\u043e\u0434\u0435\u043b\u0430\u0442\u044c \u0440\u044f\u0434 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439:\n\n- \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0432 settings.py:\n ```\n PROJECT_DEFAULT_CONFIG.update({\n # \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0420\u0412\u0414\n ('rdm_general', 'EXPORT_ENTITY_ID_PREFIX'): '', # \u0414\u0435\u0444\u043e\u043b\u0442\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043d\u0443\u0436\u043d\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043d\u0430 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u0435\n ('rdm_general', 'COLLECT_CHUNK_SIZE'): 500,\n ('rdm_general', 'EXPORT_CHUNK_SIZE'): 500,\n ('rdm_transfer_task', 'MINUTE'): '0',\n ('rdm_transfer_task', 'HOUR'): '*/4',\n ('rdm_transfer_task', 'DAY_OF_WEEK'): '*',\n ('rdm_transfer_task', 'LOCK_EXPIRE_SECONDS'): 21600,\n ('rdm_transfer_task', 'TIMEDELTA'): 3600,\n ('rdm_transfer_task', 'ENTITIES'): '',\n ('rdm_upload_status_task', 'MINUTE'): '*/30',\n ('rdm_upload_status_task', 'HOUR'): '*',\n ('rdm_upload_status_task', 'DAY_OF_WEEK'): '*',\n ('rdm_upload_status_task', 'LOCK_EXPIRE_SECONDS'): 7200,\n ('uploader_client', 'URL'): 'http://localhost:8090',\n ('uploader_client', 'DATAMART_NAME'): '',\n ('uploader_client', 'REQUEST_RETRIES'): 10,\n ('uploader_client', 'REQUEST_TIMEOUT'): 10,\n ('uploader_client', 'ENABLE_REQUEST_EMULATION'): False,\n })\n ```\n- \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0438\u0437 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 \u0432 settings.py:\n\n ```\n # \u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0441 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438\n UPLOADS = 'uploads'\n \n # =============================================================================\n # \u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 \u0420\u0435\u0433\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0432\u0438\u0442\u0440\u0438\u043d\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0420\u0412\u0414)\n # =============================================================================\n \n # \u041f\u0440\u0435\u0444\u0438\u043a\u0441 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u043e\u0432 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430\n RDM_EXPORT_ENTITY_ID_PREFIX = conf.get('rdm_general', 'EXPORT_ENTITY_ID_PREFIX') \n \n # \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u042d\u0428 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0437\u0430 \u043e\u0434\u043d\u0443 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u044e \u0441\u0431\u043e\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445\n RDM_COLLECT_CHUNK_SIZE = conf.get_int('rdm_general', 'COLLECT_CHUNK_SIZE')\n \n # \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0437\u0430 \u043e\u0434\u043d\u0443 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u044e \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u0434\u0430\u043d\u043d\u044b\u0445\n RDM_EXPORT_CHUNK_SIZE = conf.get_int('rdm_general', 'EXPORT_CHUNK_SIZE')\n \n # \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043d\u0435 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0437\u0430 \u043e\u0434\u043d\u0443 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u044e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044f modified\n RDM_UPDATE_NON_EXPORTED_CHUNK_SIZE = conf.get_int('rdm_general', 'UPDATE_NON_EXPORTED_CHUNK_SIZE')\n \n # \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445:\n RDM_TRANSFER_TASK_MINUTE = conf.get('rdm_transfer_task', 'MINUTE')\n RDM_TRANSFER_TASK_HOUR = conf.get('rdm_transfer_task', 'HOUR')\n RDM_TRANSFER_TASK_DAY_OF_WEEK = conf.get('rdm_transfer_task', 'DAY_OF_WEEK')\n RDM_TRANSFER_TASK_EXPIRE_SECOND = conf.get('rdm_transfer_task', 'LOCK_EXPIRE_SECONDS')\n\n # \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0441\u0442\u0430\u0442\u0443\u0441\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0432\u0438\u0442\u0440\u0438\u043d\u0443:\n RDM_UPLOAD_STATUS_TASK_MINUTE = conf.get('rdm_upload_status_task', 'MINUTE')\n RDM_UPLOAD_STATUS_TASK_HOUR = conf.get('rdm_upload_status_task', 'HOUR')\n RDM_UPLOAD_STATUS_TASK_DAY_OF_WEEK = conf.get('rdm_upload_status_task', 'DAY_OF_WEEK')\n RDM_UPLOAD_STATUS_TASK_EXPIRE_SECOND = conf.get('rdm_upload_status_task', 'LOCK_EXPIRE_SECONDS')\n \n # \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u043f\u043e\u0438\u0441\u043a\u0430 \u0437\u0430\u0432\u0438\u0441\u0448\u0438\u0445 \u044d\u0442\u0430\u043f\u043e\u0432 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430:\n RDM_CHECK_SUSPEND_TASK_MINUTE = conf.get('rdm_check_suspend_task', 'MINUTE')\n RDM_CHECK_SUSPEND_TASK_HOUR = conf.get('rdm_check_suspend_task', 'HOUR')\n RDM_CHECK_SUSPEND_TASK_DAY_OF_WEEK = conf.get('rdm_check_suspend_task', 'DAY_OF_WEEK')\n RDM_CHECK_SUSPEND_TASK_EXPIRE_SECOND = conf.get('rdm_check_suspend_task', 'LOCK_EXPIRE_SECONDS')\n RDM_CHECK_SUSPEND_TASK_TIMEDELTA = conf.get_int('rdm_check_suspend_task', 'TIMEDELTA')\n \n # \u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0420\u0435\u0433\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u0443\u044e \u0432\u0438\u0442\u0440\u0438\u043d\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0420\u0412\u0414)\n # \u0410\u0434\u0440\u0435\u0441 \u0432\u0438\u0442\u0440\u0438\u043d\u044b (schema://host:port)\n RDM_UPLOADER_CLIENT_URL = conf.get('uploader_client', 'URL')\n \n # \u041c\u043d\u0435\u043c\u043e\u043d\u0438\u043a\u0430 \u0412\u0438\u0442\u0440\u0438\u043d\u044b\n RDM_UPLOADER_CLIENT_DATAMART_NAME = conf.get('uploader_client', 'DATAMART_NAME')\n \n # \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u044b\u0445 \u043f\u043e\u043f\u044b\u0442\u043e\u043a \u0437\u0430\u043f\u0440\u043e\u0441\u0430\n RDM_UPLOADER_CLIENT_REQUEST_RETRIES = conf.get_int('uploader_client', 'REQUEST_RETRIES')\n \n # \u0422\u0430\u0439\u043c\u0430\u0443\u0442 \u0437\u0430\u043f\u0440\u043e\u0441\u0430, \u0441\u0435\u043a\n RDM_UPLOADER_CLIENT_REQUEST_TIMEOUT = conf.get_int('uploader_client', 'REQUEST_TIMEOUT')\n \n # \u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044e \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432\n RDM_UPLOADER_CLIENT_ENABLE_REQUEST_EMULATION = conf.get_bool('uploader_client', 'ENABLE_REQUEST_EMULATION')\n \n ```\n \n \u041f\u0435\u0440\u0435\u0447\u0435\u043d\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0432 settings.py \u0443\u043a\u0430\u0437\u0430\u043d \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u043d\u0438\u0436\u0435.\n \n | \u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432 settings | \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 | \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e |\n |----------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------|-------------------------|\n | UPLOADS | \u041e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u0432 MEDIA, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0437\u0434\u0430\u043d\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f edu_rdm_integration \u0434\u043b\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u0434\u043b\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0439 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 | 500 |\n | RDM_COLLECT_CHUNK_SIZE | \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0437\u0430 \u043e\u0434\u043d\u0443 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u044e \u0441\u0431\u043e\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 | 500 |\n | RDM_EXPORT_CHUNK_SIZE | \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0437\u0430 \u043e\u0434\u043d\u0443 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u044e \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 | 500 |\n | RDM_UPDATE_NON_EXPORTED_CHUNK_SIZE | # \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043d\u0435 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0437\u0430 \u043e\u0434\u043d\u0443 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u044e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044f modified | 5000 |\n | RDM_UPLOADER_CLIENT_URL | \u0410\u0434\u0440\u0435\u0441 \u0432\u0438\u0442\u0440\u0438\u043d\u044b (schema://host:port) | 'http://localhost:8090' |\n | RDM_UPLOADER_CLIENT_DATAMART_NAME | \u041c\u043d\u0435\u043c\u043e\u043d\u0438\u043a\u0430 \u0412\u0438\u0442\u0440\u0438\u043d\u044b | 'test' |\n | RDM_UPLOADER_CLIENT_REQUEST_RETRIES | \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u044b\u0445 \u043f\u043e\u043f\u044b\u0442\u043e\u043a \u0437\u0430\u043f\u0440\u043e\u0441\u0430 | 10 |\n | RDM_UPLOADER_CLIENT_REQUEST_TIMEOUT | \u0422\u0430\u0439\u043c\u0430\u0443\u0442 \u0437\u0430\u043f\u0440\u043e\u0441\u0430, \u0441\u0435\u043a | 10 |\n | RDM_UPLOADER_CLIENT_ENABLE_REQUEST_EMULATION | \u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044e \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 | True |\n | RDM_TRANSFER_TASK_MINUTE | \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445. \u041c\u0438\u043d\u0443\u0442\u0430 | '0' |\n | RDM_TRANSFER_TASK_HOUR | \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445. \u0427\u0430\u0441 | '*/4' |\n | RDM_TRANSFER_TASK_DAY_OF_WEEK | \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445. \u0414\u0435\u043d\u044c \u043d\u0435\u0434\u0435\u043b\u0438 | '*' |\n | RDM_TRANSFER_TASK_LOCK_EXPIRE_SECONDS | \u0412\u0440\u0435\u043c\u044f \u043f\u043e \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e, \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0441\u043d\u044f\u0442\u0430 (\u0432 \u0441\u0435\u043a\u0443\u043d\u0430\u0434\u0445) | 21600 |\n | RDM_UPLOAD_STATUS_TASK_MINUTE | \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0441\u0442\u0430\u0442\u0443\u0441\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0432\u0438\u0442\u0440\u0438\u043d\u0443. \u041c\u0438\u043d\u0443\u0442\u0430 | '*/30' |\n | RDM_UPLOAD_STATUS_TASK_HOUR | \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0441\u0442\u0430\u0442\u0443\u0441\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0432\u0438\u0442\u0440\u0438\u043d\u0443. \u0427\u0430\u0441 | '*' |\n | RDM_UPLOAD_STATUS_TASK_DAY_OF_WEEK | \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0441\u0442\u0430\u0442\u0443\u0441\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0432\u0438\u0442\u0440\u0438\u043d\u0443. \u0414\u0435\u043d\u044c \u043d\u0435\u0434\u0435\u043b\u0438 | '*' |\n | RDM_UPLOAD_STATUS_TASK_LOCK_EXPIRE_SECONDS | \u0412\u0440\u0435\u043c\u044f \u043f\u043e \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e, \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0441\u043d\u044f\u0442\u0430 (\u0432 \u0441\u0435\u043a\u0443\u043d\u0430\u0434\u0445) | 3600 |\n | RDM_CHECK_SUSPEND_TASK_STAGE_TIMEOUT | \u0414\u0435\u043b\u044c\u0442\u0430 \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0437\u0430\u0432\u0438\u0441\u0448\u0435\u0433\u043e \u043f\u043e\u0434\u044d\u0442\u0430\u043f\u0430. \u041c\u0438\u043d\u0443\u0442\u0430 | 120 |\n \n\n\n- \u0412 \u0434\u0435\u0444\u043e\u043b\u0442\u043d\u044b\u0439 \u043a\u043e\u043d\u0444\u0438\u0433 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c:\n\n ```\n # \u041e\u0431\u0449\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 \u0420\u0412\u0414\n [rmd_general]\n # \u041f\u0440\u0435\u0444\u0438\u043a\u0441 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u043e\u0432 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430. \u0423\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0432 settings.py \u0438 \u043d\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \n # \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0434\u043b\u044f \u044d\u043a\u0441\u0442\u0440\u0435\u043d\u043d\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u0435\u0432.\n # EXPORT_ENTITY_ID_PREFIX = \n # \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0437\u0430 \u043e\u0434\u043d\u0443 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u044e \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u0434\u0430\u043d\u043d\u044b\u0445\n EXPORT_CHUNK_SIZE = 500\n # \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u042d\u0428 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0437\u0430 \u043e\u0434\u043d\u0443 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u044e \u0441\u0431\u043e\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445\n COLLECT_CHUNK_SIZE = 500\n # \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043d\u0435 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0437\u0430 \u043e\u0434\u043d\u0443 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u044e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044f modified\n UPDATE_NON_EXPORTED_CHUNK_SIZE = 5_000\n \n # \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445\n [rdm_transfer_task]\n MINUTE=*/2\n HOUR=*\n DAY_OF_WEEK=*\n LOCK_EXPIRE_SECONDS=21600\n # \u0414\u0435\u043b\u044c\u0442\u0430 \u043c\u0435\u0436\u0434\u0443 \u043f\u0440\u043e\u0448\u043b\u044b\u043c \u0438 \u0442\u0435\u043a\u0443\u0449\u0438\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c, \u0441\u0435\u043a\n TIMEDELTA=120\n # \u0421\u0443\u0449\u043d\u043e\u0441\u0442\u0438, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0441\u0431\u043e\u0440 \u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445. \u041f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u044f\u044e\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u0437\u0430\u043f\u044f\u0442\u0443\u044e \u0431\u0435\u0437 \u043f\u0440\u043e\u0431\u0435\u043b\u043e\u0432.\n ENTITIES =\n \n # \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0441\u0442\u0430\u0442\u0443\u0441\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0432\u0438\u0442\u0440\u0438\u043d\u0443\n [rdm_upload_status_task]\n MINUTE=*/2\n HOUR=*\n DAY_OF_WEEK=*\n LOCK_EXPIRE_SECONDS=7200\n \n # \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u043f\u043e\u0438\u0441\u043a\u0430 \u0437\u0430\u0432\u0438\u0441\u0448\u0438\u0445 \u044d\u0442\u0430\u043f\u043e\u0432 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430\n [rdm_check_suspend_task]\n MINUTE=*/10\n HOUR=*\n DAY_OF_WEEK=*\n LOCK_EXPIRE_SECONDS=7200\n # \u0414\u0435\u043b\u044c\u0442\u0430 \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0437\u0430\u0432\u0438\u0441\u0448\u0435\u0433\u043e \u043f\u043e\u0434\u044d\u0442\u0430\u043f\u0430, \u043c\u0438\u043d\n STAGE_TIMEOUT=120\n \n [uploader_client]\n # \u0410\u0434\u0440\u0435\u0441 \u0432\u0438\u0442\u0440\u0438\u043d\u044b\n URL = http://localhost:8090\n # \u041c\u043d\u0435\u043c\u043e\u043d\u0438\u043a\u0430 \u0412\u0438\u0442\u0440\u0438\u043d\u044b\n DATAMART_NAME = test\n # \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u044b\u0445 \u043f\u043e\u043f\u044b\u0442\u043e\u043a \u0437\u0430\u043f\u0440\u043e\u0441\u0430\n REQUEST_RETRIES = 10\n # \u0422\u0430\u0439\u043c\u0430\u0443\u0442 \u0437\u0430\u043f\u0440\u043e\u0441\u0430, \u0441\u0435\u043a\n REQUEST_TIMEOUT = 10\n # \u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044e \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432\n ENABLE_REQUEST_EMULATION = True\n ```\n\n\u041d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0434\u0435\u0444\u043e\u043b\u0442\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.\n\n## \u0421\u0431\u043e\u0440\u043a\u0430 \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435\n\n\u0421\u0431\u043e\u0440\u043a\u0430 \u043f\u0430\u043a\u0435\u0442\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 [Job-\u0430 \u0432 Jenkins M3.build_dist](http://jenkins.py.bars.group/view/PY/job/M3.packages/job/M3.build_dist/).\n\n\u041f\u0430\u043a\u0435\u0442 \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0439 [PYPI](https://pypi.org/project/edu-rdm-integration/) \u0438 \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 [Nexus](http://nexus.py.bars.group/#browse/browse:pypi-edu-private:edu-rdm-integration) \n\n## \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f\n\n\u0421 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0435\u0439 \u043c\u043e\u0436\u043d\u043e \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 http://docs.py.bars.group/edu-rdm-integration/\n# \u0418\u0441\u0442\u043e\u0440\u0438\u044f \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439\n\n\u0412\u0441\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u044b \u0432 \u044d\u0442\u043e\u043c \u0444\u0430\u0439\u043b\u0435.\n\n\u0424\u043e\u0440\u043c\u0430\u0442 \u043e\u0441\u043d\u043e\u0432\u0430\u043d \u043d\u0430 [Keep a Changelog](http://keepachangelog.com/)\n\u0438 \u043f\u0440\u043e\u0435\u043a\u0442 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 [\u0421\u0435\u043c\u0430\u043d\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u043c\u0443 \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e](http://semver.org/).\n\n## [x.y.z] - \u0433\u0433\u0433\u0433-\u043c\u043c-\u0434\u0434\n\n\u0417\u0434\u0435\u0441\u044c \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0431\u044b\u043b\u043e \u0441\u0434\u0435\u043b\u0430\u043d\u043e, \u043a\u0430\u043a\u0438\u0435 \u0435\u0441\u0442\u044c \u043f\u043b\u0430\u043d\u044b \u0443 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u043f\u043e \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c\u0443 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u044e.\n\u0416\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u0443\u0434\u0443\u0449\u0438\u0435 \u0446\u0435\u043b\u0438 \u043f\u0440\u0438\u0432\u044f\u0437\u044b\u0432\u0430\u0442\u044c \u043a \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u043c \u0437\u0430\u0434\u0430\u0447\u0430\u043c. \u0422.\u0435. \u043d\u0430 \u043a\u0430\u0436\u0434\u0443\u044e \u0446\u0435\u043b\u044c \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0443\u044e \u0437\u0430\u0434\u0430\u0447\u0443 \u0438\n\u043e\u0442\u0440\u0430\u0437\u0438\u0442\u044c \u0435\u0435 \u043d\u043e\u043c\u0435\u0440 \u0437\u0434\u0435\u0441\u044c.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [\u041f\u0420\u041e\u0415\u041a\u0422-ZZZZ](https://jira.bars.group/browse/\u041f\u0420\u041e\u0415\u041a\u0422-ZZZZ)\n PATCH \u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f.\n\n- [\u041f\u0420\u041e\u0415\u041a\u0422-YYYY](https://jira.bars.group/browse/\u041f\u0420\u041e\u0415\u041a\u0422-YYYY)\n MINOR \u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f.\n\n- [\u041f\u0420\u041e\u0415\u041a\u0422-XXXX](https://jira.bars.group/browse/\u041f\u0420\u041e\u0415\u041a\u0422-XXXX)\n MAJOR \u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n### \u0423\u0434\u0430\u043b\u0435\u043d\u043e\n\n\n## 3.4.5 - 2024-11-01\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043e\u0448\u0438\u0431\u043e\u043a \u0447\u0442\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u0430 \u043f\u0440\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0420\u0412\u0414 (UploadDataAsyncTask)\n\n## \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n- [EDUSCHL-22734](https://jira.bars.group/browse/EDUSCHL-22734)\n \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043e\u0448\u0438\u0431\u043e\u043a \u0447\u0442\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u0430 \u043f\u0440\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0420\u0412\u0414 (UploadDataAsyncTask)\n\n\n## 3.4.4 - 2024-10-23\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0430\u0441\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430\u044f \u043c\u0435\u043d\u0435\u0434\u0436-\u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043f\u0440\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u0432 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u043c\u043e\u0434\u0435\u043b\u044c ExportingDataSubStageAttachment\n\n## \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n- [EDUSCHL-22651](https://jira.bars.group/browse/EDUSCHL-22651)\n \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0430\u0441\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430\u044f \u043c\u0435\u043d\u0435\u0434\u0436-\u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043f\u0440\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u0432 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u043c\u043e\u0434\u0435\u043b\u044c ExportingDataSubStageAttachment\n\n\n## 3.4.3 - 2024-10-17\n\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430 \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u0432 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u043c\u043e\u0434\u0435\u043b\u044c ExportingDataSubStageAttachment\n\n\n## \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n- [EDUSCHL-22651](https://jira.bars.group/browse/EDUSCHL-22651)\n \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430 \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u0432 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u043c\u043e\u0434\u0435\u043b\u044c ExportingDataSubStageAttachment\n\n\n## 3.4.2 - 2024-10-15\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043f\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0430 UploadDataAsyncTask\n\n## \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n- [EDUSCHL-22166](https://jira.bars.group/browse/EDUSCHL-22166)\n \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043f\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0430 UploadDataAsyncTask\n\n\n## 3.4.1 - 2024-09-26\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u043f\u043e \u0441\u0431\u043e\u0440\u0443/\u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0435 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 \u0434\u043b\u044f \u042d\u0414\u0421, \u042d\u041a\n\n## \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n- [EDUKNDG-14518](https://jira.bars.group/browse/EDUKNDG-14518)\n \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u043f\u043e \u0441\u0431\u043e\u0440\u0443/\u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0435 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 \u0434\u043b\u044f \u042d\u0414\u0421, \u042d\u041a\n\n\n## 3.4.0 - 2024-09-25\n\u0412 \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u043a\u043b\u0430\u0441\u0441 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0441\u0431\u043e\u0440\u0430 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0444\u043e\u0440\u043c\u0430\u0442\u0430 PhoneNumber \u0434\u043b\u044f \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\n\u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0430 \u043c\u043e\u0434\u0435\u043b\u0438 AuditLog.\n\u041f\u043e\u0432\u044b\u0448\u0435\u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 educommon >= 3.11.0.\n\u0412\u044b\u043d\u0435\u0441\u0435\u043d\u044b \u0443\u0442\u0438\u043b\u0438\u0442\u044b \u0438 \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u043a\u043b\u0430\u0441\u0441 \u0434\u043b\u044f \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0441\u0431\u043e\u0440\u0430 \u043f\u043e \u043c\u043e\u0434\u0435\u043b\u0438 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438\n\n## \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n- [EDUSCHL-22378](https://jira.bars.group/browse/EDUSCHL-22378)\n \u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u043e\u043b\u044f \u043c\u043e\u0434\u0435\u043b\u0435\u0439 Django \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0435\u0433\u043e \u043d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUKNDG-14516](https://jira.bars.group/browse/EDUKNDG-14516)\n PATCH \u0412\u044b\u043d\u0435\u0441\u0435\u043d\u044b \u0443\u0442\u0438\u043b\u0438\u0442\u044b \u0438 \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u043a\u043b\u0430\u0441\u0441 \u0434\u043b\u044f \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0441\u0431\u043e\u0440\u0430 \u043f\u043e \u043c\u043e\u0434\u0435\u043b\u0438 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438\n\n\n## 3.3.8 - 2024-10-14\n\u0417\u0430\u0434\u0430\u0447\u0430 UploadDataAsyncTask \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0430 \u0441 PeriodicAsyncTask \u043d\u0430 UploadDataAsyncTask\n- [EDUSCHL-22519]https://jira.bars.group/browse/EDUSCHL-22519\n PATCH \u0417\u0430\u0434\u0430\u0447\u0430 UploadDataAsyncTask \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0430 \u0441 PeriodicAsyncTask \u043d\u0430 UploadDataAsyncTask\n\n\n## 3.3.7 - 2024-09-06\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u043a\u043e\u043c\u0430\u043d\u0434\u0430 (UploadEntitiesData) \u0438 \u043c\u043e\u0434\u0435\u043b\u044c (UploadDataCommand) \u0434\u043b\u044f \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0432\u0438\u0442\u0440\u0438\u043d\u0443\n- [EDUSCHL-22042](https://jira.bars.group/browse/EDUSCHL-22042)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u043a\u043e\u043c\u0430\u043d\u0434\u0430 (UploadEntitiesData) \u0438 \u043c\u043e\u0434\u0435\u043b\u044c (UploadDataCommand) \u0434\u043b\u044f \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \n\u0432 \u0432\u0438\u0442\u0440\u0438\u043d\u0443\n\n\n## 3.3.6 - 2024-09-02\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f \u043f\u043e \u0434\u0430\u0442\u0435 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u0440\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u044d\u043a\u0441\u043f\u043e\u0440\u0442 \u0432 BaseExportLatestEntitiesData\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-22335](https://jira.bars.group/browse/EDUSCHL-22335)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f \u043f\u043e \u0434\u0430\u0442\u0435 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u0440\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u044d\u043a\u0441\u043f\u043e\u0440\u0442 \u0432 BaseExportLatestEntitiesData\n\n\n## 3.3.5 - 2024-08-26\n\u041a\u043b\u0430\u0441\u0441\u044b UniquePeriodicAsyncTask, PeriodicTaskLocker \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0435\u043d\u044b \u0432 educommon.\n\n### \u0423\u0434\u0430\u043b\u0435\u043d\u043e\n- [EDUSCHL-22267](https://jira.bars.group/browse/EDUSCHL-22267)\n MINOR \u041a\u043b\u0430\u0441\u0441\u044b UniquePeriodicAsyncTask, PeriodicTaskLocker \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0435\u043d\u044b \u0432 educommon.\n\n\n## 3.3.4 - 2024-08-16\n\u041f\u043e\u0434\u043d\u044f\u0442\u0430 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f Django (<3.3)\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUKNDG-14560](https://jira.bars.group/browse/EDUKNDG-14560)\n MINOR \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 Django 3.2\n\n\n## 3.3.3 - 2024-08-19\n\u0418\u0437\u043c\u0435\u043d\u0435\u043d \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u0431\u043e\u0440\u0430 \u0438 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u043f\u043e \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u044f\u043c \u0432 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435 TransferLatestEntitiesDataPeriodicTask \n\u0441 \u0443\u0447\u0435\u0442\u043e\u043c \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u043e\u0441\u0442\u0438, \u0441\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u043d\u043e\u043c\u0435\u0440\u0430 \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0439\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-21965](https://jira.bars.group/browse/EDUSCHL-21965)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 export_off \u0432 \u043c\u043e\u0434\u0435\u043b\u044c TransferredEntity \u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u0431\u043e\u0440\u0430 \u0438 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u0432\n TransferLatestEntitiesDataPeriodicTask. \u0421\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u043d\u043e\u043c\u0435\u0440\u0430 \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0439\n\n\n## 3.3.2 - 2024-07-16\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 use_times_limit \u0432 BaseCollectLatestModelsData \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 logs_period_started_at \u0438 logs_period_ended_at\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-22070](https://jira.bars.group/browse/EDUSCHL-22070)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 use_times_limit \u0432 BaseCollectLatestModelsData \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 logs_period_started_at \u0438 logs_period_ended_at\n\n\n## 3.3.1 - 2024-06-13\n\u0423\u0434\u0430\u043b\u0451\u043d \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 logs_sub_period_days \u0443 \u0431\u0430\u0437\u043e\u0432\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0441\u0431\u043e\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 BaseCollectModelsDataByGeneratingLogsCommand.\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u0442\u0430\u0439\u043c\u0430\u0443\u0442 \u0434\u043b\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e\u0431 \u043e\u0431\u044a\u0435\u043c\u0430\u0445 \u0444\u0430\u0439\u043b\u0430 \u0432 \u043a\u0435\u0448.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-20649](https://jira.bars.group/browse/EDUSCHL-20649)\n MINOR \u0423\u0434\u0430\u043b\u0451\u043d \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 logs_sub_period_days \u0443 \u0431\u0430\u0437\u043e\u0432\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0441\u0431\u043e\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 BaseCollectModelsDataByGeneratingLogsCommand\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n- [EDUSCHL-21835](https://jira.bars.group/browse/EDUSCHL-21835)\n PATCH \u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u043e\u0439 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438\n\n\n## 3.3.0 - 2024-06-06\n\u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u0420\u0412\u0414 \u0432\u044b\u043d\u0435\u0441\u0435\u043d\u0430 \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0443\u044e \u0437\u0430\u0434\u0430\u0447\u0443 UploadDataAsyncTask, \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043a\u0435\u0448 \u0444\u0430\u0439\u043b\u043e\u0432 \u0438 \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u043f\u043e\u0434\u044d\u0442\u0430\u043f\u043e\u0432 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438,\n\u0430 \u0442\u0430\u043a\u0436\u0435 \u0440\u0430\u0441\u0447\u0435\u0442 \u043e\u0431\u044a\u0435\u043c\u043e\u0432 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-21835](https://jira.bars.group/browse/EDUSCHL-21835)\n MINOR \u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u043e\u0439 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438\n\n\n## 3.2.8 - 2024-08-02\n\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0430 \u0437\u0430\u0434\u0432\u043e\u0435\u043d\u0438\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u0438 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u0432 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435 TransferLatestEntitiesDataPeriodicTask.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-21965](https://jira.bars.group/browse/EDUSCHL-21965)\n PATCH \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0430 \u0437\u0430\u0434\u0432\u043e\u0435\u043d\u0438\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u0438 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u0432 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435 TransferLatestEntitiesDataPeriodicTask.\n\n\n## 3.2.7 - 2024-07-31\n\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u0444\u0430\u0439\u043b MANIFEST.in \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u0441\u0431\u043e\u0440\u043a\u0443 js-\u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-21965](https://jira.bars.group/browse/EDUSCHL-21965)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 js-\u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 \u0432 \u0441\u0431\u043e\u0440\u043a\u0443 \u0432 \u0444\u0430\u0439\u043b MANIFEST.in\n\n\n## 3.2.6 - 2024-07-23\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 export_off (\u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u0434\u043b\u044f \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438) \u0432 \u043c\u043e\u0434\u0435\u043b\u044c TransferredEntity\n\u0418\u0437\u043c\u0435\u043d\u0435\u043d \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u0431\u043e\u0440\u0430 \u0438 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u043f\u043e \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u044f\u043c \u0432 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435 TransferLatestEntitiesDataPeriodicTask\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-21965](https://jira.bars.group/browse/EDUSCHL-21965)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 export_off \u0432 \u043c\u043e\u0434\u0435\u043b\u044c TransferredEntity \u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u0431\u043e\u0440\u0430 \u0438 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u0432\n TransferLatestEntitiesDataPeriodicTask.\n\n\n## 3.2.5 - 2024-07-16\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 use_times_limit \u0432 BaseCollectLatestModelsData \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 logs_period_started_at \u0438 logs_period_ended_at\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-22070](https://jira.bars.group/browse/EDUSCHL-22070)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 use_times_limit \u0432 BaseCollectLatestModelsData \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 logs_period_started_at \u0438 logs_period_ended_at\n\n\n## 3.2.5 - 2024-07-16\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 use_times_limit \u0432 BaseCollectLatestModelsData \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 logs_period_started_at \u0438 logs_period_ended_at\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-22070](https://jira.bars.group/browse/EDUSCHL-22070)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 use_times_limit \u0432 BaseCollectLatestModelsData \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 logs_period_started_at \u0438 logs_period_ended_at\n\n\n## 3.2.4 - 2024-07-16\n\u0412\u043d\u0435\u0441\u0435\u043d\u044b \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u043a\u0438 \u0432 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u0445 get_collecting_managers_max_period_ended_dates \u0438 get_exporting_managers_max_period_ended_dates.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-22217](https://jira.bars.group/browse/EDUSCHL-22217)\n PATCH \u0412\u043d\u0435\u0441\u0435\u043d\u044b \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u043a\u0438 \u0432 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u0445 get_collecting_managers_max_period_ended_dates \u0438 get_exporting_managers_max_period_ended_dates.\n \u0412 \u043f\u043e\u0434\u0437\u0430\u043f\u0440\u043e\u0441\u0430\u0445 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u043b\u043e \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u043e \u0441\u0442\u0430\u0442\u0443\u0441\u0443.\n\n\n## 3.2.3 - 2024-06-06\n\u0412\u043d\u0435\u0441\u0435\u043d\u044b \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u043a\u0438 \u0432 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u0445 get_collecting_managers_max_period_ended_dates \u0438 get_exporting_managers_max_period_ended_dates.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-21804](https://jira.bars.group/browse/EDUSCHL-21804)\n PATCH \u0412\u043d\u0435\u0441\u0435\u043d\u044b \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u043a\u0438 \u0432 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u0445 get_collecting_managers_max_period_ended_dates \u0438 get_exporting_managers_max_period_ended_dates.\n \u0414\u0430\u0442\u0430 \u0438 \u0432\u0440\u0435\u043c\u044f \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e \u0441\u0431\u043e\u0440\u0430/\u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u043c\u043e\u0433\u043b\u0430 \u0431\u044b\u0442\u044c \u043d\u0435 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430.\n\n\n## 3.2.2 - 2024-05-21\n\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432 \u043f\u0435\u0440\u0435\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435 TransferLatestEntitiesDataPeriodicTask,\n\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0434\u0430\u0442\u044b \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0433\u043e \u044d\u0442\u0430\u043f\u0430 \u0441\u0431\u043e\u0440\u0430 \u0443 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u043e\u0432 \u0424\u0443\u043d\u043a\u0446\u0438\u0439 \u0441\u0431\u043e\u0440\u0430 \u0438 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430.\n\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043a\u0440\u0430\u0439\u043d\u0435\u0439 \u0434\u0430\u0442\u044b \u0438\u0437 \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044f \u043f\u043e \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u043c\u043e\u0434\u0435\u043b\u044f\u043c \u0432 BaseCollectLatestModelsData.\n\u0423\u0434\u0430\u043b\u0451\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 RDM_TRANSFER_TASK_TIMEDELTA.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-21804](https://jira.bars.group/browse/EDUSCHL-21804)\n PATCH \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0434\u0430\u0442\u044b \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0433\u043e \u044d\u0442\u0430\u043f\u0430 \u0441\u0431\u043e\u0440\u0430 \u0443 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u043e\u0432 \u0424\u0443\u043d\u043a\u0446\u0438\u0439 \u0441\u0431\u043e\u0440\u0430 \u0438 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430\n \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043a\u0440\u0430\u0439\u043d\u0435\u0439 \u0434\u0430\u0442\u044b \u0438\u0437 \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044f \u043f\u043e \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u043c\u043e\u0434\u0435\u043b\u044f\u043c \u0432 BaseCollectLatestModelsData.\n \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0444\u0443\u043d\u043a\u0446\u0438\u0438 get_collecting_managers_max_period_ended_dates \u0438 get_exporting_managers_max_period_ended_dates \n \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0434\u0430\u0442\u044b \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0433\u043e \u044d\u0442\u0430\u043f\u0430 \u0441\u0431\u043e\u0440\u0430/\u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430.\n\n\n## 3.2.1 - 2024-05-03\n\u041f\u043e\u043d\u0438\u0436\u0435\u043d \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0438 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u0438 \u043e\u0448\u0438\u0431\u043a\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432 \u0420\u0412\u0414 \u0441 ERROR \u0434\u043e WARNING\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-21903](https://jira.bars.group/browse/EDUSCHL-21903)\n PATCH \u041f\u043e\u043d\u0438\u0436\u0435\u043d \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0438 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u0438 \u043e\u0448\u0438\u0431\u043a\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432 \u0420\u0412\u0414\n\n\n## 3.2.0 - 2024-05-02\n\u041f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 RDMCheckUploadStatus, CheckSuspendedExportedStagePeriodicTask, \nTransferLatestEntitiesDataPeriodicTask \u0441\u0434\u0435\u043b\u0430\u043d\u044b \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u043c\u0438.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-21891](https://jira.bars.group/browse/EDUSCHL-21891)\n MINOR \u041f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 RDMCheckUploadStatus, CheckSuspendedExportedStagePeriodicTask, \n TransferLatestEntitiesDataPeriodicTask \u0441\u0434\u0435\u043b\u0430\u043d\u044b \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u043c\u0438. \u0412\u043e \u0432\u0440\u0435\u043c\u044f \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \n \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043d\u043e\u0432\u0443\u044e \u043f\u043e\u0434\u043e\u0431\u043d\u0443\u044e \u0437\u0430\u0434\u0430\u0447\u0443.\n\n\n## 3.1.1 - 2024-05-03\n\u041f\u043e\u043d\u0438\u0436\u0435\u043d \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0438 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u0438 \u043e\u0448\u0438\u0431\u043a\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432 \u0420\u0412\u0414 \u0441 ERROR \u0434\u043e WARNING\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-21903](https://jira.bars.group/browse/EDUSCHL-21903)\n PATCH \u041f\u043e\u043d\u0438\u0436\u0435\u043d \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0438 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u0438 \u043e\u0448\u0438\u0431\u043a\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432 \u0420\u0412\u0414\n\n\n## 3.1.0 - 2024-04-23\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 setuptools 69.*.\n\u041f\u043e\u0434\u043d\u044f\u0442\u0430 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u043f\u0430\u043a\u0435\u0442\u0430 pip 23.2.1\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-21761](https://jira.bars.group/browse/EDUSCHL-21761)\n MINOR \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 setuptools 69.*. \u041f\u043e\u0434\u043d\u044f\u0442\u044c \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e pip \u0434\u043e 23.2.1.\n\n\n## 3.0.4 - 2024-04-17\n\u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0435\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u044d\u0442\u0430\u043f\u0430 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0432\u0441\u0435\u043c \u0437\u0430\u043f\u0438\u0441\u044f\u043c \u043c\u043e\u0434\u0435\u043b\u0438.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-21761](https://jira.bars.group/browse/EDUSCHL-21761)\n PATCH \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0435\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u044d\u0442\u0430\u043f\u0430 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0432\u0441\u0435\u043c \u0437\u0430\u043f\u0438\u0441\u044f\u043c \u043c\u043e\u0434\u0435\u043b\u0438.\n\n\n## 3.0.3 - 2024-04-11\n\u0412 \u043a\u043b\u0430\u0441\u0441\u0430\u0445 \u043f\u0440\u0438\u043c\u0435\u0441\u0435\u0439 CollectCommandMixin \u0438 ExportCommandMixin \u0443\u043a\u0430\u0437\u0430\u043d\u0430 \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u0434\u043b\u044f celery \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0430\u044f \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u043f\u0430\u043a\u0435\u0442\u0430.\n\u0423\u043a\u0430\u0437\u0430\u043d\u043e \u0431\u0430\u0437\u043e\u0432\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0438 \u0442\u0438\u043f \u0437\u0430\u0434\u0430\u0447\u0438 \u0434\u043b\u044f \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0432 \u0440\u0435\u0435\u0441\u0442\u0440\u0435 \"\u0410\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438\".\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUSCHL-21793](https://jira.bars.group/browse/EDUSCHL-21793)\n PATCH \u0412 \u043a\u043b\u0430\u0441\u0441\u0430\u0445 \u043f\u0440\u0438\u043c\u0435\u0441\u0435\u0439 CollectCommandMixin \u0438 ExportCommandMixin \u0443\u043a\u0430\u0437\u0430\u043d\u0430 \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u0434\u043b\u044f celery \n \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0430\u044f \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u043f\u0430\u043a\u0435\u0442\u0430.\n\n\n## 3.0.2 - 2024-04-11\n\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u044b \u0442\u0438\u043f\u044b \u043f\u043e\u043b\u0435\u0439 \u041e\u0413\u0420\u041d \u0438 \u041e\u041a\u0424\u0421 \u0432 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438 Organisations \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u043e\u0432\u044b\u0435.\n\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u0442\u0438\u043f \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 institute_ids \u043f\u0440\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0438 \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438.\n\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0430 \u043f\u0440\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0434\u044d\u0442\u0430\u043f\u0430 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0443 \u043d\u0435\u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n- [EDUCLLG-8336](https://jira.bars.group/browse/EDUCLLG-8336)\n PATCH \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u044b \u0442\u0438\u043f\u044b \u043f\u043e\u043b\u0435\u0439 \u041e\u0413\u0420\u041d \u0438 \u041e\u041a\u0424\u0421 \u0432 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438 Organisations \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u043e\u0432\u044b\u0435.\n- [EDUSCHL-21743](https://jira.bars.group/browse/EDUSCHL-21743)\n PATCH \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u0442\u0438\u043f \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 institute_ids \u043f\u0440\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0438 \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438.\n- [EDUSCHL-21761](https://jira.bars.group/browse/EDUSCHL-21761)\n PATCH \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0430 \u043f\u0440\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0434\u044d\u0442\u0430\u043f\u0430.\n\n\n## 3.0.1 - 2024-04-03\n\u0423\u0431\u0440\u0430\u043d\u043e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u043a\u0430\u0432\u044b\u0447\u043a\u0430\u043c\u0438 \u043f\u0443\u0441\u0442\u044b\u0445 \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u043b\u0435\u0439.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUCLLG-8325](https://jira.bars.group/browse/EDUCLLG-8325)\n PATCH \u0423\u0431\u0440\u0430\u043d\u043e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u043a\u0430\u0432\u044b\u0447\u043a\u0430\u043c\u0438 \u043f\u0443\u0441\u0442\u044b\u0445 \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u043b\u0435\u0439.\n\n\n## 3.0.0 - 2024-04-02\n\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u044b \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043a\u0430\u0441\u0442\u043e\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043c\u0435\u0442\u043e\u0434\u0430 `BaseExportDataFunctionHelper.prepare_record`.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUCLLG-8325](https://jira.bars.group/browse/EDUCLLG-8325)\n MAJOR \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c, \u043a\u0430\u043a \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u043e\u0432\u043e\u0435\n \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u0435\u0439 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0438\u0445 \u0442\u0438\u043f\u0430 \u0438 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438. **\u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c\n \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 `required_fields` \u0432 \u043c\u0435\u0442\u043e\u0434 `prepare_record` helper-\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0438**.\n\n\n## [2.2.1] - 2024-03-28\n \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f Meta \u0432 \u043c\u043e\u0434\u0435\u043b\u044f\u0445 EduRdmCollectDataCommandProgress \u0438 EduRdmExportDataCommandProgress\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-21569](https://jira.bars.group/browse/EDUSCHL-21569)\n MINOR \u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u043e\u0441\u0442\u0430\u0432\u0448\u0438\u0435\u0441\u044f \u043e\u0431\u0449\u0438\u0435 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u0438\u0437 \u042d\u0428 \u0432 \u043f\u0430\u043a\u0435\u0442 edu_rdm_integration\n\n\n## [2.2.0] - 2024-03-20\n\n\u0418\u0437 \u042d\u0428 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0435\u043d\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e \u0441\u0431\u043e\u0440\u0443 \u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0420\u0412\u0414.\n\n\u0422\u0430\u043a\u0436\u0435 \u0438\u0437 \u042d\u0428 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0435\u043d\u044b \u0438 \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u044b \u043c\u043e\u0434\u0435\u043b\u0438:\n - CollectDataCommandProgress \u043f\u0435\u0440\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0430 \u0432 EduRdmCollectDataCommandProgress\n - ExportDataCommandProgress \u043f\u0435\u0440\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0430 \u0432 EduRdmExportDataCommandProgress\n - \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u043c\u0438\u043a\u0441\u0438\u043d\u044b CollectCommandMixin \u0438 ExportCommandMixin\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-21569](https://jira.bars.group/browse/EDUSCHL-21569)\n MINOR \u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u043e\u0441\u0442\u0430\u0432\u0448\u0438\u0435\u0441\u044f \u043e\u0431\u0449\u0438\u0435 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u0438\u0437 \u042d\u0428 \u0432 \u043f\u0430\u043a\u0435\u0442 edu_rdm_integration\n\n\n## [2.1.0] - 2024-03-18\n\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 Django 3.1.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-18052](https://jira.bars.group/browse/EDUSCHL-18052)\n MINOR \u041f\u043e\u0434\u043d\u044f\u0442\u044c \u0432\u0435\u0440\u0441\u0438\u044e Django \u0434\u043e 3.1.14\n\n\n## [2.0.3] - 2024-03-11\n\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0447\u0430\u043d\u043a\u0430 \u043b\u043e\u0433\u043e\u0432 \u0432 `list` \u043f\u0435\u0440\u0435\u0434 \u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0432 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430\u0445 \u0432 \u043c\u0435\u0442\u043e\u0434\u0435 `_get_runnable_objects` \u043a\u043b\u0430\u0441\u0441\u0430 `BaseCollectingDataRunner`.\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-21581](https://jira.bars.group/browse/EDUSCHL-21581)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0447\u0430\u043d\u043a\u0430 \u043b\u043e\u0433\u043e\u0432 \u0432 `list` \u043f\u0435\u0440\u0435\u0434 \u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0432 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430\u0445 \u0432 \u043c\u0435\u0442\u043e\u0434\u0435 `_get_runnable_objects` \u043a\u043b\u0430\u0441\u0441\u0430 `BaseCollectingDataRunner`.\n\n\n## [2.0.2] - 2024-03-07\n\n\u041e\u0442\u043a\u0430\u0442\u0438\u043b \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0435 \u0432 \u0432\u0435\u0440\u0441\u0438\u0438 2.0.1. \u0414\u0430\u043d\u043d\u044b\u0435 \u0434\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u043b\u0438 \u043a \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435.\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-21503](https://jira.bars.group/browse/EDUSCHL-21503)\n PATCH \u041e\u0442\u043a\u0430\u0442\u0438\u043b \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0435 \u0432 \u0432\u0435\u0440\u0441\u0438\u0438 2.0.1\n\n\n## [2.0.1] - 2024-03-01\n\n\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u043c\u0435\u0442\u043e\u0434\u0430 _calculate_last_finished_entity_export \u043a\u043b\u0430\u0441\u0441\u0430 BaseExportLatestEntitiesData\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-21503](https://jira.bars.group/browse/EDUSCHL-21503)\n PATCH \u042d\u0428. \u0412\u0441\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0420\u0412\u0414. \u041d\u0435\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0430 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 \u043f\u0440\u0438 \u0441\u0431\u043e\u0440\u0435 \n \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 collect_latest_models_data \n\n\n## [2.0.0] - 2024-02-21\n\n\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 school_ids \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d \u0432 institute_ids.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20485](https://jira.bars.group/browse/EDUSCHL-20485)\n MAJOR \u041f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 school_ids \u043d\u0430 institute_ids\n\n\n## [1.0.2] - 2024-03-06\n\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0440\u0430\u0437\u0431\u0438\u0435\u043d\u0438\u0435 \u043d\u0430 \u0447\u0430\u043d\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043d\u0430 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044f modified \u0443 \u043d\u0435\u0432\u044b\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439,\n\u043f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b `export_latest_entities_data`.\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-21572](https://jira.bars.group/browse/EDUSCHL-21572)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0440\u0430\u0437\u0431\u0438\u0435\u043d\u0438\u0435 \u043d\u0430 \u0447\u0430\u043d\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043d\u0430 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0432 \u043c\u0435\u0442\u043e\u0434\u0435 `_update_model_modified_field` \n \u043a\u043b\u0430\u0441\u0441\u0430 `BaseExportLatestEntitiesData`.\n\n\n## [1.0.1] - 2024-02-20\n\n\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0441\u0431\u043e\u0440\u0430 \u043b\u043e\u0433\u043e\u0432 \u043f\u0435\u0440\u0438\u043e\u0434\u043e\u043c `RDM_TRANSFER_TASK_TIMEDELTA` \u0432 `BaseCollectLatestModelsData`\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-21413](https://jira.bars.group/browse/EDUSCHL-21413)\n PATCH \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0441\u0431\u043e\u0440\u0430 \u043b\u043e\u0433\u043e\u0432 \u043f\u0435\u0440\u0438\u043e\u0434\u043e\u043c `RDM_TRANSFER_TASK_TIMEDELTA` \u0432 `BaseCollectLatestModelsData`\n\n\n## [1.0.0] - 2024-01-31\n\n\u0423\u0434\u0430\u043b\u0435\u043d \u0434\u0443\u0431\u043b\u0438\u0440\u0443\u044e\u0449\u0438\u0439\u0441\u044f \u043a\u043b\u0430cc `LogChange` \u0438\u0437 `collect_data.non_calculated.base.caches`.\n\n### \u0423\u0434\u0430\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-21308](https://jira.bars.group/browse/EDUSCHL-21308)\n MAJOR \u0423\u0434\u0430\u043b\u0435\u043d \u0434\u0443\u0431\u043b\u0438\u0440\u0443\u044e\u0449\u0438\u0439\u0441\u044f \u043a\u043b\u0430cc `LogChange` \u0438\u0437 `collect_data.non_calculated.base.caches`.\n\n\n## [0.10.2] - 2024-02-05\n\n\u0420\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433 \u043f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0431\u0435\u0437 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438\u0445 \u0432 \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435.\n\n\u0412 \u043a\u043b\u0430\u0441\u0441 \u043a\u0435\u0448\u0430 BaseCollectingExportedDataFunctionCacheStorage \u0440\u0430\u0441\u0447\u0435\u0442\u043d\u044b\u0445 \u0438 \u043d\u0435 \u0440\u0430\u0441\u0447\u0435\u0442\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043c\u0435\u0442\u043e\u0434 _ignore_logs.\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0443\u0442\u0438\u043b\u0438\u0442\u0430 build_related_model_graph \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0433\u0440\u0430\u0444\u0430 \u0441\u0432\u044f\u0437\u0435\u0439 \u043c\u0435\u0436\u0434\u0443 \u043c\u043e\u0434\u0435\u043b\u044f\u043c\u0438. \n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043c\u0438\u043a\u0441\u0438\u043d BaseIgnoreLogMixin, \u0434\u043b\u044f \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0438\u0437 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043b\u043e\u0433\u043e\u0432 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20550](https://jira.bars.group/browse/EDUSCHL-20550)\n MINOR \u0412 \u043a\u043b\u0430\u0441\u0441 \u043a\u0435\u0448\u0430 BaseCollectingExportedDataFunctionCacheStorage \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043c\u0435\u0442\u043e\u0434 _ignore_logs. \n \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0443\u0442\u0438\u043b\u0438\u0442\u0430 build_related_model_graph. \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043c\u0438\u043a\u0441\u0438\u043d BaseIgnoreLogMixin.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20274](https://jira.bars.group/browse/EDUSCHL-20274)\n MINOR \u0420\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433 \u043f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0431\u0435\u0437 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438\u0445 \u0432 \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435.\n\n\n## [0.10.1] - 2024-02-02\n\n\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0432 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 LogChange.\n\u041d\u0435 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f LogChange \u0441 \u043f\u0443\u0441\u0442\u044b\u043c fields.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-21251](https://jira.bars.group/browse/EDUSCHL-21251)\n PATCH \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0432 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 LogChange.\n\n\n## [0.10.0] - 2024-01-19\n\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 Django 3.0.\n\u0412 \u043a\u043b\u0430\u0441\u0441 \u043a\u0435\u0448\u0430 BaseCollectingExportedDataFunctionCacheStorage \u0440\u0430\u0441\u0447\u0435\u0442\u043d\u044b\u0445 \u0438 \u043d\u0435 \u0440\u0430\u0441\u0447\u0435\u0442\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043c\u0435\u0442\u043e\u0434 _ignore_logs.\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0443\u0442\u0438\u043b\u0438\u0442\u0430 build_related_model_graph \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0433\u0440\u0430\u0444\u0430 \u0441\u0432\u044f\u0437\u0435\u0439 \u043c\u0435\u0436\u0434\u0443 \u043c\u043e\u0434\u0435\u043b\u044f\u043c\u0438. \n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043c\u0438\u043a\u0441\u0438\u043d BaseIgnoreLogMixin, \u0434\u043b\u044f \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0438\u0437 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043b\u043e\u0433\u043e\u0432 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-18051](https://jira.bars.group/browse/EDUSCHL-18051)\n MINOR \u041f\u043e\u0434\u043d\u044f\u0442\u044c \u0432\u0435\u0440\u0441\u0438\u044e Django \u0434\u043e 3.0.14\n- [EDUSCHL-20550](https://jira.bars.group/browse/EDUSCHL-20550)\n MINOR \u0412 \u043a\u043b\u0430\u0441\u0441 \u043a\u0435\u0448\u0430 BaseCollectingExportedDataFunctionCacheStorage \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043c\u0435\u0442\u043e\u0434 _ignore_logs. \n \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0443\u0442\u0438\u043b\u0438\u0442\u0430 build_related_model_graph. \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043c\u0438\u043a\u0441\u0438\u043d BaseIgnoreLogMixin.\n\n\n## [0.9.2] - 2024-01-17\n\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u044f\u0432\u043d\u0430\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 Celery.\n\u041f\u043e\u0434\u043d\u044f\u0442\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u043f\u0430\u043a\u0435\u0442\u0430 celery.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-14950](https://jira.bars.group/browse/EDUSCHL-14950)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u044f\u0432\u043d\u0430\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 Celery.\n\n\n## [0.9.1] - 2024-01-11\n\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u0440\u0435\u0435\u0441\u0442\u0440 \u0432\u044b\u0431\u043e\u0440\u0430 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u0430 \u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445.\n\u0423\u0434\u0430\u043b\u0435\u043d\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 RDM_TRANSFER_TASK_ENTITIES, \u0432\u043c\u0435\u0441\u0442\u043e \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0440\u0435\u0435\u0441\u0442\u0440 \u0438 \u043c\u043e\u0434\u0435\u043b\u044c\n TransferredEntity.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-21112](https://jira.bars.group/browse/EDUSCHL-21112)\n MINOR \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u0440\u0435\u0435\u0441\u0442\u0440 \u0432\u044b\u0431\u043e\u0440\u0430 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u0430 \u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445.\n\n### \u0423\u0434\u0430\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-21112](https://jira.bars.group/browse/EDUSCHL-21112)\n MINOR \u0423\u0434\u0430\u043b\u0435\u043d\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 RDM_TRANSFER_TASK_ENTITIES.\n\n\n## [0.9.0] - 2023-12-29\n\n\u0418\u0437 \u042d\u0428 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0435\u043d\u044b \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u043f\u043e \u0441\u0431\u043e\u0440\u0443 \u0441\u0442\u0430\u0442\u0443\u0441\u043e\u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u0432\u0438\u0442\u0440\u0438\u043d\u0443, \u0430 \u0442\u0430\u043a\u0436\u0435\n\u043f\u043e \u043f\u043e\u0438\u0441\u043a\u0443 \u0437\u0430\u0432\u0438\u0441\u0448\u0438\u0445 \u044d\u0442\u0430\u043f\u043e\u0432/\u043f\u043e\u0434\u044d\u0442\u0430\u043f\u043e\u0432 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430.\n\n\u0422\u0430\u043a\u0436\u0435 \u0438\u0437 \u042d\u0428 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0435\u043d\u044b \u043c\u0435\u043d\u0435\u0434\u0436-\u043a\u043e\u043c\u0430\u043d\u0434\u044b: \n- check_upload_status - \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0432\u0438\u0442\u0440\u0438\u043d\u0443,\n- collect_lastest_models_data - \u0441\u0431\u043e\u0440 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043b\u043e\u0433\u043e\u0432 \u0437\u0430 \u043f\u0435\u0440\u0438\u043e\u0434 \u0441 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u0441\u0431\u043e\u0440\u043a\u0438 \u0434\u043e \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0439 \u0434\u0430\u0442\u044b,\n- export_latest_entities_data - \u044d\u043a\u0441\u043f\u043e\u0440\u0442 \u0434\u0430\u043d\u043d\u044b\u0445 \u0437\u0430 \u043f\u0435\u0440\u0438\u043e\u0434 \u0441 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u0441\u0431\u043e\u0440\u043a\u0438 \u0434\u043e \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0439 \u0434\u0430\u0442\u044b.\n\n\u0422\u0438\u043f\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c\u044b\u0445 \u0438\u0437 log_change.fields \u043f\u043e\u043b\u0435\u0439 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0442\u0438\u043f\u0430\u043c \u043f\u043e\u043b\u0435\u0439 \u0438\u0437 \u043b\u043e\u0433\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439. \n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-21013](https://jira.bars.group/browse/EDUSCHL-21013)\n MINOR \u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0435\u043d\u0430 \u0447\u0430\u0441\u0442\u044c \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u0445 \u0420\u0412\u0414 \u0437\u0430\u0434\u0430\u0447 \u0438\u0437 \u042d\u0428, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0447\u0430\u0441\u0442\u044c \u043c\u0435\u043d\u0435\u0434\u0436-\u043a\u043e\u043c\u0430\u043d\u0434\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20793](https://jira.bars.group/browse/EDUSCHL-20793)\n MINOR \u0422\u0438\u043f\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c\u044b\u0445 \u0438\u0437 log_change.fields \u043f\u043e\u043b\u0435\u0439 \u0434\u043e\u043b\u0436\u043d\u044b \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0442\u0438\u043f\u0430\u043c \u043f\u043e\u043b\u0435\u0439 \u0438\u0437 \u043b\u043e\u0433\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439\n\n\n## [0.8.6] - 2023-12-18\n\n\u0412 \u043c\u0435\u0442\u043e\u0434 _clean_data \u043a\u043b\u0430\u0441\u0441\u0430 BaseCollectingFunctionTestCase \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044f \u043e\u0442\u043d\u043e\u0441\u044f\u0449\u0438\u0435\u0441\u044f \u043a \n \u0441\u043f\u0438\u0441\u043a\u043e\u0432\u043e\u043c\u0443 \u0442\u0438\u043f\u0443 (ArrayField).\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-19606](https://jira.bars.group/browse/EDUSCHL-19606)\n PATCH \u0412 \u043c\u0435\u0442\u043e\u0434 _clean_data \u043a\u043b\u0430\u0441\u0441\u0430 BaseCollectingFunctionTestCase \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044f \u043e\u0442\u043d\u043e\u0441\u044f\u0449\u0438\u0435\u0441\u044f \u043a \n \u0441\u043f\u0438\u0441\u043a\u043e\u0432\u043e\u043c\u0443 \u0442\u0438\u043f\u0443 (ArrayField).\n\n\n## [0.8.5] - 2023-12-14\n\n\u0424\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043b\u043e\u0433\u043e\u0432 \u0432\u044b\u043d\u0435\u0441\u0435\u043d\u043e \u043d\u0430 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b, \u0430 \u043d\u0435 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430.\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043b\u043e\u0433\u043e\u0432 \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u0434\u0430\u043d\u043d\u044b\u0445.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20073](https://jira.bars.group/browse/EDUSCHL-20073)\n MINOR \u041b\u043e\u0433\u0438 \u043f\u0440\u0438 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0435 \u0434\u0430\u043d\u043d\u044b\u0445\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20073](https://jira.bars.group/browse/EDUSCHL-20073)\n MINOR \u0424\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043b\u043e\u0433\u043e\u0432 \u0432\u044b\u043d\u0435\u0441\u0435\u043d\u043e \u043d\u0430 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b, \u0430 \u043d\u0435 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430.\n\n\n## [0.8.4] - 2023-12-13\n\n\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u0445\u044d\u043b\u043f\u0435\u0440\u043e\u0432 BaseCollectingDataFunctionHelper, BaseCollectingDataRunnerHelper.\n\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 get_filtered_operations \u0432 BaseCollectingDataFunctionHelper.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-21029](https://jira.bars.group/browse/EDUSCHL-21029)\n MINOR \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u0445\u044d\u043b\u043f\u0435\u0440\u043e\u0432.\n\n## [0.8.3] - 2023-12-13\n\n\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0448\u0438\u0431\u043e\u043a \u0438 \u043d\u0435\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0439 \u0432 \u0436\u0443\u0440\u043d\u0430\u043b\u0435 \u043b\u043e\u0433\u043e\u0432\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUCLLG-8103](https://jira.bars.group/browse/EDUCLLG-8103)\n MINOR \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0448\u0438\u0431\u043e\u043a \u0438 \u043d\u0435\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0439 \u0432 \u0436\u0443\u0440\u043d\u0430\u043b\u0435 \u043b\u043e\u0433\u043e\u0432 .\n\n## [0.8.2] - 2023-12-11\n\n\u041f\u043e\u0434\u043d\u044f\u0442\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 m3-db-utils,\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 UploaderClientLogManager\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUCLLG-7736](https://jira.bars.group/browse/EDUCLLG-7736)\n MINOR \u041f\u043e\u0434\u043d\u044f\u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u0438 m3-db-utils \u0434\u043e 0.3.10, \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d `UploaderClientLogManager`.\n\n## [0.8.1] - 2023-12-08\n\n\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0430 \u0432\u043d\u0443\u0442\u0440\u0438 EntityEnumRegisterMixin\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUCLLG-8098](https://jira.bars.group/browse/EDUCLLG-8098)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0430 main_model_enum.\n\n## [0.8.0] - 2023-12-08\n\n\u0412\u044b\u043d\u0435\u0441\u0435\u043d \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u043b\u043e\u0433\u043e\u0432 \u0420\u0412\u0414 \u0438\u0437 \u042d\u0428.\n\u0423\u0434\u0430\u043b\u0435\u043d\u043e \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 UploadStatusEnum.\n\u0423\u0434\u0430\u043b\u0435\u043d\u0430 \u043c\u043e\u0434\u0435\u043b\u044c UploadStatus \u0441\u0442\u0430\u0442\u0443\u0441\u043e\u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u0432\u0438\u0442\u0440\u0438\u043d\u0443. \u0412\u043c\u0435\u0441\u0442\u043e \u043d\u0435\u0451 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043c\u043e\u0434\u0435\u043b\u044c-\u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 DataMartRequestStatus.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUCLLG-7736](https://jira.bars.group/browse/EDUCLLG-7736)\n MINOR \u0412\u044b\u043d\u0435\u0441\u0435\u043d \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u043b\u043e\u0433\u043e\u0432 \u0420\u0412\u0414 \u0438\u0437 \u042d\u0428.\n\n### \u0423\u0434\u0430\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20965](https://jira.bars.group/browse/EDUSCHL-20965)\n MINOR - \u0423\u0434\u0430\u043b\u0435\u043d\u043e \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 UploadStatusEnum. \u0423\u0434\u0430\u043b\u0435\u043d\u0430 \u043c\u043e\u0434\u0435\u043b\u044c UploadStatus \u0441\u0442\u0430\u0442\u0443\u0441\u043e\u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u0432\u0438\u0442\u0440\u0438\u043d\u0443.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20965](https://jira.bars.group/browse/EDUSCHL-20965)\n MINOR - \u0412\u043c\u0435\u0441\u0442\u043e \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 UploadStatus \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043c\u043e\u0434\u0435\u043b\u044c-\u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 DataMartRequestStatus.\n\n\n## [0.7.3] - 2023-12-07\n\n\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430 \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u044f \u0432 \u0448\u0430\u0431\u043b\u043e\u043d\u0435 managers.py-tpl \u0434\u043b\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430.\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-19604](https://jira.bars.group/browse/EDUSCHL-19604)\n PATCH \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430 \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u044f \u0432 \u0448\u0430\u0431\u043b\u043e\u043d\u0435 managers.py-tpl \u0434\u043b\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430.\n\n\n## [0.7.2] - 2023-12-05\n\n\u0412 \u043c\u0435\u0442\u043e\u0434 _clean_data \u043a\u043b\u0430\u0441\u0441\u0430 BaseCollectingFunctionTestCase \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044f \u043e\u0442\u043d\u043e\u0441\u044f\u0449\u0438\u0435\u0441\u044f \u043a \n \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u043c\u0443 \u0442\u0438\u043f\u0443.\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 plugins_info \u043f\u0440\u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043f\u0438\u0441\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-19507](https://jira.bars.group/browse/EDUSCHL-19507)\n PATCH \u0412 \u043c\u0435\u0442\u043e\u0434 _clean_data \u043a\u043b\u0430\u0441\u0441\u0430 BaseCollectingFunctionTestCase \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044f \u043e\u0442\u043d\u043e\u0441\u044f\u0449\u0438\u0435\u0441\u044f \u043a \n \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u043c\u0443 \u0442\u0438\u043f\u0443. \n- [EDUSCHL-19507](https://jira.bars.group/browse/EDUSCHL-19507)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 plugins_info \u043f\u0440\u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043f\u0438\u0441\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434.\n\n\n## [0.7.1] - 2023-12-02\n\n\u0414\u043e\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 plugins_info \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u043c\u0435\u0442\u043e\u0434\u0430 _get_loggable_models.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-19576](https://jira.bars.group/browse/EDUSCHL-20954)\n PATCH \u0414\u043e\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 plugins_info \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u043c\u0435\u0442\u043e\u0434\u0430 _get_loggable_models.\n\n\n## [0.7.0] - 2023-12-02\n\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043b\u043e\u0433\u043e\u0432 \u0434\u043b\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u044f. \n\u0414\u043e\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u044b \u0448\u0430\u0431\u043b\u043e\u043d\u044b \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0424\u0443\u043d\u043a\u0446\u0438\u0439 \u0441\u0431\u043e\u0440\u0430 \u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445.\n\u041d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u0434\u043b\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0430 \u043d\u043e\u0432\u043e\u0439 \u0421\u0443\u0449\u043d\u043e\u0441\u0442\u0438.\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 plugins_info \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u043c\u0435\u0442\u043e\u0434\u0430 _get_loggable_models.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20072](https://jira.bars.group/browse/EDUSCHL-20072)\n MINOR - \u0420\u0435\u0435\u0441\u0442\u0440 \u0441\u0431\u043e\u0440\u0430 \u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438. \u041b\u043e\u0433\u0438\n\n- [EDUSCHL-20954](https://jira.bars.group/browse/EDUSCHL-20954)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u0434\u043b\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0430 \u043d\u043e\u0432\u043e\u0439 \u0421\u0443\u0449\u043d\u043e\u0441\u0442\u0438.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20954](https://jira.bars.group/browse/EDUSCHL-20954)\n PATCH \u041f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0430 \u0434\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 \u0424\u0443\u043d\u043a\u0446\u0438\u0439 \u0441\u0431\u043e\u0440\u0430 \u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445.\n\n- [EDUSCHL-19576](https://jira.bars.group/browse/EDUSCHL-19576)\n PATCH - \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 plugins_info \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u043c\u0435\u0442\u043e\u0434\u0430 _get_loggable_models.\n\n\n## [0.6.10] - 2023-11-30\n\n\u041f\u0440\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043f\u0440\u0435\u0444\u0438\u043a\u0441\u0430 RDM_EXPORT_ENTITY_ID_PREFIX \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 BaseExportDataFunctionHelper \n\u0443\u0447\u0442\u0435\u043d\u044b \u043f\u043e\u043b\u044f \u0438\u0437 get_ignore_prefix_key_fields.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20961](https://jira.bars.group/browse/EDUSCHL-20961)\n PATCH - \u041f\u0440\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043f\u0440\u0435\u0444\u0438\u043a\u0441\u0430 RDM_EXPORT_ENTITY_ID_PREFIX \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 BaseExportDataFunctionHelper \u0443\u0447\u0442\u0435\u043d\u044b \u043f\u043e\u043b\u044f \n - \u0438\u0437 get_ignore_prefix_key_fields.\n\n\n## [0.6.9] - 2023-11-30\n\n\u0414\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u0442\u0432\u0435\u0442\u0430 \u043f\u0440\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0435 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u0420\u0412\u0414.\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u043c\u0435\u043d\u0435\u0434\u0436-\u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0441\u0442\u0430\u0442\u0443\u0441\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u0420\u0412\u0414 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c uploader-client.\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u043f\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0442\u0435\u0441\u0442\u043e\u0432 \u0420\u0412\u0414.\n\u0412 BaseCollectingFunctionTestCase \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043c\u0435\u0442\u043e\u0434 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u043e\u0434\u044d\u0442\u0430\u043f\u043e\u0432 \u0441\u0431\u043e\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20946](https://jira.bars.group/browse/EDUSCHL-20946)\n PATCH - \u0414\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u0442\u0432\u0435\u0442\u0430 \u043f\u0440\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0435 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u0420\u0412\u0414.\n\n- [EDUSCHL-20946](https://jira.bars.group/browse/EDUSCHL-20946)\n MINOR - \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u043c\u0435\u043d\u0435\u0434\u0436-\u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0441\u0442\u0430\u0442\u0443\u0441\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u0420\u0412\u0414 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c uploader-client.\n\n- [EDUSCHL-20951](https://jira.bars.group/browse/EDUSCHL-20951)\n MINOR - \u0418\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u043f\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0442\u0435\u0441\u0442\u043e\u0432 \u0420\u0412\u0414\n\n- [EDUSCHL-20951](https://jira.bars.group/browse/EDUSCHL-20951)\n MINOR - \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043c\u0435\u0442\u043e\u0434 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u043e\u0434\u044d\u0442\u0430\u043f\u043e\u0432 \u0441\u0431\u043e\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445\n\n\n## [0.6.8] - 2023-11-24\n\n\u0421\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438 \u0420\u0412\u0414 TELECOM.\n\u0420\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0435\u0439 modified \u0443 \u043d\u0435\u0432\u044b\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439.\n\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0438 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 \u0441\u0442\u0430\u0440\u043e\u0433\u043e \u0438 \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430.\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432 \u0420\u0412\u0414 \u0447\u0435\u0440\u0435\u0437 Proxy API uploader_client.\n\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043b\u043e\u0433\u043e\u0432 \u0434\u043b\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20854](https://jira.bars.group/browse/EDUSCHL-20854)\n MINOR - \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0447\u0435\u0440\u0435\u0437 Proxy API.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20808](https://jira.bars.group/browse/EDUSCHL-20808)\n MINOR - \u041f\u0440\u0438 \u0441\u0431\u043e\u0440\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 collect_latest_models_data \u0441\u0436\u0438\u0433\u0430\u0435\u0442\u0441\u044f \u043f\u0430\u043c\u044f\u0442\u044c\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20884](https://jira.bars.group/browse/EDUSCHL-20884)\n PATCH - \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u043b\u044f rank \u043d\u0430 rank_contact \u0432 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438 \u0420\u0412\u0414 TelecomEntity.\n\n- [EDUSCHL-20711](https://jira.bars.group/browse/EDUSCHL-20711)\n PATCH - \u0414\u043e\u0440\u0430\u0431\u043e\u0442\u0430\u043d \u043c\u0435\u0442\u043e\u0434 BaseExportLatestEntitiesData._update_model_modified_field.\n\n- [EDUSCHL-20858](https://jira.bars.group/browse/EDUSCHL-20858)\n PATCH - \u0412\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0438 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 \u0441\u0442\u0430\u0440\u043e\u0433\u043e \u0438 \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430.\n\n\n## [0.6.7] - 2023-11-01\n\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043c\u0438\u043a\u0441\u0438\u043d EntityEnumRegisterMixin \u0434\u043b\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 \u0432 RegionalDataMartEntityEnum.\n\u041c\u0438\u043a\u0441\u0438\u043d ModelEnumRegisterMixin \u0434\u043b\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0432 RegionalDataMartModelEnum.\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u043c\u0435\u0442\u043e\u0434\u044b \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0438 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUCLLG-7632](https://jira.bars.group/browse/EDUCLLG-7632)\n PATCH - \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0438 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 \u0432 \u043c\u043e\u0434\u0435\u043b\u044f\u0445-\u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f\u0445.\n\n\n## [0.6.6] - 2023-10-16\n\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u043a\u043b\u0430\u0441\u0441 \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0424\u0443\u043d\u043a\u0446\u0438\u0439 \u0441\u0431\u043e\u0440\u0430, \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u044f\u0432\u043d\u0430\u044f \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c Django.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20684](https://jira.bars.group/browse/EDUSCHL-20684)\n PATCH - \u0411\u0430\u0437\u043e\u0432\u044b\u0439 \u043a\u043b\u0430\u0441\u0441 \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0424\u0443\u043d\u043a\u0446\u0438\u0439 \u0441\u0431\u043e\u0440\u0430;\n- [EDUSCHL-20684](https://jira.bars.group/browse/EDUSCHL-20684)\n PATCH - \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c Django.\n\n\n## [0.6.5] - 2023-10-11\n\n\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043c\u0435\u0442\u043e\u0434\u0430 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043b\u043e\u0433\u043e\u0432 \u0432\u044b\u043d\u0435\u0441\u0435\u043d\u043e \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u043c\u0435\u0442\u043e\u0434 \u0434\u043b\u044f \u0438\u0437\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0432\u0441\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u0432 \u043e\u0434\u043d\u043e\u043c \u043a\u043b\u0430\u0441\u0441\u0435.\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUCLLG-7634](https://jira.bars.group/browse/EDUCLLG-7634)\n PATCH - \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043c\u0435\u0442\u043e\u0434\u0430 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043b\u043e\u0433\u043e\u0432 \u0432\u044b\u043d\u0435\u0441\u0435\u043d\u043e \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u043c\u0435\u0442\u043e\u0434 \u0434\u043b\u044f \u0438\u0437\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0432\u0441\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u0432 \u043e\u0434\u043d\u043e\u043c \u043a\u043b\u0430\u0441\u0441\u0435;\n\n- [EDUSCHL-20571](https://jira.bars.group/browse/EDUSCHL-20571)\n PATCH - \u041f\u0440\u0438 \u0441\u0431\u043e\u0440\u0435 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0443\u0436\u0435 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0435 \u0441\u0431\u043e\u0440\u044b \u0438 \u043d\u043e\u0432\u044b\u0439 \u0441\u0431\u043e\u0440 \u043f\u043e \u043c\u043e\u0434\u0435\u043b\u0438 \u043d\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f.\n\n- [EDUSCHL-20571](https://jira.bars.group/browse/EDUSCHL-20571)\n PATCH - \u0423\u043a\u0430\u0437\u0430\u043d\u0438\u0435 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0438-\u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 RegionalDataMartEntityEnum;\n\n- [EDUSCHL-20571](https://jira.bars.group/browse/EDUSCHL-20571)\n PATCH - \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043c\u043e\u0434\u0435\u043b\u0438-\u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f RegionalDataMartEntityEnum \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0420\u0412\u0414 \u0434\u043b\u044f \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0445 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439.\n\n\n## [0.6.4] - 2023-10-09\n\n\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0430 \u0441\u0431\u043e\u0440\u043a\u0438, \u0438\u0437-\u0437\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0444\u0430\u0439\u043b\u044b \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 *.py-tpl \u043d\u0435 \u043f\u043e\u043f\u0430\u0434\u0430\u043b\u0438 \u0432 \u043f\u0430\u043a\u0435\u0442.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUCLLG-7634](https://jira.bars.group/browse/EDUCLLG-7634)\n PATCH - \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 *.py-tpl \u0432 \u043f\u0430\u043a\u0435\u0442 \u043f\u0440\u0438 \u0441\u0431\u043e\u0440\u043a\u0435.\n\n\n## [0.6.3] - 2023-10-05\n\n\u0414\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043c\u043e\u0434\u0435\u043b\u0438 AbstractCollectDataCommandProgress \u0438 \u043a\u043b\u0430\u0441\u0441\u0430 BaseFirstCollectModelsDataCommandsGenerator.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20350](https://jira.bars.group/browse/EDUSCHL-20350)\n PATCH - \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 id \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u043a\u043e\u043c\u0430\u043d\u0434 \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 BaseFirstCollectModelsDataCommandsGenerator.\n - \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u043f\u043e\u043b\u044f created, generation_id \u0438 institute_ids \u0432 \u043c\u043e\u0434\u0435\u043b\u044c AbstractCollectDataCommandProgress.\n\n\n## [0.6.2] - 2023-10-04\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUCLLG-7942](https://jira.bars.group/browse/EDUCLLG-7942)\n PATCH \u0414\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0441\u0431\u043e\u0440\u043a\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438.\n\n\n## [0.6.1] - 2023-10-02\n\n\u0414\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f BaseExportDataFunctionHelper.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20535](https://jira.bars.group/browse/EDUSCHL-20535)\n PATCH - \u0412 \u043b\u043e\u0433\u0438\u043a\u0435 BaseExportDataFunctionHelper \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043e\u0447\u0438\u0441\u0442\u043a\u0430 \u0441\u0442\u0440\u043e\u043a\u043e\u0432\u044b\u0445 \u043f\u043e\u043b\u0435\u0439 \u043e\u0442 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0445 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432.\n\n\n## [0.6.0] - 2023-09-29\n\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f set_failed_status_suspended_exporting_data_stages \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0438 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0430 \u0437\u0430\u0432\u0438\u0441\u0448\u0438\u0445 \u044d\u0442\u0430\u043f\u043e\u0432/\u043f\u043e\u0434\u044d\u0442\u0430\u043f\u043e\u0432 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u0432 \u0441\u0442\u0430\u0442\u0443\u0441 (FAILED).\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f set_failed_status_suspended_collecting_data_stages \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0438 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0430 \u0437\u0430\u0432\u0438\u0441\u0448\u0438\u0445 \u044d\u0442\u0430\u043f\u043e\u0432/\u043f\u043e\u0434\u044d\u0442\u0430\u043f\u043e\u0432 \u0441\u0431\u043e\u0440\u0430 \u0432 \u0441\u0442\u0430\u0442\u0443\u0441 (FAILED).\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20487](https://jira.bars.group/browse/EDUSCHL-20487)\n MINOR \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f ```set_failed_status_suspended_exporting_data_stages```.\n\n- [EDUSCHL-20487](https://jira.bars.group/browse/EDUSCHL-20487)\n MINOR \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f ```set_failed_status_suspended_collecting_data_stages```.\n\n## [0.5.9] - 2023-09-25\n\n\u041f\u043e\u0432\u044b\u0448\u0435\u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f wheel\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUCLLG-7939](https://jira.bars.group/browse/EDUCLLG-7939)\n PATCH - \u041f\u043e\u0432\u044b\u0448\u0435\u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f wheel\n\n## [0.5.8] - 2023-09-13\n\n\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0430 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0441\u043f\u0438\u0441\u043a\u0430 \u0432\u044b\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0445 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439\nBaseExportLatestEntitiesData._set_description_to_async_task.\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20334](https://jira.bars.group/browse/EDUSCHL-20334)\n PATCH - \u0411\u0430\u0433 \u0441 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u043f\u043e\u043b\u044f description \u0432 BaseExportLatestEntitiesData._set_description_to_async_task.\n\n## [0.5.7] - 2023-09-12\n\n\u0411\u0430\u0433 \u0444\u0438\u043a\u0441 \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f BaseExportLatestEntitiesData.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20435](https://jira.bars.group/browse/EDUSCHL-20435)\n PATCH - BaseExportLatestEntitiesData \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0443 \u043d\u0438 \u0440\u0430\u0437\u0443 \u043d\u0435\u0432\u044b\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0445 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439.\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20435](https://jira.bars.group/browse/EDUSCHL-20435)\n PATCH - \u0411\u0430\u0433 \u0441 \u0443\u0441\u043b\u043e\u0432\u0438\u0435\u043c \u0432 \u0444\u0438\u043b\u044c\u0442\u0440\u0435 \u0432 BaseExportLatestEntitiesData._update_model_modified_field.\n\n\n## [0.5.6] - 2023-09-06\n\n\u0414\u043e\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u044b \u043a\u043b\u0430\u0441\u0441\u044b BaseExportLatestEntitiesData \u0438 BaseExportEntitiesData.\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20435](https://jira.bars.group/browse/EDUSCHL-20435)\n PATCH - \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e \u043d\u0430\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0435 \u043b\u0435\u0432\u043e\u0439 \u0433\u0440\u0430\u043d\u0438\u0446\u044b \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 ExportLatestEntitiesData;\n - \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0438\u043b\u0438 \u0433\u043e\u0442\u043e\u0432\u044b\u0445 \u043a \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0435 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439;\n - \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 update_modified, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442 \u043f\u043e\u043b\u0435 modified \u0443 \u0441\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439,\n \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043d\u0435\u0432\u044b\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438.\n\n\n## [0.5.5] - 2023-09-04\n\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 pip \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u0430\u043a\u0435\u0442\u0430.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-19919](https://jira.bars.group/browse/EDUSCHL-19919)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 pip \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u0430\u043a\u0435\u0442\u0430.\n\n\n## [0.5.4] - 2023-09-04\n\nsplit_by_days_count \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043b \u0432 split_by_quantity.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20302](https://jira.bars.group/browse/EDUSCHL-20302)\n PATCH split_by_days_count \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043b \u0432 split_by_quantity.\n\n\n## [0.5.3] - 2023-09-03\n\n\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u044b \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0434\u043f\u0435\u0440\u0438\u043e\u0434\u043e\u0432 \u0432 generate_first_collect_models_data_script.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20302](https://jira.bars.group/browse/EDUSCHL-20302)\n PATCH \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u044b \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0434\u043f\u0435\u0440\u0438\u043e\u0434\u043e\u0432 \u0432 generate_first_collect_models_data_script.\n\n\n## [0.5.2] - 2023-08-28\n\n\u0417\u0430\u043c\u0435\u043d\u0430 \u0431\u0430\u0437\u043e\u0432\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20344](https://jira.bars.group/browse/EDUSCHL-20344)\n PATCH \u0417\u0430\u043c\u0435\u043d\u0430 \u0431\u0430\u0437\u043e\u0432\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043d\u0430 WebEduLazySavingPredefinedQueueFunction.\n\n\n## [0.5.1] - 2023-08-22\n\n\u0414\u043b\u044f BaseFirstCollectModelsDataCommandsGenerator \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0443\u0441\u043b\u043e\u0432\u0438\u0435 - \u0435\u0441\u043b\u0438 \u043d\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d creating_trigger_models,\n\u0442\u043e \u0441\u043b\u043e\u0432\u0430\u0440\u044c \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0434\u043b\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u043d\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f.\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20227](https://jira.bars.group/browse/EDUSCHL-20227)\n PATCH \u0415\u0441\u043b\u0438 \u0443 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438 \u043d\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d creating_trigger_models, \u0442\u043e \u0432 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0435 BaseFirstCollectModelsDataCommandsGenerator\n \u043d\u0435 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u043b\u043e\u0432\u0430\u0440\u044c \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438 \u0434\u043b\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b.\n\n- [EDUSCHL-20229](https://jira.bars.group/browse/EDUSCHL-20229)\n PATCH \u0415\u0441\u043b\u0438 \u0443 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438 \u043d\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d creating_trigger_models, \u0442\u043e \u0432 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0435 BaseFirstCollectModelsDataCommandsGenerator\n \u043d\u0435 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u043b\u043e\u0432\u0430\u0440\u044c \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438 \u0434\u043b\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b.\n\n\n## [0.5.0] - 2023-08-19\n\n\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c WebEduEntityValueCache \u0431\u044b\u043b\u0430 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0435\u043d\u0430 \u0432 EntityCache \u0432 function_tools.\n\n### \u0423\u0434\u0430\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20277](https://jira.bars.group/browse/EDUSCHL-20277)\n MINOR \u0423\u0434\u0430\u043b\u0435\u043d WebEduEntityValueCache.\n\n- [EDUSCHL-20277](https://jira.bars.group/browse/EDUSCHL-20277)\n MINOR \u0423\u0434\u0430\u043b\u0435\u043d WebEduEntityCacheExtended.\n\n\n## [0.4.7] - 2023-08-17\n\n\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0441\u0442\u0438 \u0441\u0431\u043e\u0440\u0430/\u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u043c\u043e\u0434\u0435\u043b\u0435\u0439/\u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439. \u0412\u043c\u0435\u0441\u0442\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0435 \u043f\u043e\u043b\u0435 `order_number` \u043c\u043e\u0434\u0435\u043b\u0438-\u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f `TitledModelEnum`. \u0412 \u0441\u043b\u0443\u0447\u0430\u0435, \u043a\u043e\u0433\u0434\u0430 `order_number` \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d, \u0442.\u0435. \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e `DEFAULT_ORDER_NUMBER`, \u043c\u043e\u0434\u0435\u043b\u044c/\u0441\u0443\u0449\u043d\u043e\u0441\u0442\u044c \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u0438\u0437 \u0441\u0431\u043e\u0440\u0430/\u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-19164](https://jira.bars.group/browse/EDUSCHL-19164)\n MINOR \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0441\u0442\u0438 \u0441\u0431\u043e\u0440\u0430/\u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u043c\u043e\u0434\u0435\u043b\u0435\u0439/\u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439.\n\n## [0.4.6] - 2023-08-16\n\n\u0423\u0434\u0430\u043b\u0435\u043d \u043b\u0438\u0448\u043d\u0438\u0439 \u0432\u044b\u0437\u043e\u0432 \u043c\u0435\u0442\u043e\u0434\u0430 _prepare_logs\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-19991](https://jira.bars.group/browse/EDUSCHL-19991)\n PATCH \u0443\u0434\u0430\u043b\u0435\u043d \u043b\u0438\u0448\u043d\u0438\u0439 \u0432\u044b\u0437\u043e\u0432 \u043c\u0435\u0442\u043e\u0434\u0430 ```_prepare_logs``` \u0432 \u043c\u0435\u0442\u043e\u0434\u0435 ```__init__``` \u043a\u043b\u0430\u0441\u0441\u0430 ```BaseCollectingCalculatedExportedDataFunctionCacheStorage```\n\n## [0.4.5] - 2023-08-09\n\n\u041e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u043b\u043e\u0433\u043e\u0432 \u043e\u0442\u043d\u043e\u0441\u044f\u0449\u0438\u0445\u0441\u044f \u043a \u043e\u0434\u043d\u043e\u043c\u0443 \u043e\u0431\u044a\u0435\u043a\u0442\u0443\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-19991](https://jira.bars.group/browse/EDUSCHL-19991)\n PATCH \u041d\u043e\u0432\u044b\u0439 \u043c\u0438\u043a\u0441\u0438\u043d ```ReformatLogsMixin``` , \u043d\u043e\u0432\u043e\u0435 \u043f\u043e\u043b\u0435 is_merge_logs \u0438 \u043d\u043e\u0432\u044b\u0439 \u043c\u0435\u0442\u043e\u0434 _merge_logs \u0443 \u043a\u043b\u0430\u0441\u0441\u0430 ```BaseCollectingExportedDataFunctionCacheStorage```\n\n## [0.4.4] - 2023-08-12\n\n\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u0431\u0430\u0433 \u0441 timedelta\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20200](https://jira.bars.group/browse/EDUSCHL-20200)\n PATCH \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u0431\u0430\u0433 \u0441 timedelta.\n\n## [0.4.3] - 2023-08-12\n\n\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u0431\u0430\u0433 \u0441 timedelta\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20200](https://jira.bars.group/browse/EDUSCHL-20200)\n PATCH \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u0431\u0430\u0433 \u0441 timedelta.\n\n## [0.4.2] - 2023-08-11\n\n\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0448\u0438\u0431\u043a\u0438 \u0443\u0447\u0435\u0442\u0430 \u043c\u0438\u043b\u043b\u0438\u0441\u0435\u043a\u0443\u043d\u0434, \u043f\u0440\u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 \u0441\u0431\u043e\u0440\u0430 \u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445. \u0412 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 chunk_size \u0432\u0441\u0435\n\u0440\u0430\u0432\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0435\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e. \u042d\u0442\u043e \u0441\u0432\u044f\u0437\u0430\u043d\u043e \u0441 \u0442\u0435\u043c, \u0447\u0442\u043e \u043f\u0440\u0438 \u043e\u0431\u043d\u0443\u043b\u0435\u043d\u0438\u0438 \u043c\u0438\u043b\u043b\u0438\u0441\u0435\u043a\u0443\u043d\u0434 \u0437\u0430 \u043e\u0434\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u044c\u044e \u0432\u044b\u0431\u043e\u0440\u043a\u0438 \u043c\u043e\u0436\u0435\u0442 \u0441\u043a\u0440\u044b\u0432\u0430\u0442\u044c\u0441\u044f\n\u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u044b \u0438\u043b\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u0441\u043a\u0440\u0438\u043f\u0442\u0430\u043c\u0438. \u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0440\u0435\u0448\u0438\u0442\u044c \u0432 \u0431\u0443\u0434\u0443\u0449\u0435\u043c, \u043d\u043e\n\u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u0434\u043b\u044f \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438.\n\u0412 \u0432\u044b\u0431\u043e\u0440\u043a\u0430\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0438 \u043b\u043e\u0433\u043e\u0432 \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u0430 \u0432\u0445\u043e\u0434\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0430\u044f \u0433\u0440\u0430\u043d\u0438\u0446\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0430 \u0432\u044b\u0431\u043e\u0440\u043a\u0438.\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)\n PATCH \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0430 \u0443\u0447\u0435\u0442\u0430 \u043c\u0438\u043b\u043b\u0438\u0441\u0435\u043a\u0443\u043d\u0434 \u0432 \u0432\u044b\u0431\u043e\u0440\u043a\u0430\u0445 \u043f\u0440\u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 \u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u043c\u0438 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u0430 \u0438 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445.\n\n- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)\n PATCH \u0412 \u0432\u044b\u0431\u043e\u0440\u043a\u0430\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0438 \u043b\u043e\u0433\u043e\u0432 \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u0430 \u0432\u0445\u043e\u0434\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0430\u044f \u0433\u0440\u0430\u043d\u0438\u0446\u0430 \u043f\u0435\u0440\u0438\u043e\u0434\u0430 \u0432\u044b\u0431\u043e\u0440\u043a\u0438.\n\n## [0.4.1] - 2023-08-09\n\n\u0414\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u043b\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)\n PATCH \u0414\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u043b\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439.\n\n## [0.4.0] - 2023-08-09\n\n\u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u043e\u0431\u0449\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u044b \u0434\u043b\u044f \u043a\u043e\u043c\u0430\u043d\u0434 \u0441\u0431\u043e\u0440\u0430/\u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20200](https://jira.bars.group/browse/EDUSCHL-20200)\n MINOR \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u043e\u0431\u0449\u0438\u0435 \u043c\u043e\u0434\u0435\u043b\u0438, \u043c\u0435\u0442\u043e\u0434\u044b \u0438 \u043a\u043b\u0430\u0441\u0441\u044b.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20200](https://jira.bars.group/browse/EDUSCHL-20200)\n MINOR \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u043e\u0431\u0449\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u044b \u0434\u043b\u044f \u043a\u043e\u043c\u0430\u043d\u0434 \u0441\u0431\u043e\u0440\u0430/\u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430.\n\n## [0.3.3] - 2023-08-08\n\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u043f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0432 \u0440\u0430\u043d\u0435\u0440\u0435 \u0434\u043b\u044f \u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0438 \u043f\u0430\u043c\u044f\u0442\u0438.\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u043f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0432 \u0440\u0430\u043d\u0435\u0440\u0435 \u0434\u043b\u044f \u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0438 \u043f\u0430\u043c\u044f\u0442\u0438.\n\n## [0.3.2] - 2023-08-08\n\n\u041e\u0442\u043a\u0430\u0442 \u043a \u0441\u043f\u0438\u0441\u043a\u0430\u043c \u043d\u0435\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0445 \u043b\u043e\u0433\u043e\u0432. \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0430 \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0447\u0430\u043d\u043a\u043e\u0432 \u043b\u043e\u0433\u043e\u0432.\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)\n PATCH \u041e\u0442\u043a\u0430\u0442 \u043a \u0441\u043f\u0438\u0441\u043a\u0430\u043c \u043d\u0435\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0445 \u043b\u043e\u0433\u043e\u0432.\n\n## [0.3.1] - 2023-08-08\n\n\u041e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u043d\u0435\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0445 \u043b\u043e\u0433\u043e\u0432 \u0432 \u0432\u0438\u0434\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)\n PATCH \u041e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u043d\u0435\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0445 \u043b\u043e\u0433\u043e\u0432 \u0432 \u0432\u0438\u0434\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430.\n\n## [0.3.0] - 2023-08-06\n\n\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u043e\u0442\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0433\u043e \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u0435\u0448\u0435\u0439. \u0417\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0434 \u043d\u0430\u0447\u0430\u043b\u043e\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c\u043e\u0433\u043e\n\u043e\u0431\u044a\u0435\u043a\u0442\u0430.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)\n PATCH \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u043e\u0442\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043a\u0435\u0448\u0435\u0439 \u0445\u0435\u043b\u043f\u0435\u0440\u043e\u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0439.\n\n- [EDUSCHL-20235](https://jira.bars.group/browse/EDUSCHL-20235)\n MINOR \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u044d\u0442\u0430\u043f\u0430 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0443 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u043c\u043e\u0434\u0435\u043b\u0435\u0439.\n\n## [0.2.2] - 2023-08-06\n\n\u0414\u043b\u044f API \u0420\u0412\u0414 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u0442\u0438\u043f\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-19920](https://jira.bars.group/browse/EDUSCHL-19920)\n PATCH \u0414\u043b\u044f API \u0420\u0412\u0414 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u0442\u0438\u043f\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445.\n\n## [0.2.1] - 2023-08-05\n\n\u0412\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u0430\u043a\u0435\u0442\u0430 \u043f\u043e\u0441\u043b\u0435 \u0443\u0445\u043e\u0434\u0430 \u0441 poetry.\n\n### \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-19919](https://jira.bars.group/browse/EDUSCHL-19919)\n PATCH \u0412\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u0430\u043a\u0435\u0442\u0430 \u043f\u043e\u0441\u043b\u0435 \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 poetry.\n\n## [0.2.0] - 2023-08-04\n\n\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0439 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0424\u0443\u043d\u043a\u0446\u0438\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0432 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-19919](https://jira.bars.group/browse/EDUSCHL-19919)\n MINOR \u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0435\u043d\u044b \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0424\u0443\u043d\u043a\u0446\u0438\u0439 \u0438\u0437 \u042d\u0428.\n\n## [0.1.4] - 2023-08-03\n\n\u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u0440\u0430\u043d\u0435\u0435 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0438\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-20209](https://jira.bars.group/browse/EDUSCHL-20209)\n PATCH \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0438.\n\n- [EDUSCHL-20209](https://jira.bars.group/browse/EDUSCHL-20209)\n PATCH \u0414\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438.\n\n- [EDUSCHL-20200](https://jira.bars.group/browse/EDUSCHL-20200)\n \u0417\u0430\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u044b \u0432\u0435\u0440\u0441\u0438\u0438 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439, \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 uploader-client\n\n## [0.1.3] - 2023-07-24\n\n\u0414\u043b\u044f \u0440\u0430\u0441\u043a\u0430\u0442\u043a\u0438 \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0439 \u043d\u0430 \u042d\u0428, \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0437\u0430\u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 initial-\u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0438.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-19919](https://jira.bars.group/browse/EDUSCHL-19919)\n PATCH \u0412\u044b\u043d\u0435\u0441\u0442\u0438 \u043e\u0431\u0449\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0420\u0412\u0414 \u0438\u0437 \u042d\u0428 \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u042d\u041a.\n\n## [0.1.2] - 2023-07-23\n\n\u0412\u043d\u0435\u0441\u0435\u043d\u044b \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0437 \u042d\u0428 \u0432 educommon.\n\n### \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\n- [EDUSCHL-19919](https://jira.bars.group/browse/EDUSCHL-19919)\n PATCH \u0412\u044b\u043d\u0435\u0441\u0442\u0438 \u043e\u0431\u0449\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0420\u0412\u0414 \u0438\u0437 \u042d\u0428 \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u042d\u041a.\n\n## [0.1.0] - 2023-07-18\n\n\u0412\u043d\u0435\u0441\u0435\u043d\u044b \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0437 \u042d\u0428 \u0432 educommon.\n\n### \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e\n\n- [EDUSCHL-19919](https://jira.bars.group/browse/EDUSCHL-19919)\n MINOR \u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 \u0420\u0412\u0414 \u0438\u0437 \u042d\u0428.\n",
"bugtrack_url": null,
"license": null,
"summary": "\u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 \u0420\u0435\u0433\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0432\u0438\u0442\u0440\u0438\u043d\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445",
"version": "3.4.5",
"project_urls": null,
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "6d9b786862f5f2dd8380ffd9df960b7c328dfa553b42a7fa6be2c3433ce85451",
"md5": "8936edac0f6062ea95c5ec1f450856ed",
"sha256": "b1d479c591efca7dc221c8b040596b09d0f8719c6c5a6e1c91062cf6ff46df07"
},
"downloads": -1,
"filename": "edu_rdm_integration-3.4.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8936edac0f6062ea95c5ec1f450856ed",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 184705,
"upload_time": "2024-11-02T07:44:09",
"upload_time_iso_8601": "2024-11-02T07:44:09.384301Z",
"url": "https://files.pythonhosted.org/packages/6d/9b/786862f5f2dd8380ffd9df960b7c328dfa553b42a7fa6be2c3433ce85451/edu_rdm_integration-3.4.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "28c1ac6fd95902bb4007f9cbc61d4e1aeb6b94dfa5e81d8ac08c8d90273ce178",
"md5": "c2c2c07b70ac954e55968db82010f766",
"sha256": "b15419c3a569188d9fdae6ed1ded1cb31da2403b122bd2bd72aec63727a30f30"
},
"downloads": -1,
"filename": "edu-rdm-integration-3.4.5.tar.gz",
"has_sig": false,
"md5_digest": "c2c2c07b70ac954e55968db82010f766",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 140443,
"upload_time": "2024-11-02T07:44:12",
"upload_time_iso_8601": "2024-11-02T07:44:12.227398Z",
"url": "https://files.pythonhosted.org/packages/28/c1/ac6fd95902bb4007f9cbc61d4e1aeb6b94dfa5e81d8ac08c8d90273ce178/edu-rdm-integration-3.4.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-02 07:44:12",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "edu-rdm-integration"
}