-
-
Notifications
You must be signed in to change notification settings - Fork 12.6k
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
carrot2 4.7.0 #209045
base: master
Are you sure you want to change the base?
carrot2 4.7.0 #209045
Conversation
772a0ef
to
759074f
Compare
|
This seems to be a difference in the environment somewhere. I've ran the build on all MacOS runner images available on github, including the preview 15 image - everything passes - https://github.com/carrot2/carrot2/actions/runs/13584077993/job/37975209096?pr=1495 The runner you're using is different though - don't know if it's a physical machine or an image but - github's: Yours: Could you try to trigger a rerun, to see if it's some kind of temporary glitch or a repeatable failure? |
We use node 23 and it seems that the application is not compatible with it. |
The gradle build will download and use a consistent version of node - it doesn't depend on what's installed in the operating system. Must be something else but I can't say what it can be since I can't reproduce it locally or on github's macos images, which is strange in itself. |
For clarity - the application needs node/yarn only during compilation. The compiled binaries (of the document clustering server) only depend on Java, nothing else. I wonder if it makes sense to go through all the hassle of trying to compile it from scratch, rather than just fetch the latest released binary zip from: https://github.com/carrot2/carrot2/releases This would be more consistent (and much faster) than rebuilding from scratch. |
Ok, I looked at the formula. This won't work - the formula tries to replace yarn/node/gradle with a custom version for recompilation. This isn't going to work - there are literally tons of changes to switch from version to version to keep things working (even if they compile). homebrew-core/Formula/c/carrot2.rb Line 32 in 759074f
I would strongly suggest to change the formula to use the binary releases. If this isn't possible, the formula should not alter any versions in gradle build files. It will increase build time and fetch more resources, but it's what we test and run with. |
Ok, educated myself a bit on how brew works internally - I'm sure I'm still missing a lot though. So my take would still be not to compile everything from scratch, if at all possible. This is a complex build that involves a lot of tooling that should be kept at exact versions to work. The net result is a bunch of portable html and Java files though, so I don't see the point (maybe except for potential, well, security implications) of recompiling from scratch. If you'd still like to keep source-level recompilation then please do not try to substitute yarn/node/gradle versions. This will not work in the long run, just as shown in this issue - gradle upgrades also won't work from version to version, leading to very cryptic errors. If I can help anyhow, shout out. |
759074f
to
43e75c0
Compare
Created by
brew bump
Created with
brew bump-formula-pr
.