Releases: Sun-Lab-NBB/ataraxis-communication-interface
Releases · Sun-Lab-NBB/ataraxis-communication-interface
6.0.1
Patch Release
Major Changes:
- Aligned the onset-timestamp test fixture with the unsigned 64-bit (uint64) serialization format to track the fix of a latent timestamp-serialization bug in the downstream ataraxis-time library. Under current usage patterns, the bug caused no data corruption or behavior deviation.
What's Changed
Full Changelog: 6.0.0...6.0.1
6.0.0
Major Release
Major Changes:
- Reorganized the library source into domain subpackages (communication, microcontroller, interfaces), splitting the monolithic
communication and microcontroller-interface modules into focused files and relocating public import paths. - Split the monolithic MCP server into a shared FastMCP instance with dedicated discovery, configuration, processing, and
output tool modules, and renamed all MCP tools to follow the _tool naming convention. - Enhanced the remote log processing mode to support parallel processing on high-performance compute clusters.
- Shipped generated type stub (.pyi) files for all package modules, brought the log processing module to full test coverage,
and aligned project terminology and tooling with Ataraxis framework conventions.
What's Changed
- Feature/remote mode enhancement by @Inkaros in #18
- Refactored MCP tool names to follow the _tool naming convention. by @Inkaros in #19
- Refactor/library reorganization by @Inkaros in #20
- Chore/pre release by @Inkaros in #21
Full Changelog: 5.0.0...6.0.0
5.0.0
Major Release
Major Changes:
- Re-licensed the library to Apache 2.0 from GPL 3.
- Migrated project automation and dependencies to ataraxis-automation 8.0.0+ standard.
- Added MCP assets and a companion 'communication' plugin in the 'ataraxis' marketplate that enables AI agent interfacing with all library components.
- Expanded the range of supported message data objects,
- Cleaned up minor source code and documentation inefficiencies.
- Added log processing (data extraction) pipeline.
- Expanded the data generated by the library to include manifest files that identify controllers, modules, and log files that store the data from each controller and module interfaced by the library.
What's Changed
- Feature/dependency update by @Inkaros in #12
- Relicensed project from GPL-3.0 to Apache 2.0. by @Inkaros in #13
- Feature/improved log processing by @Inkaros in #14
- Updated API documentation to comply with Sun Lab conventions. by @Inkaros in #15
- Feature/agentic interface by @Inkaros in #16
- Extended prototype system to support codes 166-252. by @Inkaros in #17
Full Changelog: 4.2.0...5.0.0
4.2.0
Minor Update
Major Changes:
- Added assets to facilitate agentic coding (style guides, skills).
- Added MCP protocol entry-points to improve agentic integration.
What's Changed
Full Changelog: 4.1.0...4.2.0
4.1.0
4.0.1
4.0.0
Major Update
Major Changes
- Refactored the dependency management and automation strategy to ataraxis-automation 7.0.0+ standard.
- Updated all project dependencies to the latest major versions, which includes all Ataraxis dependencies.
- Radically simplified the API for writing and integrating custom module interface classes with the rest of the communication infrastructure.
- Improved runtime performance by deprecating unnecessary runtime checks and introducing LRU caching for module messages,
- Added a new 'axci-id' CLI command to identify ataraxis microcontrollers available for connection on the local system.
- Deprecated support for Python 3.11.
- Added multiprocessing support for log parsing function, leading to a significant performance boost when working with large log archives.
What's Changed
Full Changelog: 3.2.1...4.0.0
3.2.1
Minor Bugfix
- Added explicit export for the ExtractedModuleData class. This dataclass is used to package module data extracted from .npz archives when the extraction method works with multiple modules at the same time.
Full Changelog: 3.2.0...3.2.1
3.2.0
Minor Update
- Refactored extract_logged_hardware_module_data() method to support extracting data from multiple hardware modules as part of the same I/O operation.
Full Changelog: 3.1.0...3.2.0
3.1.0
Minor Feature Update
- Introduces a global extract_logged_hardware_module_data() function that can be used to extract the data logged by a ModuleInterface instance without initialized ModuleInterface and MicroControllerInterface objects. Primarily, this allows parallelizing data processing.
- MicroControllerInterface now has a 'log_path' property which returns the Path to the compressed .npz archive. This path can be provided to the global extraction function to parse the data stored in the archive. Note, the extraction function also requires the module-type and module_id codes available as properties of ModuleInterface class instances.
- Also includes minor ReadMe and docstring optimizations.
What's Changed
Full Changelog: 3.0.2...3.1.0