Commit graph

86 commits

Author SHA1 Message Date
Uriel Corfa
4e894dd0fd
init-posix: preserve arguments when exec'ing the original_cmd 2026-01-08 09:56:59 +01:00
Uriel Corfa
3bfca9e296
Propagate command-not-found errors when invoking wrapped commands
Before this change, if a package manager was not installed, safe-chain still
sets the function and when invoked, the wrapper will invoke safe-chain, which
will exit with error code 127 when it fails to invoke the wrapped command. As an
example (with a shell prompt that shows $? when non-zero):

```
$ type -f pip
bash: type: pip: not found
1$ pip
127$
```

With this patch, the wrapper first checks for the existence of the wrapped
command (ignoring functions), and if no such command exists, it instructs the
shell to invoke it anyway. This results in the shell failing to find the
command, and reporting an error as if the wrapper function wasn't there:

```
$ source init-posix.sh
$ type -f pip
bash: type: pip: not found
1$ pip
Command 'pip' not found, but can be installed with:
sudo apt install python3-pip
127$
```
2026-01-07 17:18:48 +01:00
Graeme Chapman
c510d886a9
Simplify command execution in init-posix.sh 2025-12-31 10:57:08 +00:00
Graeme Chapman
a0e19818a0
fix: Allow running commands if safe-chain npm package is not installed 2025-12-31 10:18:58 +00:00
Reinier Criel
bbf5f8189b
Merge pull request #256 from AikidoSec/feature/pipx-2
Add PIPX support
2025-12-19 09:41:00 +01:00
Reinier Criel
d2fc531c81 Fix tests and add command support 2025-12-18 10:33:31 +01:00
Reinier Criel
b9de94f0f1 Merge branch 'main' into feature/pipx-2 2025-12-17 14:28:14 +01:00
Reinier Criel
5de43c1bf2 Some modifications 2025-12-17 13:26:14 +01:00
Reinier Criel
3c18ad76f7 Skeleton 2025-12-17 11:37:51 +01:00
Sander Declerck
316922e9a6
Merge branch 'main' into fix-powershell-install-script-path-separator 2025-12-16 13:06:57 +01:00
Sander Declerck
eb59e98785
Fix path separator on Windows Powershell 2025-12-15 17:50:38 +01:00
Reinier Criel
53e47581d4 Remove unneeded comment 2025-12-15 15:59:24 +01:00
Reinier Criel
c07abe966b Fix setup-ci 2025-12-15 15:55:41 +01:00
Reinier Criel
523ce0b6ee Fix issue with flag 2025-12-15 15:08:28 +01:00
Reinier Criel
7e460e50e1 Skeleton 2025-12-15 15:06:00 +01:00
Reinier Criel
dc6fcb9761 Skeleton 2025-12-15 14:42:58 +01:00
Reinier Criel
f47cd7ebc0 Remove unused import 2025-12-12 12:07:06 -08:00
Reinier Criel
a405a51706 Also remove script dir 2025-12-12 11:17:17 -08:00
Reinier Criel
2b0f8d9f0d Skeleton 2025-12-11 15:13:15 -08:00
bitterpanda
15cc6ff7fe
Merge pull request #178 from AikidoSec/feature/poetry-2
Add Poetry support
2025-12-05 15:56:20 +01:00
Sander Declerck
aadd083b9e
Fix Join-Path error for Windows Powershell 2025-12-04 11:35:32 +01:00
Reinier Criel
82416456a0 Some small fixes 2025-12-03 07:58:09 -08:00
Reinier Criel
c1a12c9573 Merge branch 'main' into feature/poetry-2 2025-12-03 07:41:52 -08:00
Sander Declerck
aa441e7483
Add comments for esm vs cjs __dirname implementation 2025-12-03 11:38:29 +01:00
Sander Declerck
4139275b76
Handle PR comments 2025-12-03 10:54:49 +01:00
bitterpanda
31a14a3f1b
Update packages/safe-chain/src/shell-integration/startup-scripts/init-pwsh.ps1 2025-12-03 10:47:28 +01:00
Sander Declerck
b632e0acda
Fix windows shim 2025-12-02 15:00:51 +01:00
Sander Declerck
f9b16cf03c
Fix bins path for CI 2025-12-02 14:19:53 +01:00
Sander Declerck
3002d27273
Fix safe-chain in CI 2025-12-02 13:58:27 +01:00
Sander Declerck
8f80266ad3
Update powershell scripts and installation scripts 2025-12-01 14:52:15 +01:00
Sander Declerck
2e57057baa
Update path wrappers 2025-12-01 09:57:28 +01:00
Sander Declerck
8852afb5fa
Fix e2e tests 2025-11-28 18:05:09 +01:00
Sander Declerck
edec6ec57c
Update shell scripts 2025-11-28 16:51:39 +01:00
Sander Declerck
161f256066
Change pwsh startup script 2025-11-28 14:10:01 +01:00
Sander Declerck
a3bff105cc
Update startup scripts to use safe-chain instead of aikido-* 2025-11-28 14:01:11 +01:00
Sander Declerck
f1ee6567df
Fix __dirname for esm / fix e2e tests. 2025-11-28 12:57:48 +01:00
Sander Declerck
bc51c839d0
Try fix build again 2025-11-28 11:02:48 +01:00
Sander Declerck
9c149f3bb3
Create and run build.js 2025-11-28 10:51:43 +01:00
Reinier Criel
4bfc315b57 Skeleton 2025-11-26 14:13:49 -08:00
Reinier Criel
cab3a0aba3 Add uv (Astral Python package manager) support
- Add uv package manager implementation following pip pattern
- Configure MITM proxy with CA bundle for PyPI packages
- Add shell integration (bash/zsh/fish/PowerShell)
- Conditional on --include-python flag
- Add 33 comprehensive E2E tests covering:
  - uv pip install/sync/compile commands
  - uv add for project dependencies
  - uv tool install for global tools
  - uv run --with for ephemeral dependencies
  - uv sync for project syncing
  - Malware blocking verification for all methods
- Update documentation and package.json
- Install uv in Docker test environment
2025-11-25 14:10:20 -08:00
Sander Declerck
c6bcd6f646
Add feature flag in setup for python support. 2025-11-14 14:12:44 +01:00
Reinier Criel
61a53b24fd Some cleanup 2025-11-06 13:24:00 -08:00
Reinier Criel
e88aede939 Remove some debug logging 2025-11-06 12:25:55 -08:00
Reinier Criel
9bd29056c6 Some cleanup 2025-11-06 11:02:03 -08:00
Reinier Criel
f400c5576a WIP 2025-11-06 08:32:25 -08:00
Reinier Criel
7cff2818e4 Fix Windows template 2025-11-05 15:40:54 -08:00
Reinier Criel
58a5e837f7 Add unit tests 2025-11-04 13:32:07 -08:00
Reinier Criel
6241c56fda Skeleton for CI support 2025-11-04 13:29:31 -08:00
Reinier Criel
548d416996 Merge remote-tracking branch 'origin/main' into feature/pypi 2025-11-03 06:49:53 -08:00
Hans Ott
e8e7c85c62 Revert "Introduce mistake that passes linter"
This reverts commit 1724e0b199.
2025-11-02 15:31:23 +01:00