How to add upper bounds to previous tags?

I need to add upper bounds in REQUIRE to all previous tags of a package.
How do I do this in an efficient way?

Just make a new branch in your METADATA fork, open up the folder for your package and do it manually. I don’t think there’s a good way to regex it because there’s a few corner cases to watch out for. For example, you want to still put max versions on previous versions which didn’t even have a requirement before. Example:

https://github.com/JuliaLang/METADATA.jl/pull/7491

It’s quite quick to do.

1 Like

Tim Holy has some WIP PR’s up at PkgDev to add automated features for this, but yeah I generally do it by hand.

$EDITOR ~/.julia/v0.5/METADATA/PackageName/versions/*/requires works pretty well too, as long as the package in question isn’t so old that it had any tagged versions with no requires file.

3 Likes

As a not-entirely-useful aside, I made an unregistered package called Bounder for exactly this purpose a while back. I ran into LibGit2 issues at the time (I was developing on 0.5) and I don’t know whether they’ve since been fixed in 0.6. Chances are the functionality Tim Holy is adding to PkgDev will be better anyway. :wink:

1 Like