Skip to content

chore(deps): remove execa direct dependency #4854

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 11 commits into from
Jul 29, 2025

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Aug 28, 2023

Bumps execa from 4.1.0 to 8.0.1.

Release notes

Sourced from execa's releases.

v8.0.1

Fixes

sindresorhus/execa@v8.0.0...v8.0.1

v8.0.0

Breaking

  • Require Node.js 16.7.0 and later (#569)

sindresorhus/execa@v7.2.0...v8.0.0

v7.2.0

  • Add cwd error property (#565) f57fdec

sindresorhus/execa@v7.1.1...v7.2.0

v7.1.1

Features

Bug fixes

v7.1.0

Features

import {$} from 'execa';
const branch = await $git branch --show-current;
await $dep deploy --branch=${branch};

// Similar to `echo unicorns > stdout.txt` in Bash
await execa('echo', ['unicorns']).pipeStdout('stdout.txt');
// Similar to echo unicorns 2> stdout.txt in Bash
await execa('echo', ['unicorns']).pipeStderr('stderr.txt');
</tr></table>

... (truncated)

Commits

Dependabot compatibility score

You can trigger a rebase of this PR by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

@dependabot dependabot bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Aug 28, 2023
@dependabot dependabot bot had a problem deploying to pull_request_unsafe August 28, 2023 15:41 Failure
@dependabot dependabot bot had a problem deploying to pull_request_unsafe August 28, 2023 15:41 Failure
@dependabot dependabot bot had a problem deploying to pull_request_unsafe August 28, 2023 15:41 Failure
@dependabot dependabot bot had a problem deploying to pull_request_unsafe August 28, 2023 15:41 Failure
Bumps [execa](https://github.com/sindresorhus/execa) from 4.1.0 to 8.0.1.
- [Release notes](https://github.com/sindresorhus/execa/releases)
- [Commits](sindresorhus/execa@v4.1.0...v8.0.1)

---
updated-dependencies:
- dependency-name: execa
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot force-pushed the dependabot/npm_and_yarn/execa-8.0.1 branch from 61384de to d2307fd Compare September 18, 2023 09:15
@dependabot dependabot bot had a problem deploying to pull_request_unsafe September 18, 2023 09:15 Failure
@dependabot dependabot bot had a problem deploying to pull_request_unsafe September 18, 2023 09:15 Failure
@dependabot dependabot bot had a problem deploying to pull_request_unsafe September 18, 2023 09:15 Failure
@dependabot dependabot bot had a problem deploying to pull_request_unsafe September 18, 2023 09:15 Failure
@romainseb romainseb temporarily deployed to pull_request_unsafe November 28, 2023 09:35 — with GitHub Actions Inactive
@romainseb romainseb removed dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Nov 28, 2023
@romainseb romainseb self-assigned this Nov 28, 2023
@romainseb romainseb temporarily deployed to pull_request_unsafe November 29, 2023 08:59 — with GitHub Actions Inactive
@romainseb romainseb temporarily deployed to pull_request_unsafe November 29, 2023 08:59 — with GitHub Actions Inactive
@romainseb romainseb temporarily deployed to pull_request_unsafe November 29, 2023 08:59 — with GitHub Actions Inactive
@romainseb romainseb temporarily deployed to pull_request_unsafe November 29, 2023 08:59 — with GitHub Actions Inactive
@romainseb romainseb temporarily deployed to pull_request_unsafe November 29, 2023 08:59 — with GitHub Actions Inactive
@romainseb romainseb removed their assignment Jan 24, 2024
Copy link
Contributor Author

dependabot bot commented on behalf of github May 13, 2024

A newer version of execa exists, but since this PR has been edited by someone other than Dependabot I haven't updated it. You'll get a PR for the updated version as normal once this PR is merged.

Copy link

changeset-bot bot commented Jul 29, 2025

🦋 Changeset detected

Latest commit: 3c56f93

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@talend/module-to-cdn Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@jmfrancois jmfrancois temporarily deployed to pull_request_unsafe July 29, 2025 12:12 — with GitHub Actions Inactive
Comment on lines 13 to 15
import('execa').then(({default: execaModule}) => {
execa = execaModule;
});
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I dont' see any default in it 🤔

> import('execa').then(mod => console.log(mod))
Promise {
  <pending>,
  [Symbol(async_id_symbol)]: 2448,
  [Symbol(trigger_async_id_symbol)]: 2440
}
> [Module: null prototype] {
  '$': [Function: $] { sync: [Function (anonymous)] },
  execa: [Function: execa],
  execaCommand: [Function: execaCommand],
  execaCommandSync: [Function: execaCommandSync],
  execaNode: [Function: execaNode],
  execaSync: [Function: execaSync]
}
> import('execa').then(mod => console.log(mod.execa))
Promise {
  <pending>,
  [Symbol(async_id_symbol)]: 2527,
  [Symbol(trigger_async_id_symbol)]: 2519
}
> [Function: execa]

Copy link
Contributor

Storybook for this PR deployed on this github page

@jmfrancois jmfrancois temporarily deployed to pull_request_unsafe July 29, 2025 12:37 — with GitHub Actions Inactive
Copy link
Collaborator

@jmfrancois jmfrancois left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

do not work, need to run module-to-cdn test:cron command

@jmfrancois jmfrancois temporarily deployed to pull_request_unsafe July 29, 2025 12:44 — with GitHub Actions Inactive
@jmfrancois jmfrancois enabled auto-merge (squash) July 29, 2025 12:45
@jmfrancois jmfrancois changed the title chore(deps): bump execa from 4.1.0 to 8.0.1 chore(deps): remove execa direct dependency Jul 29, 2025
@@ -124,7 +123,8 @@
ensureCacheFolderExists();

if (!CACHE_NPM[moduleName]) {
const info = JSON.parse(execa.sync('npm', ['info', '--json', `${moduleName}`]).stdout);
const stdout = child.execSync(`npm info --json ${moduleName}`, {encoding: 'utf8'});

Check warning

Code scanning / CodeQL

Unsafe shell command constructed from library input Medium

This string concatenation which depends on
library input
is later used in a
shell command
.
This string concatenation which depends on
library input
is later used in a
shell command
.

Copilot Autofix

AI 2 days ago

To fix this issue, we should avoid passing untrusted input directly to the shell. Instead of using child.execSync with a string command, we should use child.execFileSync, which takes the command and its arguments as separate parameters, bypassing the shell and preventing command injection. Specifically, we should replace child.execSync(`npm info --json ${moduleName}`, {encoding: 'utf8'}) with child.execFileSync('npm', ['info', '--json', moduleName], {encoding: 'utf8'}). This change should be made in the getModuleInfo function in fork/module-to-cdn/cache.js. No additional imports are needed, as child_process is already imported as child.


Suggested changeset 1
fork/module-to-cdn/cache.js

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/fork/module-to-cdn/cache.js b/fork/module-to-cdn/cache.js
--- a/fork/module-to-cdn/cache.js
+++ b/fork/module-to-cdn/cache.js
@@ -125,3 +125,3 @@
     if (!CACHE_NPM[moduleName]) {
-        const stdout = child.execSync(`npm info --json ${moduleName}`, {encoding: 'utf8'});
+        const stdout = child.execFileSync('npm', ['info', '--json', moduleName], {encoding: 'utf8'});
         const info = JSON.parse(stdout);
EOF
@@ -125,3 +125,3 @@
if (!CACHE_NPM[moduleName]) {
const stdout = child.execSync(`npm info --json ${moduleName}`, {encoding: 'utf8'});
const stdout = child.execFileSync('npm', ['info', '--json', moduleName], {encoding: 'utf8'});
const info = JSON.parse(stdout);
Copilot is powered by AI and may make mistakes. Always verify output.
Unable to commit as this autofix suggestion is now outdated
Copy link
Contributor

Title Lines Statements Branches Functions
assets-api Coverage: 28%
28.4% (25/88) 30.76% (16/52) 21.42% (3/14)
cmf Coverage: 89%
89.36% (1243/1391) 80.93% (607/750) 89.51% (350/391)
cmf-cqrs Coverage: 87%
87.43% (160/183) 70.23% (59/84) 84.21% (48/57)
cmf-router Coverage: 70%
69.23% (135/195) 55.71% (78/140) 56.81% (25/44)
components Coverage: 90%
90.63% (5517/6087) 81.59% (3196/3917) 88.14% (1390/1577)
containers Coverage: 84%
83.59% (1391/1664) 74.3% (694/934) 75% (327/436)
dataviz Coverage: 85%
85.44% (323/378) 66.66% (160/240) 75.79% (119/157)
design-system Coverage: 67%
66.49% (1016/1528) 50.93% (544/1068) 53.94% (219/406)
faceted-search Coverage: 85%
85.08% (639/751) 78.63% (287/365) 81.88% (226/276)
flow-designer Coverage: 70%
70.07% (651/929) 66.72% (355/532) 70.92% (200/282)
forms Coverage: 85%
85.81% (1640/1911) 75.77% (929/1226) 84.24% (460/546)
http Coverage: 100%
100% (85/85) 98.07% (51/52) 100% (34/34)
sagas Coverage: 92%
92.3% (24/26) 66.66% (4/6) 50% (2/4)
stepper Coverage: 80%
81.52% (150/184) 59.34% (54/91) 80.85% (38/47)
utils Coverage: 100%
100% (73/73) 90.9% (10/11) 100% (24/24)

@jmfrancois jmfrancois merged commit d622175 into master Jul 29, 2025
9 checks passed
@jmfrancois jmfrancois deleted the dependabot/npm_and_yarn/execa-8.0.1 branch July 29, 2025 12:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants