Re: Entering freeze for release of libxml2-2.9.9

Nikolai Weibull via xml <[email protected]> Sat, 24 Nov 2018 15:53:09 +0100
Newsgroups gmane.comp.gnome.lib.xml.general
Message-ID <[email protected]>
Hi!

Daniel Veillard, 2018-11-24 14:01:

> On Sat, Nov 24, 2018 at 12:14:06AM +0100, Nikolai Weibull wrote:

>> Daniel Veillard via xml, 2018-11-22 18:32:
>> 
>> >   I have just tagged the Release Candidate 1 in git and 
>> >   pushed a
>> > signed
>> > tarball and signed rpms to the usual place:
>> 
>> Could we please get merge request 10 into
>> 
>> https://gitlab.gnome.org/GNOME/libxml2/merge_requests/10

>  Okay that looks different from the other patch for interleaves 
>  I applied
> earlier. Could you provide a little bit more description, seems 
> it avoid
> creating a choice child of a choice element among other things, 
> correct ?

Yes, it is.  I did provide some documentation in the commits, see 
below.  They’re available in gitlab as well, but it’s not obvious 
how to show them (you press the … after the commit subject line). 
If you want more, I’ll try to expand on them.

0d0ad65b: Remove redefined starts and defines inside include 
elements

When including a grammar from another grammar, we need to make 
sure that any
redefines of starts and includes that that grammar does inside any 
of its
include elements are also removed.

4f5d2b9b: Allow choice within choice in nameClass in RELAX NG


The pattern nameClass allows for nested choice elements, for 
example

  <name>
    <choice>
      <choice>
        <name>a</name>
        <name>b</name>
      </choice>
      <name>c</name>
    </choice>
  </name>

which is semantically equivalent to

  <name>
    <choice>
      <name>a</name>
      <name>b</name>
      <name>c</name>
    </choice>
  </name>

The old code didn’t handle this correctly, as it never expected a 
choice inside
another choice.  This patch fixes this by flattening any nested 
choices.

This pattern of nested choice elements comes up in RELAX NG 
simplification,
where all choice elements are rewritten in this nested manner, see 
section 4.12
of the RELAX NG specification.

3cf2a68b: Look inside divs for starts and defines inside include

RELAX NG allows for div elements inside of include elements.  We 
need to look
inside those div elements for start and define elements that may 
be redefining
start and define elements in the included grammar.

>> this release?  It fixes various issues with the RELAX NG code 
>> and it even
>> has tests!

>  I have never been fond of the github interface and it seems 
>  gitlab is kind of mimicking it, In general I will fetch the raw 
>  patch, make sure this applies to master and make sure all 
>  commits are linear (c.f. from a gitk viewpoint).  Nick there 
>  seems to be 7 merge requests, maybe we need to go though those 
>  before I push an RC2,

Neither have I, I just saw that there were a bunch of merge 
requests already, so I figured that that was the way to go.  I’ll 
post to the mailing list in the future.  If you’d like for me to 
send the above patches to the mailing list instead, I’ll gladly do 
that as well.

>    thanks for raising this Nikolai, and for your contributions 
>    :-)

No problem, it has been fun.  I’ve got a couple of more minor 
patches, but I don’t know if I have time to get them out (or if I 
want to bother you with more patches right before release).
_______________________________________________
xml mailing list, project page  http://xmlsoft.org/
[email protected]
https://mail.gnome.org/mailman/listinfo/xml