Since we copy the schematics after the version placeholders have been inlined, the version range that uses the NG version placeholder is not replaced properly.
This is not problematic because by default we determine the NG version based on the installed `@angular/core` version.
```
addPackageToPackageJson(host, '@angular/animations',
ngCoreVersionTag || requiredAngularVersionRange);
```
* build: test material with bazel
* Supports testing `src/lib` with Bazel.
* Add prebuilt theme to all Material tests
* Always include prebuilt theme. Rebase changes for paginator spec
* Updates to the latest `dgeni-packages` version that includes: https://github.com/angular/dgeni-packages/commit/5d90fd9f31541f380a62a52fd31493b232b9585c. This allows us to remove a workaround.
* Removes the closure testing stuff that hasn't been used for months. In case we want to reintroduce testing w/ Google Closure, we should consider using Bazel or something (AFAIK there are Bazel rules for closure)
* 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"
Fixes errors being thrown by the decorator validation rule when run in an IDE. The errors can happen, because the rule is run for each key stroke and the user might not be done typing out the definition yet. The two cases where it was throwing were when a decorator is added without being called (e.g. `@Component class Something`) and when defining a new property that doesn't have an initializer yet (e.g. `@Component({selector})`).
* 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.
* By default TypeScript truncates the types when calling `typeToString`. Since we don't want to truncate the types automatically, we need to work around: https://github.com/angular/dgeni-packages/issues/276 until there is a possibility to change this using the `tsHost`.
* Currently if a type alias is marked as `@deprecated`, we don't add an indication as for the constants. Now a similar indication will be added if a type alias is deprecated.
* Similarly to the constants and `angular.io`, we will display the actual type of the `type-alias` in a better-looking & more clear way.
* Also fixes that the constant code "overview" does not include the trailing semicolon (Angular.io also adds a trailing semicolon)
* Currently constants which are exported, will not show up in the docs. This introduces support for displaying `constants` in the docs.
* Also creates a Nunjucks plugin that supports highlighting specific code snippets. This is helpful when rendering a type in the docs (similar to angular/aio)
* Marks most animation constants as `@docs-private` because those shouldn't be relevant to users.
* Since the `webdriver-manager` always tries to query the versions of all Selenium drivers, we currently run into rate limit failures that cause the E2E tests to not run properly.
Currently if the TS compilation (either through `ngc` or `tsc`) fails, the gulp tasks won't report the error properly because the `reject()` call of the Promise does not have any error message. This causes compilation failures to be ignored. See: #13310
* Since people often click on the ripple container of the example, we need to disable the user selection because otherwise the text will be accidentally selected.
* Disables the `no-prefixes` rule for example style files. The examples are not auto-prefixed and we don't want to show the `/** stylelint-disable` comments in the examples.
Currently, if someone runs `gulp stylelint` and has the dashboard node modules installed, stylelint will lint the `tools/dashboard/node_modules/`. This causes stylelint to report thousands of failures due to some minified CSS files in the `node_modules/`.
Since most of the SCSS files inside of `core/theming` are not suffixed with `-theme.scss`, the livereload will rebuild the Material bundles, but not the theme SCSS files. This causes undesired slow-down and a non-working livereload.
* Moves the utility functions which will be needed for building CDK schematics to the CDK (`cdk/schematics`).
* Updates package tools to properly build schematics for CDK and Material (shared logic for building schematics; Material schematics depend on CDK schematics)
* Update to `ng-add`: The Angular CLI only installs `@angular/material` if someone runs `ng add @angular/material`. But since we need access to the utility functions from the CDK, we need to install the dependencies first, and then setup the project.
* 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.
* Removes a workaround that allowed the secondary component of the form-field-custom-control to use the primary asset files (`form-field-custom-control-example.(html|css` are reserved for the primary example component). This workaround caused the example to not render properly inside of StackBlitz.
* Fixes that the build-example-module task does not properly detect stylesheet additional files.
* Depends on https://github.com/angular/material.angular.io/pull/516Fixes#13021
* Currently we group the Dgeni docs by entry-points (we just call it *grouping by components*). Technically there are "component groups" that do not even include any component/directive (e.g. `cdk/coercion`, `cdk/platform`). This renames the component grouper to `entry point grouper`.
* No longer displays interfaces, classes, type-aliases etc. as `additional` "parts of an entry-point". (As mentioned above; sometimes classes are the primary export of an entry-point).
* Due to the recent update to TypeScript 3.0.0, the new TS version conflicts with the internal TypeScript version from `dgeni-packages`. This causes the selector, exported-as to not show up in the docs.
* Removes the selector blacklist and `md-`prefix filter. All of the blacklisted selectors have been removed (except the autosize selector; but the whole class has been deprecated now)
Runs the publish sanity checks before building the release output of Angular Material. Building the release output is very time consuming, and therefore the sanity checks should run before.
Closes#12918
Ensures that commits are not showing up multiple times in the changelog.
Commits can show up multiple times, if a changelog has been generated on a publish branch and has been copied over to "master". In that case, the changelog will already contain the commits that have been cherry-picked into the publish branch. These shouldn't be added twice.
Closes#12915
* 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
* Patch releases should be published from patch publish branches with the format: `{}.{}.x`
* Minor releases should be published from minor publish branches with the format: `{}.x`
* Major releases should be published from the `master` branch.
Closes#12655