Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Domas Mituzas
Ohi,

> The time it takes to execute the code that glues together the regexps
> will be insignificant compared to actually executing the regexps for any
> article larger than a few hundred bytes.  

Well, you did an edge case - a long line. Actually, try replacing spaces with 
newlines, and you will get 25x cost difference ;-) 

> But the top speed of the parser (in bytes/seconds) will be largely unaffected.

Damn!

Domas
___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Nikola Smolenski
On 05/03/2011 10:10 PM, Ryan Lane wrote:
> should re-license it in a more compatible license. LGPL is good, BSD
> is likely better.

What advantages does BSD offer over LGPL?

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Nikola Smolenski
On 05/03/2011 07:45 PM, Ryan Lane wrote:
> It's slightly more difficult, but it definitely isn't any easier. The
> point here is that only having one implementation of the parser, which
> can change at any time, which also defines the spec (and I use the
> word spec here really loosely), is something that inhibits the ability
> to share knowledge.

I was thinking whether it would be possible to have two-tier parsing? 
Define what is valid wikitext, express it in BNF, write a parser in C 
and use it as a PHP extension. If the parser encounters invalid 
wikitext, enter the quirks mode AKA the current PHP parser.

I assume that >90% of wikis' contents would be valid wikitext, and so 
the speedup should be significant. And if someone needs to reuse the 
content outside of Wikipedia, they can use >90% of the content very 
easily, and the rest not harder than right now.

The only disadvantage that I see is that every addition to wikitext 
would have to be implemented in both parsers.

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] Zend performance (Was: WYSIWYG and parser plans)

2011-05-03 Thread Domas Mituzas
Hi!

> The discussion was concerning parser performance,

the discussion was concerning overall parser performance, not just edge cases. 

> so a profile of only parser execution would have been most relevant.  

Indeed, try parsing decent articles with all their template trees.

> In my profiling data, parser execution dominates, and as you can see, its 
> mostly regexp evaluation.

Indeed, because you don't have anything what would invoke callbacks or 
branching in the code. 

>  (With "php parser", I was referring to "zendparse" and
> "lex_scan", which doesn't seem to use libpcre.  I.e., almost all calls
> to libpcre is made from the wikitext parser.)

I usually don't know what "php parser" is, opcode caches have been around for 
past decade.

Domas
___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Tim Starling
On 04/05/11 15:52, Andreas Jonsson wrote:
> The time it takes to execute the code that glues together the regexps
> will be insignificant compared to actually executing the regexps for any
> article larger than a few hundred bytes.  This is at least the case for
> the articles are the the easiest for the core parser, which are articles
> that contains no markup.  The more markup the slower it will run.  It is
> possible that this slowdown will be lessened if compiled with HipHop.
> But the top speed of the parser (in bytes/seconds) will be largely
> unaffected.

PHP execution dominates for real test cases, and HipHop provides a
massive speedup. See the previous HipHop thread.

http://lists.wikimedia.org/pipermail/wikitech-l/2011-April/052679.html

Unfortunately, users refuse to write articles consisting only of
hundreds of kilobytes of plain text, they keep adding references and
links and things. So we don't really care about the parser's "top speed".

-- Tim Starling


___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Andreas Jonsson
2011-05-03 13:25, Daniel Friesen skrev:
> On 11-05-03 03:40 AM, Andreas Jonsson wrote:
>> 2011-05-03 02:38, Chad skrev:
>> [...]
>>> I don't see any problem with keeping the parser in PHP, and as you point out
>>> with HipHop support on the not-too-distant horizon the complaints about
>>> performance with Zend will largely evaporate.
>> But most of the parser's work consists of running regexp pattern
>> matching over the article text, doesn't it?  Regexp pattern matching are
>> implemented by native functions.  Does the Zend engine have a slow
>> regexp implementation?  I would have guessed that the main reason that
>> the parser is slow is the algorithm, not its implementation.
>>
>> Best Regards,
>>
>> Andreas Jonsson
> regexps might be fast, but when you have to run hundreds of them all
> over the place and do stuff in-language then the language becomes the
> bottleneck.
> 

The time it takes to execute the code that glues together the regexps
will be insignificant compared to actually executing the regexps for any
article larger than a few hundred bytes.  This is at least the case for
the articles are the the easiest for the core parser, which are articles
that contains no markup.  The more markup the slower it will run.  It is
possible that this slowdown will be lessened if compiled with HipHop.
But the top speed of the parser (in bytes/seconds) will be largely
unaffected.

/Andreas

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Andrew Dunbar
On 4 May 2011 15:16, Tim Starling  wrote:
> On 04/05/11 14:07, Daniel Friesen wrote:
>> I'm fairly certain myself that his intention was "With HipHop support
>> since the C that HipHop compiles PHP to can be extracted and re-used we
>> can turn that compiled C into a C library that can be used anywhere by
>> abstracting the database calls and what not out of the php version of
>> the parser. And because HipHop has better performance we will no longer
>> have to worry about parser abstractions slowing down the parser and as a
>> result increasing the load on large websites like Wikipedia where they
>> are noticeable. So that won't be in the way of adding those abstractions
>> anymore."
>
> Yes that's right, more or less. HipHop generates C++ rather than C
> though.
>
> Basically you would split the parser into several objects:
>
> * A parser in the traditional sense.
> * An output callback object, which would handle generation of HTML or
> PDF or syntax trees or whatever.
> * A wiki environment interface object, which would handle link
> existence checks, template fetching, etc.
>
> Then you would use HipHop to compile:
>
> * The new parser class.
> * A few useful output classes, such as HTML.
> * A stub environment class which has no dependencies on the rest of
> MediaWiki.
>
> Then to top it off, you would add:
>
> * A HipHop extension which provides output and environment classes
> which pass their calls through to C-style function pointers.
> * A stable C ABI interface to the C++ library.
> * Interfaces between various high level languages and the new C
> library, such as Python, Ruby and Zend PHP.
>
> Doing this would leverage the MediaWiki development community and the
> existing PHP codebase to provide a well-maintained, reusable reference
> parser for MediaWiki wikitext.

+1

This is the single most exciting news on the MediaWiki front since I started
contributing to Wiktionary nine years ago (-:

Andrew Dunbar (hippietrail)

> -- Tim Starling
>
>
> ___
> Wikitech-l mailing list
> Wikitech-l@lists.wikimedia.org
> https://lists.wikimedia.org/mailman/listinfo/wikitech-l
>

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] Zend performance (Was: WYSIWYG and parser plans)

2011-05-03 Thread Andreas Jonsson
2011-05-03 22:50, Domas Mituzas skrev:
> Hi!
> 
>> I'm not sure what you are profiling,
> 
> Wikipedia :) 
> 
>> but when repeatingly requesting a
>> preview of an article containing 20 bytes of data consisting of the
>> pattern "a a a a a a " I got the below results.  (The php parser doesn't
>> seem to depend on perl regexps.)
> 
> I'm sure nothing profiles better than a synthetic edge case. What do you mean 
> by it not depending on perl regexps? It is top symbol in your profile. 
> 

The discussion was concerning parser performance, so a profile of only
parser execution would have been most relevant.  In my profiling data,
parser execution dominates, and as you can see, its mostly regexp
evaluation.  (With "php parser", I was referring to "zendparse" and
"lex_scan", which doesn't seem to use libpcre.  I.e., almost all calls
to libpcre is made from the wikitext parser.)

/Andreas

>> CPU: CPU with timer interrupt, speed 0 MHz (estimated)
>> Profiling through timer interrupt
>> samples  %app name symbol name
>> 994  23.4933  libpcre.so.3.12.1/lib/libpcre.so.3.12.1
>> 545  12.8811  libphp5.so   zendparse
>> 369   8.7213  libphp5.so   lex_scan
>> 256   6.0506  libc-2.11.2.so   memcpy
>> 137   3.2380  libphp5.so   zend_hash_find
>> 135   3.1907  libphp5.so   _zend_mm_alloc_canary_int
>> 105   2.4817  libphp5.so   __i686.get_pc_thunk.bx
>> 902.1272  libphp5.so   _zend_mm_free_canary_int
>> 671.5835  libphp5.so   zif_strtr
>> 591.3945  libphp5.so   zend_mm_add_to_free_list
>> 481.1345  libphp5.so   zend_mm_remove_from_free_list
> 
> Domas
> 
> 
> ___
> Wikitech-l mailing list
> Wikitech-l@lists.wikimedia.org
> https://lists.wikimedia.org/mailman/listinfo/wikitech-l
> 


___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Tim Starling
On 04/05/11 14:07, Daniel Friesen wrote:
> I'm fairly certain myself that his intention was "With HipHop support
> since the C that HipHop compiles PHP to can be extracted and re-used we
> can turn that compiled C into a C library that can be used anywhere by
> abstracting the database calls and what not out of the php version of
> the parser. And because HipHop has better performance we will no longer
> have to worry about parser abstractions slowing down the parser and as a
> result increasing the load on large websites like Wikipedia where they
> are noticeable. So that won't be in the way of adding those abstractions
> anymore."

Yes that's right, more or less. HipHop generates C++ rather than C
though.

Basically you would split the parser into several objects:

* A parser in the traditional sense.
* An output callback object, which would handle generation of HTML or
PDF or syntax trees or whatever.
* A wiki environment interface object, which would handle link
existence checks, template fetching, etc.

Then you would use HipHop to compile:

* The new parser class.
* A few useful output classes, such as HTML.
* A stub environment class which has no dependencies on the rest of
MediaWiki.

Then to top it off, you would add:

* A HipHop extension which provides output and environment classes
which pass their calls through to C-style function pointers.
* A stable C ABI interface to the C++ library.
* Interfaces between various high level languages and the new C
library, such as Python, Ruby and Zend PHP.

Doing this would leverage the MediaWiki development community and the
existing PHP codebase to provide a well-maintained, reusable reference
parser for MediaWiki wikitext.

-- Tim Starling


___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Jay Ashworth
- Original Message -
> From: "Tim Starling" 

> I wasn't saying that the current MediaWiki parser is suitable for
> reuse, I was saying that it may be possible to develop the MediaWiki
> parser into something which is reusable.

Aren't there a couple of parsers already which claim 99% compliance or better?

Did anything ever come of trying to assemble a validation suite, All Those
Years Ago?   Or, alternatively, deciding how many pages it's acceptable to
break in the definition of a formal spec?

Cheers,
-- jra

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Jay Ashworth
- Original Message -
> From: "Daniel Friesen" 


> I'm fairly certain myself that his intention was "With HipHop support
> since the C that HipHop compiles PHP to can be extracted and re-used
> we can turn that compiled C into a C library that can be used anywhere by
> abstracting the database calls and what not out of the php version of
> the parser. And because HipHop has better performance we will no
> longer have to worry about parser abstractions slowing down the parser and as
> a result increasing the load on large websites like Wikipedia where they
> are noticeable. So that won't be in the way of adding those
> abstractions anymore."

What I get for not paying any attention to Facebook Engineering.

*That's* what HipHop does?  

> Naturally of course if it's a C library you can build at least an
> extension/plugin for a number of languages. You would of course have
> to install the ext/plug though so it's not a shared-hosting thing.

True.

But that's still a derivative work.

And from experience, I can tell you that you *don't* want to work
with the *output* of a code generator/cross-compiler.

Cheers,
-- jra

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Daniel Friesen
On 11-05-03 08:46 PM, Jay Ashworth wrote:
> - Original Message -
>> From: "MZMcBride" 
>>> Now that we have HipHop support, we have the ability to turn
>>> MediaWiki's core parser into a fast, reusable library. The performance
>>> reasons for limiting the amount of abstraction in the core parser will
>>> disappear. How many wikitext parsers does the world really need?
>> I realize you have a dry wit, but I imagine this joke was lost on
>> nearly everyone. You're not really suggesting that everyone who wants to
>> parse MediaWiki wikitext compile and run HipHop PHP in order to do so.
> I'm fairly certain that his intention was "If the parser is HipHop compliant,
> then the performance improvements that will realize for those who need them
> will obviate the need to rewrite the parser in anything, while those who
> run small enough wikiae not to care, won't need to care."
>
> That does *not*, of course, answer the "if you don't have more than one
> compliant parser, then the code is part of your formal spec, and you
> *will* get bitten eventually" problem.
>
> Of course, Mediawiki's parser has *three* specs: whatever formal one 
> has been ginned up, finally; the code; *and* 8 or 9 GB of MWtext on the
> Wikipedias.
>
> Cheers,
> -- jra
I'm fairly certain myself that his intention was "With HipHop support
since the C that HipHop compiles PHP to can be extracted and re-used we
can turn that compiled C into a C library that can be used anywhere by
abstracting the database calls and what not out of the php version of
the parser. And because HipHop has better performance we will no longer
have to worry about parser abstractions slowing down the parser and as a
result increasing the load on large websites like Wikipedia where they
are noticeable. So that won't be in the way of adding those abstractions
anymore."

Naturally of course if it's a C library you can build at least an
extension/plugin for a number of languages. You would of course have to
install the ext/plug though so it's not a shared-hosting thing.

~Daniel Friesen (Dantman, Nadir-Seen-Fire) [http://daniel.friesen.name]


___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Jay Ashworth
- Original Message -
> From: "Peter Youngmeister" 

> If you guys still think about ideas as things that can be stolen,
> perhaps you should check out the open source movement. Here's a good
> reference:
> 
> http://en.wikipedia.org/wiki/Open_source

Aw, c'mon, Peter.  No strawmen; it's late.

The reasons why many programmers prefer GPL to BSD -- to keep the work 
they've invested long hours in for free from being submerged in someone's
commercial project with no recompense to them -- which GPL forbids and
BSD does not -- is widely understoood.

Myself, I'm firmly convinced after 30 years in this business, that, for
all its faults, the choice of the GPL by Linus changed the face of 
computing (and damned near everything else) just a much as the Apollo
project's investment in microelectronics gave us all PCs to run them
on in the first place.

You're welcome to disagree (though not on this list; there are lots of 
places better suited to license advocacy), but it would probably be good
not to scoff at people for holding that view.  'Specially when you're
using their code.  :-)

Cheers,
-- jra

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Jay Ashworth
- Original Message -
> From: "Neil Harris" 

> I think it cannot be emphasized enough that what's valuable about
> Wikipedia and other similar wikis is the hard-won _content_, not the
> software used to write and display it at any given, which is merely a
> means to that end.
> 
> Fashions in programming languages and data formats come and go, but
> the person-centuries of writing effort already embodied in Mediawiki's
> wikitext format needs to have a much longer lifespan: having a
> well-defined syntax for its current wikitext format will allow the
> content itself to continue to be maintained for the long term, beyond
> the restrictions of its current software or encoding format.

The project of creating a formal specification for Mediawikitext was one
of the primary reasons for the creation of the (largely dormant) wikitext-l
list.  I fell off shortly after it was created myself, so I don't know how
far along that project got -- except that I know that it was decided that
since MWtext was not -- and could not be -- a strict subset of Creole,
that Creole was a Pretty Nice Idea... and we had no time for it.

For my money, that means the Creole folks lost[1], but what do I know.

Cheers,
-- jra
[1] Which is not incompatible with observations then that MWtext has some
really unaccepable boners in itself...

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Jay Ashworth
- Original Message -
> From: "MZMcBride" 

> > Now that we have HipHop support, we have the ability to turn
> > MediaWiki's core parser into a fast, reusable library. The performance
> > reasons for limiting the amount of abstraction in the core parser will
> > disappear. How many wikitext parsers does the world really need?
> 
> I realize you have a dry wit, but I imagine this joke was lost on
> nearly everyone. You're not really suggesting that everyone who wants to
> parse MediaWiki wikitext compile and run HipHop PHP in order to do so.

I'm fairly certain that his intention was "If the parser is HipHop compliant,
then the performance improvements that will realize for those who need them
will obviate the need to rewrite the parser in anything, while those who
run small enough wikiae not to care, won't need to care."

That does *not*, of course, answer the "if you don't have more than one
compliant parser, then the code is part of your formal spec, and you
*will* get bitten eventually" problem.

Of course, Mediawiki's parser has *three* specs: whatever formal one 
has been ginned up, finally; the code; *and* 8 or 9 GB of MWtext on the
Wikipedias.

Cheers,
-- jra

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r87363]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "Krinkle" changed the status of MediaWiki.r87363.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87363#c0
Commit summary:

removing extra ?s

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87359]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "NeilK" changed the status of MediaWiki.r87359.

Old Status: fixme
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87359#c0
Commit summary:

new subheader messages

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87382]: New comment added

2011-05-03 Thread MediaWiki Mail
User "Dantman" posted a comment on MediaWiki.r87382.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87382#c16536
Commit summary:

Add proper $out setting to Skin::getCategories which is present in the other 
similar methods. Replaces r87380.

Comment:

FWIW, I plan to kill the $out args I added and replace them with that `$out = 
$this->getContext()->output`. And go the other direction, depreciating $out 
args in most of the methods that originally had them (with the exception of 
Skin::outputPage which is the entrypoint that may set the context).

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87093]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "NeilK" changed the status of MediaWiki.r87093.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87093#c0
Commit summary:

removing FlickrChecker for now

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87371]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "NeilK" changed the status of MediaWiki.r87371.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87371#c0
Commit summary:

setting links to open in new windows, per r87359

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87366]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "NeilK" changed the status of MediaWiki.r87366.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87366#c0
Commit summary:

better api calls for flickr, fixing attribution license, restoring messages 
lost in merge

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87369]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "Krinkle" changed the status of MediaWiki.r87369.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87369#c0
Commit summary:

more docs for the various methods you can use

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87133]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "^demon" changed the status of MediaWiki.r87133.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87133#c0
Commit summary:

added since tag for people that care about compat

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87317]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "Trevor Parscal" changed the status of MediaWiki.r87317.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87317#c0
Commit summary:

Removed unused messages:

'extremelycomplextest'
'internallinktest'
'linktest'
'magictest'
'mwe-copyright-custom'
'mwe-copyright-macro'
'mwe-loading-upwiz'
'mwe-upwiz-about-format'
'mwe-upwiz-about-this-work'
'mwe-upwiz-add-file-0'
'mwe-upwiz-browse'
'mwe-upwiz-categories-another'
'mwe-upwiz-categories-intro'
'mwe-upwiz-change'
'mwe-upwiz-click-here'
'mwe-upwiz-desc-add-0'
'mwe-upwiz-editing'
'mwe-upwiz-file-need-complete'
'mwe-upwiz-file-need-start'
'mwe-upwiz-filename-tag'
'mwe-upwiz-license'
'mwe-upwiz-license-incompatible-cc'
'mwe-upwiz-license-incompatible-pd'
'mwe-upwiz-license-show-all-any-license'
'mwe-upwiz-macro-edit'
'mwe-upwiz-macro-edit-intro'
'mwe-upwiz-other-prefill'
'mwe-upwiz-showall'
'mwe-upwiz-thanks-link'
'namespacedtest'
'pluraltest'

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87219]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "Krinkle" changed the status of MediaWiki.r87219.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87219#c0
Commit summary:

Trailing whitespace removed.

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87258]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "NeilK" changed the status of MediaWiki.r87258.

Old Status: fixme
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87258#c0
Commit summary:

FlickrChecker fixes, follow-up to r87002 and r87031

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87096]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "NeilK" changed the status of MediaWiki.r87096.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87096#c0
Commit summary:

follow-up to 87002, take into account Flickr adding new licenses, i.e. unknown 
license ID

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87043]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "Krinkle" changed the status of MediaWiki.r87043.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87043#c0
Commit summary:

fixing sloppy var scoping from r87002

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87095]: New comment added, and revision status changed

2011-05-03 Thread MediaWiki Mail
User "NeilK" changed the status of MediaWiki.r87095.

Old Status: new
New Status: ok

User "NeilK" also posted a comment on MediaWiki.r87095.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87095#c16535
Commit summary:

fixing formatting bug in Chrome caused by long error messages - no longer tries 
to force everything onto one line

Comment:

I was surprised the change from span to div worked, since this widget is used 
in a lot of other places. But... okay

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87218]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "Krinkle" changed the status of MediaWiki.r87218.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87218#c0
Commit summary:

Use a verb in 'mwe-upwiz-api-error-duplicate-archive-popup-title'

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87094]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "NeilK" changed the status of MediaWiki.r87094.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87094#c0
Commit summary:

punctuation for sentences

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Andrew Dunbar
On 4 May 2011 08:19, Krinkle  wrote:
> Op 3 mei 2011, om 22:56 heeft Ryan Lane het volgende geschreven:
>
>> On Tue, May 3, 2011 at 1:33 PM, Trevor Parscal
>>  wrote:
>>> On it's own, it would be essentially useless.
>>>
>>
>> The parser has a configuration state, takes wikitext in, and gives
>> back html. It pulls additional data from the database in these steps
>> as well, yes. However, I don't see how this would be different than
>> any other implementation of the parser. All implementations will
>> require configuration state, and will need to deal with things like
>> templates and extensions.
>>
>> Though I prefer the concept of alternative parsers (for all the
>> reasons mentioned in the other threads), I do think having our
>> reference implementation available as a library is a good concept. I
>> feel that making it available in a suitable license is ideal.
>>
>> - Ryan
>>
>
> Afaik parser does not need a database or extension hooks for minimum but
> fully operational use.
>
> {{unknown templates}} default to redlinks,
> {{int:messages}} default to ,
>  and {{#functions}} default to literals,
> {{MAGICWORDS}} to red links,
> etc...
>
> If a user of the parser would not have any of these (either none
> existing or no
> registry / database configured at all). It would fallback to the
> behaviour as if
> they are inexistant, not a problem ?

I agree a parser would not need a database but it would need a
standard interface or abstraction that in the full MediaWiki would
call to the database. Offline readers would implement this interface
to extract the wikitext from their compressed format or direct from an
XML dump file.

Some datamining tools might just stub this interface and deal with the
bare minimum.

Extension hooks are more interesting. I might assume offline readers
want as close results to the official sites as possible so will want
to implement the same hooks.

Other non-wikitext or non-page data from the database would also go
into the same interface/abstraction, or a separate one.

Andrew Dunbar (hippietrail)

> By having this available as a parser sites that host blogs and forums
> could potentially use wikitext to format their comments and forum
> threads
> (to avoid visitors from having to for example learn Wikitext for their
> wiki,
> WYSIWYM WYMeditor for WordPress and BBCode for a forum).
>
> Instead they could all be the same syntax. And within wiki context
> magic words, extensions, int messages etc. would be fed from the wiki
> database,
> outside just static.
>
> --
> Krinkle
>
>
>
>
>
>
> ___
> Wikitech-l mailing list
> Wikitech-l@lists.wikimedia.org
> https://lists.wikimedia.org/mailman/listinfo/wikitech-l
>

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r87097]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "Krinkle" changed the status of MediaWiki.r87097.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87097#c0
Commit summary:

better fix for bug 26178

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87359]: New comment added

2011-05-03 Thread MediaWiki Mail
User "Kaldari" posted a comment on MediaWiki.r87359.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87359#c16534
Commit summary:

new subheader messages

Comment:

fixed in r87371.

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87318]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "Krinkle" changed the status of MediaWiki.r87318.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87318#c0
Commit summary:

followup to 87313, forgot to add published message to hooks

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Andrew Dunbar
On 4 May 2011 06:33, Trevor Parscal  wrote:
> I think the idea that we might break the existing PHP "parser" out into a
> library for general use is rather silly.
>
> The "parser" is not a parser, it's a macro expander with a pile of
> regular-expressions used to convert short-hand HTML into actual HTML. The

Oh don't be silly. It may not be an LALR(1) parser or an LL parser or
even a recursive descent parser but last I checked parsing was the act
of breaking down a text into its elements, which the parser does. It
just does it in a pretty clunky way. Whether it stores the results in
an AST or in bunches of random state all over the place doesn't mean
it's doing something other than parsing.

A more accurate argument is that it's not just a parser since goes
directly on to transforming the input into HTML, which is the
equivalent of code generation.

> code that it outputs is highly dependent on the state of the wiki's
> configuration and database content at the moment of "parsing". It also is
> useless to anyone wanting to do anything other than render a page into HTML,
> because the output is completely opaque as to where any of it
> was derived. Dividing the "parser" off into a library would require an
> substantial amount of MediaWiki code to be ported too just to get it
> working. On it's own, it would be essentially useless.

It seems we're getting bogged won in semantics because in MediaWiki we
use the word "parser" in two incompatible ways. 1) The PHP classes
which convert wikitext to HTML 2) A hypothetical or postulated part of
MediaWiki which does not exist to generate an intermediate form (AST)
between wikitext and HTML.

So the first thing we need to do is decide which of these two concepts
of parser we're talking about.

Would it be useful to have a library that can convert wikitext to HTML? Yes.
Would it be useful to have a library that can convert wikitext to an
AST? Unclear.
Would it be useful to have a library that can convert such AST to
HTML? Because of the semantic soup nobod has even brought this up yet.

> So, it's probably not an issue what license this hypothetical code would be
> released under.
>
> - Trevor

I'm pretty sure the offline wikitext parsing community would care
about the licensing as a separate issue to what kind of parser
technology it uses internally.

Andrew Dunbar (hippietrail)

> On Tue, May 3, 2011 at 1:25 PM, David Gerard  wrote:
>
>> On 3 May 2011 21:15, Domas Mituzas  wrote:
>>
>> >> Thoughts? Also, for re-licensing, what level of approval do we need?
>> >> All authors of the parser, or the current people in an svn blame?
>>
>> > Current people are doing 'derivative work' on previous authors work. I
>> think all are needed. Pain oh pain.
>>
>>
>> This is the other reason to reduce it to mathematics, which can then
>> be freely reimplemented.
>>
>>
>> - d.
>>
>> ___
>> Wikitech-l mailing list
>> Wikitech-l@lists.wikimedia.org
>> https://lists.wikimedia.org/mailman/listinfo/wikitech-l
>>
> ___
> Wikitech-l mailing list
> Wikitech-l@lists.wikimedia.org
> https://lists.wikimedia.org/mailman/listinfo/wikitech-l
>

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r87314]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "Trevor Parscal" changed the status of MediaWiki.r87314.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87314#c0
Commit summary:

retry thumbnails for several seconds before declaring failure. All similar 
thumbnails in layout "subscribe" interest, and then the thumbnail is 
"published" to them when ready. Should address bug 28782

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Ryan Lane
> Personally, I don't see any problem with a parser library being GPL.
> You can still link it with proprietary code as long as you don't
> distribute the result, so it would be fine for research projects or
> similar that rely on proprietary components.  You can always *use*
> GPLd code however you like.  If you want to *distribute* proprietary
> (or otherwise GPL-incompatible) code that depends on my volunteer
> contributions, I'm happy to tell you to go jump off a bridge.
>

You'd have an issue with a proprietary application using the wikitext
parser as a library? You really find the LGPL completely unacceptable
in this situation?

Seems like kind of a hardline position to take. That same application
could make API calls to MediaWiki, using it in essentially the same
way,  without the license restrictions. Also, GPL, in our use case, is
fairly ineffective. Even if an application makes PHP calls directly
into MediaWiki, that application doesn't necessarily need to be GPL,
since there is no actual linking occurring. Not all MediaWiki
extensions are GPL, for instance.

Essentially, this will just limit a C version of the software, which
is slightly lame.

Meh. If we have a GPL library, I'll just wrap it in a wsgi python
library to act as a shim.

- Ryan

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r87359]: New comment added

2011-05-03 Thread MediaWiki Mail
User "NeilK" posted a comment on MediaWiki.r87359.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87359#c16533
Commit summary:

new subheader messages

Comment:

you can do it like this -- pass in a jQuery object instead of a string URL. 
Magic. :)

.msg( 
'mwe-upwiz-subhead-bugs',
$j( '' ).attr( { href: mw.UploadWizard.config['bugList'], target: 
'_blank' } )
);

or, find the 's after you do all .msg() and use jquery to add a target attr 
to them all 

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87312]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "Krinkle" changed the status of MediaWiki.r87312.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87312#c0
Commit summary:

use "donate" message rather than "upload" for big button

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87359]: New comment added

2011-05-03 Thread MediaWiki Mail
User "NeilK" posted a comment on MediaWiki.r87359.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87359#c16532
Commit summary:

new subheader messages

Comment:

looks good, just missing target=_blank?

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87367]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "NeilK" changed the status of MediaWiki.r87367.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87367#c0
Commit summary:

adding missing tests, follow-up to r87359

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87370]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "Krinkle" changed the status of MediaWiki.r87370.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87370#c0
Commit summary:

a simpler way to fix bug 26178

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Tim Starling
On 04/05/11 06:38, Neil Kandalgaonkar wrote:
> On 5/2/11 5:28 PM, Tim Starling wrote:
>> How many wikitext parsers does the world really need?
> 
> That's a tricky question. What MediaWiki calls parsing, the rest of the 
> world calls
> 
> 1. Parsing
> 2. Expansion (i.e. templates, magic)
> 3. Applying local state, preferences, context (i.e. $n, prefs)
> 4. Emitting
> 
> And phases 2 and 3 depend heavily upon the state of the local wiki at 
> the time the parse is requested. If you've ever tried to set up a test 
> wiki that works like Wikipedia or Wikimedia Commons you'll know what I'm 
> talking about.

I wasn't saying that the current MediaWiki parser is suitable for
reuse, I was saying that it may be possible to develop the MediaWiki
parser into something which is reusable.

-- Tim Starling


___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r87368]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "NeilK" changed the status of MediaWiki.r87368.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87368#c0
Commit summary:

fixing bugzilla link, follow-up to r87359

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87156]: New comment added, and revision status changed

2011-05-03 Thread MediaWiki Mail
User "^demon" changed the status of MediaWiki.r87156.

Old Status: new
New Status: ok

User "^demon" also posted a comment on MediaWiki.r87156.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87156#c16531
Commit summary:

quick and dirty language stats

Comment:

Should remove svn:executable prop.

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r86664]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "^demon" changed the status of MediaWiki.r86664.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/86664#c0
Commit summary:

fix off-by-one in month when defaulting to now

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87355]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "^demon" changed the status of MediaWiki.r87355.

Old Status: new
New Status: deferred

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87355#c0
Commit summary:

Localisation updates for core and extension messages from translatewiki.net 
(2011-05-02 20:13:00 UTC)

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Chad
On Tue, May 3, 2011 at 6:56 PM, Aryeh Gregor
 wrote:
> On Tue, May 3, 2011 at 6:16 PM, Chad  wrote:
>> Who do we consider significant? Would it be possible to get
>> consensus on a relicensing?
>
> As far as I know, the way the GPL works makes it effectively
> impossible to relicense a large project to something more permissive.
> You'd have to get permission from literally everyone who made
> nontrivial contributions, or else rewrite their code.  But if there's
> serious interest in this, someone should get an official opinion from
> Wikimedia's lawyers on how (or if) it could be done.
>
> Personally, I don't see any problem with a parser library being GPL.
> You can still link it with proprietary code as long as you don't
> distribute the result, so it would be fine for research projects or
> similar that rely on proprietary components.  You can always *use*
> GPLd code however you like.  If you want to *distribute* proprietary
> (or otherwise GPL-incompatible) code that depends on my volunteer
> contributions, I'm happy to tell you to go jump off a bridge.
>

I was just speculating. I don't have any problems with the GPL :)

-Chad

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l

[MediaWiki-CodeReview] [MediaWiki r87359]: New comment added

2011-05-03 Thread MediaWiki Mail
User "Kaldari" posted a comment on MediaWiki.r87359.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87359#c16530
Commit summary:

new subheader messages

Comment:

Oops, I meant to do both tests actually (like I do with feedback). Fixed in 
r87367. Bugzilla link fixed in r87368.

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r86041]: New comment added

2011-05-03 Thread MediaWiki Mail
User "^demon" posted a comment on MediaWiki.r86041.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/86041#c16529
Commit summary:

r86001, now with less scariness :P  I took out the delete action and did purge 
instead, which is a much more self-contained action-with-a-form.  Also 
implement a few changes suggested by Brion on IRC last night.

Comment:

I don't like introducing a new global for this. Move it into the class.

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r86041]: New comment added

2011-05-03 Thread MediaWiki Mail
User "Happy-melon" posted a comment on MediaWiki.r86041.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/86041#c16528
Commit summary:

r86001, now with less scariness :P  I took out the delete action and did purge 
instead, which is a much more self-contained action-with-a-form.  Also 
implement a few changes suggested by Brion on IRC last night.

Comment:

There aren't fatals as a result because Action::factory() loads 
Action.php, but you're right that they should have entries regardless.

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87359]: New comment added

2011-05-03 Thread MediaWiki Mail
User "NeilK" posted a comment on MediaWiki.r87359.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87359#c16527
Commit summary:

new subheader messages

Comment:

uh, if it's not obvious, there are a lot of '' which got 
turned into italicization in my previous comment

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87359]: New comment added, and revision status changed

2011-05-03 Thread MediaWiki Mail
User "NeilK" changed the status of MediaWiki.r87359.

Old Status: new
New Status: fixme

User "NeilK" also posted a comment on MediaWiki.r87359.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87359#c16526
Commit summary:

new subheader messages

Comment:

1) The tests for ( mw.UploadWizard.config['something'] !== '' ) are doing the 
wrong thing.

If those items are missing, the value returned is undefined, which is also !== 
''

You want to use typeof (mw.UploadWizard.config['something']) !== undefined  or  
perhaps mw.isDefined()


2) The URL for bugzilla doesn't work, those saved searches are specific to 
particular users

This will work better, I think. Be careful of those list_id arguments, they 
refer to ephemeral cached listings.

https://bugzilla.wikimedia.org/buglist.cgi?query_format=advanced&component=UploadWizard&resolution=---&product=MediaWiki+extensions


3) could you add target=_blank to all the links, so they don't interrupt an 
upload? Thanks.



___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87258]: New comment added

2011-05-03 Thread MediaWiki Mail
User "Kaldari" posted a comment on MediaWiki.r87258.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87258#c16525
Commit summary:

FlickrChecker fixes, follow-up to r87002 and r87031

Comment:

Removed the extra question marks. The 'jsoncallback=?' was to generate a random 
callback function name (normal jsonp methodology). I didn't know you could 
suppress the callback function entirely. That's much more sensible. Implemented 
in r87366.

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Aryeh Gregor
On Tue, May 3, 2011 at 6:16 PM, Chad  wrote:
> Who do we consider significant? Would it be possible to get
> consensus on a relicensing?

As far as I know, the way the GPL works makes it effectively
impossible to relicense a large project to something more permissive.
You'd have to get permission from literally everyone who made
nontrivial contributions, or else rewrite their code.  But if there's
serious interest in this, someone should get an official opinion from
Wikimedia's lawyers on how (or if) it could be done.

Personally, I don't see any problem with a parser library being GPL.
You can still link it with proprietary code as long as you don't
distribute the result, so it would be fine for research projects or
similar that rely on proprietary components.  You can always *use*
GPLd code however you like.  If you want to *distribute* proprietary
(or otherwise GPL-incompatible) code that depends on my volunteer
contributions, I'm happy to tell you to go jump off a bridge.

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] auditcode.py - discern class structure

2011-05-03 Thread Platonides
Paul Houle wrote:
>  Note that there is a PHP tokenizer built into PHP which makes it 
> straightforward to develop tools like this in PHP:
> 
> http://php.net/manual/en/book.tokenizer.php
> 
>  A practical example can be found here
> 
> http://gen5.info/q/2009/01/09/an-awesome-autoloader-for-php
> 
>   Now,  it would be nice to have a parser available that can see the 
> tree structure.

The tokenizer is slow. It's not worth taking it out for this.


___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] What is wrong with Wikia's WYSIWYG?

2011-05-03 Thread Trevor Parscal
Some of them are already going. After talking with some of them about our
new parser and editor plans, and that we would be doing work on that in
Berlin, they said they were likely to send some people. Obviously it's up to
a variety of factors how many of Wikia's people show up, but we do know that
they are aware of the topics, the relevance of their work and what will be
done at the conference, and have shown interest.

Historically, Wikia sends a few people each year, and often presents on
something they are working on.

- Trevor

On Mon, May 2, 2011 at 5:26 PM, Sumana Harihareswara wrote:

> On 05/02/2011 06:40 PM, Owen Davis wrote:
> > I think the current plan is to see what transpires with the
> > upcoming Parser redesign and keep our code in sync.  The
> > primary authors of this RTE reskin will be at the Berlin
> > hackathon as well.
>
> Who are those authors?  I'd like to know so I can find them in Berlin
> and drag them into any relevant discussions, etc.
>
> -Sumana Harihareswara
>
>
>
> ___
> Wikitech-l mailing list
> Wikitech-l@lists.wikimedia.org
> https://lists.wikimedia.org/mailman/listinfo/wikitech-l
>
___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] auditcode.py - discern class structure

2011-05-03 Thread Platonides
Russell N. Nelson - rnnelson wrote:
> Maybe there's a better tool to tell you what function is 
>defined in what class in PHP, but I couldn't find one in
>the time it would take me to write it, so I wrote it. 
>It's not even a screenful. Give it the class definitions, 
>in class hierarchy order, on the command line. 

That restriction isn't too friendly.


>It will pull out the class name and function names, and tell 
>you which function is actually being implemented by which class.
>It doesn't pay any attention to parent::self() calls, so 
>you should watch out for them.
> -russ

>  #!/usr/bin/python
> 
> import sys, re
> 
> functions = {}
> classes = {}
> cl = None
> for fn in sys.argv[1:]:
> for line in open(fn):
> match = 
> re.match(r'(abstract\s+)?class\s+(.*?)\s+(extends\s+(.*?)\s+)?\{', line)
> if match:
> cl = match.group(2)
> supercl = match.group(4)
> classes[cl] = supercl
> if supercl:
> classes[supercl] # superclass should already be exist

Also note, some files include both the class and the superclass, so
"give in class hierarchy order" may not be possible (I don't know if
there's any file that includes the child before the parent, though).


> match = re.match(r'\s*(public\s+|static\s+)?function\s+(.*?)\(', line)

I understand you may not want protected or private functions, but
this regex will also miss the 536 functions that are public static, and
the 7 that are static public.

> if match:
> # we have a function definition.
> funct = match.group(2)
> functions[funct] = cl
> 
> keys = functions.keys()
> keys.sort()
> for key in keys:
> print key,functions[key]

If you are adventurous, you may want to add an option to create a file
similar to parent.classes in check-vars.php Functions are already being
tracked, so it shouldn't be too hard.


___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r86041]: New comment added, and revision status changed

2011-05-03 Thread MediaWiki Mail
User "Platonides" changed the status of MediaWiki.r86041.

Old Status: new
New Status: fixme

User "Platonides" also posted a comment on MediaWiki.r86041.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/86041#c16524
Commit summary:

r86001, now with less scariness :P  I took out the delete action and did purge 
instead, which is a much more self-contained action-with-a-form.  Also 
implement a few changes suggested by Brion on IRC last night.

Comment:

You are freely using FormAction and FormlessAction but they aren't registered 
in the autoloader.

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Krinkle
Op 3 mei 2011, om 22:56 heeft Ryan Lane het volgende geschreven:

> On Tue, May 3, 2011 at 1:33 PM, Trevor Parscal  
>  wrote:
>> On it's own, it would be essentially useless.
>>
>
> The parser has a configuration state, takes wikitext in, and gives
> back html. It pulls additional data from the database in these steps
> as well, yes. However, I don't see how this would be different than
> any other implementation of the parser. All implementations will
> require configuration state, and will need to deal with things like
> templates and extensions.
>
> Though I prefer the concept of alternative parsers (for all the
> reasons mentioned in the other threads), I do think having our
> reference implementation available as a library is a good concept. I
> feel that making it available in a suitable license is ideal.
>
> - Ryan
>

Afaik parser does not need a database or extension hooks for minimum but
fully operational use.

{{unknown templates}} default to redlinks,
{{int:messages}} default to ,
 and {{#functions}} default to literals,
{{MAGICWORDS}} to red links,
etc...

If a user of the parser would not have any of these (either none  
existing or no
registry / database configured at all). It would fallback to the  
behaviour as if
they are inexistant, not a problem ?

By having this available as a parser sites that host blogs and forums
could potentially use wikitext to format their comments and forum  
threads
(to avoid visitors from having to for example learn Wikitext for their  
wiki,
WYSIWYM WYMeditor for WordPress and BBCode for a forum).

Instead they could all be the same syntax. And within wiki context
magic words, extensions, int messages etc. would be fed from the wiki  
database,
outside just static.

--
Krinkle






___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r86990]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "NeilK" changed the status of MediaWiki.r86990.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/86990#c0
Commit summary:

titles on the inputs are no longer necessary. these were left over from the old 
tipsy scheme

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Chad
On Tue, May 3, 2011 at 6:14 PM, Aryeh Gregor
 wrote:
> On Tue, May 3, 2011 at 2:11 PM, Domas Mituzas  wrote:
>> Which of course allows me to fork the thread and ask why does MediaWiki have 
>> to be GPL licensed.
>
> Because all it takes is one developer with substantial contributions
> who doesn't want to relicense, and then you have to rewrite all their
> contributions and everything based on their contributions if you want
> to change the license.  That's what a viral license is, after all.  Of
> course, an independent component could be non-GPL-licensed, if it was
> written from scratch.
>

Who do we consider significant? Would it be possible to get
consensus on a relicensing?

-Chad

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l

[MediaWiki-CodeReview] [MediaWiki r87361]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "Reedy" changed the status of MediaWiki.r87361.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87361#c0
Commit summary:

Use canonical case

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Aryeh Gregor
On Tue, May 3, 2011 at 2:11 PM, Domas Mituzas  wrote:
> Which of course allows me to fork the thread and ask why does MediaWiki have 
> to be GPL licensed.

Because all it takes is one developer with substantial contributions
who doesn't want to relicense, and then you have to rewrite all their
contributions and everything based on their contributions if you want
to change the license.  That's what a viral license is, after all.  Of
course, an independent component could be non-GPL-licensed, if it was
written from scratch.

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r87258]: New comment added

2011-05-03 Thread MediaWiki Mail
User "NeilK" posted a comment on MediaWiki.r87258.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87258#c16523
Commit summary:

FlickrChecker fixes, follow-up to r87002 and r87031

Comment:

The arguments for getJSON are strange. Are you sure this works? I couldn't get 
it to do anything.

I'm not sure what you're trying to do with the '?jsoncallback=?', especially 
since you define apiUrl as already having a trailing '?' elsewhere. So doesn't 
that make '??jsoncallback=?' ?

If you just don't want a JSON callback, you can use nojsoncallback=1. This 
worked for me:

this.apiUrl = 'http://api.flickr.com/services/rest';
apiKey = 'blah blah key here';
$.getJSON( apiUrl, { nojsoncallback: 1, format : 'json', api_key: apiKey, 
method : 'flickr.panda.getList'  } );

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] auditcode.py - discern class structure

2011-05-03 Thread Aryeh Gregor
On Tue, May 3, 2011 at 10:25 AM, Paul Houle  wrote:
>     Note that there is a PHP tokenizer built into PHP which makes it
> straightforward to develop tools like this in PHP:
>
> http://php.net/manual/en/book.tokenizer.php
>
>     A practical example can be found here
>
> http://gen5.info/q/2009/01/09/an-awesome-autoloader-for-php

We have a practical example too:

http://svn.wikimedia.org/viewvc/mediawiki/trunk/tools/code-utils/stylize.php?view=markup

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l

[MediaWiki-CodeReview] [MediaWiki r87269]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "NeilK" changed the status of MediaWiki.r87269.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87269#c0
Commit summary:

fixing closure for jQuery, follow-up for r87258

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Roan Kattouw
On Tue, May 3, 2011 at 10:56 PM, Ryan Lane  wrote:
> The parser has a configuration state, takes wikitext in, and gives
> back html. It pulls additional data from the database in these steps
> as well, yes. However, I don't see how this would be different than
> any other implementation of the parser. All implementations will
> require configuration state, and will need to deal with things like
> templates and extensions.
>
Not all implementations will want to output HTML, though. Like Neil
said in the other thread, some implementations will want to output
other formats (HTML for mobile, or PDF) or just want to analyze stuff
(metadata from infoboxes/templates for Google or OpenStreetMap). What
we have right now is mostly (the preprocessor is nicely separate now,
but still) a black box that eats wikitext, reads additional data from
places, and spits out HTML. A truly reusable component would at least
produce something like an abstract syntax tree that can be rendered or
traversed by different consumers to produce different results.
Reducing the external dependencies is hard, I agree with that part.
However, some components of the (hypothetically broken-up) parser
don't necessarily need to know as much, so some gains could possibly
be made there.

Roan Kattouw (Catrope)

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r86473]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "DieBuche" changed the status of MediaWiki.r86473.

Old Status: new
New Status: reverted

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/86473#c0
Commit summary:

Fix Bug 28537: JUI buttons now have black as text-color

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87351]: New comment added

2011-05-03 Thread MediaWiki Mail
User "RussNelson" posted a comment on MediaWiki.r87351.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87351#c16522
Commit summary:

Only one extension was using getThumbnail

Comment:

Argh, yeah. I put in tabs, which vim then ``helpfully'' converted to spaces ... 
but just on that one line. I have to figure out how to convince it to only 
smash tabs when I'm editing a .py file.

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Ryan Lane
On Tue, May 3, 2011 at 1:33 PM, Trevor Parscal  wrote:
> I think the idea that we might break the existing PHP "parser" out into a
> library for general use is rather silly.
>

Well, if that's the case, why was it brought up in the discussion to
begin with? Here's the comment Tim made:

"Now that we have HipHop support, we have the ability to turn
MediaWiki's core parser into a fast, reusable library. The performance
reasons for limiting the amount of abstraction in the core parser will
disappear. How many wikitext parsers does the world really need?"

He tends to think it's an option. Domas mentioned in IRC that he made
a standalone version of the parser a while back, as well.

> The "parser" is not a parser, it's a macro expander with a pile of
> regular-expressions used to convert short-hand HTML into actual HTML. The
> code that it outputs is highly dependent on the state of the wiki's
> configuration and database content at the moment of "parsing". It also is
> useless to anyone wanting to do anything other than render a page into HTML,
> because the output is completely opaque as to where any of it
> was derived. Dividing the "parser" off into a library would require an
> substantial amount of MediaWiki code to be ported too just to get it
> working. On it's own, it would be essentially useless.
>

The parser has a configuration state, takes wikitext in, and gives
back html. It pulls additional data from the database in these steps
as well, yes. However, I don't see how this would be different than
any other implementation of the parser. All implementations will
require configuration state, and will need to deal with things like
templates and extensions.

Though I prefer the concept of alternative parsers (for all the
reasons mentioned in the other threads), I do think having our
reference implementation available as a library is a good concept. I
feel that making it available in a suitable license is ideal.

- Ryan

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] Bugzilla Weekly Report

2011-05-03 Thread Sumana Harihareswara
On 05/03/2011 12:43 PM, quim@nokia.com wrote:
> Fwiw a MeeGo contributor has created a script to retrieve weekly information 
> from http://bugs.meego.com and make these nice and useful reports:
>
> http://www.octofish.net/meegobugjar/platform/
>
> Let me know if you are interested in an equivalent for bugzilla.wikimedia.org
>
> --
> Quim

Quim, it has SPARKLINES, how can we resist?!  ;-)

Yes, I am also interested in an equivalent for our Bugzilla.

-Sumana

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] Zend performance (Was: WYSIWYG and parser plans)

2011-05-03 Thread Domas Mituzas
Hi!

> I'm not sure what you are profiling,

Wikipedia :) 

> but when repeatingly requesting a
> preview of an article containing 20 bytes of data consisting of the
> pattern "a a a a a a " I got the below results.  (The php parser doesn't
> seem to depend on perl regexps.)

I'm sure nothing profiles better than a synthetic edge case. What do you mean 
by it not depending on perl regexps? It is top symbol in your profile. 

> CPU: CPU with timer interrupt, speed 0 MHz (estimated)
> Profiling through timer interrupt
> samples  %app name symbol name
> 994  23.4933  libpcre.so.3.12.1/lib/libpcre.so.3.12.1
> 545  12.8811  libphp5.so   zendparse
> 369   8.7213  libphp5.so   lex_scan
> 256   6.0506  libc-2.11.2.so   memcpy
> 137   3.2380  libphp5.so   zend_hash_find
> 135   3.1907  libphp5.so   _zend_mm_alloc_canary_int
> 105   2.4817  libphp5.so   __i686.get_pc_thunk.bx
> 902.1272  libphp5.so   _zend_mm_free_canary_int
> 671.5835  libphp5.so   zif_strtr
> 591.3945  libphp5.so   zend_mm_add_to_free_list
> 481.1345  libphp5.so   zend_mm_remove_from_free_list

Domas


___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r87354]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "Jack Phoenix" changed the status of MediaWiki.r87354.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87354#c0
Commit summary:

remove double "for"

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Neil Kandalgaonkar
On 5/2/11 5:28 PM, Tim Starling wrote:
>How many wikitext parsers does the world really need?

That's a tricky question. What MediaWiki calls parsing, the rest of the 
world calls

1. Parsing
2. Expansion (i.e. templates, magic)
3. Applying local state, preferences, context (i.e. $n, prefs)
4. Emitting

And phases 2 and 3 depend heavily upon the state of the local wiki at 
the time the parse is requested. If you've ever tried to set up a test 
wiki that works like Wikipedia or Wikimedia Commons you'll know what I'm 
talking about.

As for whether the rest of the world needs another wikitext parser: 
well, they keep writing them, so there must be some reason why this 
keeps happening. It's true that language chauvinism plays a part, but 
the inflexibility of the current approach is probably a big factor as 
well. The current system mashes parsing and emitting to HTML together, 
very intimately, and a lot of people would like those to be separate.

   - if they're doing research or stats, and want a more "pure", more 
normalized form than HTML or Wikitext.

   - if they're Google, and they want to get all the city infobox data 
and reuse it (this is a real request we've gotten)

   - if they're OpenStreetMaps, and the same thing;

   - if they're emitting to a different format (PDF, LaTeX, books);

   - if they're emitting to HTML but with different needs (like mobile);

And then there's the stuff which you didn't know you wanted, but which 
becomes easy once you have a more flexible parser.

A couple of months ago I wrote a mini PEG-based wikitext parser in 
JavaScript, that Special:UploadWizard is using, today, live on Commons.

 
http://svn.wikimedia.org/viewvc/mediawiki/trunk/extensions/UploadWizard/resources/mediawiki.language.parser.js?view=markup

 
http://svn.wikimedia.org/viewvc/mediawiki/trunk/extensions/UploadWizard/resources/mediawiki.language.parser.peg?view=markup

While it was a bit of a heavy download (7K compressed) this gave me the 
ability to do pluralizations in the frontend (e.g. "3 out of 5 uploads 
complete") even for difficult languages like Arabic. Great!

But the unexpected benefit was that it also made it a snap to add very 
complicated interface behaviour to our message strings. Actually, right 
now, with this library + the ingenious way that wikitext does i18n, we 
may have one of the best libraries out there for internationalized user 
interfaces. I'm considering splitting it off; it could be useful for any 
project that used translatewiki.

But I don't actually want to use JavaScript for anything but the final 
rendering stages (I'd rather move most of this parser to PHP) so stay tuned.

Anyway, I think it's obviously possible for us to do some RTE, and some 
of this stuff, with the current parser. But I'm optimistic that a new 
parsing strategy will be a huge benefit to our community, and our 
partners, and partners we didn't even know we could have. Imagine doing 
RTE with an implementation in a JS frontend, that is generated from some 
of the same sources that the PHP backend uses.

For what it's worth: whenever I meet with Wikia employees the topic is 
always about what MediaWiki and the WMF can do to make their RTE hacks 
obsolete. That doesn't mean that their RTE isn't the right way forward, 
but the people who wrote it don't seem to be very strong advocates for 
it. But I don't want to put words in their mouth; maybe one of them can 
add more to this thread?

-- 
Neil Kandalgaonkar 

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[Wikitech-l] WorkingWiki extension

2011-05-03 Thread Lee Worden
Just added to MediaWiki.org:
http://www.mediawiki.org/wiki/Extension:WorkingWiki

WorkingWiki is a software extension for MediaWiki that makes a wiki into 
a powerful environment for collaborating on publication-quality 
manuscripts and software projects.  It's designed for research labs' 
wikis, but may have diverse other uses as well.

(I probably should have made it public long ago, but there was a big 
refactor and it took a long time to settle out...)

Lee Worden
McMaster University

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] Release schedule for the rest of 2011

2011-05-03 Thread Mark A. Hershberger
"Happy-melon"  writes:

> Development work done in branches might as well be left in a working
> copy for all the attention it gets

I'm not about to say that development branches get the love and
attention of trunk — just look at the mess we have with with
iwtransclusion branch.  Here we are about 9 months later and the GSOC
code is just now being merged. (https://bugzilla.wikimedia.org/28673)

We are learning from that mistake, though.  I think Sumanah is directing
current GSOC students to work on trunk instead of a branch.

> BZ patches doubly so.

I'm watching the front of the bug stream and, usually, when someone
finds bug and provides a patch, I apply it right away.  If someone does
that enough (/me waves at Paul Copperman) then we try to get them commit
access.

Of course, things aren't perfect, but hopefully they are getting better.

Mark.

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l

Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Trevor Parscal
I think the idea that we might break the existing PHP "parser" out into a
library for general use is rather silly.

The "parser" is not a parser, it's a macro expander with a pile of
regular-expressions used to convert short-hand HTML into actual HTML. The
code that it outputs is highly dependent on the state of the wiki's
configuration and database content at the moment of "parsing". It also is
useless to anyone wanting to do anything other than render a page into HTML,
because the output is completely opaque as to where any of it
was derived. Dividing the "parser" off into a library would require an
substantial amount of MediaWiki code to be ported too just to get it
working. On it's own, it would be essentially useless.

So, it's probably not an issue what license this hypothetical code would be
released under.

- Trevor

On Tue, May 3, 2011 at 1:25 PM, David Gerard  wrote:

> On 3 May 2011 21:15, Domas Mituzas  wrote:
>
> >> Thoughts? Also, for re-licensing, what level of approval do we need?
> >> All authors of the parser, or the current people in an svn blame?
>
> > Current people are doing 'derivative work' on previous authors work. I
> think all are needed. Pain oh pain.
>
>
> This is the other reason to reduce it to mathematics, which can then
> be freely reimplemented.
>
>
> - d.
>
> ___
> Wikitech-l mailing list
> Wikitech-l@lists.wikimedia.org
> https://lists.wikimedia.org/mailman/listinfo/wikitech-l
>
___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread David Gerard
On 3 May 2011 21:15, Domas Mituzas  wrote:

>> Thoughts? Also, for re-licensing, what level of approval do we need?
>> All authors of the parser, or the current people in an svn blame?

> Current people are doing 'derivative work' on previous authors work. I think 
> all are needed. Pain oh pain.


This is the other reason to reduce it to mathematics, which can then
be freely reimplemented.


- d.

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] Zend performance (Was: WYSIWYG and parser plans)

2011-05-03 Thread Andreas Jonsson
Hi,

I'm not sure what you are profiling, but when repeatingly requesting a
preview of an article containing 20 bytes of data consisting of the
pattern "a a a a a a " I got the below results.  (The php parser doesn't
seem to depend on perl regexps.)

CPU: CPU with timer interrupt, speed 0 MHz (estimated)
Profiling through timer interrupt
samples  %app name symbol name
994  23.4933  libpcre.so.3.12.1/lib/libpcre.so.3.12.1
545  12.8811  libphp5.so   zendparse
369   8.7213  libphp5.so   lex_scan
256   6.0506  libc-2.11.2.so   memcpy
137   3.2380  libphp5.so   zend_hash_find
135   3.1907  libphp5.so   _zend_mm_alloc_canary_int
105   2.4817  libphp5.so   __i686.get_pc_thunk.bx
902.1272  libphp5.so   _zend_mm_free_canary_int
671.5835  libphp5.so   zif_strtr
591.3945  libphp5.so   zend_mm_add_to_free_list
481.1345  libphp5.so   zend_mm_remove_from_free_list

/Andreas

2011-05-03 14:40, Domas Mituzas skrev:
> some oprofile data showsthat pcre is few percent of execution time - and 
> there's really lots of Zend internals that stand in the way - memory 
> management (HPHP implements it as C++ object allocations via jemalloc), 
> symbol resolutions (native calls in C++), etc. 
> 
> Domas
> 
> samples  %image name   app name symbol 
> name
> 4924009.6648  libphp5.so   libphp5.so   
> _zend_mm_alloc_int
> 4515738.8634  libc-2.7.so  libc-2.7.so  (no 
> symbols)
> 3478126.8268  libphp5.so   libphp5.so   
> zend_hash_find
> 3456656.7847  no-vmlinux   no-vmlinux   (no 
> symbols)
> 3305136.4873  libphp5.so   libphp5.so   
> _zend_mm_free_int
> 2257554.4311  libpcre.so.3.12.1libpcre.so.3.12.1(no 
> symbols)
> 1599253.1390  libphp5.so   libphp5.so   
> zend_do_fcall_common_helper_SPEC
> 1377092.7029  libphp5.so   libphp5.so   
> _zval_ptr_dtor
> 1272332.4973  libxml2.so.2.6.31libxml2.so.2.6.31(no 
> symbols)
> 1112492.1836  libphp5.so   libphp5.so   
> zend_hash_quick_find
> 93994 1.8449  libphp5.so   libphp5.so   
> _zend_hash_quick_add_or_update
> 84693 1.6623  libphp5.so   libphp5.so   
> zend_assign_to_variable
> 84256 1.6538  fss.so   fss.so   (no 
> symbols)
> 56474 1.1085  libphp5.so   libphp5.so   execute
> 49959 0.9806  libphp5.so   libphp5.so   
> zend_hash_destroy
> 48450 0.9510  libz.so.1.2.3.3  libz.so.1.2.3.3  (no 
> symbols)
> 46967 0.9219  libphp5.so   libphp5.so   
> ZEND_JMPZ_SPEC_TMP_HANDLER
> 46523 0.9131  libphp5.so   libphp5.so   
> _zend_hash_add_or_update
> 45747 0.8979  libphp5.so   libphp5.so   
> zend_str_tolower_copy
> 39154 0.7685  libphp5.so   libphp5.so   
> zend_fetch_dimension_address
> 35356 0.6940  libphp5.so   libphp5.so   
> ZEND_RECV_SPEC_HANDLER
> 33381 0.6552  libphp5.so   libphp5.so   
> compare_function
> 32660 0.6410  libphp5.so   libphp5.so   
> _zend_hash_index_update_or_next_insert
> 31815 0.6245  libphp5.so   libphp5.so   
> zend_parse_va_args
> 31689 0.6220  libphp5.so   libphp5.so   
> ZEND_SEND_VAR_SPEC_CV_HANDLER
> 31554 0.6193  libphp5.so   libphp5.so   _emalloc
> 30404 0.5968  libphp5.so   libphp5.so   
> _get_zval_ptr_var
> 29812 0.5851  libphp5.so   libphp5.so   
> ZEND_ASSIGN_REF_SPEC_CV_VAR_HANDLER
> 28092 0.5514  libphp5.so   libphp5.so   
> ZEND_DO_FCALL_SPEC_CONST_HANDLER
> 27760 0.5449  libphp5.so   libphp5.so   
> zend_hash_clean
> 27589 0.5415  libphp5.so   libphp5.so   
> zend_fetch_var_address_helper_SPEC_CONST
> 26731 0.5247  libphp5.so   libphp5.so   
> _zval_dtor_func
> 24732 0.4854  libphp5.so   libphp5.so   
> ZEND_ASSIGN_SPEC_CV_VAR_HANDLER
> 24732 0.4854  libphp5.so   libphp5.so   
> ZEND_RECV_INIT_SPEC_CONST_HANDLER
> 22587 0.4433  libphp5.so   libphp5.so   
> zend_send_by_var_helper_SPEC_CV
> 22176 0.4353  libphp5.so   libphp5.so   _efree
> 21911 0.4301  libphp5.so   libphp5.so   .plt
> 21102 0.4142  lib

Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Domas Mituzas
> 
> Thoughts? Also, for re-licensing, what level of approval do we need?
> All authors of the parser, or the current people in an svn blame?

Current people are doing 'derivative work' on previous authors work. I think 
all are needed. Pain oh pain. 

Domas
___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r87351]: New comment added

2011-05-03 Thread MediaWiki Mail
User "Reedy" posted a comment on MediaWiki.r87351.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87351#c16521
Commit summary:

Only one extension was using getThumbnail

Comment:

You're mixing tabs and spaces

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87349]: New comment added

2011-05-03 Thread MediaWiki Mail
User "^demon" posted a comment on MediaWiki.r87349.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87349#c16520
Commit summary:

Only one extension was using getThumbnail

Comment:

Callers were fixed in r87351.

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Ryan Lane
> /me hopes the OT messages end with this and next one is on topic.
>

So, getting back on topic, if we are seriously considering telling
people to use a hphp compiled version of the parser as a library, we
should re-license it in a more compatible license. LGPL is good, BSD
is likely better.

Thoughts? Also, for re-licensing, what level of approval do we need?
All authors of the parser, or the current people in an svn blame?

- Ryan

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r87349]: New comment added

2011-05-03 Thread MediaWiki Mail
User "^demon" posted a comment on MediaWiki.r87349.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87349#c16519
Commit summary:

Only one extension was using getThumbnail

Comment:

This has only been throwing warnings since November (although it's been 
deprecated since r21411). I'd leave it in for one last release and then remove 
it.

Plus the last callers in /trunk/extensions should be fixed before outright 
removal.

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Yuvi Panda
On Wed, May 4, 2011 at 1:35 AM, Peter Youngmeister  wrote:
> If you guys still think about ideas as things that can be stolen,

I'm pretty sure that was meant as a joke.

Oh wait, what if *this* was also meant as a joke and I didn't get it? :|

/me hopes the OT messages end with this and next one is on topic.

-- 
Yuvi Panda T
http://yuvi.in/blog

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Dirk Riehle


On 05/03/2011 08:28 PM, Neil Harris wrote:
> On 03/05/11 19:44, MZMcBride wrote:
...
>> The point is that the wikitext and its parsing should be completely separate
>> from MediaWiki/PHP/HipHop/Zend.
>>
>> I think some of the bigger picture is getting lost here. Wikimedia produces
>> XML dumps that contain wikitext. For most people, this is the only way to
>> obtain and reuse large amounts of content from Wikimedia wikis (especially
>> as the HTML dumps haven't been re-created since 2008). There needs to be a
>> way for others to be able to very easily deal with this content.
>>
>> Many people have suggested (with good reason) that this means that wikitext
>> parsing needs to be reproducible in other programming languages. While
>> HipHop may be the best thing since sliced bread, I've yet to see anyone put
>> forward a compelling reason that the current state of affairs is acceptable.
>> Saying "well, it'll soon be much faster for MediaWiki to parse" doesn't
>> overcome the legitimate issues that re-users have (such as programming in a
>> language other than PHP, banish the thought).
>>
>> For me, the idea that all that's needed is a faster parser in PHP is a
>> complete non-starter.
>>
>> MZMcBride
>>
>
> I agree completely.
>
> I think it cannot be emphasized enough that what's valuable about
> Wikipedia and other similar wikis is the hard-won _content_, not the
> software used to write and display it at any given, which is merely a
> means to that end.
>
> Fashions in programming languages and data formats come and go, but the
> person-centuries of writing effort already embodied in Mediawiki's
> wikitext format needs to have a much longer lifespan: having a
> well-defined syntax for its current wikitext format will allow the
> content itself to continue to be maintained for the long term, beyond
> the restrictions of its current software or encoding format.
>
> -- Neil

+1 to both MZMcBride and Neil.

So relieved to see things put so eloquently.

Dirk


-- 
Website: http://dirkriehle.com - Twitter: @dirkriehle
Ph (DE): +49-157-8153-4150 - Ph (US): +1-650-450-8550


___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r87350]: Revision status changed

2011-05-03 Thread MediaWiki Mail
User "Krinkle" changed the status of MediaWiki.r87350.

Old Status: new
New Status: ok

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87350#c0
Commit summary:

Localisation updates for ToolserverI18N messages from translatewiki.net 
(2011-05-03 19:57:00 UTC)

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Peter Youngmeister
If you guys still think about ideas as things that can be stolen,
perhaps you should check out the open source movement. Here's a good
reference:

http://en.wikipedia.org/wiki/Open_source

On Tue, May 3, 2011 at 11:21 AM, Ryan Lane  wrote:
>> This is how WMF staff treats volunteers:
>>
>> [21:17:23]   domas: and now I took your BSD idea, and didn't give 
>> you credit
>> [21:17:38]  * Ryan_Lane wins
>> [21:17:51]   FLAWLESS VICTORY
>> [21:17:55]   except for the IRC logs
>>
>
> You are evil Domas. For those interested, check the logs higher up,
> where I discuss licensing way before Domas forked the email thread. He
> steals my licensing idea, I steal his specific license. :D
>
> - Ryan
>
> ___
> Wikitech-l mailing list
> Wikitech-l@lists.wikimedia.org
> https://lists.wikimedia.org/mailman/listinfo/wikitech-l
>

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r87310]: New comment added

2011-05-03 Thread MediaWiki Mail
User "Krinkle" posted a comment on MediaWiki.r87310.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87310#c16518
Commit summary:

Adding sql to create table for article feedback stats relating to high/low 
article ratings; Adding maintenance script to periodically populate high/low 
article feedback stats table

Comment:

The 
[http://php.net/manual/en/class.invalidargumentexception.php 
InvalidArgumentException class] is in PHP core.

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Bugzilla Weekly Report

2011-05-03 Thread Krinkle
If it's not too much work, I'd definitly like to see this once as a  
trial.
Especially the inclusion of links and summaries is useful imho.

--
Krinkle

On 3 May 2011, at 18:43,  wrote:

> Fwiw a MeeGo contributor has created a script to retrieve weekly  
> information from http://bugs.meego.com and make these nice and  
> useful reports:
>
> http://www.octofish.net/meegobugjar/platform/
>
> Let me know if you are interested in an equivalent for  
> bugzilla.wikimedia.org
>
> --
> Quim
>
> On Monday, May 02, 2011 5:35 PM, Tomasz Finc wrote:
>> Indeed .. i remember writing this report for brion years ago.  
>> brings back
>> memories.
>>
>> --tomasz
>


___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] Release schedule for the rest of 2011 (was: Status of 1.17 & 1.18)

2011-05-03 Thread Platonides
I find fine planning to have a "normal", small release. But if the code
development lead to eg. a parser rewrite, that's fine too. It can get
in, or reverted for the branch if too close to the brach point.
As far as it gets reviewed in time, it shouldn't be a problem. (We are
going to get everything timely reviewed™ this time, right? ;) However,
if it gets unreviewed three months, with furhter changes dependant of
it, and is only looked at two weeks before the branching date (and
obviously finding issues), then such rewrite becomes a big problem.



___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l

[MediaWiki-CodeReview] [MediaWiki r87041]: New comment added

2011-05-03 Thread MediaWiki Mail
User "Krinkle" posted a comment on MediaWiki.r87041.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87041#c16517
Commit summary:

Fixes for IE7 (alignment of checkboxes due to double-margin bug on floated 
elements. The popular display:inline hack doesn't fix this. Removed the margin 
for now, was collapsed/invisible in most browsers anyway. Covered by the 
margins on the parent elements.

Comment:

This was reported as bug 28721 by the way.

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87310]: New comment added

2011-05-03 Thread MediaWiki Mail
User "Awjrichards" posted a comment on MediaWiki.r87310.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87310#c16516
Commit summary:

Adding sql to create table for article feedback stats relating to high/low 
article ratings; Adding maintenance script to periodically populate high/low 
article feedback stats table

Comment:

done.  thanks reedy! i've been forgetting to do this for a long time... 

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


[MediaWiki-CodeReview] [MediaWiki r87339]: New comment added

2011-05-03 Thread MediaWiki Mail
User "Bawolff" posted a comment on MediaWiki.r87339.

Full URL: http://www.mediawiki.org/wiki/Special:Code/MediaWiki/87339#c16515
Commit summary:

Fixes bug #28694: Set maxlength of revisiondelete comment to 100.

Comment:

Presumably this limit is due to limitation on db end? We should probably use 
the byteCounting js so that it works properly with multi-byte utf-8 characters 
properly (since the db limit would be a byte limit not a character limit), like 
is done in resources/mediawiki.special/mediawiki.special.movePage.js.

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] WYSIWYG and parser plans (was What is wrong with Wikia's WYSIWYG?)

2011-05-03 Thread Neil Harris
On 03/05/11 19:44, MZMcBride wrote:
> Chad wrote:
>> On Tue, May 3, 2011 at 2:15 PM, MZMcBride  wrote:
>>> I realize you have a dry wit, but I imagine this joke was lost on nearly
>>> everyone. You're not really suggesting that everyone who wants to parse
>>> MediaWiki wikitext compile and run HipHop PHP in order to do so.
>> And how is using the parser with HipHop going to be any more
>> difficult than using it with Zend?
> The point is that the wikitext and its parsing should be completely separate
> from MediaWiki/PHP/HipHop/Zend.
>
> I think some of the bigger picture is getting lost here. Wikimedia produces
> XML dumps that contain wikitext. For most people, this is the only way to
> obtain and reuse large amounts of content from Wikimedia wikis (especially
> as the HTML dumps haven't been re-created since 2008). There needs to be a
> way for others to be able to very easily deal with this content.
>
> Many people have suggested (with good reason) that this means that wikitext
> parsing needs to be reproducible in other programming languages. While
> HipHop may be the best thing since sliced bread, I've yet to see anyone put
> forward a compelling reason that the current state of affairs is acceptable.
> Saying "well, it'll soon be much faster for MediaWiki to parse" doesn't
> overcome the legitimate issues that re-users have (such as programming in a
> language other than PHP, banish the thought).
>
> For me, the idea that all that's needed is a faster parser in PHP is a
> complete non-starter.
>
> MZMcBride
>

I agree completely.

I think it cannot be emphasized enough that what's valuable about 
Wikipedia and other similar wikis is the hard-won _content_, not the 
software used to write and display it at any given, which is merely a 
means to that end.

Fashions in programming languages and data formats come and go, but the 
person-centuries of writing effort already embodied in Mediawiki's 
wikitext format needs to have a much longer lifespan: having a 
well-defined syntax for its current wikitext format will allow the 
content itself to continue to be maintained for the long term, beyond 
the restrictions of its current software or encoding format.

-- Neil


___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


[MediaWiki-CodeReview] [MediaWiki r87310]: New comment added, and revision status changed

2011-05-03 Thread MediaWiki Mail
User "Catrope" changed the status of MediaWiki.r87310.

Old Status: new
New Status: fixme

User "Catrope" also posted a comment on MediaWiki.r87310.

Full URL: 
https://secure.wikimedia.org/wikipedia/mediawiki/wiki/Special:Code/MediaWiki/87310#c16514
Commit summary:

Adding sql to create table for article feedback stats relating to high/low 
article ratings; Adding maintenance script to periodically populate high/low 
article feedback stats table

Comment:


+   public function formatTimestamp( $unix_time ) {
+   if ( !is_numeric( $unix_time )) {
+   throw new InvalidArgumentException( 'Timestamp must be 
numeric.' );
+   }
+   return date( 'Ymdhis', $unix_time );
+   }

We have this built-in as $dbw->timestamp() . Remember that 
different DBMSes have different timestamp formats. When converting timestamps 
for non-DB purposes, there's wfTimestamp() . Also, there is no 
InvalidArgumentException class that I can find.


+   'afshl_avg_ratings' => json_encode( $data[ 
'avg_ratings' ] ),

json_encode() is not guaranteed to be available or non-broken, use 
FormatJson::encode()


+   array( array( 'afshl_page_id', 
'afshl_avg_overall', 'afshl_avg_ratings', 'afshl_ts' )),

If this set of fields is supposed to form a unique combination, you have to add 
a UNIQUE index on it, or this replace call will work in Postgres but not in 
MySQL. Generally, the table doesn't have any indices other than the primary key.


+   array( 
+   'aa_page_id', 
+   'avg(aa_rating_value) as avg_rating'
+   ), 
+   'aa_timestamp > ' . $this->getTimestamp(),
+   __METHOD__,
+   array( 
+   'GROUP BY' => 'aa_page_id',
+   'ORDER BY' => 'avg_rating DESC',
+   'LIMIT' => '50',
+   )

This query sounds painful. There is no index on aa_timestamp, for one thing. 
I'm not sure what the index would have to be exactly in this case because the 
GROUP BY and ORDER BY are different, I'd have to look that up.


+   'aa_timestamp > ' . $this->getTimestamp() . ' && 
aa_page_id IN (' . $page_id . ')',

&& instead of AND in SQL? Does that even work? Also, 
you don't have to build your own IN(...) list, just use 
array( "aa_timestamp >= $blah", 'aa_page_id' => $arrayOfPageIDs )

___
MediaWiki-CodeReview mailing list
mediawiki-coderev...@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-codereview


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Ryan Lane
> This is how WMF staff treats volunteers:
>
> [21:17:23]   domas: and now I took your BSD idea, and didn't give 
> you credit
> [21:17:38]  * Ryan_Lane wins
> [21:17:51]   FLAWLESS VICTORY
> [21:17:55]   except for the IRC logs
>

You are evil Domas. For those interested, check the logs higher up,
where I discuss licensing way before Domas forked the email thread. He
steals my licensing idea, I steal his specific license. :D

- Ryan

___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] Licensing (Was: WYSIWYG and parser plans)

2011-05-03 Thread Domas Mituzas
Hi!

> I was just talking about this in IRC :). We could re-license the
> parser to be LGPL or BSD so that other implementations can use our
> parser more freely.

This is how WMF staff treats volunteers:

[21:17:23]   domas: and now I took your BSD idea, and didn't give 
you credit
[21:17:38]  * Ryan_Lane wins
[21:17:51]   FLAWLESS VICTORY
[21:17:55]   except for the IRC logs

Domas
___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


  1   2   >