Skip to content

Add missing breaking changes to v2 migration guide#2044

Merged
iMicknl merged 3 commits into
v2/mainfrom
docs/migration-guide-updates
May 20, 2026
Merged

Add missing breaking changes to v2 migration guide#2044
iMicknl merged 3 commits into
v2/mainfrom
docs/migration-guide-updates

Conversation

@iMicknl
Copy link
Copy Markdown
Owner

@iMicknl iMicknl commented May 20, 2026

Summary

  • Cross-referenced the full v2/main diff against docs/migration-v2.md and added all missing breaking changes
  • New sections: Collection lookups (States/CommandDefinitions KeyError), Gateway model, Client internals, Parameter renames, Model defaults, Boolean parsing fix, Dependencies
  • Clarified PersistedActionGroup vs ActionGroup distinction
  • Added Execution.action_group type change to execution methods table

Test plan

  • Review migration guide for completeness against notes.md
  • Verify mkdocs renders correctly (mkdocs serve)

Cover items found during cross-reference with full branch diff:
- States/CommandDefinitions __getitem__ now raises KeyError
- Execution.action_group type change
- Gateway.connectivity optionality and read-only properties
- Client internals (check_response moved, event_listener_id read-only,
  SUPPORTED_SERVERS immutable, get_device_definition return type)
- Parameter rename (deviceurl → device_url)
- Model defaults (Location None, OverkizError vs ValueError, obfuscate)
- Boolean parsing fix ("false" → False)
- PersistedActionGroup vs ActionGroup distinction
- Dependency changes (pyhumps removed, cattrs added, boto3 optional)
@iMicknl iMicknl requested a review from tetienne as a code owner May 20, 2026 20:24
Copilot AI review requested due to automatic review settings May 20, 2026 20:24
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the v2 migration guide to better reflect breaking changes introduced in the v2 branch, helping downstream users adapt their code and expectations when upgrading.

Changes:

  • Expanded breaking-change coverage across scenarios/action groups, executions, collection lookups, gateway model, and client internals.
  • Added notes on model defaults/behavior changes (e.g., boolean parsing) and dependency changes (cattrs required; Nexity extras optional).
  • Clarified PersistedActionGroup vs ActionGroup and updated the execution methods table.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread docs/migration-v2.md Outdated
Comment thread docs/migration-v2.md Outdated
- Remove incorrect ActionGroup.id optionality claim; clarify that
  PersistedActionGroup.oid is non-optional and .id is a read-only alias
- Narrow OverkizError vs ValueError claim to the specific case (server
  config resolution) rather than a blanket statement
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 4 comments.

Comment thread docs/migration-v2.md Outdated
Comment thread docs/migration-v2.md Outdated
| `client.check_response(response)` | `from pyoverkiz.response_handler import check_response` (module-level function) |
| `client.event_listener_id = ...` | Read-only property; managed internally |
| `SUPPORTED_SERVERS[key] = ...` | `SUPPORTED_SERVERS` is now immutable (`MappingProxyType`) |
| `get_device_definition()` returns `dict` | Returns `Definition` model |
Comment thread docs/migration-v2.md Outdated

## Model defaults

- `Location` fields now default to `None` instead of empty strings.
Comment thread docs/migration-v2.md Outdated
Comment on lines +345 to +347
- `pyhumps` has been removed and replaced with an internal `_case` module. No action needed unless you imported from `pyhumps` directly.
- `cattrs` is a new required dependency (handles model structuring).
- `boto3` and `warrant-lite` are now optional. Install with `pip install pyoverkiz[nexity]` if you use the Nexity server.
- Note check_response is async and show await usage
- Fix get_device_definition return type to Definition | None
- Narrow Location defaults claim to address/string fields only
- Quote pyoverkiz[nexity] for zsh shell safety
@iMicknl iMicknl merged commit 22dc496 into v2/main May 20, 2026
8 checks passed
@iMicknl iMicknl deleted the docs/migration-guide-updates branch May 20, 2026 20:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants