revery-ui / revery

:zap: Native, high-performance, cross-platform desktop apps - built with Reason!
https://www.outrunlabs.com/revery/
MIT License
8.06k stars 196 forks source link

fix(ci): Fix CI for Onivim 2 - revert fetch dependencies #997

Closed bryphe closed 3 years ago

bryphe commented 3 years ago

Unfortunately, I'm still seeing issues with the set of dependencies for the fetch-lwt library, when building Onivim 2 - we get this error:

I've been trying to avoid reverting this, and maintaining a separate 'oni2' branch w/o it - but it's a lot of extra overhead for me (we can't actually use fetch in Onivim 2, either - lack of Windows support & it isn't integrated with libuv).

When building from Onivim 2, I get these errors:

Bryans-Mac-mini:oni2 bryphe$ esy run -f
info building @reason-native-web/piaf@1.3.0@d41d8cd9
error: build failed with exit code: 1
  build log:
    # esy-build-package: building: @reason-native-web/piaf@1.3.0
    # esy-build-package: pwd: /Users/bryphe/.esy/source/i/reason_native_web__s__piaf__1.3.0__aac2317a
    # esy-build-package: running: 'dune' 'build' '--only-packages=piaf' '--profile=release' '-j' '4' '--root=./piaf'
    Entering directory '/Users/bryphe/.esy/source/i/reason_native_web__s__piaf__1.3.0__aac2317a/piaf'
    File "lib/http_intf.ml", line 1:
    Error: The files lib/.piaf.objs/byte/piaf__Scheme.cmi
           and /Users/bryphe/.esy/3__________________________________________________________________/i/reason_native_web__s__h2_lwt_unix-0.6.1000-eb9002c6/lib/h2-lwt-unix/h2_lwt_unix.cmi
           make inconsistent assumptions over interface Gluten_lwt_unix__Ssl_io
    error: command failed: 'dune' 'build' '--only-packages=piaf' '--profile=release' '-j' '4' '--root=./piaf' (exited with 1)
    esy-build-package: exiting with errors above...

  building @reason-native-web/piaf@1.3.0
esy: exiting due to errors above

I'd definitely like to have the fetch API - some details here: https://github.com/revery-ui/revery/issues/996 , and really appreciate all the pioneering work you've done @lessp ! If you have any other ideas, @lessp - let me know 👍

ulrikstrid commented 3 years ago

In theory you can run lwt with luv.

If I remember I can look at the build error tomorrow.

bryphe commented 3 years ago

Thanks for being so understanding, @lessp !

I'm in the midst of a move so not a lot of time to debug, but it looks a bit odd! I like the idea of using luv under the hood, it's something I've experimented with briefly but would definitely need to read up a bit on SSL!

Good luck with the move! Ya, SSL + luv would be awesome 💯

In theory you can run lwt with luv.

Cool, maybe not too far off. Can't wait until I can ditch the node-download-strategy for something w/ native reason. Will simplify things a lot.