On Wed, Dec 19, 2012 at 10:52 AM, Yuri Astrakhan
<yuriastrakhan(a)gmail.com> wrote:
Not exactly correct - pywikipediabot have not solved
it at all, instead they
structured their library to avoid the whole problem and to get individual
properties data separately with generators,
Hmm.
There are 30 frameworks listed on the docs site. If
even the top one ignores
this fundamental issue, how many do you think implement it correctly?
Mine does, although it's probably not listed there. I haven't tried
anyone else's.
I just spent considerable time trying to implement a
generic query-agnostic
continue, and was forced to do it in a very hacky way (like detecting
/g..continue/ parameter, cutting it out, removing some prop=.. and ignoring
warnings server sends due to me sending unneeded parameters. Not a good
generic solution)
A way to reduce the hackiness is to use action=paraminfo to look up
the prefixes for all the prop modules (this takes two queries, and
could be cached). Then it's a simple matter to look up the prefix for
each node under query-continue and see whether the attribute is
$prefix or 'g'+$prefix. The warnings can also be addressed by using
the results from action=paraminfo to filter out the params for modules
as they're removed from prop=.
Although it would be nice to have a more straightforward method.
Without throwing out the baby with the bathwater.
But anyway, I agree, lets not remove abilities - lets
introduce a version parameter, and do a simple approach by default. Those
who want use the old legacy, will add &legacycontirue="" parameter.
But "legacycontinue" isn't a version parameter, it's a feature
selection parameter.