diff --git a/CHANGELOG.md b/CHANGELOG.md index 3f253fd1273a..9d2c4647a182 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,33 @@ + +## 7.0.3 "lyrium-longboard" (2018-11-06) + + +### Bug Fixes + +* **breakpoints:** set max-widths for breakpoints to non-integers to handle subpixel queries ([#13828](https://github.com/angular/material2/issues/13828)) ([b88b79d](https://github.com/angular/material2/commit/b88b79d)) +* **button:** stroked button crops applied badges ([#13912](https://github.com/angular/material2/issues/13912)) ([835dc9e](https://github.com/angular/material2/commit/835dc9e)), closes [#13909](https://github.com/angular/material2/issues/13909) +* **button-toggle:** remove hover state on touch devices ([#13724](https://github.com/angular/material2/issues/13724)) ([f9d5fb4](https://github.com/angular/material2/commit/f9d5fb4)) +* **chips:** remove circular dependency between chip-list and chip-input ([#13994](https://github.com/angular/material2/issues/13994)) ([3da858d](https://github.com/angular/material2/commit/3da858d)) +* **dialog,bottom-sheet:** enter animation blocking child animations ([#13888](https://github.com/angular/material2/issues/13888)) ([e5afa48](https://github.com/angular/material2/commit/e5afa48)), closes [#13870](https://github.com/angular/material2/issues/13870) +* **drag-drop:** drop list not toggling dragging class inside component with OnPush change detection ([#13703](https://github.com/angular/material2/issues/13703)) ([4e50d4a](https://github.com/angular/material2/commit/4e50d4a)), closes [#13680](https://github.com/angular/material2/issues/13680) +* **drag-drop:** incorrectly laying out items with different height or margins ([#13849](https://github.com/angular/material2/issues/13849)) ([c509591](https://github.com/angular/material2/commit/c509591)), closes [#13483](https://github.com/angular/material2/issues/13483) +* **drag-drop:** multiple parallel drag sequences when dragging nested drag items ([#13820](https://github.com/angular/material2/issues/13820)) ([cdc0c8b](https://github.com/angular/material2/commit/cdc0c8b)) +* **list:** add ripples to action list items ([#13799](https://github.com/angular/material2/issues/13799)) ([b293655](https://github.com/angular/material2/commit/b293655)), closes [#13795](https://github.com/angular/material2/issues/13795) +* **list:** remove disabled selection list hover feedback on mobile ([#13850](https://github.com/angular/material2/issues/13850)) ([e975223](https://github.com/angular/material2/commit/e975223)) +* **menu:** unable to swap menu panel after first open ([#13819](https://github.com/angular/material2/issues/13819)) ([cbb76ec](https://github.com/angular/material2/commit/cbb76ec)), closes [#13812](https://github.com/angular/material2/issues/13812) +* **ng-update:** do not fail if [@schematics](https://github.com/schematics)/angular version is outdated ([#13929](https://github.com/angular/material2/issues/13929)) ([f10f8b9](https://github.com/angular/material2/commit/f10f8b9)) +* **ng-update:** do not throw if typescript version is outdated ([#13927](https://github.com/angular/material2/issues/13927)) ([d44fcf8](https://github.com/angular/material2/commit/d44fcf8)) +* **portal:** use portal's ComponentFactoryResolver in portal outlet directive ([#13886](https://github.com/angular/material2/issues/13886)) ([d2af80b](https://github.com/angular/material2/commit/d2af80b)), closes [#12677](https://github.com/angular/material2/issues/12677) [#9712](https://github.com/angular/material2/issues/9712) +* **snack-bar:** set appropriate role based on passed in politeness ([#13864](https://github.com/angular/material2/issues/13864)) ([33d3cb3](https://github.com/angular/material2/commit/33d3cb3)), closes [#13493](https://github.com/angular/material2/issues/13493) +* **snackbar:** override min-width of snackbar on mobile ([#13880](https://github.com/angular/material2/issues/13880)) ([41cb8aa](https://github.com/angular/material2/commit/41cb8aa)) +* **stepper:** don't handle enter/space when modifier key is pressed ([#13827](https://github.com/angular/material2/issues/13827)) ([0bd3890](https://github.com/angular/material2/commit/0bd3890)), closes [#13790](https://github.com/angular/material2/issues/13790) +* **tabs:** duplicate animation events on some browsers ([#13674](https://github.com/angular/material2/issues/13674)) ([7106681](https://github.com/angular/material2/commit/7106681)) +* **tabs:** mat-align-tabs not working on mat-tab-nav-bar ([#13818](https://github.com/angular/material2/issues/13818)) ([2289e43](https://github.com/angular/material2/commit/2289e43)), closes [#13798](https://github.com/angular/material2/issues/13798) +* **virtual-scroll:** not removing view from container if it's outside the template cache ([#13916](https://github.com/angular/material2/issues/13916)) ([7c202ec](https://github.com/angular/material2/commit/7c202ec)), closes [#13901](https://github.com/angular/material2/issues/13901) +* bazel support for downstream apps ([#13836](https://github.com/angular/material2/issues/13836)) ([61dbd26](https://github.com/angular/material2/commit/61dbd26)) + + + ## 7.0.2 limestone-linguine (2018-10-26) diff --git a/package.json b/package.json index 127086bba3fa..1d15f52010e2 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "gulp": "gulp", "stage-release": "bash ./tools/release/stage-release-bin.sh" }, - "version": "7.0.2", + "version": "7.0.3", "requiredAngularVersion": ">=7.0.0", "dependencies": { "@angular/animations": "^7.0.2", diff --git a/scripts/browserstack/stop-tunnel.sh b/scripts/browserstack/stop-tunnel.sh index f95970de9f63..2f19808b3b47 100755 --- a/scripts/browserstack/stop-tunnel.sh +++ b/scripts/browserstack/stop-tunnel.sh @@ -2,15 +2,27 @@ set -e -o pipefail +tunnelTmpDir="/tmp/material-browserstack" +tunnelReadyFile="${tunnelTmpDir}/readyfile" -echo "Shutting down Browserstack tunnel" +if [[ ! -f ${tunnelReadyFile} ]]; then + echo "BrowserStack tunnel has not been started. Cannot stop tunnel.." + exit 1 +fi -killall BrowserStackLocal +echo "Shutting down Browserstack tunnel.." -while [[ -n `ps -ef | grep "BrowserStackLocal" | grep -v "grep"` ]]; do +# The process id for the BrowserStack local instance is stored inside of the readyfile. +tunnelProcessId=$(cat ${tunnelReadyFile}) + +# Kill the process by using the PID that has been read from the readyfile. Note that +# we cannot use killall because CircleCI base container images don't have it installed. +kill ${tunnelProcessId} + +while (ps -p ${tunnelProcessId} &> /dev/null); do printf "." sleep .5 done echo "" -echo "Browserstack tunnel has been shut down" \ No newline at end of file +echo "Browserstack tunnel has been shut down" diff --git a/scripts/browserstack/wait-tunnel.sh b/scripts/browserstack/wait-tunnel.sh index 6b1aaa112bdc..6a7e845b31a1 100755 --- a/scripts/browserstack/wait-tunnel.sh +++ b/scripts/browserstack/wait-tunnel.sh @@ -1,13 +1,17 @@ #!/bin/bash -TUNNEL_LOG="$LOGS_DIR/browserstack-tunnel.log" +tunnelTmpDir="/tmp/material-browserstack" +tunnelLogFile="${tunnelTmpDir}/browserstack-local.log" +tunnelReadyFile="${tunnelTmpDir}/readyfile" +tunnelErrorFile="${tunnelTmpDir}/errorfile" + WAIT_DELAY=30 # Method that prints the logfile output of the browserstack tunnel. printLog() { - echo "Logfile output of Browserstack tunnel (${TUNNEL_LOG}):" + echo "Logfile output of Browserstack tunnel (${tunnelLogFile}):" echo "" - cat ${TUNNEL_LOG} + cat ${tunnelLogFile} } # Wait for Connect to be ready before exiting @@ -15,14 +19,14 @@ printLog() { let "counter=0" # Exit the process if there are errors reported. Print the tunnel log to the console. -if [ -f $BROWSER_PROVIDER_ERROR_FILE ]; then +if [ -f ${tunnelErrorFile} ]; then echo echo "An error occurred while starting the tunnel. See error:" printLog exit 5 fi -while [ ! -f $BROWSER_PROVIDER_READY_FILE ]; do +while [ ! -f ${tunnelReadyFile} ]; do let "counter++" # Counter needs to be multiplied by two because the while loop only sleeps a half second. diff --git a/scripts/circleci/run-browserstack-tests.sh b/scripts/circleci/run-browserstack-tests.sh new file mode 100755 index 000000000000..55f4309ef195 --- /dev/null +++ b/scripts/circleci/run-browserstack-tests.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +# In case any command failed, we want to immediately exit the script with the +# proper exit code. +set -e + +# Go to project directory. +cd $(dirname ${0})/../.. + +# Decode access token and make it accessible for child processes. +export BROWSER_STACK_ACCESS_KEY=`echo ${BROWSER_STACK_ACCESS_KEY} | rev` + +# Start tunnel and wait for it being ready. +./scripts/browserstack/start-tunnel.sh +./scripts/browserstack/wait-tunnel.sh + +# Setup the test platform environment variable that will be read +# by the Karma configuration script. +export TEST_PLATFORM="browserstack" + +# Run the unit tests on Browserstack with Karma. +yarn gulp ci:test + +# Kill the Browserstack tunnel. This is necessary in order to avoid rate-limit +# errors that cause the unit tests to be flaky. +./scripts/browserstack/stop-tunnel.sh