22850 Commits

Author SHA1 Message Date
Pete Bacon Darwin b4ecc158de build(docs-infra): remove unused code (#44085)
This import was not being used and so it is redundant and can be removed.

PR Close #44085
2021-11-08 18:12:16 +00:00
JoostK b249e24979 fix(compiler): generate correct code for safe method calls (#44088)
When a safe method call such as `person?.getName()` is used, the
compiler would generate invalid code if the argument list also contained
a safe method call. For example, the following code:

```
person?.getName(config?.get('title').enabled)
```

would generate

```
let tmp;
ctx.person == null ? null : ctx.person.getName((tmp = tmp) == null ?
null : tmp.enabled)
```

Notice how the call to `config.get('title')` has completely disappeared,
with `(tmp = tmp)` having taken its place.

The issue occurred due to how the argument list would be converted
from expression AST to output AST twice. First, the outer safe method
call would first convert its arguments list. This resulted in a
temporary being allocated for `config.get('title')`, which was stored in
the internal `_resultMap`. Only after the argument list has been
converted would the outer safe method call realize that it should be
guarded by a safe access of `person`, entering the `convertSafeAccess`
procedure to convert itself. This would convert the argument list once
again, but this time the `_resultMap` would already contain the
temporary `tmp` for `config?.get('title')`. Consequently, the safe
method in the argument list would be emitted as `tmp`.

This commit fixes the issue by ensuring that nodes are only converted
once.

Closes #44069

PR Close #44088
2021-11-08 17:31:36 +00:00
Pete Bacon Darwin 49964c89e6 docs: add Angular 13 support information (#44098)
Closes #44097

PR Close #44098
2021-11-08 17:03:58 +00:00
Michael Urban baab456e56 docs(animations): update developers on state of package (#44014)
Notify developers that @angular/animations package has been "significantly de-prioritized"

`animateChild` documentation now references #30477

References #30477# Please enter the commit message for your changes. Lines starting

PR Close #44014
2021-11-08 17:03:28 +00:00
George Kalpakas 37e02750a7 build(docs-infra): fix SystemJS-based docs examples (#43868)
Previously, the SystemJS-based docs examples (typically `ngUpgrade`
examples) were not compatible with Angular v13 (due to the removal of
UMD bundles from the published packages).

This commit makes the examples compatible with Angular v13 and
re-enables the tests for all SystemJS-based examples on CI.

PR Close #43868
2021-11-08 17:01:16 +00:00
George Kalpakas 62e5285cca build(docs-infra): include systemjs as a dependency to SystemJS-based docs examples (#43868)
Due to an oversight, the `systemjs` package was previously not included
as a dependency in the boilerplate `package.json` file for
SystemJS-based docs examples, despite it being required by the app.

PR Close #43868
2021-11-08 17:01:16 +00:00
George Kalpakas 9e55a7d5f2 docs(upgrade): minor fixes to the upgrade guide (#43868)
Includes the following fixes:
- Remove unused `format` attribute from `<code-example>` elements
- Explicitly mention that the starting point for the "Phonecat Upgrade
  Tutorial" is the 1.5.x version of the original Phonecat tutorial
  (since the original tutorial has since been updated to use AngularJS
  v1.8.x and use npm instead of bower).

PR Close #43868
2021-11-08 17:01:16 +00:00
Renovate Bot acddb7f1fa build: update dependency vlq to v2 (#43901)
PR Close #43901
2021-11-08 17:00:56 +00:00
Joe Martin (Crowdstaffing) 36e75d3ddb docs: update link (#44017)
Update link to match heading.

PR Close #44017
2021-11-08 17:00:18 +00:00
Roman Frołow 9f3791432c docs(forms): fix typo in toInteger() function (#44075)
PR Close #44075
2021-11-08 16:59:08 +00:00
Joey Perrott 2c269c390a refactor(core): correct typing when getting the Nearest LContainer (#44087)
Updating the casted typings of `getNearestLContainer` to ensure that typescript properly
returns the LContainer | null type.

PR Close #44087
2021-11-05 21:31:49 +00:00
Joey Perrott 401b5bf2af refactor(core): correct typing checks when registering destroy hooks (#44087)
Making the typing filtering more explicit allows typescript to properly recognize the presence of the
`prototype` property on the provider within the `registerDestroyHooksIfSupported` method.

PR Close #44087
2021-11-05 21:31:49 +00:00
Joey Perrott e0ae557aee refactor(core): remove truthy check for classes getter (#44087)
Remove the truthy check for the classes getter as both paths from the check assume className was not
undefined.  This allows for typescript to properly determine the type of `className` in the falsy path
from the truthy check.

PR Close #44087
2021-11-05 21:31:49 +00:00
iRealNirmal 1543aaedd6 refactor(forms): update minlength/maxlength to inherit abstractValidator (#43998)
Modified minlength and maxlength validator to inherit abstractValidator

For every validator type different PR will be raised as discussed in #42378.

Closes #42267

PR Close #43998
2021-11-05 20:09:53 +00:00
Renovate Bot 725a1a49ec build: lock file maintenance (#44003)
PR Close #44003
2021-11-05 20:05:41 +00:00
Joey Perrott 00971025e5 ci: update mobile browsers tested via browser stack to correctly test supported browsers (#43858)
Update to running tests against latest ios and android emulators.

PR Close #43858
2021-11-05 19:56:03 +00:00
Joey Perrott 3f07e20bda docs: remove reference of testing against BrowserStack (#43858)
Remove BrowserStack from statement about CI tests using the service as Angular now only uses Saucelabs for
our platform specific browser testing.

PR Close #43858
2021-11-05 19:56:03 +00:00
Joey Perrott 4206d493e9 docs: update listed supported browsers to accurately reflect support browsers (#43858)
Update documentation to note 2 most recent major versions of Android browser support
rather than explictly listing browsers.

PR Close #43858
2021-11-05 19:56:03 +00:00
Dustin M. Eastway 544c26d779 docs: fix typescript errors for the schematics-for-libraries example (#30966)
PR Close #30966
2021-11-05 16:33:26 +00:00
Dustin M. Eastway 024fd9d9f0 docs: add cross-platform support to postbuild in schematics-for-libraries (#30966)
Use the cross-platform `copyfiles` package instead of using `cp` which fails on Windows machines when copying files in the `postbuild` script of the "schematics-for-libraries" example.

PR Close #30966
2021-11-05 16:33:26 +00:00
Jelle Bruisten 64af4b9c1b docs: fix typo in the CHANGELOG (#44058)
PR Close #44058
2021-11-05 16:32:08 +00:00
A. Singh 35072796c2 docs: improve documentation (#44031)
PR Close #44031
2021-11-05 16:23:50 +00:00
Paul Gschwendtner 35d57f2250 build: add angular v12 packages to renovate ignore list (#44054)
The Angular v12 alias packages should not be accidentally updated to
v13 by Renovate. These packages are still used by tests for e.g. Ngcc
and should continue to provide the APF v12 View Engine output.

PR Close #44054
2021-11-05 16:22:53 +00:00
Paul Gschwendtner bac03a95d7 ci: do not capture nested bazel integration test workspace within Bazel (#44061)
The `integration/bazel` folder cannot be excluded within the
`.bazelignore` file. This is necessary so that the integration test
rule can glob for all files within the integration test.

The downside is that the `integration/bazel/<..>` folder is being
discovered by the `//...` target query, causing Starlark files to
be interpreted/validated. e.g.

https://app.circleci.com/pipelines/github/angular/angular/39255/workflows/c6c448ed-9a44-49b3-a0c2-2c7328ce2855/jobs/1079169

Previously such errors did not appear because no Starlark `.bzl` files
within the test imported other files using the `//` absolute resolution.

Explicitly excluding the nested packages using the `--deleted_packages`
option is the most idiomatic way of achieving this currently (similarly
done by `rules_nodejs`). More information on why this is so verbose
currently:

https://github.com/bazelbuild/bazel/issues/12034

PR Close #44061
2021-11-05 16:22:17 +00:00
Paul Gschwendtner d965331cf6 refactor(bazel): fix typo in packager action file comments (#44061)
Fixes two typoes in the packager logic.

PR Close #44061
2021-11-05 16:22:17 +00:00
Paul Gschwendtner 0d0895edfa test: re-enable bazel integration test with APF v13 (#44061)
Re-enables the Bazel integration test that we have disabled
as part of the APF v13 changes. Since there are no UMD files
anymore, the Karma tests no longer worked. Similarly, the Angular
linker had to run for building the production bundle.

PR Close #44061
2021-11-05 16:22:17 +00:00
Aristeidis Bampakos 22edf0263f docs: update install guide for angular elements (#44077)
Co-Authored-By: George Kalpakas <kalpakas.g@gmail.com>

PR Close #44077
2021-11-05 16:21:57 +00:00
Alan Agius 523e8fd8a3 docs: update Definition of Terms in APF guide (#44060)
Several improvements to the Definition of Terms of terms section in the APF guide.

PR Close #44060
2021-11-04 18:59:13 +00:00
Alan Agius df2e862cae docs: unlink async keyword in APF guide (#44060)
Currently, `async` keywords in the APF guide incorrectly links to https://angular.io/api/common/AsyncPipe

PR Close #44060
2021-11-04 18:59:13 +00:00
Alan Agius f12f6de3c6 docs: update apf guide files layouts table (#44060)
With this change we improve the file layout structure table and align it with other similar tables example: https://angular.io/guide/file-structure

PR Close #44060
2021-11-04 18:59:13 +00:00
Paul Gschwendtner ec7dd5d4c2 test: re-enable platform-server integration test (#44055)
Re-enables the platform-server integration test that we had
to disable when we landed the APF v13 changes.

We can re-enable it by setting up the `fullySpecified` option
similar to how the CLI does it.

PR Close #44055
2021-11-04 18:57:22 +00:00
mgechev 7441747087 docs: update roadmap update date (#44036)
PR Close #44036
2021-11-04 18:56:14 +00:00
Alan Agius 36388b3ab2 build(docs-infra): configure region parser to allow .mjs (#44027)
This commit updates the necessary config settings to allow `.mjs` files to be able to be parsed by the region parser. We configure the parser to use `inline-c-only` so that comments are generated in like the below

```
// #docregion
```

rather than

```
/* #docregion */
```

PR Close #44027
2021-11-04 18:55:52 +00:00
Alan Agius 2f62a9a548 docs: improve consuming partial-Ivy code outside the Angular CLI (#44027)
With this change we add an example of how to consume the linker plugin and also clean up the parts of this section.

Closes #44026

PR Close #44027
2021-11-04 18:55:52 +00:00
mgechev 02b84af5bd docs: update the survey expiry date (#44021)
PR Close #44021
2021-11-04 18:55:24 +00:00
Paul Gschwendtner 8cbc0e9d0e test: update ng-update integration test to test v13 migrations (#44016)
Updates the `ng-update` migration integration test to run against
v13 migrations. We have removed all older migrations so this integration
test needs to be updated.

PR Close #44016
2021-11-04 18:54:55 +00:00
Paul Gschwendtner 78569f088e test: re-enable ng-update migration integration test (#44016)
Re-enables the ng-update migration integration test as all the ESM/CJS
interop changes have landed in the `@angular/core` schematics folder.

PR Close #44016
2021-11-04 18:54:54 +00:00
Paul Gschwendtner 60dec531fc test: wire up ng-add-localize CLI project as integration test to run within Bazel (#44016)
Wires up the `ng-add-localize` minimal CLI project to run as integration
test within Bazel.

PR Close #44016
2021-11-04 18:54:54 +00:00
Paul Gschwendtner 70f93a640b refactor(localize): ensure schematic code runs as commonjs (#44016)
The schematic code in `@angular/localize` is currently still emitted
as CommonJS, while the rest of `@angular/localize` is strict ESM (which
is also denoted through `type: module` in the package.json file).

The schematic code is currently imported as CJS from the CLI so it
is not a problem right now. Still, it is safer to ensure the code
for schematics is properly picked up as CJS through a local
`package.json` file resetting `type: module` to `type: commonjs`.

PR Close #44016
2021-11-04 18:54:54 +00:00
Paul Gschwendtner d93ac1e81b test: setup minimal CLI project for ng-add localize integration test (#44016)
Sets up a minimal CLI project for testing that `ng add @angular/localize`
works as expected. Schematic sub-packages are prone to CJS/ESM issues
due the overall framework packages being denoted as strict ESM.

This may not be an issue in the concrete scenario of `@angular/localize`
right now, but it is still good to have an integration test similar to
the tests we have for `@angular/core` schematics.

PR Close #44016
2021-11-04 18:54:54 +00:00
Andrew Kushnir 34f990986c feat(upgrade): support NgModule class as an argument of the downgradeModule function (#43973)
This commit extends the logic of the `downgradeModule` function to support NgModule class as an argument. This is needed to simplify the API surface to avoid the need to resolve NgModule factory before invoking the `downgradeModule` method.

PR Close #43973
2021-11-04 18:54:00 +00:00
Joel Lefkowitz ab423f5ee9 docs: amend inaccurate immutability definition (#43951) (#43951)
PR Close #43951

PR Close #43951
2021-11-04 18:53:18 +00:00
Renovate Bot b6798f30b9 build: update dependency http-server to v14 (#43900)
PR Close #43900
2021-11-04 18:52:40 +00:00
HyperLife1119 d452b388bd feat(http): add has() method to HttpContext class (#43887)
At present, the get() method provided by HttpContext will never return null. Sometimes we need to check whether an http token is included, so add the has() method to HttpContext.

PR Close #43887
2021-11-04 18:52:18 +00:00
Joey Perrott 821270dba5 refactor(core): set up structure for google3 usage of migration schematics (#43980)
Set up exporting the migration rules from the google3 directly from the internal
@angular/migrations package.  This package is an internal only package to be
exposed for loading TSLint rules.

PR Close #43980
2021-11-04 11:23:12 -07:00
Joey Perrott a0c2e0780e docs: add blog post link to CHANGELOG (#44049)
PR Close #44049
2021-11-03 17:24:59 -07:00
Andrew Kushnir 96e84ccdcd docs: update CHANGELOG with deprecations (#44048)
This commit adds deprecation messages from the commits in the `.next` and `.rc` releases.

PR Close #44048
2021-11-03 17:04:24 -07:00
Pete Bacon Darwin 8020457ce2 build(docs-infra): target webcontainers for stackblitz "live-example" links (#44041)
This commit changes the Stackblitz live examples to create "webcontainer" projects on Stackblitz.
This approach supports the new Angular v13 packaging formats but webcontainers are not supported on some browers. So this is a temporary solution.

PR Close #44041
2021-11-03 16:19:56 -07:00
Renovate Bot 595a7e3dcd build: update angular (#44024)
PR Close #44024
2021-11-03 15:06:36 -07:00
Alex Rickabaugh cbf96c1407 release: cut the v13.1.0-next.0 release (#44040)
PR Close #44040
13.1.0-next.0
2021-11-03 13:46:46 -07:00