fw876 / helloworld

GNU General Public License v3.0
3.7k stars 2.66k forks source link

`lua: /usr/share/shadowsocksr/gen_config.lua:329: '}' expected (to close '{' at line 327) near '='` #1222

Closed devnakx closed 1 year ago

devnakx commented 1 year ago

最新源码编译的固件启动ssrp报错: lua: /usr/share/shadowsocksr/gen_config.lua:329: '}' expected (to close '{' at line 327) near '=' QQ截图20230712202747

qwerttvv commented 1 year ago

https://github.com/fw876/helloworld/pull/1218#issuecomment-1632270277

AmberisMyShiba commented 1 year ago

Sorry for the inconvenience caused by minor errors. Fixed issues of the above-mentioned in the latest PR. Hope everyone enjoying the new TUIC features.

hcym commented 1 year ago

明天再试试v5

zxlhhyccc commented 1 year ago

Sorry for the inconvenience caused by minor errors. Fixed issues of the above-mentioned in the latest PR. Hope everyone enjoying the new TUIC features.

大佬,那个修复不是主要原因,而是后面加了`.."s"的原因导致无法启动,见: https://github.com/fw876/helloworld/pull/1223

zxlhhyccc commented 1 year ago

实际上,把gen_config.lua中我截图划圈部分删除即可正常运行,不需修改其他部分(是否可行请大佬指教): image

AmberisMyShiba commented 1 year ago

实际上,把gen_config.lua中我截图划圈部分删除即可正常运行,不需修改其他部分(是否可行请大佬指教): image

Hi dude, I am very sure, "s" is needed. Please reference the official examples here.

zxlhhyccc commented 1 year ago

明天再试试v5

请问你的ssrp正常了吗?

zxlhhyccc commented 1 year ago

Hi dude, I am very sure, "s" is needed. Please reference the official examples here. “s”是写在此处,但gen_config.lua却读取不到"s" image

hcym commented 1 year ago

头晕眼花,明天再说吧

zxlhhyccc commented 1 year ago

头晕眼花,明天再说吧

大雕已经合并了我提的pr了。。。。

hcym commented 1 year ago

tuic客户端启动不了,其它的都正常 看日志是什么udp错误

AmberisMyShiba commented 1 year ago

tuic客户端启动不了,其它的都正常 看日志是什么udp错误

因为楼上这位不用tuic的zxlhhyccc提交的PR把tuic生成配置的代码给改错了。导致其他类型的节点都能启动,唯独tuic客户端无法启动。

hcym commented 1 year ago

噢,好事多磨,各位辛苦了 不急不急,冬天用比较好

zxlhhyccc commented 1 year ago

tuic客户端启动不了,其它的都正常 看日志是什么udp错误

@hcym 你使用 @AmberisMyShiba 的代码而不用tuic但使用比如其他ss、v2ray之类的节点能正常启动吗?

zxlhhyccc commented 1 year ago

tuic客户端启动不了,其它的都正常 看日志是什么udp错误

因为楼上这位不用tuic的zxlhhyccc提交的PR把tuic生成配置的代码给改错了。导致其他类型的节点都能启动,唯独tuic客户端无法启动。

大佬,我仅仅是在你原来的基础上把”s“和其中一个的dual_stack=删除了,应该不会破坏生成配置的代码啊?如果按照你后来提交的pr把”s“删除,在clint_config.lua里加上s,这样子可以保证其他类型的节点正常运行,但对tuic节点是否可行?

hcym commented 1 year ago

tuic客户端启动不了,其它的都正常 看日志是什么udp错误

@hcym 你使用 @AmberisMyShiba 的代码而不用tuic但使用比如其他ss、v2ray之类的节点能正常启动吗?

哪个不能启动,用今天的可以,就是tuic不行,刚刚用电脑客户端试了试,也是半身不遂,不能谷歌搜索,油管正常,看速度确实比hy高,服务端太烦,一个域名一个80口都要给,暂时放弃了

AmberisMyShiba commented 1 year ago

tuic客户端启动不了,其它的都正常 看日志是什么udp错误

因为楼上这位不用tuic的zxlhhyccc提交的PR把tuic生成配置的代码给改错了。导致其他类型的节点都能启动,唯独tuic客户端无法启动。

大佬,我仅仅是在你原来的基础上把”s“和其中一个的dual_stack=删除了,应该不会破坏生成配置的代码啊?如果按照你后来提交的pr把”s“删除,在clint_config.lua里加上s,这样子可以保证其他类型的节点正常运行,但对tuic节点是否可行?

你索性再提交个PR吧,把s加上。应该就可以了。

zxlhhyccc commented 1 year ago

clint_config.lua里加上s

大佬,你的意思是在clint_config.lua里加上s就可以吗,比如:将默认3、8改为3s、8s对吗?

zxlhhyccc commented 1 year ago

哪个不能启动,用今天的可以,就是tuic不行,刚刚用电脑客户端试了试,也是半身不遂,不能谷歌搜索,油管正常,看速度确实比hy高,服务端太烦,一个域名一个80口都要给,暂时放弃了

你用的今天的仓库里的ssrp是吗?

AmberisMyShiba commented 1 year ago

clint_config.lua里加上s

大佬,你的意思是在clint_config.lua里加上s就可以吗,比如:将默认3、8改为3s、8s对吗?

你可别去改client_config.lua了。你的上个PR里,把原来重复的dual_stack删掉一个即可,你再把s删了,实在是有点画蛇添足了。如果你没什么把握,就不要随意修改代码,更不要猴急猴急地提交PR。等别人把该测试都测试一遍再提交吧。

zxlhhyccc commented 1 year ago

你可别去改client_config.lua了。你的上个PR里,把原来重复的dual_stack删掉一个即可,你再把s删了,实在是有点画蛇添足了。如果你没什么把握,就不要随意修改代码,更不要猴急猴急地提交PR。等别人把该测试都测试一遍再提交吧。

关键问题是:不把gen_config.lua里的.. "s"删除,其他类型的节点(比如ss、ssr、xray等类型节点)绝对无法启动(会报nil错误),而且只能在tuic下启动,我刚才测试了无数遍。。。,查找了这个问题情况,实在无法发现是为啥引起的!~ 另外,我上次提的pr,目的是要先能启动,也没有随意的修改代码吧?! 还有就是,tuic我现在搞一下直接源码编译生成二进制看能不能编译过去!

root@OpenWrt:~# /etc/init.d/shadowsocksr restart
lua: /usr/share/shadowsocksr/gen_config.lua:318: attempt to concatenate field 'heartbeat' (a nil value)
stack traceback:
        /usr/share/shadowsocksr/gen_config.lua:318: in main chunk
        [C]: ?
AmberisMyShiba commented 1 year ago

你可别去改client_config.lua了。你的上个PR里,把原来重复的dual_stack删掉一个即可,你再把s删了,实在是有点画蛇添足了。如果你没什么把握,就不要随意修改代码,更不要猴急猴急地提交PR。等别人把该测试都测试一遍再提交吧。

关键问题是:不把gen_config.lua里的.. "s"删除,其他类型的节点绝对无法启动(会报nil错误),而且只能在tuic下启动,我刚才测试了无数遍。。。,查找了这个问题情况,实在无法发现是为啥引起的!~

root@OpenWrt:~# /etc/init.d/shadowsocksr restart
lua: /usr/share/shadowsocksr/gen_config.lua:318: attempt to concatenate field 'heartbeat' (a nil value)
stack traceback:
        /usr/share/shadowsocksr/gen_config.lua:318: in main chunk
        [C]: ?

你看你都不知道问题在哪里,你还这么起劲。慢慢研究吧,好好梳理一下代码,多做做测试。

zxlhhyccc commented 1 year ago

你看你都不知道问题在哪里,你还这么起劲。慢慢研究吧,好好梳理一下代码,多做做测试。

行,我直接用你的源码编译后测试,看是什么结果!省的大佬您不相信说是我乱改代码导致,其实我根本没改动什么地方!

AmberisMyShiba commented 1 year ago

你看你都不知道问题在哪里,你还这么起劲。慢慢研究吧,好好梳理一下代码,多做做测试。

行,我直接用你的源码编译后测试,看是什么结果!省的大佬您不相信说是我乱改代码导致,其实我根本没改动什么地方!

行啊,积极提交PR对开源软件和社区活跃都是好事。折腾起来吧。

zxlhhyccc commented 1 year ago

行啊,积极提交PR对开源软件和社区活跃都是好事。折腾起来吧。

大佬你看,这完全是用的你的源码,同样的报错,所以不是我的问题,我不知道大佬测试了tuic以外的其他类型节点没有! image

leochien0102 commented 1 year ago

如果你的PR完美解决了bug,那么是个好的PR,如果只是解决了你碰到的问题,而破坏了其他你不用的功能,那就不是一个好的PR。所以,如果不用tuic,在feeds.conf里把这个feed指向一个添加tuic-client前的commit即可,然后就耐心等待修复和完善。

zxlhhyccc commented 1 year ago

如果你的PR完美解决了bug,那么是个好的PR,如果只是解决了你碰到的问题,而破坏了其他你不用的功能,那就不是一个好的PR。所以,如果不用tuic,在feeds.conf里把这个feed指向一个添加tuic-client前的commit即可,然后就耐心等待修复和完善。

去掉"s"后,在client-config.lua中这里加上s即可解决tuic和其他类型的节点正常运行:

image

zxlhhyccc commented 1 year ago

如果你的PR完美解决了bug,那么是个好的PR,如果只是解决了你碰到的问题,而破坏了其他你不用的功能,那就不是一个好的PR。所以,如果不用tuic,在feeds.conf里把这个feed指向一个添加tuic-client前的commit即可,然后就耐心等待修复和完善。

看截图报错,提示的是如果使用除tuic以外其他类型节点无法读取配置(即:读取配置为空),按道理如果不使用tuic节点,不应该去读取tuic“heartbeat”等的配置!

AmberisMyShiba commented 1 year ago

如果你的PR完美解决了bug,那么是个好的PR,如果只是解决了你碰到的问题,而破坏了其他你不用的功能,那就不是一个好的PR。所以,如果不用tuic,在feeds.conf里把这个feed指向一个添加tuic-client前的c

如果你的PR完美解决了bug,那么是个好的PR,如果只是解决了你碰到的问题,而破坏了其他你不用的功能,那就不是一个好的PR。所以,如果不用tuic,在feeds.conf里把这个feed指向一个添加tuic-client前的commit即可,然后就耐心等待修复和完善。

看截图报错,提示的是如果使用除tuic以外其他类型节点无法读取配置(即:读取配置为空),按道理如果不使用tuic节点,不应该去读取tuic“heartbeat”等的配置!

按一般的逻辑,使用什么类型的节点就读取对应类型的配置,不使用就不会去读取配置。然而读了源码你会发现,所有节点的配置文件都是用local定义为一个表保存json内容。因而无论是使用何种节点,所有节点的配置文件会全部运算一遍。所以即便如果不用tuic节点,也会运算tuic的配置,导致程序中断抛出异常。 不想对代码大动干戈,明天提交个PR修复问题。也请各位测试反馈。

zxlhhyccc commented 1 year ago

如果你的PR完美解决了bug,那么是个好的PR,如果只是解决了你碰到的问题,而破坏了其他你不用的功能,那就不是一个好的PR。所以,如果不用tuic,在feeds.conf里把这个feed指向一个添加tuic-client前的c

如果你的PR完美解决了bug,那么是个好的PR,如果只是解决了你碰到的问题,而破坏了其他你不用的功能,那就不是一个好的PR。所以,如果不用tuic,在feeds.conf里把这个feed指向一个添加tuic-client前的commit即可,然后就耐心等待修复和完善。

看截图报错,提示的是如果使用除tuic以外其他类型节点无法读取配置(即:读取配置为空),按道理如果不使用tuic节点,不应该去读取tuic“heartbeat”等的配置!

按一般的逻辑,使用什么类型的节点就读取对应类型的配置,不使用就不会去读取配置。然而读了源码你会发现,所有节点的配置文件都是用local定义为一个表保存json内容。因而无论是使用何种节点,所有节点的配置文件会全部运算一遍。所以即便如果不用tuic节点,也会运算tuic的配置,导致程序中断抛出异常。 不想对代码大动干戈,明天提交个PR修复问题。也请各位测试反馈。

顶!赞!