Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: angular/components
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 7.2.1
Choose a base ref
...
head repository: angular/components
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 7.2.2
Choose a head ref

Commits on Jan 10, 2019

  1. build: update nodejs rules (#14622)

    Updates to the latest version of the NodeJS rules that includes bazel-contrib/rules_nodejs@c40ceb9
    devversion authored and andrewseguin committed Jan 10, 2019
    Copy the full SHA
    68d98c3 View commit details
  2. build: prepare schematics for v8 (#14667)

    * Prepares the schematics for V8
    * Dynamically resolves the test cases so that we don't need to hardcode them for each version
    devversion authored and andrewseguin committed Jan 10, 2019
    Copy the full SHA
    176a543 View commit details
  3. docs(snack-bar): fix 404 for CSS files in examples (#14684)

    Fixes a couple of the live examples causing a 404 if the user goes to look at their CSS.
    
    Fixes #14682.
    crisbeto authored and andrewseguin committed Jan 10, 2019
    Copy the full SHA
    7f9e7dc View commit details
  4. docs(table): incorrect initial request in http example (#14692)

    Fixes the first request in the table HTTP example being incorrect due to some of the data not being initialized. Also cleans up the example a bit.
    
    Fixes #14683.
    crisbeto authored and andrewseguin committed Jan 10, 2019
    Copy the full SHA
    afac71d View commit details
  5. build: do not run docs-package targets on circle (#14706)

    * No longer runs expensive `docs-package` Bazel targets as part of the `bazel_build_test` job. These docs-package targets will be built as part of the `publish_snapshots` job where we build the docs-package and push it to the Github `material2-docs-content` repository.
    devversion authored and andrewseguin committed Jan 10, 2019
    Copy the full SHA
    54f5bbe View commit details
  6. Copy the full SHA
    5482137 View commit details
  7. build: run release output validations on circle (#14716)

    * Runs the release output validations on CircleCI after all release packages have been built.
    
    Closes #12877
    devversion authored and andrewseguin committed Jan 10, 2019
    Copy the full SHA
    f487c55 View commit details
  8. chore(typos): remove extra "the" from comments (#14754)

    replace comments that have "the the " with "the "
    adgoncal authored and andrewseguin committed Jan 10, 2019
    Copy the full SHA
    63c8ad5 View commit details
  9. Copy the full SHA
    b2352fe View commit details
  10. Copy the full SHA
    5465a46 View commit details

Commits on Jan 11, 2019

  1. build: fix incorrect amd module names (#14786)

    * Our UMD bundles currently have wrong AMD module names for secondary entry-points which are dash-cased. e.g. AMD module name for the bottom-sheet is `@angular/material/bottomSheet`.
    * Our UMD bundles currently reference incorrect rollup globals. e.g. the AMD module name is `ng.material-experimental.{secondary}`, while it should be `ng.materialExperimental`.
    devversion authored and andrewseguin committed Jan 11, 2019
    Copy the full SHA
    367a540 View commit details
  2. build: run e2e tests with bazel (#14656)

    * Builds the e2e app with Bazel
    * Serves the e2e app with Bazel
    * Runs the e2e tests with Bazel protractor rules
    devversion authored and andrewseguin committed Jan 11, 2019
    Copy the full SHA
    e384239 View commit details
  3. docs(portal): add overview example (#14655)

    Adds a basic overview example for the `cdk/portal` package since it doesn't have any live examples.
    crisbeto authored and andrewseguin committed Jan 11, 2019
    Copy the full SHA
    28e1c19 View commit details
  4. build: bazel repository changes not cached on circleci (#14642)

    Currently if we update the Bazel `WORKSPACE` and some external repositories have changed, CircleCI won't be able to cache the bazel repositories because the cache-key has not changed and saving will be skipped. We should make sure that the Bazel repositories will be cached properly because otherwise this can cause a significant slow-down with Bazel managed deps.
    
    Additionally we no longer store the cache based on the current `branch` because that means that caching does not always work for pull requests. Since the caching only depends on two inputs (yarn.lock and WORKSPACE), it's safe to just remove the branch from the cache key.
    devversion authored and andrewseguin committed Jan 11, 2019
    Copy the full SHA
    9546ac3 View commit details
  5. build: switch to docs-content from examples package (#14612)

    With angular/material.angular.io#565 the docs-content will be pulled from the `@angular/material-examples` package. Changes needed on this repository:
    
    * Since we update some styles and logic in favor of simplicity, we need to update the Dgeni templates to conform with these changes.
    * Remove the unnecessary `examplesPath` property member because we now compute the `docs-content/` asset paths in a consistent way and don't want to mix up the source locations.
    devversion authored and andrewseguin committed Jan 11, 2019
    Copy the full SHA
    a9c3520 View commit details

Commits on Jan 18, 2019

  1. build: update to angular 7.2.0 (#14757)

    Updates to Angular 7.2.0 which includes:
    * angular/angular@ef056c5
    * angular/angular@1e6c9be
    devversion authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    f051c2f View commit details
  2. Revert "build: update to angular 7.2.0 (#14757)" (#14775)

    This reverts commit dd28ec1.
    andrewseguin authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    008875d View commit details
  3. build: do not build docs-package bazel targets on circle (#14788)

    * 74c7681 should have already disabled all `docs-package` targets on the CI, but apparently `bazel test` also builds targets which aren't even tests, so we need to filter `bazel test` as well.
    devversion authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    8dac174 View commit details
  4. fix(icon): clean up cached references in icon registry on destroy (#1…

    …4801)
    
    The icon registry can end up caching some fairly large SVG elements which may end up being retained, because we're using a regular `Map`. These changes clear out all the references if the registry is destroyed.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    96db2d5 View commit details
  5. refactor: remove deprecated Observable.create usages (#14789)

    Replaces the `Observable.create` usages by using the `Observable` constructor directly, because `Observable.create` is being deprecated in the latest RxJS version.
    
    Fixes #14785.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    4d85e03 View commit details
  6. fix(tabs): better handling of animationDuration without units (#14778)

    Based off of the discussions on #13428. Handles values passed to `animationDuration` that don't have units, rather than allowing them to continue through to  the `BrowserAnimationsModule` and to throw an error.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    30a310e View commit details
  7. refactor(table): use DocumentFragment for faster DOM insertions (#14747)

    Reworks some code in the table that was creating elements in a loop to use a `DocumentFragment` so it only hits the DOM once, rather than doing so for each element.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    fc114f7 View commit details
  8. chore(typo): fix typo in datepicker test (#14740)

    nigel5 authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    59bf7a5 View commit details
  9. build: fix api goldens for dialog changes (#14830)

    * Fixes the API goldens which haven't been updated for b62f3f3 properly due to not being rebased on ec9f9c8
    devversion authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    c0050cd View commit details
  10. refactor(drag-drop): clean up DragRef public API (#14654)

    Cleans up the API of the DragRef before we can expose it through the public API by making the handle, custom placeholder and custom preview easier to configure.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    5824450 View commit details
  11. Adding a forgotten markForCheck in mat-chip-list (#14758)

    This issue causes forward tab navigation to be not the same as backward navigation.
    mertdeg2 authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    677b9c8 View commit details
  12. fix(drag-drop): dragging styling not being reset in some cases with O…

    …nPush change detection (#14725)
    
    Fixes the `cdk-drop-list-dragging` and `cdk-drop-list-receiving` not being removed in some cases when using `OnPush` change detection. This seems to have been working until now, because there's always something else to trigger change detection, however if there isn't (e.g. the user isn't listening to the `dropped` event) they won't be reset.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    49b74a7 View commit details
  13. fix(list): action list button outline not being reset on firefox (#14693

    )
    
    Fixes the extra focus outline that Firefox adds to buttons not being reset for the action list items.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    6fd84dc View commit details
  14. fix(tabs): pagination not working correctly on chrome in rtl mode (#1…

    …4690)
    
    In #13223 we added some code that resets the scroll position of the tab header, in order to fix a bug on IE and Edge. The changes seem to have introduced an issue on newer Chrome versions in RTL mode where the transform gets negated and the header content doesn't move. These changes scope the fix only to IE and Edge.
    
    Fixes #14689.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    e721664 View commit details
  15. fix(focus-trap): apply aria-hidden to focus trap tab anchors (#14644)

    These anchors at the book ends of a FocusTrap'ed element have focus listeners that redirect focus
    back to the element. However, some screen readers may access these focus traps without moving
    programmatic focus, leaving the SR user wondering why an empty control lives on the page.  Android
    TalkBack currently treats this as a stop with no announcement (because it has no content). Adding
    the aria-hidden should prevent these from being accessed in SR contexts while preserving the core
    functionality of redirecting focus when it's moved linearly (e.g., with tab).
    stevenyxu authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    122b148 View commit details
  16. chore(tabs): update api goldens (#14844)

    Fixes the tabs API goldens not being up to date.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    086abcd View commit details
  17. build: publish docs-content bazel artifacts (#14634)

    devversion authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    b120f8c View commit details
  18. fix(sort): extra Firefox focus outline not being reset (#14733)

    Fixes the extra outline that Firefox adds to focusable buttons not being reset for the sort header buttons.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    2c5341d View commit details
  19. fix(drag-drop): apply translation transform before user transforms (#…

    …14712)
    
    Currently we apply our own transforms after any of the user's transforms, however this can result in some weird behavior if the user defined something like `rotate`. These changes move our values to be first.
    
    Fixes #14699.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    7322977 View commit details
  20. fix(drag-drop): restore initial transform when resetting (#14701)

    Currently we preserve the any `transform` that an element might have had before the user started dragging it, however that `transform` is lost if it's position is reset via the `DragRef.reset` method. These changes reset the `transform` back to its initial value.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    32f990a View commit details
  21. fix(drag-drop): incorrectly preserving transform if root element chan…

    …ges (#14697)
    
    Currently we cache the element's initial transform so that we can preserve it after the user has dragged it, however if the root element changes, the cached value will be incorrect. These changes reset the transforms if the root element changes.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    c9bafcc View commit details
  22. fix(overlay): not sizing flexible overlay correctly when opening down…

    …wards on a scrollable page (#14672)
    
    Fixes the height of the bounding box being incorrect, if the overlay is flexible, is opening downwards and the page is scrollable.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    961d8bc View commit details
  23. fix(table): not re-rendering when switching to a smaller set of data …

    …than the current page (#14665)
    
    Fixes the table not rendering correctly when going from a large set of data (e.g. 50 items and on page 10) to a small set of items (e.g. 1 item). The issue comes from the fact that the paginator doesn't emit events if they weren't generated by the user (see discussion on #12586).
    
    Fixes #14010.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    846f5a2 View commit details
  24. fix(overlay): reset transform when disposing of position strategy (#1…

    …4660)
    
    Fixes the `transform` value not being reset when a flexible position strategy is disposed.
    
    Fixes #14657.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    3181ae7 View commit details
  25. fix(button-toggle): remove references to selected toggle on destroy (#…

    …14627)
    
    Currently when a button toggle is destroyed, we still keep a reference to it in the selection model which is leaky and causes the model value to be inaccurate. These changes remove the reference.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    0b16843 View commit details
  26. fix(tooltip): afterHidden stream not being completed (#14620)

    Fixes the `afterHidden` stream not being completed, which causes the host tooltip directive to accumulate subscriptions for every time it is opened, until the entire view is destroyed.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    3931e05 View commit details
  27. fix(overlay): update size if dimensions change in overlay directives (#…

    …14610)
    
    Fixes the size of the overlay not being updated by the connected overlay directive, if it changes while open. This is required in order to handle cases like #7811.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    0eefaa7 View commit details
  28. fix(tabs): don't handle keyboard events with modifier keys (#14234)

    Doesn't `preventDefault` or react to any of the keyboard shortcuts, if the user is holding a modifier key, in order to avoid interfering with other OS-level shortcuts.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    21dc01c View commit details
  29. fix(bottom-sheet): allow disableClose to be updated after opened (#14711

    )
    
    Allows for the `disableClose` value of a bottom sheet to be updated after it has been opened, similarly to `MatDialog`.
    
    Fixes #14708.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    c11e968 View commit details
  30. docs(cdk-stepper): add guide to create stepper (#14710)

    * docs(cdk-stepper): add guide to create stepper
    
    * Added guide how to create a custom stepper using the CDK
    * Added a material example to demonstrate the custom CDK stepper
    * Made steps from CdkStepper public as it is necessary to build
    a custom stepper
    
    * Review comments
    Michael Hoffmann authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    7887699 View commit details
  31. fix(autocomplete): not updating origin if it changes after init (#14677)

    * Fixes changes to the `matAutocompleteOrigin` input being ignored if they happen after the overlay has been initialized.
    * Fixes the `MatAutocompleteOrigin` class not being exported as a part of the public API.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    4d4b074 View commit details
  32. fix(drag-drop): unable to move item into connected container by passi…

    …ng through another container (#14651)
    
    Fixes not being able to move an item from one container into another by passing it through an intermediate container that isn't connected to the final one. The issue comes from the fact that the way things are set up at the moment, the container from which the item started the sequence knows which containers it can go into, however all that knowledge is reset once the item enters into a different container. These changes rework the logic to have the individual containers know whether the item can enter into them and have the source container "ask" each of its siblings whether the item can enter.
    
    Fixes #14645.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    76994f7 View commit details
  33. fix(slide-toggle): use default hue for thumb in dark theme (#14230)

    * The thumb should use the `default` hue in dark themes to match the MDC behavior and also make it easier for people to create a custom theme without needing to explicitly specify the `200` hue just for the slide-toggle. This also makes the slide-toggle more consistent with the checkbox and radio (which are considered selection controls as well)
    
    Fixes #14192
    devversion authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    d6715d0 View commit details
  34. fix(menu): not unsubscribing from close stream if trigger is destroyed (

    #14107)
    
    Fixes the menu trigger not unsubscribing from the menu panel's `close` stream. In most cases it isn't an issue, because `close` gets completed when the panel is destroyed, however the user can still run into it if the trigger is destroyed, but the panel stays in place.
    crisbeto authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    f984a88 View commit details
  35. build: fix bazel running out of memory for "publish_snapshots" (#14849)

    Due to a bug within Bazel, we need to increase the resource class for the CircleCI jobs that use Bazel. This can be lowered once we run everything with RBE; but for now we need it to get our CI green.
    devversion authored and Vivian Hu committed Jan 18, 2019
    Copy the full SHA
    6e403b6 View commit details
Showing with 5,904 additions and 1,866 deletions.
  1. +1 −1 .bazelrc
  2. +127 −0 .circleci/base-rbe-bazelrc
  3. +25 −0 .circleci/bazel.rc
  4. +51 −24 .circleci/config.yml
  5. BIN .circleci/gcp_token
  6. +56 −1 .github/CODEOWNERS
  7. +4 −6 .github/branch-manager.yml
  8. +32 −0 CHANGELOG.md
  9. +7 −8 WORKSPACE
  10. +30 −0 e2e/BUILD.bazel
  11. +34 −32 e2e/components/block-scroll-strategy-e2e.spec.ts
  12. +6 −4 e2e/components/button-e2e.spec.ts
  13. +2 −2 e2e/components/button-toggle-e2e.spec.ts
  14. +2 −3 e2e/components/card-e2e.spec.ts
  15. +12 −12 e2e/components/checkbox-e2e.spec.ts
  16. +40 −40 e2e/components/dialog-e2e.spec.ts
  17. +7 −7 e2e/components/expansion-e2e.spec.ts
  18. +5 −5 e2e/components/grid-list-e2e.spec.ts
  19. +4 −4 e2e/components/icon-e2e.spec.ts
  20. +24 −24 e2e/components/input-e2e.spec.ts
  21. +5 −5 e2e/components/list-e2e.spec.ts
  22. +90 −94 e2e/components/menu-e2e.spec.ts
  23. +9 −9 e2e/components/progress-bar-e2e.spec.ts
  24. +1 −1 e2e/components/progress-spinner-e2e.spec.ts
  25. +16 −18 e2e/components/radio-e2e.spec.ts
  26. +12 −12 e2e/components/sidenav-e2e.spec.ts
  27. +25 −17 e2e/components/slide-toggle-e2e.spec.ts
  28. +23 −23 e2e/components/stepper-e2e.spec.ts
  29. +9 −9 e2e/components/tabs-e2e.spec.ts
  30. +2 −2 e2e/components/toolbar-e2e.spec.ts
  31. +4 −4 e2e/components/virtual-scroll-e2e.spec.ts
  32. +3 −1 e2e/index-e2e.spec.ts
  33. +28 −0 e2e/protractor.conf.js
  34. +42 −0 e2e/start-devserver.js
  35. +0 −20 e2e/tsconfig.json
  36. +6 −6 e2e/util/actions.ts
  37. +9 −9 e2e/util/asserts.ts
  38. +3 −3 e2e/util/query.ts
  39. +167 −0 guides/creating-a-custom-stepper-using-the-cdk-stepper.md
  40. +2 −8 package.json
  41. +19 −0 scripts/circleci/bazel/setup-remote-execution.sh
  42. +0 −3 scripts/circleci/publish-snapshots.sh
  43. +6 −32 scripts/deploy/publish-docs-content.sh
  44. +1 −0 src/BUILD.bazel
  45. +1 −1 src/cdk-experimental/scrolling/auto-size-virtual-scroll.ts
  46. +1 −0 src/cdk/a11y/focus-trap/focus-trap.spec.ts
  47. +1 −0 src/cdk/a11y/focus-trap/focus-trap.ts
  48. +1 −1 src/cdk/a11y/interactivity-checker/interactivity-checker.ts
  49. +11 −2 src/cdk/drag-drop/directives/drag-handle.ts
  50. +148 −3 src/cdk/drag-drop/directives/drag.spec.ts
  51. +48 −23 src/cdk/drag-drop/directives/drag.ts
  52. +7 −6 src/cdk/drag-drop/directives/drop-list.ts
  53. +68 −53 src/cdk/drag-drop/drag-ref.ts
  54. +93 −105 src/cdk/drag-drop/drop-list-ref.ts
  55. +1 −1 src/cdk/observers/observe-content.ts
  56. +18 −0 src/cdk/overlay/overlay-directives.spec.ts
  57. +6 −7 src/cdk/overlay/overlay-directives.ts
  58. +2 −2 src/cdk/overlay/overlay-ref.ts
  59. +45 −1 src/cdk/overlay/position/flexible-connected-position-strategy.spec.ts
  60. +3 −2 src/cdk/overlay/position/flexible-connected-position-strategy.ts
  61. +2 −0 src/cdk/portal/portal.md
  62. +1 −1 src/cdk/portal/portal.ts
  63. +5 −0 src/cdk/schematics/migration.json
  64. +5 −0 src/cdk/schematics/ng-update/index.ts
  65. +10 −0 src/cdk/schematics/ng-update/target-version.ts
  66. +16 −0 src/cdk/schematics/ng-update/test-cases/index.spec.ts
  67. +2 −3 src/cdk/schematics/ng-update/test-cases/misc/method-call-checks.spec.ts
  68. +0 −48 src/cdk/schematics/ng-update/test-cases/v6-test-cases.spec.ts
  69. +0 −44 src/cdk/schematics/ng-update/test-cases/v7-test-cases.spec.ts
  70. +3 −2 src/cdk/schematics/ng-update/update-schematic.md
  71. +3 −0 src/cdk/schematics/testing/BUILD.bazel
  72. +97 −6 src/cdk/schematics/testing/test-case-setup.ts
  73. +6 −0 src/cdk/schematics/testing/tsconfig.json
  74. +1 −1 src/cdk/scrolling/scroll-dispatcher.ts
  75. +7 −4 src/cdk/scrolling/scrollable.ts
  76. +1 −1 src/cdk/scrolling/virtual-scroll-viewport.ts
  77. +21 −12 src/cdk/stepper/stepper.ts
  78. +7 −3 src/cdk/table/table.ts
  79. +1 −1 src/dev-app/chips/chips-demo.html
  80. +57 −0 src/e2e-app/BUILD.bazel
  81. +10 −0 src/e2e-app/devserver-configure.js
  82. +7 −10 src/e2e-app/index.html
  83. +0 −106 src/e2e-app/system-config.ts
  84. +0 −52 src/e2e-app/tsconfig-build.json
  85. +6 −0 src/lib/BUILD.bazel
  86. +15 −9 src/lib/autocomplete/autocomplete-trigger.ts
  87. +32 −1 src/lib/autocomplete/autocomplete.spec.ts
  88. +1 −1 src/lib/autocomplete/public-api.ts
  89. +12 −6 src/lib/bottom-sheet/bottom-sheet-ref.ts
  90. +21 −0 src/lib/bottom-sheet/bottom-sheet.spec.ts
  91. +1 −1 src/lib/button-toggle/button-toggle.md
  92. +19 −1 src/lib/button-toggle/button-toggle.spec.ts
  93. +8 −0 src/lib/button-toggle/button-toggle.ts
  94. +5 −2 src/lib/chips/chip-list.ts
  95. +1 −1 src/lib/core/ripple/ripple.ts
  96. +2 −2 src/lib/datepicker/calendar.ts
  97. +1 −1 src/lib/datepicker/datepicker.spec.ts
  98. +1 −1 src/lib/form-field/prefix.ts
  99. +8 −1 src/lib/icon/icon-registry.ts
  100. +5 −0 src/lib/list/list.scss
  101. +61 −2 src/lib/list/list.spec.ts
  102. +49 −4 src/lib/list/list.ts
  103. +15 −0 src/lib/list/selection-list.spec.ts
  104. +11 −2 src/lib/list/selection-list.ts
  105. +5 −4 src/lib/menu/menu-trigger.ts
  106. +17 −1 src/lib/schematics/ng-update/test-cases/index.spec.ts
  107. +2 −3 src/lib/schematics/ng-update/test-cases/misc/constructor-checks.spec.ts
  108. +2 −3 src/lib/schematics/ng-update/test-cases/misc/import-checks.spec.ts
  109. +0 −51 src/lib/schematics/ng-update/test-cases/v6-test-cases.spec.ts
  110. +0 −45 src/lib/schematics/ng-update/test-cases/v7-test-cases.spec.ts
  111. +5 −3 src/lib/slide-toggle/_slide-toggle-theme.scss
  112. +7 −0 src/lib/sort/sort-header.scss
  113. +3 −3 src/lib/stepper/stepper-horizontal.html
  114. +2 −2 src/lib/stepper/stepper-vertical.html
  115. +1 −2 src/lib/stepper/stepper.scss
  116. +20 −15 src/lib/stepper/stepper.spec.ts
  117. +22 −8 src/lib/table/table-data-source.ts
  118. +34 −7 src/lib/table/table.spec.ts
  119. +21 −2 src/lib/tabs/tab-group.spec.ts
  120. +7 −2 src/lib/tabs/tab-group.ts
  121. +30 −1 src/lib/tabs/tab-header.spec.ts
  122. +19 −7 src/lib/tabs/tab-header.ts
  123. +18 −0 src/lib/tooltip/tooltip.spec.ts
  124. +5 −1 src/lib/tooltip/tooltip.ts
  125. +6 −5 src/material-examples/BUILD.bazel
  126. 0 src/material-examples/cdk-custom-stepper-without-form/cdk-custom-stepper-without-form-example.css
  127. +8 −0 src/material-examples/cdk-custom-stepper-without-form/cdk-custom-stepper-without-form-example.html
  128. +37 −0 src/material-examples/cdk-custom-stepper-without-form/cdk-custom-stepper-without-form-example.ts
  129. +33 −0 src/material-examples/cdk-custom-stepper-without-form/example-custom-stepper.css
  130. +17 −0 src/material-examples/cdk-custom-stepper-without-form/example-custom-stepper.html
  131. +7 −0 src/material-examples/cdk-portal-overview/cdk-portal-overview-example.css
  132. +8 −0 src/material-examples/cdk-portal-overview/cdk-portal-overview-example.html
  133. +30 −0 src/material-examples/cdk-portal-overview/cdk-portal-overview-example.ts
  134. +0 −4 src/material-examples/example-data.ts
  135. +6 −0 src/material-examples/material-module.ts
  136. +1 −0 src/material-examples/snack-bar-component/snack-bar-component-example.css
  137. +2 −1 src/material-examples/snack-bar-component/snack-bar-component-example.ts
  138. +1 −1 src/material-examples/snack-bar-overview/snack-bar-overview-example.ts
  139. +1 −0 src/material-examples/snack-bar-position/snack-bar-position-example.css
  140. +2 −1 src/material-examples/snack-bar-position/snack-bar-position-example.ts
  141. +1 −1 src/material-examples/tab-group-async/tab-group-async-example.ts
  142. +1 −0 src/material-examples/table-http/table-http-example.css
  143. +1 −1 src/material-examples/table-http/table-http-example.html
  144. +6 −6 src/material-examples/table-http/table-http-example.ts
  145. +0 −47 test/protractor.conf.js
  146. +11 −0 tools/axe-protractor/BUILD.bazel
  147. 0 tools/axe-protractor/{axe-protractor.js → index.js}
  148. +38 −0 tools/bazel-stamp-vars.js
  149. +0 −43 tools/bazel-stamp-vars.sh
  150. +2 −0 tools/dgeni/templates/constant.template.html
  151. +2 −0 tools/dgeni/templates/type-alias.template.html
  152. +0 −2 tools/gulp/gulpfile.ts
  153. +0 −2 tools/gulp/tasks/ci.ts
  154. +0 −216 tools/gulp/tasks/docs.ts
  155. +0 −124 tools/gulp/tasks/e2e.ts
  156. +2 −2 tools/package-docs-content/package-docs-content.ts
  157. +38 −15 tools/package-tools/build-bundles.ts
  158. +2 −2 tools/public_api_guard/BUILD.bazel
  159. +3 −1 tools/public_api_guard/cdk/drag-drop.d.ts
  160. +1 −0 tools/public_api_guard/cdk/stepper.d.ts
  161. +100 −0 tools/public_api_guard/lib/autocomplete.d.ts
  162. +28 −0 tools/public_api_guard/lib/badge.d.ts
  163. +61 −0 tools/public_api_guard/lib/bottom-sheet.d.ts
  164. +79 −0 tools/public_api_guard/lib/button-toggle.d.ts
  165. +29 −0 tools/public_api_guard/lib/button.d.ts
  166. +45 −0 tools/public_api_guard/lib/card.d.ts
  167. +66 −0 tools/public_api_guard/lib/checkbox.d.ts
  168. +190 −0 tools/public_api_guard/lib/chips.d.ts
  169. +427 −0 tools/public_api_guard/lib/core.d.ts
  170. +282 −0 tools/public_api_guard/lib/datepicker.d.ts
  171. +128 −0 tools/public_api_guard/lib/dialog.d.ts
  172. +7 −0 tools/public_api_guard/lib/divider.d.ts
  173. +91 −0 tools/public_api_guard/lib/expansion.d.ts
  174. +107 −0 tools/public_api_guard/lib/form-field.d.ts
  175. +38 −0 tools/public_api_guard/lib/grid-list.d.ts
  176. +65 −0 tools/public_api_guard/lib/icon.d.ts
  177. +72 −0 tools/public_api_guard/lib/input.d.ts
  178. +1 −0 tools/public_api_guard/lib/lib.d.ts
  179. +119 −0 tools/public_api_guard/lib/list.d.ts
  180. +132 −0 tools/public_api_guard/lib/menu.d.ts
  181. +60 −0 tools/public_api_guard/lib/paginator.d.ts
  182. +44 −0 tools/public_api_guard/lib/progress-bar.d.ts
  183. +37 −0 tools/public_api_guard/lib/progress-spinner.d.ts
  184. +70 −0 tools/public_api_guard/lib/radio.d.ts
  185. +137 −0 tools/public_api_guard/lib/select.d.ts
  186. +93 −0 tools/public_api_guard/lib/sidenav.d.ts
  187. +61 −0 tools/public_api_guard/lib/slide-toggle.d.ts
  188. +73 −0 tools/public_api_guard/lib/slider.d.ts
  189. +84 −0 tools/public_api_guard/lib/snack-bar.d.ts
  190. +97 −0 tools/public_api_guard/lib/sort.d.ts
  191. +87 −0 tools/public_api_guard/lib/stepper.d.ts
  192. +71 −0 tools/public_api_guard/lib/table.d.ts
  193. +192 −0 tools/public_api_guard/lib/tabs.d.ts
  194. +20 −0 tools/public_api_guard/lib/toolbar.d.ts
  195. +86 −0 tools/public_api_guard/lib/tooltip.d.ts
  196. +75 −0 tools/public_api_guard/lib/tree.d.ts
  197. +33 −0 tools/release/check-release-output.ts
  198. +42 −18 tools/release/git/git-client.ts
  199. +39 −29 tools/release/publish-release.ts
  200. 0 tools/release/release-output/{check-packages.ts → check-package.ts}
  201. +8 −200 yarn.lock
2 changes: 1 addition & 1 deletion .bazelrc
Original file line number Diff line number Diff line change
@@ -40,7 +40,7 @@ test --experimental_ui

# Configures script to do version stamping.
# See https://docs.bazel.build/versions/master/user-manual.html#flag--workspace_status_command
build:release --workspace_status_command=./tools/bazel-stamp-vars.sh
build:release --workspace_status_command="node ./tools/bazel-stamp-vars.js"

###############################
# Typescript / Angular / Sass #
127 changes: 127 additions & 0 deletions .circleci/base-rbe-bazelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
# ------------------------------
# This file is taken from the "bazel-toolchains" repository and is used in order to reduce the
# manual configuration overhead. https://github.com/bazelbuild/bazel-toolchains/tree/master/bazelrc
# ------------------------------

# Copyright 2016 The Bazel Authors. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# Depending on how many machines are in the remote execution instance, setting
# this higher can make builds faster by allowing more jobs to run in parallel.
# Setting it too high can result in jobs that timeout, however, while waiting
# for a remote machine to execute them.
build:remote --jobs=50

# Set several flags related to specifying the platform, toolchain and java
# properties.
# These flags are duplicated rather than imported from (for example)
# %workspace%/configs/ubuntu16_04_clang/1.1/toolchain.bazelrc to make this
# bazelrc a standalone file that can be copied more easily.
# These flags should only be used as is for the rbe-ubuntu16-04 container
# and need to be adapted to work with other toolchain containers.
build:remote --host_javabase=@bazel_toolchains//configs/ubuntu16_04_clang/1.1:jdk8
build:remote --javabase=@bazel_toolchains//configs/ubuntu16_04_clang/1.1:jdk8
build:remote --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8
build:remote --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8
build:remote --crosstool_top=@bazel_toolchains//configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default:toolchain
build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
# Platform flags:
# The toolchain container used for execution is defined in the target indicated
# by "extra_execution_platforms", "host_platform" and "platforms".
# If you are using your own toolchain container, you need to create a platform
# target with "constraint_values" that allow for the toolchain specified with
# "extra_toolchains" to be selected (given constraints defined in
# "exec_compatible_with").
# More about platforms: https://docs.bazel.build/versions/master/platforms.html
build:remote --extra_toolchains=@bazel_toolchains//configs/ubuntu16_04_clang/1.1/bazel_0.18.0/cpp:cc-toolchain-clang-x86_64-default
build:remote --extra_execution_platforms=@bazel_toolchains//configs/ubuntu16_04_clang/1.1:rbe_ubuntu1604
build:remote --host_platform=@bazel_toolchains//configs/ubuntu16_04_clang/1.1:rbe_ubuntu1604
build:remote --platforms=@bazel_toolchains//configs/ubuntu16_04_clang/1.1:rbe_ubuntu1604

# Set various strategies so that all actions execute remotely. Mixing remote
# and local execution will lead to errors unless the toolchain and remote
# machine exactly match the host machine.
build:remote --spawn_strategy=remote
build:remote --strategy=Javac=remote
build:remote --strategy=Closure=remote
build:remote --genrule_strategy=remote
build:remote --define=EXECUTOR=remote

# Enable the remote cache so action results can be shared across machines,
# developers, and workspaces.
build:remote --remote_cache=remotebuildexecution.googleapis.com

# Enable remote execution so actions are performed on the remote systems.
build:remote --remote_executor=remotebuildexecution.googleapis.com

# Enable encryption.
build:remote --tls_enabled=true

# Enforce stricter environment rules, which eliminates some non-hermetic
# behavior and therefore improves both the remote cache hit rate and the
# correctness and repeatability of the build.
build:remote --experimental_strict_action_env=true

# Set a higher timeout value, just in case.
build:remote --remote_timeout=3600

# Enable authentication. This will pick up application default credentials by
# default. You can use --auth_credentials=some_file.json to use a service
# account credential instead.
build:remote --auth_enabled=true

# Set flags for uploading to BES in order to view results in the Bazel Build
# Results UI.
build:results --bes_backend="buildeventservice.googleapis.com"
build:results --bes_timeout=60s
build:results --tls_enabled

# Output BES results url
build:results --bes_results_url="https://source.cloud.google.com/results/invocations/"

# Set flags for uploading to BES without Remote Build Execution.
build:results-local --bes_backend="buildeventservice.googleapis.com"
build:results-local --bes_timeout=60s
build:results-local --tls_enabled=true
build:results-local --auth_enabled=true
build:results-local --spawn_strategy=local
build:results-local --remote_cache=remotebuildexecution.googleapis.com
build:results-local --remote_timeout=3600
build:results-local --bes_results_url="https://source.cloud.google.com/results/invocations/"

# The following flags are only necessary for local docker sandboxing
# with the rbe-ubuntu16-04 container. Use of these flags is still experimental.
build:docker-sandbox --host_javabase=@bazel_toolchains//configs/ubuntu16_04_clang/1.1:jdk8
build:docker-sandbox --javabase=@bazel_toolchains//configs/ubuntu16_04_clang/1.1:jdk8
build:docker-sandbox --crosstool_top=@bazel_toolchains//configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default:toolchain
build:docker-sandbox --experimental_docker_image=gcr.io/cloud-marketplace/google/rbe-ubuntu16-04@sha256:9bd8ba020af33edb5f11eff0af2f63b3bcb168cd6566d7b27c6685e717787928
build:docker-sandbox --spawn_strategy=docker
build:docker-sandbox --strategy=Javac=docker
build:docker-sandbox --strategy=Closure=docker
build:docker-sandbox --genrule_strategy=docker
build:docker-sandbox --define=EXECUTOR=remote
build:docker-sandbox --experimental_docker_verbose
build:docker-sandbox --experimental_enable_docker_sandbox

# The following flags enable the remote cache so action results can be shared
# across machines, developers, and workspaces.
build:remote-cache --remote_cache=remotebuildexecution.googleapis.com
build:remote-cache --tls_enabled=true
build:remote-cache --experimental_strict_action_env=true
build:remote-cache --remote_timeout=3600
build:remote-cache --auth_enabled=true
build:remote-cache --spawn_strategy=standalone
build:remote-cache --strategy=Javac=standalone
build:remote-cache --strategy=Closure=standalone
build:remote-cache --genrule_strategy=standalone
25 changes: 25 additions & 0 deletions .circleci/bazel.rc
Original file line number Diff line number Diff line change
@@ -5,3 +5,28 @@
# Save downloaded repositories in a location that can be cached by CircleCI. This helps us
# speeding up the analysis time significantly with Bazel managed node dependencies on the CI.
build --experimental_repository_cache=/home/circleci/bazel_repository_cache

########################################
# Remote Build Execution support on CI #
########################################

# Load default settings for Remote Build Execution.
import %workspace%/.circleci/base-rbe-bazelrc

# Custom execution platform defined in the Angular repository. See:
# https://github.com/angular/angular/blob/master/tools/BUILD.bazel#L21
build:remote --extra_execution_platforms=@angular//tools:rbe_ubuntu1604-angular
build:remote --host_platform=@angular//tools:rbe_ubuntu1604-angular
build:remote --platforms=@angular//tools:rbe_ubuntu1604-angular

# Increase the amount of parallel jobs. The default RBE base configuration specifies a low
# number of parallel jobs, but our build and testing should be parallelizable.
build:remote --jobs=150

# Use the Angular team internal GCP instance for remote execution.
build:remote --remote_instance_name=projects/internal-200822/instances/default_instance

# We want to accept remote cached build artifacts to speed up our builds incrementally.
# TODO(devversion): Temporary disabled since we don't have much insight on possible security
# issues. Enable this once we investigated this further and talked to the RBE team.
build:remote --remote_accept_cached=false
75 changes: 51 additions & 24 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@
# http://yaml-online-parser.appspot.com/

var_1: &docker_image angular/ngcontainer:0.7.0
var_2: &cache_key v2-ng-mat-{{ .Branch }}-{{ checksum "yarn.lock" }}-0.7.0
var_2: &cache_key v2-ng-mat-{{ checksum "WORKSPACE" }}-{{ checksum "yarn.lock" }}-0.7.0

# Settings common to each job
var_3: &job_defaults
@@ -39,37 +39,39 @@ var_6: &save_cache
- "node_modules"
- "~/bazel_repository_cache"

# Decryption token that is used to decode the GCP credentials file in ".circleci/gcp_token".
var_7: &gcp_decrypt_token "angular"

# Job step that ensures that the node module dependencies are installed and up-to-date. We use
# Yarn with the frozen lockfile option in order to make sure that lock file and package.json are
# in sync. Unlike in Travis, we don't need to manually purge the node modules if stale because
# CircleCI automatically discards the cache if the checksum of the lock file has changed.
var_7: &yarn_install
var_8: &yarn_install
run: yarn install --frozen-lockfile --non-interactive

# Copies the Bazel config which is specifically for CircleCI to a location where Bazel picks it
# up and merges it with the project-wide bazel configuration (tools/bazel.rc)
var_8: &copy_bazel_config
var_9: &copy_bazel_config
# Set up the CircleCI specific bazel configuration.
run: sudo cp ./.circleci/bazel.rc /etc/bazel.bazelrc

# Sets up a different Docker image that includes a moe recent Firefox version which
# is needed for headless testing.
var_9: &docker-firefox-image
var_10: &docker-firefox-image
# TODO(devversion): Temporarily use a image that includes Firefox 62 because the
# ngcontainer image does include an old Firefox version that does not support headless.
- image: circleci/node:11.4.0-browsers

# Attaches the release output which has been stored in the workspace to the current job.
# https://circleci.com/docs/2.0/workflows/#using-workspaces-to-share-data-among-jobs
var_10: &attach_release_output
var_11: &attach_release_output
attach_workspace:
at: dist/releases

at: dist/

# Branch filter that we can specify for jobs that should only run on publish branches. This filter
# is used to ensure that not all upstream branches will be published as Github builds
# (e.g. revert branches, feature branches)
var_11: &publish_branches_filter
var_12: &publish_branches_filter
branches:
only:
- master
@@ -83,11 +85,18 @@ var_11: &publish_branches_filter
# In order to reduce duplication we use a YAML anchor that just always excludes the "_presubmit"
# branch. We don't want to run Circle for the temporary "_presubmit" branch which is reserved
# for the caretaker.
var_12: &ignore_presubmit_branch_filter
var_13: &ignore_presubmit_branch_filter
branches:
ignore:
- "_presubmit"

# Runs a script that sets up the Bazel remote execution. This will be used by jobs that run
# Bazel primarily and should benefit from remote caching and execution.
var_14: &setup_bazel_remote_execution
run:
name: "Setup bazel RBE remote execution"
command: ./scripts/circleci/bazel/setup-remote-execution.sh

# -----------------------------
# Container version of CircleCI
# -----------------------------
@@ -105,13 +114,16 @@ jobs:
bazel_build_test:
<<: *job_defaults
resource_class: xlarge
environment:
GCP_DECRYPT_TOKEN: *gcp_decrypt_token
steps:
- *checkout_code
- *restore_cache
- *copy_bazel_config
- *setup_bazel_remote_execution

- run: bazel build src/...
- run: bazel test src/...
- run: bazel build src/... --build_tag_filters=-docs-package
- run: bazel test src/... --build_tag_filters=-docs-package

# Note: We want to save the cache in this job because the workspace cache also
# includes the Bazel repository cache that will be updated in this job.
@@ -122,26 +134,33 @@ jobs:
# This job fails whenever an API has been updated but not explicitly approved through goldens.
# --------------------------------------------------------------------------------------------
api_golden_checks:
resource_class: xlarge
<<: *job_defaults
resource_class: xlarge
environment:
GCP_DECRYPT_TOKEN: *gcp_decrypt_token
steps:
- *checkout_code
- *restore_cache
- *copy_bazel_config
- *setup_bazel_remote_execution

- run: bazel test tools/public_api_guard/...

# ----------------------------------------------------------------
# Job that runs the e2e tests with Protractor and Chrome Headless
# ----------------------------------------------------------------
# -----------------------------------------------------------------
# Job that runs the e2e tests with Protractor and Chromium headless
# -----------------------------------------------------------------
e2e_tests:
<<: *job_defaults
resource_class: xlarge
environment:
GCP_DECRYPT_TOKEN: *gcp_decrypt_token
steps:
- *checkout_code
- *restore_cache
- *yarn_install
- *copy_bazel_config
- *setup_bazel_remote_execution

- run: yarn gulp ci:e2e
- run: bazel test e2e/...

# ------------------------------------------------------------------------------------------
# Job that runs the unit tests on locally installed browsers (Chrome and Firefox headless).
@@ -246,13 +265,14 @@ jobs:
- *yarn_install

- run: yarn gulp ci:build-release-packages
- run: yarn check-release-output

# Store the release output in the workspace storage. This means that other jobs
# in the same workflow can attach the release output to their job.
- persist_to_workspace:
root: dist/releases
root: dist
paths:
- "**/*"
- "releases/**/*"

# Since there is no UMD bundle that includes everything from the CDK, we need to move
# all bundles into a directory. This allows us to store all CDK UMD bundles as job
@@ -282,17 +302,25 @@ jobs:
# ----------------------------------------
publish_snapshots:
<<: *job_defaults
resource_class: xlarge
environment:
GCP_DECRYPT_TOKEN: *gcp_decrypt_token
steps:
- *checkout_code
- *restore_cache
- *yarn_install
- *attach_release_output
- *copy_bazel_config
- *setup_bazel_remote_execution

# CircleCI has a config setting to enforce SSH for all github connections.
# This is not compatible with our mechanism of using a Personal Access Token
# to publish the build snapshots. In order to fix this, we unset the global option.
- run: git config --global --unset "url.ssh://git@github.com.insteadof"

# TODO(devversion): Ideally the "build_release_packages" job should build all packages with
# Bazel, but for now we mix up the Gulp and bazel setup, so we need to build the package here.
- run: bazel build src/material-examples:npm_package --config=release

- run: ./scripts/circleci/publish-snapshots.sh


@@ -320,9 +348,7 @@ jobs:
workflows:
version: 2

# Build and test workflow. A workflow includes multiple jobs that run in parallel. All jobs
# that build and test source code should be part of this workflow
build_and_test:
bazel_targets:
jobs:
- bazel_build_test:
filters: *ignore_presubmit_branch_filter
@@ -347,7 +373,8 @@ workflows:

release_output:
jobs:
- build_release_packages
- build_release_packages:
filters: *ignore_presubmit_branch_filter
- build_devapp_aot:
filters: *ignore_presubmit_branch_filter
requires:
Binary file added .circleci/gcp_token
Binary file not shown.
Loading