Commit Graph

22207 Commits

Author SHA1 Message Date
Jessica Janiuk 15bdd0d48f Revert "refactor(migrations): remove no longer accessible migrations" (#43943)
This reverts commit f21ad8780b.

PR Close #43943
2021-10-25 22:02:32 +00:00
Alan Agius 087fae5ea9 refactor(migrations): remove no longer accessible migrations (#43942)
With this change we remove no longer needed migrations. These migrations are no longer accessible following a change https://github.com/angular/angular-cli/pull/21986 in the Angular CLI.  The CLI now shows an error message when users try to update `@angular/` and `@nguniversal/` packages across multiple major versions.

Example to update from version 11 to version 13 the recommand approach is to run the following commands

```
ng update @angular/core@12
ng update @angular/core@13 (which is the same as ng update @angular/core)
```

NB: It is recommand that when update from one major to another, users verify that their applications is working as expected.

PR Close #43942
2021-10-25 19:32:27 +00:00
Andrew Kushnir 8277c38bd8 test(platform-browser): complete component bootstrap before switching to the next test (#43933)
The bootstrap tests that reused the same component (the `HelloRootCmp` one) were randomly failing due to the incomplete cleanup between tests. This commit ensures that the component bootstrap is fully cimpleted and there are no pending async actions before going to the next test.

PR Close #43933
2021-10-25 17:58:27 +00:00
George Kalpakas 7c5d642106 fix(ngcc): support alternate UMD layout when adding new imports (#43931)
In #43879, `UmdReflectionHost` was updated to deal with the new UMD
format used by Rollup, where the parenthesis is around the wrapper
function and not the wrapper function call.
For reference, this caused failures in the `ngcc-validation` repo
([example 1][1], [example 2][2]).

This commit updates `UmdRenderingFormatter` to also handle both UMD
formats. In order to validate the change, this commit also updates the
`UmdRenderingFormatter` tests to run against both UMD formats.

[1]: https://circleci.com/gh/angular/ngcc-validation/65916
[2]: https://circleci.com/gh/angular/ngcc-validation/65758

PR Close #43931
2021-10-25 17:56:27 +00:00
Doug Parker 8178a3028b docs: deprecate @angular-devkit/build-optimizer (#43915)
The entire package is deprecated in v13. Deprecation message is mostly copied from the package's [README](https://github.com/angular/angular-cli/blob/13.0.0-next.9/packages/angular_devkit/build_optimizer/README.md), with just some minor edits.

(cherry picked from commit d81744e600)

PR Close #43915
2021-10-25 17:54:52 +00:00
Alan Agius 9968a8ad82 docs: remove fesm5 and esm5 deprecation notice. (#43915)
This has been removed in version 11 and should no longer be listed.

PR Close #43915
2021-10-25 17:54:52 +00:00
Alan Agius e569a9c1fe docs: update CLI deprecation guide to reflect new deprecations (#43915)
With this change we update the CLI deprecations sections as per version 13.

PR Close #43915
2021-10-25 17:54:52 +00:00
Alan Agius 096ebb2830 docs: format tables in deprecations page (#43915)
Currently, the table are unformatted which makes it extremely hard to read when viewing the markdown file directly.

PR Close #43915
2021-10-25 17:54:52 +00:00
ericcheng2005 97fc9de2c4 refactor(core): made comment structure consistent in index.ts (#43684)
changed second big block of comments to use multi-line comment structure instead of multiple single-line comments

PR Close #43684
2021-10-21 18:40:00 +00:00
ericcheng2005 6dc4d83f37 docs: added commas to sentences in .vscode/README.md (#43684)
PR Close #43684
2021-10-21 18:40:00 +00:00
ericcheng2005 23928a02d3 docs: fixed minor grammar mistakes in CONTRIBUTING (#43684)
PR Close #43684
2021-10-21 18:39:59 +00:00
Doug Parker 72f6877cb0 docs: remove Ivy-specific guides (#43860)
Ivy is the only supported rendering engine in v13, so there is no need to document the concept. Everything in Angular is Ivy. This starts the removal process by deleting Ivy-specific guides and references to them. It also updates the glossary to be more clear that Ivy is the current rendering engine while View Engine is simply a historical note.

This does not attempt to fully remove all references to "Ivy" or "View Engine", that will likely be a more involved clean up process.

PR Close #43860
2021-10-21 18:14:34 +00:00
krzysztof-grzybek adc68b100b fix(router): reuse route strategy fix (#43791)
Currently, it's impossible to cache (detach/attach) parent route without caching child routes.
This produces a bug, when navigating from a/b to c, then to a/d, where a route is cached.
On the last navigation, we incorrectly restore a/b route instead of a/d.
This change introduces new behavior: if the route should be detached/attached,
we do so, but we check also child routes recursively.

Fixes #17333

PR Close #43791
2021-10-21 16:28:03 +00:00
Alan Agius 5d031848d3 ci: update angular/dev-infra/github-actions sha (#43904)
Consume latest version of `angular/dev-infra/github-actions`.

PR Close #43904
2021-10-21 16:26:36 +00:00
Alan Agius bbbf678bed ci: replace breaking-changes-label with commit-message-based-labels (#43904)
See: https://github.com/angular/dev-infra/pull/269 for more context

PR Close #43904
2021-10-21 16:26:35 +00:00
Tomasz Domański 22009f62df docs: fix typos in the workspace config guide (#43918)
PR Close #43918
2021-10-21 14:42:46 +00:00
George Kalpakas 0039b712c0 refactor(service-worker): avoid unnecessary writes to cache when version fails (#43680)
When an app version is detected as broken, the SW calls the
`Driver#versionFailed()` method. Previously, this method would in turn
call the `Driver#sync()` method, which writes some metadata about the
SW's state to the `ngsw:/:db:contol` cache. More specifically,
`Driver#sync()` persists info about all known app versions, which one is
the latest and also what version each client is assigned to.

However, no relevant info is changed inside `Driver#versionFailed()`, so
the call to `Driver#sync()` is redundant (since there are no changes
that need to be synced with the cache). This is a left-over from
before #43518, when `Driver#versionFailed()` used to update version
assignments and thus did require synchronization with the cache.

This commit removes the redundant `Driver#sync()` call to avoid an
unnecessary write to the cache.

PR Close #43680
2021-10-21 14:20:51 +00:00
iRealNirmal 665466def3 docs: move deprecations example snippets to external file (#43700)
Moving angular depreciation examples to external project

closes #43337

PR Close #43700
2021-10-20 20:24:55 +00:00
Willy Schott ae52bf1df3 docs: clarify meaning of ellipsis in bazel command (#43890)
PR Close #43890
2021-10-20 20:14:49 +00:00
Andrew Kushnir b31a9a75ad release: cut the v13.0.0-rc.1 release (#43911) 13.0.0-rc.1 2021-10-20 09:57:26 -07:00
JoostK 7d33af0400 test(compiler-cli): run i18n extraction tests using Ivy compiler (#43893)
This commit re-enables the `extract_i18n` test target and updates the
test to run with the Ivy compiler.

PR Close #43893
2021-10-19 16:26:22 -07:00
JoostK aef01389e1 test(compiler-cli): run watch mode tests using Ivy compiler (#43893)
This commit re-enables the `perform_watch` test target and updates the
test to run with the Ivy compiler.

Additionally, this target was switched over to use Angular v12 packages
as input to the test, to allow the ViewEngine tests to continue working
with v13 packages which are Ivy-only. This commit reverts those changes
now that View Engine tests are disabled, as it's desirable to test
against local artifacts that are build within the monorepo instead of
depending on NPM packages.

PR Close #43893
2021-10-19 16:26:22 -07:00
Alan Agius 9d9346c57a docs: add docs about build cache (#43843)
With this change we add docs about persistant disk cache with was enabled by default in the CLI via https://github.com/angular/angular-cli/pull/21827

PR Close #43843
2021-10-19 10:45:30 -07:00
Joey Perrott 812a33df8c ci: mark core/schematics/test:test and compiler-cli/test:perform_watch test as view engine only (#43862)
Both test targets fail because, at test time, they use the view engine compiler, even when bazel sets the
configuration to use ivy.

PR Close #43862
2021-10-19 10:06:57 -07:00
Doug Parker aafde79a71 refactor(compiler-cli): throw an error when compiling with View Engine. (#43862)
The View Engine compiler now throws when constructed and will be removed shortly. Direct users should switch to `NgtscProgram` to build with [Ivy](https://angular.io/guide/ivy). The View Engine compiler is being removed, so this makes it throw an error to ensure no one accidentally depends on code being removed.

PR Close #43862
2021-10-19 10:06:57 -07:00
Joey Perrott 57bf6b7cbd ci: correct comment related to building view engine npm packages (#43862)
Removing the comment related about building the npm packages using view engine as it was actually done via
ivy, now that ivy is used for all builds there is no need for expressing the aspect of the build.

PR Close #43862
2021-10-19 10:06:57 -07:00
Joey Perrott 5e562b66d4 ci: remove view engine test job (#43862)
Remove the view engine test job as view engine is no longer being tested on CI.  Additionally, update size
tracking to rely on test job instead of test_ivy_aot.

PR Close #43862
2021-10-19 10:06:57 -07:00
Joey Perrott 04b4209d71 ci: remove windows view engine test job (#43862)
Remove the windows view engine test job as view engine is no longer being tested on CI.

PR Close #43862
2021-10-19 10:06:57 -07:00
Joey Perrott f1e18493ca ci: remove saucelabs view engine tests (#43862)
Remove the view engine specific saucelabs test job and associated tags/tooling as view engine is no longer being tested
on CI.

PR Close #43862
2021-10-19 10:06:57 -07:00
Joey Perrott 442f520e48 build: remove ivy-aot bazel tag (#43862)
Remove the ivy-aot bazel tag from usage as it served a duplicate purpose as ivy-only which is now removed as both are
unneeded with Ivy as the default compiler used.

PR Close #43862
2021-10-19 10:06:57 -07:00
Joey Perrott 90ac77051d build: remove fixme-ivy-aot tag filter (#43862)
Remove the fixme-ivy-aot tag filter from usage as no targets are tagged with fixme-ivy-aot as ivy is now the
compiler used by default.

PR Close #43862
2021-10-19 10:06:56 -07:00
Joey Perrott 959f563fc9 build: remove "ivy-only" bazel tag (#43862)
Because all actions are assumed to be running on Ivy, things which only work on Ivy should not be marked as
Ivy only.

PR Close #43862
2021-10-19 10:06:56 -07:00
Joey Perrott 730511b948 build: rename "no-ivy-aot" tag to "view-engine-only" (#43862)
Using the tag "view-engine-only" better describes the expected usage of bazel targets with the test. They can
only be run with view engine.

PR Close #43862
2021-10-19 10:06:56 -07:00
Joey Perrott c3f677dbe6 build: remove test-ivy-aot yarn script (#43862)
Since building with ViewEngine is not longer desired on CI, removing the ivy vs non-ivy testing yarn scripts
is done, informing developers to instead use `yarn test` as all tests should be run using the Ivy complier.

PR Close #43862
2021-10-19 10:06:56 -07:00
Joey Perrott b75ee8d810 build: Use Ivy compiler for bazel builds by default (#43862)
Setting the angular_ivy_enabled environment variable to True will default Bazel builds to use the Ivy
compiler rather than defaulting to ViewEngine.

PR Close #43862
2021-10-19 10:06:56 -07:00
Joey Perrott b489ae5ecd ci: remove browserstack configuration (#43881)
Remove browserstack configuration from the repo as it is not used for our CI.

PR Close #43881
2021-10-18 15:00:23 -07:00
Pete Bacon Darwin c882b9fa8b fix(ngcc): support alternate wrapper function layout for UMD (#43879)
Recently rollup, used by ng-packagr, changed the position of parentheses
around its generated UMD wrapper functions.

This commit ensures that ngcc can handle both.

Fixes #43870

PR Close #43879
2021-10-18 14:57:03 -07:00
Andrew Kushnir fc6519c25a Revert "fix(compiler): support i18n interpolated only attribute bindings (#43815)" (#43882)
This reverts commit bba0a87055.

The reason for rollback: this change is breaking some targets in Google's codebase when there is no attribute value is displayed (attr.aria-label) when translated.

PR Close #43882
2021-10-18 13:16:01 -07:00
Kristiyan Kostadinov 14b492df26 fix(compiler): do not error if $any is used inside a listener (#43866)
Fixes that `$any` casts weren't being converted to statements inside listeners which resulted in a compiler error.

Fixes #43841.

PR Close #43866
2021-10-18 10:43:03 -07:00
George Kalpakas cbde9edace docs: fix a couple of random typos (#43878)
PR Close #43878
2021-10-18 10:41:34 -07:00
Andrew Scott dc6909ad3e fix(router): Do not clear currentNavigation if already set to next one (#43852)
Experimentation with the Router URL management exposed a situation where
the `currentNavigation` was being cleared in the `finalize` after the
`currentNavigation` was already set to the next one.

This change ensures that the `currentNavigation` is only cleared if the
id of the finalized transition matches the one on the
`currentNavigation` object.

PR Close #43852
2021-10-18 10:30:54 -07:00
Andrew Scott dbcc4bebee refactor(router): Remove use of browserUrlTree in scheduleNavigation (#43632)
There are no added tests here because the change is generally equivalent
to what was there before. The goal of that piece of code is to prevent
duplicate navigations due to the location synchronization code between
AngularJS and Angular. That is, the Angular router listens to the
`popstate` event and triggers navigations, but so does the AngularJS
router and triggers navigations through `router.navigateByUrl`. The
`setTimeout` in the Angular Router's `setUpLocationChangeListener` is
there to make this bit of code work: the 'popstate'/'hashchange'
navigation will necessarily come after the imperative nav triggered by
AngularJS's location sync.

Anyhow, in the long run, I would like to get rid of this bit of code
altogether. We should not have special handling for these cases. The
AngularJS/Angular location sync should either:

1. Not trigger a duplicate navigation in the first place
or
2. Be tolerant to processing the duplicate navigation.

In the short term, this change benefits the router while we investigate
removing this logic completely because now browserUrlTree has a single
responsiblity: to support `onSameUrlNavigation==='reload'`. This means
that we can work towards removing the `browserUrlTree` tracking from the
Router code at some point as well and have the `onSameUrlNavigation`
logic be part of a pre-navigation hook that can be handled outside the
`Router`. This may or may not be possible, but the change here opens up
that change for investigation.

PR Close #43632
2021-10-18 10:29:23 -07:00
David Shevitz db57e391cc docs: update getting started links to provide a more consistent user experience (#43872)
PR Close #43872
2021-10-18 09:25:36 -07:00
Pete Bacon Darwin 8c91e33d5d fix(compiler): support i18n interpolated only attribute bindings (#43815)
While fully dynamic bound properties (and attributes) cannot be marked for localization, properties that only contain interpolation can.

This commit ensure that attribute bindings that only contain interpolation can also be marked for localization.

Closes #43260

PR Close #43815
2021-10-18 09:24:42 -07:00
dario-piotrowicz ebc9b55dcf fix(docs-infra): add paddings to docs-card titles (#43859)
improve the aio docs-card title by adding some padding
so that it doesn't get too close to the card's edges

PR Close #43859
2021-10-18 09:23:19 -07:00
dario-piotrowicz 017748c477 fix(docs-infra): move security anchors outside callout elements (#43865)
two callout elements in the security guide have anchors
as their first child element instead of the callout's header
causing ugly/unwanted spacing, move the anchors above the
callout elements to fix such issue

PR Close #43865
2021-10-18 09:22:39 -07:00
Paul Gschwendtner ee2678ca42 build: update bazel integration test to rules_nodejs v4.4.1 (#43853)
Updates the Bazel integration test to `rules_nodejs` v4.4.1. Renovate
could not complete this update automatically because it is unable
to update the `package.json` and `lock` file due to there being
relative `file:` references.

PR Close #43853
2021-10-15 13:55:53 -07:00
Renovate Bot 0983eec7ab build: update all non-major dependencies (#43853)
Updates all non-major dependencies to their latest available
versions.

PR Close #43853
2021-10-15 13:55:53 -07:00
Pete Bacon Darwin 70c14ed66d build(docs-infra): add a box around CLI command line reference syntax (#43850)
This commit helps to make the section that describes an overview of the syntax of a CLI command stand out from the surrounding text.

Closes #26574

PR Close #43850
2021-10-15 11:35:47 -07:00
Andrew Scott 772e08d14e fix(router): fix Router's public API for canceledNavigationResolution (#43842)
The commit which made the `canceledNavigationResolution` property on the `Router`
public did not add the corresponding configuration in the `ExtraOptions`.
https://github.com/angular/angular/commit/3c6b653089837459809a370ebcaf8911c3bab9ed
This was a mistake and is being corrected in this commit. We should not
encourage changing the properties post-setup (i.e.
`inject(Router).canceledNavigationResolution = 'computed'`). This manner
of configuration makes the options non-tree shakeable because we have to
keep both implementations in case the value changes at runtime.

PR Close #43842
2021-10-15 11:35:02 -07:00