Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 0 additions & 53 deletions docs/release/v2.0.5.md

This file was deleted.

File renamed without changes.
File renamed without changes.
24 changes: 24 additions & 0 deletions docs/release_notes/v2.0.5.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Release v2.0.5

## Overview
This release focuses on code quality, stability, and developer experience. We have implemented Phase 1 of our Strict Typing Enforcement Plan, ensuring the core library is fully type-safe. Additionally, we have significantly improved test coverage and updated documentation.

## Key Changes

### 🛡️ Strict Typing (Phase 1)
- **Full Type Safety**: The `fmd_api` core library (`client.py`, `device.py`, `models.py`) now passes strict `mypy` checks.
- **Improved Signatures**: Public methods now have precise return types and generic type hints (e.g., `List[Dict[str, Any]]`), improving IDE autocompletion and static analysis for consumers.
- **Configuration**: Updated `pyproject.toml` to enforce strict typing rules (disallowing untyped definitions and implicit optionals).

### 🧪 Test Coverage Improvements
- **Coverage Boost**: Increased overall test coverage to **97%**.
- **Edge Case Handling**: Added comprehensive tests for `Location` parsing, including scenarios with missing dates or invalid inputs.
- **Deprecation Verification**: Added specific tests to ensure deprecated methods in `Device` (like `take_front_photo`, `fetch_pictures`) continue to function correctly while emitting appropriate warnings.
- **Command Sanitization**: Verified that `Device.lock()` correctly sanitizes and truncates messages.

### 📚 Documentation
- **Roadmap**: Added `docs/strict_typing_enforcement_plan.md` outlining the roadmap for maintaining type safety.
- **Community Updates**: Updated the community instance URL in `README.md` to point to the new server location (https://server.fmd-foss.org/).

## Upgrade Guide
This release is fully backward compatible with v2.0.4. No code changes are required for consumers, though you may notice improved type checking results if you use `mypy` in your own projects.
23 changes: 23 additions & 0 deletions docs/release_notes/v2.0.6.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Release v2.0.6

## Overview
This release focuses on code quality, stability, and developer experience. We have implemented Phase 1 of our Strict Typing Enforcement Plan, ensuring the core library is fully type-safe. Additionally, we have achieved **100% test coverage**, ensuring robust handling of edge cases and deprecated methods.

## Key Changes

### 🛡️ Strict Typing (Phase 1)
- **Full Type Safety**: The `fmd_api` core library (`client.py`, `device.py`, `models.py`) now passes strict `mypy` checks.
- **Improved Signatures**: Public methods now have precise return types and generic type hints (e.g., `List[Dict[str, Any]]`), improving IDE autocompletion and static analysis for consumers.
- **Configuration**: Updated `pyproject.toml` to enforce strict typing rules (disallowing untyped definitions and implicit optionals).

### 🧪 Test Coverage Improvements
- **Full Coverage**: Increased overall test coverage to **100%**.
- **Edge Case Handling**: Added comprehensive tests for `Location` parsing, including scenarios with missing dates or invalid inputs.
- **Deprecation Verification**: Added specific tests to ensure deprecated methods in `Device` (like `take_front_photo`, `fetch_pictures`) continue to function correctly while emitting appropriate warnings.
- **Command Sanitization**: Verified that `Device.lock()` correctly sanitizes and truncates messages.

### 📚 Documentation
- **Roadmap**: Added `docs/strict_typing_enforcement_plan.md` outlining the roadmap for maintaining type safety.

## Upgrade Guide
This release is fully backward compatible with v2.0.5. No code changes are required for consumers, though you may notice improved type checking results if you use `mypy` in your own projects.
Loading