Skip to content
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

Update to Chromium 123 #796

Closed
MaxIhlenfeldt opened this issue Mar 20, 2024 · 5 comments · Fixed by #806
Closed

Update to Chromium 123 #796

MaxIhlenfeldt opened this issue Mar 20, 2024 · 5 comments · Fixed by #806
Assignees

Comments

@MaxIhlenfeldt
Copy link
Collaborator

Release notes:

@MaxIhlenfeldt MaxIhlenfeldt self-assigned this Mar 20, 2024
@MaxIhlenfeldt
Copy link
Collaborator Author

I'll start working on this after #795.

@MaxIhlenfeldt
Copy link
Collaborator Author

error[E0599]: no method named `as_encoded_bytes` found for reference `&OsStr` in the current scope
   --> ../../third_party/rust/chromium_crates_io/vendor/clap_lex-0.7.0/src/ext.rs:186:26
    |
186 |         let bytes = self.as_encoded_bytes();
    |                          ^^^^^^^^^^^^^^^^ method not found in `&OsStr`

std::ffi::OsStr::as_encoded_bytes() was stabilized in Rust 1.74, which was released on 16 Nov 2023. It seems Chromium is quite aggressive with requiring a recent version of the Rust compiler... Nanbield for example has only 1.70, and Scarthgap has 1.75.

I've asked on the Chromium Slack if there's any MSRV (minimum supported Rust version) policy for Chromium, as requiring such a recent Rust toolchain is (in my opinion) asking for quite much of external maintainers. But if upstream doesn't see a problem with this, we'll either have to start fixing build errors because of old compilers again (like we had to do for clang 12/14/15) or aggressively drop support for non-LTS Yocto releases with too old Rust versions and ensure that meta-lts-mixins always has a recent enough version of Rust for all LTS releases. I would really like to avoid the former.

@rakuco wdyt?

@MaxIhlenfeldt
Copy link
Collaborator Author

This was the response from danakj@ on Slack:

we don't [have a MSRV policy] we use nightly basically
just like we use clang nightly, and they need to follow each other
that said we kinda have a weird MSClangV for cronet right now but it's a big source of pain for us. Since we build with latest Rust it would be a pain for rust too because we'd have to run some extra bots on older Rust and it would not be in folks' workflows and cause reverts
So, I would argue to avoid a MSRV for Chromium since our CI will track TOT
(and dev environments)

@MaxIhlenfeldt
Copy link
Collaborator Author

Another option would be to switch to meta-rust-bin, which -- at least currently -- has recipes for recent Rust versions for all the Yocto releases we support.

@MaxIhlenfeldt
Copy link
Collaborator Author

Gentle ping @rakuco, cc @kraj @otavio @rwmacleod

MaxIhlenfeldt added a commit to MaxIhlenfeldt/meta-browser that referenced this issue May 7, 2024
Fixes OSSystems#796.

Note that this PR drops support for Nanbield (which is scheduled to
reach its EOL this month anyway), see the discussion at OSSystems#796 for why.

Release notes:
    https://chromereleases.googleblog.com/2024/03/stable-channel-update-for-desktop_19.html
    https://chromereleases.googleblog.com/2024/03/stable-channel-update-for-desktop_26.html
    https://chromereleases.googleblog.com/2024/04/stable-channel-update-for-desktop.html
    https://chromereleases.googleblog.com/2024/04/stable-channel-update-for-desktop_10.html

Build and patch changes:
------------------------

Drop one backported patch that is included upstream now.

Rebase remaining patches.

License changes:
----------------

Added licenses:
  * third_party/android_deps/libs/com_google_android_gms_play_services_tflite_impl/LICENSE,
    third_party/android_deps/libs/com_google_android_gms_play_services_tflite_java/LICENSE,
    third_party/android_deps/libs/org_tensorflow_tensorflow_lite_api/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5288046

  * third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_android_extensions_runtime/LICENSE,
    third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_parcelize_runtime/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5260026

  * third_party/android_deps/libs/org_jetbrains_kotlinx_atomicfu_jvm/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5237443

Removed licenses:
  * third_party/catapult/third_party/Paste/docs/license.txt
  - https://chromium-review.googlesource.com/c/catapult/+/5288589

  * third_party/screen-ai/LICENSE
  - Not sure why.

Updated licenses:
  * third_party/android_deps/libs/com_google_android_gms_play_services_base/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5288046

Test-built (big thanks to @rjanani-p):
--------------------------------------

* chromium-ozone-wayland:
 - master, clang,   MACHINE=qemux86-64, raspberrypi4-64

* chromium-x11:
 - master, clang,   MACHINE=qemuarm, qemuarm64, qemux86-64

Signed-off-by: Max Ihlenfeldt <max@igalia.com>
MaxIhlenfeldt added a commit to MaxIhlenfeldt/meta-browser that referenced this issue May 13, 2024
Fixes OSSystems#796.

Note that this PR drops support for Nanbield (which is scheduled to
reach its EOL this month anyway), see the discussion at OSSystems#796 for why.

Release notes:
    https://chromereleases.googleblog.com/2024/03/stable-channel-update-for-desktop_19.html
    https://chromereleases.googleblog.com/2024/03/stable-channel-update-for-desktop_26.html
    https://chromereleases.googleblog.com/2024/04/stable-channel-update-for-desktop.html
    https://chromereleases.googleblog.com/2024/04/stable-channel-update-for-desktop_10.html

Build and patch changes:
------------------------

Drop one backported patch that is included upstream now.

Rebase remaining patches.

License changes:
----------------

Added licenses:
  * third_party/android_deps/libs/com_google_android_gms_play_services_tflite_impl/LICENSE,
    third_party/android_deps/libs/com_google_android_gms_play_services_tflite_java/LICENSE,
    third_party/android_deps/libs/org_tensorflow_tensorflow_lite_api/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5288046

  * third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_android_extensions_runtime/LICENSE,
    third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_parcelize_runtime/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5260026

  * third_party/android_deps/libs/org_jetbrains_kotlinx_atomicfu_jvm/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5237443

Removed licenses:
  * third_party/catapult/third_party/Paste/docs/license.txt
  - https://chromium-review.googlesource.com/c/catapult/+/5288589

  * third_party/screen-ai/LICENSE
  - Not sure why.

Updated licenses:
  * third_party/android_deps/libs/com_google_android_gms_play_services_base/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5288046

Test-built (big thanks to @rjanani-p):
--------------------------------------

* chromium-ozone-wayland:
 - master, clang,    MACHINE=qemux86-64, raspberrypi4-64
 - scarthgap, clang, MACHINE=qemuarm64

* chromium-x11:
 - master, clang,    MACHINE=qemuarm, qemuarm64, qemux86-64

Signed-off-by: Max Ihlenfeldt <max@igalia.com>
MaxIhlenfeldt added a commit to MaxIhlenfeldt/meta-browser that referenced this issue May 22, 2024
Fixes OSSystems#796.

Note that this PR drops support for Nanbield (which is scheduled to
reach its EOL this month anyway), see the discussion at OSSystems#796 for why.

Release notes:
    https://chromereleases.googleblog.com/2024/03/stable-channel-update-for-desktop_19.html
    https://chromereleases.googleblog.com/2024/03/stable-channel-update-for-desktop_26.html
    https://chromereleases.googleblog.com/2024/04/stable-channel-update-for-desktop.html
    https://chromereleases.googleblog.com/2024/04/stable-channel-update-for-desktop_10.html

Build and patch changes:
------------------------

Drop one backported patch that is included upstream now.

Rebase remaining patches.

License changes:
----------------

Added licenses:
  * third_party/android_deps/libs/com_google_android_gms_play_services_tflite_impl/LICENSE,
    third_party/android_deps/libs/com_google_android_gms_play_services_tflite_java/LICENSE,
    third_party/android_deps/libs/org_tensorflow_tensorflow_lite_api/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5288046

  * third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_android_extensions_runtime/LICENSE,
    third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_parcelize_runtime/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5260026

  * third_party/android_deps/libs/org_jetbrains_kotlinx_atomicfu_jvm/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5237443

Removed licenses:
  * third_party/catapult/third_party/Paste/docs/license.txt
  - https://chromium-review.googlesource.com/c/catapult/+/5288589

  * third_party/screen-ai/LICENSE
  - Not sure why.

Updated licenses:
  * third_party/android_deps/libs/com_google_android_gms_play_services_base/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5288046

Test-built (big thanks to @rjanani-p):
--------------------------------------

* chromium-ozone-wayland:
 - master, clang,    MACHINE=qemux86-64
 - scarthgap, clang, MACHINE=qemuarm64

* chromium-x11:
 - master, clang,    MACHINE=qemuarm, qemuarm64, qemux86-64, raspberrypi4-64

Signed-off-by: Max Ihlenfeldt <max@igalia.com>
MaxIhlenfeldt added a commit that referenced this issue May 22, 2024
Fixes #796.

Note that this PR drops support for Nanbield (which is scheduled to
reach its EOL this month anyway), see the discussion at #796 for why.

Release notes:
    https://chromereleases.googleblog.com/2024/03/stable-channel-update-for-desktop_19.html
    https://chromereleases.googleblog.com/2024/03/stable-channel-update-for-desktop_26.html
    https://chromereleases.googleblog.com/2024/04/stable-channel-update-for-desktop.html
    https://chromereleases.googleblog.com/2024/04/stable-channel-update-for-desktop_10.html

Build and patch changes:
------------------------

Drop one backported patch that is included upstream now.

Rebase remaining patches.

License changes:
----------------

Added licenses:
  * third_party/android_deps/libs/com_google_android_gms_play_services_tflite_impl/LICENSE,
    third_party/android_deps/libs/com_google_android_gms_play_services_tflite_java/LICENSE,
    third_party/android_deps/libs/org_tensorflow_tensorflow_lite_api/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5288046

  * third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_android_extensions_runtime/LICENSE,
    third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_parcelize_runtime/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5260026

  * third_party/android_deps/libs/org_jetbrains_kotlinx_atomicfu_jvm/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5237443

Removed licenses:
  * third_party/catapult/third_party/Paste/docs/license.txt
  - https://chromium-review.googlesource.com/c/catapult/+/5288589

  * third_party/screen-ai/LICENSE
  - Not sure why.

Updated licenses:
  * third_party/android_deps/libs/com_google_android_gms_play_services_base/LICENSE
  - https://chromium-review.googlesource.com/c/chromium/src/+/5288046

Test-built (big thanks to @rjanani-p):
--------------------------------------

* chromium-ozone-wayland:
 - master, clang,    MACHINE=qemux86-64
 - scarthgap, clang, MACHINE=qemuarm64

* chromium-x11:
 - master, clang,    MACHINE=qemuarm, qemuarm64, qemux86-64, raspberrypi4-64

Signed-off-by: Max Ihlenfeldt <max@igalia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging a pull request may close this issue.

1 participant