From 38d77bbfc078c4a12876828d5d720aeff946ccca Mon Sep 17 00:00:00 2001 From: Kai Chappell Date: Fri, 1 Aug 2025 11:46:21 +0000 Subject: [PATCH] Release v0.1.0-beta.1 --- CHANGELOG.md | 34 +++++++++++++++++++++++++++++++++- src/py_dvt_ate/__init__.py | 2 +- 2 files changed, 34 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2f8b23d..d5dce60 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,38 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.1.0-beta.1] - 2025-12-02 + +### Added +- Hardware Abstraction Layer (HAL) with instrument interface protocols + - IThermalChamber protocol with temperature control methods + - IPowerSupply protocol with voltage/current control and measurement + - IMultimeter protocol with DC voltage, current, and resistance measurement +- Instrument drivers implementing HAL interfaces + - ThermalChamberDriver implements IThermalChamber + - PowerSupplyDriver implements IPowerSupply + - MultimeterDriver implements IMultimeter +- Instrument factory pattern for backend abstraction + - InstrumentSet dataclass containing chamber, PSU, and DMM + - InstrumentConfig for specifying backend (simulator/pyvisa) and connection details + - InstrumentFactory.create() for creating instrument sets from configuration +- Transport layer abstraction + - Transport ABC defining connect/disconnect/read/write/query interface + - TCPTransport implementation for TCP/IP connections +- Comprehensive test suite for HAL (16 tests) + - Interface implementation verification + - Factory pattern testing with mocked backends + - Configuration validation + +### Changed +- Drivers now explicitly inherit from interface ABCs for maximum type safety +- Moved InstrumentServer to instruments/transport for better architecture + +### Technical +- ABC-based interfaces ensure compile-time interface compliance +- Factory pattern enables seamless switching between simulated and real hardware +- All HAL components fully type-checked with mypy strict mode + ## [0.1.0-alpha.3] - 2025-12-02 ### Added @@ -75,7 +107,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 |---------|------|-----------| | 0.1.0 | TBD | MVP Complete | | 0.1.0-beta.2 | TBD | First DVT test runs | -| 0.1.0-beta.1 | TBD | HAL complete | +| 0.1.0-beta.1 | 2025-12-02 | HAL complete | | 0.1.0-alpha.3 | 2025-12-02 | Network ready | | 0.1.0-alpha.2 | 2025-12-02 | Visual demo | | 0.1.0-alpha.1 | 2025-12-02 | Physics engine | diff --git a/src/py_dvt_ate/__init__.py b/src/py_dvt_ate/__init__.py index a1db627..355e49d 100644 --- a/src/py_dvt_ate/__init__.py +++ b/src/py_dvt_ate/__init__.py @@ -1,3 +1,3 @@ """py_dvt_ate: Coupled Physics DVT Simulation Platform.""" -__version__ = "0.1.0-alpha.3" +__version__ = "0.1.0-beta.1"