dizzyd / mcdex

Minecraft Modpack Management
Apache License 2.0
74 stars 8 forks source link

Problem with installing latest version of Mod #15

Closed nmarshall23 closed 6 years ago

nmarshall23 commented 6 years ago

It seems that mcdex isn't installing the latest published version of a mod. It's pulling the beta version, when there is a newer release version.

I am building a 1.12.2 Modpack. I have added the Packing Tape to my modpack. The manifest.json shows the beta version of Packing Tape.

I found this because the beta version of Packing Tape crashes my game.

nmarshall23 commented 6 years ago

Smart HUD is another mod that mcdex is picking the incorrect version.

I think I see a pattern both of these mods list they support Minecraft 1.12, and not 1.12.2. However my modpack was set for 1.12.2

dizzyd commented 6 years ago

Hi @nmarshall23 - this behaviour is intentional. mcdex starts at the selected MC version (i.e. 1.12.2 in this case) and works down to first major.minor version (i.e. 1.12). I could add a --exact flag or something to disable this if you like? I've personally found it to work most of the time and makes it easier for mods where authors don't necessarily track every patch.

Thoughts?

nmarshall23 commented 6 years ago

The bug I have is that when mcdex falls back from 1.12.2 to 1.12 is doesn't install the most recent version of the mod.

When I add Smart HUD to my pack, version 1.0.2 of Smart HUD is added to the manifest. Here is the Json.

{
   "clientOnly": true,
   "desc": "Smart HUD",
   "fileID": 2440367,
   "filename": "smarthud-1.12-1.0.2.jar",
   "projectID": 270539,
   "required": true
}

That is an old version, I want version 1.0.4. I looked in mcdex.dat sqlite db, and it has fileID: 2443261, that is the fileID for version 1.0.4.

dizzyd commented 6 years ago

Reproduced it; trying to sort it out. Thanks! :)

dizzyd commented 6 years ago

@nmarshall23 - ok, all fixed in 0.8.2! I wasn't properly ordering by tstamp. :) Thanks for the report.