Closed Dekker1 closed 1 year ago
Try make zip
or, equivalently, ./mill yuck.dev.universalPackage
.
Thank you, that solves the problem. However, when building from the zipped source, it seems that the build fails because yuck.dev.retrieveGitBranch
only works in a git repository. However, when doing git-checkout Homebrew always uses submodules, and the minizinc-benchmarks repository included does not seem to exists (probably a private clone).
Is there an option to build from a static directory instead of git? (preferred) Or, can you publish the minizinc-benchmarks clone so checkout would succeed?
P.S. why do we use yuck.dev
and not yuck.prod
? What is the difference?
I had forgotten to push the latest changes to my minizinc-benchmarks
clone; now cloning the Yuck sources with --recurse-submodules
should work.
Currently, building from the zipped sources (provided automatically by Github) is not possible.
Both Scala 2 and Scala 3 feature inlining. In Scala 2 it is an optional (and expensive) optimization, so I introduced dev and prod builds. In Scala 3, inlining works differently and cannot be disabled, so there is no difference between the build types any more.
The build now seems to start. However, it seems that an error in formatting the deprecation warning is stopping the build for succeeding: https://github.com/Dekker1/homebrew-minizinc/actions/runs/3382286052/jobs/5633182090#step:8:521 Have you seen this before?
Analysis:
Thread.getId
in favor of Thread.threadId
which is only available from Java 19.sbt
(used under the hood by mill
) throws when trying to report the warning generated by dotty
(the Scala 3 compiler).sbt
issue reproduces on Ubuntu 20.04 with Oracle's JDK 19, however it does not break the build.The issue can be fixed or worked around in four ways:
If you cannot fix the Homebrew build and really want or need to build yourself and to build with Java 19, then let's discuss the technical details via email.
I reported the build issue in https://github.com/com-lihaoyi/mill/issues/2105.
It turned out that the mill
developers have already worked around the logging issue (by providing their own logger). This fix will be delivered with mill
0.10.9.
That is good news. I hope they come with a release soon :)
I just pushed the branch unblock-homebrew-build
, so no need to wait for the next official mill
release.
I seem to be running into another odd issue again: https://github.com/Dekker1/homebrew-minizinc/actions/runs/3424097391/jobs/5703399310#step:8:598 Do you have any idea what would give such an error?
I might for now just use the released built binaries, but would love to solve these issues and build it in the formula again in the future
TypeError: no implicit conversion of nil into String
is not from the Yuck build, it's a Ruby error message.
Ah, I probably should have guessed that. I'll investigate further when I find some time.
Thanks again for the all the help!
All solved. Once more, thank you for the support!
I'm trying to update the Yuck version in my Homebrew tap, but it seems that I cannot actually build on MacOS anymore (the ubuntu build seems to go okay).
On MacOS the
mill
builder no longer seems to detect theuniversalBuild
preset:(https://github.com/Dekker1/homebrew-minizinc/pull/29)
Running the resolve locally gives me:
I'm not really familiar with the scala tooling, so maybe I'm just missing a dependency or something like that (currently it is just
mill
andjava
). Any pointers would be much appreciated.