-
-
Notifications
You must be signed in to change notification settings - Fork 10.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Deprecate homebrew-cask-versions and migrate casks to homebrew-cask #112102
Comments
I am generally in favour of doing this. We will need a way of handling the different versions (ie. beta, nightly, etc..) in the main cask repo. In the cases of legacy major versioned casks, we will need a syntax there as well. Not sure on the pros and cons of the It is probably worth discussing merging |
I think it'd be good to be consistent unless it's overly laborious in terms of code changes required. |
Agreed. I'd love to see us get down to ideally a single |
Looking at most of the casks in cask-versions they either have a major version number (e.g It would be good to agree on a standard for beta builds. With legacy builds I feel the simplest way is to use the semver major approach (e.g I would suggest that we begin by migrating all of the versioned casks (as they seem to be the simplest to carry over and then look back round for the remaining casks? |
I agree that standardised naming conventions are the best option. We will need to consider instances (there's only a couple) that have multiple variants available,
This is currently how the casks are named, however it isn't consistent with |
So let's say we decided to rename the versioned ones to (e.g |
I'm not sure what the cask support is like for renaming. It was implemented for formulae but not sure if it ever was for casks. |
Yeah it looks like we'd need to add support for Aliases to homebrew-cask (which wouldn't be a bad thing to do TBF) |
I'd rather see these merged before we block on renaming. With that in mind: I think we should just keep the existing names. |
I can take a look at adding support for Aliases? I've never looked at the actual CLI codebase in my life but this would make the migration 100 times easier (and cleaner) |
@gdams you're welcome to take a look. I'd suggest instead of aliases that you look at https://github.com/Homebrew/homebrew-core/blob/master/formula_renames.json and the relevant code that handles it ( |
(note: renames add implicit aliases) |
Instead of aliases, we should get the equivalent to
The (current) standard is what upstream calls it because it’s simple and allows the same software with multiple variants. Regarding |
@MikeMcQuaid / @vitorgalvao are either of you able to point me in the rough direction where such a code change might be made? I'm trying to locate where the existing |
👍🏻 and it brings aliases for free
👍🏻
@gdams best bet is to ask in Slack, I'm snowed under personally. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. |
In homebrew-cask-versions, there are some casks not using official download links due to unstable appcenter links like I have a proposal #107354 before to add a new Should these cases be considered? |
@JounQin Can you elaborate what is meant by "unstable" here? Thanks! |
``` $ brew info --cask google-chrome-canary Warning: Cask homebrew/cask-versions/google-chrome-canary was renamed to google-chrome@canary. ==> google-chrome-canary: latest https://www.google.com/chrome/canary/ Installed /opt/homebrew/Caskroom/google-chrome-canary/latest (61.4KB) ==> Name Google Chrome Canary ==> Description Web browser ==> Artifacts Google Chrome Canary.app (App) ``` Refs. - Homebrew/homebrew-cask-versions#20186 - Homebrew/homebrew-cask#172349 - Homebrew/homebrew-cask#112102
Someone might want to change the documentation at https://docs.brew.sh/Acceptable-Casks#beta-unstable-development-nightly-or-legacy |
It will be updated once the migration is complete. |
Closing as this is now complete. |
Great work here everyone! What do we want to do with homebrew-cask-fonts? |
Move them all into a sharded directory called |
Fully agree with @miccal. It would be nice to get rid of the fonts repo and have everything in the main (only) repo. |
Yeah I think that seems reasonable, unless adding 2,200 files to a directory is going to cause issues. Note that many are "Google Fonts" which are seldom updated, as they are unversioned and are managed systematically. |
I figured we would create a |
If we do this, I'd like to change the syntax check to be scoped to modified files only. Tap syntax checks are already taking too long. |
It is. They will need to be sharded further inside that directory. Also they'll need to be renamed to start with
We should not do this. I know it's frustrating for this to take a while but this sort of modification detection ends up inevitably failing and ending up with a broken If they are taking too long: let's figure out how best to speed up these checks.
I don't think it's worth optimising too hard based on this tap. |
Yeah they all have tokens that start with |
Yup. This should probably be handed a bit like
This will likely require work in Homebrew/brew; I don't think there's currently supported for another level of directories. Another option would be to shard by |
Don’t forget there is (was?) a bot which kept the Google Fonts up to date automatically. However small the change to the structure, that will need an update to the new locations. |
How does this differ from other autobump/livecheck workflows? Ideally it should be part of the same thing. |
Yes, I don’t mean it in the sense that it will be a problem, I mean it in the sense “whoever works on the transition, don’t forget this important part which may not be immediately obvious”. |
@vitorgalvao All good, thanks! |
There's currently two automations that are managing casks in the The Google Fonts automation is currently setup as a python script that on a schedule checks the https://github.com/google/fonts repository and adds/removes fonts, as well as updates any that have had changes. Both of these do a little bit more than our current tooling for autobump/livecheck, because they also check and update if there have been changes that need to be reflected as |
I think it's worth opening an issue for them letting them know about our plans to change things and then tell them when things are moved over.
I think this would be a good chance to move this from Python to Ruby.
Thanks for context 👍🏻 Reopening this but anyone feel free to close and move to a new issue instead. |
Provide a detailed description of the proposed feature
Now that we have enough automation in place, I propose that we deprecate homebrew-cask-versions and either migrate or deprecate (on a case-by-case basis) the casks that are listed there.
CC @MikeMcQuaid @vitorgalvao
What is the motivation for the feature?
From a maintainers point of view, maintaining two repos is more work than just one. There are only a small number of casks listed at homebrew-cask-versions and by migrating them to this repo we improve the end-user experience (by not needing to tap cask-versions).
Example use case
n/a
The text was updated successfully, but these errors were encountered: