1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE> [Mageia-webteam] Proposal for maintainers database API
</TITLE>
<LINK REL="Index" HREF="index.html" >
<LINK REL="made" HREF="mailto:mageia-webteam%40mageia.org?Subject=Re%3A%20%5BMageia-webteam%5D%20Proposal%20for%20maintainers%20database%20API&In-Reply-To=%3CAANLkTik7CWDvcRtXo1k%2BJwvULB5Mmbor8J-O58d3AMM8%40mail.gmail.com%3E">
<META NAME="robots" CONTENT="index,nofollow">
<META http-equiv="Content-Type" content="text/html; charset=us-ascii">
<LINK REL="Previous" HREF="000432.html">
<LINK REL="Next" HREF="000434.html">
</HEAD>
<BODY BGCOLOR="#ffffff">
<H1>[Mageia-webteam] Proposal for maintainers database API</H1>
<B>Kosmas Chatzimichalis</B>
<A HREF="mailto:mageia-webteam%40mageia.org?Subject=Re%3A%20%5BMageia-webteam%5D%20Proposal%20for%20maintainers%20database%20API&In-Reply-To=%3CAANLkTik7CWDvcRtXo1k%2BJwvULB5Mmbor8J-O58d3AMM8%40mail.gmail.com%3E"
TITLE="[Mageia-webteam] Proposal for maintainers database API">Kosmas at mach7x.com
</A><BR>
<I>Tue Mar 8 11:04:08 CET 2011</I>
<P><UL>
<LI>Previous message: <A HREF="000432.html">[Mageia-webteam] Proposal for maintainers database API
</A></li>
<LI>Next message: <A HREF="000434.html">[Mageia-webteam] Proposal for maintainers database API
</A></li>
<LI> <B>Messages sorted by:</B>
<a href="date.html#433">[ date ]</a>
<a href="thread.html#433">[ thread ]</a>
<a href="subject.html#433">[ subject ]</a>
<a href="author.html#433">[ author ]</a>
</LI>
</UL>
<HR>
<!--beginarticle-->
<PRE>On 8 March 2011 08:48, Michael Scherer <<A HREF="https://www.mageia.org/mailman/listinfo/mageia-webteam">misc at zarb.org</A>> wrote:
><i> Le mardi 08 mars 2011 à 03:53 +0100, nicolas vigier a écrit :
</I>><i> > Here is a proposal for an API that can be used on the maintainers
</I>><i> > database, with the list of URLs and what they should do :
</I>><i> >
</I>><i> > ***
</I>><i> > An html page with the list of all packages, and their maintainer :
</I>><i> > <A HREF="http://maintdb.mageia.org/packages.html">http://maintdb.mageia.org/packages.html</A>
</I>><i> > As we have many packages, the page will be long, so maybe we want to
</I>><i> > split the list by first letter of package name :
</I>><i> > <A HREF="http://maintdb.mageia.org/packages_a.html">http://maintdb.mageia.org/packages_a.html</A>
</I>><i> > <A HREF="http://maintdb.mageia.org/packages_b.html">http://maintdb.mageia.org/packages_b.html</A>
</I>><i> > <A HREF="http://maintdb.mageia.org/packages_c.html">http://maintdb.mageia.org/packages_c.html</A>
</I>><i>
</I>><i> Hi,
</I>><i>
</I>><i> Thee is other paging system in rails and similar framework, no need to
</I>><i> specify this ( and I also think this is not part of a API ).
</I>><i>
</I>
Indeed that is the case, so we can have a paging system, with no need for
different pages.
If on the other hand we want to split them by the first letter, again that
is possible.
So we could try with the simple paging system and if people find it more
useful to have them split by name, we can do that later on.
><i>
</I>><i> > The list of all packages and their maintainers, in text format :
</I>><i> > <A HREF="http://maintdb.mageia.org/packages.txt">http://maintdb.mageia.org/packages.txt</A>
</I>><i> > With the output like this :
</I>><i> > package1:maintainerlogin1
</I>><i> > package2:maintainerlogin2
</I>><i> > package3:maintainerlogin3
</I>><i> > ...
</I>><i> >
</I>><i> > ***
</I>><i> > An html page to show the maintainer of one package (with
</I>><i> > [packagename] replaced with the name of a package) :
</I>><i> > <A HREF="http://maintdb.mageia.org/packages/[packagename">http://maintdb.mageia.org/packages/[packagename</A>].html
</I>><i> > The same in text format :
</I>><i> > <A HREF="http://maintdb.mageia.org/packages/[packagename">http://maintdb.mageia.org/packages/[packagename</A>].txt
</I>><i> > With output like this (only one line):
</I>><i> > packagename:maintainerlogin
</I>><i> > If the package is unmaintained, it appears like this :
</I>><i> > packagename:nobody
</I>><i> > If the package does not exist, an empty file is returned.
</I>><i>
</I>><i> I would rather say :
</I>><i> packagename:
</I>><i>
</I>><i> Using a name with a special meaning is just a special case to be placed
</I>><i> everywhere.
</I>><i>
</I>><i>
</I> It currently uses the package id for displaying information, but I could
have a look to see if it's possible to have it using the package name, which
I have the feeling that it is.
At the moment you can find information about a package by using the All link
at the top.
There will also be a search box that gives the same information.
For finding information about a specific package the format used is:
url/spackage/id
(spackage was named like that to dinstinguish it from the compiled packages
- cpackage. If there is no need for compiled packages information as I've
seen somewhere that can be removed)
><i> > ***
</I>><i> > The list of maintainers (all maintainers who maintain at least one
</I>><i> > package) :
</I>><i> > <A HREF="http://maintdb.mageia.org/people.html">http://maintdb.mageia.org/people.html</A>
</I>><i> >
</I>><i> > ***
</I>><i> > The list of packages maintained by someone (with [loginname] replaced by
</I>><i> > a login) :
</I>><i> > <A HREF="http://maintdb.mageia.org/people/[loginname">http://maintdb.mageia.org/people/[loginname</A>].html
</I>><i> > And the same in text format :
</I>><i> > <A HREF="http://maintdb.mageia.org/people/[loginname">http://maintdb.mageia.org/people/[loginname</A>].txt
</I>><i> > With the same format for output :
</I>><i> > package1:loginname
</I>><i> > package2:loginname
</I>><i> > package3:loginname
</I>><i> > ...
</I>><i> > If the login does not exist, an empty file is returned.
</I>><i>
</I>><i> A REST API would give a 404, that's also something everybdy doing HTTP
</I>><i> should grasp and understand.
</I>><i>
</I>><i>
</I> That's what is used at the moment (REST-404).
For the list of maintainers the url is:
<A HREF="http://maintdb.mageia.orgl/maintainers">http://maintdb.mageia.orgl/maintainers</A>
The extra information in there about first name, surname can be removed.
><i> > ***
</I>><i> > The list of unmaintained packages :
</I>><i> > <A HREF="http://maintdb.mageia.org/people/nobody.html">http://maintdb.mageia.org/people/nobody.html</A>
</I>><i> > And the same in text format :
</I>><i> > <A HREF="http://maintdb.mageia.org/people/nobody.txt">http://maintdb.mageia.org/people/nobody.txt</A>
</I>><i> > With this output :
</I>><i> > package1:nobody
</I>><i> > package2:nobody
</I>><i> > package3:nobody
</I>><i> > ...
</I>><i>
</I>><i> I would use a different url for unmaintained packages rather than
</I>><i> nobody. Adding special case is not very clean, as said before.
</I>><i>
</I>
I agree with Michael, and say that probably a url like:
<A HREF="http://maintdb.mageia.org/umaintained">http://maintdb.mageia.org/umaintained</A>
would give the list of all umaintained packages
><i>
</I>><i> > ***
</I>><i> > The URL to add a package, used by the buildsystem when a package is
</I>><i> > uploaded on the repository :
</I>><i> > <A HREF="https://maintdb.mageia.org/admin/setnewpackage">https://maintdb.mageia.org/admin/setnewpackage</A>
</I>><i> > Protected with basic http authentication (with a login/password that was
</I>><i> > set in maintdb or apache configuration).
</I>><i> > Accessed with a POST request and the following two arguments :
</I>><i> > package: [packagename]
</I>><i> > maintainer: [maintainername]
</I>><i> > If the package already exists in the database, it is not updated.
</I>><i> >
</I>><i> > ***
</I>><i> > The same as the previous URL, but the package maintainer is updated when
</I>><i> > the package already exists in the database :
</I>><i> > <A HREF="https://maintdb.mageia.org/admin/setpackage">https://maintdb.mageia.org/admin/setpackage</A>
</I>><i>
</I>><i> IMHO, it would be easier to have just 1 url :
</I>><i>
</I>><i> /upload/$package/$login/ ( and either protect this at http level, or
</I>><i> using a key somewhere in the url )
</I>><i>
</I>><i>
</I> Agree. Either way is possible so if there a preferred way we can try that
first.
><i>
</I>><i> > If we compare with the maintainers db website used at mandriva, their
</I>><i> > version also has :
</I>><i> > - media name for each package, with pages to list packages from only
</I>><i> > one media
</I>><i> > - a search box to search for a package
</I>><i> > - links to bugzilla for each package
</I>><i> > But I don't think we should store the media name in maintdb.
</I>><i>
</I>><i> That's indeed inflexible, if we want to have a package in more than one
</I>><i> media.
</I>><i>
</I>
That shouldn't be any problem.
We would only need to change the relationship between media and packages,
which is fine.
Again, if we don't want it to look like the mandriva, then we are flexible
to decide how it would work and what we can display.
We had to base it on something to start, but that could change easily.
><i>
</I>><i> > maintdb should mainly be used in the following cases :
</I>><i> > - by sophie, mageia-app-db and other package databases which want to
</I>><i> show
</I>><i> > maintainers of packages. They download the full list of packages and
</I>><i> > maintainers every day (or hours) from the text file, to synchronize
</I>><i> > with their database.
</I>><i>
</I>><i> So then we should ask them what they would prefer. I knw for usre that
</I>><i> reusing the mandriva format, or the fedora format will ease the work on
</I>><i> sophie side.
</I>><i>
</I>><i>
</I> Not sure which format was used before, but again I don't see any problem
using whatever makes it easier for people that use it.
Let me know what you would like it to do and then I'll try and do it.
Kosmas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: </pipermail/mageia-webteam/attachments/20110308/bec52acb/attachment-0001.html>
</PRE>
<!--endarticle-->
<HR>
<P><UL>
<!--threads-->
<LI>Previous message: <A HREF="000432.html">[Mageia-webteam] Proposal for maintainers database API
</A></li>
<LI>Next message: <A HREF="000434.html">[Mageia-webteam] Proposal for maintainers database API
</A></li>
<LI> <B>Messages sorted by:</B>
<a href="date.html#433">[ date ]</a>
<a href="thread.html#433">[ thread ]</a>
<a href="subject.html#433">[ subject ]</a>
<a href="author.html#433">[ author ]</a>
</LI>
</UL>
<hr>
<a href="https://www.mageia.org/mailman/listinfo/mageia-webteam">More information about the Mageia-webteam
mailing list</a><br>
</body></html>
|