Commit Graph
41 Commits
Author SHA1 Message Date
Aleksei Khoroshilov 110a7e5a42 siso: Include linux toolchain build dependencies. (#32882) 2025-12-22 19:54:36 +01:00
Aleksei Khoroshilov 77b59c1342 siso: Adjust fs_min_flush_timeout value. (#32883) 2025-12-18 23:31:57 +09:00
Aleksei Khoroshilov d1378a7989 Support native RBE in Siso. (#32719)
* Support native RBE in Siso.

* Move sisoenv configuration to gclient custom vars.

* Small adjustments to generation/docs.
2025-12-15 13:16:44 +07:00
Sangwoo Ko 046971c6be Add docs for tree tab architecture (#32520)
This document outlines the planned architecture and design principles
behind the tree tab feature. It covers the responsibilities of
various components, data structures, and interaction patterns to ensure
a cohesive and decoupled implementation.
2025-11-28 01:08:06 +01:00
Brian Johnson 9ebf64af83 Reorganize patching doc (#32512) 2025-11-25 06:14:42 -07:00
Brian Johnson c31f54c9ef Add docs for using forward declarations to minimize dependencies in chromium_src and patches (#32486) 2025-11-24 17:45:14 +01:00
Brian Johnson 0a037ec253 Add docs for stubbing implementations (#32487)
Add docs explaining when replacing upstream implementations is generally acceptable
2025-11-24 09:39:38 -07:00
Brian Johnson 03782c8697 Merge wiki into rust.md (#32475)
Merge the wiki entry into the doc and remove parts that were not correct
2025-11-21 14:01:34 -07:00
Brian Johnson 8d27af6429 Move patching docs to brave-core (#32407)
Copied from https://github.com/brave/brave-browser/wiki/Patching-Chromium
2025-11-18 15:24:54 -07:00
Brian Johnson 7e0819d219 Convert sources.gni codeowner to semgrep (#32229)
see https://github.com/brave/security-action/pull/869
2025-11-17 14:01:26 -07:00
Aleksei Khoroshilov 690938f72c Add docs about ignoring format/presubmit checks. (#32313)
* Add docs about ignoring format/presubmit checks.

* Add java and swift info.

* Sort python info.

* Add link to swift-format doc on ignoring source.
2025-11-17 20:21:59 +07:00
Kyle Hickinson f7fd019e83 Add note about test service creation in keyed service factories (#31984) 2025-10-25 13:18:48 -04:00
Brian Johnson 81e9818897 Add additional information about GetBrowserContextToUse returning n… (#31694)
Factories should only return nullopt based on properties that don't change during the lifetime of a browser session
2025-10-08 05:08:01 -07:00
bridiver a4807cd2c2 update keyed service docs 2025-09-23 12:55:22 -07:00
bridiver 3f3fb0aa0b add docs for keyed service patterns 2025-09-23 12:37:09 -07:00
Brian Johnson ae46e9d54e Reland https://github.com/brave/brave-core/pull/31236 [plaster] Allow exactly one of pattern (exact match) or re_pattern (python regex) (#31373)
[plaster] allow exactly one of pattern or re_pattern

Plaster should allow either pattern (exact match) or re_pattern (regex match)
2025-09-24 04:08:33 +09:00
Brian Johnson 19ed9361d5 Revert "[plaster] Allow exactly one of pattern (exact match) or re_pattern (python regex)" (#31372)
Revert "[plaster] Allow exactly one of pattern (exact match) or re_pattern (p…"

This reverts commit 241617fc84.
2025-09-23 11:41:02 -07:00
Brian Johnson 241617fc84 [plaster] Allow exactly one of pattern (exact match) or re_pattern (python regex) (#31236)
Plaster should allow either pattern (exact match) or re_pattern (regex match)
2025-09-24 03:38:05 +09:00
Brian Johnson 068de867c9 [plaster] Check config count against the actual change count (#31238)
Check plaster config count against num_changes unless count == 0
2025-09-24 03:14:12 +09:00
Sangwoo Ko 4b0521b56b [Brave Midnight] Add Brave Midnight (Darker) theme feature and pref (#30520)
* Add Brave Midnight (Darker) theme feature

This commit introduces the Brave Midnight theme, a darker variant of the
existing dark theme, providing users with enhanced customization options
for their browsing experience.

Key changes:
* Add feature flag `kBraveMidnightTheme` to control theme availability
* Create new preference `kBraveDarkerMode` to store user's theme choice
* Implement UI toggle in Customize Chrome side panel for theme switching
* Add Mojo interface methods for theme state management

Technical implementation:
- Created `browser/ui/color/features.{cc,h}` for feature flag definition
- Added feature flag to `about_flags.cc` for experimental access
- Registered preference in `brave_profile_prefs.cc` when feature is enabled
- Extended Customize Chrome UI with `DarkerThemeToggle` component
- Added Mojo interface methods `GetUseDarkerTheme`/`SetUseDarkerTheme`

The feature is disabled by default and can be enabled via the
`brave-midnight-theme` flag in brave://flags. When enabled, users can
toggle the darker theme through the Customize Chrome side panel.
2025-08-26 08:58:43 +09:00
cdesouza-chromium c441a0daea Revert "[CodeHealth] Rotation Document (#30321)" (#30496)
This reverts commit 4a2b5342bf.
2025-08-06 16:41:18 +01:00
cdesouza-chromium 4a2b5342bf [CodeHealth] Rotation Document (#30321)
This is a proposed outline for a CodeHealth rotation.
2025-08-06 15:18:56 +01:00
Jay Harris 266cb4db0e [Brave News]: Use the new strings system for Brave News (#29847)
* [Brave News]: Migrate to new strings system

* [i18n]: Make it possible to combine const enums
2025-07-02 08:18:23 +12:00
cdesouza-chromium 407770c2cb [plaster] Adding plaster check (#29716)
This change adds a dry run mode to plaster, that can be called with:

```sh
tools/cr/plaster.py check
```

This command can also be called with a list of files, that can be either
`rewrite/` files or `patches/` files.

We are also adding support to plaster for .patchinfo files, allowing a
more efficient way to make sure any given plaster file has should be
regenerated.

### What does plaster do to .patchinfo files

Plaster now generates the contents of a .patchinfo file, and based on
that content it determines if one of these files must be updated:
source, patch, or patchinfo (a combination of npm run update_patches
and npm run apply_patches). A new key is being added to the patchinfo
format, namely, plaster, which is used to store the path and checksum
for the plaster file for a given patch/source set. Files are only
updated on disk if the resulting new content doesn't match the hash of
the file saved in disk.

For now plaster always produce a .patchfile when processing a plaster,
to avoid unnecessary writes and to confirm that submitted patches do
have the expected content. This may change in the future with a more
mature approach where the contents of the patchinfo file may be used
to avoid running all the plaster transformations. This means that for
now we have to pay for a full plaster generation to determine if a file
source/patch/patchinfo are out-of-date.

Resolves https://github.com/brave/brave-browser/issues/47066
2025-06-24 11:30:02 +01:00
Jay Harris 1c8f0ac7ec [explainers]: Update WebUI overriding explainer with a link to strings and note that storybook strings are automatic now. (#29620) 2025-06-18 06:55:36 +02:00
Jay Harris 76b1eee633 [docs]: Add missing prototype (#29616) 2025-06-18 06:54:28 +02:00
Jay Harris 7d2497e2c6 [docs]: Add approach for adding a new function to a Lit component (#29599) 2025-06-17 06:23:11 +02:00
Jay Harris ccc8cbac2e [i18n]: Provide documentation for setting up automatic string bindings (#29506) 2025-06-17 01:48:51 +02:00
Brian Johnson cbba92648f Update patterns for breaking circular dependencies and usage of sources.gni (#28907)
Update patterns for breaking circular dependencies and usage of sources.gni
2025-06-11 12:56:08 -07:00
Sangwoo Ko 4c2a449a3f [Customize Chrome Panel] Adjust elements in 'Customize chrome > Appearance' panel (#29363)
* Remove preview icon
* Remove 'Brave is managing your new tab page'
* Append theme buton to the end of appearance section

Following the latest design guide, remove preview and move button in appearance panel

### Before
<img width="378" alt="image" src="https://github.com/user-attachments/assets/9cf1dd45-3e8d-47eb-bc16-d8ce78918939" />

### After
<img width="312" alt="image" src="https://github.com/user-attachments/assets/402b36b6-31b7-4842-b035-8f1704a8d8d4" />

Resolves https://github.com/brave/brave-browser/issues/44793
Resolves https://github.com/brave/brave-browser/issues/46466
2025-06-05 17:10:52 +02:00
cdesouza-chromium b694664f80 [cr137-follow-up] Correct crate patches to point to brave/ (#29132)
This change corrects all crate patches, changing them to point to
`brave/`. This eliminates the need of patching `gnrt vendor` to address
this patch mismatch.

Patches should be created now with:

```sh
git format-patch \
    --start-number=101 \
    --src-prefix=a/brave/ \
    --dst-prefix=b/brave/ \
    --output-directory \
        third_party/rust/chromium_crates_io/patches/some-crate/ \
    HEAD^
```

Resolves https://github.com/brave/brave-browser/issues/46201
2025-05-21 09:16:14 +01:00
Simone Arpe a4adfee963 (Docs) Add Git Configuration section (#29074)
Adds new Git Configuration section and includes a reference to Chromium's Guide on Improving Performance of Git Commands.
2025-05-16 14:36:56 +02:00
cdesouza-chromium f479741083 [plaster] Initial prototype (#28389)
This is the initial prototype for 🩹 Plaster. This work is based on a
recenlty worked out proposal:

https://docs.google.com/document/d/1aPf7cMB5Pc_ssKFC_I4-mLHr-7D4lTqsvItSXY-WzQM/

Run this tool with:

```
tools/cr/plaster.py
```

The tool at the moment is in a very early prototyping stage, and there
are many tickets opened for it, to get it into a mature state. The
intent is to manage to deliver this in gradual steps, while acquiring
experience alongside the way.

- Plaster files.

These are TOML files, even though they look pretty similar to ini files.

Each `[[substitution]]` entry represents an individual regex operation to be
applied to a file. The format for plasters is something like this

```toml
[[substitution]]
description = ''
re_pattern = ''
replace = ''
re_flags = ''
count = 0
```

A user can list as many of these entries as necessary for each regex
that one desires to apply to a given source.

Resolves https://github.com/brave/brave-browser/issues/45051
2025-05-16 00:03:14 +01:00
Jay Harris de08121b52 [docs]: Add documentation about how to override upstream WebUI (#28691) 2025-04-17 03:36:10 +02:00
StephenHeaps f09251effb Add documentation to create ship a file to all clients (#28353)
Add documentation to create ship a file to all clients.
2025-03-27 16:58:01 +01:00
cdesouza-chromium 4a5d046552 [canary] Add docs/version_upgrade.md (#28183)
This is the initial documentation around upgrading the upstream tag.
This will serve as an introduction to the concepts around version
upgrading. A follow up PR will go into details on using Brockit for
version upgrading.

Resolve https://github.com/brave/brave-browser/issues/44729
2025-03-25 07:07:53 +00:00
Aleksei Khoroshilov d8a85158df Add per-site farbling token support (#25674)
* Persist farbling token per schemeful site.

* Add tests for persistent farbling token.

* Handle shields metadata cleanup on site data remove.

* Update existing tests to work with the new farbling random.

* Disable farbling in some sensitive Chromium tests.

* Simplify GetShieldsMetadata.

* Use ASSERT instead of CHECK in tests.

* Alias objects memory in dumps to see the actual types.

* Few improvements to harden the object alias helper.

* Remove StackObjectCopy from this PR (better to land it separately).
2024-11-20 18:22:05 +07:00
Claudio DeSouza faec460c62 [devtools] ts_library patches moved to under script/
These patches had their target path updated. These files used to be
under `third_party/`.

Chromium change:
https://chromium.googlesource.com/devtools/devtools-frontend/+/e20bdacd076c94ada0411697d8c2c36c8af86dc6

commit e20bdacd076c94ada0411697d8c2c36c8af86dc6
Author: Simon Zünd <szuend@chromium.org>
Date:   Tue Aug 27 09:35:53 2024 +0200

    [deps] Move ts_library out of third_party

    ts_library.py and typescript.gni do not contain any third party code.
    They had the Chromium license headers from the beginning. The only
    "third-party"ness they have, is that they use the "typescript"
    npm package.

    R=alexrudenko@chromium.org

    Fixed: 362397305
2024-10-03 17:06:27 +01:00
Pavel Beloborodov 09558152d8 Added adblock info tab. (#25490)
* Added adblock info tab.
2024-09-17 08:01:27 +02:00
Brian Johnson 717a4ca92a add codeowner for sources.gni (#25351)
Add codeowner and docs for sources.gni
Fixes https://github.com/brave/brave-browser/issues/40732
2024-08-28 17:13:26 +02:00
Brian R. Bondy ee886d6ec5 Add an initial set of guidelines for Rust usage in brave-core (#19276) 2023-07-13 11:01:53 -04:00