This CL includes the @vscode/web-custom-data package. It's maintained by MS for vscode and includes MDN documentation for various CSS and other web features. We want to display this info also in DevTools. Given that the file has an uncompressed size of ~730kB, we need to fetch the browsers.css-data.json file remotely, similar to locale files. As such we don't include the file in our GRD. For now, we DEPS the file in via the elements panel as this will be the sole user for now. Should we need the information in other parts of DevTools we might move the dependency to front_end/BUILD.gn. DISABLE_THIRD_PARTY_CHECK=Already include the package in the build output R=bmeurer@chromium.org Bug: 1401107 Change-Id: I104a09b5c49d2b811e31a853c95ba8c3034b2dee Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4187235 Commit-Queue: Simon Zünd <szuend@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
third_party packages shipped as part of the DevTools front_end/
This directory contains all packages that are shipped in the DevTools front_end/ bundle.
All third_party packages that are solely used for building DevTools should live in //third_party instead.
third_party packages included in this directory will be subject to additional security review and monitoring.
Inclusion of new front_end/third_party/ packages
If you would like to add a new third_party package to this directory, please perform the following steps:
- Assess the increase in bundle size and make sure this is not too big.
This will be determined on a case-by-case basis, taking into account the portion of DevTools users that will take advantage of the new feature.
- If you are unsure whether the size will be an issue, please email devtools-dev+third_party@chromium.org for guidance before opening any CL.
- Obtain security review from chrome. You can read full guidance on this process here.
- Send an email to security@chromium.org with some context, the package you want to add and a link to a Design Doc or other documentation
- Add devtools-dev+security@ in the CC and start the title with
[DevTools]. - Note that all existing third_party packages in
front_end/will be legacied in, but will receive post-inclusion security review.
- Open a single CL with only the source of the third_party package and required Ninja build configuration.
- Add chromium-third-party@google.com as a reviewer. The
gwsqbot will choose an appropriate reviewer for the CL. - All existing Chromium third_party policies about documenting the code's context still apply. You can read the "Document the code's context" section here.
- You will be responsible for keeping the package up-to-date. As such, add yourself as OWNER.
- Wait for approval from both the securty- and the third-party reviewer before landing the CL. Reviewers might not have +1 permission so approval could be an email or a comment on the CL. See below for more information on updating existing packages.
- Add chromium-third-party@google.com as a reviewer. The
- After the first CL has been submitted, open a follow-up CL with the implementation/usage of the new third_party package.
Updating existing front_end/third_party/ packages
Packages must be updated on a suitable cadence (preferably monthly or weekly). Any breaking changes must be mitigated in a separate CL, before the package update CL is submitted. If breaking changes can not be mitigated in isolation, assess the overall impact on codebase and notify devtools-dev@ about the upcoming breaking change. That way, other code contributors are aware of potential merge conflicts and regression mitigations.
If the functionality of the package changed significantly in the update, you might have to obtain another security review. Ask devtools-dev+security@ for guidance if you are unsure.