Skip to content

Commit 8aaefa7

Browse files
dgp1130pkozlowski-opensource
authored andcommitted
docs: expand Angular's browser policy by adopting the "widely available" Baseline (angular#60754)
This effectively expands Angular's existing browser support policy to be defined as browsers covered by the "widely available" Baseline (effectively browsers released <30 months ago). Each major version will choose a date shortly before release and pin its version support to the "widely available" Baseline of that date. For now, I'm arbitrarily picking March 31st as I try to land the general infra and policy change, but we'll likely update the exact date a little closer to the v20 RC. PR Close angular#60754
1 parent 61012cb commit 8aaefa7

File tree

2 files changed

+17
-18
lines changed

2 files changed

+17
-18
lines changed

adev/src/content/reference/versions.md

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,21 @@ Until Angular v9, Angular and Angular CLI versions were not synced.
6969

7070
## Browser support
7171

72-
Angular supports most recent browsers.
73-
This includes the following specific versions:
72+
Angular uses the ["widely available" Baseline](https://web.dev/baseline) to define browser
73+
support. For each major version, Angular supports browsers included in the Baseline of a
74+
chosen date near the release date for that major.
75+
76+
The "widely available" Baseline includes browsers released less than 30 months (2.5 years)
77+
of the chosen date within Baseline's core browser set (Chrome, Edge, Firefox, Safari) and
78+
targets supporting approximately 95% of web users.
79+
80+
| Angular | Baseline Date | Browser Set |
81+
| ------- | ------------- | --------------------------- |
82+
| v20 | 2025-03-31 | [Browser Set][browsers-v20] |
83+
84+
[browsers-v20]: https://browsersl.ist/#q=Chrome+%3E%3D+105%0AChromeAndroid+%3E%3D+105%0AEdge+%3E%3D+105%0AFirefox+%3E%3D+104%0AFirefoxAndroid+%3E%3D+104%0ASafari+%3E%3D+16%0AiOS+%3E%3D+16
85+
86+
Angular versions prior to v20 support the following specific browser versions:
7487

7588
| Browser | Supported versions |
7689
| :------ | :------------------------------------------ |
@@ -81,8 +94,6 @@ This includes the following specific versions:
8194
| iOS | 2 most recent major versions |
8295
| Android | 2 most recent major versions |
8396

84-
HELPFUL: Angular's continuous integration process runs unit tests of the framework on all of these browsers for every pull request, using [Sauce Labs](https://saucelabs.com).
85-
8697
## Polyfills
8798

8899
Angular is built on the latest standards of the web platform.

adev/src/content/tools/cli/build.md

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -132,21 +132,9 @@ If the best option is to use a CommonJS dependency, you can disable these warnin
132132
The Angular CLI uses [Browserslist](https://github.com/browserslist/browserslist) to ensure compatibility with different browser versions.
133133
Depending on supported browsers, Angular will automatically transform certain JavaScript and CSS features to ensure the built application does not use a feature which has not been implemented by a supported browser. However, the Angular CLI will not automatically add polyfills to supplement missing Web APIs. Use the `polyfills` option in `angular.json` to add polyfills.
134134

135-
Internally, the Angular CLI uses the below default `browserslist` configuration which matches the [browsers that are supported](reference/versions#browser-support) by Angular.
135+
By default, the Angular CLI uses a `browserslist` configuration which [matches browsers supported by Angular](reference/versions#browser-support) for the current major version.
136136

137-
<docs-code language="text">
138-
139-
last 2 Chrome versions
140-
last 1 Firefox version
141-
last 2 Edge major versions
142-
last 2 Safari major versions
143-
last 2 iOS major versions
144-
last 2 Android major versions
145-
Firefox ESR
146-
147-
</docs-code>
148-
149-
To override the internal configuration, run [`ng generate config browserslist`](cli/generate/config), which generates a `.browserslistrc` configuration file in the project directory.
137+
To override the internal configuration, run [`ng generate config browserslist`](cli/generate/config), which generates a `.browserslistrc` configuration file in the project directory matching Angular's supported browsers.
150138

151139
See the [browserslist repository](https://github.com/browserslist/browserslist) for more examples of how to target specific browsers and versions.
152140
Avoid expanding this list to more browsers. Even if your application code more broadly compatible, Angular itself might not be.

0 commit comments

Comments
 (0)