Skip to content

Releases: SameUsers/HappyLaba

v0.0.3 Добавлена возможность обработки нескольких каналов

Choose a tag to compare

@SameUsers SameUsers released this 09 Jul 14:25
35317a2

V0.0.3

Добавлено

  • Добавлена поддержка нескольких независимых TCP-каналов.
  • Добавлен Runtime (HappyLaba), управляющий жизненным циклом приложения.
  • Добавлена поддержка конфигурации нескольких устройств через YAML.
  • Добавлена проверка доступности TCP-портов при запуске.
  • Добавлена проверка уникальности используемых TCP-портов.
  • Добавлен SessionContext для хранения состояния управляемых сессий.
  • Добавлен MLLP-фреймер для сборки сообщений из TCP-потока.

Изменено

  • TCPServer переименован в TCPChannel.
  • Архитектура приложения переработана для поддержки многоканального режима работы.
  • Инициализация приложения вынесена в отдельный Runtime.
  • SessionManager адаптирован для управления сессиями отдельных каналов.
  • Конфигурация приложения переведена на YAML.
  • Унифицирован формат логирования.
  • Выполнен рефакторинг компонентов и улучшено разделение ответственности.

Исправлено

  • Исправлено корректное завершение TCP-каналов.
  • Исправлено завершение сессий по типу канала.
  • Исправлена обработка отмены фоновых задач.
  • Исправлены ошибки валидации конфигурации.
  • Повышена устойчивость приложения к ошибкам запуска каналов.

Тестирование

  • Обновлены модульные тесты.
  • Тесты адаптированы под многоканальную архитектуру.
  • Добавлены проверки новой конфигурации приложения.
  • Обновлены тесты компонентов управления сессиями.

Примечание

Версия 0.0.3 завершает переход от архитектуры с единственным TCP-сервером к многоканальной модели, позволяющей одновременно обслуживать несколько типов лабораторного оборудования. Данная архитектура является основой для последующего добавления маршрутизации сообщений, поддержки различных лабораторных протоколов и реализации прикладной логики.

v0.0.2 Стабилизация TCP-сервера и подготовка основы проекта

Choose a tag to compare

@SameUsers SameUsers released this 08 Jul 10:26

[0.0.2] - 08.07.2026

Добавлено

  • Добавлено базовое покрытие unit-тестами основных компонентов приложения.
  • Добавлено Docker-окружение для сборки и запуска проекта.
  • Добавлена документация классов и методов с использованием Python docstrings.
  • Добавлены инструменты контроля качества кода:
    • форматирование исходного кода;
    • статический анализ;
    • проверка типизации.
  • Улучшена структура проекта для дальнейшего расширения функциональности.

Улучшено

  • Повышена читаемость и сопровождаемость исходного кода.
  • Проведена дополнительная проверка основных компонентов серверной архитектуры.
  • Улучшена стабильность работы TCP-сервера и жизненного цикла соединений.
  • Выполнены внутренние исправления и технические улучшения.

Тестирование

Добавлены тесты для основных компонентов:

  • TCP-сессии;
  • менеджера сессий;
  • регистра активных сессий;
  • сетевого слоя приложения.

Также добавлены интеграционные проверки запуска TCP-сервера и обработки входящих подключений.

Примечание

Данный релиз является первой протестированной и стабильной версией TCP-сервера.

Версия 0.0.2 представляет собой переход от базовой реализации к подготовленной для дальнейшего развития серверной платформе.

В дальнейшем развитие проекта будет направлено на добавление обработки лабораторных протоколов, расширение бизнес-логики и интеграцию с внешним оборудованием.

v0.0.1 — Initial Release

Choose a tag to compare

@SameUsers SameUsers released this 07 Jul 22:20

[0.0.1] - 06.07.2026

Добавлено

  • Добавлен асинхронный TCP-сервер на базе asyncio.
  • Добавлен SessionManager для управления жизненным циклом клиентских подключений.
  • Добавлен SessionRegistry для хранения и отслеживания активных сессий.

Реализовано

  • Обработка входящих клиентских подключений.
  • Регистрация активных сессий в хранилище.
  • Базовое управление жизненным циклом сессий.
  • Централизованный контроль подключенных клиентов.

Примечание

Данный релиз закладывает основу серверной архитектуры.

Основная цель версии — создать базовый каркас для дальнейшего
развития обработки сессий, поддержки протоколов и расширения
функциональности сервиса.