update azure to 26.0.0; tweaks from bumping other deps#2432
Open
evgunter wants to merge 8 commits into
Open
Conversation
azure-mgmt-resource 26.0.0 made azure.mgmt.resource a namespace package and moved ResourceManagementClient into azure.mgmt.resource.resources, so the old top-level import crashed every mngr invocation once the plugin was installed. Fix the import and raise the pin to >=26. Adopting 26.0.0 (released 2026-06-24) requires advancing the exclude-newer supply-chain cooldown, which was stale (2026-06-04) because the last release predated the dep. Bump it to 2026-06-27 (two weeks before today), which re-resolves uv.lock across the workspace. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Advancing exclude-newer upgraded the type checker (ty 0.0.39->0.0.54) and several library stubs (click, urwid), which surfaced pre-existing issues that the older tooling did not flag. None are azure-related; they are the fallout of adopting newer pinned versions: - Regenerate config/plugin/usage CLI docs for newer click (optional command groups now render as [COMMAND]). - minds: mark ImbueCloudCliError.exit_code as an intentional per-instance override of click's newly-ClassVar exit_code. - mngr: annotate a create-test passthrough **kwargs as Any. - mngr_kanpan: return Mapping from the hyperlink canvas coords/translate_coords and match urwid's int content() signature. - resource_guards: drop a ty: ignore the newer ty no longer needs. Per-project changelog entries added. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Replace the **kwargs: Any passthrough in test_create_new_host_retries_on_name_conflict with create_host's actual keyword signature, forwarded by name -- narrower than Any and keeps the test double honest against the real signature. Also trim the mngr broad-exception-catch ratchet from 8 to 7 (recorded count was stale; actual is 7). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Both groups were invoke_without_command=True purely to render help when run bare -- but click already shows help for a required-subcommand group, and doing it this way made them exit 0 and advertise an optional COMMAND in the docs, inconsistent with every other group. Drop the flag so bare 'mngr config' / 'mngr plugin' behave like 'mngr snapshot': print the usage/help listing and exit with the usage-error code. Rich --help output is unchanged. Update the plugin bare-invocation test and regenerate the config/plugin docs (COMMAND is now required, not [COMMAND]). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The config group carried a --scope option that only the removed bare-invocation branch ever read. With that branch gone it was dead: it showed up in help but the pass-body group callback discarded it (passing it before a subcommand, e.g. 'mngr config --scope user list', silently ignored it). Drop it so the config group matches the canonical dispatch-group shape (snapshot/git/plugin). Each subcommand's own --scope is untouched. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This reverts commit f98c987.
The bare-invocation behavior exits with a usage error (code 2), not the exit-0 no_args_is_help path the comment claimed. Describe the observable behavior instead of naming an internal click mechanism. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
evgunter
added a commit
that referenced
this pull request
Jul 12, 2026
Keep the original phrasing from #2432; it's still accurate and doesn't need the added mechanism detail. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
new installs of the azure plugin were broken because it would automatically pull in 26.0.0. the root cause is that dependencies aren't pinned when installing plugins, which is fixed by #2434
also changes the behavior of plain
mngr configandmngr plugin(no subcommand) to print the default click usage instead of the custom message. this is because click updated so that optional subcommands are displayed as[COMMAND]instead ofCOMMAND, andmngr config/mngr pluginwere indicated as having an optional subcommand because of their custom help behavior. making the plain commands use our fancy help again is done in #2442What
azure-mgmt-resource26.0.0 madeazure.mgmt.resourcea namespace package and movedResourceManagementClientintoazure.mgmt.resource.resources. The plugin's oldfrom azure.mgmt.resource import ResourceManagementClientraisedImportErroron import, crashing everymngrinvocation onceimbue-mngr-azurewas installed (compounded by there being no per-plugin import isolation).Changes
Azure fix
libs/mngr_azure/imbue/mngr_azure/client.py: importResourceManagementClientfromazure.mgmt.resource.resources(the other resource imports already used the.resourcessubpackage).libs/mngr_azure/pyproject.toml: bump pin toazure-mgmt-resource>=26.pyproject.toml: advance theexclude-newersupply-chain cooldown from2026-06-04to2026-06-27so the workspace can resolve 26.0.0 (released 2026-06-24). This normally advances at release time but was stale because the last release predated the dep. This re-resolvesuv.lockacross the workspace (large lock churn is expected: compute 37->38, storage 24->25, etc.).Collateral from the dependency refresh (advancing
exclude-newerupgradedty0.0.39->0.0.54 and library stubs likeclick/urwid, surfacing pre-existing issues, none of which are azure-related):config/plugin/usageCLI reference docs.apps/minds: markedImbueCloudCliError.exit_codeas an intentional per-instance override (click now typesexit_codeas aClassVar).libs/mngr: gave a create-test'screate_hostdouble an explicit typed signature (was**kwargs: Any).libs/mngr_kanpan: hyperlink-canvascoords/translate_coordsreturnMapping;content()matches urwid'sintparams.libs/resource_guards: dropped aty: ignorethe newer ty no longer needs.config/pluginrequire a subcommand (folded in while regenerating their docs):invoke_without_command=Truesolely to render help when run bare. But click already shows help for a required-subcommand group, and this made them exit 0 and advertise an optionalCOMMANDin the docs -- inconsistent with every other group. Dropped the flag so they behave likemngr snapshot.Before / after: plain
mngr configandmngr pluginBefore -- rendered the rich man-page help and exited 0 (as if bare invocation were a valid command):
After -- prints the standard usage/help listing and exits 2 (usage error: a subcommand is required), identical to
mngr snapshotand every other group. The rich man-page help is still available viamngr config --help:(
mngr usageis unchanged: it remains runnable bare because bareusagedoes real work -- it prints the usage snapshot.)Verification
libs/mngr_azureunit/integration tests pass locally on 26.0.0; full plugin import smoke-test passes.uv run ty check: clean (was 14 diagnostics after the refresh).test_no_type_errors+test_cli_docs_are_up_to_datepass; the updatedtest_plugin_without_subcommand_shows_helpand the config/plugin CLI test suites pass.mngr config/mngr pluginnow matchmngr snapshot(Usage/Options/Commands, exit 2) and that--helpstill renders the man-page help.exclude-newerbump affects workspace-wide resolution.Follow-up watch
azure-mgmt-network31.0.1 (new major, released 2026-07-02) sits just past this cutoff and will be pulled at the next cooldown advance. Its import surface is unchanged (NetworkManagementClientstill top-level; all model classes we use present), so it likely needs no code change, but the azure suite should be re-run when it lands.🤖 Generated with Claude Code