Jump to content

Question About Mod Requirements and SemVer Range


Guest deleted34304850
Go to solution Solved by Tannin42,

Recommended Posts

Guest deleted34304850

I have set up some rules for mods that require the new SimSettlements2 mod, and so far, all is fine.

Overnight, an update to SimSettlements2 was pushed, I downloaded it and all the mods that require SimSettlements2 now show up as requirements not met;

 

SimSettlements2 was named Settlements2v1.0.0, the update is named Settlements2v1.0.0a.

I have tried any combination of Version Match, and the only thing that works is the default value of '*'. Any attempt to create a version match string ends in an error.

 

Based on these two values, Settlements2v1.0.0 & Settlements2v1.0.0a, can you please provide the correct syntax for me to add to the Version Match field, so that the mods will not show a requirement missing as long as the version of the mod is > 1.0.0?

 

Thanks.

Edited by 1ae0bfb8
Link to comment
Share on other sites

Guest deleted34304850

I've tried the version field, the mod name, bits of the mod name that contain the version field and a myriad of other options and for the life of me, I cannot get the SemVer value to give me a value that is acceptable.

Link to comment
Share on other sites

I think if Kinggath and co put the version in the version field and not in the file name this feature will have an easier time working out dependencies . The below is a "good" example of naming and proper semantic versioning.

 

Name: Sim Settlements 2 - Version: 1.0.0

Name: Sim Settlements 2 - Version: 1.0.1

Link to comment
Share on other sites

Guest deleted34304850

I've tried the following;

 

* - works

>=1.0.0 doesn't work

>=1.0.* doesn't work

 

put the two that don't work into quotes - doesn't work.

 

I've added V1.0.0 and variations thereof, doesn't work.

 

I'm basically all out of ideas.

 

If I use * it works but any time the mod is updated this will cause dependencies to fail until I add new ones which include the explicit mod version. It's not a showstopper but it looks to me that unless the mod is versioned in a very particular way, this feature is mostly redundant, which is a shame.

Link to comment
Share on other sites

  • Solution

1.0.0a is not a valid semantic version that we can make a comparison on

 

In general you want the actual version to be expressed in the three numbers, nothing else.

So after 1.0.0 the next bugfix release is 1.0.1, the next feature release is 1.1.0, the next breaking change is 2.0.0, no letters or other attachments.

 

Semantic versions can have additional information attached, e.g. 1.0.0+foobar, but that is still 1.0.0, so "1.0.0+foobar is neither newer nor older than 1.0.0.

You can also attach a prerelease tag, e.g. "1.0.0-a", but that means "the alpha for 1.0.0" so 1.0.0-a is *older* than 1.0.0.

Link to comment
Share on other sites

Guest deleted34304850

thanks for the clarifications guys, appreciate you doing this on a Sunday in your spare time.

As I said, it's not a showstopper and Vortex allows me to deal with this in other ways, so it's all good.

Link to comment
Share on other sites

Maybe the Version field on the website could be set to only allow Numeric and . ?

Because I've run into this when I had vortex check my mod list for SSE.

V6.1 or 1.0c, 4.11SSE, 9.01CMS, 5,2SE, 0.90B, 8.4CA, 3.07SSE, 1c, 1.6Full, 9.45SSE, 4.1SE, v2.0Legacy, 1.7p13, 2.0.0-b, 1.41d, 1.60-SE, v2.0, v3.0.0a4, v2.04, 1.4c, 1.14-alpha, v1.01, v4.1.1, 1.1.3HF1, 1.1Fixed, v1.6.2, 3.1.8a, 5.02SE, 1.0SE, 1SE, V1.1, 59.0-BETA,

These are all of the variations of Version Numbers I have in my load order, and vortex doesn't know what to do with them.

When mods are Versioned correctly, I can download all of the updated mods, and quickly and conveniently use the Version Dropdown box in the VERSION column of the Mods Tab, and REMOVE the old mod and quickly install the new version from the MOD tab or the Notification bell, it's super fats, however, when the mods are versioned as above, then they're spread out all over the Mod list

Just restrict the Version Field to Numbers and Period .

Link to comment
Share on other sites

Guest deleted34304850

I read somewhere, a while ago, that the reason this restriction isn't enforced is because Nexusmods don't want to overburden the mod author with what could be perceived as pedantic detail.

It's an understandable stance, all things considered.

 

I wonder, could this be something controlled at my end, in my Vortex?

 

Let's say i download HTRMOD 1.0.0.A - in my Vortex, I decide to call that HTRMOD 1.0.0 because that fits my nomenclature.

 

A while later, there's an update to HTRMOD, now it's HTRMOD 1.1.0BETA.

 

I pull that down via Vortex. Vortex knows this is an update, and all is fine.

 

Again, I update my own nomenclature, and I call this HTRMOD 1.1.0. So my own nomenclature acts as a mask that would allow me to use the SEMVAL value that I want, and I can then set rules up within my Vortex to act on my own SEMVAL values, whatever they may be?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...