ModManagerMC / ModManager

A ModManager extension for ModMenu
Apache License 2.0
79 stars 11 forks source link

[BUG] Mods flagged outdated while they're actually up to date #52

Closed FPSUsername closed 3 years ago

FPSUsername commented 3 years ago

Describe the bug Whenever I manually update a mod that's available on modrinth and curseforge (downloaded the mod from curseforge because it's not updated on modrinth yet), the modmanager flags the mod as outdated. In addition, for Mousewheelie the modmanager downloads an outdated version (even though it's up to date on modrinth)

To Reproduce Steps to reproduce the behavior:

  1. Install the latest mousewheelie mod (currently version mousewheelie-1.7.3-newconfig.3+mc1.17.1-pre1
  2. Install the mod
  3. Launch Minecraft and the mod manager
  4. Mod is flagged outdated
  5. Update the mod through the mod manager and see that it downloads version mousewheelie-1.7.3+mc1.17.1-pre1

Expected behavior The mod manager should know that it's up to date

Screenshots Screenshot_20210912_140322 Screenshot_20210912_141121

Please complete the following information:

Logs Latest log: https://pastebin.com/T9rLHVTi (it also contains an error where it can't find a jar for LibZoomer, I think that's part of the OkZoomer mod)

DeathsGun commented 3 years ago

The log isn't available anymore on pastebin. Can you upload it here directly via drag n drop?

FPSUsername commented 3 years ago

2021-09-12-2.log

DeathsGun commented 3 years ago

Looks like mousewheelie isn't following the SemVer versioning scheme which fabric has implemented here. I could fix it so that when two versions are the same the release date is compared and the newer gets selected

FPSUsername commented 3 years ago

Oh okay, that makes sense, it's what I was thinking of as well. Not every plugin/mod follows the version scheme of spigot/fabric, especially with beta/alpha releases. The solution you mention seems good to me (of course it needs to be checked for the MC version, but I bet that's already happening).

DeathsGun commented 3 years ago

Yeah it filters automatically for the fabric loader and the correct mc version

DeathsGun commented 3 years ago

Can you test the fix?

modmanager-1.1.0+1.17-alpha.jar.zip

FPSUsername commented 3 years ago

Tried it, but unfortunately, mousewheelie isn't showing up anymore as outdated. However, I found new issues: Lithium's latest release is 0.7.4: image

Heads down display is version 0.1.1, which I also have installed, yet the mod manager thinks it's version 0.0.0. image

Dynamic FPS has a different version number on modrinth compared to what's in the jar file. image

Last but not least, a miscellaneious: I use a fork of the Iris shader which also has its own version of sodium. Sodium is build in into the new Iris shader, but not yet on the forked version. image

Using the official Iris release (Modrinth): image

K0-RR commented 3 years ago

Heads down display is version 0.1.1, which I also have installed, yet the mod manager thinks it's version 0.0.0.

This issue is caused by the Heads down display itself - https://github.com/auoeke/heads-down-display/blob/1.17/src/main/resources/fabric.mod.json

DeathsGun commented 3 years ago

I would suggest the following:

DeathsGun commented 3 years ago

This version improves it a bit, but for mods who are declaring different version id's on modrinth and in their metadata is something I can't fix. You could only ask them nicely if they would follow the SemVer spec and only use the name field for differentiating between forge and fabric versions.

modmanager-1.1.0+1.17-alpha.jar.zip

DeathsGun commented 3 years ago

If the anymore issues with versions not following SemVer then please consider asking the mod author to change their versioning