angular-cn/tools
Paul Gschwendtner 04642e7985 feat(dev-infra): add lint rule to enforce no-implicit-override abstract members (#42512)
TypeScript introduced a new flag called `noImplicitOverride` as part
of TypeScript v4.3. This flag introduces a new keyword called `override`
that can be applied to members which override declarations from a base
class. This helps with code health as TS will report an error if e.g.
the base class changes the method name but the override would still
have the old method name. Similarly, if the base class removes the method
completely, TS would complain that the memeber with `override` no longer
overrides any method.

A similar concept applies to abstract methods, with the exception that
TypeScript's builtin `noImplicitOverride` option does not flag members
which are implemented as part of an abstract class. We want to enforce
this as a best-practice in the repository as adding `override` to such
implemented members will cause TS to complain if an abstract member is
removed, but still implemented by derived classes.

More details: https://github.com/microsoft/TypeScript/issues/44457.

PR Close #42512
2021-07-12 13:11:16 -07:00
..
build build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
circular_dependency_test build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
contributing-stats build: update typed-graphqlify to version 3.1.1 (#41738) 2021-04-21 17:30:28 -07:00
gulp-tasks Revert "build: convert CLDR locale extraction from Gulp to Bazel tool (#42230)" (#42583) 2021-06-16 09:49:37 -07:00
npm build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
npm_integration_test build: update to latest version of `rules_nodejs` v3.3.0 (#41599) 2021-04-13 17:37:28 -07:00
rxjs build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
saucelabs build: update to latest version of `rules_nodejs` v3.3.0 (#41599) 2021-04-13 17:37:28 -07:00
size-tracking build: update `chalk` to version 4.0.1 (#41738) 2021-04-21 17:30:28 -07:00
source-map-test build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
symbol-extractor build: update to latest version of `rules_nodejs` v3.3.0 (#41599) 2021-04-13 17:37:28 -07:00
testing refactor(core): remove unused fakeAsyncFallback and asyncFallback (#37879) 2020-11-20 08:34:59 -08:00
ts-api-guardian build: update to rules_nodejs v4.0.0-beta.0 (#42760) 2021-07-09 14:50:15 -07:00
tslint feat(dev-infra): add lint rule to enforce no-implicit-override abstract members (#42512) 2021-07-12 13:11:16 -07:00
BUILD.bazel build: upgrade angular build, integration/bazel and @angular/bazel package to rule_nodejs 2.2.0 (#39182) 2020-10-08 11:54:59 -07:00
defaults.bzl build: no longer ship ecmascript module files within NPM packages (#42809) 2021-07-12 09:42:01 -07:00
inline-package-json-deps.js build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
jasmine-seed-generator.js build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
jsconfig.json chore(vscode): add jsconfig.json and remove .settings dir 2015-10-29 13:53:21 +00:00
ng_benchmark.bzl refactor(dev-infra): ng_rollup_bundle rule should leverage `@bazel/rollup` (#37623) 2020-06-22 10:55:28 -07:00
postinstall-patches.js build: update tools directory for latest changes in rules_nodejs (#40710) 2021-02-09 10:48:43 -08:00
tsconfig-test.json build(bazel): use fine-grained npm deps (#26111) (#26488) 2018-10-19 20:59:29 -07:00
tsconfig.json build: ts-api-guardian tsconfig warning with bazel (#27583) 2018-12-13 11:01:48 -08:00
types.d.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
utils.bzl build: create macro for transpiling javascript file to es5 (#36802) 2020-05-04 12:43:50 -07:00
utils.inc feat(bundle): add script to push bundles to code.angularjs.org 2015-04-14 14:50:53 -07:00