aurae-runtime / aurae

Distributed systems runtime daemon written in Rust.
https://aurae.io
Apache License 2.0
1.86k stars 90 forks source link

Upgrading deno_core to latest version 0.296.0 breaks the build #521

Open MalteJ opened 4 months ago

MalteJ commented 4 months ago

Upgrading deno_core to latest version 0.296.0 in auraescript/Cargo.toml breaks the build.

ping @mccormickt

mccormickt commented 4 months ago

Updating Deno has always been a headache as they release very frequently with significant breaking changes.

https://github.com/denoland/deno/tree/main/runtime#stability

The most effective way to upgrade I've found is to bump to to the latest version of deno_runtime, and then adjust deno_core manually to the same version used by it. (I also had tried to use the version re-exported by deno_runtime, but the module wasn't found for some reason?). So in this case I'd check which version the latest deno_runtime uses, which turns out to be 0.293.0

I can give this a go later tonight and see if I can patch up any changes to get a build working again.

dmah42 commented 4 months ago

agreed with this strategy. I am frustrated with rust projects' interpretation of semver. too many make breaking changes in patch and minor releases.

MalteJ commented 4 months ago

ok, I didn't want to push you to work on this. I just noticed that the build breaks when upgrading to the latest version. I think we can close this issue and upgrade deno as soon as we have a need to.

dmah42 commented 4 months ago

tried this quickly and got an interesting error (that might be on my end):

error: failed to run custom build command for `v8 v0.98.0`

Caused by:
  process didn't exit successfully: `~/dev/aurae-runtime/aurae/target/debug/build/v8-bbfdef969c01d805/build-script-build` (exit status: 101)
  --- stdout
  cargo:rerun-if-changed=.gn
  cargo:rerun-if-changed=BUILD.gn
  cargo:rerun-if-changed=src/binding.cc
  cargo:rerun-if-env-changed=CCACHE
  cargo:rerun-if-env-changed=CLANG_BASE_PATH
  cargo:rerun-if-env-changed=CXXSTDLIB
  cargo:rerun-if-env-changed=DENO_TRYBUILD
  cargo:rerun-if-env-changed=DOCS_RS
  cargo:rerun-if-env-changed=GN
  cargo:rerun-if-env-changed=GN_ARGS
  cargo:rerun-if-env-changed=HOST
  cargo:rerun-if-env-changed=NINJA
  cargo:rerun-if-env-changed=OUT_DIR
  cargo:rerun-if-env-changed=RUSTY_V8_ARCHIVE
  cargo:rerun-if-env-changed=RUSTY_V8_MIRROR
  cargo:rerun-if-env-changed=SCCACHE
  cargo:rerun-if-env-changed=V8_FORCE_DEBUG
  cargo:rerun-if-env-changed=V8_FROM_SOURCE
  cargo:rerun-if-env-changed=PYTHON
  cargo:rerun-if-env-changed=DISABLE_CLANG
  cargo:rerun-if-env-changed=EXTRA_GN_ARGS
  cargo:rerun-if-env-changed=NO_PRINT_GN_ARGS
  cargo:rerun-if-env-changed=CARGO_ENCODED_RUSTFLAGS
  cargo:rustc-link-lib=static=rusty_v8
  lockfile: "~/dev/aurae-runtime/aurae/target/debug/build/v8.fslock"
  cargo:rustc-env=RUSTY_V8_SRC_BINDING_PATH=~/.cargo/registry/src/index.crates.io-6f17d22bba15001f/v8-0.98.0/gen/src_binding_release_x86_64-unknown-linux-gnu.rs
  static lib URL: https://github.com/denoland/rusty_v8/releases/download/v0.98.0/librusty_v8_release_x86_64-unknown-linux-gnu.a.gz
  cargo:rustc-link-search=~/dev/aurae-runtime/aurae/target/debug/gn_out/obj
  Looking for download in '"~/.cargo/.rusty_v8/https___github_com_denoland_rusty_v8_releases_download_v0_98_0_librusty_v8_release_x86_64_unknown_linux_gnu_a_gz"'
  Downloading (using Python) https://github.com/denoland/rusty_v8/releases/download/v0.98.0/librusty_v8_release_x86_64-unknown-linux-gnu.a.gz
  Downloading https://github.com/denoland/rusty_v8/releases/download/v0.98.0/librusty_v8_release_x86_64-unknown-linux-gnu.a.gz... Done.
  Copying ~/dev/aurae-runtime/aurae/target/debug/gn_out/obj/librusty_v8.tmp to "~/dev/aurae-runtime/aurae/target/debug/gn_out/obj/librusty_v8.a"
  Detected GZIP archive

  --- stderr
  thread 'main' panicked at ~/.cargo/registry/src/index.crates.io-6f17d22bba15001f/v8-0.98.0/build.rs:561:34:
  called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
bpmooch commented 4 months ago

I'll take a quick swing on this before we close it if people care