# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.0.0] - 2026-03-04

### Added

  - Initial implementation of the serial testsuite for API 3.0.0
  - Add TestConfigurationValidation: tests for parameter validation (IllegalArgumentException)
  - Add TestConnectionState: tests for connection state management, isClosed() behavior, and cross-stream close propagation
  - Add TestConnectionLifecycle: tests for rapid cycling, port reuse, simultaneous ports, concurrent access, and connection state after configure() failure
  - Add TestConfiguration: tests for valid configuration combinations
  - Add TestDataTransfer: tests for byte transfer, bulk transfer, blocking-read behaviour, available(), and byte boundary values
  - Add TestInvalidPort: tests for error handling with invalid ports

### Changed

  - Refactor CommSupport: parse configuration from single ``serial.port.config`` property (e.g. ``115200-8-N-1``)
  - Refactor tests to use CommSupport default fields instead of hardcoded SerialConnection constants
  - Rewrite legacy I/O stream tests (``comm/`` and ``common/io/``) as direct serial tests in ``serial/TestDataTransfer``
  - Move concurrent open/close test from ``comm/TestIOStream02`` to ``serial/TestConnectionLifecycle``

### Removed

  - Remove legacy generic I/O test framework (``AbstractTestIOStream``, ``AbtsractCommTestIOStream``, ``Pipe``, ``PipeRunnable``)
  - Remove ``comm/`` and ``common/io/`` packages

---
_Copyright 2022-2026 MicroEJ Corp. All rights reserved._  
_Use of this source code is governed by a BSD-style license that can be found with this software._
