Commit Graph

13374 Commits

Author SHA1 Message Date
George Kalpakas f358188ec1 refactor(ivy): create lazy route keys that are similar to ngtools lazy routes (#28542)
This will make it easier to retrieve routes for specific entry points in
`listLazyRoutes()` (which is necessary for CLI integration but not yet
implemented).

PR Close #28542
2019-02-11 16:23:29 -08:00
George Kalpakas 5db3a6b198 refactor(ivy): remove unnecessary method from ngtsc's `RouterEntryPoint` (#28542)
PR Close #28542
2019-02-11 16:23:29 -08:00
Marc Laval 94b8aaeba8 fix(ivy): ngOnChanges should be inherited from super class (#28563)
PR Close #28563
2019-02-11 16:22:31 -08:00
Matias Niemelä fe8301c462 feat(ivy): provide support for map-based host bindings for [style] and [class] (#28246)
Up until now, `[style]` and `[class]` bindings (the map-based ones) have only
worked as template bindings and have not been supported at all inside of host
bindings. This patch ensures that multiple host binding sources (components and
directives) all properly assign style values and merge them correctly in terms
of priority.

Jira: FW-882

PR Close #28246
2019-02-11 16:21:19 -08:00
Pawel Kozlowski e5861e1c79 fix(ivy): support checkNoChanges on embedded views (#28644)
Before this fix our ViewRef implementation assumed that checkNoChanges can be
only called on component views. In reality checkNoChanges can be also called on
embedded views (ex.: when an embedded view is attached to ApplicationRef).

PR Close #28644
2019-02-11 14:52:32 -08:00
Alexey Zuev 2bf0d1a56f fix(ivy): compile pipe in context of ternary operator (#28635)
Previously, it wasn't possible to compile template that contains pipe in context of ternary operator `{{ 1 ? 2 : 0 | myPipe }}` due to the error `Error: Illegal state: Pipes should have been converted into functions. Pipe: async`.

This PR fixes a typo in expression parser so that pipes are correctly converted into functions.

PR Close #28635
2019-02-11 14:52:13 -08:00
George Kalpakas 2ca77da4ca build(docs-infra): upgrade cli command docs sources to ba5120d18 (#28629)
Updating [angular#master](https://github.com/angular/angular/tree/master) from [cli-builds#master](https://github.com/angular/cli-builds/tree/master).
Relevant changes in [commit range](e758c4174...ba5120d18):

**Modified**
- help/e2e.json

PR Close #28629
2019-02-11 14:51:49 -08:00
Andrew Kushnir a9afe629c7 feat(ivy): allow non-unique #localRefs to be defined in a template (#28627)
Prior to this change in Ivy we had strict check that disabled non-unique #localRefs usage within a given template. While this limitation was technically present in View Engine, in many cases View Engine neglected this restriction and as a result, some apps relied on a fact that multiple non-unique #localRefs can be defined and utilized to query elements via @ViewChild(ren) and @ContentChild(ren). In order to provide better compatibility with View Engine, this commit removes existing restriction.

As a part of this commit, are few tests were added to verify VE and Ivy compatibility in most common use-cases where multiple non-unique #localRefs were used.

PR Close #28627
2019-02-11 14:51:31 -08:00
Brandon 1e64f37257 fix(docs-infra): add progression files to exclude list for docs examples (#28650)
Also disables Http guide under Ivy tests with documented error

PR Close #28650
2019-02-11 13:26:39 -08:00
Brandon 99e3a04ea2 ci(docs-infra): test docs examples with Ivy (#28463)
PR Close #28463
2019-02-11 17:16:52 +00:00
Judy Bogart 570f735a2a docs: clarify library types integration (#28410)
PR Close #28410
2019-02-11 17:13:44 +00:00
Paul Gschwendtner 872a3656fe refactor(compiler): allow disabling external symbol factory reexports (#28594)
Currently external static symbols which are referenced by AOT
compiler generated code, will be re-exported in the corresponding
`.ngfactory` files.

This way of handling the symbol resolution has been introduced in
favor of avoding dynamically generated module dependencies. This
behavior therefore avoids any strict dependency failures.

Read more about a particular scenario here: https://github.com/angular/angular/issues/25644#issuecomment-458354439

Now with `ngtsc`, this behavior has changed since `ngtsc` just
introduces these module dependencies in order to properly reference
the external symbol from its original location (also eliminating the need
for factories). Similarly we should provide a way to use the same
behavior with `ngc` because the downside of using the re-exported symbol
resolution is that user-code transformations (e.g. the `ngInjectableDef`
metadata which is added to the user source code), can resolve external
symbols to previous factory symbol re-exports. This is a critical issue
because it means that the actual JIT code references factory files in order
to access external symbols. This means that the generated output cannot
shipped to NPM without shipping the referenced factory files.

A specific example has been reported here: https://github.com/angular/angular/issues/25644#issue-353554070

PR Close #28594
2019-02-11 17:12:50 +00:00
Brandon 9ec8aa5eb7 docs: re-enable E2E tests for Http guide (#28592)
PR Close #28592
2019-02-11 17:09:25 +00:00
Brandon 5f2ae784da docs: run component-interaction and DI in JiT mode (#28592)
PR Close #28592
2019-02-11 17:09:25 +00:00
Brandon 0a95f8af9f docs: add more files to be ignored during app compilation (#28592)
PR Close #28592
2019-02-11 17:09:25 +00:00
Brandon 531aa5f8db docs: make method arguments optional in template syntax example (#28592)
PR Close #28592
2019-02-11 17:09:25 +00:00
Brandon bfee33edb9 docs: remove unused files in styleguide example (#28592)
PR Close #28592
2019-02-11 17:09:25 +00:00
Brandon 1941d7c743 docs: ignore initial components for app compilation in router example (#28592)
PR Close #28592
2019-02-11 17:09:25 +00:00
Brandon 21b5940abd docs: ignore files from app compilation for ngmodule-faq example (#28592)
PR Close #28592
2019-02-11 17:09:25 +00:00
Brandon 2852beaded docs: make method arguments optional for event-binding example (#28592)
PR Close #28592
2019-02-11 17:09:25 +00:00
Brandon 206a21704d docs: ignore component for app compilation for displaying data example (#28592)
PR Close #28592
2019-02-11 17:09:24 +00:00
Brandon 46e6363686 docs: add insert remove component to AppModule for animations example (#28592)
PR Close #28592
2019-02-11 17:09:24 +00:00
Brandon 457e07ccb1 docs: make toggleImage arguments optional in AngularJS quick reference (#28592)
PR Close #28592
2019-02-11 17:09:24 +00:00
Brandon 05a14f8a8b docs: make parent finder functions compatible with AoT (#28592)
PR Close #28592
2019-02-11 17:09:24 +00:00
Brandon 19f13b1ad4 docs: remove unused StringSafeDatePipe from AngularJS Quick Ref example (#28592)
PR Close #28592
2019-02-11 17:09:24 +00:00
Brandon d29f781685 docs: ignore progression filenames from compilation (#28592)
PR Close #28592
2019-02-11 17:09:24 +00:00
Brandon 0770978dfb docs: enable E2E test for setup example (#28592)
This guide is not being shown publicly, and its test is currently being ignored.
Instead of deleting this test and guide, it may be repurposed in the future for a local development guide.

PR Close #28592
2019-02-11 17:09:24 +00:00
Brandon 863dbeeb7c docs: remove quickstart example and copy tsconfig.1.json into TS config guide (#28592)
This example has long been replaced by the cli-quickstart, but was never deleted.

PR Close #28592
2019-02-11 17:09:24 +00:00
Brandon 425e0ee416 ci(docs-infra): run docs examples tests in production mode (#28592)
PR Close #28592
2019-02-11 17:09:23 +00:00
Pawel Kozlowski 81329c85b3 test(ivy): enable passing material tests (#28560)
PR Close #28560
2019-02-08 16:42:45 -08:00
Pawel Kozlowski fcd1f61476 refactor(router): change RouterLinkActive impl to account for upcoming ivy breaking change (#28560)
PR Close #28560
2019-02-08 16:42:45 -08:00
Pawel Kozlowski e9bedc63bb fix(ivy): properly query root nodes of embedded views(shallow queries) (#28560)
PR Close #28560
2019-02-08 16:42:45 -08:00
Paul Gschwendtner 7115e7c427 build: remove outdated polymer tree benchmark (#28568)
The "tree/polymer_leaves" benchmark has no benchmark tests, nor do we install
Polymer anywhere. Polymer was previously installed through `bower`, but since
we removed bower, there is no easy way to run this benchmark with Polymer.

Considering that there are no benchmark tests, nor we have an easy way to
install/vendor Polymer, we should just remove this benchmark app.

This is also based on the assumption that we want to remove the
Polymer benchmarks anyway: see: 8a05199fb9

PR Close #28568
2019-02-08 13:37:36 -08:00
Paul Gschwendtner aadc332be2 build: run tree benchmark tests with bazel (#28568)
PR Close #28568
2019-02-08 13:37:36 -08:00
Paul Gschwendtner c916b360bf build: serve benchmark tree examples with bazel (#28568)
PR Close #28568
2019-02-08 13:37:36 -08:00
Paul Gschwendtner fed8c1d160 build: unable to run perf bazel e2e tests on windows (#28568)
Currently it's not possible to run the benchmark e2e tests with Bazel on Windows
because the logic that imports the `perf_util`'s is not using a proper Bazel script
manifest path. A script manifest path should not start with `./angular/`, but rather
with the workspace name (which is in our case `angular/`)

PR Close #28568
2019-02-08 13:37:36 -08:00
Kara Erickson fb9a4a668c fix(ivy): support web worker nodes in unknown property checks (#28610)
We need to support rendering in contexts like web workers where
nodes are emulated and properties may not be set directly. This
commit gates property validation checks to environments that have
real Node objects.

FW-1043 #resolve

PR Close #28610
2019-02-08 13:35:29 -08:00
Marc Laval f7591f1302 test(ivy): add root cause for failing forms e2e tests (#28620)
PR Close #28620
2019-02-08 13:34:24 -08:00
Paul Gschwendtner 44de68ce40 ci: do not install firebase-tools without cache (#28615)
Currently we install `firebase-tools` manually in the
integration tests run script. This is problematic
because it means that we cannot cache `firebase-tools`
properly and Yarn might time out downloading this
dependency. We can safely move this to the top level
`package.json` since Bazel now has a `.bazelignore` and
since we have a cache that works for PRs (with fallback
caching).

Note that the `.bazelignore` is relevant here because
`firebase-tools` has been mainly moved to the bash
script because it broke some Bazel calls.

See 4f0cae0676.

PR Close #28615
2019-02-08 10:23:19 -08:00
Nikita Potapenko 2c00cb8f0f docs(core): fixed code snippets (#28619)
PR Close #28619
2019-02-08 09:27:23 -08:00
George Kalpakas 1ff3699d99 test(upgrade): change flaky test to not be affected by other tests (#28617)
It seems that in some cases (especially on CI), global state is not
cleaned up properly causing a specific test to fail.
See #28045 and #28181 for more context.

This PR restores the global state for the affected test. This partly
defeat the purpose of the test, but is better than having flakes on CI.

Fixes #28614

PR Close #28617
2019-02-08 09:27:02 -08:00
Pawel Kozlowski 0e4705aec3 test(ivy): run view_injector_integration tests on node (#28593)
There is nothing browser specific in those tests and fakeAsync is supported on node.
Testing / debugging on node is often faster than on Karma.

PR Close #28593
2019-02-08 09:25:50 -08:00
Alex Eagle 6e4ef91ceb docs: update merge label meaning (#28574)
PR Close #28574
2019-02-08 09:21:04 -08:00
Igor Minar ceada7785e ci: add all required statuses to the requiredStatuses list for angular-robot (#28613)
Somehow the current list ommits quite a few important targets. Especially the cla and google3.

This changes adds all the statuses that must always be present and green for this agregate state expised as "ci/angular: merge status" to be green.

PR Close #28613
2019-02-08 09:20:28 -08:00
Nikita Potapenko d91ea2c499 docs(core): fixed typo (#28618)
PR Close #28618
2019-02-08 09:19:39 -08:00
Sebastian Dorn faf0b255d0 docs(aio): add Happy Angular Podcast to resources (#28407)
PR Close #28407
2019-02-07 21:57:07 -08:00
Andrew Kushnir 90670252de test: update Material blocklist (#28605)
This commit updates Material blocklist, which was changed as a result of a couple Material-related fixes merged into master.

PR Close #28605
2019-02-07 21:54:28 -08:00
Olivier Combe 94f042beba refactor(ivy): remove unneeded detach property (#28595)
PR Close #28595
2019-02-07 16:56:37 -08:00
Olivier Combe 9d109929be fix(ivy): remove nested placeholders with i18n (#28595)
PR Close #28595
2019-02-07 16:56:36 -08:00
Kara Erickson e0d2ca261b test(ivy): turn on passing test in platform-browser (#28604)
The behavior tested here was fixed by #28537, but I missed updating
the test in the original PR. This commit turns on the test to run
in Ivy mode, using "onlyInIvy" because the timing of the error message
is slightly different and requires CD to run.

PR Close #28604
2019-02-07 16:46:34 -08:00