RPM support update
Jonathan Gibbons
Jonathan.Gibbons at Sun.COM
Thu Oct 29 09:51:40 PDT 2009
Dalibor Topic wrote:
> jon.vanalten at redhat.com wrote:
>
>> ----- "Dalibor Topic" <Dalibor.Topic at Sun.COM> wrote:
>> I agree with the one-liner requires. I wonder if the same theory can be applied to the name/version lines too? ie:
>>
>> jigsaw.moduleinfo.id.name = org.openjdk.jigsaw.test.hello @ 1.0
>>
>
> Sounds good - I'd change that to
>
> jigsaw.moduleinfo.id = org.openjdk.jigsaw.test.hello @ 1.0
>
> as that's a string representation of the id (more then a name ;).
>
>
>> A couple of other questions, then. I wonder what the "#" in j.m.r.# is needed for.
>> I can see if the version info was split off to a separate line, the number would
>> be needed to match the requires.name with requires.version. But with it all on one
>> line, is this necessary?
>>
>
> There can be multiple (or no) required dependences for a module, so we need a
> way to represent a set of them. Same holds for provides and permits.
>
> One way to do it is to introduce a new 'assignment' for
> each member of such set, as done in the previous example.
>
> On the other hand, we can (of course! ;) represent a set using a single line,
> instead - we just need to introduce a delimiter character, for example ",".
> So the prior example changes to
>
> jigsaw.moduleinfo.requires = jdk.base @ 7-ea , something.else @ 0.4
>
> Would that work better for your needs?
>
Dalibor,
I'd suggest dropping the space around "@" and using whitespace as the
delimiter, as in
jdk.base at 7-ea something.else at 0.4
Note that , is a legal character in a version, so it'll be problematic
using it as a separator
-- Jon
>
>
>> Finally, is there the possibility of something like this:
>>
>> j.m.r >= jdk.base @ 7-ea
>>
>> (ie requiring some version greater than or equal to the version specified).
>>
>
> Yes. See http://cr.openjdk.java.net/~mr/jigsaw/api/org/openjdk/jigsaw/JigsawVersionQuery.html
> and the code at http://hg.openjdk.java.net/jigsaw/jigsaw/jdk/file/dc6e9e87b14a/src/share/classes/org/openjdk/jigsaw/JigsawVersionQuery.java
>
> The syntax would be
>
> jigsaw.moduleinfo.requires = some.module @ >= 0.1 , something.else @ < 1.0.0.0.0.1-b17
>
> cheers,
> dalibor topic
>
More information about the jigsaw-dev
mailing list