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 130 to Chromium 131. #25662

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

Upgrade from Chromium 130 to Chromium 131. #25662

wants to merge 154 commits into from

Conversation

mkarolin
Copy link
Collaborator

Resolves brave/brave-browser#41130

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:

cdesouza-chromium and others added 30 commits September 19, 2024 14:04
This reverts commit 2960a79.

These histograms have been been deprecated and removed.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/80016c67a22927fc92e4862e434809f8f685e7b8

commit 80016c67a22927fc92e4862e434809f8f685e7b8
Author: Alvin Lam <[email protected]>
Date:   Tue Aug 20 20:41:16 2024 +0000

    [TP Onboarding] Remove Eligibility API.

    OBSOLETE_HISTOGRAMS="Removing Histograms that track notice state as part
    of the onboarding notice deprecation"

    Bug: 359192834
This is mostly a token replacement, although the new type is scoped
enum, which requires explicit casts.

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

commit e914ad79c884e7beb1ec28342546e4b8d8f23847
Author: Md Hasibul Hasan <[email protected]>
Date:   Tue Aug 20 12:38:58 2024 +0000

    [UI] Use mojo enum for `DialogButton`

    This CL removes `DialogButton` enum from ui_base_types.h.
    Replaces the uses of `DialogButton` with the mojo version.

    The following script is used for replacing with different
    folder name.
    Script: https://issues.chromium.org/issues/355460976#comment2

    AX-Relnotes: N/A
    Bug: 355460976
This is of no consequence as none of our code was making use of this
argument.

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

commit 2a5ed806c79db0300ed081fab533aba37bb814b4
Author: David Bienvenu <[email protected]>
Date:   Tue Aug 20 18:51:19 2024 +0000

    Remove Launch.Modes histogram.

    Launch.Modes was deprecated in favor of Launch.Mode2 almost 2 years ago.
    This CL removes Launch.Modes and all the code that recorded it.

    OBSOLETE_HISTOGRAM[Launch.Modes]=Replaced by Launch.Mode2

    OBSOLETE_HISTOGRAM[Windows.Launch.TaskbarInstallerPinned]=Expired

    Bug: 40239637
Chromium change:
https://chromium.googlesource.com/chromium/src/+/39d79d684d4ff5a7dcb7f9050e5d0ebd07bcf131

commit 39d79d684d4ff5a7dcb7f9050e5d0ebd07bcf131
Author: Christine Ying <[email protected]>
Date:   Tue Aug 20 16:43:54 2024 +0000

    [PrivacyPolicy] Link the Privacy Policy embedded page.

    Links the privacy policy embedded page to the PS dialog untrusted UI under the "privacy-policy" page

    Change-Id: I9542476c3da8b8f7c03888fa5f92e06a3acf397e
    Bug: 358087159
Browser state headers are now under `profile/`.

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

commit c116f5bfb3e61e40665a49145bdbf307d92db740
Author: Aliona DANGLA <[email protected]>
Date:   Mon Aug 19 12:09:02 2024 +0000

    [iOS] Replace imports of chrome browser state manager

    Replace import that as been introduced during migration.

    Fixed: 359176329
This is merely a header inclusion replacement where `browser_state`
becomes `profile/`.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/288dc8c48b50000cd9d774d6c6aef5abb13cd15b

commit 288dc8c48b50000cd9d774d6c6aef5abb13cd15b
Author: Aliona DANGLA <[email protected]>
Date:   Tue Aug 20 15:20:55 2024 +0000

    [iOS] Replace imports for sign in info and push notification

    This is part of renaming Chrome browser state project.

    Fixed: 360843134, 360843194
Chromium change:
https://source.chromium.org/chromium/chromium/src/+/411baffb653d80aff9bd7496239432181c4e7977

commit 411baffb653d80aff9bd7496239432181c4e7977
Author: Erik Chen <[email protected]>
Date:   Tue Aug 20 07:14:06 2024 +0000

    Stub out TabFeatures in tab unit tests.

    In production code, tabs are always created with TabFeatures. There are
    some unit tests that create tabs outside the regular context of a
    Browser/BrowserView. These tests need to stub out TabFeatures. This CL
    creates a utility method to do so, and calls it from relevant unit
    tests.

    Change-Id: I9bd3d71a3041e873541636e08ac2285cdf642263
    Bug: 360169305
…der"

This reverts commit d854658.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/8b5230a906edca638bcdc16b9c84cf3af04fb3e2

commit 8b5230a906edca638bcdc16b9c84cf3af04fb3e2
Author: Shunya Shishido <[email protected]>
Date:   Wed Aug 21 01:44:28 2024 +0000

    Revert "Remove Launch.Modes histogram."

    This reverts commit 2a5ed806c79db0300ed081fab533aba37bb814b4.

    Reason for revert: Tests started failing in Mac11, 12, 13 Tests.

    Original change's description:
    > Remove Launch.Modes histogram.
    >
    > Launch.Modes was deprecated in favor of Launch.Mode2 almost 2 years ago.
    > This CL removes Launch.Modes and all the code that recorded it.
    >
    > OBSOLETE_HISTOGRAM[Launch.Modes]=Replaced by Launch.Mode2
    >
    > OBSOLETE_HISTOGRAM[Windows.Launch.TaskbarInstallerPinned]=Expired
    >
    > Bug: 40239637
    > Change-Id: I118d9290a7c15814a0c9b3f04ccac1c30bb82586
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5794174
    > Reviewed-by: Avi Drissman <[email protected]>
    > Commit-Queue: David Bienvenu <[email protected]>
    > Reviewed-by: Caitlin Fischer <[email protected]>
    > Code-Coverage: [email protected] <[email protected]>
    > Cr-Commit-Position: refs/heads/main@{#1344299}

    Bug: 40239637, 361197694
This attribute has been allowed recently, and the macro `UNLIKELY` has
been deleted.

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

commit 2b074078243eb841259e6c61db81b48e10ad1ce4
Author: Peter Kasting <[email protected]>
Date:   Thu Aug 22 00:01:17 2024 +0000

    Remove [UN]LIKELY().

    These have been replaced with the C++20 versions.

    Bug: 40256217
Upstream is plumbling WebContents discard through some of types that we
override. This is immaterial to our code, however it has to be matched
through our overrides to be plummed through them. This change adds the
argument to the missing interfaces.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/00d3927706c48be0896aac45e9341db2470c16bd

commit 00d3927706c48be0896aac45e9341db2470c16bd
Author: Thomas Lukaszewicz <[email protected]>
Date:   Wed Aug 21 23:54:10 2024 +0000

    Reland "Implement WebContents discard by clearing the primary frame document"

    This is a reland of commit ce4ea2692091b299b26cc7967f9e1b980c583e09

    See diff against PS1.

    Addressed timeout issue in DiscardClearsDedicatedWorkers test.
    Destruction of blink::DedicatedWorker post Discard() relies on
    async GC sweep in V8, which can result in timeouts on bots.

    Updated extension tab loading status to report unloaded when the
    tab is discarded. The tab will retain its render process when
    discarded with the new mechanism (consistent with previous behavior).

    Original change's description:
    > Implement WebContents discard by clearing the primary frame document
    >
    > See go/discard-frame-tree for additional details and to contribute
    > to discussion.
    >
    > This carries on from fdoray's prototype (crrev.com/c/4060064) and
    > erik's follow up (crrev.com/c/5454457).
    >
    > This CL introduces a new discard mechanism that avoids needing
    > to replace the tab's WebContents.
    >
    > Discard works by clearing the primary frame tree, done via replacing
    > Blink's primary document. This frees resources associated with the
    > primary frame and clears away any child frames attached to the
    > frame tree.
    >
    > Discard does not result in creation of any session entries and does
    > not emit navigation-related events
    >
    > Key changes:
    >  - Update TabLifecycleUnit::FinishDiscard to no longer create
    >    a empty WebContents for the discard operation. Instead discard
    >    is implemented via replacing the primary blink document
    >
    >  - The tab thumbnail implementation has been updated to handle the
    >    new discard mechanism
    >
    >  - OneTimePermissionsTrackerHelper was updated to leverage the
    >    existing WebContents observation instead of relying on
    >    TabLifecycleObserver
    >
    >  - Multiple test updates / fixes to reflect discard API changes
    >    and address incorrect assumptions (active tabs cannot be
    >    discarded)
    >
    > Notifications for discard events with both the old and new
    > WebContents from the original API remain. These can be removed or
    > refactored in the follow up CLs.
    >
    > PERFETTO_TESTS=`autoninja -C out/Default perfetto_diff_tests &&
    > out/Default/bin/run_perfetto_diff_tests`
    >
    > Bug: 347770670
    > Change-Id: I32e87b2b992914a7ae0e0bbdddf78f1b27c5773b
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5637909
    > Commit-Queue: Thomas Lukaszewicz <[email protected]>
    > Reviewed-by: Nicolás Peña <[email protected]>
    > Code-Coverage: [email protected] <[email protected]>
    > Reviewed-by: Victor Vianna <[email protected]>
    > Reviewed-by: Florian Jacky <[email protected]>
    > Reviewed-by: David Pennington <[email protected]>
    > Reviewed-by: Rakina Zata Amni <[email protected]>
    > Reviewed-by: Daniel Cheng <[email protected]>
    > Cr-Commit-Position: refs/heads/main@{#1343920}

    Bug: 347770670
This event used to be part of the base class. Now with its deletion the
internal function `SyncServiceImpl::StopAndClear` has to be exposed
through `BraveSyncServiceImpl` to keep the existing code in use.

This change turns the private function into a virtual function, to allow
us to keep plugging our own changes into it.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/769c49bea8b02913b69c1607bbe3d2190a3067bb

commit 769c49bea8b02913b69c1607bbe3d2190a3067bb
Author: Victor Hugo Vianna Silva <[email protected]>
Date:   Wed Aug 21 12:41:28 2024 +0000

    Remove SyncService::StopAndClear()

    The method can be removed from the interface, its last usage was
    removed in crrev.com/c/5800572.

    Bug: 40797392
This new header is supposed to simplify the inclusion of
`PlatformBrowserTest` for android/non-android tests.

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

commit dbf91b261f7a99ae7937eecc7ce2871feeb20c0b
Author: Devlin Cronin <[email protected]>
Date:   Thu Aug 22 22:35:56 2024 +0000

    Move PlatformBrowserTest alias to platform_browser_test.h

    Currently, every test leveraging PlatformBrowserTest should include
    the following if-def block:

    ```
    #if BUILDFLAG(IS_ANDROID)
    #include "chrome/test/base/android/android_browser_test.h"
    #else
    #include "chrome/test/base/in_process_browser_test.h"
    #endif
    ```

    And, in turn, PlatformBrowserTest is an alias for either
    AndroidBrowserTest or InProcessBrowserTest, as defined in each of
    those files.

    This makes for a lot of boilerplate, and instead we can just move
    that if-def'd alias to a single file, platform_browser_test.h, that
    each class can include.

    This CL makes the following changes:
    - Updates any sites that previously included that if-def block to just
      include platform_browser_test.h
    - Fixes many IWYU cases where classes were not properly including any
      header file
    - `git cl format` (which fixes a few cases of improper header sorting)

    Bug: 361002665
This modernises code away from the unscoped enum that was being used.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/78865bbb3da76c31548130e87e20ce1357ac3c8b

commit 78865bbb3da76c31548130e87e20ce1357ac3c8b
Author: Avi Drissman <[email protected]>
Date:   Thu Aug 22 20:57:19 2024 +0000

    Don't use int for bindings

    Switch to a modern type, EnumSet.

    Fixed: 361106055
This file started pulling in some other headers, which eventually run
into unwanted substitution for the toke `MIDI`.
This change affects a few overrides we have, however it is just a matter
of passing the `WebContents` along.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/3de66adf4d6bdb878c1a402401dc37353084a10f

commit 3de66adf4d6bdb878c1a402401dc37353084a10f
Author: Dibyajyoti Pal <[email protected]>
Date:   Fri Aug 23 23:34:03 2024 +0000

    [PWA] Allow WebContentsImpl::CreateNewWindow() to use new web contents
    for loading url

    This CL ensures that chrome::AddWebContents() always returns the web
    contents in which navigation has happened via ::Navigate() all the
    way to WebContentsImpl::CreateNewWindow(), during a new top level
    creation.

    This allows url loading in the web contents to be done via the same
    LoadUrlParams that the blink layer initially sent to complete
    navigation, leading to its properties still being maintained, which
    is more secure. Currently, the NavigationParams being created from
    this function do not maintain that information, which could be
    problematic.

    This helps solve the following PWA navigation capturing use-case:
    1. App A creates a new top level traversable of App B for url b.com
    2. App B already has an open window with a launch_handling of
    Navigate existing, in which case, App B's window is focussed.
    3. Navigation to b.com/ happens in App B's window.

    Currently, the navigation to url b.com/ does not accurately
    populate all the LoadUrlParams, leading to dropped information. More
    details are in https://docs.google.com/document/d/1a8NgBD26ovh3rqpt5QWMAI6wQ-V68OJoEtJ-W--cNMY/edit#heading=h.ybqtwkw0flyr

    Bug: 359599878, 359600606, 351775835
This function has a switch over this enum, which causes build time
failures for unhandled keys.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/4b42ffd5892d47fafabcd8407dad2c5995e14fca

commit 4b42ffd5892d47fafabcd8407dad2c5995e14fca
Author: Sebastien Lalancette <[email protected]>
Date:   Fri Aug 23 13:10:25 2024 +0000

    Add Error Histograms to Unexportable Windows Key Operations

    We noticed that TPM-backed keys fail to be created even if there exists a provider supporting creating those keys. Adding histograms to try and get insights into those failures (reported by users).

    Bug: 347025280
IsAllowlistedForContentSettings was deleted and, per our security folks, this
check is no longer needed in our code.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/0b2cf1f0a0a9de98d815a2f7be610fddcd071139

commit 0b2cf1f0a0a9de98d815a2f7be610fddcd071139
Author: Erik Chen <[email protected]>
Date:   Mon Aug 26 22:15:35 2024 +0000

    Delete dead code for content settings.

    Bug: 40282541
Per the security and sync teams, we are good to leave this enabled now (it is
associated with MVTs - most visited tiles - on iOS/Android devices).

Chromium change:
https://chromium.googlesource.com/chromium/src/+/0097fc4f2a54707d0a80a90a27d38768fb683a76

commit 0097fc4f2a54707d0a80a90a27d38768fb683a76
Author: Benjamin Williams <[email protected]>
Date:   Tue Aug 27 00:21:07 2024 +0000

    [iOS] Remove flag kSyncSegmentsData

    The kSyncSegmentsData feature has been fully launched in M122, rendering
    the associated Finch experiment and feature flag code obsolete. This
    change removes this unnecessary code.

    Change-Id: If4c4cc300f219f66c9e0726bc94c26058359fd6e
    Fixed: 361123856
The world id argument used to have a default but now it has to be
provided by the caller.

Chromium change:
https://chromium.googlesource.com/chromium/src/+/73cb98534375506288904ac3eb7ab6e35e94f0e0

commit 73cb98534375506288904ac3eb7ab6e35e94f0e0
Author: Avi Drissman <[email protected]>
Date:   Mon Aug 26 18:10:58 2024 +0000

    Don't have default arguments on virtual functions in render_frame_host.h

    Bug: none
Extra keys have been added to `FormFactor` enum, and these need to be
added to switch going over the device type.

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

commit d71df23934c6909345815b4264c26d656b89c6fa
Author: Rushan Suleymanov <[email protected]>
Date:   Mon Aug 26 08:17:19 2024 +0000

    [Sync] Add DeviceInfo form factors to proto

    New form factors added: Automotive, Wearable, TV. These form factors are
    not used currently, so the default behavior similar to Unknown field is
    chosen in the existing switch-case code.

    Low-Coverage-Reason: TRIVIAL_CHANGE This CL adds new form factors and the file contains convertions between two similar enums.
    Bug: b:355283552
`BraveTestingProfile` is used as a substitution, and it therefore it
must match the parent class constructor change.

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

commit bb1ae862cc7112b9615fc08ca43a885aecef00e7
Author: Hidehiko Abe <[email protected]>
Date:   Tue Aug 27 05:08:43 2024 +0000

    Add CreateMode parameter to TestingProfile's ctor

    Also TestingProfile::Builder starts to support CreateMode.

    Bug: 341267441
    Test: Tryjob
…arams

Chromium change:
https://source.chromium.org/chromium/chromium/src/+/65b9c4bd3383cf241a490f9e8988f14a8206c962

commit 65b9c4bd3383cf241a490f9e8988f14a8206c962
Author: Sohail Rajdev <[email protected]>
Date:   Wed Aug 21 10:20:10 2024 +0000

    Allow WebContents with no window in ExtensionInstallPromptShowParams

    Earlier, ExtensionInstallPromptShowParams did not allow WebContents
    which had no parent window. They were only allowed in tests and this
    was ensured by the CHECK_IS_TEST() macro in the constructor.

    However, there can be real world cases (outside tests) in which the
    WebContents do not have a parent window. One example is
    WebstoreInstallWithPrompt that uses dummy WebContents which do not
    seem to have a parent window on macOS.

    This check relaxes the test-only assumption and allows non-test code
    to pass WebContents which do not have an associated parent window.

    Bug: 360321351
We map the new form factors to kUnknown as in the upstream code.

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

commit d71df23934c6909345815b4264c26d656b89c6fa
Author: Rushan Suleymanov <[email protected]>
Date:   Mon Aug 26 08:17:19 2024 +0000

    [Sync] Add DeviceInfo form factors to proto

    New form factors added: Automotive, Wearable, TV. These form factors are
    not used currently, so the default behavior similar to Unknown field is
    chosen in the existing switch-case code.

    Low-Coverage-Reason: TRIVIAL_CHANGE This CL adds new form factors and the file contains convertions between two sim>
    Bug: b:355283552
…trolsVisibilityDelegate

- new argument at BottomControlsMediator.ctor - browserControlsVisibilityDelegate
- new argment at BottomControlsCoordinator.ctor - browserControlsVisibilityDelegate

Related Chromium change:
https://source.chromium.org/chromium/chromium/src/+/d813d2e1ad66f8954e2e1da0821fa55eb9a21a70

	Force browser controls to show up when creating new tab group

	When tab group is created via long press context menu, it'll triggers SimpleAnimationLayout then shows the tab group. This flow will detach the current tab and add it back; during this process, the new browser controls height, which is changed due to tab group UI being added, does not dispatched to the render. This causes a bug when the tab is reattached and becomes interactable, the offset read from TabBrowserControlsOffsetHelper is stale, leaving the tab group UI scene layer on the screen.

	This CL work around this by forcing the browser controls to be visible when the tab group UI becomes from hidden to visible. This has no impact to flows other than context menu -> "open new tab in group", as switching tabs will force browser controls to show transiently already.

	Bug: 357398783
	Change-Id: I419b9303b033f0f621956952bc61c56a199fc338
	Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5809240
…ckListener - profile

Related Chromium change:
https://source.chromium.org/chromium/chromium/src/+/4dcf25d9a523889df8026b58437ccc2ee49ba220

[IncognitoIndicator] Add IPH to tab switcher button for new menu options

	Screenshots:
	https://screenshot.googleplex.com/6y9hPhUnFbY6d36
	With a11y (string pending confirmation from UX): https://screenshot.googleplex.com/762wcwG78ayVKnf

	Bug: 356925021
	Change-Id: Ie6456048b6190dcc5022dbf9936d7f3a2ffac691
	Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5806464
emerick and others added 18 commits September 19, 2024 09:13
…dgeControllerSupplier

Related Chromium change:
https://source.chromium.org/chromium/chromium/src/+/a269abacce33fa1cdb136a4c4b0ef6b6d20d4d0b

	[E2E] Draw Incognito NTP edge to edge

	This change plumb through the EdgeToEdgeController to Incognito NTP (INTP). When drawing edge to edge, add the bottom inset padding to INTP's scroll view, and #setClipToPadding(false). This makes the view drawing into the nav bar region while ensure the controls in the page remains reachable when scrolled to the bottom.

	The change also introduces an interface for NativePage to check if it is compatible for edge to edge. Currently only INTP is supported, and change is guarded behind DrawKeyNativePageToEdge.

	The preview:
	https://screenshot.googleplex.com/BYiJ8TkNP4Q3pqa

	Bug: 339025702
	Change-Id: I86459682089adc9f8898382fb90278136444c705
	Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5847378
It is not static now and have a new tracker arg.

Related Chromium change:
https://source.chromium.org/chromium/chromium/src/+/828eb6d14543d75671991083fd162b3308bcadbe

	[DefaultBrowser] Add helper for the role manager restriction

	This CL adds a helper DefaultBrowserPromoUtils#shouldShowOtherPromo to
	decide if other default browser promos can be shown.
	The conditions mean to ensure that we only show other promo when the
	role manager promo can't be shown either because of reaching the max
	count or role manager not available in the current system.

	It also adds the a feature engagement event to ensure the new promo
	can only be shown if the role manager promo not shown in the 7 days
	window.

	Bug: 364906215
	Change-Id: If5684ee24ff87d193939dd9b8c6ae6d2a8af783c
	Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5839024
`top_frame_origin` is not being passed as a reference to an optional
anymore, as that can lead to unwanted copies. This change corrects our
overrides to that function to match the signature upstream.

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

commit eeda933c994ab5e0e9612bc695b78e38231a8bd1
Author: Chris Fredrickson <[email protected]>
Date:   Tue Sep 17 14:06:47 2024 +0000

    Use base::optional_ref<T> instead of std::optional<T>&

    std::optional<T> is a value that might absent, whereas
    base::optional_ref<T> is a reference that might be absent. Thus, use
    of std::optional<T> results in an unnecessary copy when implicitly
    converting from a T&; base::optional_ref avoids that copy.

    (A function parameter of type base::optional_ref<T> is similar to a
    parameter of type T*, except that the base::optional_ref allows the
    use of temporaries.)

    Change-Id: Ib627b18105e6a6d18d892f4731f5049b183a9df0
With the use of span as an outparam, it becomes possible to better
iterate over the items.

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

commit b3255fdcb98caf809e094ff2016930f8abf96e74
Author: Fredrik Söderquist <[email protected]>
Date:   Tue Sep 17 00:16:36 2024 +0000

    spanification: WTF::String::CreateUninitialized()

    Forward to the span<> variant on StringImpl.

    Bug: 351564777
Chromium change:

https://source.chromium.org/chromium/chromium/src/+/924617d4a513876f7cf0097d073a037d08b9eb31

commit 924617d4a513876f7cf0097d073a037d08b9eb31
Author: dpapad <[email protected]>
Date:   Tue Sep 17 17:57:45 2024 +0000

    Settings: Replace remaining <iron-icon src=...> usages with cr-icon.

    `src=...` is not supported by cr-icon. In order to accommodate, using an
    <img> element directly when `src=...` is needed (in both cases it was
    done to display throbber_small.svg).

    Bug: 40943652
Chromium changes:

https://source.chromium.org/chromium/chromium/src/+/1ed8db05a7a2c2affbff615d8aaea759ac87bade

commit 1ed8db05a7a2c2affbff615d8aaea759ac87bade
Author: Erik Chen <[email protected]>
Date:   Tue Sep 17 07:31:34 2024 +0000

    Reduce fragility in SidePanelCoordinator (part 7 / N)

    This CL is a refactor with no intended user-visible impact.

    This CL deletes the view property SidePanelContentState. This is only
    read by SidePanel and only set by SidePanelCoordinator. By removing the
    view property we remove an unnecessary layer of indirection. This is
    replaced by Open and Close methods on SidePanel which
    SidePanelCoordinator calls.

    This CL adds a state member to SidePanel to track and expose the
    internal state machine. State is one of: kClosed, kOpening, kOpen,
    kClosing.

    SidePanelCoordinator is the only entity that should be controlling
    visibility of SidePanel. All other calls to UpdateVisibility() were
    removed. These calls appear to be side effects of relying of
    view-properties to propagate state changes.

    Bug: 363743081

https://source.chromium.org/chromium/chromium/src/+/31a977c143b574bc9d85e1979e2483b3369daf54

commit 31a977c143b574bc9d85e1979e2483b3369daf54
Author: Erik Chen <[email protected]>
Date:   Wed Sep 18 04:28:39 2024 +0000

    Reduce fragility in SidePanelCoordinator (part 9 / N)

    This CL is a refactor with no intended behavior change.

    This CL moves the class SidePanelContentSwappingContainer from
    SidePanelCoordinator to SidePanel.

    Bug: 363743081
Chromium change:

https://source.chromium.org/chromium/chromium/src/+/2646de6874e08c0da01754b72486c29a01cdedd1

commit 2646de6874e08c0da01754b72486c29a01cdedd1
Author: Emily Shack <[email protected]>
Date:   Tue Sep 17 22:09:42 2024 +0000

    Declutter: Allow opening to a specific feature

    Adds a profile pref for the feature the tab organization tab within the
    tab search bubble should display when opened. This follows the pattern
    used for opening the bubble to a specific tab. For now, this is used by
    auto tab groups entry points to bypass the selector. Future use cases
    such as the chip and any other new entrypoints will similarly be able to
    open the bubble directly to declutter.

    Bug: 366236403
Chromium change:

https://source.chromium.org/chromium/chromium/src/+/7a7f7387efa2e2a34fe41cbef79a6f7660ce3328

commit 7a7f7387efa2e2a34fe41cbef79a6f7660ce3328
Author: S. Ganesh <[email protected]>
Date:   Tue Sep 17 17:18:44 2024 +0000

    Add the ability to set a description for the InstallServiceWorkItem

    Bug: 343638931
@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 Sep 19, 2024
On MacOS/iOS:

 ERROR at //chrome/updater/mac/BUILD.gn:13:1: Value collision.
 import("//chrome/updater/branding.gni")
 ^-------------------------------------
 This import contains "keystone_app_name"
 See //brave/chromium_src/chrome/updater/branding.gni:18:23: defined here.
   keystone_app_name = "BraveSoftwareUpdate"
                       ^--------------------
 Which would clobber the one in your current scope
 See //chrome/enterprise_companion/branding.gni:32:23: defined here.
   keystone_app_name = "ChromiumSoftwareUpdate"
                       ^-----------------------
 Executing import should not conflict with anything in the current
 scope unless the values are identical.
 See //chrome/updater/BUILD.gn:23:14: which caused the file to be included.
     deps = [ "//chrome/updater/mac" ]
              ^---------------------

Chromium change:

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

commit bd96319778e6f280a4915b29f1ca16c16d6f00af
Author: Noah Rose Ledesma <[email protected]>
Date:   Tue Aug 6 21:41:11 2024 +0000

    Create pkg installer for MacOS

    Add a build rule which creates a pkg installer for MacOS. The pkg
    installer copies the application bundle to a staging directory (adj. to
    the installation), and runs the enterprise_companion binary with the
    install flag, akin to O4's installer.

    Behind the install flag, the logic for Linux's installer is now shared
    with Mac to simply copy the executable to the install directory and
    configure permissions.

    Finally, a new integration test target was added to provide coverage of
    this installation experience. Integration tests are distinct from unit
    tests in that they will require root/admin privileges.

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

Successfully merging this pull request may close these issues.

Upgrade from Chromium 130 to Chromium 131
7 participants