openkal-musl 0.15.0 and openkal-llvm-runtime 0.11.0: the two mirrors carry the same bytes again - #443
Merged
Merged
Conversation
…carry the same bytes again Both were tagged `v0.15.0` and `v0.11.0` on GitHub while their descriptors name the plain form, so their GLOBAL url answered a 14-byte Not Found; and the GitCode asset was not GitHub's archive, so the one sha256 a descriptor carries could not have matched both mirrors whatever the url said. Repaired at the source rather than in the descriptor: each repository now carries the plain tag beside the `v` one, the GitHub archive of that tag was uploaded to GitCode in place of the asset that was there, and the descriptor states the hash of that one file. Measured afterwards by downloading both: openkal-musl 0.15.0 ee953bd8... GLOBAL and CN identical openkal-llvm-runtime 0.11.0 b9b8eddb... GLOBAL and CN identical The previous hashes (75803192..., 2e26674d...) named the GitCode asset alone and no longer name anything. A consumer that had already resolved either version has the old bytes in its store and is unaffected; one resolving now gets the same tree from either mirror, which is what every other release in this index does.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
承接 #442 里记下的那处缺陷——现在可以修了:资产已由仓库所有者在 GitCode 侧删除。
原来的状态
两个版本在 GitHub 上的标签是
v0.15.0/v0.11.0,而描述符按惯例写无前缀形式,所以 GLOBAL 地址返回 14 字节的 Not Found;同时 GitCode 上的资产并不是 GitHub 的 archive(75803192…对ee953bd8…),所以一个描述符只有一个 sha256 这件事本身就决定了:无论地址怎么写,两边不可能同时对。修法:改源头而不是改描述符
v标签相同的提交;gtc上传到 GitCode,顶替原先那个资产;下载两边比对(本地实测):
ee953bd8…b9b8eddb…旧哈希(
75803192…、2e26674d…)只指向那个已被删除的 GitCode 资产,现在不指向任何东西。已经解析过这两个版本的消费者手里是旧字节,不受影响;现在解析的消费者从任一镜像得到同一棵树——这正是本 index 里其余每个发布的性质。