chore(deps): bump extractions/setup-just from 3 to 4#13
Open
dependabot[bot] wants to merge 1 commit intomainfrom
Open
chore(deps): bump extractions/setup-just from 3 to 4#13dependabot[bot] wants to merge 1 commit intomainfrom
dependabot[bot] wants to merge 1 commit intomainfrom
Conversation
Bumps [extractions/setup-just](https://github.com/extractions/setup-just) from 3 to 4. - [Release notes](https://github.com/extractions/setup-just/releases) - [Commits](extractions/setup-just@v3...v4) --- updated-dependencies: - dependency-name: extractions/setup-just dependency-version: '4' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
tony
added a commit
that referenced
this pull request
Apr 15, 2026
why: ``SparseArray`` lives at ``libtmux._internal.sparse_array`` —
the ``_internal`` namespace is by libtmux convention a private
module, so an upstream rename or move could break this import
on a libtmux minor-version bump. That would take the whole
MCP server down at import time, for a value that
``_flatten_hook_value`` already handles uniformly via
``hasattr(value, "items")``.
Loom review Suggestion #13: wrap the import in a try/except so
an upstream rename degrades to "treat values as dict" rather
than crashing the server.
what:
- Replace the unguarded ``from libtmux._internal.sparse_array import
SparseArray`` in src/libtmux_mcp/tools/hook_tools.py with a
``try/except ImportError`` block.
- Fallback defines a no-op ``SparseArray`` class that no runtime
value will ever ``isinstance``-match — so the downstream
``hasattr(value, "items")`` branch in ``_flatten_hook_value``
picks up both real ``SparseArray`` (when available) and plain
``dict`` (always available) shapes.
- Inline rationale documents the contract and pins it to libtmux
0.55.x with a re-check note for 0.56+.
- ``# pragma: no cover`` on the ``except`` branch: the fallback only
fires when libtmux's private module moves, which isn't reachable
without a manual breakage.
- No test changes: the fallback contract is "never observable at
runtime under supported libtmux versions". A test that forces the
fallback would require fragile sys.modules manipulation; existing
hook tests cover the import-succeeded path.
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.
Bumps extractions/setup-just from 3 to 4.
Commits
53165efThis is 4.0.03ed9febUpgrade to latest setup-cratecf2bee9Update setup-crate to Node 24 (#27)c261839Bump actions/checkout from 5 to 6 (#25)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)