Commit Graph

11627 Commits

Author SHA1 Message Date
avwo e96fef727e Release v2.10.3 v2.10.3 2026-06-14 23:10:04 +08:00
avwo b3e8a8eef1 refactor: refine code 2026-06-14 17:15:46 +08:00
avwo 6fcf8cb704 docs: captureStream 2026-06-14 16:55:54 +08:00
avwo 9756789753 chore: remove dist 2026-06-14 13:40:09 +08:00
avwo 1e2fab09f9 Release v2.10.3 2026-06-14 13:37:52 +08:00
avwo 6ee70dc7ad refactor: refine code 2026-06-14 13:37:34 +08:00
avwo 1b47d7d8c7 feat: getRawRequest & getRawResponse 2026-06-14 13:36:53 +08:00
avwo 777bcf69ba feat: handle client/server sent events 2026-06-14 13:36:19 +08:00
avwo 826b59bf14 feat: create rule 2026-06-14 13:35:44 +08:00
avwo 0a08f0724f test: refine code 2026-06-14 13:35:32 +08:00
avwo 824abf5cf0 docs: update 2026-06-14 13:35:15 +08:00
Yoshiki 0c718e5186 docs: fix Rewrite Response typo
Signed-off-by: Yoshiki <yosinn1@gmail.com>
2026-05-25 14:14:05 +08:00
echopi a154c50040 test: change wsPort from 8081 to 18081 to avoid conflicts
Port 8081 is commonly used by other services (e.g. AliLang), causing
EADDRINUSE when running tests. Use a high port to reduce conflicts.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 10:31:37 +08:00
echopi 3f2c89fdf5 test: regenerate test certs with 2048-bit keys
Node.js v17+ (OpenSSL 3.0) rejects EE certificates with keys smaller
than 2048-bit. The test certs were 1024-bit, causing ERR_SSL_EE_KEY_TOO_SMALL.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 10:31:11 +08:00
echopi 2787459d48 docs: address review feedback on Linux cert instructions
- Add sudo to Alpine commands for consistency with other distros
- Clarify rootCA.crt download path (HTTPS menu → Download RootCA)
- Use example.com instead of baidu.com in English docs

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 10:30:14 +08:00
echopi f1902b83b6 docs: add Linux certificate installation instructions including Alpine
Add manual root certificate installation steps for Ubuntu/Debian,
CentOS/RHEL/Fedora, and Alpine Linux to the `w2 ca` section of
the CLI docs (both Chinese and English).

Fixes #1202

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 10:30:14 +08:00
Frank 14a9407b4a fix: add authorityKeyIdentifier extension to fix Python SSL verification error
## 问题描述

Python 3.13+ 配合 urllib3 2.6.3 使用 Whistle 作为 HTTPS 代理时,SSL 证书验证失败:

```
urllib3.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED]
certificate verify failed: Missing Authority Key Identifier
```

## 根本原因

OpenSSL 3.x 和 Python 的 urllib3 对证书链验证更加严格。Whistle 动态生成的服务器证书只包含 `subjectAltName` 扩展,缺少 `authorityKeyIdentifier` 等必要扩展。

## 解决方案

为生成的证书添加完整的 X.509v3 扩展:
- `basicConstraints` (CA:FALSE)
- `keyUsage` (digitalSignature, keyEncipherment)
- `extKeyUsage` (serverAuth, clientAuth)
- `authorityKeyIdentifier` (从 ROOT_CRT 的 SKI 获取)

## 测试环境

- Python 3.13.5
- urllib3 2.6.3
- OpenSSL 3.5.5
- Node.js v24.14.0
- Whistle v2.10.2

此修复确保 Python 严格的 SSL 验证在使用 Whistle 进行 HTTPS 抓包时能够正常通过。
2026-03-31 15:26:04 +08:00
avwo afe1a10146 Release v2.10.2 v2.10.2 2026-03-25 21:57:57 +08:00
avwo b55839bdfa feat: refine Tools/Console 2026-03-25 21:57:54 +08:00
avwo 3bd6f0c3eb Release v2.10.2 2026-03-21 22:40:58 +08:00
avwo f90fab33cf refactor: refine code 2026-03-21 22:40:44 +08:00
avwo b96d01ff21 docs: update 2026-03-21 22:37:51 +08:00
avwo 0d7aa6fb93 feat: add useRules(options) 2026-03-21 22:37:35 +08:00
avwo 40a892cfb0 refactor: refine code 2026-03-21 22:37:04 +08:00
avwo c6033d30b3 feat: open log 2026-02-15 08:37:55 +08:00
avwo 9b138ff863 feat: open weinre 2026-02-15 08:37:46 +08:00
avwo cc6b2d1a23 feat: open changelog 2026-02-15 08:37:21 +08:00
avwo e5ce148762 Release v2.10.1 v2.10.1 2026-02-11 23:13:17 +08:00
avwo f81fe36edd fix: https://github.com/avwo/whistle/issues/1297 2026-02-11 23:12:25 +08:00
avwo e880587b46 fix: https://github.com/avwo/whistle/issues/1296 2026-02-11 23:12:06 +08:00
avwo 1ad5381da5 refactor: refine code 2026-02-11 23:11:48 +08:00
avwo afb14224b9 feat: add Rules filter 2026-02-11 23:11:38 +08:00
avwo 25821c6559 test: https://github.com/avwo/whistle/issues/1296 2026-02-11 23:10:19 +08:00
avwo e49542a9cf docs: update 2026-02-11 23:09:22 +08:00
avwo bcfa3a59ee docs: update v2.10.0 2026-02-08 23:20:42 +08:00
avwo 1f39179341 test: transformReq & reansformRes 2026-02-08 09:35:09 +08:00
avwo 1495110ab3 refactor: refine code 2026-02-07 23:53:20 +08:00
avwo b9cdafffa0 Release v2.10.0 2026-02-07 22:16:11 +08:00
avwo b67ec50a0d refactor: refine code 2026-02-07 22:15:56 +08:00
avwo 881938cb96 docs: update 2026-02-07 22:10:19 +08:00
avwo bc043209c8 test: plugins 2026-02-07 22:09:39 +08:00
avwo 4ba2fdae5c refactor: refine code 2026-02-01 23:31:13 +08:00
avwo ac7a475b05 Release v2.10.0-beta 2026-02-01 23:29:58 +08:00
avwo 007df8395e feat: allow disable custom certs 2026-02-01 23:29:45 +08:00
avwo db93be5cbc feat: disable request rules header by default 2026-02-01 23:29:02 +08:00
avwo 6ff4b95c7c refactor: refine code 2026-02-01 20:28:08 +08:00
avwo 9830c16123 fix: https://github.com/avwo/whistle/issues/1293 2026-02-01 20:27:14 +08:00
avwo 9984c8c862 refactor: refine code 2026-01-31 10:51:48 +08:00
avwo c4740f3ef2 refactor: refine code 2026-01-31 07:41:12 +08:00
avwo 79087fbeeb feat: prevent the use of parent directory symbols 2026-01-31 07:39:36 +08:00