https://github.com/angular/angular

sort by:
Revision Author Date Message Commit Date
cdda60a release: cut the v10.0.6 release 28 July 2020, 21:38:28 UTC
7570356 build: fix broken build (#38274) ``` export const __core_private_testing_placeholder__ = ''; ``` This API should be removed. But doing so seems to break `google3` and so it requires a bit of investigation. A work around is to mark it as `@codeGenApi` for now and investigate later. PR Close #38274 28 July 2020, 19:31:00 UTC
c4a97d8 Revert "ci: roll back phased review conditions" (#38259) This reverts commit ca8eafc2983f983803cd03e4a08bf732672712dd. PR Close #38259 28 July 2020, 18:26:29 UTC
fc4dfc5 ci: only check active groups for the `no-groups-above-this-*` checks (#38259) Since PullApprove starts all inactive groups as a pending state, to properly assess if any groups we care about are pending we must only check the active groups. We additionally do this with rejected because the intention of the reusable checks is around checking active rules only. PR Close #38259 28 July 2020, 18:26:28 UTC
25d95da docs(elements): update api doc for custom elements (#38252) by adding cross-references to Angular Elements Overview guide. PR Close #38252 28 July 2020, 18:19:04 UTC
1c4fcce fix(core): `Attribute` decorator `attributeName` is mandatory (#38131) `Attribute` decorator has defined `attributeName` as optional but actually its mandatory and compiler throws an error if `attributeName` is undefined. Made `attributeName` mandatory in the `Attribute` decorator to reflect this functionality Fixes #32658 PR Close #38131 28 July 2020, 18:17:25 UTC
6e73faa docs(core): correct SomeService to SomeComponent (#38264) PR Close #38264 28 July 2020, 18:10:59 UTC
41c9910 docs: update api reference doc for router-link-active directive (#38247) Edits and organizes the usage information for the directive. PR Close #38247 28 July 2020, 18:09:45 UTC
aaddef2 ci: roll back phased review conditions (#38257) It was determined that the list of 'pending' groups also included inactive groups. That means that the 'no-groups-above-this-pending' would generally fail because there's almost always some inactive group above it. This commit removes the conditions for phased review while we investigate if the inactive groups can be excluded. PR Close #38257 28 July 2020, 17:02:15 UTC
02f3aee docs: Refactor module-types.md to make it easier to understand (#38206) Project DOCS-736 to rewrite headings to focus on user tasks, verify that the content is up-to-date and complete, and add relevant links to other NgModule topics to improve readability. Also addresses one of many issues in GitHub issue 21531. PR Close #38206 28 July 2020, 17:01:38 UTC
c27ba96 ci: add more owners for limited categories (#38170) * Add alxhub, atscott, and AndrewKushnir to code owners * Add atscott & AndrewKushnir to public-api and size-tracking Follow-up to #37994 PR Close #38170 28 July 2020, 17:01:05 UTC
c5a474c docs: Refactor ngmodule-vs-jsmodule.md to make it easier to understand (#38148) Project DOCS-734 to rewrite headings to focus on user tasks, verify that the content is up-to-date and complete, and add relevant links to other NgModule topics to improve readability. Also addresses one of many issues in GitHub issue 21531. PR Close #38148 28 July 2020, 17:00:29 UTC
d5264f5 fix(core): unify the signature between ngZone and noopZone (#37581) Now we have two implementations of Zone in Angular, one is NgZone, the other is NoopZone. They should have the same signatures, includes 1. properties 2. methods In this PR, unify the signatures of the two implementations, and remove the unnecessary cast. PR Close #37581 28 July 2020, 16:59:49 UTC
0cd4b87 Revert "refactor(core): remove unused export (#38224)" This reverts commit c6c8e1581371fcbb62dbeb5bf1128ae25f0220e3. 28 July 2020, 16:56:24 UTC
b1e7775 fix(compiler-cli): Add support for string literal class members (#38226) The current implementation of the TypeScriptReflectionHost does not account for members that are string literals, i.e. `class A { 'string-literal-prop': string; }` PR Close #38226 27 July 2020, 22:26:27 UTC
87f5fef docs: update api reference doc for router link directive (#38181) Edits and organizes the usage information for the directive. PR Close #38181 27 July 2020, 22:25:45 UTC
c3ddc3d refactor(platform-browser): specify return type of parseEventName (#38089) This commit refactors the argument of the `parseEventName` function to use an object with named properties instead of using an object indexer. PR Close #38089 27 July 2020, 22:25:00 UTC
cec39a7 test: update ts-api-guardian's strip_export_pattern to exclude Ivy instructions (#38224) Previously the instructions were included in the golden files to monitor the frequency and rate of the instruction API changes for the purpose of understanding the stability of this API (as it was considered for becoming a public API and deployed to npm via generated code). This experiment has confirmed that the instruction API is not stable enough to be used as public API. We've since also came up with an alternative plan to compile libraries with the Ivy compiler for npm deployment and this plan does not rely on making Ivy instructions public. For these reasons, I'm removing the instructions from the golden files as it's no longer important to track them. The are three instructions that are still being included: `ɵɵdefineInjectable`, `ɵɵinject`, and `ɵɵInjectableDef`. These instructions are already generated by the VE compiler to support tree-shakable providers, and code depending on these instructions is already deployed to npm. For this reason we need to treat them as public api. This change also reduces the code review overhead, because changes to public api golden files now require multiple approvals. PR Close #38224 27 July 2020, 22:23:28 UTC
c6c8e15 refactor(core): remove unused export (#38224) This export used to be here to turn this file into an ES Module - this is no longer needed because the file contains imports. PR Close #38224 27 July 2020, 22:10:24 UTC
752fd14 refactor: correct @publicApi and @codeGenApi markers in various files (#38224) The markers were previously incorrectly assigned. I noticed the issues when reviewing the golden files and this change corrects them. PR Close #38224 27 July 2020, 22:10:18 UTC
776067c fix(zone.js): zone patch rxjs should return null _unsubscribe correctly. (#37091) Close #31684. In some rxjs operator, such as `retryWhen`, rxjs internally will set `Subscription._unsubscribe` method to null, and the current zone.js monkey patch didn't handle this case correctly, even rxjs set _unsubscribe to null, zone.js still return a function by finding the prototype chain. This PR fix this issue and the following test will pass. ``` const errorGenerator = () => { return throwError(new Error('error emit')); }; const genericRetryStrategy = (finalizer: () => void) => (attempts: Observable<any>) => attempts.pipe( mergeMap((error, i) => { const retryAttempt = i + 1; if (retryAttempt > 3) { return throwError(error); } return timer(retryAttempt * 1); }), finalize(() => finalizer())); errorGenerator() .pipe( retryWhen(genericRetryStrategy(() => { expect(log.length).toBe(3); done(); })), catchError(error => of(error))) .subscribe() ``` PR Close #37091 27 July 2020, 19:11:27 UTC
e87a46b docs: add template ref var to glossary (#36743) There is not an entry in the glossary for template reference variable. To clarify for site visitors, we are adding one here. PR Close #36743 27 July 2020, 19:01:47 UTC
89a7ff3 docs: fix breaking URL for RxJS marble testing (#38209) When checking this URL for the `RxJS marble testing` Ive found it pointing to `Page not found` PR Close #38209 27 July 2020, 18:12:08 UTC
3d6e50d docs: clarify the description of pipes (#37950) This commit clarifies some of the language regarding pipes in the pipes guide. This commit also specifies the term transforming rather than formatting. PR Close #37950 27 July 2020, 17:23:21 UTC
264950b fix(compiler): share identical stylesheets between components in the same file (#38213) Prior to this commit, duplicated styles defined in multiple components in the same file were not shared between components, thus causing extra payload size. This commit updates compiler logic to use `ConstantPool` for the styles (while generating the `styles` array on component def), which enables styles sharing when needed (when duplicates styles are present). Resolves #38204. PR Close #38213 27 July 2020, 17:11:56 UTC
84c5be0 refactor(compiler): allow strings with certain length to be included into `ConstantPool` (#38213) Prior to this commit, the `ConstantPool` ignored all primitive values. It turned out that it's beneficial to include strings above certain length to the pool as well. This commit updates the `ConstantPool` logic to allow such strings to be shared across multiple instances if needed. For instance, this is helpful for component styles that might be reused across multiple components in the same file. PR Close #38213 27 July 2020, 17:09:48 UTC
eda8f2f refactor(compiler): separate compilation and transform phases (#38213) This commit splits the transformation into 2 separate steps: Ivy compilation and actual transformation of corresponding TS nodes. This is needed to have all `o.Expression`s generated before any TS transforms happen. This allows `ConstantPool` to properly identify expressions that can be shared across multiple components declared in the same file. Resolves #38203. PR Close #38213 27 July 2020, 17:09:33 UTC
cc52945 docs: add ng-add save option (#38198) PR Close #38198 27 July 2020, 16:52:15 UTC
07f184a refactor(router): extract Router config utils to a separate file (#38229) This commit refactors Router package to move config utils to a separate file for better organization and to resolve the problem with circular dependency issue. Resolves #38212. PR Close #38229 27 July 2020, 16:49:14 UTC
a123ef5 fix(dev-infra): Ensure conditions with groups do not fail verification (#37798) There are a few changes in this PR to ensure conditions that are based on groups (i.e. `- groups.pending.length == 0`) do not fail the verify task: * Remove the warning when a condition is encountered that depends on the `groups` state. The warning will otherwise be printed once for every file that triggers the execution of the condition (400,000+ times) * Add an `unverifiable` flag to `GroupCondition` interface and set it to true when an error is encountered due to attempting to get the state of `groups` in a condition * Ignore any unverifiable conditions when gathering unmatched conditions. These should not be considered `unmatched` for verification purposes. * Print the unverifiable conditions by group in the results Sample output: ``` ┌──────────────────────────────────────────────────────────────────────────────┐ │ PullApprove results by group │ └──────────────────────────────────────────────────────────────────────────────┘ Groups skipped (4 groups) Matched conditions by Group (37 groups) Unmatched conditions by Group (0 groups) Unverifiable conditions by Group (3 groups) [public-api] len(groups.pending.exclude("required-minimum-review")... len(groups.rejected.exclude("required-minimum-review")... [size-tracking] len(groups.pending.exclude("required-minimum-review")... len(groups.rejected.exclude("required-minimum-review")... [circular-dependencies] len(groups.pending.exclude("required-minimum-review")... len(groups.rejected.exclude("required-minimum-review")... ``` PR Close #37798 25 July 2020, 01:02:49 UTC
024126d feat(dev-infra): add phased review to groups requiring final sign-off after initial review (#37798) The size-tracking, public-api, and circular-dependencies groups can get a lot of PRs to review. In addition, the members of these groups do not always have the necessary context to fully review the PR in question. This change ensures that the owners in the groups where the changes are being made have approve the changes (ie, the aren't pending or rejected) before requesting final sign-off from these three critical groups. PR Close #37798 25 July 2020, 01:02:42 UTC
4275c34 refactor(dev-infra): create anchors/aliases for excluded always active groups (#37798) global-approvers, global-docs-approvers, and required-minimum-review groups are always active. It's useful to have aliases for getting groups that are active/pending/rejected while excluding these few. PR Close #37798 25 July 2020, 01:02:19 UTC
c4e6f58 fix(zone.js): patch nodejs EventEmtter.prototype.off (#37863) Close #35473 zone.js nodejs patch should also patch `EventEmitter.prototype.off` as `removeListener`. So `off` can correctly remove the listeners added by `EventEmitter.prototype.addListener` PR Close #37863 24 July 2020, 22:45:01 UTC
7467fd3 fix(zone.js): clearTimeout/clearInterval should call on object global (#37858) Close #37333 `clearTimeout` is patched by `zone.js`, and it finally calls the native delegate of `clearTimeout`, the current implemention only call `clearNative(id)`, but it should call on object `global` like `clearNative.call(global, id)`. Otherwise in some env, it will throw error `clearTimeout called on an object that does not implement interface Window` PR Close #37858 24 July 2020, 22:22:48 UTC
aca0198 docs: Fix link by removing a space (#38214) PR Close #38214 24 July 2020, 16:53:06 UTC
eb5e14e docs(core): Fix incorrectly rendered code example in structural directives guide (#38207) The code example was missing a close brace and also incorrectly rendered the template div as an actual div in the page DOM. PR Close #38207 24 July 2020, 16:52:31 UTC
b8af109 docs: fixed that class attribute is not closed (#38219) PR Close #38219 24 July 2020, 15:15:44 UTC
f411c9e build(docs-infra): simplify `ExampleZipper` by removing `PackageJsonCustomizer` (#38192) Previously, `ExampleZipper` (the tool used for creating ZIP archives from our docs examples) used the `PackageJsonCustomizer` to generate `package.json` files for each example type. This had the following drawbacks: - The generated files had to be kept up-to-date with the corresponding boilerplate files in `aio/tools/examples/shared/boilerplate/` and there was no easy way to find out when the files got out-of-sync. - The `PackageJsonCustomizer` logic was non-trivial and difficult to reason about. - The same information was duplicated in the boilerplate files and the customizer configuration files. This setup was useful when we used a single `package.json` file for all docs examples. Now, however, each example type can have its own boilerplate `package.json` file, including scripts and dependencies relevant to the example type. Therefore, it is no longer necessary to generate `package.json` files for ZIP archives. This commit eliminates the drawbacks mentioned above and simplifies the `ExampleZipper` tool by removing `PackageJsonCustomizer` and re-using the boilerplate `package.json` files for ZIP archives. The changes in this commit also fix some ZIP archives that were previously broken (for example due to missing dependencies). PR Close #38192 23 July 2020, 18:08:12 UTC
7f455e6 fix(docs-infra): correctly display copy button in IE11 (#38186) Fix button top portion was clipped in IE11 by setting overflow to visible Fixes #37816 PR Close #38186 23 July 2020, 18:07:29 UTC
e36caaf build(docs-infra): upgrade cli command docs sources to a404d2a86 (#38183) Updating [angular#10.0.x](https://github.com/angular/angular/tree/10.0.x) from [cli-builds#10.0.x](https://github.com/angular/cli-builds/tree/10.0.x). ## Relevant changes in [commit range](https://github.com/angular/cli-builds/compare/14af4e07c...a404d2a86): **Modified** - help/update.json PR Close #38183 23 July 2020, 18:06:55 UTC
5e89d98 refactor(dev-infra): Add support for groups in the conditions evaluator (#38164) Conditions can refer to the groups array that is a list of the preceding groups. This commit adds support to the verification for those conditions. This commit also adds some tests to the parsing and condition matching to ensure everything works as expected. PR Close #38164 23 July 2020, 18:05:43 UTC
200dbd4 docs: add Kevin Kreuzer to GDE page (#37929) This commit adds Kevin Kreuzer to the Angular GDE page along with a biography, his contributions, and a photograph. PR Close #37929 23 July 2020, 18:03:58 UTC
c909528 docs: update dynamic-component loading guide (#36959) The 'entryComponents' array is no longer a special case for dynamic component loading because of the Ivy compiler. PR Close #36959 23 July 2020, 18:03:02 UTC
7c2d8fc docs: remove duplicate `https://` (#38199) This doc contained a duplicate `http://` before the domain name leading to an invalid link. This commit fixes this issue. PR Close #38199 23 July 2020, 17:54:45 UTC
a50a688 docs: update api reference for router outlet directive (#38166) Incorporate more specific information about multiple outlets and how to target them, with link to tutorial example. PR Close #38166 23 July 2020, 03:50:13 UTC
6ec7297 build(docs-infra): remove boilerplate file listings in `example-boilerplate.js` (#38173) To avoid unnecessary code duplication in docs examples, we have some boilerplate files for various example types (in `aio/tools/examples/shared/boilerplate/`). These files are copied to each example project in `aio/content/examples/` (according to the example's type, as specified in its `example-config.json` file). Previously, the `example-boilerplate.js`, which is responsible for copying the boilerplate files, had lists for files to be copied for each project type and only copied the listed files from the boilerplate directory to the example directory. This approach had some drawbacks: - Files need to be updated in two separate locations: in the boilerplate directory that includes the files and the file list in `example-boilerplate.js`. - It is easy to add a file in the boilerplate directory but forget to add it in `example-boilerplate.js` and not realize that it is not being included in the example project (including the generated StackBlitz project and ZIP archive). This commit changes the approach by removing the boilerplate file listings from `example-boilerplate.js` and copying all files from a boilerplate directory to example directories. This addresses the above drawbacks and simplifies the `example-boilerplate.js` script. I have verified that the resulting code example doc regions as well as the generated StackBlitz projects and ZIP archives are identical to the ones generated before this commit. PR Close #38173 22 July 2020, 17:15:10 UTC
f264cd1 fix(docs-infra): include `.gitignore` file in CLI-based docs examples (#38173) Previously, the `.gitignore` file that is part of the boilerplate files for CLI-based docs examples (located in `aio/tools/examples/shared/boilerplate/cli/`) was not added to the example projects, because it was not included in the boilerplate file list in `example-boilerplate.js`. This commit fixes it by adding the `.gitignore` file to the list. This ensures that docs examples more closely match CLI-generated projects. PR Close #38173 22 July 2020, 17:15:10 UTC
fc17bdd fix(docs-infra): correctly add `polyfills.ts` file as boilerplate for `i18n` docs examples (#38173) Docs examples of type `i18n` need a slightly modified version of `polyfills.ts` that imports `@angular/localize/init`. Previously, this file was not included in `i18n` example projects for two reasons: - While the file was included in the `i18n` boilerplate files (at `aio/tools/examples/shared/boilerplate/i18n/`), it was not included in the boilerplate file list in `example-boilerplate.js`. - The file was in the wrong location: It was located at the project root instead of inside the `src/` directory. This commit addresses the above issues (i.e. adds the file to the boilerplate file list for `i18n` projects and moves the file inside the `src/` directory). PR Close #38173 22 July 2020, 17:15:10 UTC
0765626 build(docs-infra): remove obsolete `systemjs.config.web[.build].js` files from docs examples (#38173) There were some `systemjs.config.web[.build].js` files in the `systemjs` boilerplate directory that are not used any more. In the past, these files were used in the Plunker-based live examples, but we no longer use Plunker for live examples. This commit removes these obsolete files. PR Close #38173 22 July 2020, 17:15:10 UTC
f146b34 build(docs-infra): remove obsolete `typings.d.ts` files from angular.io and docs examples (#38173) There were two `typings.d.ts` files with SystemJS module definitions in `aio/src/` and `aio/tools/examples/shared/boilerplate/cli/`. These are remnants from old CLI versions that used SystemJS and are no longer needed. For docs examples specifically, these files were never copied over to example projects and thus not included in StackBlitz projects and ZIP archives. This commit removes these obsolete files. PR Close #38173 22 July 2020, 17:15:10 UTC
f899d6e docs: fix typo in ng_control.ts (#38157) PR Close #38157 22 July 2020, 17:14:24 UTC
c18d7a1 docs: fix typo from singular to plural spelling (#36586) This commit fixes the spelling of the singular form of the word function to the plural spelling in packages/core/src/application_init.ts PR Close #36586 22 July 2020, 17:12:45 UTC
2c7ff82 release: cut the v10.0.5 release 22 July 2020, 16:36:00 UTC
3f8f3a2 docs: fix type in lazy-load callout (#38153) PR Close #38153 21 July 2020, 21:30:48 UTC
f5eeb1a docs: fix DOCUMENT import path (#38158) (#38159) PR Close #38159 21 July 2020, 18:35:42 UTC
2af3d9c refactor(core): rename synthetic host property and listener instructions (#38150) This commit updates synthetic host property and listener instruction names to better align with other instructions. The `ɵɵupdateSyntheticHostBinding` instruction was renamed to `ɵɵsyntheticHostProperty` (to match the `ɵɵhostProperty` instruction name) and `ɵɵcomponentHostSyntheticListener` was renamed to `ɵɵsyntheticHostListener` since this instruction is generated for both Components and Directives (so 'component' is removed from the name). This PR is a followup after PR #35568. PR Close #38150 21 July 2020, 16:11:49 UTC
4664acc docs: add routing terms to glossary (#38053) Update glossary to add term definitions for routing; componentless route, link parameters array, router outlet. PR Close #38053 21 July 2020, 00:09:34 UTC
3797861 docs(router): fix typos (#38132) PR Close #38132 20 July 2020, 21:12:22 UTC
d6d3984 docs(common): fix selector field in NgIfAs example component (#35854) PR Close #35854 20 July 2020, 20:35:05 UTC
c17f5c1 build: update pullapprove to remove @matsko from reviewer lists (#38146) With @matsko leaving the Angular team, we need to update the pullapprove configuration to reflect his no longer being a reviewer for file groups throughout the repository. PR Close #38146 20 July 2020, 20:33:59 UTC
9cb318f docs: separate template syntax into multiple docs (#36954) This is part of a re-factor of template syntax and structure. The first phase breaks out template syntax into multiple documents. The second phase will be a rewrite of each doc. Specifically, this PR does the following: - Breaks sections of the current template syntax document each into their own page. - Corrects the links to and from these new pages. - Adds template syntax subsection to the left side NAV which contains all the new pages. - Adds the new files to pullapprove. PR Close #36954 20 July 2020, 18:16:45 UTC
b026dd8 docs: add known issue for bazel (#38074) This commit adds a known issue for windows, when running tests using `bazal run`, instead of using `bazel test` PR Close #38074 20 July 2020, 18:15:37 UTC
0ebc316 refactor(dev-infra): Update triage labels documentation (#38081) Add new type: confusing and type: use-case labels to the triage readme as well as clarify that freq and severity are only required for type: bug/fix PR Close #38081 20 July 2020, 18:14:48 UTC
dc412c5 refactor(dev-infra): allow use-case and confusing types to be marked as 'triaged' (#38081) Some issue reports don't really fall into any of the current buckets that count towards triage level 2: bug/fix, feature, or refactor. Some reports are: * working as intended but confusing - the labels might be 'type: confusing', 'comp: docs', 'comp: router' * generally working as originally designed but a use-case could be argued for a different implementation. This type of report is a little hard to triage; it may be neither a bug, nor feature but more of a 'type: use-case'. These may eventually turn into a bug/fix or feature, but can't necessarily be put in those buckets immediately. PR Close #38081 20 July 2020, 18:14:47 UTC
e80278c fix(compiler): properly associate source spans for implicitly closed elements (#38126) HTML is very lenient when it comes to closing elements, so Angular's parser has rules that specify which elements are implicitly closed when closing a tag. The parser keeps track of the nesting of tag names using a stack and parsing a closing tag will pop as many elements off the stack as possible, provided that the elements can be implicitly closed. For example, consider the following templates: - `<div><br></div>`, the `<br>` is implicitly closed when parsing `</div>`, because `<br>` is a void element. - `<div><p></div>`, the `<p>` is implicitly closed when parsing `</div>`, as `<p>` is allowed to be closed by the closing of its parent element. - `<ul><li>A <li>B</ul>`, the first `<li>` is implicitly closed when parsing the second `<li>`, whereas the second `<li>` would be implicitly closed when parsing the `</ul>`. In all the cases above the parsed structure would be correct, however the source span of the closing `</div>` would incorrectly be assigned to the element that is implicitly closed. The problem was that closing an element would associate the source span with the element at the top of the stack, however this may not be the element that is actually being closed if some elements would be implicitly closed. This commit fixes the issue by assigning the end source span with the element on the stack that is actually being closed. Any implicitly closed elements that are popped off the stack will not be assigned an end source span, as the implicit closing implies that no ending element is present. Note that there is a difference between self-closed elements such as `<input/>` and implicitly closed elements such as `<input>`. The former does have an end source span (identical to its start source span) whereas the latter does not. Fixes #36118 Resolves FW-2004 PR Close #38126 20 July 2020, 17:02:07 UTC
307699a refactor(compiler): remove unused parser methods (#38126) These methods are no longer used so they can safely be removed. PR Close #38126 20 July 2020, 17:02:06 UTC
4df0b7e build(language-service): Remove ls_rollup_bundle (#38086) (#38129) `ls_rollup_bundle` is no longer needed since we could invoke `ng_rollup_bundle` directly. Background: language service runs rollup to produce a single file to reduce startup time in the editor. However, due to the need to load dynamic versions of typescript at runtime (think the case where users can change typescript version in their editor), we hack the "banner" to export a CommonJS default function, so that we could dynamically load the typescript module provided at runtime via AMD and use it throughout the implementation. PR Close #38086 PR Close #38129 20 July 2020, 17:00:55 UTC
371831f docs(core): add note about not mutating multi provider arrays (#37645) Adds a note to the provider docs that users shouldn't mutate an array that is returned from a `multi` provider, because it can cause unforeseen consequences in other parts of the app. Closes #37481. PR Close #37645 20 July 2020, 17:00:06 UTC
8e305e7 docs: correct flag default values in `--strict` (#37982) Docs state that `strictInjectionParameters` is true by default in `ng new`, however this is not the case in `10.0.1`. It is only set when `--strict` is provided. Clarified that the `--strict` flag is required. `strictTemplates` does not mention anything about `--strict`, so I included a similar point that it is `true` when a new project is generated with `--strict`. PR Close #37982 17 July 2020, 23:26:50 UTC
481df83 build: Ignore .history for the xyz.local-history VSCode extension (#38121) Ignore .history for the xyz.local-history VSCode extension PR Close #38121 17 July 2020, 20:33:40 UTC
14b4718 fix(core): Allow modification of lifecycle hooks any time before bootstrap (#38119) Currently we read lifecycle hooks eagerly during `ɵɵdefineComponent`. The result is that it is not possible to do any sort of meta-programing such as mixins or adding lifecycle hooks using custom decorators since any such code executes after `ɵɵdefineComponent` has extracted the lifecycle hooks from the prototype. Additionally the behavior is inconsistent between AOT and JIT mode. In JIT mode overriding lifecycle hooks is possible because the whole `ɵɵdefineComponent` is placed in getter which is executed lazily. This is because JIT mode must compile a template which can be specified as `templateURL` and those we are waiting for its resolution. - `+` `ɵɵdefineComponent` becomes smaller as it no longer needs to copy lifecycle hooks from prototype to `ComponentDef` - `-` `ɵɵNgOnChangesFeature` feature is now always included with the codebase as it is no longer tree shakable. Previously we have read lifecycle hooks from prototype in the `ɵɵdefineComponent` so that lifecycle hook access would be monomorphic. This decision was made before we had `T*` data structures. By not reading the lifecycle hooks we are moving the megamorhic read form `ɵɵdefineComponent` to instructions. However, the reads happen on `firstTemplatePass` only and are subsequently cached in the `T*` data structures. The result is that the overall performance should be same (or slightly better as the intermediate `ComponentDef` has been removed.) - [ ] Remove `ɵɵNgOnChangesFeature` from compiler. (It will no longer be a feature.) - [ ] Discuss the future of `Features` as they hinder meta-programing. Fix #30497 PR Close #38119 17 July 2020, 20:14:35 UTC
7b6e73c fix(core): error due to integer overflow when there are too many host bindings (#38014) We currently use 16 bits to store information about nodes in a view. The 16 bits give us 65536 entries in the array, but the problem is that while the number is large, it can be reached by ~4300 directive instances with host bindings which could realistically happen is a very large view, as seen in #37876. Once we hit the limit, we end up overflowing which eventually leads to a runtime error. These changes bump to using 20 bits which gives us around 1048576 entries in the array or 16 times more than the current amount which could still technically be reached, but is much less likely and the user may start hitting browser limitations by that point. I picked the 20 bit number since it gives us enough buffer over the 16 bit one, while not being as massive as a 24 bit or 32 bit. I've also added a dev mode assertion so it's easier to track down if it happens again in the future. Fixes #37876. PR Close #38014 17 July 2020, 19:58:16 UTC
f2ca463 fix(docs-infra): correctly display SVG icons in IE11 (#38046) Fix two issues that affected displaying of SVG icons in IE11: 1. All SVG icons except for one appeared empty. This was related how the CustomIconRegistry re-used the same <div> element to create all SVG elements. 2. The GitHub and Twitter buttons next to the search bar were not sized properly. Fixes #37847 PR Close #38046 17 July 2020, 18:44:35 UTC
d30cf2f docs(docs-infra): reformat redundant sentence (#38109) reformat sentence uses the npm package manager since npm is node package manager Fixes #38106 PR Close #38109 17 July 2020, 18:39:17 UTC
e9cb6fb build(language-service): add script to build package locally (#38103) This commit adds a script to build @angular/language-service locally so that it can be consumed by the Angular extension for local development. PR Close #38103 16 July 2020, 23:39:55 UTC
99960a9 docs: update router api documentation (#37980) Edit descriptions, usage examples, and add links to be complete and consistent with API reference doc style PR Close #37980 16 July 2020, 20:52:41 UTC
9ac3383 build(language-service): remove typescript from ivy bundle (#38088) Currently the Ivy language service bundle is [10MB]( https://unpkg.com/browse/@angular/language-service@10.0.4/bundles/) because we accidentally included typescript in the bundle. With this change, the bundle size goes down to 1.6MB, which is even smaller than the View Engine bundle (1.8MB). ```bash $ yarn bazel build //packages/language-service/bundles:ivy $ ls -lh dist/bin/packages/language-service/bundles/ivy.umd.js 1.6M Jul 15 15:49 dist/bin/packages/language-service/bundles/ivy.umd.js ``` PR Close #38088 16 July 2020, 18:04:58 UTC
06ac757 ci: add more owners for some categories (#37994) * Add petebacondarwin to public-api, size-tracking, and circular-dependencies * Add mhevery, josephperrott, and jelbourn to code-ownership PR Close #37994 16 July 2020, 18:03:56 UTC
a1d691e docs: add Ajit Singh to the collaborators (#37792) Ajit Singh is a newly added collborator after a few months of contributing add him to the contributors.json PR Close #37792 16 July 2020, 18:02:08 UTC
6e32972 docs: add Emma Twersky to DevRel Contributor page (#38084) This commit adds Emma Twersky to the Angular Contributors page along with a bio & a photograph. PR Close #38084 15 July 2020, 20:50:40 UTC
739bf5c docs: fix typo in "Creating libraries" guide (`by publishing...ensures` --> `publishing...ensures`) (#38032) PR Close #38032 15 July 2020, 20:12:15 UTC
ee340b7 docs(service-worker): fix typos in `SwRegistrationOptions` API docs (#38047) PR Close #38047 15 July 2020, 20:10:26 UTC
17ddab9 fix(core): incorrectly validating properties on ng-content and ng-container (#37773) Fixes the following issues related to how we validate properties during JIT: - The invalid property warning was printing `null` as the node name for `ng-content`. The problem is that when generating a template from `ng-content` we weren't capturing the node name. - We weren't running property validation on `ng-container` at all. This used to be supported on ViewEngine and seems like an oversight. In the process of making these changes, I found and cleaned up a few places where we were passing in `LView` unnecessarily. PR Close #37773 15 July 2020, 19:39:40 UTC
4f65f47 ci(docs-infra): increase minimum a11y scores for various pages (#37899) As part of our CI checks, we ensure the a11y score on certain angular.io pages do not fall below some thresholds. This commit increases these thresholds based on our current scores to ensure we do not regress below current values. PR Close #37899 15 July 2020, 19:38:08 UTC
527a04d build(docs-infra): upgrade lighthouse to 6.1.0 (#37899) To take advantage of lazy loaded images `img[loading=lazy]`, this commit upgrades lighthouse to version 6.1.0. Closes #35965 PR Close #37899 15 July 2020, 19:38:08 UTC
f2ee468 fix(dev-infra): add missing BUILD file to dev-infra/bazel:files (#38026) * Without this BUILD file we were seeing errors about the reference to expand_template.bzl in ng_rollup_bundle.bzl because dev-infra/bazel was not considered a package. PR Close #38026 15 July 2020, 19:34:47 UTC
0320096 fix(dev-infra): fix broken zone.js substitution for dev-infra:npm_package (#38026) * fix substitution that was broken by PR #36540 to match the new import path PR Close #38026 15 July 2020, 19:34:47 UTC
7abb48a feat(dev-infra): add bazel firefox browser with RBE compatibility (#38029) Adds Firefox as browser to `dev-infra/browsers` with RBE compatibility. The default Firefox browser is not compatible similar to the default Chromium version exposed by `rules_webtesting`. The Angular Components repository will use this browser target as it enables RBE support. Also it gives us more flexibility about the Firefox version we test against. The version provided by `rules_webtesting` is very old and most likely not frequently updated (based on past experience). PR Close #38029 15 July 2020, 19:34:06 UTC
b40d3c0 docs: update reference doc for router guards and resolvers (#38079) Complete and clarify descriptions and example of the guard and resolver functions in Router API documentation. PR Close #38079 15 July 2020, 19:32:12 UTC
0e56171 docs: remove all references to Angular Console (#37608) Angular Console has been renamed and links no longer work. It has been decided to remove references to this third-party tool from the AIO documentation. Closes #37604 PR Close #37608 15 July 2020, 19:30:59 UTC
dba4023 fix(compiler-cli): ensure file_system handles mixed Windows drives (#38030) The `fs.relative()` method assumed that the file-system is a single tree, which is not the case in Windows, where you can have multiple drives, e.g. `C:`, `D:` etc. This commit changes `fs.relative()` so that it no longer forces the result to be a `PathSegment` and then flows that refactoring through the rest of the compiler-cli (and ngcc). The main difference is that now, in some cases, we needed to check whether the result is "rooted", i.e an `AbsoluteFsPath`, rather than a `PathSegment`, before using it. Fixes #36777 PR Close #38030 15 July 2020, 19:29:44 UTC
13d1763 release: cut the v10.0.4 release 15 July 2020, 17:56:55 UTC
e3b8010 fix(ngcc): report a warning if ngcc tries to use a solution-style tsconfig (#38003) In CLI v10 there was a move to use the new solution-style tsconfig which became available in TS 3.9. The result of this is that the standard tsconfig.json no longer contains important information such as "paths" mappings, which ngcc might need to correctly compute dependencies. ngcc (and ngc and tsc) infer the path to tsconfig.json if not given an explicit tsconfig file-path. But now that means it infers the solution tsconfig rather than one that contains the useful information it used to get. This commit logs a warning in this case to inform the developer that they might not have meant to load this tsconfig and offer alternative options. Fixes #36386 PR Close #38003 14 July 2020, 20:21:32 UTC
6626739 docs(core): fixes minor typo in initNgDevMode function docs (#38042) PR Close #38042 14 July 2020, 20:17:33 UTC
396033d refactor(forms): remove unnecessary `!` operators from validators (#36805) When we added the strict null checks, the lexer had some `!` operators added to prevent the compilation from failing. See #24571 PR Close #36805 14 July 2020, 18:01:54 UTC
02ee9d2 docs(forms): Fix typos in template-driven forms tutorial (#37933) Fix two typos in the 'Building a template-driven form` that caused the guide to not be displayed correctly. PR Close #37933 14 July 2020, 18:01:30 UTC
a4c7f18 docs(forms): Minor fix in forms overview guide (#37933) Remove an article from the `Data flow in forms` section of the forms overview guide. The use of `the` and `a` together is not syntactically correct. PR Close #37933 14 July 2020, 18:01:30 UTC
d690eec docs(router): fix typo in "spotlight on pathmatch" (#38039) https://angular.io/guide/router-tutorial-toh#pathmatch PR Close #38039 14 July 2020, 16:20:19 UTC
10e4dfa docs(router): fix typo in https://angular.io/guide/router#activated-route (#38034) In angular.io, it linked to the wrong part of the page. https://angular.io/guide/router#activated-route PR Close #38034 14 July 2020, 16:10:26 UTC
f8d948b docs: fix live examples in testing guides (#38038) In #37957, parts of the testing guide were broken out into separate guides. As part of that work, the `<live-example>` tags were also copied to the new guides. These `<live-example>` tags did not specify the targeted example project via the `name` attribute, thus they were implicitly targeting the example with the same name as the guide they were in. See the [Docs style guide][1] for more info. However, there is only one example project (`testing/`) and all `<live-example>` tags were supposed to target that. This worked fine on the `testing.md` guide, but it broke on other guides (which tried to target non-existing example projects based on their names). This commit fixes it by explicitly specifying which example is targeted by the `<live-example>` tags. It also removes the `embedded-style` attribute that has no effect. [1]: https://angular.io/guide/docs-style-guide#live-examples Fixes #38036 PR Close #38038 14 July 2020, 16:10:01 UTC
back to top