Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -466,6 +466,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

`
Expand Down
2 changes: 1 addition & 1 deletion test/__snapshots__/e2e.test.js.snap
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing

exports[`create a command shim for a .exe file 1`] = `
"#!/bin/sh
Expand Down
237 changes: 225 additions & 12 deletions test/__snapshots__/test.js.snap
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
Copy link
Author

Choose a reason for hiding this comment

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

it was made by jest --updateSnapshot command


exports[`batch script bat.shim 1`] = `
"#!/bin/sh
Expand All @@ -10,6 +10,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

if [ -x "$basedir/cmd" ]; then
Expand Down Expand Up @@ -73,6 +89,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

"/.pnpm/nodejs/16.0.0/node" "$basedir/src.env" "$@"
Expand Down Expand Up @@ -116,6 +148,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

if [ -x "$basedir/node" ]; then
Expand Down Expand Up @@ -179,6 +227,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

if [ -z "$NODE_PATH" ]; then
Expand Down Expand Up @@ -265,6 +329,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

export PATH="/add-to-path:$PATH"
Expand Down Expand Up @@ -340,6 +420,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

if [ -x "$basedir/node" ]; then
Expand Down Expand Up @@ -403,6 +499,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

if [ -x "$basedir/node" ]; then
Expand Down Expand Up @@ -466,6 +578,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

if [ -x "$basedir/node" ]; then
Expand Down Expand Up @@ -529,6 +657,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

if [ -x "$basedir//usr/bin/sh" ]; then
Expand Down Expand Up @@ -592,6 +736,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

if [ -x "$basedir//usr/bin/sh" ]; then
Expand Down Expand Up @@ -664,17 +824,6 @@ else
fi
`;

exports[`explicit shebang with args, linking to another drive on Windows sh.args.shim.CMD 1`] = `
"@SETLOCAL
@IF EXIST "%~dp0\\/usr/bin/sh.exe" (
"%~dp0\\/usr/bin/sh.exe" -x "J:\\cmd-shim\\fixtures\\src.sh.args" %*
) ELSE (
@SET PATHEXT=%PATHEXT:;.JS;=;%
/usr/bin/sh -x "J:\\cmd-shim\\fixtures\\src.sh.args" %*
)
"
`;

exports[`explicit shebang with args, linking to another drive on Windows sh.args.shim.ps1 1`] = `
"#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
Expand Down Expand Up @@ -717,6 +866,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

if [ -x "$basedir//usr/bin/sh" ]; then
Expand Down Expand Up @@ -780,6 +945,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

"$basedir/src.exe" "$@"
Expand Down Expand Up @@ -817,6 +998,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

"$basedir/src.exe" "$@"
Expand Down Expand Up @@ -860,6 +1057,22 @@ case \`uname\` in
basedir=\`cygpath -w "$basedir"\`
fi
;;
*)
if command -v realpath >/dev/null 2>&1; then
basedir=\`realpath "$basedir"\`
elif command -v readlink >/dev/null 2>&1; then
# some systems has the readlink, but doesn't have "-f" flag
if readlink -f "$basedir" >/dev/null 2>&1; then
basedir=\`readlink -f "$basedir"\`
else
basedir=\`readlink "$basedir"\`
fi
elif command -v perl >/dev/null 2>&1; then
basedir=\`perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$basedir"\`
elif [[ $basedir != /* ]]; then
basedir="$PWD/\${basedir#./}"
fi
;;
esac

if [ -x "$basedir/node" ]; then
Expand Down