Gentoo Archives: gentoo-dev

From: "Göktürk Yüksek" <gokturk@××××××××××.edu>
To: "Michał Górny" <mgorny@g.o>
Cc: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [PATCH] metadata.dtd: Remove obsolete <natural-name/> element per GLEP 68
Date: Sat, 30 Apr 2016 06:36:32
Message-Id: 57245262.7090902@binghamton.edu
In Reply to: Re: [gentoo-dev] [PATCH] metadata.dtd: Remove obsolete element per GLEP 68 by "Michał Górny"
1 -----BEGIN PGP SIGNED MESSAGE-----
2 Hash: SHA512
3
4 Michał Górny:
5 > On Thu, 28 Apr 2016 19:41:06 -0400 Göktürk Yüksek
6 > <gokturk@××××××××××.edu> wrote:
7 >
8 >> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512
9 >>
10 >> Brian Dolbec:
11 >>> On Thu, 28 Apr 2016 15:39:05 -0400 Göktürk Yüksek
12 >>> <gokturk@××××××××××.edu> wrote:
13 >>>
14 >>>> --- metadata.dtd | 5 +---- 1 file changed, 1 insertion(+), 4
15 >>>> deletions(-)
16 >>>>
17 >>>> diff --git a/metadata.dtd b/metadata.dtd index
18 >>>> 7626a57..b608852 100644 --- a/metadata.dtd +++ b/metadata.dtd
19 >>>> @@ -3,7 +3,7 @@ <!ATTLIST catmetadata pkgname CDATA "">
20 >>>>
21 >>>> <!-- Metadata for a package --> -<!ELEMENT pkgmetadata (
22 >>>> (maintainer|natural-name|longdescription|slots|use|upstream)*
23 >>>> )> +<!ELEMENT pkgmetadata (
24 >>>> (maintainer|longdescription|slots|use|upstream)* )> <!ATTLIST
25 >>>> pkgmetadata pkgname CDATA ""> <!-- One tag for each
26 >>>> maintainer of a package, multiple allowed--> @@ -13,9 +13,6
27 >>>> @@ explicit type) for Gentoo maintainers is prohibited. -->
28 >>>> <!ATTLIST maintainer type (person|project|unknown)
29 >>>> "unknown">
30 >>>>
31 >>>> - <!-- Natural name for package, example: LibreOffice (for
32 >>>> app-office/libreoffice) --> - <!ELEMENT natural-name
33 >>>> (#PCDATA)
34 >>>>> - <!-- A long description of the package in freetext-->
35 >>>> <!ELEMENT longdescription (#PCDATA|pkg|cat)* >
36 >>>
37 >>> Isn't this almost obsolete? it's now xmlschema... And I hope
38 >>> to have the new repoman with it out this weekend :)
39 >>
40 >> Does GLEP 68 explicitly declare metadata.dtd obsolete? I see that
41 >> the example metadata.xml on the GLEP is missing DOCTYPE, are we
42 >> getting rid of those too?
43 >
44 > No, and I don't know.
45 >
46 > metadata.dtd is still required by many tools, and as such it makes
47 > sense to keep it. However, we may want to put some warning that
48 > it's not very strict, and allows major structural violations due
49 > to technical limitations.
50 >
51 After a discussion with ulm on IRC, we agreed that the following makes
52 sense: "the format of the metadata is defined in GLEP 68. the syntax
53 is defined in metadata.dtd. The xml-schema can be used for stricter
54 validation checks." If you have no objections, I will update devmanual
55 based on this description.
56
57 > As for DOCTYPE, there was no formal decision on that. It's not
58 > technically required, so the GLEP doesn't enforce it. However, I
59 > don't expect it being gone anytime soon. One of the reasons behind
60 > it is that repoman enforces it as part of metadata.xml validation.
61 > If it is to be gone, stable repoman needs to accept it missing at
62 > least for some time.
63 >
64 > There was a proposal to link new/additional schemas in
65 > metadata.xml files. However, I personally don't think we should go
66 > this way. DOCTYPE already proved troublesome (when we switched to
67 > https), and maintaining any kind of schema reference in XML files
68 > doesn't give us any real benefit (we don't enforce any hard
69 > defaults besides languages there, and I don't think many XML
70 > parsers would respect that anyway).
71 >
72 >> I understand that the DTD is more like a super-set, so anything
73 >> that complies with GLEP 68 will comply with the DTD as well.
74 >> However, there is a caveat here: for example the GLEP dismisses
75 >> the list of possible values for <remote-id/> by saying "The list
76 >> of available trackers and their specific identifiers are outside
77 >> scope of this specification." but does not mention where these
78 >> values shall be kept either. The moment we add a new remote-id,
79 >> the xmlschema diverges from the DTD and stops being a subset.
80 >
81 > Well, there is good reason for not hardcoding the list in the
82 > GLEP, and this obviously is to avoid updating the GLEP for every
83 > single change. And yes, as you can see, I didn't point out a
84 > specific location where remote-ids are to be defined to avoid
85 > problems like the one noted below.
86 >
87 > As I see it, we can defer it to some project / wiki page, or
88 > simply keep it in either of the schemas. Either way, we should keep
89 > both schemas reasonably up-to-date.
90 >
91 >> Besides, the PMS says the format of metadata.xml is described in
92 >> DTD. Even if we move to something else, doesn't metadata.dtd need
93 >> to be kept around until the PMS is amended?
94 >
95 > The key point PMS is making is 'outside the scope'. The specific
96 > location is just a minor problem, and it should be updated. I'll
97 > take a look at it.
98 >
99 > Oh, and +1 for the patch. If nobody complains and nobody beats me
100 > up to it, I'll commit it this weekend.
101 >
102
103 Please hold off the merge. I have found a few more things that require
104 fixing. I'll send a new patch series for review.
105
106 -----BEGIN PGP SIGNATURE-----
107
108 iQEcBAEBCgAGBQJXJFJcAAoJEIT4AuXAiM4zcTMH+wcmYptb9MPo+7oSRx9ViS22
109 RVwUKiwdb55JmMHLXWu7ATQS+X1Jb5LqlNxIdpUz77zfP9+WFJJagJI9F1oi7a4s
110 e9wi7a1J3H812Xo2JcRZGnp95OX2O/c7dyXCcG5VMwB8kqW8JMykb+QmI0opm9s7
111 ePX0e1lQ3mhaMy8thTRBZK9a1cA+B86PWBtQRtQtb3leotD06DDnO0sZchLYsDYZ
112 A0qTDOZ+V5t9qJ0EtNJ8jb9T/7dz971noZUwdUDgkveU1Q+3o/IWBzZD765WaPYs
113 dSlWhn8linRLk3UhHe95+vCL0NAuLLdEEPIiNNrLRG3orz/gfbz7kl0E8+JNW58=
114 =DLlT
115 -----END PGP SIGNATURE-----

Replies