diff --git a/.github/workflows/executable.yml b/.github/workflows/executable.yml new file mode 100644 index 0000000..29a78d3 --- /dev/null +++ b/.github/workflows/executable.yml @@ -0,0 +1,19 @@ +name: resolve executable + +on: [push, pull_request] + +jobs: + _: + name: cli + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + - uses: ljharb/actions/node/install@main + - run: "[ $(./bin/resolve fs) = 'fs' ]" + name: run inside the package with a direct path + - run: "npm link && [ $(resolve fs) = 'fs' ] && npm uninstall -g resolve" + name: run linked as a global in the PATH + - run: "[ $(npx resolve fs) = 'fs' ]" + name: run via npx \ No newline at end of file diff --git a/bin/resolve b/bin/resolve index 4c1884a..204f388 100755 --- a/bin/resolve +++ b/bin/resolve @@ -14,6 +14,8 @@ if ( || (process.env._ && fs.realpathSync(path.resolve(process.env._)) !== __filename) ) ) { + console.error(process.env._, fs.realpathSync(path.resolve(process.env._)), __filename); + console.error(process.env); console.error('Error: `resolve` must be run directly as an executable'); process.exit(1); }