crystal-lang / distribution-scripts

40 stars 23 forks source link

Consider automating the `homebrew` publishing process #122

Closed beta-ziliani closed 1 month ago

beta-ziliani commented 2 years ago

It requires querying the binaries of the last two versions and its hashes; not 🚀 science. It should be part of a tagged_release.

Blacksmoke16 commented 1 year ago

FWIW you could use https://github.com/Homebrew/actions/tree/master/bump-formulae for this. I have this setup in one of my libs: https://github.com/Blacksmoke16/oq/blob/master/.github/workflows/deployment.yml#L42-L51.

straight-shoota commented 1 year ago

Yeah, I don't think we need to do anything about this. Homebrew has tools for that. And technically it's also not our core reponsibility to update the brew package. It's a 3rd party repository. Most of the last homebrew updates were posted by homebrew contributors shortly after we published the release. I expect they're already using some automation, at least for release notification.

Blacksmoke16 commented 1 year ago

Yea the last one was created with brew bump-formula-pr, which is essentially what that GHA uses.

And technically it's also not our core reponsibility to update the brew package.

I always kinda assumed this one was officially supported since it's always explicitly called out in the release announcement thread.

straight-shoota commented 1 year ago

We officially endorse using the homebrew formular and support it with advice as well as contributions. But I don't think we can consider it an official distribution package. Perhaps we need to make that more clear?

The homebrew-core repository is managed and maintained by a 3rd party outside our control. So that makes it impossible for us to make any guarantees about its contents.

Using a current example: If the homebrew maintainers had decided to build the Crystal 1.8 compiler with libpcre (instead of libpcre2) - which would be against our explicit recommendation - we couldn't do anything about it.

straight-shoota commented 1 month ago

The Crystal formular is automatically updated by the Homebrew project. There's no need to do anything on our end.