https://github.com/angular/angular

sort by:
Revision Author Date Message Commit Date
3a2b590 release: cut the v11.2.10 release 14 April 2021, 19:34:31 UTC
b8c4da9 Revert "fix(compiler-cli): autocomplete literal types in templates. (#41456)" (#41623) This reverts commit 1d12c50f63f90c91636185b2287e31e9c0291121. PR Close #41623 14 April 2021, 16:16:36 UTC
3d54980 fix(language-service): resolve to the pre-compiled style when compiled css url is provided (#41538) With this commit, the language service will first try to locate a pre-compiled style file with the same name when a `css` is provided in the `styleUrls`. This prevents a missing resource diagnostic for when the compiled file is not available in the language service environment and also allows "go to definition" to go to that pre-compiled file. Fixes angular/vscode-ng-language-service#1263 PR Close #41538 14 April 2021, 16:15:01 UTC
3dbcc7f fix(language-service): bound attributes should not break directive matching (#41597) The language service uses an elements attributes to determine if it matches a directive in the component scope. We do this by accumulating all attribute bindings and matching against the selectors for the available directives. The compiler itself does a similar thing. In addition, the compiler does not use the value of `BoundAttribute`s to match directives (https://github.com/angular/angular/blob/cdf1ea1951fb7187b1f6c9bb8a847c859c41e0b8/packages/compiler/src/render3/view/util.ts#L174-L206). This commit changes the language service to also ignore bound attribute values for directive matching. Fixes https://github.com/angular/vscode-ng-language-service/issues/1278 PR Close #41597 14 April 2021, 01:23:50 UTC
df04b9b fix(compiler-cli): autocomplete literal types in templates. (#41456) This adds string literals, number literals, `true`, `false`, `null` and `undefined` to autocomplete results in templates. For example, when completing an input of union type. Component: `@Input('input') input!: 'a'|'b'|null;` Template: `[input]="|"` Provide `'a'`, `'b'`, and `null` as autocompletion entries. Previously we did not include literal types because we only included results from the component context (`ctx.`) and the template scope. PR Close #41456 13 April 2021, 20:51:48 UTC
04235fa docs: replace Codelyzer recommendation with Angular-ESLint in accessibility guide (#41294) Replace Codelyzer recommendation with Angular-ESLint in accessibility guide since that tool is deprecated and was removed from the Angular CLI. Closes #41573 PR Close #41294 13 April 2021, 20:06:18 UTC
4847c14 fix(dev-infra): only create authenticated github instance once in yargs (#41603) Fix github token option for yargs to only create an authenticated token one time. PR Close #41603 13 April 2021, 18:50:50 UTC
cfd67c1 refactor(compiler-cli): track a dependency on a default import on `WrappedNodeExpr` (#41586) Previously, the `DefaultImportRecorder` interface was used as follows: 1. During the analysis phase, the default import declaration of an identifier was recorded. 2. During the emit phase each emitted identifier would be recorded. The information from step 1 would then be used to determine the default import declaration of the identifier which would be registered as used. 3. A TypeScript transform would taint all default imports that were registered as used in step 2 such that the imports are not elided by TypeScript. In incremental compilations, a file may have to be emitted even if its analysis data has been reused from the prior compilation. This would mean that step 1 is not executed, resulting in a mismatch in step 2 and ultimately in incorrectly eliding the default. This was mitigated by storing the mapping from identifier to import declaration on the `ts.SourceFile` instead of a member of `DefaultImportTracker` such that it would also be visible to the `DefaultImportRecorder` of subsequent compiles even if step 1 had not been executed. Ultimately however, the information that is being recorded into the `DefaultImportRecorder` has a longer lifetime than a single `DefaultImportRecorder` instance, as that is only valid during a single compilation whereas the identifier to import declaration mapping outlives a single compilation. This commit replaces the registration of this mapping by attaching the default import declaration on the output AST node that captures the identifier. This enables the removal of all of the `DefaultImportRecorder` usages throughout the analysis phase together with the `DefaultImportRecorder` interface itself. PR Close #41586 13 April 2021, 14:37:29 UTC
43050a1 fix(compiler-cli): prevent eliding default imports in incremental recompilations (#41586) The Angular compiler has to actively keep default import statements alive if they were only used in type-only positions, but have been emitted as value expressions for DI purposes. A problem occurred in incremental recompilations, where the relationship between an identifier usage and its corresponding default import would not be considered. This could result in the removal of the default import statement and caused a `ReferenceError` at runtime. This commit fixes the issue by storing the association from an identifier to its default import declaration on the source file itself, instead of within the `DefaultImportTracker` instance. The `DefaultImportTracker` instance is only valid for a single compilation, whereas the association from an identifier to a default import declaration is valid as long as the `ts.SourceFile` is the same instance. A subsequent commit refactor the `DefaultImportTracker` to no longer be responsible for registering the association, as its lifetime is conceptually too short to do so. Fixes #41377 PR Close #41586 13 April 2021, 14:37:28 UTC
01b7e39 test(compiler-cli): disable `emitDecoratorMetadata` in the compiler test environment (#41586) The `emitDecoratorMetadata` compiler option does not have to be enabled as Angular decorators are transformed by the AOT compiler. Having the option enabled in our tests can hide issues around import preservation, as with `emitDecoratorMetadata` enabled the TypeScript compiler itself does not elide imports even if they are only used in type-positions. This is unlike having `emitDecoratorMetadata` disabled, however; in that case the Angular compiler has to actively trick TypeScript into retaining default imports when an identifier in a type-only position has been reified into a value position for DI purposes. A subsequent commit addresses a bug in default import preservation that relies on this flag being `false`. PR Close #41586 13 April 2021, 14:37:28 UTC
616145e perf(compiler-cli): allow incremental compilation in the presence of redirected source files (#41587) When multiple occurrences of the same package exist within a single TypeScript compilation unit, TypeScript deduplicates the source files by introducing redirected source file proxies. Such proxies are recreated during an incremental compilation even if the original declaration file did not change, which caused the compiler not to reuse any work from the prior compilation. This commit changes the incremental driver to recognize a redirected source file and treat them as their unredirected source file. PR Close #41587 13 April 2021, 14:35:33 UTC
09eb125 fix(compiler-cli): show a more specific error for Ivy NgModules (#41534) When an Ivy NgModule is imported into a View Engine build, it doesn't have metadata.json files that describe it as an NgModule, so it appears to VE builds as a plain, undecorated class. The error message shown in this situation generic and confusing, since it recommends adding an @NgModule annotation to a class from a library. This commit adds special detection into the View Engine compiler to give a more specific error message when an Ivy NgModule is imported. PR Close #41534 13 April 2021, 14:34:47 UTC
9cda866 docs: change (+) operator to `Number` function to match code (#41570) PR Close #41570 13 April 2021, 04:08:22 UTC
4795c5e docs(docs-infra): fix (+) not accepting null error by using `Number` instead (#41570) Fix unexpected error when following the tutorial (when going through it with stricter type checking enforced). While (+) converts a string to an integer, it does not account for the possibility that `this.route.snapshot.paramMap.get('id')` could return null (type: string | null). Since this null case is not a practical outcome, it is a matter of types; switching from (+) to the `Number` function eliminates this issue, making the tutorial more robust. PR Close #41570 13 April 2021, 04:08:22 UTC
332653d docs: replaced erroneous instances of `HeroDetailsComponent` with `HeroDetailComponent` (#41569) PR Close #41569 13 April 2021, 04:07:36 UTC
a0ce686 docs: add Nishu Goel to GDE list (#41347) PR Close #41347 13 April 2021, 04:06:02 UTC
4378bc3 refactor(dev-infra): use a singleton for GitClient (#41589) Creates a singleton class for GitClient rather than relying on creating an instance to require being passed around throughout its usages. PR Close #41589 13 April 2021, 04:05:30 UTC
f76873e fix(language-service): use 'any' instead of failing for inline TCBs (#41513) In environments such as the Language Service where inline type-checking code is not supported, the compiler would previously produce a diagnostic when a template would require inlining to check. This happened whenever its component class had generic parameters with bounds that could not be safely reproduced in an external TCB. However, this created a bad user experience for the Language Service, as its features would then not function with such templates. Instead, this commit changes the compiler to use the same strategy for inline TCBs as it does for inline type constructors - falling back to `any` for generic types when inlining isn't available. This allows the LS to support such templates with slightly weaker type-checking semantics, which a test verifies. There is still a case where components that aren't exported require an inline TCB, and the compiler will still generate a diagnostic if so. Fixes #41395 PR Close #41513 13 April 2021, 04:02:21 UTC
db90ba4 docs: change ActivatedRouteStub code sample to work with strictNullChecks on (#41559) convertToParamMap() does not accept undefined. Fix code sample so it can be used in strict mode without requiring changes. PR Close #41559 13 April 2021, 04:01:40 UTC
99c9f7c ci: remove old compliance tests (#41556) (#41585) Now that we can run the new compliance tests on Windows, we can delete the old ones, simplifying and speeding up our CI. PR Close #41556 PR Close #41585 12 April 2021, 23:40:40 UTC
6a94388 ci: enable compliance tests on Windows (#41556) (#41585) Now that we have updated the Bazel node.js rules we can run all the compliance tests in Windows on CI. PR Close #41556 PR Close #41585 12 April 2021, 23:40:40 UTC
419c189 fix(core): error if DebugRenderer2.destroyNode is called twice in a row (#41565) Fixes an error that will be thrown if `DebugRenderer2.destroyNode` is called with a node that has already been destroyed. The error happened, because we had a non-null assertion, even though the value can be null. Note that this fix applies only to ViewEngine, because Ivy doesn't provide the `DebugRenderer2`. I decided to resolve it, because it fix is straightforward and this error has been showing up in our logs for a long time now, making actual errors harder to find. PR Close #41565 12 April 2021, 17:30:13 UTC
f0633c0 build: add breakingChangesLabel to merge configuration (#41546) Sets the breakingChangesLabel property to properly confirm breaking changes. PR Close #41546 12 April 2021, 17:11:19 UTC
b5bf0a7 feat(dev-infra): verify breaking changes are properly labeled before merging (#41546) During merging with `ng-dev pr merge` tooling will ensure that pull requests are properly labeled for breaking changes. Pull requests with commits noting breaking changes must also be labeled as such, additionally pull requests with breaking change labels must contain commits noting breaking changes. Fixes #38776 PR Close #41546 12 April 2021, 17:11:18 UTC
04ef24d docs: remove 'ui-jar' from Resources (#41552) This commit removes 'ui-jar' from Resources, since it is not compatible with the latest versions of Angular. Fixes #41030 PR Close #41552 12 April 2021, 17:05:51 UTC
7946f63 feat(dev-infra): create ReleaseNotes class for generating release notes during publishing (#41476) Generate release notes to be used for entries in both CHANGELOG.md files as well as Github releases. PR Close #41476 09 April 2021, 14:49:50 UTC
9f67bac test(dev-infra): extract commit message build function into testing util function (#41476) Creates a testing utility function to build commit message strings. PR Close #41476 09 April 2021, 14:49:50 UTC
9bfa94f docs: add entry for prod tsconfig in library files (#41512) Add an entry for TypeScript configuration file used in production PR Close #41512 09 April 2021, 14:46:53 UTC
e34299a fix(router): handle new navigations from a NavigationEnd event (#41262) (#41511) This commit removes the line to set `currentNavigation` to `null` in the navigation transitions subscription of the router. This logic is already handled in the `finalize` stage of the transition pipe and has been found to cause issues if a new navigation is triggered from a subscription to the `NavigationEnd` event. fixes #37460 PR Close #41262 PR Close #41511 08 April 2021, 23:52:04 UTC
74d1769 fix(dev-infra): use base ref name rather than sha for the githubTargetBranch (#41523) After updating to use the v4 graphql api in the merge tooling, the githubTargetBranch was set to be the sha of the latest commit rather than the branch name of the target branch. This caused our tooling to mismatch which branches were actually being targeted with the effect that if a PR targeted only the patch branch (i.e. labeled `target: patch` and targeting `11.2.x` in github)it would still expect to merge into both `11.2.x` and `master`. This is now corrected to once again use the branch name, restoring to the previous functionality. PR Close #41523 08 April 2021, 22:18:03 UTC
646f4a1 fix(router): Remove information about attached component when deactivating route (#41381) When we deactivate a child route, we deactivate its outlet as well as its children. We also need to clear the stored information about the route and the associated component. If we do not, the context will keep these references and can result in reactivating an outlet that was deactivated by the previous navigation. Fixes #41379 PR Close #41381 07 April 2021, 20:55:33 UTC
f72e218 docs: fix typo in migration guide (#41447) Also reformat the table to look nice :-) PR Close #41447 07 April 2021, 20:51:09 UTC
8b11bb4 build(docs-infra): store search dictionary as a string (#41447) Previously, the search index info file contained an array of strings that is the dictionary of terms in the corpus. Storing this as a space separated string reduces the size of the file. PR Close #41447 07 April 2021, 20:51:09 UTC
9d52386 build(docs-infra): tidy up the generateKeywords processor (#41447) The recent PR #41368 contained some changes that could be improved. PR Close #41447 07 April 2021, 20:51:09 UTC
41636e6 build: rely on engines to prevent using npm for dependency install (#41477) Rather than relying on a preinstall script, set `engine-strict` to `true` in a project `.npmrc` file, relying on the `engines` having `npm` set to note that yarn should be used instead. --- Output from `npm install` changes from: ``` $ npm install > angular-srcs@12.0.0-next.7 preinstall /usr/local/account/js/angular > node tools/yarn/check-yarn.js /usr/local/account/js/angular/tools/yarn/check-yarn.js:12 throw new Error( ^ Error: Please use Yarn instead of NPM to install dependencies. See: https://yarnpkg.com/lang/en/docs/install/ at Object.<anonymous> (/usr/local/account/js/angular/tools/yarn/check-yarn.js:12:9) at Module._compile (internal/modules/cjs/loader.js:778:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10) at Module.load (internal/modules/cjs/loader.js:653:32) at tryModuleLoad (internal/modules/cjs/loader.js:593:12) at Function.Module._load (internal/modules/cjs/loader.js:585:3) at Function.Module.runMain (internal/modules/cjs/loader.js:831:12) at startup (internal/bootstrap/node.js:283:19) at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3) npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! angular-srcs@12.0.0-next.7 preinstall: `node tools/yarn/check-yarn.js` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the angular-srcs@12.0.0-next.7 preinstall script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in: npm ERR! /usr/local/account/.npm/_logs/2021-04-06T22_54_02_292Z-debug.log ``` to ``` $ npm install npm ERR! code ENOTSUP npm ERR! notsup Unsupported engine for angular-srcs@12.0.0-next.7: wanted: {"node":">=10.19.0 <13.0.0","yarn":">=1.22.4 <2","npm":"Plesae use yarn instead of NPM to install dependencies"} (current: {"node":"10.20.1","npm":"6.14.4"}) npm ERR! notsup Not compatible with your version of node/npm: angular-srcs@12.0.0-next.7 npm ERR! notsup Not compatible with your version of node/npm: angular-srcs@12.0.0-next.7 npm ERR! notsup Required: {"node":">=10.19.0 <13.0.0","yarn":">=1.22.4 <2","npm":"Plesae use yarn instead of NPM to install dependencies"} npm ERR! notsup Actual: {"npm":"6.14.4","node":"10.20.1"} npm ERR! A complete log of this run can be found in: npm ERR! /usr/local/account/.npm/_logs/2021-04-06T22_53_23_912Z-debug.log ``` PR Close #41477 07 April 2021, 19:05:02 UTC
b012040 refactor(core): remove deprecated rxjs signature usage in event emitter and make more minifier-friendly (#41450) * We had a usage of `Observable.subscribe` that uses the deprecated signature with 3 arguments. These changes switch to the non-deprecated version that passes in an `Observer`. * Avoids always creating a `complete` callback since it isn't required. * We were repeating all of the internal callbacks twice: once for sync and once for async. These changes move them out into variables so that they're more minifier-friendly. The savings aren't huge (~100 bytes minified), but it doesn't add any maintenance effort on our end so I decided to add it. PR Close #41450 07 April 2021, 18:53:09 UTC
775993b build: add `dev-infra` and `docs-infra` as targetLabelExemptScopes (#41459) Add these scopes to allow for use of features and breaking changes for the scopes regardless of target labels. PR Close #41459 07 April 2021, 18:52:37 UTC
2b999e8 feat(dev-infra): add support for `targetLabelExemptScopes` for merging (#41459) Add a property, `targetLabelExemptScopes`, to the merge configuration allowing certain scopes to be exempted from requirements for features and breaking changes only included in PRs targetting certain labels. PR Close #41459 07 April 2021, 18:52:37 UTC
7683263 feat(dev-infra): prevent merges for PRs with invalid breaking changes or commit types (#41459) Check commits in pull requests to ensure the pr can be merged into the target branch. Confirms that prs targeting minor do not contain breaking changes, and prs targeting patch or lts do not contain breaking changes or `feat` commits. PR Close #41459 07 April 2021, 18:52:37 UTC
ef13bbf refactor(dev-infra): use graphql to query PRs in merge tooling (#41459) Migrate to use graqhql to query for PR information during the validation and preperation portions of the pr merge tooling. PR Close #41459 07 April 2021, 18:52:36 UTC
ee65ffe docs: add Zack DeRose to GDE resources (#41464) PR Close #41464 07 April 2021, 18:52:00 UTC
46f1cf2 docs: use the right tag in the HeroesComponent's template snippet (#41473) Based on the tutorial content of the Hero Editor, the tag to be used in HeroesComponent's template snippet should be h2 and not h3. PR Close #41473 07 April 2021, 18:51:38 UTC
bafec59 release: cut the v11.2.9 release (#41492) 07 April 2021, 18:27:06 UTC
9408af6 docs: fix link URL in NG0100 error page (#41484) Fixes #41474 PR Close #41484 07 April 2021, 17:36:50 UTC
07131fa fix(compiler-cli): Allow analysis to continue with invalid style url (#41403) (#41489) Currently, we throw a FatalDiagnosticError when we fail to load a resource (`templateUrl` or `styleUrl`) at various stages in the compiler. This prevents analysis of the component from completing. This will result in in users not being able to get any information in the component template when there is a missing `styleUrl`, for example. This commit simply tracks the diagnostic, marks the component as poisoned, and continues merrily along. Environments configured to use poisoned data (like the language service) will then be able to use other information from the analysis. Fixes https://github.com/angular/vscode-ng-language-service/issues/1241 PR Close #41403 PR Close #41489 07 April 2021, 17:35:32 UTC
f8986e1 fix(dev-infra): make scopes for `test` and `refactor` commit types optional (#41486) As the `test` and `refactor` commit types are not used in release notes and there are solid use cases for having multiple scopes/scopeless uses of these types, they are made to be optional instead of required on commits. PR Close #41486 07 April 2021, 16:40:31 UTC
8d005e5 fix(bazel): add missing dependency on `tslib` (#41480) `@angular/bazel` depends on `tslib` https://unpkg.com/browse/@angular/bazel@11.2.8/src/api-extractor/index.js#L20 Related failure https://github.com/angular/universal/pull/2040 PR Close #41480 07 April 2021, 16:39:49 UTC
e0165fd fix(compiler-cli): fix extending angularCompilerOptions from non relative extension less TypeScript configuration files (#41349) support non rooted file of node package and relative path without json extension close #41343 PR Close #41349 07 April 2021, 16:37:45 UTC
110a20e release: bump angular-in-web-memory-api package to 0.12.0 (#41487) PR Close #41487 07 April 2021, 16:35:17 UTC
3f12a0d build: update package.json engines range for nodes in preparation for upgrade (#41472) In preparation for upgrading to `node@14`, and dropping `node@10`, updating the engines for local `package.json`s. PR Close #41472 06 April 2021, 19:46:32 UTC
4c2fdd3 ci: add cache for windows run (#41467) Add CircleCI cache for windows runs PR Close #41467 06 April 2021, 19:44:48 UTC
5aeb1c4 ci: don't save node_modules directory (#41467) Storing node_modules directory in cache causes a number of issues, such as increase in the laid out node_modules tree and also in some cases break module resolution. This is because modules are not hoisted correctly when running `yarn install`. Example of related failures https://app.circleci.com/pipelines/github/angular/angular/30441/workflows/c1a16135-f5c9-478d-a298-d720c6657d52/jobs/952138 A better cache strategy would be to save yarn cache, more information can be found in https://circleci.com/docs/2.0/caching/#yarn-node. PR Close #41467 06 April 2021, 19:44:48 UTC
bc74735 build: correctly publish `angular-in-memory-web-api` as CI build artifact (#41429) (#41471) Previously, the `angular-in-memory-web-api` package was built in `dist/packages-dist/misc/angular-in-memory-web-api/`. This was different from other Angular packages, which were placed directly in `dist/packages-dist/`. This caused the `create-package-archives.sh` script to create an invalid `misc.tgz` archive (i.e. treating the `misc/` subdirectory as a package). See, for example, the artifacts [here][1]. This commit changes the build scripts to have the `angular-in-memory-web-api` package built in `dist/angular-in-memory-web-api-dist/`, similar to how the `zone.js` package is handled. It also updates the CircleCI config to correctly publish the `angular-in-memory-web-api` package to CI build artifacts. [1]: https://circleci.com/gh/angular/angular/951491 PR Close #41429 PR Close #41471 06 April 2021, 18:32:46 UTC
e48d6cd build: build `angular-in-memory-web-api` when building packages with Ivy (#41429) (#41471) This commit updates the `build-ivy-npm-packages.js` script to also build the `angular-in-memory-web-api` package. This could be used if someone wanted to test the Ivy packages in docs examples or an integration test. PR Close #41429 PR Close #41471 06 April 2021, 18:32:46 UTC
478336a build: make the build scripts for the various packages consistent (#41429) (#41471) This commit makes the build scripts for the various packages (framework, `@angular/dev-infra-private`, `angular-in-memory-web-api`, `zone.js`) consistent. This makes it easier to maintain them (e.g. make similar changes across all build scripts). PR Close #41429 PR Close #41471 06 April 2021, 18:32:46 UTC
a9065a7 build(docs-infra): enable linting for `ng-packages-installer` scripts (#41429) (#41471) This commit enables linting for the scripts in `aio/tools/ng-packages-installer/`. It also makes the necessary changes to the files to make linting pass. PR Close #41429 PR Close #41471 06 April 2021, 18:32:46 UTC
55da31d build(docs-infra): update `eslint` and `eslint-plugin-jasmine` to latest versions (#41429) (#41471) This commit updates the `eslint` and `eslint-plugin-jasmine` packages to latest versions to take advantage of latest fixes and improvements. PR Close #41429 PR Close #41471 06 April 2021, 18:32:46 UTC
63ec461 build(docs-infra): support building the local `angular-in-memory-web-api` package in `NgPackagesInstaller` (#41313) (#41471) In some cases, we want to test the AIO app or docs examples against the locally built `angular-in-memory-web-api` for example to ensure that the changes in a commit do not introduce a breaking changes. PR Close #41313 PR Close #41471 06 April 2021, 18:32:46 UTC
0eecbed docs(router): make getCurrentNavigation() jsdoc more explicit (#41417) Add additional clarification to the documentation for `getCurrentNavigation`. PR Close #41417 06 April 2021, 17:05:18 UTC
9d6163e feat(dev-infra): update commit-message functions to properly type commits from git log (#41458) For commits from git log entries additional fields are available such as the reference hash and author name, update the utility functions in commit-message to include the parsed fields. Additionally define, per commit message type, whether to include the commit in a release notes entry. PR Close #41458 06 April 2021, 17:04:54 UTC
2d19423 feat(dev-infra): add utility method to GitClient to get latest SemVer tag (#41455) Create a utility method for the latest git tag, sorted by committerdate, which matches SemVer, representing the latest version released on the branch. PR Close #41455 06 April 2021, 17:04:31 UTC
e6da38a feat(bazel): allow setting `compilationMode` in `ng_module` rule (#41418) Adds a new attribute to the `ng_module` rule that allows users to set the Angular compiler `compilationMode` flag. An alternative would have been to just enable the option in the user-specified tsconfig. Though that is more inconvenient if a Bazel workspace wants to change the compilation mode conditionally at anaylsis phase through build settings. Related to: https://github.com/angular/components/pull/22351t PR Close #41418 06 April 2021, 17:03:14 UTC
aa36121 build: install husky in `prepare` script instead of `postinstall` (#41405) With typicode/husky#890, the recommended way to install husky is in the `prepare` script instead of the `postinstall`. This commit moves the husky installation to the `prepare` script to align with the new recommendation. PR Close #41405 06 April 2021, 17:02:52 UTC
f39ae4b build: update to husky@6 (#41405) Upgrade husky from 5.0.1 to 6.0.0 PR Close #41405 06 April 2021, 17:02:51 UTC
6eb3dc7 build: update the recommended `Dockerfile` for VSCode remote development (#41396) This commit updates the recommended `Dockerfile` for VSCode remote development to take into account recent changes in our dev workflow (updated Node.js version, vendored yarn, modified CircleCI config). It also adds a note in the CircleCI config to keep the recommended `Dockerfile` up-to-date with the Node.js version used on CI. PR Close #41396 05 April 2021, 19:41:35 UTC
754247f feat(dev-infra): prevent `git push` from being called in dryRun mode (#41387) Update GitClient to prevent the `push` command from being run in dryMode. PR Close #41387 05 April 2021, 15:57:14 UTC
16ebd6b feat(dev-infra): create dry-run environment variable flag utils (#41387) Create utility functions for adding a dry-run flag and checking the environment for a dry run mode. PR Close #41387 05 April 2021, 15:57:14 UTC
2ff13d2 fix(docs-infra): avoid auto-linking generic word `state` (#41438) Since `state` is a generic word, this commit adds it to the list of ignored words for auto-linking to avoid incorrectly auto-linking to the [state()][1] animation helper. For example, see `/ngsw/state` in the [ServiceWorker in production][2] guide. [1]: https://v10.angular.io/api/animations/state [2]: https://v10.angular.io/guide/service-worker-devops#locating-and-analyzing-debugging-information PR Close #41438 05 April 2021, 15:56:44 UTC
04406fa test(core): fix `Function#name` shim used in IE11 (#41439) Since IE11 does not support `Function#name`, we use a shim in tests that parses the stringified function to extract the name. Previously, that shim would cache the computed name on the function to speed up future invocations. However, this resulted in incorrect values for functions that "extended" other functions (such as the code generated by TypeScript when downleveling ES2015 classes that extended other classes). To avoid issues such as #41416 (see also [internal discussion][1]), this commit removes the caching of names. This is not expected to noticeably affect performance, since (a) it is only used in tests, (b) it is only used on browsers that do not natively support `Function#name` (i.e. IE11) and (c) accessing function names is rare and inexpensive compared to other operations that happen during testing. [1]: https://angular-team.slack.com/archives/CB4UC1932/p1617285258058000 PR Close #41439 05 April 2021, 15:56:17 UTC
103f05a docs: fix grammar mistake in `glossary.md` ("can exported" --> "can be exported") (#41440) PR Close #41440 05 April 2021, 15:17:26 UTC
7b0a800 perf(language-service): add perf tracing to LanguageService (#41401) Adds perf tracing for the public methods in LanguageService. If the log level is verbose or higher, trace performance results to the tsServer logger. This logger is implemented on the extension side in angular/vscode-ng-language-service. PR Close #41401 02 April 2021, 19:06:30 UTC
94af9d9 perf(core): add private hooks around user code executed by the runtime (#41421) Introduces an **internal**, **experimental** `profiler` function, which the runtime invokes around user code, including before and after: - Running the template function of a component - Executing a lifecycle hook - Evaluating an output handler The `profiler` function invokes a callback set with the global `ng.ɵsetProfiler`. This API is **private** and **experimental** and could be removed or changed at any time. This implementation is cheap and available in production. It's cheap because the `profiler` function is simple, which allows the JiT compiler to inline it in the callsites. It also doesn't add up much to the production bundle. To listen for profiler events: ```ts ng.ɵsetProfiler((event, ...args) => { // monitor user code execution }); ``` PR Close #41421 02 April 2021, 19:05:10 UTC
d4f739f docs: Including Visual Studio (#41414) Uploading how to use the Angular Language Service in Visual Studio PR Close #41414 02 April 2021, 17:53:37 UTC
dc8a081 fix(dev-infra): require npm login for all publishes via wombat proxy (#41422) Due to an issue with wombat proxy returning the login state of the generated tokens, we will need to require a login for all `ng-dev release publish` runs to ensure npm login has occured. PR Close #41422 02 April 2021, 17:30:18 UTC
f066a2f build: Bump minimum required node version to 10.19.0 (#41390) Critical security vulnerability fixed in node v 10.19.0 Other performance and security updates since node 10.9.0 PR Close #41390 02 April 2021, 17:29:24 UTC
154129b release: cut the v11.2.8 release (#41419) PR Close #41419 01 April 2021, 21:46:31 UTC
4bac297 build: update yargs dependency to 16.2.0. (#41392) This avoids a vulnerability in the transitive y18n dependency. Fixes #41215 PR Close #41392 01 April 2021, 20:41:26 UTC
bef92f9 docs(forms): fix the short description for `DefaultValueAccessor` (#41409) The position of the `{@searchKeywords}` inline tag was causing the short-description to be empty. PR Close #41409 01 April 2021, 19:07:04 UTC
e717915 ci: add Zach Arend to pullapprove (#41386) add Zach Arend to .pullapprove.yml PR Close #41386 01 April 2021, 19:06:18 UTC
d48b00d refactor(docs-infra): include more info in search index data (#41368) The AIO search index is built in a WebWorker on the browser from a set of page information that is downloaded as a JSON file (`search-data.json`). We want to keep this file as small as possible while providing enough data to generate a useful index to query against. Previously, we only included one copy of each (non-ignored) term from each doc but this prevents more subtle ranking of query results, since the number of occurences of a term in a doc is lost. This commit changes the generated file in the following ways: - All non-ignored terms are now included in the order in which they appear in the doc. - The terms are indexed into a dictonary to avoid the text of the term being repeated in every doc that contains the term. - Each term is pre-"stemmed" using the same Porter Stemming algorith that the Lunr search engine uses. The web-worker has been updated to decode the new format of the file. Now that all terms are included, it may enable some level of phrase based matching in the future. The size of the generated file is considerably larger than previously, but on production HTTP servers the data is sent compressed, which reduces the size dramatically. PR Close #41368 01 April 2021, 19:02:38 UTC
ad706c8 feat(docs-infra): improve search query processing (#41368) This commit tries to improve the search results by processing the query and attempting progressively less restrictive searches until a non-zero set of pages is matched. The new procesing includes: * stripping off quote marks, which were causing searches to fail * first attempting to match pages where ALL the query terms exist * second attempting to match pages where ANY of the query terms exist * third attempting to match pages where the title contains partial word matches The first query attempt approximates, quite well, the idea of searching for multi-word phrases. This is given the technical nature of the terms and the fairly small size of the corpus. PR Close #41368 01 April 2021, 19:02:37 UTC
c58f46b docs: fix misspelled word in VSCode Remote Development guide (#41376) There is a plural word after indefinite article in readme file. PR Close #41376 01 April 2021, 19:02:02 UTC
f238966 fix(dev-infra): Correctly place comments in dockerfile (#41374) The doc in https://docs.docker.com/engine/reference/builder/#format says that "Docker treats lines that begin with # as a comment, unless the line is a valid parser directive. A # marker anywhere else in a line is treated as an argument." Fixes #41361 PR Close #41374 01 April 2021, 18:55:54 UTC
dfad901 fix(docs-infra): increase the max width of the `file-not-found` page (#41275) Previously, the max width of the `file-not-found` page was limited to 50rem (800px by default). This allowed little space for showing potentially helpful search results, which are shown in columns). This commit increases the max width of the `file-not-found` page to 84rem (1344px by default) to allow search results to be visible without requiring scrolling. This will not negatively affect UX, because the page uses a multi-column layout and therefore there will rarely be long lines of text to scan. PR Close #41275 01 April 2021, 18:36:45 UTC
fdfcd4a fix(docs-infra): correctly show search results on narrow screens (#41275) Previously, some part of the search results would be hidden and inaccessible on narrow screens. This was caused by an issue with the flexbox layout. See [here][1] for more info on the issue and the available solutions. NOTE: This issue affected both the search results shown when using the search box (on the top right of the page) as well as the search results shown in the `file-not-found` page. This commit changes how the layout of search results is achieved to ensure they are always accessible via scrolling on all screen sizes (while keeping the same layout on larger screens). Before: ![search results at 768px before][2] After: ![search results at 768px after][3] [1]: https://stackoverflow.com/questions/33454533/cant-scroll-to-top-of-flex-item-that-is-overflowing-container#33455342 [2]: https://user-images.githubusercontent.com/8604205/111772790-efe2ac00-88b5-11eb-925d-a80faeaa5369.png [3]: https://user-images.githubusercontent.com/8604205/111772810-f5d88d00-88b5-11eb-8b2a-60bdc3736ea3.png PR Close #41275 01 April 2021, 18:36:45 UTC
4b17213 ci: update commit-message verification range parameters (#41341) Update parameters used for commit message checks in pull requests. PR Close #41341 01 April 2021, 18:30:28 UTC
055b408 refactor(dev-infra): set up new method for checking range of commits (#41341) Check a range of commits by retrieving the log files to be parsed with the expected format for the parser. This change is in part of a larger set of changes making the process for obtaining and parsing commits for release note creation and message validation consistent. This consistency will make it easier to debug as well as ease the design of tooling which is built on top of these processes. PR Close #41341 01 April 2021, 18:30:28 UTC
1125204 docs: fix `.docs-card` tooltip and footer text in `docs` guide (#41250) This commit updates the tooltip and footer description of the "What is Angular" card in the `docs` guide to better match the card's content. (It seems that the old content was copied/pasted from a different card.) It also updates the tooltip of the "Hello World" card to better describe the card's purpose. PR Close #41250 01 April 2021, 18:20:00 UTC
ed2a2ba docs: correctly style alert in `updating-content-github-ui` guide (#41250) This commit replaces the unknown `is-warning` CSS class from an alert in the `updating-content-github-ui` guide with the `is-important` CSS class (that causes the alert to be given an orange-ish background). PR Close #41250 01 April 2021, 18:19:59 UTC
6749ad6 refactor(docs-infra): consistently format `docs-card` elements in the guides (#41250) This commit formats the `docs-card` elements used in `contributors-guide-overview` and `docs` guides to have consistent indentation and line-wrapping. PR Close #41250 01 April 2021, 18:19:59 UTC
e97a845 docs: several minor fixes/improvements to docs contributing guides (#41250) This commit includes several minor fixes and improvements to the `updating-content-github-ui` and `updating-search-keywords` guides. PR Close #41250 01 April 2021, 18:19:59 UTC
eb36480 docs: use dedicated anchors for links to `CONTRIBUTING.md` (#41250) Previously, some links to specific sections of `CONTRIBUTING.md` were using hashes automatically generated by GitHub based on the section headings. This resulted in less readable hashes which were directly tied to the heading text and thus less robust (i.e. more likely to break if the heading was re-worded in the future). This commit switches such links to use the dedicated anchors, which are more succinct/readable and more stable. PR Close #41250 01 April 2021, 18:19:59 UTC
5500f9c docs: fix URLs in `reviewing-content` and `updating-search-keywords` guides (#41250) This commit fixes some incorrect URLs in `reviewing-content` and `updating-search-keywords` guides. PR Close #41250 01 April 2021, 18:19:59 UTC
51288e4 fix(docs-infra): add `updating-content-github-ui` guide to the sidenav (#41250) It seems that the `updating-content-github-ui` guide was accidentally omitted from the sidenav in #41061. This commit adds the guide to the sidenav. PR Close #41250 01 April 2021, 18:19:59 UTC
15b9456 ci: remove redundant entries from `.pullapprove.yml` (#41250) This commit removes some entries from `.pullapprove.yml` that do not correspond to existing files on disk. PR Close #41250 01 April 2021, 18:19:58 UTC
723bfc7 Revert "feat(bazel): allow setting `compilationMode` in `ng_module` rule (#41366)" This reverts commit 9d17a41b33b086d63daa8904c9dea71e6b0e868d. This commit breaks the 11.2.x build. There is limited value in having it on 11.2.x in the first place, so reverting it is the right fix. 31 March 2021, 16:33:01 UTC
e524012 ci: remove *.bazel from dev-infra ownership (#41382) Historically all .bazel files were owned by dev-infra to assist in ensuring that consistency was maintained in how rules were being used. As this now has reached a point of maturity in the repository where the check is mostly a rubber stamping, this requirement can be removed. Notably this is different than the requirement of dev-infra approval for .bzl files as these contain the implementation of macros rather than just the usage. PR Close #41382 30 March 2021, 23:59:01 UTC
f9da272 fix(compiler): handle case-sensitive CSS custom properties (#41380) Currently we normalize all CSS property names in the `StylingBuilder` which breaks custom properties, because they're case-sensitive. These changes add a check so that custom properties aren't normalized. Fixes #41364. PR Close #41380 30 March 2021, 23:57:45 UTC
9d17a41 feat(bazel): allow setting `compilationMode` in `ng_module` rule (#41366) Adds a new attribute to the `ng_module` rule that allows users to set the Angular compiler `compilationMode` flag. An alternative would have been to just enable the option in the user-specified tsconfig. Though that is more inconvenient if a Bazel workspace wants to change the compilation mode conditionally at anaylsis phase through build settings. Related to: https://github.com/angular/components/pull/22351t PR Close #41366 30 March 2021, 23:55:38 UTC
06e5132 ci: re-activate "devversion" in pullapprove after OOO (#41352) After being OOO for a while, I have been denoted as OOO in the pullapprove configuration (by commenting out the username in the reviewer lists). See 3ba97ab3917b682b6d08b9e71599051e77e2d3ac. This re-activates `devversion` in the pullapprove configuration. PR Close #41352 30 March 2021, 23:54:49 UTC
back to top