Релиз ExGolos v0.4: опен сорс JSONRPC клиент для Голоса на Elixir/Erlang
На связи @ontofractal. В этом релизе добавлены функции для следующих категорий API: делегаты, голоса, фолловеры, внутренний рынок.
На данный момент в ExGolos реализованы почти все важные методы API. В планах на следующие релизы: управление стримингом и броадкастинг транзакций.
Новая версия библиотеки опубликована в репозитории на github вместе с github release, на hex.pm, а документация на hexdocs.
Changelog
По сравнению с v0.3 в текущей версии добавлены функции для следующих методов API:
- get_owner_history
- get_conversion_requests
- get_order_book
- get_open_orders
- get_witnesses
- get_witnesses_by_vote
- lookup_witness_accounts
- get_witness_count
- get_active_witnesses
- get_miner_queue
- get_account_votes
- get_active_votes
- get_followers
- get_following
Документация и тесты
Тесты и документация присутствуют для каждой функции JSONRPC API. В readme находятся примеры использования библиотеки.
Дорожная карта
ExGolos находится в активной разработке.
- Внедрить создание и управление подписками на ивенты
- Исследовать использование GenStage
- Добавить функции для всех типов вызовов
- Добавить возможность броадкаста транзакций
- Добавить типы (structs) для ответов API
Больше об Elixir
Elixir -- функциональный язык программирования созданный на основе Erlang/OTP. Его основные преимущества: удобные примитивы параллелизации и одновременности(concurrency) вычислений, устойчивость к сбоям и относительно простое создание распределенных кластеров.
Личное впечатление: в процессе разработки я неоднократно убеждался в правильности своего решения изучить Elixir для работы с блокчейнами, веб-сервисами и ETL приложениями. Системы, которые у меня получалось реализовать на Elixir/OTP кажутся мне понятными и элегантными. С использованием других яызков, в частности JS и Ruby, так было далеко не всегда :D