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

PCL2 将 Noisium 错误的更新为 Steve's Realistic Sleep #5113

Closed
1 task done
WinExp opened this issue Nov 13, 2024 · 23 comments
Closed
1 task done

PCL2 将 Noisium 错误的更新为 Steve's Realistic Sleep #5113

WinExp opened this issue Nov 13, 2024 · 23 comments
Labels
· Bug 完成 已被处理,将在下次更新之后生效

Comments

@WinExp
Copy link

WinExp commented Nov 13, 2024

检查项

描述

MC版本为1.21.1 Fabric,检查模组更新时提示Noisium有更新版本,但实际下载的mod为 Steve's Realistic Sleep,且tooltip提示的最新版本也为 Steve's Realistic Sleep,不清楚其他mod有没有这个问题
image

重现步骤

  1. 下载 1.21.1 Fabric
  2. 下载 Noisium Mod
  3. 检查更新

日志与附件

Log1.txt
Log2.txt
Log3.txt
Log4.txt
Log5.txt

@WinExp WinExp added · Bug 新提交 需要社区初步确认其有效的新提交 labels Nov 13, 2024
@tangge233
Copy link
Contributor

Noisium 在 Modrinth 的 ID 是 KuNKN7d2
Steve's Realistic Sleep 在 Modrinth 的 ID 是 ZPywkPEo

日志中下载 https://cdn.modrinth.com/data/KuNKN7d2/versions/u9GNQrei/stevesrealisticsleep-fabric-1.11.0%2Bmc1.21-1.21.1.jar 成功

怎么 ID 错了还可以下载啊

@3gf8jv4dv
Copy link
Collaborator

3gf8jv4dv commented Nov 13, 2024

看起来和 #5104 有点像。我试了下请求 MCIM 会出现这个问题,而官方源不会。

相关:#4886

@lazyzyzyzy
Copy link

我是 #5104 ,该情况跟我的相同(大概)

@z0z0r4
Copy link

z0z0r4 commented Nov 13, 2024

现在局势有亿点混乱……大多都是 MCIM 出现问题而官方源表现正常……

而负责 MCIM 的 zzr 现在又在学校,没法处理…… 管不了,Open93AtHome 也没啥 bug 可以修,摆了.png

我觉得你既然没关系还是别在这黑了=。= 没人觉得和你有关系,你也不需要帮我处理这些

@z0z0r4
Copy link

z0z0r4 commented Nov 14, 2024

看起来和 #5104 有点像。我试了下请求 MCIM 会出现这个问题,而官方源不会。

相关:#4886

对于此 issue 的情况可否给出相关 api 请求 curl,根据你在上一个 issue 中所说的是已经无法复现

我需要具体的请求来确认情况...对比

以及你们确定不是官方源的问题吗?参考#4886 的叙述,是作者乱塞文件。我没空确认

@3gf8jv4dv
Copy link
Collaborator

对于此 issue 的情况可否给出相关 api 请求 curl,根据你在上一个 issue 中所说的是已经无法复现

此 Issue 的情况目前仍能复现。

Details

hashes 字段写的是 2.3.0 (1.21-1.21.1) - Noisium 的主文件 SHA-1。

curl -X 'POST' \
  'https://mod.mcimirror.top/modrinth/v2/version_files/update' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "hashes": [
    "642a672cfc60ff1e1262a39d7e160b1381c5120c"
  ],
  "algorithm": "sha1",
  "loaders": [
    "fabric"
  ],
  "game_versions": [
    "1.21.1"
  ]
}'
{
  "642a672cfc60ff1e1262a39d7e160b1381c5120c": {
    "_id": "u9GNQrei",
    "author_id": "90lgCfkO",
    "changelog": "### Added\n\n- Support for Minecraft 1.21-1.21.1\n- Support for Forge/NeoForge\n- A config option to disable the vignette whilst sleeping\n    - Client-side\n\n### Changed\n\n- Dropped support for Minecraft 1.20.2-1.20.6\n- Lowered the default tick speed multipliers for interactions\n",
    "changelog_url": null,
    "date_published": "2024-09-08T09:52:03Z",
    "dependencies": [
      {
        "version_id": null,
        "project_id": "5srFLIaK",
        "file_name": null,
        "dependency_type": "optional"
      },
      {
        "version_id": null,
        "project_id": "9s6osm5g",
        "file_name": null,
        "dependency_type": "required"
      },
      {
        "version_id": null,
        "project_id": "AANobbMI",
        "file_name": null,
        "dependency_type": "optional"
      },
      {
        "version_id": null,
        "project_id": "P7dR8mSH",
        "file_name": null,
        "dependency_type": "required"
      },
      {
        "version_id": null,
        "project_id": "mOgUt4GM",
        "file_name": null,
        "dependency_type": "optional"
      }
    ],
    "downloads": 0,
    "featured": false,
    "files": [
      {
        "hashes": {
          "sha512": "fabee08cef4bb685f9476093001f4e40943080a9970fbcb609cb13f7e7fd117e9cd8b7dfef3d415ea86563931e3db883918dbc4d0e34a30ffc46374e425c16f3",
          "sha1": "36ad3092648bb4c1cb2bb6f31a12014d13a0c3c9"
        },
        "url": "https://cdn.modrinth.com/data/KuNKN7d2/versions/u9GNQrei/stevesrealisticsleep-fabric-1.11.0%2Bmc1.21-1.21.1.jar",
        "filename": "stevesrealisticsleep-fabric-1.11.0+mc1.21-1.21.1.jar",
        "primary": true,
        "size": 198333,
        "file_type": null
      },
      {
        "hashes": {
          "sha512": "29be6c148fb05d29237083703466e60c36d1e453c59a96f63e4f44f4af05d5b874e795373480a987181e46c7173af317e4847bc094a0f766b6f2d57200000112",
          "sha1": "4f1a1db7e33f7936b1116137c4afec94b0dcfb39"
        },
        "url": "https://cdn.modrinth.com/data/KuNKN7d2/versions/u9GNQrei/stevesrealisticsleep-fabric-1.11.0%2Bmc1.21-1.21.1-sources.jar",
        "filename": "stevesrealisticsleep-fabric-1.11.0+mc1.21-1.21.1-sources.jar",
        "primary": false,
        "size": 175712,
        "file_type": null
      }
    ],
    "found": true,
    "game_versions": [
      "1.21",
      "1.21.1"
    ],
    "loaders": [
      "fabric",
      "quilt"
    ],
    "name": "1.11.0 (1.21-1.21.1)",
    "project_id": "KuNKN7d2",
    "requested_status": null,
    "slug": "noisium",
    "status": "listed",
    "sync_at": "2024-09-08T09:54:01Z",
    "version_number": "1.11.0+mc1.21-1.21.1",
    "version_type": "release"
  }
}

以及你们确定不是官方源的问题吗?参考#4886 的叙述,是作者乱塞文件。我没空确认

关于 #4886 的情况,提交者已经和 Mod 开发者反馈过并解决了,官方源请求已经没问题了。但 MCIM 仍然会出现这个问题。

@LTCatt
Copy link
Member

LTCatt commented Nov 14, 2024

考虑与 #5104 重复?

@xinyihl
Copy link

xinyihl commented Nov 14, 2024

考虑与 #5104 重复?

这个问题和 #5104 应该不算重复,那个有点像 mod 版本误判,
这个是原作者在 modrinth 上传错文件,然后 MCIM 缓存导致的问题
目前这两个 issue 的讨论有点混乱了

#5104 目前无法复现出来,请求数据都一样,但这个还保持不变

@3gf8jv4dv
Copy link
Collaborator

是我发言欠妥,非常抱歉。

但我仍然认为两个 issue 的原因是相似的。 #5104 之前确实能复现,但现在问题消失,不排除之前是 Mod 开发者最初设置错了版本而 MCIM 缓存了它。

@SALTWOOD
Copy link
Contributor

SALTWOOD commented Nov 14, 2024

是我发言欠妥,非常抱歉。

但我仍然认为两个 issue 的原因是相似的。 #5104 之前确实能复现,但现在问题消失,不排除之前是 Mod 开发者最初设置错了版本而 MCIM 缓存了它。

按照 #5104 的情况看,怕不是作者错误地把另外一个模组传上去,然后刚好官方那边的匹配机制跟 MCIM 的不一样,于是就导致 MCIM 这边把重复哈希的文件匹配了上去

既然这样子的话,那我觉得可以把 #5104 关了

@SALTWOOD
Copy link
Contributor

SALTWOOD commented Nov 14, 2024

现在局势有亿点混乱……大多都是 MCIM 出现问题而官方源表现正常……

而负责 MCIM 的 zzr 现在又在学校,没法处理…… 管不了,Open93AtHome 也没啥 bug 可以修,摆了.png

我觉得你既然没关系还是别在这黑了=。= 没人觉得和你有关系,你也不需要帮我处理这些

我不是在黑……你觉得我提你很烦我可以不提,但是这里又不是MCIM的仓库我在这里你应该管不着吧?

以及以目前的情况我怀疑是那边的匹配机制有点问题,#5104 的情况应该是因为官方和 MCIM 这边匹配的机制不一样,于是就把重复哈希的匹配了上去

简单说就是人为撞库导致爆炸

@z0z0r4
Copy link

z0z0r4 commented Nov 14, 2024

是我发言欠妥,非常抱歉。

但我仍然认为两个 issue 的原因是相似的。 #5104 之前确实能复现,但现在问题消失,不排除之前是 Mod 开发者最初设置错了版本而 MCIM 缓存了它。

如果只是该mod的信息过期缓存...等我回家手动刷新就行了...

我还以为多大个事,怎么能搞得这么麻烦?

@xinyihl
Copy link

xinyihl commented Nov 14, 2024

如果只是该mod的信息过期缓存...等我回家手动刷新就行了...

我还以为多大个事,怎么能搞得这么麻烦?

手动刷新确实能解决问题,但作为一个公开的 api 提供者这样做明显是不负责任的

已经经过这么长的时间了它仍然没有自动刷新,是否存在逻辑上的问题

ps: 该问题不适合在 pcl 这里讨论,相关 issue 都可以标记为 第三方

@WorldHim WorldHim added 第三方 等待第三方处理,或是由第三方导致 and removed 新提交 需要社区初步确认其有效的新提交 labels Nov 14, 2024
@z0z0r4
Copy link

z0z0r4 commented Nov 15, 2024

如果只是该mod的信息过期缓存...等我回家手动刷新就行了...
我还以为多大个事,怎么能搞得这么麻烦?

手动刷新确实能解决问题,但作为一个公开的 api 提供者这样做明显是不负责任的

已经经过这么长的时间了它仍然没有自动刷新,是否存在逻辑上的问题

ps: 该问题不适合在 pcl 这里讨论,相关 issue 都可以标记为 第三方

虽然我既没有时间确认官方源做出了何种修改,我也认为新上的同步逻辑有问题,但已经缓存的版本信息理论上是不需要更改的,因此根本不会当成需要刷新的数据,不会过期...我只能手动删除后等待重新捕获该版本信息

根据我设计时测试的是,main file 无法修改,只有一个 additional file 才能在版本已经发布后修改,除非误认了

我也觉得不需要在这里讨论,但实际上没人会往 mcim 提 issue,就@,反而是我还得跑来看冗长而毫无信息量的日志...如果社区能改变下这个奇怪的处理惯例就更好了=-=

@LTCatt
Copy link
Member

LTCatt commented Nov 15, 2024

从事实逻辑上,玩家在发现问题的时候肯定只可能知道这是启动器的问题,不知道这是 MCIM 的问题,所以交 issue 当然会交到我这儿来,我觉得这个 “奇怪的处理惯例” 并不可能改变。只能说,可以让社区在发现此类 issue 的时候,再去你那里交一个。
此外,PCL 并不可能将请求的完整信息写入日志。很多请求的返回内容相当大,全部写入会导致日志文件大到有时候无法打开,在有并发请求的时候还会造成巨大的性能消耗。我觉得既然社区已经提供了完整的复现步骤和对应出问题的 Mod,就已经可以独立构造请求并复现了。

@z0z0r4
Copy link

z0z0r4 commented Nov 16, 2024

从事实逻辑上,玩家在发现问题的时候肯定只可能知道这是启动器的问题,不知道这是 MCIM 的问题,所以交 issue 当然会交到我这儿来,我觉得这个 “奇怪的处理惯例” 并不可能改变

此处指的 处理惯例 就是针对第三方类 issue 的处理方式…不是用户侧

可以麻烦社区 contributior 在这种情况下往这边提一下 issue 提供一份示范请求吗?只知道个 api route,我没法去调查原因…

PCL2 的 mod 更新这类功能,我完全没用过,我本地连一个 mod 都没…

我之前确实有一直收到缺 mod 的情况,但现在就 modrinth 而言也收录了 80% 左右了…这下真不太清楚原因,有xd愿意协助吗…?

我个人已经两年没启动过游戏了,c 端亲身体验为 0…当然也可以说我不负责,但我确实不咋参与这个圈子了…虽然有心维护 mod 镜像,但我从最开始玩这个游戏到现在也对 mod 玩法从来没有兴趣…=_= 有人可能觉得我有所怠慢,但其实我也没理由特别致力于此…

@z0z0r4
Copy link

z0z0r4 commented Nov 16, 2024

如果只是该mod的信息过期缓存...等我回家手动刷新就行了...

我还以为多大个事,怎么能搞得这么麻烦?

手动刷新确实能解决问题,但作为一个公开的 api 提供者这样做明显是不负责任的

已经经过这么长的时间了它仍然没有自动刷新,是否存在逻辑上的问题

ps: 该问题不适合在 pcl 这里讨论,相关 issue 都可以标记为 第三方

看来我确实不负责任

毕竟突然发现其实可以回一组 "上游问题""同步间隔较长""请以官方源为准""镜像不保证准确性"…何必一天上14个钟的学还得来郁闷下这次半休咋处理这个 issue =` '=

@xinyihl
Copy link

xinyihl commented Nov 16, 2024

我认为的解决方案(我并不知道 MCIM 相关 api 的实现方式)

  1. 对类似的 api 数据设置一个过期时间
  2. 不对类似的 api 进行缓存

示范请求3gf8jv4dv 已经给出了 #5113 (comment)

接下来的话可能有点尖锐

平心而论

我们在此讨论也就是为了解决这个别人提交的 issue

但我认为做镜像本事就是一种为爱发电的事并且同时也 100% 会遇到各种各样的问题

这不是一句话的事这是需要消耗很多精力的

那么当初你带头做了 MCIM 是否考虑了这一层

在开源社区你完全没必要提及你打了删除线的话,这里甚至有不少 “我要你的xx源码有什么用,给我构建” 这种人

@z0z0r4
Copy link

z0z0r4 commented Nov 16, 2024

我认为的解决方案(我并不知道 MCIM 相关 api 的实现方式)

  1. 对类似的 api 数据设置一个过期时间
  2. 不对类似的 api 进行缓存

示范请求3gf8jv4dv 已经给出了 #5113 (comment)

接下来的话可能有点尖锐

我姑且,非常,不认可,你的解决方案,和你对我的观点。

除了不应该用删除线这点,我应该加粗


OT...抱歉只能在启动器这边问,我也不知道还有哪里有人了解下方的问题...

关于长期以来有收到反馈,关于有时候大部分本地的都无法匹配到的缺失问题,一直搁置,不知道现在情况如何。

我个人不玩实际上就没下载过 Mod,因此在此招募有无志愿者愿意协助下测试...给我提供点例子,以及在今后的我所思虑不周的方面提供些相关帮助?

@3gf8jv4dv
Copy link
Collaborator

然而,根据 issue 的跟踪,作者修改了已发布版本的文件,可以得出 Modrinth 平台似乎可以以不为人知的方式,在不更新数据库内存储日期的情况下,修改该 project 内含的内容...

我再次仔细看了下 #4886Steveplays28/noisium#43 。Mod 开发者似乎是把错误发布的版本给移除了。想问下已发布的 Mod 版本是可以移除的吗?(虽然凭常识我觉得应该可以)

@z0z0r4
Copy link

z0z0r4 commented Nov 16, 2024

然而,根据 issue 的跟踪,作者修改了已发布版本的文件,可以得出 Modrinth 平台似乎可以以不为人知的方式,在不更新数据库内存储日期的情况下,修改该 project 内含的内容...

我再次仔细看了下 #4886Steveplays28/noisium#43 。Mod 开发者似乎是把错误发布的版本给移除了。想问下已发布的 Mod 版本是可以移除的吗?(虽然凭常识我觉得应该可以)

抱歉我逻辑好像有点错误,容我删除以上的推理...

@z0z0r4
Copy link

z0z0r4 commented Nov 16, 2024

结案:同步逻辑没考虑版本可能删除的情况。我误会了...我以为是 Modrinth 特例下允许了该 Mod 作者修改 primary file,所以决定手动删除处理...

后续见 mcmod-info-mirror/mcim-sync#1

@LTCatt 可以 close 了,正在处理

@JingHai-Lingyun JingHai-Lingyun closed this as not planned Won't fix, can't repro, duplicate, stale Nov 16, 2024
@JingHai-Lingyun
Copy link
Collaborator

转三方处理,这不是 PCL 的问题 😅

@z0z0r4
Copy link

z0z0r4 commented Nov 17, 2024

已经修复,以后在同步中会处理这种情况,现在同步时会检查一遍是否有版本需要删除

但过往数据需要全部重新拉取,会造成很大的负担,刚刚尝试了一下,基本上主动进行全量刷新是不现实的(curseforge 会 403),会对搜索等服务造成影响...因此这个问题会拖上一段时间,直到有空专开个 api 反代扫一遍数据库...

任意 Mod 的版本列表将会在下次该 Mod 的更新被捕捉到的时候重新检查

@LTCatt LTCatt closed this as completed Nov 17, 2024
@HexDragon-Bot HexDragon-Bot added 完成 已被处理,将在下次更新之后生效 and removed 第三方 等待第三方处理,或是由第三方导致 labels Nov 17, 2024
@WinExp
Copy link
Author

WinExp commented Nov 17, 2024

能要个主题吗 o.0
识别码:1F05-F92E-EF3C-8BFC

@LTCatt
Copy link
Member

LTCatt commented Nov 17, 2024

你的解锁码:NKQDe24NJtNc7/CE3R0nmngyiQ2A2wb2
在 更多 → 关于与鸣谢 → 输入解锁码 中使用,谢谢支持~

@z0z0r4
Copy link

z0z0r4 commented Nov 23, 2024

modrinth 已经清理完了,curseforge 根本扫不动,1343617 个版本 =。=

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
· Bug 完成 已被处理,将在下次更新之后生效
Projects
None yet
Development

No branches or pull requests