Commit Graph

31 Commits

Author SHA1 Message Date
e1732a364fed
3955c898f8 修订代码;将machine的部分成员转为私有 2022-12-13 10:34:19 +08:00
e1732a364fed
8112e9b2b1 修订代码,进一步将cmd代码移动到machine中 2022-12-13 09:58:29 +08:00
e1732a364fed
27fdb23eb6 对上一个commit的补充 2022-12-13 09:03:14 +08:00
e1732a364fed
03fc52ce26 修正交互和gui模式的行为 2022-12-12 23:40:21 +08:00
e1732a364fed
73009afa62 将cmd/verysimple的部分代码整理到machine中 2022-12-12 23:05:43 +08:00
e1732a364fed
29f4c2acf8 添加machine包:
准备使用machine包来容纳cmd/verysimple中的大部分功能;
cmd/verysimple 将仅负责读取命令行参数,并转换成 machine包的一个配置结构, 然后
传入machine包

使用更高级的包装的原因有如下几点:
1. 这样更科学,是更现代的编程方式
2. rust中也不建议使用全局静态变量
3. 随着gui的引进,我们有了一种需求,去在多种配置中选择一种配置去运行,
此时有必要将每一种配置组合抽象出来,并提供一种同时运行多种组合的机制
2022-12-12 22:09:27 +08:00
e1732a364fed
e6800cc605 修订api server, 和url相关内容:
添加 sunsafe, scert, skey 选项,用于监听明文和配置api server的 https的证书
hotLoadUrl 增加 urlFormat 选项
修订api server, 修复已知问题,添加 getDetailUrl 功能
修订url转换函数以及url标准
2022-12-07 01:06:27 +08:00
e1732a364fed
6785ad215e 交互模式变为可选编译,用nocli来排除 2022-12-06 10:15:44 +08:00
e1732a364fed
b517f9d4de 整理文档,代码; go.mod -> 1.19 2022-12-04 22:35:26 +08:00
e1732a364fed
669a65aa32 feature:api server添加热删除功能 2022-12-02 20:39:45 +08:00
e1732a364fed
4b27fbb0bd feature:api server 添加 热加载url功能;添加sa参数,配置api server的监听地址;
允许api server 在不设置密码时运行
2022-12-02 20:27:27 +08:00
e1732a364fed
18d5a8f062 feature:交互模式的用户偏好现在可以被自动保存;记录最近的交互项;修订代码,文档;
自动保存到 .verysimple_preferences 文件中
添加 -dp 选项,可关闭 该特性
最近的交互项现在可以被排序到首位,方便多次执行
2022-12-02 18:49:30 +08:00
e1732a364fed
7b3705c977 修订文档,代码;将AppConf代码从proxy移动到cmd中 2022-12-02 14:18:34 +08:00
e1732a364fed
6e39f4f2f2 完成url标准格式,见docs/url.md; 修订代码 2022-12-02 11:09:40 +08:00
e1732a364fed
ec1d594e69 升级go版本到1.19 2022-12-02 01:05:05 +08:00
e1732a364fed
90ec238f6b feature:交互模式添加 热加载url配置功能;修订代码,文档; 2022-12-01 23:32:06 +08:00
e1732a364fed
a6ecc4106e feature:交互生成各种分享url/格式;修订交互模式
支持如下格式

vs标准url
xray分享链接标准提案 (#716)
shadowsocks uri (SIP002)
v2rayN分享链接 (vmess://base64)
Quantumult X (圈叉的配置的 [server_local] 部分)
Clash (yaml配置中 proxies 部分)
2022-12-01 16:30:43 +08:00
e1732a364fed
823bdebadd 继续用 utils.PrintStr 优化代码 2022-05-07 10:27:52 +08:00
e1732a364fed
9c40033ce7 在golang lint的帮助下全面修订代码 2022-05-07 10:19:59 +08:00
e1732a364fed
c5f73fa064 使用utils.PrintStr替代fmt.Print,进一步减少装箱
同时也替代Printf, 因为完全无脑打印,没有格式化
2022-05-07 10:06:37 +08:00
e1732a364fed
dfebe3f707 修订代码;将fallback的from从string改为[]string
这样可以支持从多个listen fallback到相同的目标,又不至于使用默认回落, 更灵活.
2022-05-06 22:48:15 +08:00
e1732a364fed
b7adea1c05 修订代码,cleanup调用Stop; Stop 也 Stop advLayer.Server; 2022-05-05 23:15:33 +08:00
e1732a364fed
9f26f93d4a 优化可执行文件代码 2022-05-05 23:05:34 +08:00
e1732a364fed
6cc2ec7265 添加极简模式的热加载功能;修复一个热删除的bug 2022-05-05 22:35:19 +08:00
e1732a364fed
5867bac0b2 修订代码,文档,Makefile,示例
修复 没给出 -c参数而给出了 -L 参数时,未能成功运行 的bug
使Makefile 支持 免参数编译 当前系统的 可执行文件。

Makefile的 BUILD_VERSION 这次 添加了 显示 build_on 系统 和 all_go_files_md5 的功能。

md5的打印只支持 linux/darwin,且因为 darwin的命令是 md5 而不是 md5sum,导致输出有差别,所以导致md5总和也有差别.
2022-05-05 14:09:12 +08:00
e1732a364fed
afe9068ca2 修订代码, 文档 2022-05-01 12:22:46 +08:00
e1732a364fed
2e7dda7c18 修订代码,文档;logfile标准配置以及-sp行为改变,见下:
在标准 toml 配置中 配置 logfile 配置文件路径。 如 `logfile = "/var/log/verysimple/vs_log"`

将 -sp 的行为 改为 打印完毕后立即退出。
2022-04-29 21:40:01 +08:00
e1732a364fed
1bac60b50f 修订代码,文档 2022-04-29 18:23:50 +08:00
e1732a364fed
cc758dec66 全面修订代码;完成 grpcSimple包;使用 tag选择编译quic 和 grpc
grpcSimple包的服务端和客户端现在都已完成,且兼容v2ray等内核。
grpcSimple包 简洁、高效,更加科学。暂不支持multiMode。

若 grpc_full 给出,则使用grpc包,否则默认使用 grpcSimple包。
若 noquic给出,则不使用 quic,否则 默认使用 quic。

修复 ws early 失效问题;
2022-04-28 05:41:56 +08:00
e1732a364fed
9d5b553e01 重构代码, 修订文档 2022-04-26 09:16:12 +08:00
e1732a364fed
ba1135d0d5 重构代码, 支持 use as library.
现在根目录作为一个可用的库,而可执行文件的代码放在 cmd/verysimple 文件夹中。

只是粗略地使其能够运行,有待进一步重构完善。

同时更新了 Makefile 和 .github/workflows
2022-04-25 20:17:51 +08:00