-
Notifications
You must be signed in to change notification settings - Fork 0
Correcting release notes and updating to v2.0.6 #14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds release notes for versions v2.0.0, v2.0.4, v2.0.5, and v2.0.6 of the fmd_api library. The release notes document the evolution of the library from the major v2.0.0 async refactor through subsequent quality and stability improvements.
Key changes:
- Added comprehensive release documentation spanning multiple versions
- Documented strict typing enforcement (Phase 1) in v2.0.5 and v2.0.6
- Recorded authentication artifacts, picture API cleanup, and test coverage improvements in v2.0.4
Reviewed changes
Copilot reviewed 3 out of 5 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| docs/release_notes/v2.0.6.md | Documents Phase 1 strict typing, 99% test coverage, and type safety improvements |
| docs/release_notes/v2.0.5.md | Similar to v2.0.6 but includes community URL update documentation |
| docs/release_notes/v2.0.4.md | Comprehensive notes on password-free auth, picture API modernization, and wipe validation |
| docs/release_notes/v2.0.0.md | Documents major v2.0.0 release with async client, TLS enforcement, and CI upgrades |
| docs/release/v2.0.5_release_notes.md | Duplicate v2.0.5 release notes in alternate directory location |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
docs/release/v2.0.5_release_notes.md
Outdated
| # 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, 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 | ||
| - **Coverage Boost**: Increased overall test coverage to **99%**. | ||
| - **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 | ||
| - 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.4. No code changes are required for consumers, though you may notice improved type checking results if you use `mypy` in your own projects. |
Copilot
AI
Nov 22, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are two different v2.0.5 release note files with nearly identical content but different locations and minor differences:
docs/release_notes/v2.0.5.mdincludes a community URL update (line 21)docs/release/v2.0.5_release_notes.mddoes not include the community URL update
This duplication can lead to confusion and maintenance issues. Consider consolidating to a single file in the appropriate location (likely docs/release_notes/v2.0.5.md based on the pattern).
| # 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, 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 | |
| - **Coverage Boost**: Increased overall test coverage to **99%**. | |
| - **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 | |
| - 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.4. No code changes are required for consumers, though you may notice improved type checking results if you use `mypy` in your own projects. | |
| # (This file has been removed. Please refer to docs/release_notes/v2.0.5.md for the canonical release notes.) |
| ## 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, 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 | ||
| - **Coverage Boost**: Increased overall test coverage to **99%**. | ||
| - **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. |
Copilot
AI
Nov 22, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The v2.0.6 and v2.0.5 release notes have nearly identical content. Both claim to:
- Implement "Phase 1 of our Strict Typing Enforcement Plan"
- Increase test coverage to 99%
- Add the same edge case handling and deprecation tests
If v2.0.6 is a distinct release from v2.0.5, it should have different content describing what actually changed in v2.0.6. If these releases have the same changes, consider clarifying why there are two separate releases.
docs/release_notes/v2.0.6.md
Outdated
| - **Command Sanitization**: Verified that `Device.lock()` correctly sanitizes and truncates messages. | ||
|
|
||
| ### 📚 Documentation | ||
| - Added `docs/strict_typing_enforcement_plan.md` outlining the roadmap for maintaining type safety. |
Copilot
AI
Nov 22, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] The documentation section differs from v2.0.5. In v2.0.5, line 20 says "Roadmap: Added docs/strict_typing_enforcement_plan.md", while in v2.0.6 it only says "Added docs/strict_typing_enforcement_plan.md". This inconsistency in formatting and the lack of "Roadmap:" prefix should be standardized.
| - Added `docs/strict_typing_enforcement_plan.md` outlining the roadmap for maintaining type safety. | |
| - **Roadmap**: Added `docs/strict_typing_enforcement_plan.md` outlining the roadmap for maintaining type safety. |
No description provided.