Roan Kattouw | 1 Jun 2008 22:06
Picon
Favicon

Re: Scream for mercy: breaking changes

Max Semenik schreef:
> Sorry, this is going to be a blatant rant...
>
> Request: http://www.wikia.com/api.php?action=query&list=categorymembers&cmtitle=Category:Wikia_categories&cmcategory=Wikia_categories&format=xml&cmlimit=500
> Result:
> <?xml version="1.0" encoding="utf-8"?>
> <api>
>      <error code="cmtitleandcategory" info="The cmcategory and cmtitle parameters can&#039;t be used
together" />
> </api>
>   
I hadn't thought about the fact that people might wanna make their code 
work for both pre-change and post-change APIs this way, which is kinda 
stupid. I'll remember to do this better in the future (in fact, 1.13 
will have a change towards that goal). It should also be noted that this 
is kind of a transition phase: the code has only been like this for a 
few weeks, after that cmcategory is ignored completely.
> The moral: please think of long-term consequences of your changes, if
> you change the way a piece of code works, at least (pleeeease!) allow
> people to fall back without much PITA.
>   
action=paraminfo (which IIRC was introduced before cmtitle) does a lot 
of that. Also, breaking changes are announced on the mediawiki-api 
mailing list, which you should really be subscribed to if you're 
developing an application that uses the API.
> And can this mistake be fixed at least in service releases for 1.12?
>   
Why would it? Just upgrade to 1.13 if you're gonna upgrade anyway. 
Service releases only ever address security problems.

(Continue reading)

Marco Schuster | 2 Jun 2008 22:40

Re: Scream for mercy: breaking changes

Roan Kattouw schrieb:
> action=paraminfo (which IIRC was introduced before cmtitle) does a lot 
> of that. Also, breaking changes are announced on the mediawiki-api 
> mailing list, which you should really be subscribed to if you're 
> developing an application that uses the API.
What's the point in having to write a huge compatibility database how 
the API behaves on each different wiki?
It's fine on Wikimedia wikis, where every wiki behaves same and you can 
adopt to it. But other sites use older parts of the API and with this 
they also change formats.
And now imagine the huge overhead when you want to have a bot supporting 
not only Wikimedia wikis, but also Wikia stuff...or even more sites: The 
bigger the number, the bigger and more complex has to be your API 
version switch stuff.

Marco
Roan Kattouw | 2 Jun 2008 22:45
Picon
Favicon

Re: Scream for mercy: breaking changes

Marco Schuster schreef:
> What's the point in having to write a huge compatibility database how
> the API behaves on each different wiki?
> It's fine on Wikimedia wikis, where every wiki behaves same and you can 
> adopt to it. But other sites use older parts of the API and with this 
> they also change formats.
> And now imagine the huge overhead when you want to have a bot supporting 
> not only Wikimedia wikis, but also Wikia stuff...or even more sites: The 
> bigger the number, the bigger and more complex has to be your API 
> version switch stuff.
I know breaking changes suck, and I'm always trying to avoid them, but 
sometimes the benefit of a breaking change outweighs the annoyance of 
updating client applications.

I'm not gonna discuss the cmcategory/cmtitle change or other breaking 
changes of the past here: what's done is done. I just want to reassure 
you that I don't make breaking changes on a whim, but consider them 
carefully and avoid them wherever possible.

Roan Kattouw (Catrope)
Simetrical | 2 Jun 2008 00:30
Picon

Re: Scream for mercy: breaking changes

On Sun, Jun 1, 2008 at 4:06 PM, Roan Kattouw <roan.kattouw@...> wrote:
> Why would it? Just upgrade to 1.13 if you're gonna upgrade anyway.
> Service releases only ever address security problems.

They sometimes address more than that.
Gerard Meijssen | 3 Jun 2008 14:59
Picon

Re: Scream for mercy: breaking changes

Hoi,
With the Betawiki ability to backport messages, a service release also
includes many more localisations :) A new export of the messages from
Betawiki has occurred recently, it just needs some packaging and, we have
our second language pack :)
Thanks,
     GerardM

On Mon, Jun 2, 2008 at 12:30 AM, Simetrical
<Simetrical+wikilist@...<Simetrical%2Bwikilist@...>>
wrote:

> On Sun, Jun 1, 2008 at 4:06 PM, Roan Kattouw <roan.kattouw@...> wrote:
> > Why would it? Just upgrade to 1.13 if you're gonna upgrade anyway.
> > Service releases only ever address security problems.
>
> They sometimes address more than that.
>
> _______________________________________________
> Wikitech-l mailing list
> Wikitech-l@...
> https://lists.wikimedia.org/mailman/listinfo/wikitech-l
>

Gmane