Browse Source

Release v3.6.2: Fix Linux compatibility in polyglot hook wrapper

Fixed POSIX compatibility issue in hooks/run-hook.cmd that caused
"Bad substitution" errors on Ubuntu/Debian systems where /bin/sh is dash.

Changes:
- Replaced bash-specific ${BASH_SOURCE[0]:-$0} with POSIX-compliant $0
- Tested with both bash and sh (POSIX mode) on macOS
- Updated version to 3.6.2 in all required files

Fixes #141
Jesse Vincent 9 months ago
parent
commit
154d664373
4 changed files with 14 additions and 3 deletions
  1. 1 1
      .claude-plugin/marketplace.json
  2. 1 1
      .claude-plugin/plugin.json
  3. 11 0
      RELEASE-NOTES.md
  4. 1 1
      hooks/run-hook.cmd

+ 1 - 1
.claude-plugin/marketplace.json

@@ -9,7 +9,7 @@
     {
       "name": "superpowers",
       "description": "Core skills library for Claude Code: TDD, debugging, collaboration patterns, and proven techniques",
-      "version": "3.5.1",
+      "version": "3.6.2",
       "source": "./",
       "author": {
         "name": "Jesse Vincent",

+ 1 - 1
.claude-plugin/plugin.json

@@ -1,7 +1,7 @@
 {
   "name": "superpowers",
   "description": "Core skills library for Claude Code: TDD, debugging, collaboration patterns, and proven techniques",
-  "version": "3.6.1",
+  "version": "3.6.2",
   "author": {
     "name": "Jesse Vincent",
     "email": "jesse@fsck.com"

+ 11 - 0
RELEASE-NOTES.md

@@ -1,5 +1,16 @@
 # Superpowers Release Notes
 
+## v3.6.2 (2025-12-03)
+
+### Fixed
+
+- **Linux Compatibility**: Fixed polyglot hook wrapper (`run-hook.cmd`) to use POSIX-compliant syntax
+  - Replaced bash-specific `${BASH_SOURCE[0]:-$0}` with standard `$0` on line 16
+  - Resolves "Bad substitution" error on Ubuntu/Debian systems where `/bin/sh` is dash
+  - Fixes #141
+
+---
+
 ## v3.5.1 (2025-11-24)
 
 ### Changed

+ 1 - 1
hooks/run-hook.cmd

@@ -13,7 +13,7 @@ exit /b
 CMDBLOCK
 
 # Unix shell runs from here
-SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]:-$0}")" && pwd)"
+SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
 SCRIPT_NAME="$1"
 shift
 "${SCRIPT_DIR}/${SCRIPT_NAME}" "$@"