Skip to content

Commit 15c3cd4

Browse files
committed
Correcting release notes and updating to v2.0.6
1 parent 7081ced commit 15c3cd4

File tree

6 files changed

+71
-1
lines changed

6 files changed

+71
-1
lines changed
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Release v2.0.5
2+
3+
## Overview
4+
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, ensuring robust handling of edge cases and deprecated methods.
5+
6+
## Key Changes
7+
8+
### 🛡️ Strict Typing (Phase 1)
9+
- **Full Type Safety**: The `fmd_api` core library (`client.py`, `device.py`, `models.py`) now passes strict `mypy` checks.
10+
- **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.
11+
- **Configuration**: Updated `pyproject.toml` to enforce strict typing rules (disallowing untyped definitions and implicit optionals).
12+
13+
### 🧪 Test Coverage Improvements
14+
- **Coverage Boost**: Increased overall test coverage to **99%**.
15+
- **Edge Case Handling**: Added comprehensive tests for `Location` parsing, including scenarios with missing dates or invalid inputs.
16+
- **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.
17+
- **Command Sanitization**: Verified that `Device.lock()` correctly sanitizes and truncates messages.
18+
19+
### 📚 Documentation
20+
- Added `docs/strict_typing_enforcement_plan.md` outlining the roadmap for maintaining type safety.
21+
22+
## Upgrade Guide
23+
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.
File renamed without changes.
File renamed without changes.

docs/release_notes/v2.0.5.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Release v2.0.5
2+
3+
## Overview
4+
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.
5+
6+
## Key Changes
7+
8+
### 🛡️ Strict Typing (Phase 1)
9+
- **Full Type Safety**: The `fmd_api` core library (`client.py`, `device.py`, `models.py`) now passes strict `mypy` checks.
10+
- **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.
11+
- **Configuration**: Updated `pyproject.toml` to enforce strict typing rules (disallowing untyped definitions and implicit optionals).
12+
13+
### 🧪 Test Coverage Improvements
14+
- **Coverage Boost**: Increased overall test coverage to **99%**.
15+
- **Edge Case Handling**: Added comprehensive tests for `Location` parsing, including scenarios with missing dates or invalid inputs.
16+
- **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.
17+
- **Command Sanitization**: Verified that `Device.lock()` correctly sanitizes and truncates messages.
18+
19+
### 📚 Documentation
20+
- **Roadmap**: Added `docs/strict_typing_enforcement_plan.md` outlining the roadmap for maintaining type safety.
21+
- **Community Updates**: Updated the community instance URL in `README.md` to point to the new server location (https://server.fmd-foss.org/).
22+
23+
## Upgrade Guide
24+
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.

docs/release_notes/v2.0.6.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Release v2.0.6
2+
3+
## Overview
4+
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, ensuring robust handling of edge cases and deprecated methods.
5+
6+
## Key Changes
7+
8+
### 🛡️ Strict Typing (Phase 1)
9+
- **Full Type Safety**: The `fmd_api` core library (`client.py`, `device.py`, `models.py`) now passes strict `mypy` checks.
10+
- **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.
11+
- **Configuration**: Updated `pyproject.toml` to enforce strict typing rules (disallowing untyped definitions and implicit optionals).
12+
13+
### 🧪 Test Coverage Improvements
14+
- **Coverage Boost**: Increased overall test coverage to **99%**.
15+
- **Edge Case Handling**: Added comprehensive tests for `Location` parsing, including scenarios with missing dates or invalid inputs.
16+
- **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.
17+
- **Command Sanitization**: Verified that `Device.lock()` correctly sanitizes and truncates messages.
18+
19+
### 📚 Documentation
20+
- Added `docs/strict_typing_enforcement_plan.md` outlining the roadmap for maintaining type safety.
21+
22+
## Upgrade Guide
23+
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.

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "fmd_api"
3-
version = "2.0.5"
3+
version = "2.0.6"
44
authors = [{name = "devinslick"}]
55
description = "A Python client for the FMD (Find My Device) server API"
66
readme = "README.md"

0 commit comments

Comments
 (0)