Re: [Wikitech-l] Prefs removal

2012-10-09 Thread Krinkle
Also note that, as explained in more detail on the ticket[1], gadgetizing will 
be a bad idea. We might as well not remove it at all. A preference is a lot 
better than a gadget because (at least for now) its label will be localised a 
lot better, and more importantly: The option will show up in the relevant 
preferences section.

For reasons explained elsewhere, shipping gadgets by default with the Gadgets 
extension is not an option and generally counter-productive and bound to cause 
unwanted/unmaintained scripts to rot in wikis after being injected upon 
installation.

That's now how the Gadgets extension work, and imho it should stay that way.

Instead of gadgetization, a better option would be to move them into an 
extension (not the Gadgets extension). Which means the extension can:
* add it to the preferences section where it used to be
* use the same key as the old preference in core, so that users don't have to 
reset their preferences (as opposed to "gadget-foo").

Especially the latter is in my opinion a must-have for the smooth migration of 
any wiki that decides to install this "LegacyPreferences" extension after 
upgrading their MediaWiki-install.

Besides, most of the preferences discussed here aren't worth a gadget (I guess 
most communities will not want them in the preferences section after voting to 
have them disabled/removed from core). They don't add any significant features, 
only silly visual options that someone afraid of change insisted on in the past.

That is, of course, referring to preferences we would end up removing after 
some kind of consensus. I'm not talking about all preferences or any preference 
in particular .

In other words: If the story is "remove them from core, add as 
default-available[2] gadget". Then please, *please*, keep them in core. Because 
that wouldn't be an improvement over the current situation.

If we have good ground to remove them (because they're silly options that we 
don't want end-users to be thinking about), then we remove them. Don't move 
them from one junkyard to another.

-- Krinkle

[1] https://bugzilla.wikimedia.org/40346
[2] default-available != default-enabled

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


Re: [Wikitech-l] Prefs removal

2012-10-09 Thread Antoine Musso
Le 09/10/12 01:52, Erik Moeller a écrit :
> Do we have a more complete report than
> https://en.wikipedia.org/wiki/Wikipedia:Database_reports/User_preferences
> ? If not, could someone pull one? It would be ideal to not only have
> prefs listed by frequency, but to also exclude users from the set
> who've not been recently active.

We have the maintenance/userOptions.php script which can give usage for
all user preferences or just for a specific one. Example on my local
development wiki:

 $ php userOptions.php --usage gender
 Usage for  (default: 'unknown'):
  2 user(s): 'female'
  1 user(s): 'male'

 Done.
 $

It does not filter by user age though, but I guess that will be trivial
to implement by using `user.user_touched`.  Will be happy to review and
validate any change made made to improve that script.

-- 
Antoine "hashar" Musso


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


Re: [Wikitech-l] WebPlatform.org

2012-10-09 Thread praveenp
Webplatform skin design is not consistent and catchy for languages like 
Malayalam, Tamil or Hindi as for English. But what, they've enabled 
even Narayam. :-)


On Tuesday 09 October 2012 04:53:14 AM IST, Ryan Lane wrote:

Can you explain? I find this project amazing (converging and optimizing
documentation effort as opposed to keep building a dozen chapels and why not
starting a new, flashy one?). And I'm very happy to see that MediaWiki has
been put into use!

If the Wikimedia Foundation has got a significant involvement I think it
would be nice to share here and elsewhere. This site is going to be big in
no time if all those orgs indeed point their web developers there.



Sorry, that was me with my webplatform hat on. I've been helping them
with infrastructure. We have a few more extensions that haven't been
added to Gerrit yet. We plan on doing so sometime soon.

- 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


Re: [Wikitech-l] [Semediawiki-user] Maps and Semantic Maps 2.0 released!

2012-10-09 Thread Jeroen De Dauw
Hey,

> Nice  Looking forward to demos at SMWCon :)

There will indeed be demo's, see
http://www.semantic-mediawiki.org/wiki/SMWCon_Fall_2012/New_features_in_Maps_and_Semantic_Maps

> BTW, is Semantic Bundle going to be updated with the latest maps soon?

This depends, we've not seen a new Semantic Bundle for a while due to the
git migration, and no one seems to be willing to update the build scripts.
That should be rather simple though, so if any developers wants to help out
here...

> If not, are there any dependencies that will break if I upgrade to Maps
2.0?

Maps 2.0 requires Validator 0.5. So if you have any extensions that use
Validator, I'd recommend you get their latest version. There is a
compatibility layer that should prevent breakage, but updating is still
advisable. In particular Semantic MediaWiki and Semantic Result Formats.
Both these extensions have not seen a new release yet using this version of
Validator, but they are close to seeing a release, and should be pretty
stable at this point. If you don't want to run beta versions you'll be
better off waiting another month or so with upgrading your extensions.

I'd recommend the same for anyone using OpenLayers and wants high
stability, there are some non-trivial open issues which are also present in
the 2.0 release.

Cheers

--
Jeroen De Dauw
http://www.bn2vs.com
Don't panic. Don't be evil.
--
___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] Prefs removal

2012-10-09 Thread Chad
On Tue, Oct 9, 2012 at 3:53 AM, Krinkle  wrote:
> Instead of gadgetization, a better option would be to move them into an 
> extension (not the Gadgets extension). Which means the extension can:
> * add it to the preferences section where it used to be
> * use the same key as the old preference in core, so that users don't have to 
> reset their preferences (as opposed to "gadget-foo").

I'm not sure if making it a Gadget is a good idea (and you make
a good case that it's not), but this idea would be worse in many
cases. Many preferences, if removed from core, would require
a hook in order for LegacyPreferences to handle it. A hook that
we would then have to support for the foreseeable future.

-Chad

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


[Wikitech-l] Welcome Michelle Grover as QA to the Mobile Team!

2012-10-09 Thread Tomasz Finc
Greetings all,

I am pleased to announce that Michelle Grover joins WMF this week as a
Mobile QA contractor.

Michelle has worked as a Java Developer, Software Developer in Test,
Release Engineer for Adobe, and Mobile QA Automation Lead for
Crowdfusion (They developed The Daily, TMZ, Telepictures mobile
applications).  She's worked closely with agile teams (SCRUM and XP)
over the past 7 + years, Implemented Kanban and setup and configured
CI using Hudson,Team CIty and Cruise Control. She's been married 17
years and has a 6 year old son.  Currently lives in Monument, CO and
has spent a lot of time up in the mountains.

Michelle will help both the community and mobile team build out a
sound process for testing both the mobile web and our apps. The team
would like to welcome her and wish her success.

--tomasz

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


Re: [Wikitech-l] [Wmfall] Welcome Michelle Grover as QA to the Mobile Team!

2012-10-09 Thread Amir E. Aharoni
Welcome!

Prepare to a lot of weird bugs that affect weird languages :)

--
Amir Elisha Aharoni‏ ። אָמִיר אֱלִישָׁע אַהֲרוֹנִי
Localization developer‏ ። מְפַתֵּחַ תְּמִיכָה רַב־לְשׁוֹנִית
Wikimedia Foundation‏ ። קֶרֶן וִיקִימֶדְיָה


2012/10/9 Tomasz Finc :
> Greetings all,
>
> I am pleased to announce that Michelle Grover joins WMF this week as a
> Mobile QA contractor.
>
> Michelle has worked as a Java Developer, Software Developer in Test,
> Release Engineer for Adobe, and Mobile QA Automation Lead for
> Crowdfusion (They developed The Daily, TMZ, Telepictures mobile
> applications).  She's worked closely with agile teams (SCRUM and XP)
> over the past 7 + years, Implemented Kanban and setup and configured
> CI using Hudson,Team CIty and Cruise Control. She's been married 17
> years and has a 6 year old son.  Currently lives in Monument, CO and
> has spent a lot of time up in the mountains.
>
> Michelle will help both the community and mobile team build out a
> sound process for testing both the mobile web and our apps. The team
> would like to welcome her and wish her success.
>
> --tomasz
>
> ___
> Wmfall mailing list
> wmf...@lists.wikimedia.org
> https://lists.wikimedia.org/mailman/listinfo/wmfall

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

Re: [Wikitech-l] [Wmfall] Welcome Michelle Grover as QA to the Mobile Team!

2012-10-09 Thread Patrick Reilly
Welcome!

— Patrick

On Tue, Oct 9, 2012 at 3:19 PM, Amir E. Aharoni wrote:

> Welcome!
>
> Prepare to a lot of weird bugs that affect weird languages :)
>
> --
> Amir Elisha Aharoni‏ ። אָמִיר אֱלִישָׁע אַהֲרוֹנִי
> Localization developer‏ ። מְפַתֵּחַ תְּמִיכָה רַב־לְשׁוֹנִית
> Wikimedia Foundation‏ ። קֶרֶן וִיקִימֶדְיָה
>
>
> 2012/10/9 Tomasz Finc :
> > Greetings all,
> >
> > I am pleased to announce that Michelle Grover joins WMF this week as a
> > Mobile QA contractor.
> >
> > Michelle has worked as a Java Developer, Software Developer in Test,
> > Release Engineer for Adobe, and Mobile QA Automation Lead for
> > Crowdfusion (They developed The Daily, TMZ, Telepictures mobile
> > applications).  She's worked closely with agile teams (SCRUM and XP)
> > over the past 7 + years, Implemented Kanban and setup and configured
> > CI using Hudson,Team CIty and Cruise Control. She's been married 17
> > years and has a 6 year old son.  Currently lives in Monument, CO and
> > has spent a lot of time up in the mountains.
> >
> > Michelle will help both the community and mobile team build out a
> > sound process for testing both the mobile web and our apps. The team
> > would like to welcome her and wish her success.
> >
> > --tomasz
> >
> > ___
> > Wmfall mailing list
> > wmf...@lists.wikimedia.org
> > https://lists.wikimedia.org/mailman/listinfo/wmfall
>
> ___
> 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] Welcome Michelle Grover as QA to the Mobile Team!

2012-10-09 Thread Mark Holmquist

I am pleased to announce that Michelle Grover joins WMF this week as a
Mobile QA contractor.


Cool! It's always great to have more QA people around!

Welcome, and we hope to see you around the list and IRC! :)

--
Mark Holmquist
Software Engineer, Wikimedia Foundation
mtrac...@member.fsf.org
http://marktraceur.info

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


Re: [Wikitech-l] [Wmfall] Welcome Michelle Grover as QA to the Mobile Team!

2012-10-09 Thread Sumana Harihareswara
On 10/09/2012 03:17 PM, Tomasz Finc wrote:

> Michelle will help both the community and mobile team build out a
> sound process for testing both the mobile web and our apps. The team
> would like to welcome her and wish her success.

This is so rockin'. Welcome, Michelle! Looking forward to seeing what
you build and helping spread the word.

-- 
Sumana Harihareswara
Engineering Community Manager
Wikimedia Foundation

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


Re: [Wikitech-l] [Wmfall] Welcome Michelle Grover as QA to the Mobile Team!

2012-10-09 Thread Chris McMahon
I'd like an excuse to get to the Front Range, though, hopefully Michelle
and I could meet face-to-face at some point.  http://goo.gl/maps/6m5yz

It's been a real pleasure working with Michelle through the hiring process
and orientation, and I am looking forward to the QA staff doing some nifty
things in the very near future.

-Chris

On Tue, Oct 9, 2012 at 1:59 PM, Michelle Grover wrote:

> Thanks everyone! and Yup I join the CO "office" though Chris is pretty far
> away from where I live :)
>
>
> On Tue, Oct 9, 2012 at 1:25 PM, Sangeeta Prashar 
> wrote:
>
>> Great to have you on board Michelle!
>> Cheers,
>> Sangeeta
>>
>>
>> On Tue, Oct 9, 2012 at 12:17 PM, Tomasz Finc  wrote:
>>
>>> Greetings all,
>>>
>>> I am pleased to announce that Michelle Grover joins WMF this week as a
>>> Mobile QA contractor.
>>>
>>> Michelle has worked as a Java Developer, Software Developer in Test,
>>> Release Engineer for Adobe, and Mobile QA Automation Lead for
>>> Crowdfusion (They developed The Daily, TMZ, Telepictures mobile
>>> applications).  She's worked closely with agile teams (SCRUM and XP)
>>> over the past 7 + years, Implemented Kanban and setup and configured
>>> CI using Hudson,Team CIty and Cruise Control. She's been married 17
>>> years and has a 6 year old son.  Currently lives in Monument, CO and
>>> has spent a lot of time up in the mountains.
>>>
>>> Michelle will help both the community and mobile team build out a
>>> sound process for testing both the mobile web and our apps. The team
>>> would like to welcome her and wish her success.
>>>
>>> --tomasz
>>>
>>> ___
>>> Wmfall mailing list
>>> wmf...@lists.wikimedia.org
>>> https://lists.wikimedia.org/mailman/listinfo/wmfall
>>>
>>
>>
>>
>> --
>> *Sangeeta Prashar*
>> *Recruiting Manager
>> spras...@wikimedia.org *
>> *415-839-6885 ext. 6829*
>> *
>> * "Just Wikipedia it. "
>>
>> ___
>> Wmfall mailing list
>> wmf...@lists.wikimedia.org
>> https://lists.wikimedia.org/mailman/listinfo/wmfall
>>
>>
>
> ___
> Wmfall mailing list
> wmf...@lists.wikimedia.org
> https://lists.wikimedia.org/mailman/listinfo/wmfall
>
>
___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l


Re: [Wikitech-l] Welcome Michelle Grover as QA to the Mobile Team!

2012-10-09 Thread Yuvi Panda
W00t no more intercontinental debugging yay!

Welcome, Michelle! :)

-- 
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] Prefs removal

2012-10-09 Thread Federico Leva (Nemo)
Just reiterating that discussing individual preferences (not to mention 
touching them) is a very bad idea before we have good criteria of some 
sort to evaluate them.
	Usage stats are a requirement but such criteria are not only about them 
because some preferences may be of small harm for many and of great use 
for "a few" (like thousands or dozens of thousands of users) who may 
also happen to be the most active users, making such prefs a net positive.

Oh, and of course "gadgetization of preferences" means (almost) nothing.

Nemo

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


Re: [Wikitech-l] Prefs removal

2012-10-09 Thread William Allen Simpson

On 10/9/12 5:25 PM, Federico Leva (Nemo) wrote:

Just reiterating that discussing individual preferences (not to mention 
touching them) is a very bad idea before we have good criteria of some sort to 
evaluate them.
 Usage stats are a requirement but such criteria are not only about them because some 
preferences may be of small harm for many and of great use for "a few" (like 
thousands or dozens of thousands of users) who may also happen to be the most active
users, making such prefs a net positive.
 Oh, and of course "gadgetization of preferences" means (almost) nothing.


Admittedly, having started circa 2003, I've not revisited or reset most of
those settings very often -- and didn't notice some even existed.

But I don't usually run with JavaScript (rather, I use NoScript by default),
so "gadgetization" seems like a terrible idea to me!

You're not saving anything by moving from one place to another.  It's just
another chance for further bit-rot.


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


[Wikitech-l] subst: and Parser::preprocess not sending correct frame to tag extensions?

2012-10-09 Thread Andrew Fitzgerald
I'm not sure if this is by design, but it seems when using a tag extension
inside of a template, the tag extension is not passed the correct frame
information about the template when using subst: or Parser::preprocess

For example:  The contents of Template:Test are:


{{{1}}}


When using  {{subst:Test|Hello World}}  You get


{{{1}}}


Even if SomeTagExtension is correctly using $parser->recursiveTagParse.

It seems the $frame value does not contain the template variables when
using subst or preprocess.  The frame object type is PPFrame_DOM instead of
PPTemplateFrame_DOM.

Am I doing something wrong, is this by design, or is it a bug?

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


Re: [Wikitech-l] subst: and Parser::preprocess not sending correct frame to tag extensions?

2012-10-09 Thread Victor Vasiliev

On 10/09/2012 06:52 PM, Andrew Fitzgerald wrote:

I'm not sure if this is by design, but it seems when using a tag extension
inside of a template, the tag extension is not passed the correct frame
information about the template when using subst: or Parser::preprocess

For example:  The contents of Template:Test are:


{{{1}}}


When using  {{subst:Test|Hello World}}  You get


{{{1}}}


Even if SomeTagExtension is correctly using $parser->recursiveTagParse.

It seems the $frame value does not contain the template variables when
using subst or preprocess.  The frame object type is PPFrame_DOM instead of
PPTemplateFrame_DOM.

Am I doing something wrong, is this by design, or is it a bug?

Thanks
Andrew
___
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Extension tags are intentionally shielded from the parser and the 
preprocessor. The lack of PSTs in extension tags is a long-standing bug: 
< https://bugzilla.wikimedia.org/show_bug.cgi?id=2700>.


—Victor.

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


[Wikitech-l] Scribunto API

2012-10-09 Thread Victor Vasiliev

Hello,

Scribunto currently has only some basic APIs to do essential things like 
access the parser frame and write things into debug log. Intending to 
change it, I wrote an API specification for an in-script API, which Lua 
scripts should be able to use in order to access certain MediaWiki 
features and interfaces. I have previously submitted this specification 
during the hackathon early this summer to the mailing list:


< https://www.mediawiki.org/wiki/Extension:Scribunto/API_specification>

Now I have collected the feedback, fixed the specification accordingly 
and intend to move on and actually implement it, expect for the mw.query 
part (which require more benchmarking and more design considerations). 
If you have comments regarding the specification, I would highly 
appreciate them now, before I actually write the code.


—Victor.

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


Re: [Wikitech-l] Prefs removal

2012-10-09 Thread MZMcBride
William Allen Simpson wrote:
> On 10/9/12 5:25 PM, Federico Leva (Nemo) wrote:
>> Just reiterating that discussing individual preferences (not to mention
>> touching them) is a very bad idea before we have good criteria of some sort
>> to evaluate them.
>>  Usage stats are a requirement but such criteria are not only about them
>> because some preferences may be of small harm for many and of great use for
>> "a few" (like thousands or dozens of thousands of users) who may also happen
>> to be the most active
>> users, making such prefs a net positive.
>>  Oh, and of course "gadgetization of preferences" means (almost) nothing.
>> 
> Admittedly, having started circa 2003, I've not revisited or reset most of
> those settings very often -- and didn't notice some even existed.
> 
> But I don't usually run with JavaScript (rather, I use NoScript by default),
> so "gadgetization" seems like a terrible idea to me!
> 
> You're not saving anything by moving from one place to another.  It's just
> another chance for further bit-rot.

The virtue of gadgetization comes from the idea that MediaWiki, following
the development of Wikipedia, contains a number of user preferences that
were tailored to a specific problem or a specific need on (the English)
Wikipedia that might be better handled nowadays by a local solution (such as
a JavaScript gadget). Yes, of course, gadgetization ultimately moves the
user preference from one tab to another and there are still code maintenance
costs, but gadgetization can reduce the complexity of MediaWiki (in terms of
code and UI clutter). I think the usage stats will be illuminating.

And, of course, having global (Wikimedia-wide) gadgets or a gadgets
repository for any MediaWiki installation to use would mitigate some of the
other pitfalls of gadgetization. That doesn't mean it's evil, that just
means gadgetization needs to be used sensibly. Much like anything else.

MZMcBride



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


[Wikitech-l] HTML5 fallout: type=email now flows to browser, unexpected validation follows

2012-10-09 Thread S Page
Some MediaWiki forms have elements with type=email.  Up until 2 weeks
ago, en-wiki would strip that out as it's invalid in old-school HTML.
But now that $wgHtml5 is true, it flows to the browser.

A nifty result is mobile browsers will use a custom on-screen keyboard
with @ and .com in it for type=email. A new result is HTML5 browsers
will not submit a form with an invalid e-mail in it.  A strange result
is, Special:ChangeEmail [1] already does client-side validation of
e-mail, so users on HTML5 browsers get duelling tooltips!  (See
screenshot [2] attached to Bug 40909 [3].)

Other MediaWiki forms that use Html or HTMLForm to specify HTML5 field
types will also have behavior changes.  If you don't want the
browser's validation, Munaf Assaf figured out you can disable it [4]
or you can sort-of override the styles for the browser's validation
tooltip [5]. Does anyone have experience of doing client-side
validation in conjunction with the browsers' own validation?  Ideally
a jQuery plug-in would build up client-side validation on top of the
browser's HTML5 support while hiding their big differences in
implementation.

Thanks in advance,

[1] https://en.wikipedia.org/wiki/Special:ChangeEmail
[2] http://bug-attachment.wikimedia.org/attachment.cgi?id=11173
[3] https://bugzilla.wikimedia.org/show_bug.cgi?id=40909
[4] 
http://www.w3.org/TR/html5/attributes-common-to-form-controls.html#attr-fs-novalidate
[5] http://jsfiddle.net/trixta/qTV3g/

-- 
=S Page  software engineer on E3

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


Re: [Wikitech-l] Merging the ContentHandler into master

2012-10-09 Thread Niklas Laxström
On 8 October 2012 19:33, Daniel Kinzler  wrote:
> Hi all!
>
> As discussed last week with Rob, I have no prepared a merge request that
> introduces the ContentHandler into MediaWiki core. This is a major building
> block for the Wikidata project. I hope the merge will be completed soon, since
> this will grow stale fast.
>
> The merge request is here: https://gerrit.wikimedia.org/r/27194
>
> Since Gerrit doesn't show nice diffs for merges,
> here's a squashed version: https://gerrit.wikimedia.org/r/27191
>
> Please let us know very soon if there are any serious problems. The branch has
> been reviewed before, and I resolved several remaining issues over the last
> days, so I hope there are no more big issues left.

And it's merged. Congrats!

I'm sure it is just an oversight, but some of the review comments in
[1] were not addressed before the merge. For example MessagesEn.php (a
fix has been submitted by someone else) and MessageCache.php [2].

[1] https://gerrit.wikimedia.org/r/#/c/25736/1 (took me a while to
find that change anymore)
[2] I see now that I misunderstood the code, but at least the comment
needs to be updated.

  -Niklas

-- 
Niklas Laxström

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

Re: [Wikitech-l] Skin pages on MW.org, and Skin repos in Gerrit

2012-10-09 Thread Daniel Friesen

On Wed, 26 Sep 2012 00:08:14 -0700, Krinkle  wrote:


A few random points:

We should get some basic structure conventions in place before stuff  
goes wild.


I like the idea of installing a Skin as an extension, but placing it in  
the core skins directory
feels wrong because it currently does auto-discovery to some degree, and  
of course it means
wgExtensionAssetsPath can't be used as skins as it is outside that  
directory view.

Well, the outdated auto-discovery just applies to the skins/*.php pattern.
It doesn't really affect this pattern at all.

Actually on that topic. I haven't really thought of it much. But I wonder
how long we should keep doing that. Any 3rd party   skin using that
auto-loading is inherently either an outdated not using RL or uses a hack
to do so. I wonder if we should remove the auto-loading in a few releases.

The way the skins in mediawiki/extensions/skins.git do it is by simply  
being installed as a completely valid extension.


Another problem I found in the current setup is that its a bit  
counter-intuitive how to manage the directory structure for developers.  
I mean, most of us probably have this:


- mediawiki
- /core (clone mediawiki/core.git)
- /extensions (directory with clones of individual extensions or clone  
of mediawiki/extensions.git tracking repo)


* Set $wgExtensionAssetsPath accordingly
* Use require_once( "$IP/../extensions/Foo/Foo.php"); (whether or not  
via a tmp variable)

  instead of require_once( "$IP/extensions/Foo/Foo.php");

But then, where to clone a skins repository (or mediawiki/skins.git  
tracking repo)?

Interesting problem. I've been using the mediawiki/extensions/ repo. But
I've been creating a symlink whenever I actually install something. You
generally don't actually need a path to something till you actually use
it. And you never really just install every extension (you wouldn't have
the individual configuration) so creating a symlink for each one I
actually use hasn't been an issue.

Right now one way to work might be to do things the other way around.
Instead of symlinking skin folders into skins/, symlink the few core stuff
into the /skins tracking repo then point wgStylePath to the tracking repo.

Though yes we might want to find another solution to that issue.

Wherever it is, it needs to be scalable to more complex installations. A  
directory "skins" next to "extensions" next to "core" is not feasible as  
the paths would be incorrect (it wouldn't be in wgExtensionAssetsPath,  
nor in wgStylePath).


I think it'd be a lot easier if skins were installed as extensions, not  
as a (currently, unhandleable) hybrid.

Except skins aren't extensions.
If you try to make a skin as an actual extension some skin features like
getSkinStylePath and patterns using stylename don't work.
And now instead of skins all being located in the same area they're
scattered about. Some skins in an actual skin dir. While other skins are
shoved into extensions/ among a huge pile of non-skins that make things
impractical to handle.

Tbh, while it's not typically acknowledged we pretty much have this same
issue in extensions. We only skirt by and say it's not an issue because
few extensions use assets and we don't have built-in extensions that are
always included.
We have wgExtensionAssetsPath but that's frankly not enough. That's not
flexibility that's a restriction saying that all extensions must be in the
same directory. Which goes against the reality that someone may want to
put some common extensions into a common folder, and some other extensions
into a local folder, or maybe a user folder separate from the global
extensions.
What we may want to consider doing is fixing our assets and skin paths so
that different extensions/skins can properly have different paths.

Putting skins inside of skins/ actually has a big advantage I want to take
advantage of.
Right now it's true that this skin pattern works the same way as an
extension. But it's not going to stay that way in the long run.
Skins are different than extensions. For extensions you need a lot of
flexibility and control. Almost no extension is similar to another so you
want complete control over all the configuration. But for skins you use
the same patterns over and over. You setup the same things in each skin.
The plan is to slowly start auto detecting conventions. Replace
require_once with a method to abstractly install skins. Shorten the code
needed to register modules. Start auto registering skin classes and i18n
when we see certain patterns. Start moving stuff from php into an
extension definition file.

Maybe as proper extensions in mediawiki/extensions/SkinName.git (and  
drop mediawiki/skins/*.git).
That would be the easier, though it is also nice to keep extensions and  
skins separate enough in that anything that adds preferences, special  
pages etc. is in a separate optional repository.


Or perhaps agree that skins should be installed from  
mediawiki/skins/*.git repositories, bu

Re: [Wikitech-l] HTML5 fallout: type=email now flows to browser, unexpected validation follows

2012-10-09 Thread Daniel Friesen

On Tue, 09 Oct 2012 21:29:45 -0700, S Page  wrote:


Some MediaWiki forms have elements with type=email.  Up until 2 weeks
ago, en-wiki would strip that out as it's invalid in old-school HTML.
But now that $wgHtml5 is true, it flows to the browser.

A nifty result is mobile browsers will use a custom on-screen keyboard
with @ and .com in it for type=email. A new result is HTML5 browsers
will not submit a form with an invalid e-mail in it.  A strange result
is, Special:ChangeEmail [1] already does client-side validation of
e-mail, so users on HTML5 browsers get duelling tooltips!  (See
screenshot [2] attached to Bug 40909 [3].)

Other MediaWiki forms that use Html or HTMLForm to specify HTML5 field
types will also have behavior changes.  If you don't want the
browser's validation, Munaf Assaf figured out you can disable it [4]
or you can sort-of override the styles for the browser's validation
tooltip [5]. Does anyone have experience of doing client-side
validation in conjunction with the browsers' own validation?  Ideally
a jQuery plug-in would build up client-side validation on top of the
browser's HTML5 support while hiding their big differences in
implementation.


Bind an event handler for the browser's 'invalid' event. When fired use
e.preventDefault() and apply your own invalid form input styling.
Canceling the event will not disable the browser's validation (the form
will still not be submitted) but it will disable the browser UI allowing
you to do the styling yourself.

It would actually be nice to re-do our validation. I'd like to see more of
our forms that validate input using things like required and pattern to do
validation that works using native UI when JS is disabled.

The ideal would probably be:
- Our server side form setups that do validation will provide ways to
declare simple validation like required and pattern (as opposed to only
offering a validity callback). These we will start exposing natively.
- We offer a wrapper lib around the native validation API perhaps with
some extras to abstract away some of the things about validation that
aren't exposed natively. (eg: I'm thinking well probably want a custom way
to define a validation callback instead of individual code having to
manually listen to input. Also there's probably no 'valid' event to remove
custom UI)
- In that wrapper lib we include a shim that will implement pattern and
require handling in place of the native browser in browsers that haven't
implemented the form validation API yet.
- The lib will include a way to do custom validation so we don't need
other code to do that.
- We should also take the notion of "Expensive validation" into account in
the api. Some type of custom validation that depends on something
expensive like a HTTP call so we have a native way to ask to fire an
expensive validation callback with a promise but only after the library
delays waiting to make sure the user isn't still typing the stuff in.
- Using that expensive validation callbacks we should offer the option in
some of our form defining code to automatically run a server side
validation callback in the same form that defined the form output. Using
that we could define a single username validation method that would
automatically do server side form validation, output validation errors
server side, and at the same time be used by a client side callback to
tell you that the username is reserved before you even submit the form.
(Though this might require an entirely new Form api anyways)
- On top of that lib we'll include an extra MW specific lib that cancels
out the native UI and does validation UI the way we're planning with the
style guide (https://www.mediawiki.org/wiki/Style_guide/Forms)
- We'll have a way for individual skins to hook into that lib so they can
override the way that the form validation UI is done.

In the absolute ideal. Even all our custom validity will be done entirely
using the wrapper lib around the native form validation. Such that if for
some reason we do not load the lib in charge of using the wrapper lib to
create our custom validation UI (or if a skin finds some way to say it
does not want us to load that UI) the entire system still works by using
the browser's native validation UI.


Thanks in advance,

[1] https://en.wikipedia.org/wiki/Special:ChangeEmail
[2] http://bug-attachment.wikimedia.org/attachment.cgi?id=11173
[3] https://bugzilla.wikimedia.org/show_bug.cgi?id=40909
[4]  
http://www.w3.org/TR/html5/attributes-common-to-form-controls.html#attr-fs-novalidate

[5] http://jsfiddle.net/trixta/qTV3g/




--
~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