From 25321163a1f36a7493dfd0448b0728390b856c9b Mon Sep 17 00:00:00 2001 From: Emily Rohrbough Date: Fri, 31 Mar 2023 12:33:20 -0500 Subject: [PATCH 01/45] chore(deps): bump in json5 in system-tests projects (#26379) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- system-tests/projects/angular-13/yarn.lock | 6 +++--- system-tests/projects/angular-14/yarn.lock | 6 +++--- system-tests/projects/angular-15/yarn.lock | 6 +++--- .../projects/angular-cli-configured/yarn.lock | 6 +++--- .../projects/angular-cli-unconfigured/yarn.lock | 6 +++--- .../projects/angular-custom-config/yarn.lock | 6 +++--- .../projects/angular-custom-root/yarn.lock | 4 ++-- system-tests/projects/cra-4/yarn.lock | 12 ++++++------ system-tests/projects/cra-5/yarn.lock | 12 ++++++------ system-tests/projects/cra-ejected/yarn.lock | 12 ++++++------ .../projects/create-react-app-configured/yarn.lock | 14 ++++++-------- .../create-react-app-custom-index-html/yarn.lock | 12 ++++-------- .../create-react-app-unconfigured/yarn.lock | 10 ++++------ system-tests/projects/nextjs-configured/yarn.lock | 6 +++--- .../projects/nextjs-unconfigured/yarn.lock | 6 +++--- .../projects/no-specs-custom-pattern/yarn.lock | 12 ++++++------ system-tests/projects/no-specs-vue-2/yarn.lock | 12 ++++++------ system-tests/projects/no-specs/yarn.lock | 12 ++++++------ .../projects/nuxtjs-vue2-configured/yarn.lock | 14 ++++++-------- .../projects/nuxtjs-vue2-unconfigured/yarn.lock | 10 ++++------ system-tests/projects/nuxtjs2/yarn.lock | 10 ++++------ .../projects/plugin-code-coverage/yarn.lock | 6 +++--- yarn.lock | 12 ++++++------ 23 files changed, 99 insertions(+), 113 deletions(-) diff --git a/system-tests/projects/angular-13/yarn.lock b/system-tests/projects/angular-13/yarn.lock index e09d4c86775c..9bbfdb9c7ea7 100644 --- a/system-tests/projects/angular-13/yarn.lock +++ b/system-tests/projects/angular-13/yarn.lock @@ -3789,9 +3789,9 @@ json-schema-traverse@^1.0.0: integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== json5@^2.1.2, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonc-parser@3.0.0: version "3.0.0" diff --git a/system-tests/projects/angular-14/yarn.lock b/system-tests/projects/angular-14/yarn.lock index 46b617aa4610..dc80845bc81b 100644 --- a/system-tests/projects/angular-14/yarn.lock +++ b/system-tests/projects/angular-14/yarn.lock @@ -3737,9 +3737,9 @@ json-schema-traverse@^1.0.0: integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== json5@^2.1.2, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonc-parser@3.1.0: version "3.1.0" diff --git a/system-tests/projects/angular-15/yarn.lock b/system-tests/projects/angular-15/yarn.lock index 1099ec5285e8..bfdd3b9f40ae 100644 --- a/system-tests/projects/angular-15/yarn.lock +++ b/system-tests/projects/angular-15/yarn.lock @@ -3515,9 +3515,9 @@ json-schema-traverse@^1.0.0: integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== json5@^2.1.2, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonc-parser@3.2.0: version "3.2.0" diff --git a/system-tests/projects/angular-cli-configured/yarn.lock b/system-tests/projects/angular-cli-configured/yarn.lock index 4811bd3c14ac..a137f62f14ae 100644 --- a/system-tests/projects/angular-cli-configured/yarn.lock +++ b/system-tests/projects/angular-cli-configured/yarn.lock @@ -3697,9 +3697,9 @@ json-schema-traverse@^1.0.0: integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== json5@^2.1.2, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonc-parser@3.0.0: version "3.0.0" diff --git a/system-tests/projects/angular-cli-unconfigured/yarn.lock b/system-tests/projects/angular-cli-unconfigured/yarn.lock index 4811bd3c14ac..a137f62f14ae 100644 --- a/system-tests/projects/angular-cli-unconfigured/yarn.lock +++ b/system-tests/projects/angular-cli-unconfigured/yarn.lock @@ -3697,9 +3697,9 @@ json-schema-traverse@^1.0.0: integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== json5@^2.1.2, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonc-parser@3.0.0: version "3.0.0" diff --git a/system-tests/projects/angular-custom-config/yarn.lock b/system-tests/projects/angular-custom-config/yarn.lock index 1fa28f9d3c14..a5465737e06a 100644 --- a/system-tests/projects/angular-custom-config/yarn.lock +++ b/system-tests/projects/angular-custom-config/yarn.lock @@ -3726,9 +3726,9 @@ json-schema-traverse@^1.0.0: integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== json5@^2.1.2, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonc-parser@3.0.0: version "3.0.0" diff --git a/system-tests/projects/angular-custom-root/yarn.lock b/system-tests/projects/angular-custom-root/yarn.lock index e6cb5316b5e6..40b201ac6c49 100644 --- a/system-tests/projects/angular-custom-root/yarn.lock +++ b/system-tests/projects/angular-custom-root/yarn.lock @@ -3050,8 +3050,8 @@ json-schema-traverse@^1.0.0: resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" json5@^2.1.2, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz" + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" jsonc-parser@3.2.0: version "3.2.0" diff --git a/system-tests/projects/cra-4/yarn.lock b/system-tests/projects/cra-4/yarn.lock index 03191a303597..1f2acb0f95eb 100644 --- a/system-tests/projects/cra-4/yarn.lock +++ b/system-tests/projects/cra-4/yarn.lock @@ -6564,16 +6564,16 @@ json-stable-stringify-without-jsonify@^1.0.1: integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== dependencies: minimist "^1.2.0" json5@^2.1.2, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonfile@^4.0.0: version "4.0.0" diff --git a/system-tests/projects/cra-5/yarn.lock b/system-tests/projects/cra-5/yarn.lock index a3f0a504ef3c..5f3464a42813 100644 --- a/system-tests/projects/cra-5/yarn.lock +++ b/system-tests/projects/cra-5/yarn.lock @@ -5296,16 +5296,16 @@ json-stable-stringify-without-jsonify@^1.0.1: integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== dependencies: minimist "^1.2.0" json5@^2.1.2, json5@^2.2.0, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonfile@^6.0.1: version "6.1.0" diff --git a/system-tests/projects/cra-ejected/yarn.lock b/system-tests/projects/cra-ejected/yarn.lock index 3a9d4ae160f5..f19c8ec32f0d 100644 --- a/system-tests/projects/cra-ejected/yarn.lock +++ b/system-tests/projects/cra-ejected/yarn.lock @@ -4691,16 +4691,16 @@ json-stable-stringify-without-jsonify@^1.0.1: integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== dependencies: minimist "^1.2.0" json5@^2.1.2, json5@^2.2.0, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonfile@^6.0.1: version "6.1.0" diff --git a/system-tests/projects/create-react-app-configured/yarn.lock b/system-tests/projects/create-react-app-configured/yarn.lock index 2c047d022488..d0f169eaf910 100644 --- a/system-tests/projects/create-react-app-configured/yarn.lock +++ b/system-tests/projects/create-react-app-configured/yarn.lock @@ -6989,18 +6989,16 @@ json3@^3.3.2: integrity sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA== json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== dependencies: minimist "^1.2.0" json5@^2.1.2: - version "2.2.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" - integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== - dependencies: - minimist "^1.2.5" + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonfile@^4.0.0: version "4.0.0" diff --git a/system-tests/projects/create-react-app-custom-index-html/yarn.lock b/system-tests/projects/create-react-app-custom-index-html/yarn.lock index cf1742ea232f..4963b1e27ef1 100644 --- a/system-tests/projects/create-react-app-custom-index-html/yarn.lock +++ b/system-tests/projects/create-react-app-custom-index-html/yarn.lock @@ -6987,18 +6987,14 @@ json3@^3.3.2: integrity "sha1-f8EON1/FrkLEcFpcwKpvYr4wW4E= sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==" json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4= sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==" + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" dependencies: minimist "^1.2.0" json5@^2.1.2: - version "2.2.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" - integrity "sha1-Lf7+cgxrpSXZ69kJlQ8FFTFsiaM= sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==" - dependencies: - minimist "^1.2.5" + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" jsonfile@^4.0.0: version "4.0.0" diff --git a/system-tests/projects/create-react-app-unconfigured/yarn.lock b/system-tests/projects/create-react-app-unconfigured/yarn.lock index 5246475a90f0..1f58c340b807 100644 --- a/system-tests/projects/create-react-app-unconfigured/yarn.lock +++ b/system-tests/projects/create-react-app-unconfigured/yarn.lock @@ -5514,16 +5514,14 @@ json-stable-stringify-without-jsonify@^1.0.1: integrity "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4= sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==" + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" dependencies: minimist "^1.2.0" json5@^2.1.2, json5@^2.2.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity "sha1-ZV1Q7R5vla0aPKq6vSsO/aELOVw= sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==" + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" jsonfile@^6.0.1: version "6.1.0" diff --git a/system-tests/projects/nextjs-configured/yarn.lock b/system-tests/projects/nextjs-configured/yarn.lock index 6f41cfdbc43f..7b885d6cf9db 100644 --- a/system-tests/projects/nextjs-configured/yarn.lock +++ b/system-tests/projects/nextjs-configured/yarn.lock @@ -2638,6 +2638,7 @@ html-minifier-terser@^6.0.2: terser "^5.10.0" "html-webpack-plugin-4@npm:html-webpack-plugin@^4", html-webpack-plugin@^4.0.0: + name html-webpack-plugin-4 version "4.5.2" resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz#76fc83fa1a0f12dd5f7da0404a54e2699666bc12" dependencies: @@ -3175,9 +3176,8 @@ json-stable-stringify-without-jsonify@^1.0.1: integrity "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4= sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==" + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" dependencies: minimist "^1.2.0" diff --git a/system-tests/projects/nextjs-unconfigured/yarn.lock b/system-tests/projects/nextjs-unconfigured/yarn.lock index d12de857fc43..b90113c4ca68 100644 --- a/system-tests/projects/nextjs-unconfigured/yarn.lock +++ b/system-tests/projects/nextjs-unconfigured/yarn.lock @@ -2492,6 +2492,7 @@ html-minifier-terser@^6.0.2: terser "^5.10.0" "html-webpack-plugin-4@npm:html-webpack-plugin@^4", html-webpack-plugin@^4.0.0: + name html-webpack-plugin-4 version "4.5.2" resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz#76fc83fa1a0f12dd5f7da0404a54e2699666bc12" dependencies: @@ -2986,9 +2987,8 @@ json-stable-stringify-without-jsonify@^1.0.1: integrity "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4= sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==" + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" dependencies: minimist "^1.2.0" diff --git a/system-tests/projects/no-specs-custom-pattern/yarn.lock b/system-tests/projects/no-specs-custom-pattern/yarn.lock index 4d323d373489..80d3cec97d89 100644 --- a/system-tests/projects/no-specs-custom-pattern/yarn.lock +++ b/system-tests/projects/no-specs-custom-pattern/yarn.lock @@ -7075,16 +7075,16 @@ json-stable-stringify-without-jsonify@^1.0.1: integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== dependencies: minimist "^1.2.0" json5@^2.1.2, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonfile@^4.0.0: version "4.0.0" diff --git a/system-tests/projects/no-specs-vue-2/yarn.lock b/system-tests/projects/no-specs-vue-2/yarn.lock index 8b1a5154c1b9..de826d87bb92 100644 --- a/system-tests/projects/no-specs-vue-2/yarn.lock +++ b/system-tests/projects/no-specs-vue-2/yarn.lock @@ -3433,16 +3433,16 @@ json-schema-traverse@^1.0.0: integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== dependencies: minimist "^1.2.0" json5@^2.1.2, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonfile@^6.0.1: version "6.1.0" diff --git a/system-tests/projects/no-specs/yarn.lock b/system-tests/projects/no-specs/yarn.lock index c3283774170e..ac1d9c43269f 100644 --- a/system-tests/projects/no-specs/yarn.lock +++ b/system-tests/projects/no-specs/yarn.lock @@ -6613,16 +6613,16 @@ json-stable-stringify-without-jsonify@^1.0.1: integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== dependencies: minimist "^1.2.0" json5@^2.1.2, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonfile@^4.0.0: version "4.0.0" diff --git a/system-tests/projects/nuxtjs-vue2-configured/yarn.lock b/system-tests/projects/nuxtjs-vue2-configured/yarn.lock index 28e37d3c5d30..738ff094ccee 100644 --- a/system-tests/projects/nuxtjs-vue2-configured/yarn.lock +++ b/system-tests/projects/nuxtjs-vue2-configured/yarn.lock @@ -4441,18 +4441,16 @@ json-schema-traverse@^0.4.1: integrity "sha1-afaofZUTq4u4/mO9sJecRI5oRmA= sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4= sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==" + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== dependencies: minimist "^1.2.0" json5@^2.1.2: - version "2.2.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" - integrity "sha1-Lf7+cgxrpSXZ69kJlQ8FFTFsiaM= sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==" - dependencies: - minimist "^1.2.5" + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonfile@^4.0.0: version "4.0.0" diff --git a/system-tests/projects/nuxtjs-vue2-unconfigured/yarn.lock b/system-tests/projects/nuxtjs-vue2-unconfigured/yarn.lock index 0941a4528cb7..f24e8d6ed10c 100644 --- a/system-tests/projects/nuxtjs-vue2-unconfigured/yarn.lock +++ b/system-tests/projects/nuxtjs-vue2-unconfigured/yarn.lock @@ -4437,16 +4437,14 @@ json-schema-traverse@^0.4.1: integrity "sha1-afaofZUTq4u4/mO9sJecRI5oRmA= sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4= sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==" + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" dependencies: minimist "^1.2.0" json5@^2.1.2: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity "sha1-ZV1Q7R5vla0aPKq6vSsO/aELOVw= sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==" + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" jsonfile@^4.0.0: version "4.0.0" diff --git a/system-tests/projects/nuxtjs2/yarn.lock b/system-tests/projects/nuxtjs2/yarn.lock index 45f77eb0f0d1..c874043d08b1 100644 --- a/system-tests/projects/nuxtjs2/yarn.lock +++ b/system-tests/projects/nuxtjs2/yarn.lock @@ -4430,16 +4430,14 @@ json-schema-traverse@^0.4.1: integrity "sha1-afaofZUTq4u4/mO9sJecRI5oRmA= sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity "sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4= sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==" + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" dependencies: minimist "^1.2.0" json5@^2.1.2, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity "sha1-ZV1Q7R5vla0aPKq6vSsO/aELOVw= sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==" + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" jsonfile@^4.0.0: version "4.0.0" diff --git a/system-tests/projects/plugin-code-coverage/yarn.lock b/system-tests/projects/plugin-code-coverage/yarn.lock index 3437d41378ff..edb6a5d796b4 100644 --- a/system-tests/projects/plugin-code-coverage/yarn.lock +++ b/system-tests/projects/plugin-code-coverage/yarn.lock @@ -2576,9 +2576,9 @@ json-stable-stringify@~0.0.0: jsonify "~0.0.0" json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonfile@^6.0.1: version "6.1.0" diff --git a/yarn.lock b/yarn.lock index fb04040a7ba0..3d081033689d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18915,16 +18915,16 @@ json3@^3.3.3: integrity sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA== json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== dependencies: minimist "^1.2.0" json5@^2.1.2, json5@^2.2.0, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonc-eslint-parser@^1.0.1: version "1.1.0" From 9dd3b6505078d7fe5d75f1f0613d861829a412cd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 31 Mar 2023 12:39:15 -0500 Subject: [PATCH 02/45] chore(deps): bump set-getter from 0.1.0 to 0.1.1 (#26345) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Emily Rohrbough --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 3d081033689d..e7fe6dd1c40b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -26418,9 +26418,9 @@ set-blocking@^2.0.0, set-blocking@~2.0.0: integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= set-getter@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/set-getter/-/set-getter-0.1.0.tgz#d769c182c9d5a51f409145f2fba82e5e86e80376" - integrity sha1-12nBgsnVpR9AkUXy+6guXoboA3Y= + version "0.1.1" + resolved "https://registry.yarnpkg.com/set-getter/-/set-getter-0.1.1.tgz#a3110e1b461d31a9cfc8c5c9ee2e9737ad447102" + integrity sha512-9sVWOy+gthr+0G9DzqqLaYNA7+5OKkSmcqjL9cBpDEaZrr3ShQlyX2cZ/O/ozE41oxn/Tt0LGEM/w4Rub3A3gw== dependencies: to-object-path "^0.3.0" From 849d4d32a0eccb0f345168cddde730aa729c408a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 31 Mar 2023 13:46:06 -0400 Subject: [PATCH 03/45] chore(deps): bump vm2 from 3.9.5 to 3.9.14 (#26335) Bumps [vm2](https://github.com/patriksimek/vm2) from 3.9.5 to 3.9.14. - [Release notes](https://github.com/patriksimek/vm2/releases) - [Changelog](https://github.com/patriksimek/vm2/blob/master/CHANGELOG.md) - [Commits](https://github.com/patriksimek/vm2/compare/3.9.5...3.9.14) --- updated-dependencies: - dependency-name: vm2 dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Emily Rohrbough --- yarn.lock | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index e7fe6dd1c40b..f0caffae1746 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7998,6 +7998,11 @@ acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.1.tgz#0a3f9cbecc4ec3bea6f0a80b66ae8dd2da250b73" integrity sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA== +acorn@^8.7.0: + version "8.8.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" + integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== + address@^1.0.1: version "1.1.2" resolved "https://registry.yarnpkg.com/address/-/address-1.1.2.tgz#bf1116c9c758c51b7a933d296b72c221ed9428b6" @@ -29968,9 +29973,12 @@ vm-browserify@^1.0.1: integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== vm2@^3.9.3: - version "3.9.5" - resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.9.5.tgz#5288044860b4bbace443101fcd3bddb2a0aa2496" - integrity sha512-LuCAHZN75H9tdrAiLFf030oW7nJV5xwNMuk1ymOZwopmuK3d2H4L1Kv4+GFHgarKiLfXXLFU+7LDABHnwOkWng== + version "3.9.14" + resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.9.14.tgz#964042b474cf1e6e4f475a39144773cdb9deb734" + integrity sha512-HgvPHYHeQy8+QhzlFryvSteA4uQLBCOub02mgqdR+0bN/akRZ48TGB1v0aCv7ksyc0HXx16AZtMHKS38alc6TA== + dependencies: + acorn "^8.7.0" + acorn-walk "^8.2.0" void-elements@^3.1.0: version "3.1.0" From 1c385e0d424f4c5ee50541626a6af994dcb45b49 Mon Sep 17 00:00:00 2001 From: Mike Plummer Date: Fri, 31 Mar 2023 16:00:12 -0500 Subject: [PATCH 04/45] fix: Detect CT framework when unconfigured project opened with `--component` (#26306) Co-authored-by: Ryan Manuel --- cli/CHANGELOG.md | 1 + .../src/actions/ProjectActions.ts | 4 +++ .../src/data/ProjectLifecycleManager.ts | 25 +++++++++++--- .../schemaTypes/objectTypes/gql-Mutation.ts | 12 +------ .../launchpad/cypress/e2e/open-mode.cy.ts | 33 ++++++++++++++----- 5 files changed, 52 insertions(+), 23 deletions(-) diff --git a/cli/CHANGELOG.md b/cli/CHANGELOG.md index 079fcd0db276..85e2cf6c665e 100644 --- a/cli/CHANGELOG.md +++ b/cli/CHANGELOG.md @@ -6,6 +6,7 @@ _Released 04/11/2023 (PENDING)_ **Bugfixes:** - Capture the [Azure](https://azure.microsoft.com/) CI provider's environment variable [`SYSTEM_PULLREQUEST_PULLREQUESTNUMBER`](https://learn.microsoft.com/en-us/azure/devops/pipelines/build/variables?view=azure-devops&tabs=yaml#system-variables-devops-services) to display the linked PR number in the Cloud. Addressed in [#26215](https://github.com/cypress-io/cypress/pull/26215). + - Fixed an issue in the onboarding wizard where project framework & bundler would not be auto-detected when opening directly into component testing mode using the `--component` CLI flag. Fixes [#22777](https://github.com/cypress-io/cypress/issues/22777). **Dependency Updates:** diff --git a/packages/data-context/src/actions/ProjectActions.ts b/packages/data-context/src/actions/ProjectActions.ts index a0d0e887dd61..e0f52325c0b1 100644 --- a/packages/data-context/src/actions/ProjectActions.ts +++ b/packages/data-context/src/actions/ProjectActions.ts @@ -130,6 +130,10 @@ export class ProjectActions { this.ctx.lifecycleManager.setAndLoadCurrentTestingType(type) } + async initializeProjectSetup (type: TestingType) { + await this.ctx.lifecycleManager.initializeProjectSetup(type) + } + async setCurrentProject (projectRoot: string) { await this.updateProjectList(() => this.api.insertProjectToCache(projectRoot)) diff --git a/packages/data-context/src/data/ProjectLifecycleManager.ts b/packages/data-context/src/data/ProjectLifecycleManager.ts index f163e804143a..fdce2f5c1fa0 100644 --- a/packages/data-context/src/data/ProjectLifecycleManager.ts +++ b/packages/data-context/src/data/ProjectLifecycleManager.ts @@ -752,10 +752,27 @@ export class ProjectLifecycleManager { if (this._projectRoot && testingType && await this.waitForInitializeSuccess()) { this.setAndLoadCurrentTestingType(testingType) - if (testingType === 'e2e' && !this.ctx.migration.needsCypressJsonMigration() && !this.isTestingTypeConfigured(testingType)) { - // E2E doesn't have a wizard, so if we have a testing type on load we just create/update their cypress.config.js. - await this.ctx.actions.wizard.scaffoldTestingType() - } + await this.initializeProjectSetup(testingType) + } + } + + /** + * Prepare the setup process for a project if one exists, otherwise complete setup + * + * @param testingType + * @returns + */ + async initializeProjectSetup (testingType: TestingType) { + if (this.isTestingTypeConfigured(testingType)) { + return + } + + if (testingType === 'e2e' && !this.ctx.migration.needsCypressJsonMigration()) { + // E2E doesn't have a wizard, so if we have a testing type on load we just create/update their cypress.config.js. + await this.ctx.actions.wizard.scaffoldTestingType() + } else if (testingType === 'component') { + await this.ctx.actions.wizard.detectFrameworks() + await this.ctx.actions.wizard.initialize() } } diff --git a/packages/graphql/src/schemaTypes/objectTypes/gql-Mutation.ts b/packages/graphql/src/schemaTypes/objectTypes/gql-Mutation.ts index 9da9fe8c3724..058f9e01e1e5 100644 --- a/packages/graphql/src/schemaTypes/objectTypes/gql-Mutation.ts +++ b/packages/graphql/src/schemaTypes/objectTypes/gql-Mutation.ts @@ -178,17 +178,7 @@ export const mutation = mutationType({ resolve: async (source, args, ctx) => { ctx.actions.project.setAndLoadCurrentTestingType(args.testingType) - // if necessary init the wizard for configuration - if (ctx.coreData.currentTestingType && !ctx.lifecycleManager.isTestingTypeConfigured(ctx.coreData.currentTestingType)) { - // Component Testing has a wizard to help users configure their project - if (ctx.coreData.currentTestingType === 'component') { - await ctx.actions.wizard.detectFrameworks() - await ctx.actions.wizard.initialize() - } else { - // E2E doesn't have such a wizard, we just create/update their cypress.config.js. - await ctx.actions.wizard.scaffoldTestingType() - } - } + await ctx.actions.project.initializeProjectSetup(args.testingType) return {} }, diff --git a/packages/launchpad/cypress/e2e/open-mode.cy.ts b/packages/launchpad/cypress/e2e/open-mode.cy.ts index cf813aabeede..6cf172032231 100644 --- a/packages/launchpad/cypress/e2e/open-mode.cy.ts +++ b/packages/launchpad/cypress/e2e/open-mode.cy.ts @@ -109,14 +109,31 @@ describe('Launchpad: Open Mode', () => { }) }) - it('goes to component test onboarding when launched with --component and not configured', () => { - cy.scaffoldProject('launchpad') - cy.openProject('launchpad', ['--component']) - cy.visitLaunchpad() - cy.skipWelcome() - cy.get('[data-cy=header-bar-content]').contains('component testing', { matchCase: false }) - // Component testing is not configured for the todo project - cy.get('h1').should('contain', 'Project setup') + describe('when launched with --component and not configured', () => { + beforeEach(() => { + cy.scaffoldProject('react-vite-ts-unconfigured') + cy.openProject('react-vite-ts-unconfigured', ['--component']) + cy.visitLaunchpad() + cy.skipWelcome() + }) + + it('goes to component test onboarding', () => { + cy.get('[data-cy=header-bar-content]').contains('component testing', { matchCase: false }) + // Component testing is not configured for the todo project + cy.get('h1').should('contain', 'Project setup') + }) + + it('detects CT project framework', () => { + cy.get('[data-testid="select-framework"]').within(() => { + cy.contains('React.js').should('be.visible') + cy.contains('(detected)').should('be.visible') + }) + + cy.get('[data-testid="select-bundler"]').within(() => { + cy.contains('Vite').should('be.visible') + cy.contains('(detected)').should('be.visible') + }) + }) }) // since circle cannot have firefox installed by default, From b34897241ea9255a73fed92905d1629ffbfe5540 Mon Sep 17 00:00:00 2001 From: Ben M Date: Mon, 3 Apr 2023 13:39:44 -0400 Subject: [PATCH 05/45] chore: created a new github action to handle new comments better (#26234) * chore: created a new github action to handle new comments better --------- Co-authored-by: Emily Rohrbough Co-authored-by: Matt Schile --- .../triage_add_stale_issue_to_board.yml | 23 ---- .../workflows/triage_closed_issue_comment.yml | 104 ------------------ .../workflows/triage_handle_new_comments.yml | 32 ++++++ 3 files changed, 32 insertions(+), 127 deletions(-) delete mode 100644 .github/workflows/triage_add_stale_issue_to_board.yml delete mode 100644 .github/workflows/triage_closed_issue_comment.yml create mode 100644 .github/workflows/triage_handle_new_comments.yml diff --git a/.github/workflows/triage_add_stale_issue_to_board.yml b/.github/workflows/triage_add_stale_issue_to_board.yml deleted file mode 100644 index 1d7e2a93cf71..000000000000 --- a/.github/workflows/triage_add_stale_issue_to_board.yml +++ /dev/null @@ -1,23 +0,0 @@ -name: 'Add stale issue/PR to Triage Board' -on: - issues: - types: [labeled] - pull_request: - types: [labeled] - -jobs: - add-to-triage-project-board: - if: >- - ( - contains(github.event.pull_request.labels.*.name, 'stale') || - contains(github.event.issue.labels.*.name, 'stale') - ) - uses: cypress-io/cypress/.github/workflows/triage_add_to_project.yml@develop - secrets: inherit - update-status-to-awaiting-response: - needs: add-to-triage-project-board - uses: cypress-io/cypress/.github/workflows/triage_update_status.yml@develop - with: - status: 'Awaiting Response' - secrets: inherit - diff --git a/.github/workflows/triage_closed_issue_comment.yml b/.github/workflows/triage_closed_issue_comment.yml deleted file mode 100644 index fcc26b44118b..000000000000 --- a/.github/workflows/triage_closed_issue_comment.yml +++ /dev/null @@ -1,104 +0,0 @@ -name: 'Triage: closed issue comment' -on: - # makes this workflow reusable - workflow_call: - secrets: - ADD_TO_TRIAGE_BOARD_TOKEN: - required: true - issue_comment: - types: [created] - issues: - types: [closed] -jobs: - move-to-new-issue-status: - runs-on: ubuntu-latest - steps: - - name: Make sure comment was added more than 20 seconds after issue closed - run: | - time_diff=$(($(date +%s -d "${{ github.event.comment.created_at }}" ) - $(date +%s -d "${{ github.event.issue.closed_at }}" ))) - echo 'COMMENT_ADDED_AFTER_CLOSE='$(($time_diff > 20)) >> $GITHUB_ENV - - - name: Get project data - env: - GITHUB_TOKEN: ${{ secrets.ADD_TO_TRIAGE_BOARD_TOKEN }} - ORGANIZATION: 'cypress-io' - REPOSITORY: ${{ github.event.repository.name }} - PROJECT_NUMBER: 9 - ISSUE_NUMBER: ${{ github.event.issue.number }} - if: | - env.COMMENT_ADDED_AFTER_CLOSE == '1' && - github.event.sender.login != 'cypress-bot[bot]' && - github.event.sender.login != 'github-actions[bot]' && - github.event.issue.pull_request == null - run: | - gh api graphql -f query=' - query($org: String!, $repo: String!, $project: Int!, $issue: Int!) { - organization(login: $org) { - repository(name: $repo) { - issue(number: $issue) { - projectItems(first: 10, includeArchived: false) { - nodes { - id - fieldValueByName(name: "Status") { - ... on ProjectV2ItemFieldSingleSelectValue { - name - field { - ... on ProjectV2SingleSelectField { - project { - ... on ProjectV2 { - id - number - } - } - } - } - } - } - } - } - } - } - projectV2(number: $project) { - field(name: "Status") { - ... on ProjectV2SingleSelectField { - id - options { - id - name - } - } - } - } - } - }' -f org=$ORGANIZATION -f repo=$REPOSITORY -F issue=$ISSUE_NUMBER -F project=$PROJECT_NUMBER > project_data.json - - echo 'PROJECT_ID='$(jq -r '.data.organization.repository.issue.projectItems.nodes[].fieldValueByName.field.project | select(.number == ${{ env.PROJECT_NUMBER }}) | .id' project_data.json) >> $GITHUB_ENV - echo 'PROJECT_ITEM_ID='$(jq -r '.data.organization.repository.issue.projectItems.nodes[] | select(.fieldValueByName.field.project.number == ${{ env.PROJECT_NUMBER }}) | .id' project_data.json) >> $GITHUB_ENV - echo 'STATUS_FIELD_ID='$(jq -r '.data.organization.projectV2.field | .id' project_data.json) >> $GITHUB_ENV - echo 'STATUS='$(jq -r '.data.organization.repository.issue.projectItems.nodes[].fieldValueByName | select(.field.project.number == ${{ env.PROJECT_NUMBER }}) | .name' project_data.json) >> $GITHUB_ENV - echo 'NEW_ISSUE_OPTION_ID='$(jq -r '.data.organization.projectV2.field.options[] | select(.name== "New Issue") | .id' project_data.json) >> $GITHUB_ENV - - name: Move issue to New Issue status - env: - GITHUB_TOKEN: ${{ secrets.ADD_TO_TRIAGE_BOARD_TOKEN }} - if: env.STATUS == 'Closed' - run: | - gh api graphql -f query=' - mutation ( - $project: ID! - $item: ID! - $status_field: ID! - $status_value: String! - ) { - updateProjectV2ItemFieldValue(input: { - projectId: $project - itemId: $item - fieldId: $status_field - value: { - singleSelectOptionId: $status_value - } - }) { - projectV2Item { - id - } - } - }' -f project=$PROJECT_ID -f item=$PROJECT_ITEM_ID -f status_field=$STATUS_FIELD_ID -f status_value=$NEW_ISSUE_OPTION_ID diff --git a/.github/workflows/triage_handle_new_comments.yml b/.github/workflows/triage_handle_new_comments.yml new file mode 100644 index 000000000000..f2b2dbce4ac9 --- /dev/null +++ b/.github/workflows/triage_handle_new_comments.yml @@ -0,0 +1,32 @@ +name: 'Handle Issue/PR Comment Workflow' +on: + # makes this workflow reusable + workflow_call: + secrets: + TRIAGE_BOARD_TOKEN: + required: true + + issue_comment: + types: [created] + +jobs: + handle-comment-scenarios: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v3 + with: + repository: 'cypress-io/release-automations' + ref: 'master' + ssh-key: ${{ secrets.WORKFLOW_DEPLOY_KEY }} + - name: Set up Node.js + uses: actions/setup-node@v3 + with: + node-version: '16' + - name: Run comment_workflow.js Script + uses: actions/github-script@v6 + with: + github-token: ${{ secrets.TRIAGE_BOARD_TOKEN }} + script: | + const script = require('./scripts/triage/comment_workflow.js') + await script.handleComment(github, context); From 3f8769e85756350184ee7949d90a356b230876f6 Mon Sep 17 00:00:00 2001 From: Lachlan Miller Date: Tue, 4 Apr 2023 11:59:34 +1000 Subject: [PATCH 06/45] chore: remove debug logging on by default (#26411) * fix: remove logging * added changelog entry --- cli/CHANGELOG.md | 3 +++ packages/app/src/graphql.ts | 2 -- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/cli/CHANGELOG.md b/cli/CHANGELOG.md index 85e2cf6c665e..e9408752bca3 100644 --- a/cli/CHANGELOG.md +++ b/cli/CHANGELOG.md @@ -12,6 +12,9 @@ _Released 04/11/2023 (PENDING)_ - Upgraded [`minimist`](https://www.npmjs.com/package/minimist) from `1.2.6` to `1.2.8` to address this [CVE-2021-44906](https://github.com/advisories/GHSA-xvch-5gv4-984h) NVD security vulnerability. Addressed in [#26254](https://github.com/cypress-io/cypress/pull/26254). +**Misc:** +- Removed unintentional debug logs. Address in [#26411](https://github.com/cypress-io/cypress/pull/26411) + ## 12.9.0 _Released 03/28/2023_ diff --git a/packages/app/src/graphql.ts b/packages/app/src/graphql.ts index 7936c4ebe797..0a778a7f85b7 100644 --- a/packages/app/src/graphql.ts +++ b/packages/app/src/graphql.ts @@ -1,8 +1,6 @@ import Debug from 'debug' import { useSubscription as urqlUseSubscription } from '@urql/vue' -localStorage.debug = 'cypress:app:graphql-subscription' - const debugSubscription = Debug('cypress:app:graphql-subscription') export const useSubscription: typeof urqlUseSubscription = (...args) => { From a31f1f0c251fb33aca7dab55a3fc6a549b54c13d Mon Sep 17 00:00:00 2001 From: Ben M Date: Tue, 4 Apr 2023 14:17:26 -0400 Subject: [PATCH 07/45] chore(dependency): tweaking renovate bot settings (#26428) --- renovate.json | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/renovate.json b/renovate.json index cf880561adab..247c6df70725 100644 --- a/renovate.json +++ b/renovate.json @@ -1,7 +1,6 @@ { "extends": [ - "config:base", - ":semanticCommitScopeDisabled" + "config:base" ], "automerge": false, "major": { @@ -18,11 +17,11 @@ ], "commitMessageSuffix": "🌟", "prHourlyLimit": 2, - "prConcurrentLimit": 10, + "prConcurrentLimit": 5, "updateNotScheduled": false, "timezone": "America/New_York", "schedule": [ - "before 5am every weekday" + "before 5am every Tuesday" ], "packageRules": [ { From 05b5170ea0a0b6e2bba6e2960a97fae5b3278381 Mon Sep 17 00:00:00 2001 From: Ben M Date: Tue, 4 Apr 2023 14:47:05 -0400 Subject: [PATCH 08/45] Update renovate.json --- renovate.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/renovate.json b/renovate.json index 247c6df70725..de04a0bf5909 100644 --- a/renovate.json +++ b/renovate.json @@ -21,7 +21,7 @@ "updateNotScheduled": false, "timezone": "America/New_York", "schedule": [ - "before 5am every Tuesday" + "before 5am on Tuesday" ], "packageRules": [ { From 982185e86c663b114a5b6628ec94a11cc65cd740 Mon Sep 17 00:00:00 2001 From: Ben M Date: Tue, 4 Apr 2023 15:32:14 -0400 Subject: [PATCH 09/45] Update renovate.json --- renovate.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/renovate.json b/renovate.json index de04a0bf5909..7be35d22303f 100644 --- a/renovate.json +++ b/renovate.json @@ -21,7 +21,7 @@ "updateNotScheduled": false, "timezone": "America/New_York", "schedule": [ - "before 5am on Tuesday" + "every weekend" ], "packageRules": [ { From dbec59840b3984292980672468afa20b151fe6d2 Mon Sep 17 00:00:00 2001 From: Bill Glesias Date: Tue, 4 Apr 2023 15:47:20 -0400 Subject: [PATCH 10/45] chore: update devtools protocol (#26410) --- packages/server/package.json | 2 +- yarn.lock | 15 +++++---------- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/packages/server/package.json b/packages/server/package.json index 730edc0c099f..eda4692fd073 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -167,7 +167,7 @@ "chai-uuid": "1.0.6", "chrome-har-capturer": "0.13.4", "cross-env": "6.0.3", - "devtools-protocol": "0.0.839267", + "devtools-protocol": "0.0.1124027", "eol": "0.9.1", "eventsource": "2.0.2", "https-proxy-agent": "3.0.1", diff --git a/yarn.lock b/yarn.lock index f0caffae1746..24a4c114802c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7993,12 +7993,7 @@ acorn@^7.0.0, acorn@^7.1.1, acorn@^7.4.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.1: - version "8.8.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.1.tgz#0a3f9cbecc4ec3bea6f0a80b66ae8dd2da250b73" - integrity sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA== - -acorn@^8.7.0: +acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.0, acorn@^8.7.1: version "8.8.2" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== @@ -12755,10 +12750,10 @@ detective@^5.0.2: defined "^1.0.0" minimist "^1.1.1" -devtools-protocol@0.0.839267: - version "0.0.839267" - resolved "https://registry.yarnpkg.com/devtools-protocol/-/devtools-protocol-0.0.839267.tgz#6f437369e4664dbd9849723b886f8cedf28607ac" - integrity sha512-1DcPo/3PGJVw3INnq2NXO4onJiNFhWJW4YmSRQIiuDK/sW5OD1/LfXCcetrPvMvOBnz5c22DlpnpbYkJRE8MZw== +devtools-protocol@0.0.1124027: + version "0.0.1124027" + resolved "https://registry.yarnpkg.com/devtools-protocol/-/devtools-protocol-0.0.1124027.tgz#a5bd4af77a8a2d84c035d178ee01a4c47cdc2d45" + integrity sha512-OT2sdgQn4llM9/tVcCvoty733KFFIlXVvESceJsfazhmg/dF7C5e3Z8cIN8jNwIikixuE5rufGtD1cvKHXfOcQ== devtools-protocol@0.0.927104: version "0.0.927104" From 417d45ebd3a2e2fc2a907e9dd30b36bc80512b97 Mon Sep 17 00:00:00 2001 From: Adam Stone-Lord Date: Tue, 4 Apr 2023 15:21:38 -0600 Subject: [PATCH 11/45] chore: fix changelog spacing (#26430) Co-authored-by: Mike Plummer --- cli/CHANGELOG.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/cli/CHANGELOG.md b/cli/CHANGELOG.md index e9408752bca3..bfe2e7220702 100644 --- a/cli/CHANGELOG.md +++ b/cli/CHANGELOG.md @@ -8,13 +8,14 @@ _Released 04/11/2023 (PENDING)_ - Capture the [Azure](https://azure.microsoft.com/) CI provider's environment variable [`SYSTEM_PULLREQUEST_PULLREQUESTNUMBER`](https://learn.microsoft.com/en-us/azure/devops/pipelines/build/variables?view=azure-devops&tabs=yaml#system-variables-devops-services) to display the linked PR number in the Cloud. Addressed in [#26215](https://github.com/cypress-io/cypress/pull/26215). - Fixed an issue in the onboarding wizard where project framework & bundler would not be auto-detected when opening directly into component testing mode using the `--component` CLI flag. Fixes [#22777](https://github.com/cypress-io/cypress/issues/22777). +**Misc:** + +- Removed unintentional debug logs. Addressed in [#26411](https://github.com/cypress-io/cypress/pull/26411). + **Dependency Updates:** - Upgraded [`minimist`](https://www.npmjs.com/package/minimist) from `1.2.6` to `1.2.8` to address this [CVE-2021-44906](https://github.com/advisories/GHSA-xvch-5gv4-984h) NVD security vulnerability. Addressed in [#26254](https://github.com/cypress-io/cypress/pull/26254). -**Misc:** -- Removed unintentional debug logs. Address in [#26411](https://github.com/cypress-io/cypress/pull/26411) - ## 12.9.0 _Released 03/28/2023_ From 80fcb8bf18aa13ac6d89ff8afaa7b64e5afcb549 Mon Sep 17 00:00:00 2001 From: Lachlan Miller Date: Thu, 6 Apr 2023 13:09:03 +1000 Subject: [PATCH 12/45] chore: specify TS 5.x support (#26413) * chore: specify TS 5.x support * add test * separate project --- packages/scaffold-config/src/dependencies.ts | 2 +- .../projects/ts-proj-5/cypress.config.ts | 12 + .../projects/ts-proj-5/cypress/e2e/app.cy.ts | 6 + .../projects/ts-proj-5/cypress/e2e/math.ts | 3 + .../cypress/support/component-index.html | 3 + .../projects/ts-proj-5/cypress/support/e2e.ts | 20 ++ system-tests/projects/ts-proj-5/package.json | 9 + system-tests/projects/ts-proj-5/src/foo.cy.ts | 7 + system-tests/projects/ts-proj-5/tsconfig.json | 5 + system-tests/projects/ts-proj-5/yarn.lock | 232 ++++++++++++++++++ system-tests/test/typescript_plugins_spec.ts | 7 + 11 files changed, 305 insertions(+), 1 deletion(-) create mode 100644 system-tests/projects/ts-proj-5/cypress.config.ts create mode 100644 system-tests/projects/ts-proj-5/cypress/e2e/app.cy.ts create mode 100644 system-tests/projects/ts-proj-5/cypress/e2e/math.ts create mode 100644 system-tests/projects/ts-proj-5/cypress/support/component-index.html create mode 100644 system-tests/projects/ts-proj-5/cypress/support/e2e.ts create mode 100644 system-tests/projects/ts-proj-5/package.json create mode 100644 system-tests/projects/ts-proj-5/src/foo.cy.ts create mode 100644 system-tests/projects/ts-proj-5/tsconfig.json create mode 100644 system-tests/projects/ts-proj-5/yarn.lock diff --git a/packages/scaffold-config/src/dependencies.ts b/packages/scaffold-config/src/dependencies.ts index 436b18af8d43..c6ca73d3b4e8 100644 --- a/packages/scaffold-config/src/dependencies.ts +++ b/packages/scaffold-config/src/dependencies.ts @@ -49,7 +49,7 @@ export const WIZARD_DEPENDENCY_TYPESCRIPT = { package: 'typescript', installer: 'typescript', description: 'TypeScript is a language for application-scale JavaScript', - minVersion: '^=3.0.0 || ^=4.0.0', + minVersion: '^=3.4.0 || ^=4.0.0' || '^=5.0.0', } as const export const WIZARD_DEPENDENCY_REACT_SCRIPTS = { diff --git a/system-tests/projects/ts-proj-5/cypress.config.ts b/system-tests/projects/ts-proj-5/cypress.config.ts new file mode 100644 index 000000000000..45392e5749f7 --- /dev/null +++ b/system-tests/projects/ts-proj-5/cypress.config.ts @@ -0,0 +1,12 @@ +import { defineConfig } from 'cypress' + +export default defineConfig({ + e2e: {}, + component: { + supportFile: false, + devServer: { + bundler: 'vite', + viteConfig: {}, + }, + }, +}) diff --git a/system-tests/projects/ts-proj-5/cypress/e2e/app.cy.ts b/system-tests/projects/ts-proj-5/cypress/e2e/app.cy.ts new file mode 100644 index 000000000000..ceacd67310bb --- /dev/null +++ b/system-tests/projects/ts-proj-5/cypress/e2e/app.cy.ts @@ -0,0 +1,6 @@ +import { add } from './math' + +it('is true', () => { + // @ts-ignore + expect(add(1, 2)).to.eq(3) +}) diff --git a/system-tests/projects/ts-proj-5/cypress/e2e/math.ts b/system-tests/projects/ts-proj-5/cypress/e2e/math.ts new file mode 100644 index 000000000000..e29e78dc31cf --- /dev/null +++ b/system-tests/projects/ts-proj-5/cypress/e2e/math.ts @@ -0,0 +1,3 @@ +export const add = (a: number, b: number) => { + return a + b +} diff --git a/system-tests/projects/ts-proj-5/cypress/support/component-index.html b/system-tests/projects/ts-proj-5/cypress/support/component-index.html new file mode 100644 index 000000000000..22cfc6d67c71 --- /dev/null +++ b/system-tests/projects/ts-proj-5/cypress/support/component-index.html @@ -0,0 +1,3 @@ + +
+ \ No newline at end of file diff --git a/system-tests/projects/ts-proj-5/cypress/support/e2e.ts b/system-tests/projects/ts-proj-5/cypress/support/e2e.ts new file mode 100644 index 000000000000..503f34fc155a --- /dev/null +++ b/system-tests/projects/ts-proj-5/cypress/support/e2e.ts @@ -0,0 +1,20 @@ +// *********************************************************** +// This example support/e2e.ts is processed and +// loaded automatically before your test files. +// +// This is a great place to put global configuration and +// behavior that modifies Cypress. +// +// You can change the location of this file or turn off +// automatically serving support files with the +// 'supportFile' configuration option. +// +// You can read more here: +// https://on.cypress.io/configuration +// *********************************************************** + +// Import commands.js using ES2015 syntax: +// import './commands' + +// Alternatively you can use CommonJS syntax: +// require('./commands') diff --git a/system-tests/projects/ts-proj-5/package.json b/system-tests/projects/ts-proj-5/package.json new file mode 100644 index 000000000000..a594036123e1 --- /dev/null +++ b/system-tests/projects/ts-proj-5/package.json @@ -0,0 +1,9 @@ +{ + "name": "@test-project/ts-proj-5", + "version": "0.0.0-test", + "private": true, + "dependencies": { + "typescript": "5.0.3", + "vite": "4.2.1" + } +} diff --git a/system-tests/projects/ts-proj-5/src/foo.cy.ts b/system-tests/projects/ts-proj-5/src/foo.cy.ts new file mode 100644 index 000000000000..a5c1a8aa2366 --- /dev/null +++ b/system-tests/projects/ts-proj-5/src/foo.cy.ts @@ -0,0 +1,7 @@ +const foo = 'FOO' + +describe('foo', () => { + it('does foo things', () => { + expect(foo).to.eq('FOO') + }) +}) diff --git a/system-tests/projects/ts-proj-5/tsconfig.json b/system-tests/projects/ts-proj-5/tsconfig.json new file mode 100644 index 000000000000..8b536811db46 --- /dev/null +++ b/system-tests/projects/ts-proj-5/tsconfig.json @@ -0,0 +1,5 @@ +{ + "compilerOptions": { + "module": "es2015" + } +} diff --git a/system-tests/projects/ts-proj-5/yarn.lock b/system-tests/projects/ts-proj-5/yarn.lock new file mode 100644 index 000000000000..ae59eb89cdfb --- /dev/null +++ b/system-tests/projects/ts-proj-5/yarn.lock @@ -0,0 +1,232 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@esbuild/android-arm64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.17.15.tgz#893ad71f3920ccb919e1757c387756a9bca2ef42" + integrity sha512-0kOB6Y7Br3KDVgHeg8PRcvfLkq+AccreK///B4Z6fNZGr/tNHX0z2VywCc7PTeWp+bPvjA5WMvNXltHw5QjAIA== + +"@esbuild/android-arm@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.17.15.tgz#143e0d4e4c08c786ea410b9a7739779a9a1315d8" + integrity sha512-sRSOVlLawAktpMvDyJIkdLI/c/kdRTOqo8t6ImVxg8yT7LQDUYV5Rp2FKeEosLr6ZCja9UjYAzyRSxGteSJPYg== + +"@esbuild/android-x64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.17.15.tgz#d2d12a7676b2589864281b2274355200916540bc" + integrity sha512-MzDqnNajQZ63YkaUWVl9uuhcWyEyh69HGpMIrf+acR4otMkfLJ4sUCxqwbCyPGicE9dVlrysI3lMcDBjGiBBcQ== + +"@esbuild/darwin-arm64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.17.15.tgz#2e88e79f1d327a2a7d9d06397e5232eb0a473d61" + integrity sha512-7siLjBc88Z4+6qkMDxPT2juf2e8SJxmsbNVKFY2ifWCDT72v5YJz9arlvBw5oB4W/e61H1+HDB/jnu8nNg0rLA== + +"@esbuild/darwin-x64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.17.15.tgz#9384e64c0be91388c57be6d3a5eaf1c32a99c91d" + integrity sha512-NbImBas2rXwYI52BOKTW342Tm3LTeVlaOQ4QPZ7XuWNKiO226DisFk/RyPk3T0CKZkKMuU69yOvlapJEmax7cg== + +"@esbuild/freebsd-arm64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.15.tgz#2ad5a35bc52ebd9ca6b845dbc59ba39647a93c1a" + integrity sha512-Xk9xMDjBVG6CfgoqlVczHAdJnCs0/oeFOspFap5NkYAmRCT2qTn1vJWA2f419iMtsHSLm+O8B6SLV/HlY5cYKg== + +"@esbuild/freebsd-x64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.17.15.tgz#b513a48446f96c75fda5bef470e64d342d4379cd" + integrity sha512-3TWAnnEOdclvb2pnfsTWtdwthPfOz7qAfcwDLcfZyGJwm1SRZIMOeB5FODVhnM93mFSPsHB9b/PmxNNbSnd0RQ== + +"@esbuild/linux-arm64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.17.15.tgz#9697b168175bfd41fa9cc4a72dd0d48f24715f31" + integrity sha512-T0MVnYw9KT6b83/SqyznTs/3Jg2ODWrZfNccg11XjDehIved2oQfrX/wVuev9N936BpMRaTR9I1J0tdGgUgpJA== + +"@esbuild/linux-arm@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.17.15.tgz#5b22062c54f48cd92fab9ffd993732a52db70cd3" + integrity sha512-MLTgiXWEMAMr8nmS9Gigx43zPRmEfeBfGCwxFQEMgJ5MC53QKajaclW6XDPjwJvhbebv+RzK05TQjvH3/aM4Xw== + +"@esbuild/linux-ia32@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.17.15.tgz#eb28a13f9b60b5189fcc9e98e1024f6b657ba54c" + integrity sha512-wp02sHs015T23zsQtU4Cj57WiteiuASHlD7rXjKUyAGYzlOKDAjqK6bk5dMi2QEl/KVOcsjwL36kD+WW7vJt8Q== + +"@esbuild/linux-loong64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.17.15.tgz#32454bdfe144cf74b77895a8ad21a15cb81cfbe5" + integrity sha512-k7FsUJjGGSxwnBmMh8d7IbObWu+sF/qbwc+xKZkBe/lTAF16RqxRCnNHA7QTd3oS2AfGBAnHlXL67shV5bBThQ== + +"@esbuild/linux-mips64el@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.17.15.tgz#af12bde0d775a318fad90eb13a0455229a63987c" + integrity sha512-ZLWk6czDdog+Q9kE/Jfbilu24vEe/iW/Sj2d8EVsmiixQ1rM2RKH2n36qfxK4e8tVcaXkvuV3mU5zTZviE+NVQ== + +"@esbuild/linux-ppc64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.17.15.tgz#34c5ed145b2dfc493d3e652abac8bd3baa3865a5" + integrity sha512-mY6dPkIRAiFHRsGfOYZC8Q9rmr8vOBZBme0/j15zFUKM99d4ILY4WpOC7i/LqoY+RE7KaMaSfvY8CqjJtuO4xg== + +"@esbuild/linux-riscv64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.17.15.tgz#87bd515e837f2eb004b45f9e6a94dc5b93f22b92" + integrity sha512-EcyUtxffdDtWjjwIH8sKzpDRLcVtqANooMNASO59y+xmqqRYBBM7xVLQhqF7nksIbm2yHABptoioS9RAbVMWVA== + +"@esbuild/linux-s390x@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.17.15.tgz#20bf7947197f199ddac2ec412029a414ceae3aa3" + integrity sha512-BuS6Jx/ezxFuHxgsfvz7T4g4YlVrmCmg7UAwboeyNNg0OzNzKsIZXpr3Sb/ZREDXWgt48RO4UQRDBxJN3B9Rbg== + +"@esbuild/linux-x64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.17.15.tgz#31b93f9c94c195e852c20cd3d1914a68aa619124" + integrity sha512-JsdS0EgEViwuKsw5tiJQo9UdQdUJYuB+Mf6HxtJSPN35vez1hlrNb1KajvKWF5Sa35j17+rW1ECEO9iNrIXbNg== + +"@esbuild/netbsd-x64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.17.15.tgz#8da299b3ac6875836ca8cdc1925826498069ac65" + integrity sha512-R6fKjtUysYGym6uXf6qyNephVUQAGtf3n2RCsOST/neIwPqRWcnc3ogcielOd6pT+J0RDR1RGcy0ZY7d3uHVLA== + +"@esbuild/openbsd-x64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.17.15.tgz#04a1ec3d4e919714dba68dcf09eeb1228ad0d20c" + integrity sha512-mVD4PGc26b8PI60QaPUltYKeSX0wxuy0AltC+WCTFwvKCq2+OgLP4+fFd+hZXzO2xW1HPKcytZBdjqL6FQFa7w== + +"@esbuild/sunos-x64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.17.15.tgz#6694ebe4e16e5cd7dab6505ff7c28f9c1c695ce5" + integrity sha512-U6tYPovOkw3459t2CBwGcFYfFRjivcJJc1WC8Q3funIwX8x4fP+R6xL/QuTPNGOblbq/EUDxj9GU+dWKX0oWlQ== + +"@esbuild/win32-arm64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.17.15.tgz#1f95b2564193c8d1fee8f8129a0609728171d500" + integrity sha512-W+Z5F++wgKAleDABemiyXVnzXgvRFs+GVKThSI+mGgleLWluv0D7Diz4oQpgdpNzh4i2nNDzQtWbjJiqutRp6Q== + +"@esbuild/win32-ia32@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.17.15.tgz#c362b88b3df21916ed7bcf75c6d09c6bf3ae354a" + integrity sha512-Muz/+uGgheShKGqSVS1KsHtCyEzcdOn/W/Xbh6H91Etm+wiIfwZaBn1W58MeGtfI8WA961YMHFYTthBdQs4t+w== + +"@esbuild/win32-x64@0.17.15": + version "0.17.15" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.17.15.tgz#c2e737f3a201ebff8e2ac2b8e9f246b397ad19b8" + integrity sha512-DjDa9ywLUUmjhV2Y9wUTIF+1XsmuFGvZoCmOWkli1XcNAh5t25cc7fgsCx4Zi/Uurep3TTLyDiKATgGEg61pkA== + +esbuild@^0.17.5: + version "0.17.15" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.17.15.tgz#209ebc87cb671ffb79574db93494b10ffaf43cbc" + integrity sha512-LBUV2VsUIc/iD9ME75qhT4aJj0r75abCVS0jakhFzOtR7TQsqQA5w0tZ+KTKnwl3kXE0MhskNdHDh/I5aCR1Zw== + optionalDependencies: + "@esbuild/android-arm" "0.17.15" + "@esbuild/android-arm64" "0.17.15" + "@esbuild/android-x64" "0.17.15" + "@esbuild/darwin-arm64" "0.17.15" + "@esbuild/darwin-x64" "0.17.15" + "@esbuild/freebsd-arm64" "0.17.15" + "@esbuild/freebsd-x64" "0.17.15" + "@esbuild/linux-arm" "0.17.15" + "@esbuild/linux-arm64" "0.17.15" + "@esbuild/linux-ia32" "0.17.15" + "@esbuild/linux-loong64" "0.17.15" + "@esbuild/linux-mips64el" "0.17.15" + "@esbuild/linux-ppc64" "0.17.15" + "@esbuild/linux-riscv64" "0.17.15" + "@esbuild/linux-s390x" "0.17.15" + "@esbuild/linux-x64" "0.17.15" + "@esbuild/netbsd-x64" "0.17.15" + "@esbuild/openbsd-x64" "0.17.15" + "@esbuild/sunos-x64" "0.17.15" + "@esbuild/win32-arm64" "0.17.15" + "@esbuild/win32-ia32" "0.17.15" + "@esbuild/win32-x64" "0.17.15" + +fsevents@~2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + dependencies: + function-bind "^1.1.1" + +is-core-module@^2.9.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" + integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== + dependencies: + has "^1.0.3" + +nanoid@^3.3.4: + version "3.3.6" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" + integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA== + +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== + +postcss@^8.4.21: + version "8.4.21" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.21.tgz#c639b719a57efc3187b13a1d765675485f4134f4" + integrity sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg== + dependencies: + nanoid "^3.3.4" + picocolors "^1.0.0" + source-map-js "^1.0.2" + +resolve@^1.22.1: + version "1.22.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" + integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== + dependencies: + is-core-module "^2.9.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +rollup@^3.18.0: + version "3.20.2" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-3.20.2.tgz#f798c600317f216de2e4ad9f4d9ab30a89b690ff" + integrity sha512-3zwkBQl7Ai7MFYQE0y1MeQ15+9jsi7XxfrqwTb/9EK8D9C9+//EBR4M+CuA1KODRaNbFez/lWxA5vhEGZp4MUg== + optionalDependencies: + fsevents "~2.3.2" + +source-map-js@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" + integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== + +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + +typescript@5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.0.3.tgz#fe976f0c826a88d0a382007681cbb2da44afdedf" + integrity sha512-xv8mOEDnigb/tN9PSMTwSEqAnUvkoXMQlicOb0IUVDBSQCgBSaAAROUZYy2IcUy5qU6XajK5jjjO7TMWqBTKZA== + +vite@4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/vite/-/vite-4.2.1.tgz#6c2eb337b0dfd80a9ded5922163b94949d7fc254" + integrity sha512-7MKhqdy0ISo4wnvwtqZkjke6XN4taqQ2TBaTccLIpOKv7Vp2h4Y+NpmWCnGDeSvvn45KxvWgGyb0MkHvY1vgbg== + dependencies: + esbuild "^0.17.5" + postcss "^8.4.21" + resolve "^1.22.1" + rollup "^3.18.0" + optionalDependencies: + fsevents "~2.3.2" diff --git a/system-tests/test/typescript_plugins_spec.ts b/system-tests/test/typescript_plugins_spec.ts index 00e38de1e792..b8ca9a772572 100644 --- a/system-tests/test/typescript_plugins_spec.ts +++ b/system-tests/test/typescript_plugins_spec.ts @@ -22,6 +22,13 @@ describe('e2e typescript in plugins file', function () { }) }) + it('works with typescript 5', function () { + return systemTests.exec(this, { + project: 'ts-proj-5', + testingType: 'component', + }) + }) + // https://github.com/cypress-io/cypress/issues/7575 it('allows esModuleInterop to be overridden with true via tsconfig.json', function () { return systemTests.exec(this, { From e8390f46cd852417f2c0b07a9c73eeaf7437e823 Mon Sep 17 00:00:00 2001 From: Lachlan Miller Date: Thu, 6 Apr 2023 13:09:25 +1000 Subject: [PATCH 13/45] fix: correctly pass resolvedBaseUrl for Next.js 13.2.0+ (#26399) * add test project * styles * pass resolvedBaseUrl * make project more minimal * build binaries * changelog * remove css * pass supportedBrowsers to next webpack config * handle case of missing getSupportedBrowsers function * add default function --- .circleci/workflows.yml | 6 +- cli/CHANGELOG.md | 1 + .../src/helpers/nextHandler.ts | 25 +- .../projects/issue-25951-next-app/README.md | 1 + .../issue-25951-next-app/cypress.config.ts | 12 + .../cypress/support/component-index.html | 14 ++ .../issue-25951-next-app/next-env.d.ts | 5 + .../issue-25951-next-app/next.config.js | 6 + .../issue-25951-next-app/package.json | 14 ++ .../src/pages/_app.cy.tsx | 11 + .../issue-25951-next-app/src/pages/_app.tsx | 5 + .../src/styles/globals.css | 3 + .../issue-25951-next-app/tsconfig.json | 24 ++ .../projects/issue-25951-next-app/yarn.lock | 226 ++++++++++++++++++ system-tests/test/component_testing_spec.ts | 8 + 15 files changed, 355 insertions(+), 6 deletions(-) create mode 100644 system-tests/projects/issue-25951-next-app/README.md create mode 100644 system-tests/projects/issue-25951-next-app/cypress.config.ts create mode 100644 system-tests/projects/issue-25951-next-app/cypress/support/component-index.html create mode 100644 system-tests/projects/issue-25951-next-app/next-env.d.ts create mode 100644 system-tests/projects/issue-25951-next-app/next.config.js create mode 100644 system-tests/projects/issue-25951-next-app/package.json create mode 100644 system-tests/projects/issue-25951-next-app/src/pages/_app.cy.tsx create mode 100644 system-tests/projects/issue-25951-next-app/src/pages/_app.tsx create mode 100644 system-tests/projects/issue-25951-next-app/src/styles/globals.css create mode 100644 system-tests/projects/issue-25951-next-app/tsconfig.json create mode 100644 system-tests/projects/issue-25951-next-app/yarn.lock diff --git a/.circleci/workflows.yml b/.circleci/workflows.yml index dd0f2f7a234f..17b5199a93a7 100644 --- a/.circleci/workflows.yml +++ b/.circleci/workflows.yml @@ -30,7 +30,7 @@ mainBuildFilters: &mainBuildFilters - /^release\/\d+\.\d+\.\d+$/ # use the following branch as well to ensure that v8 snapshot cache updates are fully tested - 'update-v8-snapshot-cache-on-develop' - - 'emily/before-spec-promise' + - 'issue-25951-next-app' # usually we don't build Mac app - it takes a long time # but sometimes we want to really confirm we are doing the right thing @@ -41,7 +41,7 @@ macWorkflowFilters: &darwin-workflow-filters - equal: [ develop, << pipeline.git.branch >> ] # use the following branch as well to ensure that v8 snapshot cache updates are fully tested - equal: [ 'update-v8-snapshot-cache-on-develop', << pipeline.git.branch >> ] - - equal: [ 'emily/before-spec-promise', << pipeline.git.branch >> ] + - equal: [ 'issue-25951-next-app', << pipeline.git.branch >> ] - matches: pattern: /^release\/\d+\.\d+\.\d+$/ value: << pipeline.git.branch >> @@ -139,7 +139,7 @@ commands: - run: name: Check current branch to persist artifacts command: | - if [[ "$CIRCLE_BRANCH" != "develop" && "$CIRCLE_BRANCH" != "release/"* && "$CIRCLE_BRANCH" != "emily/before-spec-promise" && "$CIRCLE_BRANCH" != "update-v8-snapshot-cache-on-develop" ]]; then + if [[ "$CIRCLE_BRANCH" != "develop" && "$CIRCLE_BRANCH" != "release/"* && "$CIRCLE_BRANCH" != "issue-25951-next-app" && "$CIRCLE_BRANCH" != "update-v8-snapshot-cache-on-develop" ]]; then echo "Not uploading artifacts or posting install comment for this branch." circleci-agent step halt fi diff --git a/cli/CHANGELOG.md b/cli/CHANGELOG.md index bfe2e7220702..9ec5e849e6ff 100644 --- a/cli/CHANGELOG.md +++ b/cli/CHANGELOG.md @@ -7,6 +7,7 @@ _Released 04/11/2023 (PENDING)_ - Capture the [Azure](https://azure.microsoft.com/) CI provider's environment variable [`SYSTEM_PULLREQUEST_PULLREQUESTNUMBER`](https://learn.microsoft.com/en-us/azure/devops/pipelines/build/variables?view=azure-devops&tabs=yaml#system-variables-devops-services) to display the linked PR number in the Cloud. Addressed in [#26215](https://github.com/cypress-io/cypress/pull/26215). - Fixed an issue in the onboarding wizard where project framework & bundler would not be auto-detected when opening directly into component testing mode using the `--component` CLI flag. Fixes [#22777](https://github.com/cypress-io/cypress/issues/22777). + - Fix an edge case in Component Testing where a custom `baseUrl` in `tsconfig.json` for Next.js 13.2.0+ is not respected. This was partially fixed in [#26005](https://github.com/cypress-io/cypress/pull/26005), but an edge case was missed. Fixes [#25951](https://github.com/cypress-io/cypress/issues/25951). **Misc:** diff --git a/npm/webpack-dev-server/src/helpers/nextHandler.ts b/npm/webpack-dev-server/src/helpers/nextHandler.ts index b1e9a5b632ba..ebd747cbea8a 100644 --- a/npm/webpack-dev-server/src/helpers/nextHandler.ts +++ b/npm/webpack-dev-server/src/helpers/nextHandler.ts @@ -29,7 +29,12 @@ export async function nextHandler (devServerConfig: WebpackDevServerConfig): Pro */ function getNextJsPackages (devServerConfig: WebpackDevServerConfig) { const resolvePaths = { paths: [devServerConfig.cypressConfig.projectRoot] } - const packages = {} as { loadConfig: Function, getNextJsBaseWebpackConfig: Function, nextLoadJsConfig: Function } + const packages = {} as { + loadConfig: (phase: 'development', dir: string) => Promise + getNextJsBaseWebpackConfig: Function + nextLoadJsConfig: Function + getSupportedBrowsers: (dir: string, isDevelopment: boolean, nextJsConfig: any) => Promise + } try { const loadConfigPath = require.resolve('next/dist/server/config', resolvePaths) @@ -55,6 +60,15 @@ function getNextJsPackages (devServerConfig: WebpackDevServerConfig) { throw new Error(`Failed to load "next/dist/build/load-jsconfig" with error: ${ e.message ?? e}`) } + // Does not exist prior to Next 13. + try { + const getUtilsPath = require.resolve('next/dist/build/utils', resolvePaths) + + packages.getSupportedBrowsers = require(getUtilsPath).getSupportedBrowsers ?? (() => Promise.resolve([])) + } catch (e: any) { + throw new Error(`Failed to load "next/dist/build/utils" with error: ${ e.message ?? e}`) + } + return packages } @@ -173,12 +187,13 @@ function getNextJsPackages (devServerConfig: WebpackDevServerConfig) { ] */ async function loadWebpackConfig (devServerConfig: WebpackDevServerConfig): Promise { - const { loadConfig, getNextJsBaseWebpackConfig, nextLoadJsConfig } = getNextJsPackages(devServerConfig) + const { loadConfig, getNextJsBaseWebpackConfig, nextLoadJsConfig, getSupportedBrowsers } = getNextJsPackages(devServerConfig) const nextConfig = await loadConfig('development', devServerConfig.cypressConfig.projectRoot) const runWebpackSpan = getRunWebpackSpan(devServerConfig) const reactVersion = getReactVersion(devServerConfig.cypressConfig.projectRoot) const jsConfigResult = await nextLoadJsConfig?.(devServerConfig.cypressConfig.projectRoot, nextConfig) + const supportedBrowsers = await getSupportedBrowsers(devServerConfig.cypressConfig.projectRoot, true, nextConfig) const webpackConfig = await getNextJsBaseWebpackConfig( devServerConfig.cypressConfig.projectRoot, @@ -196,8 +211,12 @@ async function loadWebpackConfig (devServerConfig: WebpackDevServerConfig): Prom compilerType: 'client', // Required for Next.js > 13 hasReactRoot: reactVersion === 18, - // Required for Next.js > 13.2.1 to respect TS/JS config + // Required for Next.js > 13.2.0 to respect TS/JS config jsConfig: jsConfigResult.jsConfig, + // Required for Next.js > 13.2.0 to respect tsconfig.compilerOptions.baseUrl + resolvedBaseUrl: jsConfigResult.resolvedBaseUrl, + // Added in Next.js 13, passed via `...info`: https://github.com/vercel/next.js/pull/45637/files + supportedBrowsers, }, ) diff --git a/system-tests/projects/issue-25951-next-app/README.md b/system-tests/projects/issue-25951-next-app/README.md new file mode 100644 index 000000000000..5d732f39ced1 --- /dev/null +++ b/system-tests/projects/issue-25951-next-app/README.md @@ -0,0 +1 @@ +Minimal reproduction for https://github.com/cypress-io/cypress/issues/25951. \ No newline at end of file diff --git a/system-tests/projects/issue-25951-next-app/cypress.config.ts b/system-tests/projects/issue-25951-next-app/cypress.config.ts new file mode 100644 index 000000000000..aceed5c3f1e7 --- /dev/null +++ b/system-tests/projects/issue-25951-next-app/cypress.config.ts @@ -0,0 +1,12 @@ +import { defineConfig } from 'cypress' + +export default defineConfig({ + component: { + fixturesFolder: false, + supportFile: false, + devServer: { + framework: 'next', + bundler: 'webpack', + }, + }, +}) diff --git a/system-tests/projects/issue-25951-next-app/cypress/support/component-index.html b/system-tests/projects/issue-25951-next-app/cypress/support/component-index.html new file mode 100644 index 000000000000..3e16e9b07db1 --- /dev/null +++ b/system-tests/projects/issue-25951-next-app/cypress/support/component-index.html @@ -0,0 +1,14 @@ + + + + + + + Components App + +
+ + +
+ + \ No newline at end of file diff --git a/system-tests/projects/issue-25951-next-app/next-env.d.ts b/system-tests/projects/issue-25951-next-app/next-env.d.ts new file mode 100644 index 000000000000..4f11a03dc6cc --- /dev/null +++ b/system-tests/projects/issue-25951-next-app/next-env.d.ts @@ -0,0 +1,5 @@ +/// +/// + +// NOTE: This file should not be edited +// see https://nextjs.org/docs/basic-features/typescript for more information. diff --git a/system-tests/projects/issue-25951-next-app/next.config.js b/system-tests/projects/issue-25951-next-app/next.config.js new file mode 100644 index 000000000000..a843cbee09af --- /dev/null +++ b/system-tests/projects/issue-25951-next-app/next.config.js @@ -0,0 +1,6 @@ +/** @type {import('next').NextConfig} */ +const nextConfig = { + reactStrictMode: true, +} + +module.exports = nextConfig diff --git a/system-tests/projects/issue-25951-next-app/package.json b/system-tests/projects/issue-25951-next-app/package.json new file mode 100644 index 000000000000..26f2eee3dc0e --- /dev/null +++ b/system-tests/projects/issue-25951-next-app/package.json @@ -0,0 +1,14 @@ +{ + "name": "issue-25951-next-app", + "version": "0.0.0", + "private": true, + "dependencies": { + "@types/node": "18.15.11", + "@types/react": "18.0.32", + "@types/react-dom": "18.0.11", + "next": "13.2.4", + "react": "18.2.0", + "react-dom": "18.2.0", + "typescript": "5.0.3" + } +} diff --git a/system-tests/projects/issue-25951-next-app/src/pages/_app.cy.tsx b/system-tests/projects/issue-25951-next-app/src/pages/_app.cy.tsx new file mode 100644 index 000000000000..7f53404debd6 --- /dev/null +++ b/system-tests/projects/issue-25951-next-app/src/pages/_app.cy.tsx @@ -0,0 +1,11 @@ +import React from 'react' +import { mount } from 'cypress/react18' +import App from './_app' + +describe('', () => { + it('renders', () => { + // see: https://on.cypress.io/mounting-react + mount() + cy.contains('Hello world') + }) +}) diff --git a/system-tests/projects/issue-25951-next-app/src/pages/_app.tsx b/system-tests/projects/issue-25951-next-app/src/pages/_app.tsx new file mode 100644 index 000000000000..cafe3d54edbf --- /dev/null +++ b/system-tests/projects/issue-25951-next-app/src/pages/_app.tsx @@ -0,0 +1,5 @@ +import 'styles/globals.css' + +export default function App () { + return
Hello world
+} diff --git a/system-tests/projects/issue-25951-next-app/src/styles/globals.css b/system-tests/projects/issue-25951-next-app/src/styles/globals.css new file mode 100644 index 000000000000..8ecd0b41f417 --- /dev/null +++ b/system-tests/projects/issue-25951-next-app/src/styles/globals.css @@ -0,0 +1,3 @@ +body { + background: skyblue; +} diff --git a/system-tests/projects/issue-25951-next-app/tsconfig.json b/system-tests/projects/issue-25951-next-app/tsconfig.json new file mode 100644 index 000000000000..3367eaf42d0d --- /dev/null +++ b/system-tests/projects/issue-25951-next-app/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "baseUrl": "src", + "target": "es5", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "forceConsistentCasingInFileNames": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "node", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true, + "paths": { + "@/*": ["./src/*"] + } + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"], + "exclude": ["node_modules"] +} diff --git a/system-tests/projects/issue-25951-next-app/yarn.lock b/system-tests/projects/issue-25951-next-app/yarn.lock new file mode 100644 index 000000000000..8857ad6f7e75 --- /dev/null +++ b/system-tests/projects/issue-25951-next-app/yarn.lock @@ -0,0 +1,226 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@next/env@13.2.4": + version "13.2.4" + resolved "https://registry.yarnpkg.com/@next/env/-/env-13.2.4.tgz#8b763700262b2445140a44a8c8d088cef676dbae" + integrity sha512-+Mq3TtpkeeKFZanPturjcXt+KHfKYnLlX6jMLyCrmpq6OOs4i1GqBOAauSkii9QeKCMTYzGppar21JU57b/GEA== + +"@next/swc-android-arm-eabi@13.2.4": + version "13.2.4" + resolved "https://registry.yarnpkg.com/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-13.2.4.tgz#758d0403771e549f9cee71cbabc0cb16a6c947c0" + integrity sha512-DWlalTSkLjDU11MY11jg17O1gGQzpRccM9Oes2yTqj2DpHndajrXHGxj9HGtJ+idq2k7ImUdJVWS2h2l/EDJOw== + +"@next/swc-android-arm64@13.2.4": + version "13.2.4" + resolved "https://registry.yarnpkg.com/@next/swc-android-arm64/-/swc-android-arm64-13.2.4.tgz#834d586523045110d5602e0c8aae9028835ac427" + integrity sha512-sRavmUImUCf332Gy+PjIfLkMhiRX1Ez4SI+3vFDRs1N5eXp+uNzjFUK/oLMMOzk6KFSkbiK/3Wt8+dHQR/flNg== + +"@next/swc-darwin-arm64@13.2.4": + version "13.2.4" + resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.2.4.tgz#5006fca179a36ef3a24d293abadec7438dbb48c6" + integrity sha512-S6vBl+OrInP47TM3LlYx65betocKUUlTZDDKzTiRDbsRESeyIkBtZ6Qi5uT2zQs4imqllJznVjFd1bXLx3Aa6A== + +"@next/swc-darwin-x64@13.2.4": + version "13.2.4" + resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-13.2.4.tgz#6549c7c04322766acc3264ccdb3e1b43fcaf7946" + integrity sha512-a6LBuoYGcFOPGd4o8TPo7wmv5FnMr+Prz+vYHopEDuhDoMSHOnC+v+Ab4D7F0NMZkvQjEJQdJS3rqgFhlZmKlw== + +"@next/swc-freebsd-x64@13.2.4": + version "13.2.4" + resolved "https://registry.yarnpkg.com/@next/swc-freebsd-x64/-/swc-freebsd-x64-13.2.4.tgz#0bbe28979e3e868debc2cc06e45e186ce195b7f4" + integrity sha512-kkbzKVZGPaXRBPisoAQkh3xh22r+TD+5HwoC5bOkALraJ0dsOQgSMAvzMXKsN3tMzJUPS0tjtRf1cTzrQ0I5vQ== + +"@next/swc-linux-arm-gnueabihf@13.2.4": + version "13.2.4" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-13.2.4.tgz#1d28d2203f5a7427d6e7119d7bcb5fc40959fb3e" + integrity sha512-7qA1++UY0fjprqtjBZaOA6cas/7GekpjVsZn/0uHvquuITFCdKGFCsKNBx3S0Rpxmx6WYo0GcmhNRM9ru08BGg== + +"@next/swc-linux-arm64-gnu@13.2.4": + version "13.2.4" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.2.4.tgz#eb26448190948cdf4c44b8f34110a3ecea32f1d0" + integrity sha512-xzYZdAeq883MwXgcwc72hqo/F/dwUxCukpDOkx/j1HTq/J0wJthMGjinN9wH5bPR98Mfeh1MZJ91WWPnZOedOg== + +"@next/swc-linux-arm64-musl@13.2.4": + version "13.2.4" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.2.4.tgz#c4227c0acd94a420bb14924820710e6284d234d3" + integrity sha512-8rXr3WfmqSiYkb71qzuDP6I6R2T2tpkmf83elDN8z783N9nvTJf2E7eLx86wu2OJCi4T05nuxCsh4IOU3LQ5xw== + +"@next/swc-linux-x64-gnu@13.2.4": + version "13.2.4" + resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.2.4.tgz#6bcb540944ee9b0209b33bfc23b240c2044dfc3e" + integrity sha512-Ngxh51zGSlYJ4EfpKG4LI6WfquulNdtmHg1yuOYlaAr33KyPJp4HeN/tivBnAHcZkoNy0hh/SbwDyCnz5PFJQQ== + +"@next/swc-linux-x64-musl@13.2.4": + version "13.2.4" + resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.2.4.tgz#ce21e43251eaf09a09df39372b2c3e38028c30ff" + integrity sha512-gOvwIYoSxd+j14LOcvJr+ekd9fwYT1RyMAHOp7znA10+l40wkFiMONPLWiZuHxfRk+Dy7YdNdDh3ImumvL6VwA== + +"@next/swc-win32-arm64-msvc@13.2.4": + version "13.2.4" + resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.2.4.tgz#68220063d8e5e082f5465498675640dedb670ff1" + integrity sha512-q3NJzcfClgBm4HvdcnoEncmztxrA5GXqKeiZ/hADvC56pwNALt3ngDC6t6qr1YW9V/EPDxCYeaX4zYxHciW4Dw== + +"@next/swc-win32-ia32-msvc@13.2.4": + version "13.2.4" + resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.2.4.tgz#7c120ab54a081be9566df310bed834f168252990" + integrity sha512-/eZ5ncmHUYtD2fc6EUmAIZlAJnVT2YmxDsKs1Ourx0ttTtvtma/WKlMV5NoUsyOez0f9ExLyOpeCoz5aj+MPXw== + +"@next/swc-win32-x64-msvc@13.2.4": + version "13.2.4" + resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.2.4.tgz#5abda92fe12b9829bf7951c4a221282c56041144" + integrity sha512-0MffFmyv7tBLlji01qc0IaPP/LVExzvj7/R5x1Jph1bTAIj4Vu81yFQWHHQAP6r4ff9Ukj1mBK6MDNVXm7Tcvw== + +"@swc/helpers@0.4.14": + version "0.4.14" + resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.14.tgz#1352ac6d95e3617ccb7c1498ff019654f1e12a74" + integrity sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw== + dependencies: + tslib "^2.4.0" + +"@types/node@18.15.11": + version "18.15.11" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.15.11.tgz#b3b790f09cb1696cffcec605de025b088fa4225f" + integrity sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q== + +"@types/prop-types@*": + version "15.7.5" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf" + integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w== + +"@types/react-dom@18.0.11": + version "18.0.11" + resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.0.11.tgz#321351c1459bc9ca3d216aefc8a167beec334e33" + integrity sha512-O38bPbI2CWtgw/OoQoY+BRelw7uysmXbWvw3nLWO21H1HSh+GOlqPuXshJfjmpNlKiiSDG9cc1JZAaMmVdcTlw== + dependencies: + "@types/react" "*" + +"@types/react@*", "@types/react@18.0.32": + version "18.0.32" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.32.tgz#5e88b2af6833251d54ec7fe86d393224499f41d5" + integrity sha512-gYGXdtPQ9Cj0w2Fwqg5/ak6BcK3Z15YgjSqtyDizWUfx7mQ8drs0NBUzRRsAdoFVTO8kJ8L2TL8Skm7OFPnLUw== + dependencies: + "@types/prop-types" "*" + "@types/scheduler" "*" + csstype "^3.0.2" + +"@types/scheduler@*": + version "0.16.3" + resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.3.tgz#cef09e3ec9af1d63d2a6cc5b383a737e24e6dcf5" + integrity sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ== + +caniuse-lite@^1.0.30001406: + version "1.0.30001473" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001473.tgz#3859898b3cab65fc8905bb923df36ad35058153c" + integrity sha512-ewDad7+D2vlyy+E4UJuVfiBsU69IL+8oVmTuZnH5Q6CIUbxNfI50uVpRHbUPDD6SUaN2o0Lh4DhTrvLG/Tn1yg== + +client-only@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/client-only/-/client-only-0.0.1.tgz#38bba5d403c41ab150bff64a95c85013cf73bca1" + integrity sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA== + +csstype@^3.0.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" + integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== + +"js-tokens@^3.0.0 || ^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +loose-envify@^1.1.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== + dependencies: + js-tokens "^3.0.0 || ^4.0.0" + +nanoid@^3.3.4: + version "3.3.6" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" + integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA== + +next@13.2.4: + version "13.2.4" + resolved "https://registry.yarnpkg.com/next/-/next-13.2.4.tgz#2363330392b0f7da02ab41301f60857ffa7f67d6" + integrity sha512-g1I30317cThkEpvzfXujf0O4wtaQHtDCLhlivwlTJ885Ld+eOgcz7r3TGQzeU+cSRoNHtD8tsJgzxVdYojFssw== + dependencies: + "@next/env" "13.2.4" + "@swc/helpers" "0.4.14" + caniuse-lite "^1.0.30001406" + postcss "8.4.14" + styled-jsx "5.1.1" + optionalDependencies: + "@next/swc-android-arm-eabi" "13.2.4" + "@next/swc-android-arm64" "13.2.4" + "@next/swc-darwin-arm64" "13.2.4" + "@next/swc-darwin-x64" "13.2.4" + "@next/swc-freebsd-x64" "13.2.4" + "@next/swc-linux-arm-gnueabihf" "13.2.4" + "@next/swc-linux-arm64-gnu" "13.2.4" + "@next/swc-linux-arm64-musl" "13.2.4" + "@next/swc-linux-x64-gnu" "13.2.4" + "@next/swc-linux-x64-musl" "13.2.4" + "@next/swc-win32-arm64-msvc" "13.2.4" + "@next/swc-win32-ia32-msvc" "13.2.4" + "@next/swc-win32-x64-msvc" "13.2.4" + +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== + +postcss@8.4.14: + version "8.4.14" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.14.tgz#ee9274d5622b4858c1007a74d76e42e56fd21caf" + integrity sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig== + dependencies: + nanoid "^3.3.4" + picocolors "^1.0.0" + source-map-js "^1.0.2" + +react-dom@18.2.0: + version "18.2.0" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.2.0.tgz#22aaf38708db2674ed9ada224ca4aa708d821e3d" + integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g== + dependencies: + loose-envify "^1.1.0" + scheduler "^0.23.0" + +react@18.2.0: + version "18.2.0" + resolved "https://registry.yarnpkg.com/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5" + integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ== + dependencies: + loose-envify "^1.1.0" + +scheduler@^0.23.0: + version "0.23.0" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.0.tgz#ba8041afc3d30eb206a487b6b384002e4e61fdfe" + integrity sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw== + dependencies: + loose-envify "^1.1.0" + +source-map-js@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" + integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== + +styled-jsx@5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.1.1.tgz#839a1c3aaacc4e735fed0781b8619ea5d0009d1f" + integrity sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw== + dependencies: + client-only "0.0.1" + +tslib@^2.4.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf" + integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== + +typescript@5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.0.3.tgz#fe976f0c826a88d0a382007681cbb2da44afdedf" + integrity sha512-xv8mOEDnigb/tN9PSMTwSEqAnUvkoXMQlicOb0IUVDBSQCgBSaAAROUZYy2IcUy5qU6XajK5jjjO7TMWqBTKZA== diff --git a/system-tests/test/component_testing_spec.ts b/system-tests/test/component_testing_spec.ts index 3081fd713217..28e11e1264bb 100644 --- a/system-tests/test/component_testing_spec.ts +++ b/system-tests/test/component_testing_spec.ts @@ -52,6 +52,14 @@ describe('component testing projects', function () { expectedExitCode: 0, }) + systemTests.it('issue-25951-next-app', { + project: 'issue-25951-next-app', + testingType: 'component', + spec: 'src/pages/_app.cy.tsx', + browser: 'chrome', + expectedExitCode: 0, + }) + systemTests.it('nuxtjs-vue2-configured', { project: 'nuxtjs-vue2-configured', testingType: 'component', From 89c23e08de76ff37093ac6c6958a8ffdaecc4fc0 Mon Sep 17 00:00:00 2001 From: Mike Plummer Date: Wed, 5 Apr 2023 22:27:25 -0500 Subject: [PATCH 14/45] misc: Update styling of Runs Page (#26406) * fix: Update styling of Runs Page * Use new status icons to match other areas of the app * Improve responsiveness of UI on smaller viewports * Update link params * misc: Update styling of Runs Page * Use new status icons to match other areas of the app * Improve responsiveness of UI on smaller viewports * Update link params * Add changelog * Fix e2e test * Center run results when not wrapped * Support wrapping with long commit message * Fix changelog * Add test case for new slot * Fix test --- cli/CHANGELOG.md | 1 + packages/app/cypress/e2e/runs.cy.ts | 12 ++-- packages/app/src/runs/RunCard.vue | 61 +++++++++++-------- .../src/components/ListRowHeader.cy.tsx | 17 ++++-- .../src/components/ListRowHeader.vue | 31 ++++++---- 5 files changed, 74 insertions(+), 48 deletions(-) diff --git a/cli/CHANGELOG.md b/cli/CHANGELOG.md index 9ec5e849e6ff..ab80559d5954 100644 --- a/cli/CHANGELOG.md +++ b/cli/CHANGELOG.md @@ -12,6 +12,7 @@ _Released 04/11/2023 (PENDING)_ **Misc:** - Removed unintentional debug logs. Addressed in [#26411](https://github.com/cypress-io/cypress/pull/26411). +- Improved styling on the [Runs Page](https://docs.cypress.io/guides/core-concepts/cypress-app#Runs). Addresses [#26180](https://github.com/cypress-io/cypress/issues/26180). **Dependency Updates:** diff --git a/packages/app/cypress/e2e/runs.cy.ts b/packages/app/cypress/e2e/runs.cy.ts index 0cdce03ba58b..e64a589d973a 100644 --- a/packages/app/cypress/e2e/runs.cy.ts +++ b/packages/app/cypress/e2e/runs.cy.ts @@ -100,7 +100,7 @@ describe('App: Runs', { viewportWidth: 1200 }, () => { cy.contains('a', 'OVERLIMIT').click() cy.withCtx((ctx) => { - expect((ctx.actions.electron.openExternal as SinonStub).lastCall.lastArg).to.eq('http://dummy.cypress.io/runs/4') + expect((ctx.actions.electron.openExternal as SinonStub).lastCall.lastArg).to.contain('http://dummy.cypress.io/runs/4') }) }) }) @@ -660,22 +660,22 @@ describe('App: Runs', { viewportWidth: 1200 }, () => { cy.visitApp() moveToRunsPage() - cy.get('[href="http://dummy.cypress.io/runs/0"]').first().within(() => { + cy.get('[href^="http://dummy.cypress.io/runs/0"]').first().within(() => { cy.findByText('fix: make gql work CANCELLED') cy.get('[data-cy="run-card-icon-CANCELLED"]') }) - cy.get('[href="http://dummy.cypress.io/runs/1"]').first().within(() => { + cy.get('[href^="http://dummy.cypress.io/runs/1"]').first().within(() => { cy.findByText('fix: make gql work ERRORED') cy.get('[data-cy="run-card-icon-ERRORED"]') }) - cy.get('[href="http://dummy.cypress.io/runs/2"]').first().within(() => { + cy.get('[href^="http://dummy.cypress.io/runs/2"]').first().within(() => { cy.findByText('fix: make gql work FAILED') cy.get('[data-cy="run-card-icon-FAILED"]') }) - cy.get('[href="http://dummy.cypress.io/runs/0"]').first().as('firstRun') + cy.get('[href^="http://dummy.cypress.io/runs/0"]').first().as('firstRun') cy.get('@firstRun').within(() => { cy.get('[data-cy="run-card-author"]').contains('John Appleseed') @@ -699,7 +699,7 @@ describe('App: Runs', { viewportWidth: 1200 }, () => { cy.get('[data-cy^="runCard-"]').first().click() cy.withCtx((ctx) => { - expect((ctx.actions.electron.openExternal as SinonStub).lastCall.lastArg).to.eq('http://dummy.cypress.io/runs/0') + expect((ctx.actions.electron.openExternal as SinonStub).lastCall.lastArg).to.contain('http://dummy.cypress.io/runs/0') }) }) diff --git a/packages/app/src/runs/RunCard.vue b/packages/app/src/runs/RunCard.vue index 8a4a715c2f44..30e9898fa8cc 100644 --- a/packages/app/src/runs/RunCard.vue +++ b/packages/app/src/runs/RunCard.vue @@ -1,15 +1,19 @@ diff --git a/packages/data-context/src/actions/WizardActions.ts b/packages/data-context/src/actions/WizardActions.ts index e9cc2a6b19ce..7a3c4aafed63 100644 --- a/packages/data-context/src/actions/WizardActions.ts +++ b/packages/data-context/src/actions/WizardActions.ts @@ -169,11 +169,14 @@ export class WizardActions { } const officialFrameworks = CT_FRAMEWORKS.map((framework) => resolveComponentFrameworkDefinition(framework)) - const thirdParty = await detectThirdPartyCTFrameworks(this.ctx.currentProject) + const { frameworks: thirdParty, erroredFrameworks } = await detectThirdPartyCTFrameworks(this.ctx.currentProject) const resolvedThirdPartyFrameworks = thirdParty.map(resolveComponentFrameworkDefinition) + debug('errored third party frameworks %o', erroredFrameworks) + this.ctx.update((d) => { d.wizard.frameworks = officialFrameworks.concat(resolvedThirdPartyFrameworks) + d.wizard.erroredFrameworks = erroredFrameworks }) } diff --git a/packages/data-context/src/data/coreDataShape.ts b/packages/data-context/src/data/coreDataShape.ts index 3bed2cc4860d..1dd5322525f0 100644 --- a/packages/data-context/src/data/coreDataShape.ts +++ b/packages/data-context/src/data/coreDataShape.ts @@ -1,5 +1,5 @@ import { FoundBrowser, Editor, AllowedState, AllModeOptions, TestingType, BrowserStatus, PACKAGE_MANAGERS, AuthStateName, MIGRATION_STEPS, MigrationStep, BannerState } from '@packages/types' -import { WizardBundler, CT_FRAMEWORKS, resolveComponentFrameworkDefinition } from '@packages/scaffold-config' +import { WizardBundler, CT_FRAMEWORKS, resolveComponentFrameworkDefinition, ErroredFramework } from '@packages/scaffold-config' import type { NexusGenObjects } from '@packages/graphql/src/gen/nxs.gen' import type { App, BrowserWindow } from 'electron' import type { ChildProcess } from 'child_process' @@ -71,6 +71,7 @@ export interface WizardDataShape { detectedBundler: WizardBundler | null detectedFramework: Cypress.ResolvedComponentFrameworkDefinition | null frameworks: Cypress.ResolvedComponentFrameworkDefinition[] + erroredFrameworks: ErroredFramework[] } export interface MigrationDataShape { @@ -200,6 +201,7 @@ export function makeCoreData (modeOptions: Partial = {}): CoreDa detectedFramework: null, // TODO: API to add third party frameworks to this list. frameworks: CT_FRAMEWORKS.map((framework) => resolveComponentFrameworkDefinition(framework)), + erroredFrameworks: [], }, migration: { step: 'renameAuto', diff --git a/packages/frontend-shared/cypress/support/mock-graphql/stubgql-Wizard.ts b/packages/frontend-shared/cypress/support/mock-graphql/stubgql-Wizard.ts index 9055eb33b262..2bb52a19df57 100644 --- a/packages/frontend-shared/cypress/support/mock-graphql/stubgql-Wizard.ts +++ b/packages/frontend-shared/cypress/support/mock-graphql/stubgql-Wizard.ts @@ -63,4 +63,5 @@ export const stubWizard: MaybeResolver = { isDetected: false, } }), + erroredFrameworks: [], } diff --git a/packages/frontend-shared/src/locales/en-US.json b/packages/frontend-shared/src/locales/en-US.json index dcbb7083b689..30bb7e0f0c82 100644 --- a/packages/frontend-shared/src/locales/en-US.json +++ b/packages/frontend-shared/src/locales/en-US.json @@ -357,7 +357,11 @@ "languageLabel": "Language", "configFileLanguageLabel": "Cypress config file", "detected": "(detected)", - "browseIntegrations": "Browse our list of third-party framework integrations" + "browseIntegrations": "Browse our list of third-party framework integrations", + "communityFrameworkDefinitionProblem": "Community framework definition problem", + "communityDependenciesCouldNotBeParsed": "This project has a community framework definition installed that could not be loaded. It is located at the following path: | This project has some community framework definitions installed that could not be loaded. They are located at the following paths:", + "seeFrameworkDefinitionDocumentation": "See the {0} for more information about creating, installing, and troubleshooting third party definitions.", + "frameworkDefinitionDocumentation": "framework definition documentation" }, "step": { "continue": "Continue", diff --git a/packages/graphql/schemas/schema.graphql b/packages/graphql/schemas/schema.graphql index 79e59e844fab..e7724d8b9113 100644 --- a/packages/graphql/schemas/schema.graphql +++ b/packages/graphql/schemas/schema.graphql @@ -2357,6 +2357,11 @@ type Wizard { """All of the bundlers to choose from""" allBundlers: [WizardBundler!]! bundler: WizardBundler + + """ + Framework definitions that had a package.json detected but could not be loaded due to an error + """ + erroredFrameworks: [WizardErroredFramework!]! framework: WizardFrontendFramework """All of the component testing frameworks to choose from""" @@ -2393,6 +2398,15 @@ enum WizardConfigFileStatusEnum { valid } +"""Represents a Framework Definition that failed to load when detected""" +type WizardErroredFramework implements Node { + """Relay style Node ID field for the WizardErroredFramework field""" + id: ID! + + """The location of the framework's package.json file""" + path: String +} + """A frontend framework that we can setup within the app""" type WizardFrontendFramework implements Node { """The category (framework, like react-scripts, or library, like react""" diff --git a/packages/graphql/src/schemaTypes/objectTypes/gql-Wizard.ts b/packages/graphql/src/schemaTypes/objectTypes/gql-Wizard.ts index dae2afb2bcb2..6a898400cd62 100644 --- a/packages/graphql/src/schemaTypes/objectTypes/gql-Wizard.ts +++ b/packages/graphql/src/schemaTypes/objectTypes/gql-Wizard.ts @@ -3,6 +3,7 @@ import { WizardFrontendFramework } from './gql-WizardFrontendFramework' import { WizardNpmPackage } from './gql-WizardNpmPackage' import { objectType } from 'nexus' import { WIZARD_BUNDLERS } from '@packages/scaffold-config' +import { WizardErroredFramework } from './gql-WizardErroredFramework' export const Wizard = objectType({ name: 'Wizard', @@ -30,6 +31,12 @@ export const Wizard = objectType({ resolve: (source, args, ctx) => Array.from(ctx.coreData.wizard.frameworks), }) + t.nonNull.list.nonNull.field('erroredFrameworks', { + type: WizardErroredFramework, + description: 'Framework definitions that had a package.json detected but could not be loaded due to an error', + resolve: (source, args, ctx) => Array.from(ctx.coreData.wizard.erroredFrameworks), + }) + t.nonNull.list.nonNull.field('packagesToInstall', { type: WizardNpmPackage, description: 'A list of packages to install, null if we have not chosen both a framework and bundler', diff --git a/packages/graphql/src/schemaTypes/objectTypes/gql-WizardErroredFramework.ts b/packages/graphql/src/schemaTypes/objectTypes/gql-WizardErroredFramework.ts new file mode 100644 index 000000000000..126ff42d7265 --- /dev/null +++ b/packages/graphql/src/schemaTypes/objectTypes/gql-WizardErroredFramework.ts @@ -0,0 +1,12 @@ +import { objectType } from 'nexus' + +export const WizardErroredFramework = objectType({ + name: 'WizardErroredFramework', + description: 'Represents a Framework Definition that failed to load when detected', + node: 'path', + definition (t) { + t.string('path', { + description: `The location of the framework's package.json file`, + }) + }, +}) diff --git a/packages/graphql/src/schemaTypes/objectTypes/index.ts b/packages/graphql/src/schemaTypes/objectTypes/index.ts index 9336503aeaa5..61323f52854c 100644 --- a/packages/graphql/src/schemaTypes/objectTypes/index.ts +++ b/packages/graphql/src/schemaTypes/objectTypes/index.ts @@ -32,5 +32,6 @@ export * from './gql-Version' export * from './gql-VersionData' export * from './gql-Wizard' export * from './gql-WizardBundler' +export * from './gql-WizardErroredFramework' export * from './gql-WizardFrontendFramework' export * from './gql-WizardNpmPackage' diff --git a/packages/launchpad/cypress/e2e/scaffold-component-testing.cy.ts b/packages/launchpad/cypress/e2e/scaffold-component-testing.cy.ts index 5496c2a195b4..d30dce25c1ea 100644 --- a/packages/launchpad/cypress/e2e/scaffold-component-testing.cy.ts +++ b/packages/launchpad/cypress/e2e/scaffold-component-testing.cy.ts @@ -252,5 +252,34 @@ describe('scaffolding component testing', { cy.get(`[data-testid="select-framework"]`).click() cy.contains('Qwik').should('be.visible') }) + + it('Displays a warning message for dependencies that could not be parsed', () => { + cy.scaffoldProject('qwik-app') + cy.openProject('qwik-app') + + cy.withCtx(async (ctx) => { + await ctx.actions.file.removeFileInProject('./node_modules/cypress-ct-bad-missing-value') + await ctx.actions.file.moveFileInProject('./cypress-ct-bad-missing-value', './node_modules/cypress-ct-bad-missing-value') + + await ctx.actions.file.removeFileInProject('./node_modules/cypress-ct-bad-syntax') + await ctx.actions.file.moveFileInProject('./cypress-ct-bad-syntax', './node_modules/cypress-ct-bad-syntax') + }) + + cy.visitLaunchpad() + cy.skipWelcome() + + cy.contains('Component Testing').click() + + cy.findByTestId('alert-header').should('be.visible').contains('Community framework definition problem') + + cy.findByTestId('alert-body').within(() => { + cy.get('li').should('have.length', 2) + + cy.contains('cy-projects/qwik-app/node_modules/cypress-ct-bad-missing-value/package.json').should('be.visible') + cy.contains('cy-projects/qwik-app/node_modules/cypress-ct-bad-syntax/package.json').should('be.visible') + }) + + cy.percySnapshot() + }) }) }) diff --git a/packages/launchpad/src/setup/EnvironmentSetup.cy.tsx b/packages/launchpad/src/setup/EnvironmentSetup.cy.tsx index 1644b018e2df..679367d5d09e 100644 --- a/packages/launchpad/src/setup/EnvironmentSetup.cy.tsx +++ b/packages/launchpad/src/setup/EnvironmentSetup.cy.tsx @@ -2,7 +2,7 @@ import { EnvironmentSetupFragmentDoc } from '../generated/graphql-test' import EnvironmentSetup from './EnvironmentSetup.vue' describe('', { viewportWidth: 800 }, () => { - it('default component', () => { + it('displays framework options and links to community defined frameworks', () => { cy.mountFragment(EnvironmentSetupFragmentDoc, { render: (gqlVal) => (
@@ -84,7 +84,7 @@ describe('', { viewportWidth: 800 }, () => { cy.findByRole('option', { name: 'Create React App (v5) Support is in Alpha (detected)' }).should('be.visible').click() }) - it('shows the description of bundler as Dev Server', () => { + it('shows the description of bundler', () => { cy.mountFragment(EnvironmentSetupFragmentDoc, { onResult: (res) => { res.framework = { @@ -103,5 +103,84 @@ describe('', { viewportWidth: 800 }, () => { }) cy.findByLabelText('Bundler').should('be.visible') + cy.findByLabelText('Pick a bundler').should('be.visible') + }) + + it('shows errored community frameworks', () => { + const PATH_1 = '/quite-long/path/to/node_modules/for/definition1/package.json' + const PATH_2 = '/quite-long/path/to/node_modules/for/definition2/package.json' + const PATH_3 = '/quite-long/path/to/node_modules/for/definition3/package.json' + const PLURAL_MESSAGE = 'This project has some community framework definitions installed that could not be loaded. They are located at the following paths:' + const SINGULAR_MESSAGE = 'This project has a community framework definition installed that could not be loaded. It is located at the following path:' + const DOCS_CTA = 'See the framework definition documentation for more information about creating, installing, and troubleshooting third party definitions.' + + // we will mount with multiple errored frameworks, and then with a single errored framework + + cy.mountFragment(EnvironmentSetupFragmentDoc, { + onResult: (res) => { + res.erroredFrameworks = [ + { + id: '1', + path: PATH_1, + __typename: 'WizardErroredFramework', + }, + { + id: '2', + path: PATH_2, + __typename: 'WizardErroredFramework', + }, + { + id: '3', + path: PATH_3, + __typename: 'WizardErroredFramework', + }, + ] + }, + render: (gqlVal) => ( +
+ +
+ ), + }) + + cy.contains('h3', 'Community framework definition problem') + cy.contains('p', PLURAL_MESSAGE).should('be.visible') + cy.contains('p', SINGULAR_MESSAGE).should('not.exist') + cy.contains('li', PATH_1).should('be.visible') + cy.contains('li', PATH_2).should('be.visible') + cy.contains('li', PATH_3).should('be.visible') + cy.contains('p', DOCS_CTA).should('be.visible') + cy.contains('a', 'framework definition documentation').should('have.attr', 'href', 'https://on.cypress.io/component-integrations?utm_medium=Framework+Definition+Warning&utm_source=Binary%3A+Launchpad') + + cy.mountFragment(EnvironmentSetupFragmentDoc, { + onResult: (res) => { + res.erroredFrameworks = [ + { + id: '1', + path: PATH_1, + __typename: 'WizardErroredFramework', + }, + ] + }, + render: (gqlVal) => ( +
+ +
+ ), + }) + + cy.contains('p', PLURAL_MESSAGE).should('not.exist') + cy.contains('p', SINGULAR_MESSAGE).should('be.visible') + + cy.get('li') + .should('have.length', 1) + .contains(PATH_1) + .should('be.visible') }) }) diff --git a/packages/launchpad/src/setup/EnvironmentSetup.vue b/packages/launchpad/src/setup/EnvironmentSetup.vue index d3485cf2bb8c..0d759623f425 100644 --- a/packages/launchpad/src/setup/EnvironmentSetup.vue +++ b/packages/launchpad/src/setup/EnvironmentSetup.vue @@ -1,4 +1,45 @@