From 182b1fe387e1d0dd066dd1a4e30d5bafebc3b1ec Mon Sep 17 00:00:00 2001 From: LekoArts Date: Wed, 15 Feb 2023 10:46:17 +0100 Subject: [PATCH 1/6] add test --- .../contentful/cypress/integration/engines.js | 11 +++++++++++ e2e-tests/contentful/src/pages/ssr.js | 14 ++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 e2e-tests/contentful/cypress/integration/engines.js create mode 100644 e2e-tests/contentful/src/pages/ssr.js diff --git a/e2e-tests/contentful/cypress/integration/engines.js b/e2e-tests/contentful/cypress/integration/engines.js new file mode 100644 index 0000000000000..e68b27dcda88a --- /dev/null +++ b/e2e-tests/contentful/cypress/integration/engines.js @@ -0,0 +1,11 @@ +describe(`Engines (SSR)`, () => { + beforeEach(() => { + cy.visit("/ssr").waitForRouteChange() + }) + it(`should work`, () => { + cy.get('[data-cy-id="getserverdata-result"]').should( + "have.text", + "getServerData used in contentful E2E test" + ) + }) +}) diff --git a/e2e-tests/contentful/src/pages/ssr.js b/e2e-tests/contentful/src/pages/ssr.js new file mode 100644 index 0000000000000..4627d2355afd7 --- /dev/null +++ b/e2e-tests/contentful/src/pages/ssr.js @@ -0,0 +1,14 @@ +import React from "react" +import Layout from "../components/layout" + +const SSRPage = ({ serverData }) => ( + +
{serverData}
+
+) + +export default SSRPage + +export function getServerData() { + return "getServerData used in contentful E2E test" +} \ No newline at end of file From 1a1fce03e58a8dc1681da566136f3021dfef8679 Mon Sep 17 00:00:00 2001 From: LekoArts Date: Wed, 15 Feb 2023 13:24:20 +0100 Subject: [PATCH 2/6] use resolutions --- package.json | 5 ++++- yarn.lock | 12 ++++++------ 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 70e5de7ea8fc5..cc1dbedbe348a 100644 --- a/package.json +++ b/package.json @@ -127,5 +127,8 @@ }, "workspaces": [ "packages/*" - ] + ], + "resolutions": { + "@babel/plugin-transform-modules-commonjs": "7.20.7" + } } diff --git a/yarn.lock b/yarn.lock index 1ca3451d8df11..3e641525c4df2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -423,7 +423,7 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.20.11": +"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.20.11", "@babel/helper-module-transforms@^7.20.7": version "7.20.11" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz#df4c7af713c557938c50ea3ad0117a7944b2f1b0" integrity sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg== @@ -1018,12 +1018,12 @@ "@babel/helper-module-transforms" "^7.20.11" "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.19.6", "@babel/plugin-transform-modules-commonjs@^7.20.11": - version "7.20.11" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.20.11.tgz#8cb23010869bf7669fd4b3098598b6b2be6dc607" - integrity sha512-S8e1f7WQ7cimJQ51JkAaDrEtohVEitXjgCGAS2N8S31Y42E+kWwfSz83LYz57QdBm7q9diARVqanIaH2oVgQnw== +"@babel/plugin-transform-modules-commonjs@7.20.7", "@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.19.6", "@babel/plugin-transform-modules-commonjs@^7.20.11": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.20.7.tgz#abb5f84695e74d46acf48244082f6cbf8bb23120" + integrity sha512-76jqqFiFdCD+RJwEdtBHUG2/rEKQAmpejPbAKyQECEE3/y4U5CMPc9IXvipS990vgQhzq+ZRw6WJ+q4xJ/P24w== dependencies: - "@babel/helper-module-transforms" "^7.20.11" + "@babel/helper-module-transforms" "^7.20.7" "@babel/helper-plugin-utils" "^7.20.2" "@babel/helper-simple-access" "^7.20.2" From 601d5b4b9130cab3e2512454693d9fcdcb1520b6 Mon Sep 17 00:00:00 2001 From: LekoArts Date: Wed, 15 Feb 2023 13:29:25 +0100 Subject: [PATCH 3/6] update test --- .../__tests__/fixtures/keep-dynamic-import/default/output.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/babel-preset-gatsby-package/lib/__tests__/fixtures/keep-dynamic-import/default/output.js b/packages/babel-preset-gatsby-package/lib/__tests__/fixtures/keep-dynamic-import/default/output.js index f4449b7902cd6..1893c46fea3d6 100644 --- a/packages/babel-preset-gatsby-package/lib/__tests__/fixtures/keep-dynamic-import/default/output.js +++ b/packages/babel-preset-gatsby-package/lib/__tests__/fixtures/keep-dynamic-import/default/output.js @@ -5,5 +5,5 @@ exports.someFunction = someFunction; function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } async function someFunction() { - return await (specifier => new Promise(r => r(specifier)).then(s => _interopRequireWildcard(require(s))))(`path`); + return await Promise.resolve().then(() => _interopRequireWildcard(require(`path`))); } From 29efece2e09e93324adc643b78e21bf495599b11 Mon Sep 17 00:00:00 2001 From: LekoArts Date: Wed, 15 Feb 2023 13:49:36 +0100 Subject: [PATCH 4/6] update snapshot again --- .../__tests__/fixtures/keep-dynamic-import/default/output.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/babel-preset-gatsby-package/lib/__tests__/fixtures/keep-dynamic-import/default/output.js b/packages/babel-preset-gatsby-package/lib/__tests__/fixtures/keep-dynamic-import/default/output.js index 1893c46fea3d6..f5c5f24d4fdf2 100644 --- a/packages/babel-preset-gatsby-package/lib/__tests__/fixtures/keep-dynamic-import/default/output.js +++ b/packages/babel-preset-gatsby-package/lib/__tests__/fixtures/keep-dynamic-import/default/output.js @@ -5,5 +5,5 @@ exports.someFunction = someFunction; function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } async function someFunction() { - return await Promise.resolve().then(() => _interopRequireWildcard(require(`path`))); + return await Promise.resolve(`path`).then(s => _interopRequireWildcard(require(s))); } From b002ad3fd6f64eb74a679cbeeba81d9a8ca06944 Mon Sep 17 00:00:00 2001 From: pieh Date: Wed, 15 Feb 2023 18:34:27 +0100 Subject: [PATCH 5/6] earlier version --- package.json | 2 +- .../keep-dynamic-import/default/output.js | 2 +- yarn.lock | 19 ++++++++++--------- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index cc1dbedbe348a..bb303b4cf30cd 100644 --- a/package.json +++ b/package.json @@ -129,6 +129,6 @@ "packages/*" ], "resolutions": { - "@babel/plugin-transform-modules-commonjs": "7.20.7" + "@babel/plugin-transform-modules-commonjs": "7.18.6" } } diff --git a/packages/babel-preset-gatsby-package/lib/__tests__/fixtures/keep-dynamic-import/default/output.js b/packages/babel-preset-gatsby-package/lib/__tests__/fixtures/keep-dynamic-import/default/output.js index f5c5f24d4fdf2..1893c46fea3d6 100644 --- a/packages/babel-preset-gatsby-package/lib/__tests__/fixtures/keep-dynamic-import/default/output.js +++ b/packages/babel-preset-gatsby-package/lib/__tests__/fixtures/keep-dynamic-import/default/output.js @@ -5,5 +5,5 @@ exports.someFunction = someFunction; function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } async function someFunction() { - return await Promise.resolve(`path`).then(s => _interopRequireWildcard(require(s))); + return await Promise.resolve().then(() => _interopRequireWildcard(require(`path`))); } diff --git a/yarn.lock b/yarn.lock index 3e641525c4df2..9691e06e02ec8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -423,7 +423,7 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.20.11", "@babel/helper-module-transforms@^7.20.7": +"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.20.11": version "7.20.11" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz#df4c7af713c557938c50ea3ad0117a7944b2f1b0" integrity sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg== @@ -483,7 +483,7 @@ "@babel/traverse" "^7.20.7" "@babel/types" "^7.20.7" -"@babel/helper-simple-access@^7.20.2": +"@babel/helper-simple-access@^7.18.6", "@babel/helper-simple-access@^7.20.2": version "7.20.2" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz#0ab452687fe0c2cfb1e2b9e0015de07fc2d62dd9" integrity sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA== @@ -1018,14 +1018,15 @@ "@babel/helper-module-transforms" "^7.20.11" "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-transform-modules-commonjs@7.20.7", "@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.19.6", "@babel/plugin-transform-modules-commonjs@^7.20.11": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.20.7.tgz#abb5f84695e74d46acf48244082f6cbf8bb23120" - integrity sha512-76jqqFiFdCD+RJwEdtBHUG2/rEKQAmpejPbAKyQECEE3/y4U5CMPc9IXvipS990vgQhzq+ZRw6WJ+q4xJ/P24w== +"@babel/plugin-transform-modules-commonjs@7.18.6", "@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.19.6", "@babel/plugin-transform-modules-commonjs@^7.20.11": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz#afd243afba166cca69892e24a8fd8c9f2ca87883" + integrity sha512-Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q== dependencies: - "@babel/helper-module-transforms" "^7.20.7" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-simple-access" "^7.20.2" + "@babel/helper-module-transforms" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-simple-access" "^7.18.6" + babel-plugin-dynamic-import-node "^2.3.3" "@babel/plugin-transform-modules-systemjs@^7.19.6": version "7.20.11" From 3a586c4aa46720e76c192cceeee317c4b50d168a Mon Sep 17 00:00:00 2001 From: pieh Date: Wed, 15 Feb 2023 19:06:46 +0100 Subject: [PATCH 6/6] fix e2e test setup --- e2e-tests/contentful/src/pages/ssr.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/e2e-tests/contentful/src/pages/ssr.js b/e2e-tests/contentful/src/pages/ssr.js index 4627d2355afd7..c9e4a0c83769a 100644 --- a/e2e-tests/contentful/src/pages/ssr.js +++ b/e2e-tests/contentful/src/pages/ssr.js @@ -3,12 +3,16 @@ import Layout from "../components/layout" const SSRPage = ({ serverData }) => ( -
{serverData}
+
{serverData.test}
) export default SSRPage export function getServerData() { - return "getServerData used in contentful E2E test" -} \ No newline at end of file + return { + props: { + test: "getServerData used in contentful E2E test", + }, + } +}