-
-
Notifications
You must be signed in to change notification settings - Fork 12.3k
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
sugarjar 1.0.1 (new formula) #157910
sugarjar 1.0.1 (new formula) #157910
Conversation
102dcfd
to
7eb73e7
Compare
Thanks for contributing to Homebrew! 🎉 It looks like you're having trouble with a CI failure. See our contribution guide for help. You may be most interested in the section on dealing with CI failures. You can find the CI logs in the Checks tab of your pull request. |
I believe I qualify for an exception to the notability clause:
|
|
The README also seems to suggest that the software is already deprecated and users should try Sapling instead. |
As it turns out Sapling is a big lift, and lots of people still want this. So I'm actively developing it, but want people to go poke at Sapling if they're new, in case that's a better fit. And while in Linux land most people just went off and packaged it, apparently my mac users don't particularly want to, but they email me and ask me to. ::shrug:: |
All updates in, except for the dependencies - once I hear back on how you want those done, I'll do that as well. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The README also seems to suggest that the software is already deprecated and users should try Sapling instead.
Not deprecated. As it says, it's being maintained since Sapling is too big a lift for some (and not allowed in certain organizations). I've done two releases since that was added even. As I mentioned previously - I get a lot of requests for this in Brew. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will happily this this included into Homebrew. It seems useful and there have been requests upstream.
Using bundle install
and a Gemfile.lock
over resources seems preferable. Sorry for the confusion here; if you can note where in our docs lead you astray here @jaymzh I'll fix them.
Check out swiftgen
as an example of a formula using bundle install
.
Thanks @MikeMcQuaid! I can make those changes. I'll get my lockfile checked in upstream and use that. As to confusion, I wanted to do a bit of spelunking so that I could best understand and recommend useful doc updates. However, what I found is that I don't think any ruby projects do it as described here. Here's a breakdown: There's only 9 formula that seem to do a
Here's how I found those:
Sidenote: Meanwhile, there's 21 projects that download their dependent gems manually:
And 41 that declare they need ruby:
So... best I can tell there's no single ruby project in Homebrew that quite gets this right. You asked for specific documentation to update. I'd start with https://docs.brew.sh/Formula-Cookbook#specifying-gems-python-modules-go-projects-etc-as-dependencies And I'd add maybe something along the lines of: ## Ruby Gem Dependencies
The preferred mechanism for installing gem dependencies is to use `bundler` with the upstream's Gemfile.lock. This requires the upstream checks in their `Gemfile.lock`, so if they don't, it's a good idea to file a bug and ask them to do so. Assuming they have one, this is as simple as:
ENV["GEM_HOME"] = libexec
system "bundle", "install"
From there, you can build and install the project itself:
system "gem", "build", "<project>.gemspec"
system "gem", "install", "--ignore-dependencies", "<project>-#{version}.gem"
And install any bins, and munge their shebang lines, with:
bin.install libexec/"bin/<bin>"
bin.env_script_all_files(libexec/"bin", GEM_HOME: ENV["GEM_HOME"])
## Python dependencies
<similar instructions here> |
43e2ebc
to
a2d4b46
Compare
OK @MikeMcQuaid - those updates are in, but it's failing because it seems to be running on the native MacOSX ruby which is not only ancient, but deprecated:
My understanding was that it'd use the ruby provided by Homebrew (from the confusingly-named Should I...
|
@jaymzh |
@p-linnane, Updated, but then it fails tests with:
|
That's expected, but we can override it. @Homebrew/maintainers thoughts on removing this audit now that we no longer use system Ruby ourselves? |
Ah, gotcha. In that case, I think this is ready for re-review, the only tests failing are the ruby and the "not notable enough" - both of which folks here have said they're willing to override. Let me know if there are other changes need. Thanks! |
Sugarjar is a utility that wraps git and gh to make working with both easier. It's already distributed in nearly every Linux distribution. I'd like to make it available to mac users via brew.
I've pushed some minor formatting changes and will merge this once CI finishes. |
@p-linnane Yes, we should do that for Ruby specifically 👍🏻. Thanks for merging!
@jaymzh This looks great, could you open a PR just with the exact text you'd got there? No worries if not! Thanks for all your patience and work on this PR and contributing to Homebrew: you rock! |
In Homebrew/homebrew-core#157910 we discussed some improvements to docs on setting up gems. THis is an attempt at some docs for that. If someone can help with pip docs for this I'll add it too. Signed-off-by: Phil Dibowitz <phil@ipom.com>
@MikeMcQuaid - here's a PR for that: Homebrew/brew#16418 |
In Homebrew/homebrew-core#157910 we discussed some improvements to docs on setting up gems. THis is an attempt at some docs for that. If someone can help with pip docs for this I'll add it too. Signed-off-by: Phil Dibowitz <phil@ipom.com>
In Homebrew/homebrew-core#157910 we discussed some improvements to docs on setting up gems. THis is an attempt at some docs for that. If someone can help with pip docs for this I'll add it too. Signed-off-by: Phil Dibowitz <phil@ipom.com>
In Homebrew/homebrew-core#157910 we discussed some improvements to docs on setting up gems. THis is an attempt at some docs for that. If someone can help with pip docs for this I'll add it too. Signed-off-by: Phil Dibowitz <phil@ipom.com>
Sugarjar is a utility that wraps git and gh to make working with both easier. It's already distributed in nearly every Linux distribution. I'd like to make it available to mac users via brew.
HOMEBREW_NO_INSTALL_FROM_API=1 brew install --build-from-source <formula>
, where<formula>
is the name of the formula you're submitting?brew test <formula>
, where<formula>
is the name of the formula you're submitting?brew audit --strict <formula>
(after doingHOMEBREW_NO_INSTALL_FROM_API=1 brew install --build-from-source <formula>
)? If this is a new formula, does it passbrew audit --new <formula>
?