14188 Commits

Author SHA1 Message Date
Brandon 8043e3131c docs: use dynamic import syntax in examples using lazy loading (#30563)
PR Close #30563
2019-05-21 09:09:35 -07:00
Trotyl Yu 54f7245081 docs(changelog): remove docs-infra changes (#25833)
PR Close #25833
2019-05-21 09:06:46 -07:00
Manohar Reddy Poreddy 5de24b6dfe docs: move instructions to see changes after the error is fixed in the tutorial (#30529)
docs: List only appears after the error is fixed

When the error happens, the list is not displayed too. Once the error is removed, the heroes list appears, so we can click and see the details.

PR Close #30529
2019-05-21 09:03:49 -07:00
janith 4dc4d7f30a docs: remove gender prefixes from examples (#29972)
PR Close #29972
2019-05-20 16:43:00 -07:00
Fux, Etienne fcea1a3c22 docs: improve consistency of style guide example (#30504)
The text for entry Style 04-10 of the style guide talks about
FilterTextService however, the example folder structure has the inversed
filename.

PR Close #30504
2019-05-20 16:42:16 -07:00
Keen Yee Liau 8bc4da8665 fix(bazel): ng test should run specific ts_web_test_suite (#30526)
PR closes https://github.com/angular/angular/issues/30191

PR Close #30526
2019-05-20 16:40:11 -07:00
jenniferfell a5a2d525ae docs: move old quick start content into new local setup guide (#29651)
PR Close #29651
2019-05-20 10:16:24 -07:00
George Kalpakas 4690dcecac build: add recommended config files for VSCode remote development (#30450)
Add some recommended config files to use (as is or as basis) for setting
up [remote development using docker containers][1] with VSCode. This is
an opt-in feature. See `.devcontainer/README.md` for more info.

The configuration can be further tweaked/improved, but is a good
starting point.

[1]: https://code.visualstudio.com/docs/remote/containers

PR Close #30450
2019-05-20 10:13:53 -07:00
cexbrayat 722b2fa6ed feat(common): stricter types for SlicePipe (#30156)
Adds overloads to the `transform` methods of `SlicePipe`,
to have better types than `any` for `value` and `any` as a return.
With this commit, using `slice` in an `ngFor` still allow to type-check the content of the `ngFor`
with `fullTemplateTypeCheck` enabled in Ivy:

    <div *ngFor="let user of users | slice:0:2">{{ user.typo }}</div>
                                                        |
                                                        `typo` does not exist on type `UserModel`

whereas it is currently not catched (as the return of `slice` is `any`) neither in VE nor in Ivy.

BREAKING CHANGE
`SlicePipe` now only accepts an array of values, a string, null or undefined.
This was already the case in practice, and it still throws at runtime if another type is given.
But it is now a compilation error to try to call it with an unsupported type.

PR Close #30156
2019-05-17 14:21:37 -07:00
Brandon Roberts 124d1abf19 docs: update docs example dependencies to version 8 (#30385)
PR Close #30385
2019-05-17 14:16:56 -07:00
Kamil Myśliwiec 736d3ef820 docs: add kamil mysliwiec to GDE resources (#30508)
PR Close #30508
2019-05-17 13:32:44 -07:00
George Kalpakas 9b0ad347e1 test(platform-browser-dynamic): avoid swallowing error in CachedResourceLoader test (#30515)
Previously, in order to assert that the promise was not resolved, an
error was thrown when the promise was resolved successfully. At the
same, `.catch()` was used to silence the (expected) promise rejection.
However, the chained `.catch()` handler would also catch (and swallow)
the error thrown on resolving the promise, making the test pass, even if
the promise was not rejected.

This commit fixes it by ensuring that the error thrown on resolving the
promise is not caught by the rejection handler.

PR Close #30515
2019-05-16 20:14:05 -07:00
George Kalpakas d2598ace0a test(platform-browser-dynamic): make CachedResourceLoader tests more reliable (#30515)
Previously, [this test][1] would occasionally fail (e.g. on CI) with
"Template cache was not found in $templateCache". This was due to a
combination of:
1. [That test][2] (which removes the cache) being run right before the
   failing test.
2. The async `TestBed.compileComponents()` operation run in the
   `beforeEach()` block (which sets the cache) not having completed
   before the `it()` block.

This commit fixes the issue by ensuring the cache is always set, before
instantiating `CachedResourceLoader`.

This commit also moves some operations that are only needed in one test
from the `beforeEach()` block to that test's `it()` block.

[1]: https://github.com/angular/angular/blob/79903b184248a57d7e9e10d69c94098f4fe34fa6/packages/platform-browser-dynamic/test/resource_loader/resource_loader_cache_spec.ts#L50
[2]: https://github.com/angular/angular/blob/79903b184248a57d7e9e10d69c94098f4fe34fa6/packages/platform-browser-dynamic/test/resource_loader/resource_loader_cache_spec.ts#L37

Fixes #30499

PR Close #30515
2019-05-16 20:14:04 -07:00
Greg Magolan 4a25e4cf95 build(bazel): update to latest stable chromium 74 on osx and linux for karma under bazel (#30502)
We were on 69 for both of these platforms which is fairly old. This update also requires a temporary patch to the @bazel/karma npm package to disable chrome sandboxing on OSX as it is broken under Bazel as of chromium 73. Windows is still on Chromium 66 but updating this will require upstream changes to rules_webtesting as the archive name & executable name has changed as of 72 for Windows and hard-coded paths in rules_webtesting break things.

PR Close #30502
2019-05-16 14:38:15 -07:00
Brandon 3f67bf208d docs: add link to location upgrade config (#30331)
PR Close #30331
2019-05-16 11:53:48 -07:00
Brandon d85476fd8c docs(docs-infra): add common/upgrade to API package sources (#30331)
Closes #30332

PR Close #30331
2019-05-16 11:53:43 -07:00
Brandon 9763edf829 refactor(common): update argument length in UrlCodec.areEqual method and AngularJSUrlCodec.areEqual methods (#30331)
dgeni requires that method arguments be at least 2 characters long

PR Close #30331
2019-05-16 11:47:17 -07:00
Brandon Roberts b6ae54c547 docs: add section to upgrade guide on using the unified location service (#30331)
The LocationUpgradeModule provides a unified way of handling URL updates
across AngularJS and Angular.

PR Close #30331
2019-05-16 11:47:17 -07:00
Keen Yee Liau 3de26a84ff fix(bazel): Disable sandbox on Mac OS (#30460)
Removing the sandbox improves build time by almost 40%.

For a hello world (ng new) application:
ng build with sandbox: 22.0 seconds
ng build without sandbox: 13.3 seconds

PR Close #30460
2019-05-16 09:43:54 -07:00
Jason Aden 8022d3691b feat(common): add ability to watch for AngularJS URL updates through onUrlChange hook (#30466)
The LocationShim (replacement for `$location`) was added to centralize dealing with the browser URL. Additionally, an `onUrlChange` method was added to Angular's Location service. This PR adds a corresponding method to the LocationShim so updates from AngularJS can be tracked in Angular.

PR Close #30466
2019-05-16 09:43:33 -07:00
TwoDCube 581336a918 docs: fix typo in animations doc (#30457)
PR Close #30457
2019-05-15 14:26:12 -07:00
Piotr Tomiak effc58086c docs: correct types in transform method to match specification. (#29812)
PR Close #29812
2019-05-15 14:24:20 -07:00
Jimmy Kasprzak 766615c8a1 docs: fix example "testing" app compilation (#30427)
PR Close #30427
2019-05-15 14:12:23 -07:00
Vincent Guo ede4246663 docs: fix the payload in event-binding sample code (#30429)
after reading the context. there are  some clues to infer the payload should be the `item`, not `item.name`.
1.  EventEmitter<Item>.
2.  the desc say that:
The component defines a deleteRequest property that returns an EventEmitter. When the user clicks delete, the component invokes the delete() method, telling the EventEmitter to emit an **Item** object.

PR Close #30429
2019-05-15 14:12:02 -07:00
Paul Gschwendtner bb8a6abbf2 test(ivy): move render3 query tests to acceptance (#30382)
Moves all manual render3 query tests that use the `elementProperty`
instructions to TestBed acceptance tests.

PR Close #30382
2019-05-15 14:11:38 -07:00
Jason Aden 32daa930d0 fix(router): type cast correctly for IE 11 bug breaking URL Unification when comparing objects (#30464)
PR #30393 corrected behavior where Object.keys sometimes returns an `undefined` value. However, the types didn't reflect this in the code. That fix actually missed one value that could return `undefined`. This PR corrects this by casting the types to what they can be in IE 11. This ensures the code behaves as it should when this edge case comes up.

PR Close #30464
2019-05-15 14:09:54 -07:00
Alex Rickabaugh b6aa99d3a7 release: cut the v8.0.0-rc.4 release 8.0.0-rc.4 2019-05-15 12:19:51 -07:00
Ben Lesh e10b213784 refactor(ivy): deprecate ɵɵinject and ɵɵdefineInjectable (#30467)
- They are to be removed before the end of RC

PR Close #30467
2019-05-15 11:40:33 -07:00
Ben Lesh a67cf99b0c refactor(ivy): mark ΔdefineInjectable as codeGenApi. (#30467)
PR Close #30467
2019-05-15 11:40:33 -07:00
Ben Lesh 04d04fd147 refactor(ivy): replace ɵɵ with Δ (#30467)
PR Close #30467
2019-05-15 11:40:33 -07:00
Jason Aden 17361d2b2c Revert "Revert "fix(router): fix a problem with router not responding to back button (#30160)" (#30320)" (#30344)
This reverts commit 8ced321bb6.

PR Close #30344
2019-05-15 10:14:48 -07:00
Jason Aden 9b88920aa9 fix(router): ensure navigations start with the current URL value incase redirect is skipped (#30344)
In some cases where multiple navigations happen to the same URL, the router will not process a given URL. In those cases, we fall into logic that resets state for the next navigation. One piece of this resetting is to set the `browserUrlTree` to the most recent `urlAfterRedirects`i.

However, there was bug in this logic because in some cases the `urlAfterRedirects` is a stale value. This happens any time a URL won't be processed, and the previous URL will also not be processed. This creates unpredictable behavior, not the least of which ends up being a broken `back` button.

This PR kicks off new navigations with the current value the router assumes is in the browser. All the logic around how to handle future navigations is based on this value compared to the current transition, so it's important to kick off all new navigations with the current value so in the edge case described above we don't end up with an old value being set into `browserUrlTree`.

Fixes #30340
Related to #30160

PR Close #30344
2019-05-15 10:14:47 -07:00
Filipe Silva b12e76d1d3 refactor: remove toplevel property accesses (#30470)
PR Close #30470
2019-05-15 10:00:12 -07:00
Filipe Silva af001a8cbd test: add integration test for side effects (#30470)
This new tests keeps track of the known side effects for Angular ES modules.

PR Close #30470
2019-05-15 10:00:12 -07:00
Alex Rickabaugh db64b014f8 Revert "fix(core): CSS sanitizer now allows parens in file names (#30322)" (#30463)
This reverts commit 728db88280.

We're reverting this commit for now, until it can be subjected to a more
thorough security review.

PR Close #30463
2019-05-14 14:49:40 -07:00
Paul Gschwendtner 7e34975bb0 refactor(core): improve messages for static-query migrations (#30458)
Slightly improves the messages for the static-query migration in order
to make the terminal output less verbose but more helpful. Unfortunately
we are limited in what we can print due to the devkit not providing much
utilities for printing good messages from a migration schematic.

PR Close #30458
2019-05-14 14:04:44 -07:00
Paul Gschwendtner 0fa48e8c00 fix(core): static-query migration should not fallback to test strategy (#30458)
Currently if something fails in the selected strategy (e.g. AOT failures),
the migration currently accidentally falls back to the test strategy. This
is not helpful as we want to give developers the possibility to re-run
the migration after fixing potential AOT failures.

PR Close #30458
2019-05-14 14:04:44 -07:00
Paul Gschwendtner fde3f467e2 fix(core): static-query migration errors not printed properly (#30458)
Apparently the devkit logger is not able to properly print
out error objects, so we need to convert them to a string
before in order to make the error visible to the user.

This is not testable without an e2e test that validates the CLI
terminal output.

PR Close #30458
2019-05-14 14:04:44 -07:00
Judy Bogart 7b378a6920 docs: update ivy preview page (#30355)
PR Close #30355
2019-05-14 12:17:26 -07:00
Keen Yee Liau 3136d9ff2e fix(bazel): Use existing npm/yarn lock files (#30438)
This PR fixes Bazel builder to create yarn_install rule in WORKSPACE if
yarn.lock is present, otherwise npm_install rule if package-lock.json is
present. If none is present, default to yarn_install and create an empty
yarn.lock file.

PR closes https://github.com/angular/angular/issues/30164
PR closes https://github.com/angular/angular/pull/30359

PR Close #30438
2019-05-14 11:37:33 -07:00
Santosh Yadav 325e6cf557 build(docs-infra): update http-server to 0.11.1 (#30401)
Fixes #30363

PR Close #30401
2019-05-14 09:55:47 -07:00
Paul Gschwendtner 381d7c4e44 test(ivy): move render3 directive tests to acceptance (#30432)
Moves all manual render3 directive tests to TestBed acceptance
tests.

PR Close #30432
2019-05-14 09:37:01 -07:00
Paul Gschwendtner 1b6f3c1ead test(ivy): move render3 renderer_factory tests to acceptance (#30435)
Moves all manual render3 tests which are located within the
`renderer_factory_spec.ts` file to acceptance tests. A few tests
that use Ivy-specific logic which is not replicable with `TestBed`
remain in the render3 folder (e.g. using `renderTemplate`)

Additionally migrated tests that assert the lifecycles of the
renderer_factory are set to *ivy only* as the lifecycle seems
to be different in Ivy. Tracked with: FW-1320

PR Close #30435
2019-05-14 09:36:24 -07:00
Jason Aden c38349127c fix(router): IE 11 bug can break URL unification when comparing objects (#30393)
This PR fixes an issue where IE 11 can return `undefined` in with an `Object.keys` call. Solution is to add a runtime check on the value. Based on the types being passed, this shouldn't be necessary, but is needed only for IE 11. Unit test doesn't work for this PR because it can't be replicated easily.

PR Close #30393
2019-05-13 11:40:43 -07:00
Alan Agius a4817729a2 test: fix ngtsc tests in windows (#30146)
This commit fixes the following test target in windows

```
//packages/compiler-cli/test/ngtsc:ngtsc
```

PR Close #30146
2019-05-13 11:06:13 -07:00
Alan Agius 61c343e3eb test: fix several Bazel compiler tests in windows (#30146)
```
//packages/compiler-cli/test:ngc
//packages/compiler/test:test
```

This also address `node_modules` to the ignored paths for ngc compiler as otherwise the `ready` is never fired

Partially addresses #29785

PR Close #30146
2019-05-13 11:06:13 -07:00
Alex Eagle 24e6c1e80d release: ts_api_guardian (#30120)
PR Close #30120
2019-05-13 10:53:35 -07:00
D3T0N8R 42fc5c9b33 docs: change reference to jQuery programmers (#30386)
The section on Data Binding makes a reference to "any experienced jQuery programmer" which is a bit too narrow since there are also  programmers that write their front end in pure JavaScript.
PR Close #30386
2019-05-13 10:49:27 -07:00
George Kalpakas 33e7b285ca build(docs-infra): upgrade cli command docs sources to d46eb367f (#30415)
Updating [angular#8.0.x](https://github.com/angular/angular/tree/8.0.x) from [cli-builds#8.0.x](https://github.com/angular/cli-builds/tree/8.0.x).

##
Relevant changes in [commit range](https://github.com/angular/cli-builds/compare/cd7920355...d46eb367f):

**Modified**
- help/build.json
- help/e2e.json
- help/serve.json
- help/test.json
- help/xi18n.json

##

PR Close #30415
2019-05-13 10:28:18 -07:00
George Kalpakas 74afdc37da build: ignore .devcontainer/ directory (#30417)
This makes it easier to experiment with VSCode's
[remote development using docker containers][1] feature.

In the future, we may check in the necessary files for users to use this
feature, but for now ignoring the directory makes it easier play around
and evaluate the feature.

[1]: https://code.visualstudio.com/docs/remote/containers

PR Close #30417
2019-05-13 10:17:16 -07:00