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

Upgrade from Chromium 131 to Chromium 132 #26068

Merged
merged 178 commits into from
Dec 2, 2024
Merged

Upgrade from Chromium 131 to Chromium 132 #26068

merged 178 commits into from
Dec 2, 2024

Conversation

cdesouza-chromium
Copy link
Collaborator

@cdesouza-chromium cdesouza-chromium commented Oct 17, 2024

Resolves brave/brave-browser#41761
Resolves brave/brave-browser#42532

Submitter Checklist:

  • I confirm that no security/privacy review is needed and no other type of reviews are needed, or that I have requested them
  • There is a ticket for my issue
  • Used Github auto-closing keywords in the PR description above
  • Wrote a good PR/commit description
  • Squashed any review feedback or "fixup" commits before merge, so that history is a record of what happened in the repo, not your PR
  • Added appropriate labels (QA/Yes or QA/No; release-notes/include or release-notes/exclude; OS/...) to the associated issue
  • Checked the PR locally:
    • npm run test -- brave_browser_tests, npm run test -- brave_unit_tests wiki
    • npm run presubmit wiki, npm run gn_check, npm run tslint
  • Ran git rebase master (if needed)

Reviewer Checklist:

  • A security review is not needed, or a link to one is included in the PR description
  • New files have MPL-2.0 license header
  • Adequate test coverage exists to prevent regressions
  • Major classes, functions and non-trivial code blocks are well-commented
  • Changes in component dependencies are properly reflected in gn
  • Code follows the style guide
  • Test plan is specified in PR before merging

After-merge Checklist:

Test Plan:

@github-actions github-actions bot added CI/run-network-audit Run network-audit CI/run-audit-deps Check for known npm/cargo vulnerabilities (audit_deps) CI/storybook-url Deploy storybook and provide a unique URL for each build CI/run-upstream-tests Run upstream unit and browser tests on Linux and Windows (otherwise only on Linux) feature/web3/wallet feature/web3/wallet/core labels Oct 17, 2024
@brave-builds
Copy link
Collaborator

A Storybook has been deployed to preview UI for the latest push

@cdesouza-chromium cdesouza-chromium force-pushed the cr132 branch 6 times, most recently from 4535c71 to 4a9bfd4 Compare October 24, 2024 11:27
@cdesouza-chromium cdesouza-chromium force-pushed the cr132 branch 2 times, most recently from 8f0de9e to 3c2324e Compare October 25, 2024 13:13
@emerick emerick force-pushed the cr132 branch 3 times, most recently from 2376ad5 to 7a077a1 Compare October 27, 2024 20:13
@cdesouza-chromium cdesouza-chromium force-pushed the cr132 branch 8 times, most recently from 20b0a51 to fe96dae Compare October 31, 2024 13:10
AlexeyBarabash and others added 17 commits December 1, 2024 08:43
There is compile error
```
 In file included from ../../brave/chromium_src/chrome/browser/prefs/browser_prefs.cc:67:
 In file included from ../../../src/chrome/browser/prefs/browser_prefs.cc:25:
 ../../chrome/browser/chrome_content_browser_client.h:31:10: fatal error: 'components/guest_view/buildflags/buildflags.h' file not found
    31 | #include "components/guest_view/buildflags/buildflags.h"
       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1 error generated.
```
Happens because there is no public path between `//chrome/browser/prefs:impl` and `//components/guest_view/buildflags:buildflags` targets.

`//components/guest_view/buildflags:buildflags` is deps for `//chrome/browser`,
and `//chrome/browser/prefs:impl` is is also deps for `//chrome/browser`.

Chromium change:
https://source.chromium.org/chromium/chromium/src/+/f618031bf39bd77f482fe9331708738fe212ce17

	Reland "Move enable_guest_view out of extensions"

	This is a reland of commit d643d0bb1c8553dd9f69de9d6c129d4e49ce1770

	Patch set 1 is as landed, patch set 2 fixes chromecast build by
	adding enable_guest_view to the linux.gni config file.

	Original change's description:
	> Move enable_guest_view out of extensions
	>
	> We should be able to depend on components/guest_view and determine
	> if it is indeed enabled.
	> Bug: 40202416, 356671305
	>
	> Change-Id: I6d77ef2dcb1194f1331411cdcd4d1269144528eb
	> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5994331
	> Reviewed-by: Joe Mason <[email protected]>
	> Reviewed-by: Kevin McNee <[email protected]>
	> Reviewed-by: Avi Drissman <[email protected]>
	> Commit-Queue: Dave Tapuska <[email protected]>
	> Reviewed-by: Reilly Grant <[email protected]>
	> Reviewed-by: Dave Tapuska <[email protected]>
	> Cr-Commit-Position: refs/heads/main@{#1379199}

	Bug: 40202416, 356671305
	Change-Id: I70a85fafdaede43a335f99b372b84dbc5f6aa57e
	Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6000816
Our sidebar pinning service detaches (but does not delete) tabs and caches their
WebContents under certain circumstances. This has the unwanted side effect of
creating a dangling pointer in the upstream code that manages the embedded tab
interfaces. For now, we will mark this upstream pointer as DanglingUntriaged and
we have opened brave/brave-browser#42322 to track
this issue.

Chromium change:
https://source.chromium.org/chromium/chromium/src/+/bf1f8e50ede83c982c28e7e4254bad871b0c6bf7

commit bf1f8e50ede83c982c28e7e4254bad871b0c6bf7
Author: Thomas Lukaszewicz <[email protected]>
Date:   Wed Nov 6 19:37:01 2024 +0000

    [webui] Use SetTabInterface for setting embedding context on tabs

    This CL updates webui::InitEmbeddingContext() to leverage the new
    SetTabInterface API. This allows correct handling of both tab and
    browser interfaces for tabs (vs only browser interfaces for the
    current impl).

    This CL also ensures discard is handled correctly. This handling
    can be removed once the new tab discarding has successfully landed.

    Bug: 360724768
In M132 `base::span` underwent a series of improvements to make type
deduction better. One of them is to satisfy the requirement for borrowed
range, to avoid the use of dangling spans.

This change corrects a few cases where the `borrowed_range` check is
failing, but the span is being used in the same expression. This
requires to change the span type to const, so `base::as_span_bytes` is
used in a few places.
This has to be done to avoid an unwanted substitution that started
taking place now.
This merely affects where the override to disable this feature is
supposed to take place.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/519c739fabc0b5a25318976c6424bf4bf04c0152

commit 519c739fabc0b5a25318976c6424bf4bf04c0152
Author: Shunya Shishido <[email protected]>
Date:   Fri Nov 15 06:14:17 2024 +0000

    Add ServiceWorkerAutoPreload to chrome://flags

    Adding the ServiceWorkerAutoPreload feature flags to chrome://flags, so
    that developers and partners can try the feature on their sides.

    To add it to chrome://flags, the feature flag
    `kServiceWorkerAutoPreload` will be moved from content/common/features
    to content/public/common/content_features.

    Bug: 379052301
Whenever tab is about to be deleted, proper method should be called
from TabStripModel for deleting. And TabModel::WillDetach() should
be called with kDelete reasion. So far, we just call DetachTabAtForInsertion()
and did nothing more when browser window is closing when shared pinned tab
feature is enabled. Because of that, EmbeddingTabTracker doesn't get
chance to cleanup TabInterface pointer.

Also when tab is discared, old tab's TabInterface should be cleared.
This patch was part of PR to master to disable
`kImageDescriptionsAlternateRouting`, however the CL enabling this has
been reverted.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/2d520489b5158b64b0b7b74eded22768c903ebee

commit 2d520489b5158b64b0b7b74eded22768c903ebee
Author: David Tseng <[email protected]>
Date:   Tue Oct 22 00:21:48 2024 +0000

    Revert "[a11y]: enable image description alternate routing by default"

    This reverts commit 1d2aa3d338d634251b169b9641c90fc390a8e360.

    Reason for revert: regression reported in support.

    Bug: 371071849

    Original change's description:
    > [a11y]: enable image description alternate routing by default
    >
    > [email protected]
    >
    > Change-Id: I1d62b1821e27c5d4638f20715932292b41250292
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5838020
    > Reviewed-by: Jacob Francis <[email protected]>
    > Reviewed-by: Andrew Moylan <[email protected]>
    > Commit-Queue: David Tseng <[email protected]>
    > Cr-Commit-Position: refs/heads/main@{#1352813}

    Change-Id: I0dd2839eed8717e67b2d61a2a0e8acbaaaa03b47
`ComponentInstallerPolicy` instances are supposed to die during tests
with `ComponentUpdateService`. However as `SequentialUpdateChecker` was
taking references to these shared data, this was keeping the policies
alive indefinetely, which was causing dangling pointer crashes in CI.

This change temporarily filters these tests in particular:

ComponentManagerUpdateCheckBrowserTest.RegisterAndUnregisterTranslateKitLanguagePackComponent
ComponentManagerUpdateCheckBrowserTest.RegisterTranslateKitComponent

We will fix this properly in a subsequent commit via
brave/brave-browser#42532.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/fa904be21056bca3dfa3e46a031af1e6787aef67

commit fa904be21056bca3dfa3e46a031af1e6787aef67
Author: Tsuyoshi Horo <[email protected]>
Date:   Thu Oct 24 09:27:34 2024 +0000

    Add a simple browser_test for Translator API.

    This CL introduces a new ComponentManager class which handles the
    TranslateKit component and the language pack components.
    And also this CL adds a simple browser test for Translator API by
    using a fake ComponentManager which can install a mock_translate_kit_lib
    and a fake language pack.

    Bug: 374631433
@emerick emerick merged commit 89750d5 into master Dec 2, 2024
17 checks passed
@emerick emerick deleted the cr132 branch December 2, 2024 12:29
@github-actions github-actions bot added this to the 1.75.x - Nightly milestone Dec 2, 2024
@brave-builds
Copy link
Collaborator

Released in v1.75.67

emerick added a commit that referenced this pull request Dec 2, 2024
Upgrade from Chromium 131 to Chromium 132
emerick added a commit that referenced this pull request Dec 2, 2024
Upgrade from Chromium 131 to Chromium 132
emerick added a commit that referenced this pull request Dec 2, 2024
Upgrade from Chromium 131 to Chromium 132
emerick added a commit that referenced this pull request Dec 2, 2024
Upgrade from Chromium 131 to Chromium 132
emerick added a commit that referenced this pull request Dec 4, 2024
Upgrade from Chromium 131 to Chromium 132
emerick added a commit that referenced this pull request Dec 5, 2024
Upgrade from Chromium 131 to Chromium 132
kjozwiak pushed a commit that referenced this pull request Dec 6, 2024
* Merge pull request #26068 from brave/cr132

Upgrade from Chromium 131 to Chromium 132

* [Lit]: Migrate `brave-item-list-more-items` to Lit (#26493)

* [CodeHealth] Remove all uses of `NOTREACHED_NORETURN` (#26508)

This PR replaces all occurences of `NOTREACHED_NORETURN` with
`NOTREACHED`, since they are semantically identical.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/5a9d4c5aa85977fc711eb9c0ff1207c5ac1a0959

commit 5a9d4c5aa85977fc711eb9c0ff1207c5ac1a0959
Author: Peter Boström <[email protected]>
Date:   Tue Nov 12 01:38:46 2024 +0000

    Remove enable_log_error_not_reached

    This flag only applied to NOTREACHED_IN_MIGRATION() for ChromeOS which
    is on its way out.

    Bug: 40580068

* [CodeHealth] Drop `proc-macro-error` from `filecoin-cxx` (#26427)

* [CodeHealth] Drop `proc-macro-error` from `filecoin-cxx`

This PR updates all crates around `multihash` to use the latest
`multihash` version that does not depend anymore on `proc-macro-error`.
This crate is being removed as it is getting flagged in security audits
for being unmaintained, and it also relies on unstable rustc features.

* [rust] `gnrt` crate changes for `multihash` v.0.19

This commit includes all the mechanical changes done by `gnrt`.

* Fix UNSAFE_TODO for wallet [part 2 of N] (#26469)

* [CodeHealth] Fix dangling span references (#26461)

This PR fixes cases where a local constant is being used to initialise a
`span` but then the span is being used by the time the local has already
been discarded. This is undefined behaviour although in both cases it
seems to be incidently working.

Resolve brave/brave-browser#42185

* [CodeHealth] Normalise `const` declaration pt.1 (#26714)

This PR is part of a couple of rewrites to be carried out normalising
the cases where we have constant declaration. In this PR we have the
following fixes:

 - Remove redundant `const` qualifier alongside `constexpr`
 - Function-scope constants as `static constexpr`
 - Remove the use of `extern` declarations
 - Whenever possible use `constexpr`
 - When appropriate, use `MakeFixedFlatSet`.

These changes are in conformance with some upcoming clarified guidelines.
Furthermore, this takes us one step closer to have some automation for
clang-tidy, as right now there are too many clang-tidy warnings around
constant/variable naming.

Resolves brave/brave-browser#42490

* [CodeHealth] Remove all uses of `NOTREACHED_NORETURN` (#26508)

This PR replaces all occurences of `NOTREACHED_NORETURN` with
`NOTREACHED`, since they are semantically identical.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/5a9d4c5aa85977fc711eb9c0ff1207c5ac1a0959

commit 5a9d4c5aa85977fc711eb9c0ff1207c5ac1a0959
Author: Peter Boström <[email protected]>
Date:   Tue Nov 12 01:38:46 2024 +0000

    Remove enable_log_error_not_reached

    This flag only applied to NOTREACHED_IN_MIGRATION() for ChromeOS which
    is on its way out.

    Bug: 40580068

* [Lit]: Update ExtensionsToolbarElement override (#26492)

* [NOTREACHED]: Migrate a bunch of `NOTREACHED_IN_MIGRATIONS` (#26412)

* [NOTREACHED]: Update OpenBraveVPNUrls

* [NOTREACHED]: Update ParseFeedItems

* [NOTREACHED]: Migrate GenerateAllFeed

* [NOTREACHED]: Migrate MdTextButton

* [NOTREACHED]: Migrate NTPBackgroundPrefs

* [NOTREACHED]: Migrate brave_app_menu_model

* [NOTREACHED]: Migrate b/u/tabs

* [NOTREACHED]: b/u/v/frame

* [NOTREACHED]: b/b/themes

* Replaced NOTREACHED_IN_MIGRATION for Brave Sync code (#26391)

* Replaced NOTREACHED_IN_MIGRATION for Brave Sync code

* [DanglingPtr] Remove `ProfileMenuViewBase` patching (#26499)

This patch was introduced as a temporary measure to allow switching on
the dangling pointer detector.

This PR fixes the two dangling pointers in `ProfileMenuViewBase` by
avoiding calling `SetProfileIdentityInfo` more than once, and actually
overriding it, so the first call to the `SetProfileIdentityInfo` can be
given the correct arguments.

One test had to be disabled, as it was not actually testing the way the
profile menu viewer was being instantiated. The way brave does it
requires to consult theme data, which is not available for this
particular test.

Resolves brave/brave-browser#42231

* Disable screen_ai component download/installation (#26167)

* Disable screen_ai component download/installation

* Disable upstream OCR integration

---------

Co-authored-by: Anthony Tseng <[email protected]>

* Fix unused variables warnings at java (#26433)

* Removed unused variables and members at Brave java files

* [DanglingPtr] Fix `WebUIBubbleManagerImpl` dangling patch (#26465)

A patch was added to `WebUIBubbleManagerImpl` when enabling the dangling
pointer detector on Linux, as a temporary measure. This change corrects
the the underlying issue requiring this pointer to be marked as
dangling.

This particular dangling pointer occurred because the toolbar view was
being passed as the achor for this browser data bubbles, the toolbar
gets destroyed prior to these browser data bubbles being disposed. This
PR adds checks during in the `BraveBrowserView` dtor, to make sure there
are no dangling references to the toolbar view by the time the
termination is cleaning up browser data.

Resolves brave/brave-browser#42196

* Merge pull request #26829 from brave/cr132-followup-add-aida-client-unittest

Add unit test to ensure that AidaClient remains disabled

* Upgrade from Chromium 132.0.6834.15 to Chromium 132.0.6834.33

Update pins list timestamp

Updated strings for Chromium 132.0.6834.33

* Merge pull request #26864 from brave/cr132-followup-fix-broken-tab-group-menu-options

Fix broken tab group menu options

---------

Co-authored-by: Jay Harris <[email protected]>
Co-authored-by: cdesouza-chromium <[email protected]>
Co-authored-by: Anton Paymyshev <[email protected]>
Co-authored-by: AlexeyBarabash <[email protected]>
Co-authored-by: Anthony Tseng <[email protected]>
Co-authored-by: brave-builds <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI/run-audit-deps Check for known npm/cargo vulnerabilities (audit_deps) CI/run-network-audit Run network-audit CI/run-upstream-tests Run upstream unit and browser tests on Linux and Windows (otherwise only on Linux) CI/storybook-url Deploy storybook and provide a unique URL for each build feature/web3/wallet/core feature/web3/wallet needs-security-review
Projects
None yet