From 6a0492d780f9d807d3eebe79c209d5f96a933ee6 Mon Sep 17 00:00:00 2001 From: Deep Singhvi Date: Sun, 3 Nov 2024 09:50:30 -0500 Subject: [PATCH] chore: upgrade execa (#1769) --- clis/generator-cli/package.json | 2 +- .../src/__test__/testGenerateReadme.ts | 2 +- .../src/__test__/testGenerateReference.ts | 2 +- clis/vercel-scripts/package.json | 2 +- package.json | 3 +- packages/scripts/package.json | 2 +- packages/scripts/src/getAllPackages.ts | 2 +- pnpm-lock.yaml | 198 ++++++++---------- servers/fdr/package.json | 3 +- .../src/__test__/ete/setupDockerizedFdr.ts | 2 +- .../fdr/src/__test__/local/setupMockFdr.ts | 2 +- servers/fern-bot/package.json | 2 +- .../shared/updateGeneratorInternal.ts | 9 +- .../actions/updateFDRRepoData.ts | 3 +- servers/fern-bot/src/libs/buf.ts | 4 +- servers/fern-bot/src/libs/fern.ts | 12 +- .../src/utils/createLoggingExecutable.ts | 4 +- servers/fern-bot/src/utils/loggingExeca.ts | 8 +- 18 files changed, 124 insertions(+), 138 deletions(-) diff --git a/clis/generator-cli/package.json b/clis/generator-cli/package.json index 529cb1c71f..8a6469e614 100644 --- a/clis/generator-cli/package.json +++ b/clis/generator-cli/package.json @@ -35,7 +35,7 @@ "depcheck": "^1.4.3", "esbuild": "0.20.2", "eslint": "^8.56.0", - "execa": "^5.1.1", + "execa": "^9.5.1", "lodash-es": "^4.17.12", "organize-imports-cli": "^0.10.0", "prettier": "^3.3.2", diff --git a/clis/generator-cli/src/__test__/testGenerateReadme.ts b/clis/generator-cli/src/__test__/testGenerateReadme.ts index afa5ef126e..fd941c4353 100644 --- a/clis/generator-cli/src/__test__/testGenerateReadme.ts +++ b/clis/generator-cli/src/__test__/testGenerateReadme.ts @@ -1,4 +1,4 @@ -import execa from "execa"; +import { execa } from "execa"; import { writeFile } from "fs/promises"; import path from "path"; import tmp from "tmp-promise"; diff --git a/clis/generator-cli/src/__test__/testGenerateReference.ts b/clis/generator-cli/src/__test__/testGenerateReference.ts index 91fd2204e2..67c92e48ed 100644 --- a/clis/generator-cli/src/__test__/testGenerateReference.ts +++ b/clis/generator-cli/src/__test__/testGenerateReference.ts @@ -1,4 +1,4 @@ -import execa from "execa"; +import { execa } from "execa"; import { writeFile } from "fs/promises"; import path from "path"; import tmp from "tmp-promise"; diff --git a/clis/vercel-scripts/package.json b/clis/vercel-scripts/package.json index 3bb01bb651..1ec79a7d7c 100644 --- a/clis/vercel-scripts/package.json +++ b/clis/vercel-scripts/package.json @@ -28,7 +28,7 @@ "dependencies": { "@fern-fern/fern-docs-sdk": "0.0.5", "@fern-fern/vercel": "0.0.4655", - "execa": "^9.4.0", + "execa": "^9.5.1", "ts-essentials": "^10.0.1" } } diff --git a/package.json b/package.json index 0518ed32ef..8d241655ec 100644 --- a/package.json +++ b/package.json @@ -96,7 +96,8 @@ "esbuild": "0.20.2", "jsonpath-plus": "10.0.0", "markdown-to-jsx": "7.4.0", - "webpack": "5.94.0" + "webpack": "5.94.0", + "clipboardy": "4.0.0" }, "dependenciesMeta": { "jsonc-parser@2.2.1": { diff --git a/packages/scripts/package.json b/packages/scripts/package.json index 2715e0e7ab..6b6fb8b4d4 100644 --- a/packages/scripts/package.json +++ b/packages/scripts/package.json @@ -31,7 +31,7 @@ }, "dependencies": { "chalk": "^5.3.0", - "execa": "^5.1.1", + "execa": "^9.5.1", "js-yaml": "^4.1.0", "ts-essentials": "^10.0.1", "yargs": "^17.4.1" diff --git a/packages/scripts/src/getAllPackages.ts b/packages/scripts/src/getAllPackages.ts index 8fbb1e244e..7fd16c4cfa 100644 --- a/packages/scripts/src/getAllPackages.ts +++ b/packages/scripts/src/getAllPackages.ts @@ -1,4 +1,4 @@ -import execa from "execa"; +import { execa } from "execa"; import path from "path"; export interface YarnPackage { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b97b24edc1..bdcc8437f4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -11,6 +11,7 @@ overrides: jsonpath-plus: 10.0.0 markdown-to-jsx: 7.4.0 webpack: 5.94.0 + clipboardy: 4.0.0 importers: @@ -228,8 +229,8 @@ importers: specifier: ^8.56.0 version: 8.57.0 execa: - specifier: ^5.1.1 - version: 5.1.1 + specifier: ^9.5.1 + version: 9.5.1 lodash-es: specifier: ^4.17.12 version: 4.17.21 @@ -264,8 +265,8 @@ importers: specifier: 0.0.4655 version: 0.0.4655 execa: - specifier: ^9.4.0 - version: 9.4.0 + specifier: ^9.5.1 + version: 9.5.1 ts-essentials: specifier: ^10.0.1 version: 10.0.1(typescript@4.9.5) @@ -965,8 +966,8 @@ importers: specifier: ^5.3.0 version: 5.3.0 execa: - specifier: ^5.1.1 - version: 5.1.1 + specifier: ^9.5.1 + version: 9.5.1 js-yaml: specifier: ^4.1.0 version: 4.1.0 @@ -2799,9 +2800,6 @@ importers: '@types/cors': specifier: ^2.8.13 version: 2.8.17 - '@types/execa': - specifier: ^2.0.0 - version: 2.0.0 '@types/express': specifier: ^4.17.13 version: 4.17.21 @@ -2836,8 +2834,8 @@ importers: specifier: ^8.56.0 version: 8.57.0 execa: - specifier: ^5.1.1 - version: 5.1.1 + specifier: ^9.5.1 + version: 9.5.1 nodemon: specifier: ^3.0.0 version: 3.1.0 @@ -2939,8 +2937,8 @@ importers: specifier: ^7.9.5 version: 7.9.5 execa: - specifier: ^5.1.1 - version: 5.1.1 + specifier: ^9.5.1 + version: 9.5.1 fern-api: specifier: ^0.21.0 version: 0.21.0 @@ -7113,10 +7111,6 @@ packages: '@types/estree@1.0.6': resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} - '@types/execa@2.0.0': - resolution: {integrity: sha512-aBnkJ0r3khaZkHzu9pDZeWXrDg1N/ZtDGRQkK+KIqNVvvTvW+URXMUHQQCQMYdb2GPrcwu9Fq6l9iiT+pirIbg==} - deprecated: This is a stub types definition. execa provides its own type definitions, so you do not need this installed. - '@types/express-serve-static-core@4.19.0': resolution: {integrity: sha512-bGyep3JqPCRry1wq+O5n7oiBgGWmeIJXPjXXCo8EK0u8duZGSYar7cGqd3ML2JUsLGeB7fmc06KYo9fLGWqPvQ==} @@ -8338,9 +8332,6 @@ packages: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} - arch@2.2.0: - resolution: {integrity: sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==} - archive-type@4.0.0: resolution: {integrity: sha512-zV4Ky0v1F8dBrdYElwTvQhweQ0P7Kwc1aluqJsYtOBP01jXcWCyW2IEfI1YiqsG+Iy7ZR+o5LF1N+PGECBxHWA==} engines: {node: '>=4'} @@ -8968,9 +8959,9 @@ packages: peerDependencies: typanion: '*' - clipboardy@1.2.2: - resolution: {integrity: sha512-16KrBOV7bHmHdxcQiCvfUFYVFyEah4FI8vYT1Fr7CGSA4G+xBWMEfUEQJS1hxeHGtI9ju1Bzs9uXSbj5HZKArw==} - engines: {node: '>=4'} + clipboardy@4.0.0: + resolution: {integrity: sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==} + engines: {node: '>=18'} cliui@7.0.4: resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} @@ -9248,9 +9239,6 @@ packages: create-require@1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} - cross-spawn@5.1.0: - resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} - cross-spawn@7.0.3: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} @@ -10239,10 +10227,6 @@ packages: evp_bytestokey@1.0.3: resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==} - execa@0.8.0: - resolution: {integrity: sha512-zDWS+Rb1E8BlqqhALSt9kUhss8Qq4nN3iof3gsOdyINksElaPyNBtKUMTR62qhvgVWR0CqCX7sdnKe4MnUbFEA==} - engines: {node: '>=4'} - execa@5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} @@ -10251,8 +10235,12 @@ packages: resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==} engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} - execa@9.4.0: - resolution: {integrity: sha512-yKHlle2YGxZE842MERVIplWwNH5VYmqqcPFgtnlU//K8gxuFFXu0pwd/CrfXTumFpeEiufsP7+opT/bPJa1yVw==} + execa@8.0.1: + resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} + engines: {node: '>=16.17'} + + execa@9.5.1: + resolution: {integrity: sha512-QY5PPtSonnGwhhHDNI7+3RvY285c7iuJFFB+lU+oEzMY/gEGJ808owqJsrr8Otd1E/x07po1LkUBmdAc5duPAg==} engines: {node: ^18.19.0 || >=20.5.0} exit@0.1.2: @@ -10678,10 +10666,6 @@ packages: resolution: {integrity: sha512-AUGhbbemXxrZJRD5cDvKtQxLuYaIbNtDTK8YqupCI393Q2KSTreEsLUN3ZxAWFGiKTzL6nKuzfcIvieflUX9qA==} engines: {node: '>=0.10.0'} - get-stream@3.0.0: - resolution: {integrity: sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==} - engines: {node: '>=4'} - get-stream@5.2.0: resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} engines: {node: '>=8'} @@ -10690,6 +10674,10 @@ packages: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} + get-stream@8.0.1: + resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} + engines: {node: '>=16'} + get-stream@9.0.1: resolution: {integrity: sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==} engines: {node: '>=18'} @@ -11079,6 +11067,10 @@ packages: resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==} engines: {node: '>=14.18.0'} + human-signals@5.0.0: + resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} + engines: {node: '>=16.17.0'} + human-signals@8.0.0: resolution: {integrity: sha512-/1/GPCpDUCCYwlERiYjxoczfP0zfvZMU/OWgQPMya9AbAE24vseigFdhAMObpc8Q4lc/kjutPfUddDYyAmejnA==} engines: {node: '>=18.18.0'} @@ -11310,6 +11302,11 @@ packages: engines: {node: '>=8'} hasBin: true + is-docker@3.0.0: + resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + hasBin: true + is-electron@2.2.2: resolution: {integrity: sha512-FO/Rhvz5tuw4MCWkpMzHFKWD2LsfHzIb7i6MdPYZ/KW7AlxawyLkqdy+jPZP1WubqEADE3O4FUENlJHDfQASRg==} @@ -11347,6 +11344,11 @@ packages: is-hexadecimal@2.0.1: resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} + is-inside-container@1.0.0: + resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} + engines: {node: '>=14.16'} + hasBin: true + is-interactive@1.0.0: resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} engines: {node: '>=8'} @@ -11481,6 +11483,14 @@ packages: resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} engines: {node: '>=8'} + is-wsl@3.1.0: + resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==} + engines: {node: '>=16'} + + is64bit@2.0.0: + resolution: {integrity: sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw==} + engines: {node: '>=18'} + isarray@0.0.1: resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==} @@ -12762,10 +12772,6 @@ packages: resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} engines: {node: '>=10'} - npm-run-path@2.0.2: - resolution: {integrity: sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==} - engines: {node: '>=4'} - npm-run-path@4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} engines: {node: '>=8'} @@ -13042,10 +13048,6 @@ packages: resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} engines: {node: '>=0.10.0'} - path-key@2.0.1: - resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==} - engines: {node: '>=4'} - path-key@3.1.1: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} @@ -14381,18 +14383,10 @@ packages: resolution: {integrity: sha512-vHUeXJU1UvlO/BNwTpT0x/r53WkLUVxrmb5JTgW92fdFCFk0ispLMAeu/jPO2vjkXM1fYUi3K7/qcLF47pwM1A==} engines: {libvips: '>=8.15.2', node: ^18.17.0 || ^20.3.0 || >=21.0.0} - shebang-command@1.2.0: - resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} - engines: {node: '>=0.10.0'} - shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} - shebang-regex@1.0.0: - resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} - engines: {node: '>=0.10.0'} - shebang-regex@3.0.0: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} @@ -14646,10 +14640,6 @@ packages: strip-dirs@2.1.0: resolution: {integrity: sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==} - strip-eof@1.0.0: - resolution: {integrity: sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==} - engines: {node: '>=0.10.0'} - strip-final-newline@2.0.0: resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} engines: {node: '>=6'} @@ -14868,6 +14858,10 @@ packages: synchronous-promise@2.0.17: resolution: {integrity: sha512-AsS729u2RHUfEra9xJrE39peJcc2stq2+poBXX8bcM08Y6g9j/i/PUzwNQqkaJde7Ntg1TO7bSREbR5sdosQ+g==} + system-architecture@0.1.0: + resolution: {integrity: sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==} + engines: {node: '>=18'} + tabbable@6.2.0: resolution: {integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==} @@ -16390,7 +16384,7 @@ snapshots: '@aws-crypto/sha256-browser': 3.0.0 '@aws-crypto/sha256-js': 3.0.0 '@aws-sdk/client-sso-oidc': 3.572.0(@aws-sdk/client-sts@3.572.0) - '@aws-sdk/client-sts': 3.572.0(@aws-sdk/client-sso-oidc@3.572.0) + '@aws-sdk/client-sts': 3.572.0 '@aws-sdk/core': 3.572.0 '@aws-sdk/credential-provider-node': 3.572.0(@aws-sdk/client-sso-oidc@3.572.0)(@aws-sdk/client-sts@3.572.0) '@aws-sdk/middleware-bucket-endpoint': 3.568.0 @@ -16451,7 +16445,7 @@ snapshots: dependencies: '@aws-crypto/sha256-browser': 3.0.0 '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/client-sts': 3.572.0(@aws-sdk/client-sso-oidc@3.572.0) + '@aws-sdk/client-sts': 3.572.0 '@aws-sdk/core': 3.572.0 '@aws-sdk/credential-provider-node': 3.572.0(@aws-sdk/client-sso-oidc@3.572.0)(@aws-sdk/client-sts@3.572.0) '@aws-sdk/middleware-host-header': 3.567.0 @@ -16536,7 +16530,7 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/client-sts@3.572.0(@aws-sdk/client-sso-oidc@3.572.0)': + '@aws-sdk/client-sts@3.572.0': dependencies: '@aws-crypto/sha256-browser': 3.0.0 '@aws-crypto/sha256-js': 3.0.0 @@ -16579,7 +16573,6 @@ snapshots: '@smithy/util-utf8': 2.3.0 tslib: 2.6.2 transitivePeerDependencies: - - '@aws-sdk/client-sso-oidc' - aws-crt '@aws-sdk/core@3.572.0': @@ -16613,7 +16606,7 @@ snapshots: '@aws-sdk/credential-provider-ini@3.572.0(@aws-sdk/client-sso-oidc@3.572.0)(@aws-sdk/client-sts@3.572.0)': dependencies: - '@aws-sdk/client-sts': 3.572.0(@aws-sdk/client-sso-oidc@3.572.0) + '@aws-sdk/client-sts': 3.572.0 '@aws-sdk/credential-provider-env': 3.568.0 '@aws-sdk/credential-provider-process': 3.572.0 '@aws-sdk/credential-provider-sso': 3.572.0(@aws-sdk/client-sso-oidc@3.572.0) @@ -16670,7 +16663,7 @@ snapshots: '@aws-sdk/credential-provider-web-identity@3.568.0(@aws-sdk/client-sts@3.572.0)': dependencies: - '@aws-sdk/client-sts': 3.572.0(@aws-sdk/client-sso-oidc@3.572.0) + '@aws-sdk/client-sts': 3.572.0 '@aws-sdk/types': 3.567.0 '@smithy/property-provider': 2.2.0 '@smithy/types': 2.12.0 @@ -22180,10 +22173,6 @@ snapshots: '@types/estree@1.0.6': {} - '@types/execa@2.0.0': - dependencies: - execa: 5.1.1 - '@types/express-serve-static-core@4.19.0': dependencies: '@types/node': 20.12.12 @@ -24138,8 +24127,6 @@ snapshots: normalize-path: 3.0.0 picomatch: 2.3.1 - arch@2.2.0: {} - archive-type@4.0.0: dependencies: file-type: 4.4.0 @@ -24937,10 +24924,11 @@ snapshots: dependencies: typanion: 3.14.0 - clipboardy@1.2.2: + clipboardy@4.0.0: dependencies: - arch: 2.2.0 - execa: 0.8.0 + execa: 8.0.1 + is-wsl: 3.1.0 + is64bit: 2.0.0 cliui@7.0.4: dependencies: @@ -25238,12 +25226,6 @@ snapshots: create-require@1.1.1: {} - cross-spawn@5.1.0: - dependencies: - lru-cache: 4.1.5 - shebang-command: 1.2.0 - which: 1.3.1 - cross-spawn@7.0.3: dependencies: path-key: 3.1.1 @@ -26643,16 +26625,6 @@ snapshots: md5.js: 1.3.5 safe-buffer: 5.2.1 - execa@0.8.0: - dependencies: - cross-spawn: 5.1.0 - get-stream: 3.0.0 - is-stream: 1.1.0 - npm-run-path: 2.0.2 - p-finally: 1.0.0 - signal-exit: 3.0.7 - strip-eof: 1.0.0 - execa@5.1.1: dependencies: cross-spawn: 7.0.3 @@ -26677,7 +26649,19 @@ snapshots: signal-exit: 3.0.7 strip-final-newline: 3.0.0 - execa@9.4.0: + execa@8.0.1: + dependencies: + cross-spawn: 7.0.3 + get-stream: 8.0.1 + human-signals: 5.0.0 + is-stream: 3.0.0 + merge-stream: 2.0.0 + npm-run-path: 5.3.0 + onetime: 6.0.0 + signal-exit: 4.1.0 + strip-final-newline: 3.0.0 + + execa@9.5.1: dependencies: '@sindresorhus/merge-streams': 4.0.0 cross-spawn: 7.0.3 @@ -27148,14 +27132,14 @@ snapshots: object-assign: 4.1.1 pinkie-promise: 2.0.1 - get-stream@3.0.0: {} - get-stream@5.2.0: dependencies: pump: 3.0.0 get-stream@6.0.1: {} + get-stream@8.0.1: {} + get-stream@9.0.1: dependencies: '@sec-ant/readable-stream': 0.4.1 @@ -27722,6 +27706,8 @@ snapshots: human-signals@4.3.1: {} + human-signals@5.0.0: {} + human-signals@8.0.0: {} humps@2.0.1: {} @@ -27972,6 +27958,8 @@ snapshots: is-docker@2.2.1: {} + is-docker@3.0.0: {} + is-electron@2.2.2: {} is-extendable@0.1.1: {} @@ -27998,6 +27986,10 @@ snapshots: is-hexadecimal@2.0.1: {} + is-inside-container@1.0.0: + dependencies: + is-docker: 3.0.0 + is-interactive@1.0.0: {} is-map@2.0.3: {} @@ -28093,6 +28085,14 @@ snapshots: dependencies: is-docker: 2.2.1 + is-wsl@3.1.0: + dependencies: + is-inside-container: 1.0.0 + + is64bit@2.0.0: + dependencies: + system-architecture: 0.1.0 + isarray@0.0.1: {} isarray@1.0.0: {} @@ -30065,10 +30065,6 @@ snapshots: normalize-url@6.1.0: {} - npm-run-path@2.0.2: - dependencies: - path-key: 2.0.1 - npm-run-path@4.0.1: dependencies: path-key: 3.1.1 @@ -30385,8 +30381,6 @@ snapshots: path-is-absolute@1.0.1: {} - path-key@2.0.1: {} - path-key@3.1.1: {} path-key@4.0.0: {} @@ -31949,16 +31943,10 @@ snapshots: '@img/sharp-win32-ia32': 0.33.3 '@img/sharp-win32-x64': 0.33.3 - shebang-command@1.2.0: - dependencies: - shebang-regex: 1.0.0 - shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 - shebang-regex@1.0.0: {} - shebang-regex@3.0.0: {} shiki@1.22.0: @@ -32247,8 +32235,6 @@ snapshots: dependencies: is-natural-number: 4.0.1 - strip-eof@1.0.0: {} - strip-final-newline@2.0.0: {} strip-final-newline@3.0.0: {} @@ -32485,6 +32471,8 @@ snapshots: synchronous-promise@2.0.17: {} + system-architecture@0.1.0: {} + tabbable@6.2.0: {} table@6.8.2: @@ -32721,7 +32709,7 @@ snapshots: dependencies: arg: 1.0.0 chalk: 2.3.0 - clipboardy: 1.2.2 + clipboardy: 4.0.0 titleize: 1.0.0 titleize@1.0.0: {} diff --git a/servers/fdr/package.json b/servers/fdr/package.json index 05cfb1ef74..56bddeaa65 100644 --- a/servers/fdr/package.json +++ b/servers/fdr/package.json @@ -54,7 +54,6 @@ "@fern-platform/configs": "workspace:*", "@types/compression": "^1.7.5", "@types/cors": "^2.8.13", - "@types/execa": "^2.0.0", "@types/express": "^4.17.13", "@types/html-to-text": "^9.0.1", "@types/httpsnippet": "^1.23.1", @@ -66,7 +65,7 @@ "@yarnpkg/pnpify": "^4.0.1", "dotenv-cli": "^6.0.0", "eslint": "^8.56.0", - "execa": "^5.1.1", + "execa": "^9.5.1", "nodemon": "^3.0.0", "prettier": "^3.3.2", "prisma": "5.13.0", diff --git a/servers/fdr/src/__test__/ete/setupDockerizedFdr.ts b/servers/fdr/src/__test__/ete/setupDockerizedFdr.ts index 730a49f399..511580a6fe 100644 --- a/servers/fdr/src/__test__/ete/setupDockerizedFdr.ts +++ b/servers/fdr/src/__test__/ete/setupDockerizedFdr.ts @@ -1,4 +1,4 @@ -import execa from "execa"; +import { execa } from "execa"; let teardown = false; diff --git a/servers/fdr/src/__test__/local/setupMockFdr.ts b/servers/fdr/src/__test__/local/setupMockFdr.ts index 1e2fc11263..e09466c3b0 100644 --- a/servers/fdr/src/__test__/local/setupMockFdr.ts +++ b/servers/fdr/src/__test__/local/setupMockFdr.ts @@ -1,6 +1,6 @@ import { FdrClient } from "@fern-api/fdr-sdk"; import { PrismaClient } from "@prisma/client"; -import execa from "execa"; +import { execa } from "execa"; import express from "express"; import http from "http"; import { register } from "../../api"; diff --git a/servers/fern-bot/package.json b/servers/fern-bot/package.json index 9302bf55f0..16ced037d5 100644 --- a/servers/fern-bot/package.json +++ b/servers/fern-bot/package.json @@ -28,7 +28,7 @@ "@slack/web-api": "^6.9.0", "adm-zip": "^0.5.16", "cohere-ai": "^7.9.5", - "execa": "^5.1.1", + "execa": "^9.5.1", "fern-api": "^0.21.0", "find-up": "^7.0.0", "js-yaml": "^4.1.0", diff --git a/servers/fern-bot/src/functions/generator-updates/shared/updateGeneratorInternal.ts b/servers/fern-bot/src/functions/generator-updates/shared/updateGeneratorInternal.ts index 1e43550a1e..b983149d3a 100644 --- a/servers/fern-bot/src/functions/generator-updates/shared/updateGeneratorInternal.ts +++ b/servers/fern-bot/src/functions/generator-updates/shared/updateGeneratorInternal.ts @@ -146,7 +146,8 @@ export async function updateVersionInternal( for (const fernWorkspacePath of fernWorkspaces) { let maybeOrganization: string | undefined; try { - maybeOrganization = cleanStdout((await execFernCli("organization", fullRepoPath)).stdout); + const result = await execFernCli("organization", fullRepoPath); + maybeOrganization = cleanStdout(typeof result.stdout === "string" ? result.stdout : ""); console.log(`Found organization ID: ${maybeOrganization}`); } catch (error) { console.error( @@ -177,7 +178,8 @@ export async function updateVersionInternal( return formatChangelogResponses(fromVersion, await getCliChangelog(fdrUrl, fromVersion, toVersion)); }, getEntityVersion: async () => { - return cleanStdout((await execFernCli("--version", fernWorkspacePath)).stdout); + const result = await execFernCli("--version", fernWorkspacePath); + return cleanStdout(typeof result.stdout === "string" ? result.stdout : ""); }, slackClient, maybeOrganization, @@ -234,7 +236,8 @@ export async function updateVersionInternal( if (apiName !== NO_API_FALLBACK_KEY) { command += ` --api ${apiName}`; } - return cleanStdout((await execFernCli(command, fernWorkspacePath)).stdout); + const result = await execFernCli(command, fernWorkspacePath); + return cleanStdout(typeof result.stdout === "string" ? result.stdout : ""); }, maybeGetGeneratorMetadata: async () => { return { diff --git a/servers/fern-bot/src/functions/update-fdr-repo-data/actions/updateFDRRepoData.ts b/servers/fern-bot/src/functions/update-fdr-repo-data/actions/updateFDRRepoData.ts index 8cecf71785..32b9a8b44b 100644 --- a/servers/fern-bot/src/functions/update-fdr-repo-data/actions/updateFDRRepoData.ts +++ b/servers/fern-bot/src/functions/update-fdr-repo-data/actions/updateFDRRepoData.ts @@ -52,7 +52,8 @@ async function updateRepoDb( try { // Try this to see if it's a fern config repo, there are probably better ways to do this const generatorsList = await getGenerators(fernWorkspacePath); - const organizationId = cleanFernStdout((await execFernCli("organization", fernWorkspacePath)).stdout); + const result = await execFernCli("organization", fernWorkspacePath); + const organizationId = cleanFernStdout(typeof result.stdout === "string" ? result.stdout : ""); // Update config repo in FDR const upsertResponse = await client.git.upsertRepository({ diff --git a/servers/fern-bot/src/libs/buf.ts b/servers/fern-bot/src/libs/buf.ts index 51634199cc..5eb58a7ea6 100644 --- a/servers/fern-bot/src/libs/buf.ts +++ b/servers/fern-bot/src/libs/buf.ts @@ -1,5 +1,5 @@ import { createLoggingExecutable } from "@utils/createLoggingExecutable"; -import execa from "execa"; +import { execa } from "execa"; import tmp from "tmp-promise"; import urlJoin from "url-join"; @@ -31,7 +31,7 @@ export declare namespace Buf { } } -export type CLI = (args?: string[]) => execa.ExecaChildProcess; +export type CLI = (args?: string[]) => ReturnType; export class Buf { private cli: CLI | undefined; diff --git a/servers/fern-bot/src/libs/fern.ts b/servers/fern-bot/src/libs/fern.ts index 140e4fe6b5..4ee873d4c4 100644 --- a/servers/fern-bot/src/libs/fern.ts +++ b/servers/fern-bot/src/libs/fern.ts @@ -1,15 +1,11 @@ -import execa from "execa"; -import { readFile, readdir } from "fs/promises"; +import { execa, Options, Result } from "execa"; +import { readdir, readFile } from "fs/promises"; import yaml from "js-yaml"; import path from "path"; import tmp from "tmp-promise"; import { doesPathExist } from "./fs"; -export async function execFernCli( - command: string, - cwd?: string, - pipeYes: boolean = false, -): Promise> { +export async function execFernCli(command: string, cwd?: string, pipeYes: boolean = false): Promise> { console.log(`Running command on fern CLI: ${command}`); const commandParts = command.split(" "); try { @@ -26,7 +22,7 @@ export async function execFernCli( // Re-install the CLI to ensure it's at the correct path, given the updated config await execa("npm", ["install", "-g", "fern-api"]); - let command: execa.ExecaChildProcess; + let command: Promise>; // If you don't have node_modules/fern-api, try using the CLI directly if (!(await doesPathExist(`${process.cwd()}/node_modules/fern-api`))) { // TODO: is there a better way to pipe `yes`? Piping the output of the real `yes` command doesn't work -- resulting in an EPIPE error. diff --git a/servers/fern-bot/src/utils/createLoggingExecutable.ts b/servers/fern-bot/src/utils/createLoggingExecutable.ts index 2d83edabc7..f94ac11ce1 100644 --- a/servers/fern-bot/src/utils/createLoggingExecutable.ts +++ b/servers/fern-bot/src/utils/createLoggingExecutable.ts @@ -1,7 +1,7 @@ -import { ExecaReturnValue } from "execa"; +import { Options, Result } from "execa"; import { loggingExeca } from "./loggingExeca"; -export type LoggingExecutable = (args?: string[], options?: loggingExeca.Options) => Promise; +export type LoggingExecutable = (args?: string[], options?: loggingExeca.Options) => Promise>; export declare namespace createLoggingExecutable { export interface Options extends loggingExeca.Options {} diff --git a/servers/fern-bot/src/utils/loggingExeca.ts b/servers/fern-bot/src/utils/loggingExeca.ts index ad3c32f6f5..a0d3c2104f 100644 --- a/servers/fern-bot/src/utils/loggingExeca.ts +++ b/servers/fern-bot/src/utils/loggingExeca.ts @@ -1,20 +1,18 @@ -import execa, { ExecaReturnValue } from "execa"; +import { execa, Options as ExecaOptions, Result } from "execa"; export declare namespace loggingExeca { - export interface Options extends execa.Options { + export interface Options extends ExecaOptions { doNotPipeOutput?: boolean; secrets?: string[]; substitutions?: Record; } - - export type ReturnValue = ExecaReturnValue; } export async function loggingExeca( executable: string, args: string[] = [], { doNotPipeOutput = false, secrets = [], substitutions = {}, ...execaOptions }: loggingExeca.Options = {}, -): Promise { +): Promise> { const allSubstitutions = secrets.reduce( (acc, secret) => ({ ...acc,