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