Commit Graph
63 Commits
Author SHA1 Message Date
Qiu Yuzhou b8c6f4d5b4 build: add fail-fast validation task with retained evidence 2026-10-19 03:24:22 +08:00
Qiu Yuzhou 7ab774fcfd chore(legacy): 移除 Legacy/ 旧版源码,归档到 legacy-v1 分支
旧版实现已由 shadowsocks/ShadowsocksX-NG 的 legacy-v1 分支跟踪,本仓库不再
保留同一份代码副本。删除 Legacy/ 下 603 个跟踪文件,被 gitignore 的
.DS_Store 一并清理。

删除前核对:Legacy/ShadowsocksX-NG/PACUtils.swift 的 blob hash 与
upstream/legacy-v1 的同名文件完全相同,且工作区在 Legacy/ 下无未提交改动。

配套改动:

- 根 README、AGENTS.md、ShadowsocksX-NG2/README.md:目录结构只留
  ShadowsocksX-NG2/;旧版说明改为指向 shadowsocks/ShadowsocksX-NG 的
  legacy-v1 分支(含其 README);pre-commit 说明去掉 Legacy/。
- codegraph.json 删除 "exclude": ["Legacy/"];.gitignore 与 .zcodeignore
  删除 Legacy 构建产物与依赖条目;.swiftlint.yml 删除 ../Legacy 排除项;
  .githooks/pre-commit 头部注释去掉冻结目录表述。
- docs/research 的 4 份历史研究报告(issue 7/11/12/17)中 129 处
  ../../Legacy/... 相对链接改写为 legacy-v1 的 GitHub blob 链接,正文未改;
  把新 URL 反替换回原相对路径后与 HEAD 版本逐字节相同,证明只动了链接。

验证:全仓库不再有指向 Legacy/ 的路径引用;剩余 Legacy 字样均为概念性用法
(Legacy 导入功能、ADR 与术语表、历史报告正文中的冻结陈述)。本次未改任何
NG2 源码或构建配置,暂存区无 NG2 .swift 文件,pre-commit 直接放行。
2026-10-05 21:39:06 +08:00
Qiu Yuzhou 67d0afcda1 fix(hooks): 区分 SwiftLint 工具失败与 error 级违规
pre-commit 第 2 关只看 swiftlint 是否非零,把任何非零都报成「SwiftLint
发现 error 级违规」。而 SwiftLint 默认要把缓存 plist 写进
~/Library/Caches,写不进去时它自己以退出码 1 失败,于是受限环境下每次
提交都被拒绝、并被指向代码,实际原因在工具环境。

两处改动:

- 加 --no-cache,直接消灭缓存写入这一失败模式(本关只查几十个暂存文件,
  代价可忽略;task lint 本来就是这么调的)。
- 按退出码分派:0 放行(有 warning 则提示后放行)、2 报「发现 error 级
  违规」、其余报「执行失败(退出码 N)」并点明是工具错误而非代码违规。

不能改用解析输出文本判断:工具错误信息里同样含 "error:"(配置读不了时
输出 error: Could not read file at path ...),只有退出码可靠。退出码映射
(0 = 干净或仅 warning,2 = error 级违规,1 = 内部错误,134 = 配置读不了)
为 swiftlint 0.65.x 实测。

验证:在 /tmp 最小仓库(真钩子 + 真配置 + core.hooksPath)中不解沙箱跑
五个场景——旧钩子对只含 warning 的文件误报为 error 级违规(复现);新钩子
对同一文件放行并提示 warning;error 级违规正确拒绝且 HEAD 未动;配置读不了
时报「执行失败(退出码 134)」而非违规;复原后放行。

根 README 开发钩子一节同步这一区分。钩子只改第 2 关与头部注释。
2026-10-05 20:18:37 +08:00
Qiu Yuzhou a00a93d5c0 docs: align domain docs with Chinese glossary 2026-10-04 15:19:54 +08:00
Qiu Yuzhou 7bfb90ef5c docs(ng2): reorganize development instructions 2026-09-21 14:42:58 +08:00
Qiu Yuzhou 5ec308301a docs: add initial README for ShadowsocksX-NG project 2026-09-19 22:54:59 +08:00
Qiu Yuzhou 3a62f473bc chore: restructure repo for modern reimplementation
- Remove GitHub Actions workflows and issue templates
- Move legacy ShadowsocksX-NG project into Legacy/
- Remove git submodules; dependencies will use prebuilt
  binaries copied from upstream releases instead of
  building in-repo
- Add ShadowsocksX-NG2/ directory for the new project
- Update .gitignore paths for the new layout
2026-09-19 22:31:37 +08:00
Qiu Yuzhou 6f98a01c52 Bump building requirement versions 2021-06-26 00:32:29 +08:00
Qiu Yuzhou 2357b07fdc Update README. 2019-11-13 10:08:56 +08:00
Qiu Yuzhou ac735dffe7 Bump version to v1.9.3 2019-10-30 17:52:59 +08:00
Qiu Yuzhou c593564059 Fixes workflow name to CI. 2019-09-10 12:29:33 +08:00
Qiu Yuzhou ff4ba87004 Update README.
- Fixes typo in README.
- Add github action badge in README.
2019-09-10 12:19:39 +08:00
Qiu Yuzhou 7b4ffe8bda Bump version to v1.9.2 2019-09-10 00:47:53 +08:00
Qiu Yuzhou f257550526 Bump version to v1.9.1 2019-09-09 14:28:02 +08:00
Qiu Yuzhou 51aa36e19c Update README. 2019-09-09 12:48:44 +08:00
Qiu Yuzhou 97ba0d08e6 Update README.md. 2019-09-09 12:42:28 +08:00
Qiu Yuzhou 39d694048d Bump version to 1.8.2 2018-09-25 22:42:45 +08:00
Qiu Yuzhou 3ccbd19cb5 Update README.md 2018-09-25 10:16:09 +08:00
Qiu Yuzhou bc57db4502 Bump version to 1.8.1 2018-09-21 12:29:39 +08:00
Qiu Yuzhou 02d9ac3031 Improve sharing server profiles.
* New share server profiles window.
* Import server profile urls from pasteboard.
2018-09-16 16:46:48 +08:00
Qiu Yuzhou db81543372 Remove feature over kcptune. 2018-09-16 01:39:15 +08:00
Qiu Yuzhou b3ad963c92 Remove feature Export/Import configure file. 2018-09-16 01:25:11 +08:00
Qiu Yuzhou db5d4aef93 Update README. 2018-09-16 00:52:10 +08:00
Qiu Yuzhou 80f8b84601 Update README. 2018-05-08 12:38:39 +08:00
Qiu Yuzhou 40985b4a99 Update README.md 2018-05-04 12:16:52 +08:00
Qiu Yuzhou 5062c697e0 Bump version to 1.7.1 2018-02-06 14:26:54 +08:00
Qiu Yuzhou 5828fdbac9 Remove feature ping which may make app crashed. 2018-01-17 15:14:14 +08:00
Qiu Yuzhou 3b724d75f1 Bump version to 1.7.0. 2017-12-05 20:04:03 +08:00
Qiu Yuzhou b9e169cd10 Update minimum requried xcode version to 9.0.1 in README file. 2017-10-22 15:28:59 +08:00
Qiu Yuzhou b31452e984 Remove gitter link in readme. 2017-09-16 17:20:11 +08:00
Qiu Yuzhou 8ee9c7837a Bump versiont to 1.6.1 2017-09-16 17:19:34 +08:00
Qiu Yuzhou ae2a409ceb Bump version to 1.6.0 in README. 2017-09-08 15:22:30 +08:00
imnotpopo cb691db617 Small typo fixes 2017-09-07 17:29:29 +10:00
Haoyu Qiu fb97b7b91f Fixes typos and styling in README 2017-08-27 02:29:34 +08:00
Qiu Yuzhou 948f7d4691 Bump version. 2017-08-25 23:06:56 +08:00
imnotpopo 8e0a284bee Update README.md 2017-08-02 17:06:58 +10:00
Julien Schmidt b89d9879f2 README: Mention AEAD Ciphers instead of OTA Support
OTA is deprecated
2017-05-02 16:37:01 +08:00
David Zhang 412b05cfe3 Fix gitter icon 2017-04-06 12:01:14 +08:00
Qiu Yuzhou 3751d02f45 Update README.md file. 2017-03-29 22:01:36 +08:00
Charlie Qiu e6468c1390 Change version number and update readme. 2017-03-11 00:22:45 +08:00
Charlie Qiu 2a17f43965 Fix typo in readme 2017-02-07 15:39:43 +08:00
Qiu Yuzhou bc813ff072 Add gitter chat badge to README.md 2017-01-16 16:54:57 +08:00
Charlie Qiu a4cf382962 Update readme. 2017-01-13 01:06:06 +08:00
Vicent Tsai 23967eca20 Added global Keyboard shortcut
So we could switch between different proxy modes with global shortcut.
2016-12-11 15:39:56 +08:00
Julien Schmidt e4236f21a1 Corrected Spellings 2016-10-20 01:14:47 +08:00
Qiu Yuzhou 8fa7f76faa Add a download link in readme. 2016-10-15 00:33:53 +08:00
王晨 2ab6f95631 add privoxy 2016-10-10 14:17:02 +08:00
Charlie Qiu e564405a8e Update travis ci status image to new link. 2016-10-06 15:05:35 +08:00
Charlie Qiu dff5679dcb Update requirements in readme. 2016-10-02 02:11:09 +08:00
Charlie Qiu 25f8319e85 Update version number from 1.2 to 1.3 2016-10-02 01:19:17 +08:00