From 596b32b11c8c4ef7940b9eea7c3fb01db749c240 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Sat, 18 Apr 2020 04:08:27 +0000 Subject: [PATCH 1/5] chore(deps): update dependency cypress to v4.4.0 --- package-lock.json | 21 ++++++--------------- package.json | 2 +- 2 files changed, 7 insertions(+), 16 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7fd63bd3a..e0dfd0048 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2719,15 +2719,6 @@ } } }, - "@istanbuljs/nyc-config-typescript": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@istanbuljs/nyc-config-typescript/-/nyc-config-typescript-1.0.1.tgz", - "integrity": "sha512-/gz6LgVpky205LuoOfwEZmnUtaSmdk0QIMcNFj9OvxhiMhPpKftMgZmGN7jNj7jR+lr8IB1Yks3QSSSNSxfoaQ==", - "dev": true, - "requires": { - "@istanbuljs/schema": "^0.1.2" - } - }, "@istanbuljs/schema": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", @@ -3711,9 +3702,9 @@ "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" }, "async": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/async/-/async-3.1.1.tgz", - "integrity": "sha512-X5Dj8hK1pJNC2Wzo2Rcp9FBVdJMGRR/S7V+lH46s8GVFhtbo5O4Le5GECCF/8PISVdkUA6mMPvgz7qTTD1rf1g==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.0.tgz", + "integrity": "sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==", "dev": true }, "async-each": { @@ -5508,9 +5499,9 @@ } }, "cypress": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/cypress/-/cypress-4.3.0.tgz", - "integrity": "sha512-xO1oef4ns4koDAkQROGJIhKKhGHDOKfOmlirwP1QAk9w/no+YJpN7HZ6IUPiXwWw3C7xVLjScoI8Dad0z5uTTg==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/cypress/-/cypress-4.4.0.tgz", + "integrity": "sha512-ZpsV3pVemANGi4Cxu0UIqFv23uHdDJZYlKY+8P/eixujCpI1TQ5RSPBp2grfV3ZvlGYrOXPJY44j9iEh1xoQug==", "dev": true, "requires": { "@cypress/listr-verbose-renderer": "0.4.1", diff --git a/package.json b/package.json index 68d980880..524e94131 100644 --- a/package.json +++ b/package.json @@ -56,7 +56,7 @@ "@babel/core": "7.9.0", "babel-plugin-istanbul": "6.0.0", "check-code-coverage": "1.0.1", - "cypress": "4.3.0", + "cypress": "4.4.0", "express": "4.17.1", "lodash": "4.17.15", "markdown-link-check": "3.8.1", From d0f00dbe67fcc86246665e831edea7c3de8b21f5 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Sat, 18 Apr 2020 05:05:59 +0000 Subject: [PATCH 2/5] chore(deps): update dependency semantic-release to v17.0.6 --- package-lock.json | 444 +++++++++++++++++++++++++++------------------- package.json | 2 +- 2 files changed, 259 insertions(+), 187 deletions(-) diff --git a/package-lock.json b/package-lock.json index e0dfd0048..7f25a554c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2778,23 +2778,23 @@ } }, "@octokit/core": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/@octokit/core/-/core-2.4.2.tgz", - "integrity": "sha512-fUx/Qt774cgiPhb3HRKfdl6iufVL/ltECkwkCg373I4lIPYvAPY4cbidVZqyVqHI+ThAIlFlTW8FT4QHChv3Sg==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-2.5.0.tgz", + "integrity": "sha512-uvzmkemQrBgD8xuGbjhxzJN1darJk9L2cS+M99cHrDG2jlSVpxNJVhoV86cXdYBqdHCc9Z995uLCczaaHIYA6Q==", "dev": true, "requires": { "@octokit/auth-token": "^2.4.0", "@octokit/graphql": "^4.3.1", - "@octokit/request": "^5.3.1", + "@octokit/request": "^5.4.0", "@octokit/types": "^2.0.0", "before-after-hook": "^2.1.0", "universal-user-agent": "^5.0.0" } }, "@octokit/endpoint": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-5.5.3.tgz", - "integrity": "sha512-EzKwkwcxeegYYah5ukEeAI/gYRLv2Y9U5PpIsseGSFDk+G3RbipQGBs8GuYS1TLCtQaqoO66+aQGtITPalxsNQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.0.tgz", + "integrity": "sha512-3nx+MEYoZeD0uJ+7F/gvELLvQJzLXhep2Az0bBSXagbApDvDW0LWwpnAIY/hb0Jwe17A0fJdz0O12dPh05cj7A==", "dev": true, "requires": { "@octokit/types": "^2.0.0", @@ -2842,12 +2842,12 @@ } }, "@octokit/plugin-paginate-rest": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.0.1.tgz", - "integrity": "sha512-xtW3AQoGDD0un/AkPjIndTdFO+O/My0I15TArvrbJirBCV91R1ElrE3gRcsUJENP3t/vveiQ9C6XQjo9sS2xQg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.1.0.tgz", + "integrity": "sha512-7+/7urDH8cy6DmTwkewysf7/Or9dFtwZK7aQOc/IImjyeHJy+C8CEKOPo7L5Qb+66HyAr/4p/zV76LMVMuiRtA==", "dev": true, "requires": { - "@octokit/types": "^2.0.1" + "@octokit/types": "^2.9.0" } }, "@octokit/plugin-request-log": { @@ -2857,9 +2857,9 @@ "dev": true }, "@octokit/plugin-rest-endpoint-methods": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-3.2.0.tgz", - "integrity": "sha512-k+RLsegQn4s0wvAFYuk3R18FVKRg3ktvzIGW6MkmrSiSXBwYfaEsv4CuPysyef0DL+74DRj/X9MLJYlbleUO+Q==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-3.5.2.tgz", + "integrity": "sha512-i5GlEWm7k/SzBr7QrIOuas/1nNgr4JcmgM14TAKULVkv4L5mOY+pcVIUMU3qdYhFyblBFhigujav5seMnkqBnQ==", "dev": true, "requires": { "@octokit/types": "^2.0.1", @@ -2867,14 +2867,14 @@ } }, "@octokit/request": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.3.2.tgz", - "integrity": "sha512-7NPJpg19wVQy1cs2xqXjjRq/RmtSomja/VSWnptfYwuBxLdbYh2UjhGi0Wx7B1v5Iw5GKhfFDQL7jM7SSp7K2g==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.4.0.tgz", + "integrity": "sha512-uAJO6GI8z8VHBqtY7VTL9iFy1Y+UTp5ShpI97tY5z0qBfYKE9rZCRsCm23VmF00x+IoNJ7a0nuVITs/+wS9/mg==", "dev": true, "requires": { - "@octokit/endpoint": "^5.5.0", - "@octokit/request-error": "^1.0.1", - "@octokit/types": "^2.0.0", + "@octokit/endpoint": "^6.0.0", + "@octokit/request-error": "^2.0.0", + "@octokit/types": "^2.8.2", "deprecation": "^2.0.0", "is-plain-object": "^3.0.0", "node-fetch": "^2.3.0", @@ -2900,9 +2900,9 @@ } }, "@octokit/request-error": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-1.2.1.tgz", - "integrity": "sha512-+6yDyk1EES6WK+l3viRDElw96MvwfJxCt45GvmjDUKWjYIb3PJZQkq3i46TwGwoPD4h8NmTrENmtyA1FwbmhRA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.0.0.tgz", + "integrity": "sha512-rtYicB4Absc60rUv74Rjpzek84UbVHGHJRu4fNVlZ1mCcyUPPuzFfG9Rn6sjHrd95DEsmjSt1Axlc699ZlbDkw==", "dev": true, "requires": { "@octokit/types": "^2.0.0", @@ -2911,21 +2911,21 @@ } }, "@octokit/rest": { - "version": "17.0.0", - "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-17.0.0.tgz", - "integrity": "sha512-nSlmyy1DBEOsC4voRbk/SN56V/iuZfxZzjFFz+ocb2MAYwHC+z1TyVOMV9W630dVn9ukioJO34VD5NSYwcgFWg==", + "version": "17.3.0", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-17.3.0.tgz", + "integrity": "sha512-zqvsnWUEldmF3sCmGGlQ2u+NDQMpF5O4gnwefnGt6yJcN6eGWDYJJvRD/wQ1/nALXU0XABhQElBgR/0wNoprsA==", "dev": true, "requires": { - "@octokit/core": "^2.4.0", - "@octokit/plugin-paginate-rest": "^2.0.0", + "@octokit/core": "^2.4.3", + "@octokit/plugin-paginate-rest": "^2.1.0", "@octokit/plugin-request-log": "^1.0.0", - "@octokit/plugin-rest-endpoint-methods": "^3.0.0" + "@octokit/plugin-rest-endpoint-methods": "3.5.2" } }, "@octokit/types": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-2.2.0.tgz", - "integrity": "sha512-iEeW3XlkxeM/CObeoYvbUv24Oe+DldGofY+3QyeJ5XKKA6B+V94ePk14EDCarseWdMs6afKZPv3dFq8C+SY5lw==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-2.10.0.tgz", + "integrity": "sha512-0/NN22MgQvNNgMjTwzWUzcIfFfks3faqiP1D1oQQz49KYeOWc+KkRG9ASbAPurrAnOaDiqnnuDYzhNT9cq4e8Q==", "dev": true, "requires": { "@types/node": ">= 8" @@ -3128,9 +3128,9 @@ "dev": true }, "@semantic-release/github": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/@semantic-release/github/-/github-7.0.4.tgz", - "integrity": "sha512-qQi41eGIa/tne7T8rvQK+xJNoyadOmd5mVsNZUUqZCVueiUkCItspJ7Mgy5ZWuhwlo28+hKeT/4zJ6MIG6er2Q==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@semantic-release/github/-/github-7.0.5.tgz", + "integrity": "sha512-1nJCMeomspRIXKiFO3VXtkUMbIBEreYLFNBdWoLjvlUNcEK0/pEbupEZJA3XHfJuSzv43u3OLpPhF/JBrMuv+A==", "dev": true, "requires": { "@octokit/rest": "^17.0.0", @@ -3139,7 +3139,7 @@ "bottleneck": "^2.18.1", "debug": "^4.0.0", "dir-glob": "^3.0.0", - "fs-extra": "^8.0.0", + "fs-extra": "^9.0.0", "globby": "^11.0.0", "http-proxy-agent": "^4.0.0", "https-proxy-agent": "^5.0.0", @@ -3151,24 +3151,58 @@ "url-join": "^4.0.0" }, "dependencies": { + "fs-extra": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.0.tgz", + "integrity": "sha512-pmEYSk3vYsG/bF651KPUXZ+hvjpgWYw/Gc7W9NFUe3ZVLczKKWIij3IKpOrQcdw4TILtibFslZ0UmR8Vvzig4g==", + "dev": true, + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", + "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", + "dev": true + }, + "jsonfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.0.1.tgz", + "integrity": "sha512-jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^1.0.0" + } + }, "mime": { "version": "2.4.4", "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==", "dev": true + }, + "universalify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz", + "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==", + "dev": true } } }, "@semantic-release/npm": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/@semantic-release/npm/-/npm-7.0.3.tgz", - "integrity": "sha512-3wOXMtAdJkaAnW5183iSmWSimtUmOx7m6g/DWPYRs2Gq6iyB+ztMmhgwbn6luNcM9t6pGbgHvRPEXpWkygMxCA==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@semantic-release/npm/-/npm-7.0.5.tgz", + "integrity": "sha512-D+oEmsx9aHE1q806NFQwSC9KdBO8ri/VO99eEz0wWbX2jyLqVyWr7t0IjKC8aSnkkQswg/4KN/ZjfF6iz1XOpw==", "dev": true, "requires": { "@semantic-release/error": "^2.2.0", "aggregate-error": "^3.0.0", "execa": "^4.0.0", - "fs-extra": "^8.0.0", + "fs-extra": "^9.0.0", "lodash": "^4.17.15", "nerf-dart": "^1.0.0", "normalize-url": "^5.0.0", @@ -3177,9 +3211,37 @@ "read-pkg": "^5.0.0", "registry-auth-token": "^4.0.0", "semver": "^7.1.2", - "tempy": "^0.4.0" + "tempy": "^0.5.0" }, "dependencies": { + "fs-extra": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.0.tgz", + "integrity": "sha512-pmEYSk3vYsG/bF651KPUXZ+hvjpgWYw/Gc7W9NFUe3ZVLczKKWIij3IKpOrQcdw4TILtibFslZ0UmR8Vvzig4g==", + "dev": true, + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", + "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", + "dev": true + }, + "jsonfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.0.1.tgz", + "integrity": "sha512-jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^1.0.0" + } + }, "normalize-url": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-5.0.0.tgz", @@ -3211,17 +3273,23 @@ } }, "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==", + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true + }, + "universalify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz", + "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==", "dev": true } } }, "@semantic-release/release-notes-generator": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@semantic-release/release-notes-generator/-/release-notes-generator-9.0.0.tgz", - "integrity": "sha512-fhMUC5gAYZ1tNUDarB85PdY2xQtrPJH1wkXfvLJuhNa3BLn2geMRwdX+BtyHUloQj5KXVB8OXIq5xXz0IGvhYA==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@semantic-release/release-notes-generator/-/release-notes-generator-9.0.1.tgz", + "integrity": "sha512-bOoTiH6SiiR0x2uywSNR7uZcRDl22IpZhj+Q5Bn0v+98MFtOMhCxFhbrKQjhbYoZw7vps1mvMRmFkp/g6R9cvQ==", "dev": true, "requires": { "conventional-changelog-angular": "^5.0.0", @@ -3303,9 +3371,9 @@ "dev": true }, "@types/node": { - "version": "13.7.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.7.4.tgz", - "integrity": "sha512-oVeL12C6gQS/GAExndigSaLxTrKpQPxewx9bOcwfvJiJge4rr7wNaph4J+ns5hrmIV2as5qxqN8YKthn9qh0jw==", + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.0.tgz", + "integrity": "sha512-WE4IOAC6r/yBZss1oQGM5zs2D7RuKR6Q+w+X2SouPofnWn+LbCqClRyhO3ZE7Ix8nmFgo/oVuuE01cJT2XB13A==", "dev": true }, "@types/normalize-package-data": { @@ -3724,6 +3792,12 @@ "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", "dev": true }, + "at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true + }, "atob": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", @@ -6049,9 +6123,9 @@ "dev": true }, "env-ci": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/env-ci/-/env-ci-5.0.1.tgz", - "integrity": "sha512-xXgohoOAFFF1Y3EdsSKP7olyH/DLS6ZD3aglV6mDFAXBqBXLJSsZLrOZdYfDs5mOmgNaP3YYynObzwF3QkC24g==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/env-ci/-/env-ci-5.0.2.tgz", + "integrity": "sha512-Xc41mKvjouTXD3Oy9AqySz1IeyvJvHZ20Twf5ZLYbNpPPIuCnL/qHCmNlD01LoNy0JTunw9HPYVptD19Ac7Mbw==", "dev": true, "requires": { "execa": "^4.0.0", @@ -6606,12 +6680,12 @@ "dev": true }, "fastq": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.6.0.tgz", - "integrity": "sha512-jmxqQ3Z/nXoeyDmWAzF9kH1aGZSis6e/SbfPmJpUnyZ0ogr6iscHQaml4wsEepEWSdtmpy+eVXmCRIMpxaXqOA==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.7.0.tgz", + "integrity": "sha512-YOadQRnHd5q6PogvAR/x62BGituF2ufiEA6s8aavQANw5YKHERI4AREboX6KotzP8oX2klxYF2wcV/7bn1clfQ==", "dev": true, "requires": { - "reusify": "^1.0.0" + "reusify": "^1.0.4" } }, "fd-slicer": { @@ -7522,9 +7596,9 @@ } }, "glob-parent": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz", - "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", "dev": true, "requires": { "is-glob": "^4.0.1" @@ -7579,17 +7653,24 @@ } }, "handlebars": { - "version": "4.7.3", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.3.tgz", - "integrity": "sha512-SRGwSYuNfx8DwHD/6InAPzD6RgeruWLT+B8e8a7gGs8FWgHzlExpTFMEq2IA6QpAfOClpKHy6+8IqTjeBCu6Kg==", + "version": "4.7.6", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", + "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", "dev": true, "requires": { + "minimist": "^1.2.5", "neo-async": "^2.6.0", - "optimist": "^0.6.1", "source-map": "^0.6.1", - "uglify-js": "^3.1.4" + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" }, "dependencies": { + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -7732,9 +7813,9 @@ "dev": true }, "hosted-git-info": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.2.tgz", - "integrity": "sha512-ezZMWtHXm7Eb7Rq4Mwnx2vs79WUx2QmRg3+ZqeGroKzfDO+EprOcgRPYghsOP9JuYBfK18VojmRTGCg8Ma+ktw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.4.tgz", + "integrity": "sha512-4oT62d2jwSDBbLLFLZE+1vPuQ1h8p9wjrJ8Mqx5TjsyWmBMV5B13eJqn8pvluqubLf3cJPTfiYCIwNwDNmzScQ==", "dev": true, "requires": { "lru-cache": "^5.1.1" @@ -9496,9 +9577,9 @@ } }, "marked": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.8.0.tgz", - "integrity": "sha512-MyUe+T/Pw4TZufHkzAfDj6HarCBWia2y27/bhuYkTaiUnfDYFnCP3KUN+9oM7Wi6JA2rymtVYbQu3spE0GCmxQ==", + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.8.2.tgz", + "integrity": "sha512-EGwzEeCcLniFX51DhTpmTom+dSA/MG/OBUDjnWtHbEnjAH180VzUeAw+oE4+Zv+CoYBWyRlYOTR0N8SO9R1PVw==", "dev": true }, "marked-terminal": { @@ -9516,12 +9597,12 @@ }, "dependencies": { "ansi-escapes": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.0.tgz", - "integrity": "sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", "dev": true, "requires": { - "type-fest": "^0.8.1" + "type-fest": "^0.11.0" } }, "ansi-styles": { @@ -9575,9 +9656,9 @@ } }, "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", "dev": true } } @@ -9987,9 +10068,9 @@ }, "dependencies": { "hosted-git-info": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.5.tgz", - "integrity": "sha512-kssjab8CvdXfcXMXVcvsXum4Hwdq9XGtRD3TteMEvEbq0LXyiNQr6AprqKqfeaDXze7SxWvRxdpwE6ku7ikLkg==", + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", "dev": true } } @@ -10006,9 +10087,9 @@ "dev": true }, "npm": { - "version": "6.13.7", - "resolved": "https://registry.npmjs.org/npm/-/npm-6.13.7.tgz", - "integrity": "sha512-X967EKTT407CvgrWFjXusnPh0VLERcmR9hZFSVgkEquOomZkvpwLJ5zrQ3qrG9SpPLKJE4bPLUu76exKQ4a3Cg==", + "version": "6.14.4", + "resolved": "https://registry.npmjs.org/npm/-/npm-6.14.4.tgz", + "integrity": "sha512-B8UDDbWvdkW6RgXFn8/h2cHJP/u/FPa4HWeGzW23aNEBARN3QPrRaHqPIZW2NSN3fW649gtgUDNZpaRs0zTMPw==", "dev": true, "requires": { "JSONStream": "^1.3.5", @@ -10022,7 +10103,7 @@ "byte-size": "^5.0.1", "cacache": "^12.0.3", "call-limit": "^1.1.1", - "chownr": "^1.1.3", + "chownr": "^1.1.4", "ci-info": "^2.0.0", "cli-columns": "^3.1.2", "cli-table3": "^0.5.1", @@ -10039,10 +10120,10 @@ "fs-vacuum": "~1.2.10", "fs-write-stream-atomic": "~1.0.10", "gentle-fs": "^2.3.0", - "glob": "^7.1.4", + "glob": "^7.1.6", "graceful-fs": "^4.2.3", "has-unicode": "~2.0.1", - "hosted-git-info": "^2.8.5", + "hosted-git-info": "^2.8.8", "iferr": "^1.0.2", "imurmurhash": "*", "infer-owner": "^1.0.4", @@ -10077,9 +10158,9 @@ "lru-cache": "^5.1.1", "meant": "~1.0.1", "mississippi": "^3.0.0", - "mkdirp": "~0.5.1", + "mkdirp": "^0.5.4", "move-concurrently": "^1.0.1", - "node-gyp": "^5.0.7", + "node-gyp": "^5.1.0", "nopt": "~4.0.1", "normalize-package-data": "^2.5.0", "npm-audit-report": "^1.3.2", @@ -10087,10 +10168,10 @@ "npm-install-checks": "^3.0.2", "npm-lifecycle": "^3.1.4", "npm-package-arg": "^6.1.1", - "npm-packlist": "^1.4.7", + "npm-packlist": "^1.4.8", "npm-pick-manifest": "^3.0.2", - "npm-profile": "^4.0.2", - "npm-registry-fetch": "^4.0.2", + "npm-profile": "^4.0.4", + "npm-registry-fetch": "^4.0.3", "npm-user-validate": "~1.0.0", "npmlog": "~4.1.2", "once": "~1.4.0", @@ -10107,11 +10188,11 @@ "read-installed": "~4.0.3", "read-package-json": "^2.1.1", "read-package-tree": "^5.3.1", - "readable-stream": "^3.4.0", + "readable-stream": "^3.6.0", "readdir-scoped-modules": "^1.1.0", "request": "^2.88.0", "retry": "^0.12.0", - "rimraf": "^2.6.3", + "rimraf": "^2.7.1", "safe-buffer": "^5.1.2", "semver": "^5.7.1", "sha": "^3.0.0", @@ -10412,7 +10493,7 @@ } }, "chownr": { - "version": "1.1.3", + "version": "1.1.4", "bundled": true, "dev": true }, @@ -10718,7 +10799,7 @@ "dev": true }, "deep-extend": { - "version": "0.5.1", + "version": "0.6.0", "bundled": true, "dev": true }, @@ -11217,7 +11298,7 @@ } }, "glob": { - "version": "7.1.4", + "version": "7.1.6", "bundled": true, "dev": true, "requires": { @@ -11305,7 +11386,7 @@ "dev": true }, "hosted-git-info": { - "version": "2.8.5", + "version": "2.8.8", "bundled": true, "dev": true }, @@ -11441,11 +11522,11 @@ "dev": true }, "is-ci": { - "version": "1.1.0", + "version": "1.2.1", "bundled": true, "dev": true, "requires": { - "ci-info": "^1.0.0" + "ci-info": "^1.5.0" }, "dependencies": { "ci-info": { @@ -11517,7 +11598,7 @@ } }, "is-retry-allowed": { - "version": "1.1.0", + "version": "1.2.0", "bundled": true, "dev": true }, @@ -11989,11 +12070,6 @@ "brace-expansion": "^1.1.7" } }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true - }, "minizlib": { "version": "1.3.3", "bundled": true, @@ -12031,11 +12107,18 @@ } }, "mkdirp": { - "version": "0.5.1", + "version": "0.5.4", "bundled": true, "dev": true, "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" + }, + "dependencies": { + "minimist": { + "version": "1.2.5", + "bundled": true, + "dev": true + } } }, "move-concurrently": { @@ -12084,7 +12167,7 @@ } }, "node-gyp": { - "version": "5.0.7", + "version": "5.1.0", "bundled": true, "dev": true, "requires": { @@ -12198,12 +12281,13 @@ } }, "npm-packlist": { - "version": "1.4.7", + "version": "1.4.8", "bundled": true, "dev": true, "requires": { "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" + "npm-bundled": "^1.0.1", + "npm-normalize-package-bin": "^1.0.1" } }, "npm-pick-manifest": { @@ -12217,7 +12301,7 @@ } }, "npm-profile": { - "version": "4.0.2", + "version": "4.0.4", "bundled": true, "dev": true, "requires": { @@ -12227,7 +12311,7 @@ } }, "npm-registry-fetch": { - "version": "4.0.2", + "version": "4.0.3", "bundled": true, "dev": true, "requires": { @@ -12662,18 +12746,18 @@ "dev": true }, "rc": { - "version": "1.2.7", + "version": "1.2.8", "bundled": true, "dev": true, "requires": { - "deep-extend": "^0.5.1", + "deep-extend": "^0.6.0", "ini": "~1.3.0", "minimist": "^1.2.0", "strip-json-comments": "~2.0.1" }, "dependencies": { "minimist": { - "version": "1.2.0", + "version": "1.2.5", "bundled": true, "dev": true } @@ -12732,7 +12816,7 @@ } }, "readable-stream": { - "version": "3.4.0", + "version": "3.6.0", "bundled": true, "dev": true, "requires": { @@ -12753,7 +12837,7 @@ } }, "registry-auth-token": { - "version": "3.3.2", + "version": "3.4.0", "bundled": true, "dev": true, "requires": { @@ -12817,7 +12901,7 @@ "dev": true }, "rimraf": { - "version": "2.6.3", + "version": "2.7.1", "bundled": true, "dev": true, "requires": { @@ -13116,11 +13200,18 @@ } }, "string_decoder": { - "version": "1.2.0", + "version": "1.3.0", "bundled": true, "dev": true, "requires": { - "safe-buffer": "~5.1.0" + "safe-buffer": "~5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.0", + "bundled": true, + "dev": true + } } }, "stringify-package": { @@ -13429,7 +13520,7 @@ } }, "widest-line": { - "version": "2.0.0", + "version": "2.0.1", "bundled": true, "dev": true, "requires": { @@ -13805,24 +13896,6 @@ "is-wsl": "^1.1.0" } }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - }, - "dependencies": { - "minimist": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", - "dev": true - } - } - }, "optionator": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", @@ -14225,9 +14298,9 @@ "dev": true }, "picomatch": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.1.tgz", - "integrity": "sha512-ISBaA8xQNmwELC7eOjqFKMESB2VIqt4PPDD0nsS95b/9dZXvVKOlz9keMSnoGGKcOHXfTvDD6WMaRoSc9UuhRA==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", "dev": true }, "pify": { @@ -15513,9 +15586,9 @@ } }, "semantic-release": { - "version": "17.0.4", - "resolved": "https://registry.npmjs.org/semantic-release/-/semantic-release-17.0.4.tgz", - "integrity": "sha512-5y9QRSrZtdvACmlpX5DvEVsvFuKRDUVn7JVJFxPVLGrGofDf1d0M/+hA1wFmCjiJZ+VCY8bYaSqVqF14KCF9rw==", + "version": "17.0.6", + "resolved": "https://registry.npmjs.org/semantic-release/-/semantic-release-17.0.6.tgz", + "integrity": "sha512-4djSoKUiq8ShAiKEzDKkcrzFyDREFJRMsY/efr/b48dcin2g+s4TsZUTniTg3Zvk+TM9G5rNBKyXfFgVO6wJNA==", "dev": true, "requires": { "@semantic-release/commit-analyzer": "^8.0.0", @@ -15542,7 +15615,7 @@ "p-reduce": "^2.0.0", "read-pkg-up": "^7.0.0", "resolve-from": "^5.0.0", - "semver": "^7.1.1", + "semver": "^7.3.2", "semver-diff": "^3.1.1", "signale": "^1.2.1", "yargs": "^15.0.1" @@ -15641,9 +15714,9 @@ "dev": true }, "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==", + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", "dev": true }, "to-regex-range": { @@ -16711,20 +16784,27 @@ "dev": true }, "tempy": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/tempy/-/tempy-0.4.0.tgz", - "integrity": "sha512-mKnScm8aXv+cG6l1Nzp6mERGgC4UblbPnSDeQp83JgZ7xqDcnl+7u3+6zXnf1UE7YluDUTEIna1iKYwCSaOk9g==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/tempy/-/tempy-0.5.0.tgz", + "integrity": "sha512-VEY96x7gbIRfsxqsafy2l5yVxxp3PhwAGoWMyC2D2Zt5DmEv+2tGiPOrquNRpf21hhGnKLVEsuqleqiZmKG/qw==", "dev": true, "requires": { + "is-stream": "^2.0.0", "temp-dir": "^2.0.0", - "type-fest": "^0.10.0", + "type-fest": "^0.12.0", "unique-string": "^2.0.0" }, "dependencies": { + "is-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "dev": true + }, "type-fest": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.10.0.tgz", - "integrity": "sha512-EUV9jo4sffrwlg8s0zDhP0T2WD3pru5Xi0+HTE3zTUmBaZNhfkite9PdSJwdXLwPVW0jnAHT56pZHIOYckPEiw==", + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.12.0.tgz", + "integrity": "sha512-53RyidyjvkGpnWPMF9bQgFtWp+Sl8O2Rp13VavmJgfAP9WWG6q6TkrKU8iyJdnwnfgHI6k2hTlgqH4aSdjoTbg==", "dev": true } } @@ -17070,14 +17150,13 @@ "dev": true }, "uglify-js": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.8.0.tgz", - "integrity": "sha512-ugNSTT8ierCsDHso2jkBHXYrU8Y5/fY2ZUprfrJUiD7YpuFvV4jODLFmb3h4btQjqr5Nh4TX4XtgDfCU1WdioQ==", + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.9.1.tgz", + "integrity": "sha512-JUPoL1jHsc9fOjVFHdQIhqEEJsQvfKDjlubcCilu8U26uZ73qOg8VsN8O1jbuei44ZPlwL7kmbAdM4tzaUvqnA==", "dev": true, "optional": true, "requires": { - "commander": "~2.20.3", - "source-map": "~0.6.1" + "commander": "~2.20.3" }, "dependencies": { "commander": { @@ -17086,13 +17165,6 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true, "optional": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true } } }, @@ -17619,9 +17691,9 @@ } }, "windows-release": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.2.0.tgz", - "integrity": "sha512-QTlz2hKLrdqukrsapKsINzqMgOUpQW268eJ0OaOpJN32h272waxR9fkB9VoWRtK7uKHG5EHJcTXQBD8XZVJkFA==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.3.0.tgz", + "integrity": "sha512-2HetyTg1Y+R+rUgrKeUEhAG/ZuOmTrI1NBb3ZyAGQMYmOJjBBPe4MTodghRkmLJZHwkuPi02anbeGP+Zf401LQ==", "dev": true, "requires": { "execa": "^1.0.0" @@ -17654,9 +17726,9 @@ } }, "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", "dev": true }, "wrap-ansi": { @@ -17775,27 +17847,27 @@ "dev": true }, "yaml": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.7.2.tgz", - "integrity": "sha512-qXROVp90sb83XtAoqE8bP9RwAkTTZbugRUTm5YeFCBfNRPEp2YzTeqWiz7m5OORHzEvrA/qcGS8hp/E+MMROYw==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.9.0.tgz", + "integrity": "sha512-3GLZOj8A9Gsp0Fw3kOyj0zqk4xMq+YvhbHSDYALd2NMOfIpyZeBhz32ZiNU7AtX1MtXX/9JJgxSElGRwvv9enA==", "dev": true, "requires": { - "@babel/runtime": "^7.6.3" + "@babel/runtime": "^7.9.0" }, "dependencies": { "@babel/runtime": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.8.4.tgz", - "integrity": "sha512-neAp3zt80trRVBI1x0azq6c57aNBqYZH8KhMm3TaB7wEI5Q4A2SHfBHE8w9gOhI/lrqxtEbXZgQIrHP+wvSGwQ==", + "version": "7.9.2", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.2.tgz", + "integrity": "sha512-NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q==", "dev": true, "requires": { - "regenerator-runtime": "^0.13.2" + "regenerator-runtime": "^0.13.4" } }, "regenerator-runtime": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz", - "integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw==", + "version": "0.13.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", + "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==", "dev": true } } diff --git a/package.json b/package.json index 524e94131..2164174a9 100644 --- a/package.json +++ b/package.json @@ -62,7 +62,7 @@ "markdown-link-check": "3.8.1", "parcel-bundler": "1.12.4", "prettier": "1.19.1", - "semantic-release": "17.0.4", + "semantic-release": "17.0.6", "serve": "11.3.0", "start-server-and-test": "1.10.11", "typescript": "3.8.3" From 35aa8b978ad061e6cf9b86d26441a89a7c637833 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Sat, 18 Apr 2020 06:08:44 +0000 Subject: [PATCH 3/5] chore(deps): update dependency start-server-and-test to v1.11.0 --- package-lock.json | 12 ++++++------ package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7f25a554c..98b36d0e5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16350,9 +16350,9 @@ "dev": true }, "start-server-and-test": { - "version": "1.10.11", - "resolved": "https://registry.npmjs.org/start-server-and-test/-/start-server-and-test-1.10.11.tgz", - "integrity": "sha512-CZilaj293uQWdD4vgOxTOuzlCWxOyBm6bzmH1r6OGLG/q5zcBmGYevLfOimkg0kSn9jLHwYSXLuoKG/DDQJhww==", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/start-server-and-test/-/start-server-and-test-1.11.0.tgz", + "integrity": "sha512-FhkJFYL/lvbd0tKWvbxWNWjtFtq3Zpa09QDjA8EUH88AsgNL4hkAAKYNmbac+fFM8/GIZoJ1Mj4mm3SMI0X1bA==", "dev": true, "requires": { "bluebird": "3.7.2", @@ -16365,9 +16365,9 @@ }, "dependencies": { "cross-spawn": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.1.tgz", - "integrity": "sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", + "integrity": "sha512-PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw==", "dev": true, "requires": { "path-key": "^3.1.0", diff --git a/package.json b/package.json index 2164174a9..469733667 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ "prettier": "1.19.1", "semantic-release": "17.0.6", "serve": "11.3.0", - "start-server-and-test": "1.10.11", + "start-server-and-test": "1.11.0", "typescript": "3.8.3" }, "nyc": { From 8f4895574521d1982efbdffee9f676217bffe630 Mon Sep 17 00:00:00 2001 From: Gleb Bahmutov Date: Sat, 18 Apr 2020 09:57:18 -0400 Subject: [PATCH 4/5] add link to bahmutov/app-in-docker-coverage-example repo --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 72b17a273..0418ca331 100644 --- a/README.md +++ b/README.md @@ -342,6 +342,7 @@ Look up the list of examples under GitHub topic [cypress-code-coverage-example]( - [akoidan/vue-webpack-typescript](https://github.com/akoidan/vue-webpack-typescript) Pure webpack config with vue + typescript with codecov reports. This setup uses babel-loader with TS checker as a separate thread. - [bahmutov/code-coverage-subfolder-example](https://github.com/bahmutov/code-coverage-subfolder-example) shows how to instrument `app` folder using `nyc instrument` as a separate step before running E2E tests - [bahmutov/docker-with-cypress-included-code-coverage-example](https://github.com/bahmutov/docker-with-cypress-included-code-coverage-example) runs tests inside pre-installed Cypress using [cypress/included:x.y.z](https://github.com/cypress-io/cypress-docker-images/tree/master/included) Docker image and reports code coverage. +- [bahmutov/app-in-docker-coverage-example](https://github.com/bahmutov/app-in-docker-coverage-example) shows an app running inside a Docker container, while Cypress runs on the local machine. Cypress can still [discover the source files](https://github.com/cypress-io/code-coverage/pull/197) before generating the report. ## Migrations From 060f17b6d38bea32457570ab828aee8bbd74f64a Mon Sep 17 00:00:00 2001 From: Gleb Bahmutov Date: Mon, 20 Apr 2020 09:39:11 -0400 Subject: [PATCH 5/5] fix: split utils into support and task utils (#202) * fix: split utils for task from utils for support file * fix typo * add TypeScript type check * move function * fix options --- .circleci/config.yml | 12 +++++- cypress/integration/filtering.js | 2 +- cypress/integration/spec.js | 4 +- package.json | 3 +- support-utils.js | 67 ++++++++++++++++++++++++++++++++ support.js | 12 +++++- utils.js => task-utils.js | 64 ++---------------------------- task.js | 6 +-- 8 files changed, 98 insertions(+), 72 deletions(-) create mode 100644 support-utils.js rename utils.js => task-utils.js (72%) diff --git a/.circleci/config.yml b/.circleci/config.yml index e5e67f839..a7e548e90 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -17,8 +17,16 @@ jobs: - checkout - node/with-cache: steps: - - run: CYPRESS_INSTALL_BINARY=0 npm ci - - run: npm run format:check + - run: + name: Install dependencies 📦 + # installs NPM dependencies but skips Cypress + command: CYPRESS_INSTALL_BINARY=0 npm ci + - run: + name: Code style check 🧹 + command: npm run format:check + - run: + name: Types lint 🧹 + command: npm run types publish: description: Publishes the new version of the plugin to NPM diff --git a/cypress/integration/filtering.js b/cypress/integration/filtering.js index 212c8618d..76cd3de47 100644 --- a/cypress/integration/filtering.js +++ b/cypress/integration/filtering.js @@ -1,4 +1,4 @@ -const { filterSpecsFromCoverage } = require('../../utils') +const { filterSpecsFromCoverage } = require('../../support-utils') describe('minimatch', () => { it('string matches', () => { diff --git a/cypress/integration/spec.js b/cypress/integration/spec.js index f92f090c1..ba1b59d7f 100644 --- a/cypress/integration/spec.js +++ b/cypress/integration/spec.js @@ -3,7 +3,7 @@ /// import { add } from '../unit' -const { fixSourcePathes } = require('../../utils') +const { fixSourcePaths } = require('../../support-utils') context('Page test', () => { beforeEach(() => { @@ -54,7 +54,7 @@ context('Unit tests', () => { } } - fixSourcePathes(coverage) + fixSourcePaths(coverage) expect(coverage).to.deep.eq({ '/absolute/src/component.vue': { diff --git a/package.json b/package.json index 469733667..0e9c0dae1 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,8 @@ "format": "prettier --write '*.js'", "format:check": "prettier --check '*.js'", "check:markdown": "find *.md -exec npx markdown-link-check {} \\;", - "effective:config": "circleci config process .circleci/config.yml | sed /^#/d" + "effective:config": "circleci config process .circleci/config.yml | sed /^#/d", + "types": "tsc --noEmit --allowJs *.js cypress/integration/*.js" }, "peerDependencies": { "cypress": "*" diff --git a/support-utils.js b/support-utils.js new file mode 100644 index 000000000..0a2222426 --- /dev/null +++ b/support-utils.js @@ -0,0 +1,67 @@ +// @ts-check +// helper functions that are safe to use in the browser +// from support.js file - no file system access + +/** + * remove coverage for the spec files themselves, + * only keep "external" application source file coverage + */ +const filterSpecsFromCoverage = (totalCoverage, config = Cypress.config) => { + const integrationFolder = config('integrationFolder') + // @ts-ignore + const testFilePattern = config('testFiles') + + // test files chould be: + // wild card string "**/*.*" (default) + // wild card string "**/*spec.js" + // list of wild card strings or names ["**/*spec.js", "spec-one.js"] + const testFilePatterns = Array.isArray(testFilePattern) + ? testFilePattern + : [testFilePattern] + + const isUsingDefaultTestPattern = testFilePattern === '**/*.*' + + const isTestFile = filename => { + const matchedPattern = testFilePatterns.some(specPattern => + Cypress.minimatch(filename, specPattern) + ) + const matchedEndOfPath = testFilePatterns.some(specPattern => + filename.endsWith(specPattern) + ) + return matchedPattern || matchedEndOfPath + } + + const isInIntegrationFolder = filename => + filename.startsWith(integrationFolder) + + const isA = (fileCoverge, filename) => isInIntegrationFolder(filename) + const isB = (fileCoverge, filename) => isTestFile(filename) + + const isTestFileFilter = isUsingDefaultTestPattern ? isA : isB + + const coverage = Cypress._.omitBy(totalCoverage, isTestFileFilter) + return coverage +} + +/** + * Replace source-map's path by the corresponding absolute file path + * (coverage report wouldn't work with source-map path being relative + * or containing Webpack loaders and query parameters) + */ +function fixSourcePaths(coverage) { + Object.values(coverage).forEach(file => { + const { path: absolutePath, inputSourceMap } = file + const fileName = /([^\/\\]+)$/.exec(absolutePath)[1] + if (!inputSourceMap || !fileName) return + + if (inputSourceMap.sourceRoot) inputSourceMap.sourceRoot = '' + inputSourceMap.sources = inputSourceMap.sources.map(source => + source.includes(fileName) ? absolutePath : source + ) + }) +} + +module.exports = { + fixSourcePaths, + filterSpecsFromCoverage +} diff --git a/support.js b/support.js index b061b6d48..d17a34836 100644 --- a/support.js +++ b/support.js @@ -1,7 +1,7 @@ /// // @ts-check -const { filterSpecsFromCoverage } = require('./utils') +const { filterSpecsFromCoverage } = require('./support-utils') /** * Sends collected code coverage object to the backend code @@ -35,6 +35,7 @@ const logMessage = s => { const filterSupportFilesFromCoverage = totalCoverage => { const integrationFolder = Cypress.config('integrationFolder') const supportFile = Cypress.config('supportFile') + // @ts-ignore const supportFolder = Cypress.config('supportFolder') const isSupportFile = filename => filename === supportFile @@ -61,12 +62,14 @@ const registerHooks = () => { const hasE2ECoverage = () => Boolean(windowCoverageObjects.length) + // @ts-ignore const hasUnitTestCoverage = () => Boolean(window.__coverage__) before(() => { // we need to reset the coverage when running // in the interactive mode, otherwise the counters will // keep increasing every time we rerun the tests + // @ts-ignore cy.task('resetCoverage', { isInteractive: Cypress.config('isInteractive') }) }) @@ -133,7 +136,9 @@ const registerHooks = () => { // there might be server-side code coverage information // we should grab it once after all tests finish + // @ts-ignore const baseUrl = Cypress.config('baseUrl') || cy.state('window').origin + // @ts-ignore const runningEndToEndTests = baseUrl !== Cypress.config('proxyUrl') const specType = Cypress._.get(Cypress.spec, 'specType', 'integration') const isIntegrationSpec = specType === 'integration' @@ -152,7 +157,9 @@ const registerHooks = () => { log: false, failOnStatusCode: false }) - .then(r => Cypress._.get(r, 'body.coverage', null), { log: false }) + .then(r => { + return Cypress._.get(r, 'body.coverage', null) + }) .then(coverage => { if (!coverage) { // we did not get code coverage - this is the @@ -171,6 +178,7 @@ const registerHooks = () => { // then we will have unit test coverage // NOTE: spec iframe is NOT reset between the tests, so we can grab // the coverage information only once after all tests have finished + // @ts-ignore const unitTestCoverage = window.__coverage__ if (unitTestCoverage) { sendCoverage(unitTestCoverage, 'unit') diff --git a/utils.js b/task-utils.js similarity index 72% rename from utils.js rename to task-utils.js index be17e815f..1030fceb8 100644 --- a/utils.js +++ b/task-utils.js @@ -1,3 +1,6 @@ +// helper functions to use from "task.js" plugins code +// that need access to the file system + // @ts-check /// const { readFileSync, writeFileSync, existsSync } = require('fs') @@ -26,65 +29,6 @@ function checkAllPathsNotFound(nycFilename) { return allFilesAreMissing } -/** - * remove coverage for the spec files themselves, - * only keep "external" application source file coverage - */ -const filterSpecsFromCoverage = (totalCoverage, config = Cypress.config) => { - const integrationFolder = config('integrationFolder') - // @ts-ignore - const testFilePattern = config('testFiles') - - // test files chould be: - // wild card string "**/*.*" (default) - // wild card string "**/*spec.js" - // list of wild card strings or names ["**/*spec.js", "spec-one.js"] - const testFilePatterns = Array.isArray(testFilePattern) - ? testFilePattern - : [testFilePattern] - - const isUsingDefaultTestPattern = testFilePattern === '**/*.*' - - const isTestFile = filename => { - const matchedPattern = testFilePatterns.some(specPattern => - Cypress.minimatch(filename, specPattern) - ) - const matchedEndOfPath = testFilePatterns.some(specPattern => - filename.endsWith(specPattern) - ) - return matchedPattern || matchedEndOfPath - } - - const isInIntegrationFolder = filename => - filename.startsWith(integrationFolder) - - const isA = (fileCoverge, filename) => isInIntegrationFolder(filename) - const isB = (fileCoverge, filename) => isTestFile(filename) - - const isTestFileFilter = isUsingDefaultTestPattern ? isA : isB - - const coverage = Cypress._.omitBy(totalCoverage, isTestFileFilter) - return coverage -} - -/** - * Replace source-map's path by the corresponding absolute file path - * (coverage report wouldn't work with source-map path being relative - * or containing Webpack loaders and query parameters) - */ -function fixSourcePathes(coverage) { - Object.values(coverage).forEach(file => { - const { path: absolutePath, inputSourceMap } = file - const fileName = /([^\/\\]+)$/.exec(absolutePath)[1] - if (!inputSourceMap || !fileName) return - - if (inputSourceMap.sourceRoot) inputSourceMap.sourceRoot = '' - inputSourceMap.sources = inputSourceMap.sources.map(source => - source.includes(fileName) ? absolutePath : source - ) - }) -} - /** * A small debug utility to inspect paths saved in NYC output JSON file */ @@ -251,8 +195,6 @@ function tryFindingLocalFiles(nycFilename) { } module.exports = { - fixSourcePathes, - filterSpecsFromCoverage, showNycInfo, resolveRelativePaths, checkAllPathsNotFound, diff --git a/task.js b/task.js index 8d9135ff7..898cb28a9 100644 --- a/task.js +++ b/task.js @@ -4,12 +4,12 @@ const { join, resolve } = require('path') const { existsSync, mkdirSync, readFileSync, writeFileSync } = require('fs') const execa = require('execa') const { - fixSourcePathes, showNycInfo, resolveRelativePaths, checkAllPathsNotFound, tryFindingLocalFiles -} = require('./utils') +} = require('./task-utils') +const { fixSourcePaths } = require('./support-utils') const NYC = require('nyc') const debug = require('debug')('code-coverage') @@ -79,7 +79,7 @@ const tasks = { const coverage = JSON.parse(sentCoverage) debug('parsed sent coverage') - fixSourcePathes(coverage) + fixSourcePaths(coverage) const previous = existsSync(nycFilename) ? JSON.parse(readFileSync(nycFilename, 'utf8')) : istanbul.createCoverageMap({})