* Runs the Lint job on CircleCI within a new workflow.
* Adds comment for structuring the Circle config file (the file will
become even larger in the future)
* build: build cdk with angular from source
* Continues the long-term Bazel goal by fixing the CDK bazel build
targets. Also builds the CDK targets with Angular from source.
Follow up's will try to make serving, and testing possible.
* Build package on CI
* No longer compile with AOT compiler that generates factory files that cannot be packaged into "ng_package"
* Since the NodeJS rules execute built code in a sandbox, we need to enable source map support. This is recommended by the `Bazel NodeJS` rules.
* Also introduces support for repository-wide defaults. This will be helpful when fully switching to Bazel.
* Updates the Bazel TypeScript rules.
* Fixes a test case which doesn't match the name of the upgrade data it runs with (`css-names` --> `css-selectors`)
* Removes Bazel version check (the NodeJS rules automatically check the Bazel version based on the version of the NodeJS rules)
With TypeScript 3.1, several native DOM types have been updated. Notably, `document.documentElement` and `document.activeElement` are now nullable. APIs relating to `matchMedia` were also updated.
We can't bump to Angular 7 RC because it requires TypeScript 3.1, and
devkit/schematics hasn't published a version w/ TypeScript 3.1 yet.
Since it's a full dependency there (and not a peer dependency), the
version mismatch breaks our schematics.
For going to Angular 7 beta.7, we need to now explicitly unset some of
the `angularCompilerOptions` in the `tsconfig-test` because they're now
inherited.
For going to devkit/schematics v6 beta 4, we need to update some imports
around the `WorkspaceProject` class. There seem to now be two
incompatible versions of this class in the devkit, so we'll need to sort
that out soon.
* Introduces support for `ng add @angular/cdk`. Note that this currently just sets up the `package.json` but is necessary because otherwise the CLI will complain about the `ng-add` schematic not being available.
* Upgrades Bazel workspace rules in favor of removing Bazel manual-copying workarounds for the schematics. This also allows us to switch over to fine-grained dependencies in a follow-up (making it consistent with angular/angular).
* Use fine grained dependencies in schematics bazel rules
* Updates the Bazel Angular version that will be replaced within the `npm_package` rule to the required Angular version that has been changed with #12089.
* Removes an unused NPM script
* Adds a small check to the Bazel workspace status script that ensures that both Angular versions are in sync.
* The `ComponentWalker` is a major part of the update schematics and we should verify that external resource files are resolved properly. All test-cases currently just use inline stylesheets or templates.
* Removes the `color` helper function.
* Removes the superfluous utility function for retrieving a `StringLiteral`'s text content.
* Due to a devkit issue, we temporarily had to remove the schematic aliases in order to be able to run the tests. Since this issue has been fixed a long time ago, we can re-add the aliases.
* Also adds more aliases to other schematics for consistency.
* Locks the devkit and schematics version because there is an ongoing type definition bug within the devkit (https://unpkg.com/@angular-devkit/core@0.7.5/src/virtual-fs/host/test.d.ts).
* Reworks the breaking change tslint rule to remove the logic that checks that there are no expired breaking changes.
* Adds a new script that can be used to get an overview of the pending and expired breaking changes.
Follow-up commit for 4879dc4720.
---
Disables concatenation of multiple leading comments for a TypeScript node. Since all shipped source files have a license banner at top, the license banner comment would be incorrectly considered as "comment" for the first TypeScript node of a given file. Since there are various files in the Material project where the first node of a source file is exported and should only use the first leading comment, we need to disable comment concatenation.
See for example: https://github.com/angular/material2/blob/master/src/cdk/coercion/boolean-property.ts
As of TypeScript 2.9, tsc will inline imports for inferred types with
the `import("...")` syntax. However, this inlining happens *after*
`paths` are resolved. This means that in places where we import from
`@angular/material/core` in source end up having relative paths (e.g.
`../core/common-behaviors/index`) in the generated d.ts files. These
relative import paths become incorrect when moved into our package
structure, breaking downstream apps.
* Switches back from `dart-sass` to `node-sass` due to a pretty huge slow-down we noticed (can be revisited)
* No longer copies all SCSS files to the temporary `package` output just in favor of the demo-app (slows down unnecessarily). This now allows us to live-reload theme changes within a second.
* No longer rebuilds all package SCSS files twice for the ES5 output (rel: https://github.com/angular/material2/pull/7403)
* Switches to dart-sass in order to be consistent with the Bazel output. That way we can identify potential issues with the SASS output (e.g. demo-app) before we at some point make the full-switch.
* Also speeds-up the project installs because libsass bindings are no longer needed (trade-off with compilation time though; but pretty minimal due to our amount of Sass files)
* build(schematics): test schematics properly
* Previously, the spec files that have been pushed to the repository, didn't run at all, or were outdated. This PR updates the tests and also enables most of them (as much as possible).
* Sets up the Bazel test rules (with a few needed workarounds) in order to test the schematics
* Removed devkit utils that can be used from `@schematics/angular` which is **always present** (we can assume that)
* Moved data `.json` files into TypeScript files (in order to workaround a bazel typescript issue; and to allow separation for v6 and v7 data at some point)
* Updates and fixes schematics to properly work within the latest Angular CLI version
* Address feedback
* Remove unnecessary diff
* No longer just runs the tests against the first browser of a test platform (travis, saucelabs, browserstack)
* Stability is more valuable than speed (runs sequentially on CI now)
* Update Saucelabs Connect
* Remove unused spec reporter
* Update from Edge 14 to Edge 17
* Fix pixel deviations in Edge 17