Replace MonarchMoney Integration Dependency to MonarchMoneyCommunity#175721
Replace MonarchMoney Integration Dependency to MonarchMoneyCommunity#175721bradleyseanf wants to merge 7 commits into
Conversation
|
Hey there @jeeftor, mind taking a look at this pull request as it has been labeled with an integration ( Code owner commandsCode owners of
|
There was a problem hiding this comment.
Pull request overview
This PR intends to migrate the Monarch Money integration off the typedmonarchmoney library and onto monarchmoneycommunity (consolidating the backing library and typed client into a single project), adds @bradleyseanf as a codeowner, and adjusts MFA failure handling in the config flow. However, the migration is incomplete: only the requirement metadata, codeowners, one config-flow except clause, and one test were changed, while every actual import of the removed packages was left untouched.
Changes:
- Swap the declared requirement from
typedmonarchmoney==0.7.0tomonarchmoneycommunity==1.5.0inmanifest.jsonandrequirements_all.txt. - Add
@bradleyseanfas a codeowner inmanifest.jsonandCODEOWNERS. - Broaden the MFA-failure
exceptinconfig_flow.py(and update the corresponding test) to also treatRequireMFAException/LoginFailedExceptionas a bad MFA code.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
homeassistant/components/monarch_money/manifest.json |
Swaps requirement to monarchmoneycommunity==1.5.0 and adds new codeowner; requirement change is incomplete because imports still target the removed package. |
requirements_all.txt |
Regenerated requirement pin for the new package; version (1.5.0) diverges from the PR description (1.5.1). |
homeassistant/components/monarch_money/config_flow.py |
Broadens the MFA-failure handling to convert RequireMFAException/LoginFailedException into BadMFA. |
tests/components/monarch_money/test_config_flow.py |
Updates the bad-MFA test to raise RequireMFAException instead of KeyError. |
CODEOWNERS |
Adds @bradleyseanf to the Monarch Money integration and test ownership entries. |
a0cc835 to
ed5520a
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a0cc8358ae
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
bradleyseanf
left a comment
There was a problem hiding this comment.
1/2 Copilot suggestions applied
Breaking change !!
Proposed change
Update the Monarch Money integration to use
monarchmoneycommunity==1.5.1and import the typed client frommonarchmoneycommunityinstead oftypedmonarchmoney. Also add@bradleyseanfto the Monarch Money codeowners. As discussed with the codeowner here: jeeftor/monarchmoney-typed#107 to bring backing lib and typed client into one single project. As the owner ofmonarchmoneycommunity, I have added an optional typed client meant to be a drop in replacement for this Home Assistant integration shown at bradleyseanf/monarchmoneycommunity#39Also - now that we are using my backing lib instead of the original
monarchmoneywhich is no longer maintained, this has given me the opportunity to fix that when an MFA error occurs, it properly raises theLoginFailedExceptionso we can get out of patch territory for upstream. This fix was inmonarchmoneycommunity==v1.5.1and properly adjusted in this PR as well with the dep replacement.Type of change
Additional information
Checklist
ruff format homeassistant tests)If user exposed functionality or configuration variables are added/changed:
If the code communicates with devices, web services, or third-party tools:
Updated and included derived files by running:
python3 -m script.hassfest.requirements_all.txt.Updated by running:
python3 -m script.gen_requirements_all.To help with the load of incoming pull requests: