Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1.8.11macos版本zip文件中没有执行文件 #3305

Closed
2 tasks done
linze99 opened this issue Apr 26, 2024 · 17 comments
Closed
2 tasks done

1.8.11macos版本zip文件中没有执行文件 #3305

linze99 opened this issue Apr 26, 2024 · 17 comments
Labels
bug Something isn't working

Comments

@linze99
Copy link

linze99 commented Apr 26, 2024

Integrity requirements

  • I confirm that I have read the documentation, understand the meaning of all the configuration items I wrote, and did not pile up seemingly useful options or default values.
  • I searched issues and did not find any similar issues.

Version

1.8.11

Description

截屏2024-04-26 14 05 59
zip文件解压后只有以下四个文件:
geoip.dat
geosite.dat
LICENSE
README.md

Reproduction

下载最新的压缩包,解压

log

No response

@Fangliding
Copy link
Member

Maybe #3275

@Fangliding Fangliding added the bug Something isn't working label Apr 26, 2024
@KobeArthurScofield
Copy link
Contributor

Maybe #3275

不用 maybe,就是……

估计 pr 的老哥也不知道自动构建会用到这个 makefile 就直接将 macOS 的输出文件名改了,然后 action 文件没跟着改,导致编译是编译了,但是收文件打包的时候没有找到对应名字的文件,直接就打半空包了……

看 action 最近产出的自动构建包 macOS 在这个更改之后全部半空包了…… 从 #2084 开始

要不要在 makefile 注明这个文件也会被自动构建使用更改时必须检查 actions

@Fangliding
Copy link
Member

Fangliding commented Apr 26, 2024

@KobeArthurScofield 就算修改action把它修了 感觉改名也不好 可能破坏一些软件的自动更新 要不考虑revert了 我手动补传一下?
@yuhan6665
@RPRX

@KobeArthurScofield
Copy link
Contributor

KobeArthurScofield commented Apr 26, 2024

建议 revert,这 breaking 实在有点刺激了

反正原来 pr 里面提到的 lipo 做 fat binaty 得要有 Xcode 才能用,一般交叉编译的条件下用不着

这个原始 pr 的需求,其实既然都能编译出来,在本地手动重命名或者自行改本地在脚本里面多复制一份或者 blabla 的本地处理也不是不可以

@RPRX RPRX closed this as completed in b892478 Apr 26, 2024
@RPRX
Copy link
Member

RPRX commented Apr 26, 2024

完美解决,用上了奇奇怪怪的经验#1582 (comment), 41b6559, https://github.com/XTLS/Xray-core/actions/runs/8847057146

@KobeArthurScofield
Copy link
Contributor

看了下现在编译会连 commit tag 也加上
改 action 的时候顺手在 checkout 那里加个 ref 指向主分支应该能避开 reproducible compile 的问题

@RPRX
Copy link
Member

RPRX commented Apr 26, 2024

看了下现在编译会连 commit tag 也加上 改 action 的时候顺手在 checkout 那里加个 ref 指向主分支应该能避开 reproducible compile 的问题

这样最多到 b892478,否则 Makefile 还是旧的,不如 hard code VERSION 为 45ab4cb

@KobeArthurScofield
Copy link
Contributor

KobeArthurScofield commented Apr 26, 2024

演示一下

一般情况下 checkout 那节是这样的:

      - name: Checkout codebase
        uses: actions/checkout@v4

这样默认就是指示读取这个分支当前的 commit 下的代码

加个 ref:

      - name: Checkout codebase
        uses: actions/checkout@v4
        with:
          ref: main # 指向 main 分支目前最新 commit 的代码,或者改成 commit tag 来指定特定的 commit

一般想在 action 里面编译点什么特定的东西或者改了东西不想动原来的 commit 就会这么干

这样最多到 b892478 ,否则 Makefile 还是旧的,不如 hard code VERSION 为 45ab4cb

因为 checkout 的读取有时候会略为尴尬
但是考虑到只动了 makefile 似乎 release note 单独说明一下也行

@RPRX
Copy link
Member

RPRX commented Apr 26, 2024

@KobeArthurScofield
Copy link
Contributor

KobeArthurScofield commented Apr 26, 2024

好像出来的 SHA-256 不一样,文件大小倒是一样
image
可惜没有 macOS 的机器不然应该可以挖一下哪里有问题好了挖出来了
试图用 vscode 强行打开对比了下只有这两个地方不一样,代码什么的都是一点不同都没有 ,看来还是被 checkout 搞了
image
试图蒙混过关但是差了一点点

这是 action file
这是 action run

来点抓灵术
https://github.com/KobeArthurScofield/Xray-core/blob/c6c61d3a3a76e36766ef15d46b598dcc6209a34b/.github/workflows/tester.yml#L91-94

@RPRX
Copy link
Member

RPRX commented Apr 26, 2024

@KobeArthurScofield 不过咋还有 vcs.time,咋可能一样,有点过分了

@yuhan6665
Copy link
Member

yuhan6665 commented Apr 26, 2024

@KobeArthurScofield 不过咋还有 vcs.time,咋可能一样,有点过分了

那个是 git author date 只要 commit 能对上就行

@KobeArthurScofield
Copy link
Contributor

KobeArthurScofield commented Apr 26, 2024

Xray-core 1.8.11 macOS 特典版 tag

@RPRX
Copy link
Member

RPRX commented Apr 26, 2024

@KobeArthurScofield 不过咋还有 vcs.time,咋可能一样,有点过分了

那个是 git author date 只要 commit 能对上就行

这么说 vcs 应该是 version control system?

@RPRX
Copy link
Member

RPRX commented Apr 26, 2024

感觉现在的 #3305 (comment) 不如之前的 #3305 (comment) ,之前的更容易找到对应的 commit 去 reproduce,不过先这样吧

@RPRX
Copy link
Member

RPRX commented Apr 26, 2024

@KobeArthurScofield 或者你找个方法能把 vcs.revision 和 vcs.time 这两个值改了也行

@KobeArthurScofield
Copy link
Contributor

@KobeArthurScofield 或者你找个方法能把 vcs.revision 和 vcs.time 这两个值改了也行

盒盖了而且好困

如果要完美解决的话特制一份编译指定 commit 的就行
然后因为出问题的是被改了文件名导致后续的打包问题,所以在 action 里面 build 里面 find 那一步把被改的文件名加进去匹配让 action 能捕获被改名的文件,然后多插一步把名字改回来就行
缺点是复杂了点

@RPRX RPRX mentioned this issue Jul 13, 2024
3 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

5 participants