Skip to content

Do not install hass-mcp's test launcher over the system test - #185

Merged
LayerTM merged 2 commits into
mainfrom
fix/drop-test-entrypoint
Nov 10, 2026
Merged

LayerTM merged 2 commits into
mainfrom
fix/drop-test-entrypoint

Conversation

@LayerTM

@LayerTM LayerTM commented Nov 10, 2026 •

Copy link
Copy Markdown
Owner

Every published hass-mcp wheel (0.1.0 through 0.6.1) declares a test = pytest:main console script. pip installs it as /usr/local/bin/test, which comes before /usr/bin on the path, so any program that runs test by name (env test, xargs test, find -exec test, a process spawn) got a Python traceback instead of the system command. pytest is not a dependency of hass-mcp, so the launcher cannot work either. Shell scripts using the test or [ builtin were not affected.

  • The image build removes that launcher right after the pip install, and fails if a file of that name is ever something other than the pytest launcher.
  • Every image is checked so that no bundled command in /usr/local/bin or /usr/local/sbin hides a system command of the same name.
  • Changelog entry under the coming 1.63.0.

Every hass-mcp wheel declares a `test = pytest:main` console script. pip
put it in /usr/local/bin, ahead of /usr/bin on PATH, so any program that
ran `test` by name got a Python traceback instead of the system command.

The image build now removes that launcher (and fails if a file of that
name is ever something else), and the image checks assert that nothing in
/usr/local shadows a system command and that `test` run by name is the
system one.
The fix ships with the next minor release instead of a patch of its own,
so the add-on version stays at 1.62.6 until that release sets it.
@LayerTM
LayerTM merged commit 724972e into main Nov 10, 2026
15 checks passed
@LayerTM
LayerTM deleted the fix/drop-test-entrypoint branch November 10, 2026 11:55
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.

1 participant