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 134 to Chromium 135 #27522

Draft
wants to merge 123 commits into
base: master
Choose a base branch
from
Draft

Conversation

cdesouza-chromium
Copy link
Collaborator

@cdesouza-chromium cdesouza-chromium commented Feb 6, 2025

Resolves brave/brave-browser#43864

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) labels Feb 6, 2025
@brave-builds
Copy link
Collaborator

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

This attribute has been deleted from grit, and isn't recognised anymore.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/96c98d3ae26486007669c1cd00e4da58c85659b3

commit 96c98d3ae26486007669c1cd00e4da58c85659b3
Author: dpapad <[email protected]>
Date:   Tue Feb 4 16:23:24 2025 -0800

    Grit: Remove output_all_resource_defines from list of valid attributes.

    All references to this attribute have been removed in previous CLs, both
    from public and internal repositories.

    Fixed: 389466679
One of the existing overrides using `ShouldBlockThirdPartyCookies` had
to be updated to pass the origin/overrides args into this function.

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

commit a6b7e38f7f4b1112263986c1fca59078139f046b
Author: Chris Fredrickson <[email protected]>
Date:   Wed Feb 5 05:25:50 2025 -0800

    Consolidate 3PC restrictions and ShouldBlockThirdPartyCookies methods

    This simplifies the CookieSettingsBase logic, since it no longer has
    to treat various ways of blocking 3PC differently.

    It also makes the CookieSettings API more honest, as shown in the
    CookieSettingsBase unittests: sometimes the CallbackCookieSettings class
    blocked 3PC somehow, even though its ShouldBlockThirdPartyCookies
    override always returned false. (It was blocking cookies because
    CookieSettingsBase didn't fully rely on the result of
    ShouldBlockThirdPartyCookies, and did some of the logic on its own.)

    Finally, this refactor avoids a redundant call to
    network::CookieSettings::IsThirdPartyPhaseoutEnabled in some cases.

    Change-Id: I24e45f9bb423b143f8092c5769daadd4a7fd257b
samartnik and others added 29 commits February 28, 2025 17:29
Chromium change:
https://chromium.googlesource.com/chromium/src/+/791fd6f95c875db2e132bee7f831563c690fe001

Add "Theme" settings menu option to new "Appearance" settings page.

This CL adds the "Theme" settings menu option to the new "Appearance"
settings page. In a follow up CL, a pref summary will be added as well.

Design: http://shortn/_oxzSbwNuTe

NO_IFTTT=New check

Bug: 397775252
`ImageDataBuffer` has been updated to provide `PixelData()` which is a
span. This run into failures with `PerturbPixels`.

This change spanifies the interface of `PerturbPixels`, and adjusts all
callsites to use the update interface. This has revealed the violation
of const-correctness around this methods. `ImageDataBuffer` in
particular requires a shadow file, with an override to expose the
underlying `SkPixmap` instance, to allow us to mutate the buffer.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/663ef5466d3f9741e8ada5335b3cb1857d97f631

commit 663ef5466d3f9741e8ada5335b3cb1857d97f631
Author: Fredrik Söderquist <[email protected]>
Date:   Mon Feb 24 17:02:44 2025 -0800

    spanification: //third_party/blink/renderer/core/html/canvas/canvas_async_blob_creator.cc

    Move the unsafe span construction into the ImageDataBuffer helper class
    instead.

    Bug: 351564777
This is upstream's implementation of split view.
This is part of a broader migration to use `ui::ColorVariant`.

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

commit 2abbd4438fdbed7dfc007a41b830f25bf8956add
Author: Zoraiz Naeem <[email protected]>
Date:   Tue Feb 25 15:09:30 2025 -0800

    Migrated views::Label::SetEnabledColor() to use ui::ColorVariant

    This CL also removes `u/v/examples/examples_themed_label.*` as
    ThemedLabel wrapper class is not required to support ColorIds.

    Bug: b:394420459
Chromium change:
https://chromium.googlesource.com/chromium/src/+/9bafc6332a47845a03f184ccc27bc8f4eeca2d68

commit 9bafc6332a47845a03f184ccc27bc8f4eeca2d68
Author: Qingxin Wu <[email protected]>
Date:   Tue Feb 25 07:33:46 2025 -0800

    Remove flag BiddingAndScoringDebugReportingAPI.

    It has been enabled since https://crrev.com/c/5041672 (Nov 2023). And
    it's no longer needed since there's no plan of disabling it anymore.

    Change-Id: I3058f39cdd3cd3f2a8aa7090629c30a19efa59c0
These patches are now part of chromium.

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

commit cb3669146301529c0c364a0478372fc46ddf514a
Author: Claudio DeSouza <[email protected]>
Date:   Wed Feb 19 16:51:29 2025 -0800

    [base] Adding `JSONReader::ReadList`

    This class already provides `ReadDict`, which has proven its usefulness
    in general. This change adds the corresponding implementation for
    `base::Value::Dict`.

    Bug: 40912723
Chromium change:

https://source.chromium.org/chromium/chromium/src/+/fb054facdfacd33a269b9dca975b469dec6742ec

commit fb054facdfacd33a269b9dca975b469dec6742ec
Author: Piotr Wrótniak <[email protected]>
Date:   Tue Feb 25 02:26:14 2025 -0800

    Adds AUTOFILL_LOYALTY_CARD data type to sync client side.

    This data type is added as the 'Payments' user selectable type.

    This CL is a first CL of many following 'Sync Integration Checklist'.

    Bug: 393119606
This patch cannot be supported anymore, as Chromium is migrating to
Siso, and the file being patched is now gone.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/7b86f2ed4d0615f344a2f99a5a79a70c52d39a6f

commit 7b86f2ed4d0615f344a2f99a5a79a70c52d39a6f
Author: Fumitoshi Ukai <[email protected]>
Date:   Tue Feb 25 20:38:16 2025 -0800

    remove action_remote.py

    action_remote.py was used to make action remote executable
    if allow_remote=true.
    It is no longer needed for Siso, as we can configure
    remote execution in siso config.

    action template is the only place to modify build graph
    by `use_siso` value, so we can remove //build/toolchain/use_siso_value.py if we remove these codes.

    Bug: 398130236
This change affected one of the patches we have for the permissions
JSON file.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/8714ad057986c1af152e3c87c72d62b1b8bb05d8

commit 8714ad057986c1af152e3c87c72d62b1b8bb05d8
Author: Sandor Major <[email protected]>
Date:   Wed Feb 26 13:31:43 2025 -0800

    Move Permissions Policy features files from Blink to the Network service

    The network service is going to need access to the "storage-access"
    Permissions Policy. This is the next step of moving some of the
    Permissions Policy logic out of Blink to maintain a single
    implementation of https://w3c.github.io/webappsec-permissions-policy
    across Chromium.

    Bug: 382291442
This update to `gtest` affect just a few places.

Chromium change:
https://chromium.googlesource.com/external/github.com/google/googletest.git/+/3fbe4db9a39291ae8d7a9c5f1d75896bb4c5a18f

commit 3fbe4db9a39291ae8d7a9c5f1d75896bb4c5a18f
Author: Derek Mauro <[email protected]>
Date:   Fri Feb 21 07:33:10 2025 -0800

    GoogleTest C++17 cleanups
      * Use `[[nodiscard]]` instead of GTEST_MUST_USE_RESULT_
      * Use `[[maybe_unused]]` instead of  GTEST_INTERNAL_ATTRIBUTE_MAYBE_UNUSED
      * Use `[[deprecated]]` instead of `GTEST_INTERNAL_DEPRECATED`
      * Remove `GTEST_INTERNAL_NEED_REDUNDANT_CONSTEXPR_DECL`

    PiperOrigin-RevId: 729523519
    Change-Id: Ia1b901cf9c0a0e148eec419ada0e0b56aba2dd3d
This affects the functions we are calling, but it also dispenses the use
of one substitution in place to force upstream code to use
`ColorVariant`.

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

commit e4ae2a14a8ee22ceb0517a62ba7471f78b9b9251
Author: Zoraiz Naeem <[email protected]>
Date:   Wed Feb 26 12:47:22 2025 -0800

    Migrated `LabelButton` to use ui::ColorVariant

    Bug: b:394420459
This affects the return of `IsUrlMapped`, which now requires a value to
be checked for, rather than just returning a bool.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/859690d472e75c063d1f09e8eef083dffef49bd0

commit 859690d472e75c063d1f09e8eef083dffef49bd0
Author: Janice Liu <[email protected]>
Date:   Wed Feb 26 07:52:51 2025 -0800

    [Blob URL] Update PartitioningBlobURLIssue DevTools Issue, Add kCrossPartitionSameOriginBlobURLFetch UseCounter

    Both the PartitioningBlobURLIssue DevTools Issue and
    kCrossPartitionSameOriginBlobURLFetch UseCounter should only be
    triggered when cross-partition, same origin BlobURLs are fetched.
    Previously, both were getting triggered in cross origin fetching as
    well.

    Bug: 372883697
The patch file was moved to the new file name for the implementation.

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

commit f74255f5e258d778ab817339639a2a50f67f9fce
Author: Shuhei Takahashi <[email protected]>
Date:   Wed Feb 26 17:59:43 2025 -0800

    extensions: Compile ExtensionInfoGenerator for Desktop Android

    This patch introduces a new base class ExtensionInfoGeneratorShared that
    fills a portion of ExtensionInfo common to all platforms. On Android, it
    is aliased to ExtensionInfoGenerator. On other desktop platforms,
    ExtensionInfoGenerator is defined to derive from the base class to fill
    all ExtensionInfo fields.

    Bug: 392777363
This PR was patched into M134 in brave, however it has now landed in
M135.

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

commit e6deab359b874348fb8761e18764c6249d17ac85
Author: Anthony Tseng <[email protected]>
Date:   Mon Feb 24 13:04:06 2025 -0800

    Use browser context specific URLLoaderFactory for InMemoryDownloadService

    Bring back profile URLLoaderFactory by async retrieving through
    FullBrowserTransitionManager without breaking DownloadServiceFactory
    as a SKSF (SimpleKeyedServiceFactory).

    Bug: 395544421
This is a trend with permission polices moving out of blink. This
particular change only affects feature flags.

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

commit f42e6bd64cdb0afed53cbec711f7b9249353c87d
Author: Sandor Major <[email protected]>
Date:   Thu Feb 27 16:12:04 2025 -0800

    Move permissions_policy.cc-used feature flags to the Network service

    Permissions Policy code is being moved to the Network service so these
    flags need to move as well.

    Bug: 382291442
This only affects the path for a single inclusion header.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/9c6a9a1fff68e133a2329104c77d77858f75c6b3

commit 9c6a9a1fff68e133a2329104c77d77858f75c6b3
Author: Florian Leimgruber <[email protected]>
Date:   Thu Feb 27 07:09:13 2025 -0800

    Move Autofill payments data model files into subdirectory

    In an effort to split components/autofill/core/browser/data_model into
    addresses, autofill_ai, passes and payments subdirectories, this CL
    moves all payments related files.

    The CL was auto-generated as follows:
      cd components/autofill/core/browser/data_model
      mkdir payments

      git mv bank_account* payments
      git mv bnpl* payments
      git mv credit_card* payments
      git mv iban* payments
      git mv *offer* payments
      git mv payment_* payments
      git mv payments_* payments
      git mv *wallet* payments

      cd ../../../../..
      ./tools/git/mass-rename.py
      git cl format

    Bug: 376223525
Chromium change:
https://chromium.googlesource.com/chromium/src/+/6b88305d9871a487e87b7eb9991f5fbe36940d85

[TSLO] Fix status bar coloration in desktop windowing mode

The status bar currently always uses the default tab strip background
color on a tablet when the strip is visible irrespective of the focus
state of the activity window. The strip background color changes from
the default for an unfocused desktop window and if the status bar is
contiguous with an unfocused desktop window, it incorrectly still uses
the default color that is applied only to a focused tab strip.

This CL makes an update to ensure that the status bar uses the same
color applied to the tab strip, which can be impacted by the activity
focus state.

Before:
https://screenshot.googleplex.com/9uKWnPUYcouZFSm
After:
https://screenshot.googleplex.com/AQVoLoAkvwqVvQG

Bug: 393443576
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
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Upgrade from Chromium 134 to Chromium 135
5 participants