ci: publish canjv to Homebrew after PyPI releases - #226
Open
rahlk wants to merge 1 commit into
Open
Conversation
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.
Java's PyPI wheel already installs
canjvwith a JVM supplied byjdk4py, but releases do not publish a Homebrew formula. Add a job after successful PyPI publication that generates a pinneduvxformula from the published wheel's URL and SHA256 and updates the shared tap, following codeanalyzer-python's approach.The formula exposes
canjv; its first invocation downloads the pinned package and JVM. The workflow retries PyPI metadata retrieval, treats unchanged formulas as a no-op, and keeps tap failures separate from publication. The README documents the Homebrew command and first-use behavior.Closes #225.
Validation:
actionlint .github/workflows/release-pypi.yml,bash -n packaging/homebrew/generate_formula.sh, andgit diff --checkpass.canjv --versionprints3.0.2.Release plan: ship this automation with the next release. Backfill the shared tap with the existing 3.0.2 wheel now; no new analyzer release or SDK pin bump is required. This PR does not change analyzer code or the schema.
Deployment prerequisite: ensure
HOMEBREW_TAP_TOKENis available to this repository with write access tocodellm-devkit/homebrew-tap. No repository-level secret was listed; an organization secret may already provide it. The cross-repository CI push has not been exercised locally.Propagation verdict: homebrew-tap (backfill the published 3.0.2 wheel). Sibling analyzers retain their existing packaging; SDK pins and analysis fixtures are unaffected. The analyzer README is updated; both docs-site installation guides were checked and have no existing Java Homebrew instructions to correct.