
You can use the #:version keyword to specify a min version. Is there any easy way to specify a max version?

Not only is there not an easy way, there is no way at all.

@lexi.lambda Hmm…welp lol

Looks like I’ll have to catch that at runtime instead then. That sucs.

sucks*

(And is also really bad. :confused: )

The correct policy, according to the current package system policies, is to never break backwards compatibility. That way, there’s never any reason to have a max version.

I make no comment on whether or not I find that policy reasonable.

Ya….that’s not ganna fly.

FFmpeg, for example, WILL break backwards compatibility, on major version updates.

(Minor ones will only add functionality, not breaking anything.)

As such, the only thing I can think of is to make a ffmpeg package for every version.

Then, according to the current package system policy, you should make a new (Racket) package for each breaking version of FFmpeg.

Well fun.

See section 10.5 of the package documentation. http://docs.racket-lang.org/pkg/FAQ.html#%28part._.How_can_.I_specify_which_version_of_a_package_.I_depend_on_if_its_interface_has_changed_and_.I_need_an_old_version_%29

Welp great.

So basically the official policy is to flood the package server with slightly different versions of ffmpeg.

(whenever they break compatibility anyway.)

I guess at worst, it’ll be ~200 packages.