Go to file
Alex Rickabaugh 6472661ae8 refactor(ivy): avoid circular dep with query/di/instructions (#21430)
To prepare for pending ngForOf work, the dep from instructions -> query
should be broken. This will enable a dep from di -> instructions while
avoiding a di -> instructions -> query -> di cycle.

Analyzing this cycle also uncovered another problem: the implementation
of query() breaks tree-shaking through a hard dependency on DI concepts
of TemplateRef, ElementRef, ViewContainerRef. This is fundamentally due
to how query() can query for those values without any configuration.

Instead, this fix introduces the concept by employing the strategy
pattern, and redefining QueryReadType to pass a function which will
return one of the above values. This strategy is then used for 'read'
instead of an enum in cases where special values should be read from
the DI system.

PR Close #21430
2018-01-23 12:54:39 -08:00
.circleci build: Remove angular_src nested workspace (#21096) 2018-01-19 10:17:37 -08:00
.github ci: add github bot config to triage issues (#21672) 2018-01-19 20:39:58 -08:00
aio build(aio): generate sitemap from the generated pages (#21689) 2018-01-22 12:55:15 -08:00
docs docs: fix release schedule date (#21474) 2018-01-12 12:10:08 -08:00
integration build: Update to latest rules_typescript. (#21675) 2018-01-22 15:32:59 -08:00
modules perf(ivy): add a proper creationOnly scenario to the tree benchmark (#21503) 2018-01-19 15:24:06 -08:00
packages refactor(ivy): avoid circular dep with query/di/instructions (#21430) 2018-01-23 12:54:39 -08:00
scripts ci(aio): run e2e tests in `production` mode (#21470) 2018-01-12 13:45:28 -08:00
tools fix(common): extract plural function from i18n locale data files for TS 2.6 (#21626) 2018-01-19 13:23:34 -08:00
.bowerrc chore(dgeni): clean up legacy typings bundle creation 2015-10-29 21:19:59 +00:00
.clang-format feat(tooling): Add a .clang-format for automated JavaScript formatting. 2015-04-02 08:44:34 -07:00
.editorconfig chore(.editorconfig): include markdown config 2015-01-27 00:14:48 -08:00
.gitattributes chore: force lf EOL for ts files (#11143) 2016-08-29 12:41:58 -07:00
.gitignore build(common): extract i18n locale data from cldr (#18284) 2017-08-22 15:43:04 -05:00
.mailmap build: add a Git .mailmap with my new name (#19550) 2017-10-09 14:35:30 -07:00
.nvmrc build: update node version number in .nvmrc (#20832) 2017-12-12 11:56:18 -08:00
.pullapprove.yml build: add mhevery to bazel approvers (#21314) 2018-01-17 17:02:22 -08:00
.travis.yml ci: use `sudo: false` on Travis (#21641) 2018-01-19 13:23:47 -08:00
BUILD.bazel build: move _testing_init into tools; limit web_test concurrency (#21053) 2017-12-22 13:10:51 -08:00
CHANGELOG.md docs: add changelog for 6.0.0-beta.0 2018-01-17 10:10:18 -08:00
CONTRIBUTING.md docs(aio): Add instructions to fork angular/angular (#20462) 2017-11-15 18:26:27 -06:00
LICENSE docs(common): update copyright years (#21232) 2018-01-04 17:45:36 -05:00
README.md docs: remove broken issuestats.com badges (#21334) 2018-01-05 14:43:18 -05:00
WORKSPACE build: Update to latest rules_typescript. (#21675) 2018-01-22 15:32:59 -08:00
bower.json docs: branding fixes (#14132) 2017-01-27 15:03:11 -06:00
browser-providers.conf.js build: remove required BrowserStack run as it fails with “Access denied” (#19769) 2017-10-17 15:51:40 -07:00
build.sh build: Remove angular_src nested workspace (#21096) 2018-01-19 10:17:37 -08:00
gulpfile.js test(packaging): added test for source map correctness 2017-09-12 16:59:32 -04:00
karma-js.conf.js feat(compiler): implement "enableIvy" compiler option (#21427) 2018-01-18 18:22:44 -06:00
package.json fix: avoid triggering a cli bug (#21611) 2018-01-17 15:22:06 -08:00
protractor-e2e.conf.js refactor: add license header to JS files & format files (#12081) 2016-10-04 20:39:20 -07:00
protractor-examples-e2e.conf.js refactor: format and lint code 2016-12-12 11:30:25 -08:00
protractor-perf.conf.js refactor: add license header to JS files & format files (#12081) 2016-10-04 20:39:20 -07:00
shims_for_IE.js Revert "refactor: add license header to JS files & format files (#12035)" 2016-10-04 14:06:41 -07:00
test-events.js fix(platform-browser): run BLACK_LISTED_EVENTS outside of ngZone (#18993) 2017-09-05 15:33:22 -05:00
test-main.js build: add bazel test rules for remainder of packages (#21053) 2017-12-22 13:10:51 -08:00
test.sh build: remove references to `tsc-wrapped` (#19298) 2017-09-21 13:55:52 -07:00
tslint.json build: add lint rule for global flags in rollup config (#20028) 2017-10-30 23:09:16 -04:00
yarn.lock build: upgrade to TypeScript 2.6 (#21144) 2017-12-22 20:15:47 -08:00
yarn.lock.readme.md build: switch from npm to yarn (#19328) 2017-09-22 13:20:52 -07:00

README.md

Build Status CircleCI BrowserStack Status Join the chat at https://gitter.im/angular/angular npm version

Sauce Test Status

Safari (7+), iOS (7+) and IE mobile (11) are tested on BrowserStack.

Angular

Angular is a development platform for building mobile and desktop web applications using Typescript/JavaScript and other languages.

Quickstart

Get started in 5 minutes.

Want to help?

Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our guidelines for contributing and then check out one of our issues in the hotlist: community-help.