0469d92 | Misko Hevery | 29 July 2020, 16:30:39 UTC | Revert "refactor(platform-browser): specify return type of parseEventName (#38089)" This reverts commit c3ddc3d6b15ed9da2f4a16d41cb8c41dffabbe35. | 29 July 2020, 16:30:39 UTC |
cdda60a | Misko Hevery | 28 July 2020, 21:38:28 UTC | release: cut the v10.0.6 release | 28 July 2020, 21:38:28 UTC |
7570356 | Misko Hevery | 28 July 2020, 18:54:11 UTC | 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 | Joey Perrott | 28 July 2020, 00:15:42 UTC | Revert "ci: roll back phased review conditions" (#38259) This reverts commit ca8eafc2983f983803cd03e4a08bf732672712dd. PR Close #38259 | 28 July 2020, 18:26:29 UTC |
fc4dfc5 | Joey Perrott | 28 July 2020, 00:10:23 UTC | 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 | Judy Bogart | 27 July 2020, 19:46:57 UTC | 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 | Ajit Singh | 18 July 2020, 13:05:28 UTC | 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 | Ahn | 28 July 2020, 08:11:05 UTC | docs(core): correct SomeService to SomeComponent (#38264) PR Close #38264 | 28 July 2020, 18:10:59 UTC |
41c9910 | Judy Bogart | 27 July 2020, 17:00:05 UTC | 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 | Andrew Scott | 27 July 2020, 23:26:31 UTC | 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 | Tony Bove | 23 July 2020, 22:00:43 UTC | 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 | Jeremy Elbourn | 22 July 2020, 01:43:05 UTC | 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 | Tony Bove | 20 July 2020, 22:56:58 UTC | 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 | JiaLiPassion | 15 June 2020, 03:43:57 UTC | 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 | Misko Hevery | 28 July 2020, 16:56:24 UTC | Revert "refactor(core): remove unused export (#38224)" This reverts commit c6c8e1581371fcbb62dbeb5bf1128ae25f0220e3. | 28 July 2020, 16:56:24 UTC |
b1e7775 | Andrew Scott | 24 July 2020, 20:22:28 UTC | 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 | Judy Bogart | 22 July 2020, 16:08:20 UTC | 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 | Sonu Kapoor | 15 July 2020, 22:59:11 UTC | 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 | Igor Minar | 24 July 2020, 16:49:19 UTC | 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 | Igor Minar | 24 July 2020, 16:41:31 UTC | 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 | Igor Minar | 24 July 2020, 16:39:54 UTC | 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 | JiaLiPassion | 13 May 2020, 15:53:53 UTC | 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 | Kapunahele Wong | 09 June 2020, 18:33:02 UTC | 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 | Omar Hasan | 26 July 2020, 15:12:36 UTC | 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 | Changyu Geng | 07 July 2020, 01:15:44 UTC | 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 | Andrew Kushnir | 24 July 2020, 01:51:55 UTC | 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 | Andrew Kushnir | 24 July 2020, 01:47:33 UTC | 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 | Andrew Kushnir | 24 July 2020, 01:43:04 UTC | 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 | Tim Deschryver | 23 July 2020, 13:53:53 UTC | docs: add ng-add save option (#38198) PR Close #38198 | 27 July 2020, 16:52:15 UTC |
07f184a | Andrew Kushnir | 24 July 2020, 22:41:44 UTC | 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 | Andrew Scott | 23 July 2020, 22:53:46 UTC | 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 | Andrew Scott | 27 June 2020, 19:53:43 UTC | 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 | Andrew Scott | 27 June 2020, 19:47:54 UTC | 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 | JiaLiPassion | 30 June 2020, 22:15:22 UTC | 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 | JiaLiPassion | 30 June 2020, 21:11:14 UTC | 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 | Andrii | 24 July 2020, 03:44:28 UTC | docs: Fix link by removing a space (#38214) PR Close #38214 | 24 July 2020, 16:53:06 UTC |
eb5e14e | Andrew Scott | 23 July 2020, 23:30:31 UTC | 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 | k-ta-yamada | 24 July 2020, 14:15:19 UTC | docs: fixed that class attribute is not closed (#38219) PR Close #38219 | 24 July 2020, 15:15:44 UTC |
f411c9e | George Kalpakas | 22 July 2020, 19:23:55 UTC | 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 | Saif | 22 July 2020, 20:30:08 UTC | 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 | George Kalpakas | 22 July 2020, 17:19:24 UTC | 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 | Andrew Scott | 20 July 2020, 18:53:26 UTC | 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 | kreuzerk | 04 July 2020, 19:25:21 UTC | 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 | Bogdan Bogdanov | 06 May 2020, 18:02:26 UTC | 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 | Sonu Kapoor | 23 July 2020, 14:50:08 UTC | 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 | Judy Bogart | 21 July 2020, 18:00:09 UTC | 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 | George Kalpakas | 22 July 2020, 11:40:03 UTC | 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 | George Kalpakas | 22 July 2020, 11:40:02 UTC | 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 | George Kalpakas | 22 July 2020, 11:40:02 UTC | 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 | George Kalpakas | 22 July 2020, 11:40:01 UTC | 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 | George Kalpakas | 22 July 2020, 11:40:00 UTC | 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 | Georgi K | 21 July 2020, 11:05:51 UTC | docs: fix typo in ng_control.ts (#38157) PR Close #38157 | 22 July 2020, 17:14:24 UTC |
c18d7a1 | Boaz Rymland | 12 April 2020, 11:04:47 UTC | 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 | Andrew Kushnir | 22 July 2020, 16:36:00 UTC | release: cut the v10.0.5 release | 22 July 2020, 16:36:00 UTC |
3f8f3a2 | Alan Cohen | 21 July 2020, 03:40:15 UTC | docs: fix type in lazy-load callout (#38153) PR Close #38153 | 21 July 2020, 21:30:48 UTC |
f5eeb1a | Jaime Oliveira | 21 July 2020, 11:53:22 UTC | docs: fix DOCUMENT import path (#38158) (#38159) PR Close #38159 | 21 July 2020, 18:35:42 UTC |
2af3d9c | Andrew Kushnir | 15 May 2020, 22:33:00 UTC | 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 | Judy Bogart | 14 July 2020, 17:58:25 UTC | 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 | Temur Tchanukvadze | 18 July 2020, 15:14:39 UTC | docs(router): fix typos (#38132) PR Close #38132 | 20 July 2020, 21:12:22 UTC |
d6d3984 | Qais Patankar | 04 March 2020, 12:15:16 UTC | docs(common): fix selector field in NgIfAs example component (#35854) PR Close #35854 | 20 July 2020, 20:35:05 UTC |
c17f5c1 | Joey Perrott | 20 July 2020, 18:06:05 UTC | 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 | Kapunahele Wong | 28 April 2020, 20:26:58 UTC | 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 | Sonu Kapoor | 15 July 2020, 13:07:37 UTC | 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 | Andrew Scott | 20 July 2020, 16:28:08 UTC | 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 | Andrew Scott | 15 July 2020, 17:16:34 UTC | 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 | JoostK | 17 July 2020, 22:05:11 UTC | 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 | JoostK | 17 July 2020, 21:23:29 UTC | 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 | Keen Yee Liau | 15 July 2020, 20:58:03 UTC | 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 | crisbeto | 14 July 2020, 15:11:54 UTC | 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 | Douglas Parker | 09 July 2020, 01:27:30 UTC | 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 | Misko Hevery | 17 July 2020, 18:43:46 UTC | 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 | Misko Hevery | 15 February 2020, 02:02:11 UTC | 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 | crisbeto | 11 July 2020, 16:02:30 UTC | 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 | Saif | 14 July 2020, 14:13:50 UTC | 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 | Saif | 17 July 2020, 10:45:01 UTC | 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 | Keen Yee Liau | 16 July 2020, 19:03:12 UTC | 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 | Judy Bogart | 01 June 2020, 21:58:07 UTC | 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 | Keen Yee Liau | 15 July 2020, 22:52:12 UTC | 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 | Jeremy Elbourn | 15 July 2020, 18:47:26 UTC | 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 | Ajit Singh | 15 July 2020, 15:43:40 UTC | 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 | Emma Twersky | 15 July 2020, 19:43:55 UTC | 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 | George Kalpakas | 13 July 2020, 21:19:00 UTC | docs: fix typo in "Creating libraries" guide (`by publishing...ensures` --> `publishing...ensures`) (#38032) PR Close #38032 | 15 July 2020, 20:12:15 UTC |
ee340b7 | George Kalpakas | 14 July 2020, 14:33:53 UTC | docs(service-worker): fix typos in `SwRegistrationOptions` API docs (#38047) PR Close #38047 | 15 July 2020, 20:10:26 UTC |
17ddab9 | crisbeto | 15 July 2020, 05:03:04 UTC | 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 | George Kalpakas | 09 July 2020, 16:22:30 UTC | 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 | Sonu Kapoor | 02 July 2020, 23:41:24 UTC | 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 | Wagner Maciel | 14 July 2020, 20:06:21 UTC | 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 | Wagner Maciel | 09 July 2020, 20:16:53 UTC | 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 | Paul Gschwendtner | 13 July 2020, 20:25:46 UTC | 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 | Judy Bogart | 15 July 2020, 16:43:00 UTC | 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 | Windvis | 16 June 2020, 13:41:32 UTC | 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 | Pete Bacon Darwin | 07 July 2020, 14:40:14 UTC | 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 | atscott | 15 July 2020, 17:56:55 UTC | release: cut the v10.0.4 release | 15 July 2020, 17:56:55 UTC |
e3b8010 | Pete Bacon Darwin | 10 July 2020, 15:42:37 UTC | 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 | Sonu Kapoor | 14 July 2020, 11:48:29 UTC | docs(core): fixes minor typo in initNgDevMode function docs (#38042) PR Close #38042 | 14 July 2020, 20:17:33 UTC |
396033d | danranVm | 25 April 2020, 03:42:18 UTC | 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 | Aristeidis Bampakos | 05 July 2020, 20:45:53 UTC | 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 | Aristeidis Bampakos | 05 July 2020, 09:16:38 UTC | 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 | David Martinez Barreiro | 14 July 2020, 09:54:21 UTC | 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 | RN Lee | 13 July 2020, 22:39:49 UTC | 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 |