jcefmaven / jcefmaven

Maven artifacts for JCef

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[ENH] Reopen https://github.com/jcefmaven/jcefmaven/issues/90

zhelenskiy opened this issue Β· comments

JCEF is available for Chromium 119 for more than a month, the previous (attached) PR was closed as JCEF was not available for the version, while CEF was. If there is a way to help to publish the new version here, I would like to assist you.

Sadly the current problem is, that github changed something about their runners on macos. Due to this, the jcefbuild repo fails to build the builds on macos. The problem appears to be that the build script does not find the python package "six.moves". In a debug session I tried multiple ways of installing six into all different python providers the runner has. I also verified that the python executable used by the compile process knows about six. It does and also has the correct version. If you can fork jcefbuild and find out why these builds [0] are failing, I could launch a new release of jcefmaven. I'm sadly currently pretty much out of ideas why this error even occurs.

[0] https://github.com/jcefmaven/jcefbuild/actions/runs/7262060258

Also see the recent commit history for what I already tried: https://github.com/jcefmaven/jcefbuild/commits/master/

As you suppose Github itself to be the cause of the problem, did you try to contact them about it?

@FriwiDev Hi, I'm the CEO and co-founder of FlyCI. You can also try the FlyCI's M1 and M2 runners which are on average about 2x faster and 2x cheaper than GitHub's runners. We offer a free tier of 500 mins/month on the M1 runner. If you're looking for more performance, then definitely try our xlarge M1 and M2 runners.

Easily replace your M1 runners:

jobs:
 ci:
-    runs-on: macos-latest
+    runs-on: flyci-macos-large-latest-m1
   steps:
   - name: πŸ‘€ Checkout repo
     uses: actions/checkout@v4

Exclusive M2 runners:

jobs:
  ci:
-    runs-on: macos-latest
+    runs-on: flyci-macos-large-latest-m2
    steps:
      - name: πŸ‘€ Checkout repo
        uses: actions/checkout@v4

We'll be very happy to have you on board. Give that a shot and ping us if you have any trouble. We'll be happy to help you sort out any issues.

While your runners seem to work, they sadly throw the same error. Most likely this is an issue with the gsutil version used by jcef then.

@FriwiDev It looks like the issue is the Python version that is being picked by CEF's build script. You can check my changes that gets the build to compile "successfully" here (please ignore the part where I'm stripping the Apple certificate step from the build).

P.S. I'm one of the co-founders of FlyCI.

@ligaz Thanks a lot, this indeed fixed the build. While it works on github now, it does not seem to work with a java version higher than 8 (because the javadoc references things from other modules), so the build on java 11 is broken. The setup java 8 action fails on FlyCI however - I would really like to stick to java 8 for downwards compatibility. But I'll remember your CI service for future private projects :)

@FriwiDev It works if you use the zulu distribution.

Are there any updates? Maybe there are no problems with newer java-cef versions.

Sorry for the late reply. Sadly there is still an issue with apple notarization that I have not figured out yet. Somehow part of chromium can not be stapled anymore by the notarization scripts. Sadly I do not have a mac myself and thus have to retry the entire action 10k times to figure out and fix the issue. It appears that the chromium framework bundle does not conform to the structure the notary tool expects and thus fails the stapling of the approved ticket in the end. This then subsequently fails all other notarizations.

See here: https://github.com/jcefmaven/jcefbuild/actions/runs/7545880873/job/20542456473#step:7:1917

Now updated to 122.1.10 :)