Re: [xml] Entering freeze for release of libxml2-2.9.9



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).

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]