Skip to content

Add Homebrew packaging support#233

Open
justinpreston wants to merge 2 commits intomicrosoft:mainfrom
justinpreston:homebrew-packaging
Open

Add Homebrew packaging support#233
justinpreston wants to merge 2 commits intomicrosoft:mainfrom
justinpreston:homebrew-packaging

Conversation

@justinpreston
Copy link

Summary

Adds everything needed to distribute Amplifier via Homebrew (brew tap microsoft/amplifier && brew install amplifier).

Changes

  • homebrew-amplifier/Formula/amplifier.rb — Homebrew formula using uv sync --frozen with UV_PROJECT_ENVIRONMENT to install into a virtualenv at the Homebrew prefix. Resolves git-sourced dependencies (amplifier-app-cli, amplifier-foundation) via [tool.uv.sources] and uv.lock.
  • amplifier/__init__.py — Package stub needed for hatch build to produce a valid sdist/wheel.
  • pyproject.toml — Added classifiers, project URLs, cleaned dependencies for future PyPI publishing.
  • README.md — Added Homebrew as primary install option alongside UV.
  • .github/workflows/publish.yml — Publish to PyPI on GitHub release (trusted publishing).
  • .github/workflows/update-homebrew.yml — Auto-update formula SHA256 on new releases.

Tested locally

  • brew install --HEAD
  • brew test
  • amplifier --version

Next steps after merge

  1. Create microsoft/homebrew-amplifier repo with the homebrew-amplifier/ contents
  2. Tag v0.1.0, create a GitHub release, and update the formula SHA256

justinpreston and others added 2 commits March 10, 2026 10:30
- Create homebrew-amplifier tap with Formula/amplifier.rb
- Add amplifier/__init__.py package stub for hatch build
- Update pyproject.toml with classifiers, project URLs, clean PyPI deps
- Add GitHub Actions workflows for PyPI publish and formula auto-update
- Update README with Homebrew install instructions (brew tap microsoft/amplifier)

The formula uses uv sync --frozen to install from the lockfile, resolving
git-sourced dependencies (amplifier-app-cli, amplifier-foundation) that are
not yet published to PyPI.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Add TODO comment with SHA256 calculation instructions to Homebrew formula
- Add version constraint (>=0.1.0) to amplifier-app-cli dependency with clarifying comments
- Verify uv build works without hatch.metadata.allow-direct-references
- Add comprehensive PyPI trusted publishing setup documentation

These changes resolve blockers identified in PR review:
- Formula placeholder is now documented with clear update instructions
- Dependency versioning clarified for PyPI publishing workflow
- New docs/PUBLISHING.md guides maintainers through release process

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@justinpreston
Copy link
Author

@microsoft-github-policy-service agree [company="Microsoft"]

@microsoft-github-policy-service

@justinpreston the command you issued was incorrect. Please try again.

Examples are:

@microsoft-github-policy-service agree

and

@microsoft-github-policy-service agree company="your company"

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