Is it possible to specify an explicit version range in the [compat] section of a “Project.toml” file? To prevent resolution failure among several packages with inter-dependencies, while also satisfying the new rules for automatic package registration, I need to specify something like
ElasticArrays ">= 0.2, < 2.0"
Of course, the above is not legal syntax - but is this possible in some way?
Can you elaborate? The range syntax is just convenience for things that already work
Oh, maybe I got this wrong - is there already a way to specify: “This dependency I need in [v0.2, v2,0)” in a “Project.toml”? That’s basically what I meant with my original question - but I understood @tkf’s reply (thanks!) as “not possible yet”.
I think one of the common usecases might be for declaring that “this package is loose at compatibility until all the dependencies are stable enough (>= 1.0)” (*). This is exactly what "0.x - 0" means and it is practically impossible to do with current [compat] syntax IIUC.
(*) Doing this while being compatible with Julia’s version of SemVer is technically possible.
Also, sometimes you only need a fairly small subset of features from a package, introduced fairly early on and quite stable afterwards (while other parts of the package are still evolving). So you may actually be compatible with that package at, say [0.2, 2.0). Intervals in Project.toml would be useful here, since otherwise you may end up with “0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 0.10, 0.11, …, 1.0”.