-
-
Notifications
You must be signed in to change notification settings - Fork 12.5k
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
[email protected]: undeprecate #105069
[email protected]: undeprecate #105069
Conversation
This formula still has dependents, so, per our policy, this shouldn't be deprecated. Leaving this deprecated also leads to users complaining. See, for example, Homebrew#105067.
Dependents:
|
This has LuaJIT support ( |
I guess this brings to question how we want to handle LuaJIT as a dependency now that we are updating We migrated all dependents to For others, I opened PRs to consider deprecation as the projects don't seem to be maintained. |
I still feel more comfortable relying on |
The LuaJIT C API is stable. You can skim the Git log of the installed headers to see. (See below in case you don't trust the eyeball test.) In fact, the current HEAD (LuaJIT/LuaJIT@4c2441c) is ABI compatible with the
Here's the compat report for reference: compat_report.html.zip (zipped because GitHub doesn't like raw The source compatibility check also indicates that The Lua bits (API + bytecode) are a bit harder for me to gauge, since I'm not so familiar with Lua. I've heard mixed (anecdotal) reports, but I'm going to guess that keeping the Lua side stable is a lot easier than not breaking the C API/ABI (perhaps accidentally), so I think things are fine on that front too. In any case, even if the above weren't true: I think API stability is useful only insofar as we know that clients are targeting the API version that we're using. I suspect most projects are actually targeting some version of upstream LuaJIT rather than the OpenResty fork, so the stability of the API might not be of that much value to us here. Our users also seem to have a clear preference between the two versions if we look at installs-on-request. Upstream LuaJIT has 3-6 times as many installs-on-request as the OpenResty fork, depending on the time period. (Interestingly, LuaJIT HEAD also has much fewer build failures than non-HEAD installs.) Analytics==> install-on-request (30 days)
==> install-on-request (90 days)
==> install-on-request (365 days)
==> build-error (30 days)
==> install-on-request (30 days)
==> install-on-request (90 days)
==> install-on-request (365 days)
==> build-error (30 days)
|
First, just noting that In case of homebrew LuaJIT analytics, I think it is a bit difficult to compare due to things like:
For choosing between OpenResty says they synchronize commits. I don't know if they do any additional testing that would make the particular tag they set any "better" than an arbitrary commit we select from LuaJIT head. Looking at some other repositories based on
|
That's a show-stopper for using LuaJIT then. Unless we want to keep it at 2.0.5, but I don't think that's a good option.
This is true, but I think that if there's one version that users are going to look for first and there are no other distinguishing factors otherwise, then we should probably use that as our main dependency already (since more users are more likely to already have it installed).
Agree with both points. |
This sounds like something that could be upstreamed given |
Actually, we could probably get away with setting |
Since Lua 5.1 still supports deprecated functions, I am guessing upstream doesn't see it as a priority especially as they have their own repos for bundled copies https://github.com/crawl/crawl-lua (5.1.5), https://github.com/crawl/crawl-luajit (2.0.3). Makefile doesn't seem to use Anyway, manually adding a |
Another attempt on
The easiest way to deprecate @@ -38,7 +38,13 @@ class StoneSoup < Formula
sha256 "68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"
end
+ resource "lua" do
+ url "https://github.com/crawl/crawl-lua/archive/c8f7b1ea86188970118b52df9c5b231b454bca0e.tar.gz"
+ sha256 "f9ba4efe02a7ba3b8d21540b6ffed01d2f521abb019163ed7f5dd6499da931ae"
+ end
+
def install
+ (buildpath/"crawl-ref/source/contrib/lua").install resource("lua")
ENV.cxx11
ENV.prepend_path "PATH", Formula["[email protected]"].opt_libexec/"bin"
xy = Language::Python.major_minor_version "python3"
@@ -57,7 +63,7 @@ class StoneSoup < Formula
BUILD_SQLITE=
BUILD_FREETYPE=
BUILD_LIBPNG=
- BUILD_LUA=
+ BUILD_LUA=y
BUILD_SDL2=
BUILD_SDL2MIXER=
BUILD_SDL2IMAGE= |
Not that keen on a resourced It's not as if |
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. |
Close as merged in #106848 |
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 doingbrew install --build-from-source <formula>
)? If this is a new formula, does it passbrew audit --new <formula>
?This formula still has dependents, so, per our policy, this shouldn't be
deprecated. Leaving this deprecated also leads to users complaining.
See, for example, #105067.
I haven't marked this as closing #105067 since there may still be other things
we can do about
libquvi
.