Апдейт разработки DCG | 8 Августа 2023
ᴠᴏɴᴄᴀɴПодпишись на Dash on Pulse | Читать прошлый апдейт от 25 Июля 2023

В связи с тем, что большая часть команда ушла в отпуск, работоспособность команды составляла около 50%, но все равно был достигнут значительный прогресс.
Versioning: Sam сообщает о хорошем прогрессе и достижении критической точки в этом процессе. Ivan и Igor помогали с исправлениями, связанными с версиями.
State Sync: Wisdom (GroveDB) .
Rust SDK: Djavid
Masternode voting: Anton
Dashmate: Ivan

Dash Platform

Djavid Gabiyan рассказал что 2 из 3 человек, взяли отпуск, оставив его в качестве основного участника в этот период.
В доказательный ответ gRPC, Lucazs добавил некоторую информацию включая Block ID. И поработал над верификацией пруфов легкого клиента Drive, но работа еще будет продолжаться.
Djavid же дополнял gRPS недостоющими точками которые были описаны ранее в proto файлах, на которых в целом построен клиент как на мета языке, чтобы достичь некотого стандартизированного API. После добавления точек, они так же были протестированы и работают без нареканий.
Работа также велась над DAPI клиентом Rust, Evgeny Fomin посвятил этой задаче значительные усилия в преддверии своего отпуска.
На этой неделе были достигнуты значительные успехи в области версионирования - важнейшего аспекта развития. И пока часть команды работала над версионированием, так же паралельно велась разработка фич. Так как версионирование, связанно с основными структурами данных и протоколом, интеграция новых функций в ветку разработки была приостановлена. И весь новый функционал сначала будет подготовлен для слияния, которое произойдет после того как работа над версионированием будет полностью закончена.
Anton также затронул тему голосования мастернод - системы, призванной расширить возможности пользователей платформы. Эта инновационная функция позволяет мастернодам голосовать по конкретным вопросам, создавая эффективную систему участия. Anton отметил, что система голосования мастернод имеет особое значение для предстоящего запуска юзернеймов.
Подробнее почитать об этом можно в прошлом ревью
Была найдена и устранена ошибка, которая заключалась в том, что вместо точного сообщения что data контракт не существует, выдавалась ошибка. Sam оперативно устранил этот сбой, благодаря чему система теперь предоставляет точную и понятную информацию о том, что контракты несуществуют.
Ivan Shumkov работал над удалением дублированных системных data контрактах, чтобы DPP, ABCI и Drive использовали единый источник информации, это была некоторая подготовительная работа перед версионированием data тригеров для Drive ABCI. То есть добавки дополнительную логику проверки контрактов, такую как DPNS, DashPay, голосование мастернод и другие фичи. В будущем люди смогут сами настраивать тригеры для свои контрактов.
Еще Ivan занимался проверкой конструкций data контрактов и проверкой самой структуры, устраняя ошибки и пересматривая некоторые области для обеспечения надежности системы перед переходом к версионированию.
Кроме того, Ivan рассказал о совместной работе в рамках Dash Mate. Он поблагодарил Михаила из команды инкубатора за его вклад, который заключался в исправлении проблем с регистрацией мастернод и доработке процесса сборки сервисов, созданных в Dash. Ivan сказал что появилась расширенная кастомизация процесса сборки, позволяющую пользователям выбирать конкретные компоненты для сборки в соответствии со своими требованиями. Дополнительно был проведен рефакторинг конфигурации системы в dashmate для v0.25, исправлен createIpAndPortsForm в dashmate, а так же обновление инструмента развертывания с учетом последних изменений в dashmate.
Wisdom работал над state sync, который создан чтобы помогать новым нодам быстрее синхронизироваться с текущим state, за счет того что синхронизация будет копировать state с других узлов, а не обрабатывать весь блокчейн.
Со стороны Merk команда уже закончила функции создания и восстановления случайных chank, но во время работы над GroveDB стало понятно, что текущая система не имеет пруфов высоты, и необходимо их введение для генерации chunk, а также настройка логики восстановления Merk чтобы она учитывала высоту. Так же в процессе реализации слой, который позволить реплицировать состояние между Tenderdash, GroveDB и Merk.
Sam отмечает, что для тех кто понимает в этом, ясно, что это чрезвычайно сложно, и Wisdom проделывает потрясающую работу. Реализуемая система State Sync немного похожа на работу торрентов, вы сможете брать состояние из множества различных нод одновременно, реплецировать его, поэтому новые ноды смогут появляться очень быстро, и в отличие от торрента, в планах построить state как массивное дерево из GroveDB.

Версионирование, являющееся важнейшим компонентом развития проекта, достигло нескольких рубежей. Среди них - успешное прохождение стратегических тестов, представляющих собой сложный набор внутренних тестов, включающих различные действия, такие как создание контрактов с данными, изменение версий и объединение данных. После нескольких недель кропотливой работы тесты, включающие в себя множество сценариев, полностью работоспособны. В то время как стратегические тесты были успешно завершены, некоторые тесты в ABCI проваливаются, но по причинам связанным не с функциональностью ABCI, а с некорректными значениями тестов. Sam уверенно заявляет, что надеется на скорое устранение этих мелких несоответствий.
Хотя теоретически DPP не нужен для back-end, он все же имеет ценность благодаря участию в других тестах JavaScript, проверяющих функциональность системы. Igor взял на себя задачу по настройке этих взаимодействий, что стало последним шагом на пути к полной тестовой проверке.
Во время версионирования, код был так же почищен и оптимизирован, чтобы при дальнейшей работы не было проблем.
Dash Core
Odysseas Gabrielides в своем рассказал о последних достижениях команды и о предстоящих интересных событиях.
Количество зарегистрированных Evonodes, с момента последнего обзора, удвоилось с 33 до 58.
31 Июля 2023 команда успешно выпустила Dash Core v19.3, содержащий ряд мелких исправлений и корректировок. Более подробную информацию можно найти в записках к релизу на GitHub. Продолжается активная разработка v20.
- Изменение выплаты для EvoNodes с четырех блоков в ряд до одного блока, успешно интегрировано.
- Бэкпортится GUIX; идет замена gitian
- Интеграция усовершенствованного хард форка
- Интеграция Sentinel в Core (планируется полностью отказаться от Sentinel и интегрировать его функциональность в Core)
После того как работа над интеграцией Credit Asset Locks, которые разрабатывалось уже довольно долго, завершена пару недель назад. Разработчики начали тестировать и нашли несколько мест требующих исправление и доработки.
Credit Asset Locks - механизма плавного обмена Dash на кредиты платформы и обратно.
В обновлении также сообщается, что тестовая версия сети - v20 ожидается в течение недели.
Принятые пулреквесты: 5503, 5505, 5512, 5507, 5492, 5515, 5150, 5516, 5517, 5493, 5448, 5519, 5518, 5514, 5500, 5499, 5521, 5501, 5479

источник - DCG Devs update
Дисклеймер это не является прямым переводом, а лишь авторской статьей суммирующей информацию на основе стрима DCG