What: “Mobile” bug triage When: Wednesday, August 17, 17:00UTC Time zone conversion: http://hexm.de/5r Where: #wikimedia-dev on freenode Use http://webchat.freenode.net/ if you don't have an IRC client
This Wednesday, I'll be conducting a bug triage of bugs related to mobile devices and the new MobileFrontend Extension. In order to get as much non-WMF interest as possible, I'm announcing the triage two days early.
If you have a wiki that you would like to add mobile support to, then this is the triage for you! You'll have a chance to talk to developers about the issues and, if you can help with PHP development, you'll be able to see which bugs are most important to you to be fixed and even get some hints to begin diving into the code yourself.
The MobileFrontent extension (http://www.mediawiki.org/wiki/Extension:MobileFrontend) is about to go into a test deployment on Wikipedia, so this is the perfect time to get involved!
Here is are the bugs that I'm going to be choosing from for this triage. If you want to make sure a particular mobile-related bug is addressed in this Triage, email me the bug # and then join us on Wednesday. If you see something here that you'd like to try to fix, even better!
http://bugzilla.wikimedia.org/20030 -- ISBN page - world map doesn't work on iPhone in Wikipedia Mobile
http://bugzilla.wikimedia.org/24457 -- Icon for Wikipedia Mobile for iPhone 4
http://bugzilla.wikimedia.org/28862 -- Javascript not working for blackberry show/hide section collapse disabled
http://bugzilla.wikimedia.org/28905 -- User agent strings (for UIWebView and NSURLConnection requests) need to be updated
http://bugzilla.wikimedia.org/29016 -- Disabling mobile view throws us to start page
http://bugzilla.wikimedia.org/29361 -- Long execution time for extension init
http://bugzilla.wikimedia.org/29401 -- Need a way to detect age of WURFL db and possible updates
http://bugzilla.wikimedia.org/29505 -- Removing dependance on jQuery for devices using NetFront
http://bugzilla.wikimedia.org/29634 -- css on hebrew wikipedia
http://bugzilla.wikimedia.org/29952 -- Galaxy S2/Android/Firefox not automatically redirected to en.m.wikipedia.org
http://bugzilla.wikimedia.org/30063 -- MTC 635 not correctly rendering show/hide on smartphone layout
http://bugzilla.wikimedia.org/30118 -- Custom project icon for search
http://bugzilla.wikimedia.org/30142 -- Don't manually build URLs
http://bugzilla.wikimedia.org/30168 -- Wikipedia Mobile 2.1 (iOS) reportedly crashing
http://bugzilla.wikimedia.org/30190 -- Not properly detecting Nintendo DS UA
http://bugzilla.wikimedia.org/30256 -- Need to properly detect Android 2.3 tablets
http://bugzilla.wikimedia.org/30293 -- "View this page on regular Wikipedia" disables mobile redirect
http://bugzilla.wikimedia.org/30306 -- Editing on mobile site
http://bugzilla.wikimedia.org/30336 -- 'Classic Version Permanent Change' button is useless : it works exactly like NON permanent change
http://bugzilla.wikimedia.org/30356 -- New gateway has broken layout for opera mini
Happy Hacking!
Mark.
Mark A. Hershberger wrote:
This Wednesday, I'll be conducting a bug triage of bugs related to mobile devices and the new MobileFrontend Extension. In order to get as much non-WMF interest as possible, I'm announcing the triage two days early.
If you have a wiki that you would like to add mobile support to, then this is the triage for you! You'll have a chance to talk to developers about the issues and, if you can help with PHP development, you'll be able to see which bugs are most important to you to be fixed and even get some hints to begin diving into the code yourself.
The MobileFrontend extension (http://www.mediawiki.org/wiki/Extension:MobileFrontend) is about to go into a test deployment on Wikipedia, so this is the perfect time to get involved!
Here is are the bugs that I'm going to be choosing from for this triage. If you want to make sure a particular mobile-related bug is addressed in this Triage, email me the bug # and then join us on Wednesday. If you see something here that you'd like to try to fix, even better!
Is the MobileFrontend extension development being monitored or reviewed by any senior developers? I took a look at the code today and it seemed incredibly strange. Some of its layout and architecture doesn't seem to be consistent with MediaWiki conventions/style and a lot of code (particularly variable assignments) looked duplicative.
Some revisions are also apparently being pushed live without any outside review.
This isn't particularly related to the bug triage, per se, I realize.
MZMcBride
On Aug 15, 2011, at 6:27 PM, MZMcBride z@mzmcbride.com wrote:
Mark A. Hershberger wrote:
This Wednesday, I'll be conducting a bug triage of bugs related to mobile devices and the new MobileFrontend Extension. In order to get as much non-WMF interest as possible, I'm announcing the triage two days early.
If you have a wiki that you would like to add mobile support to, then this is the triage for you! You'll have a chance to talk to developers about the issues and, if you can help with PHP development, you'll be able to see which bugs are most important to you to be fixed and even get some hints to begin diving into the code yourself.
The MobileFrontend extension (http://www.mediawiki.org/wiki/Extension:MobileFrontend) is about to go into a test deployment on Wikipedia, so this is the perfect time to get involved!
Here is are the bugs that I'm going to be choosing from for this triage. If you want to make sure a particular mobile-related bug is addressed in this Triage, email me the bug # and then join us on Wednesday. If you see something here that you'd like to try to fix, even better!
Is the MobileFrontend extension development being monitored or reviewed by any senior developers?
Yes, it has been reviewed.
I took a look at the code today and it seemed incredibly strange.
Could you send along some examples please.
Some of its layout and architecture doesn't seem to be consistent with MediaWiki conventions/style and a lot of code (particularly variable assignments) looked duplicative.
Can you please provide an example.
Some revisions are also apparently being pushed live without any outside review.
Yes, this is known. Every effort has been made to get eyes on every change, but some things have been pushed quickly for testing and to meet our schedule for the opt-in launch.
This isn't particularly related to the bug triage, per se, I realize.
Thanks, for your feedback.
MZMcBride
Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
On Tue, Aug 16, 2011 at 11:45 AM, Patrick Reilly preilly@wikimedia.org wrote:
Some revisions are also apparently being pushed live without any outside review.
Yes, this is known. Every effort has been made to get eyes on every change, but some things have been pushed quickly for testing and to meet our schedule for the opt-in launch.
I was under the view that all code that went live on the cluster had to be reviewed in CR by someone else for security reasons, has this since changed?
On Aug 15, 2011, at 6:54 PM, "K. Peachey" p858snake@gmail.com wrote:
On Tue, Aug 16, 2011 at 11:45 AM, Patrick Reilly preilly@wikimedia.org wrote:
Some revisions are also apparently being pushed live without any outside review.
Yes, this is known. Every effort has been made to get eyes on every change, but some things have been pushed quickly for testing and to meet our schedule for the opt-in launch.
I was under the view that all code that went live on the cluster had to be reviewed in CR by someone else for security reasons, has this since changed?
No.
Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Patrick Reilly wrote:
On Aug 15, 2011, at 6:27 PM, MZMcBride z@mzmcbride.com wrote:
Is the MobileFrontend extension development being monitored or reviewed by any senior developers?
Yes, it has been reviewed.
By whom?
I took a look at the code today and it seemed incredibly strange.
Could you send along some examples please.
The use of a views directory containing .html.php files stuck out to me. As far as I know, this is the only extension in Wikimedia's SVN repo using this type of code structure. It looks like a holdover from the old Ruby code. Is that right? Is it going to be rewritten?
Some of its layout and architecture doesn't seem to be consistent with MediaWiki conventions/style and a lot of code (particularly variable assignments) looked duplicative.
Can you please provide an example.
Variables such as $randomButton are defined four times in the same file (extensions/MobileFrontend/MobileFrontend.php). I don't know too much about PHP, but it seemed very strange. Is there a reason for the duplication? Could it be reduced?
In general, the URL parameters are odd. I'm not sure if the English Wikipedia is running the newest code, but if you visit a URL such as http://en.wikipedia.org/w/index.php?title=Main_Page&useFormat=mobile, none of the links within it maintain the &useFormat parameter, including and especially the links at the bottom. If you click one of the links at the bottom such as "enable images on the mobile site," it removes all parameters including the ?title= parameter.
Rather than something sane and predictable for the URL parameter to view the standard (non-mobile) site (such as &useFormat=standard), the code uses ?mAction=view_normal_site.
As I commented in CodeReview today, a boolean parameter (?disableImages=1) has now been complemented with a completely separate parameter (?enableImages=1) rather than using ?disableImages=0, which I find to be very strange.
The HTML at the bottom of the page at http://en.wikipedia.org/w/index.php?title=Main_Page&useFormat=mobile appears to also be completely invalid (pasted below):
---- <div id='copyright'>Text is available under the <a rel="license" href="http://en.wikipedia.org/wiki/Wikipedia:Text_of_Creative_Commons_Attrib ution-ShareAlike_3.0_Unported_License">Creative Commons Attribution-ShareAlike License</a><a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/" style="display:none;"></a>; additional terms may apply. See <a href="http://wikimediafoundation.org/wiki/Terms_of_use">Terms of use</a> for details.<br/> Wikipedia® is a registered trademark of the <a href="http://www.wikimediafoundation.org/">Wikimedia Foundation, Inc.</a>, a non-profit organization.<br /></li><li class="noprint"><a class='internal' href="http://en.wikipedia.org/wiki/Wikipedia:Contact_us">Contact us</a></div> </div> ----
As far as I can see, the code is defining list items without specifying a <ul> or <ol> pair. One of the <li> elements is unclosed. And there's also some very strange display:none; code in this snippet.
All of this seems very odd and quirky. I believe some of this quirkiness would be mitigated by using pre-built functions and following established coding styles, rather than using DIY templates.
Again, I'm wondering which senior developer (or even non-senior developer) is reviewing this code. Some clarification on that would be appreciated.
I've probably written about ten lines of PHP in my life, so feel free to tell me off if these comments are out of left field and/or don't make any sense. These were just my observations from reading through some of the code today.
Some revisions are also apparently being pushed live without any outside review.
Yes, this is known. Every effort has been made to get eyes on every change, but some things have been pushed quickly for testing and to meet our schedule for the opt-in launch.
It's incredibly dangerous to push out code without at least cursory outside review. It's an enormous risk you're taking, though it's apparently yours to take. It's a very bad situation, in my opinion.
MZMcBride
I'll let Patrick respond to the more technical questions but Brion Vibber has been doing the majority of the reviews for this. He's been helped by Reedy and Aaron for some of the revisions as well.
--tomasz
On Mon, Aug 15, 2011 at 8:15 PM, MZMcBride z@mzmcbride.com wrote:
Patrick Reilly wrote:
On Aug 15, 2011, at 6:27 PM, MZMcBride z@mzmcbride.com wrote:
Is the MobileFrontend extension development being monitored or reviewed by any senior developers?
Yes, it has been reviewed.
By whom?
I took a look at the code today and it seemed incredibly strange.
Could you send along some examples please.
The use of a views directory containing .html.php files stuck out to me. As far as I know, this is the only extension in Wikimedia's SVN repo using this type of code structure. It looks like a holdover from the old Ruby code. Is that right? Is it going to be rewritten?
Some of its layout and architecture doesn't seem to be consistent with MediaWiki conventions/style and a lot of code (particularly variable assignments) looked duplicative.
Can you please provide an example.
Variables such as $randomButton are defined four times in the same file (extensions/MobileFrontend/MobileFrontend.php). I don't know too much about PHP, but it seemed very strange. Is there a reason for the duplication? Could it be reduced?
In general, the URL parameters are odd. I'm not sure if the English Wikipedia is running the newest code, but if you visit a URL such as http://en.wikipedia.org/w/index.php?title=Main_Page&useFormat=mobile, none of the links within it maintain the &useFormat parameter, including and especially the links at the bottom. If you click one of the links at the bottom such as "enable images on the mobile site," it removes all parameters including the ?title= parameter.
Rather than something sane and predictable for the URL parameter to view the standard (non-mobile) site (such as &useFormat=standard), the code uses ?mAction=view_normal_site.
As I commented in CodeReview today, a boolean parameter (?disableImages=1) has now been complemented with a completely separate parameter (?enableImages=1) rather than using ?disableImages=0, which I find to be very strange.
The HTML at the bottom of the page at http://en.wikipedia.org/w/index.php?title=Main_Page&useFormat=mobile appears to also be completely invalid (pasted below):
<div id='copyright'>Text is available under the <a rel="license" href="http://en.wikipedia.org/wiki/Wikipedia:Text_of_Creative_Commons_Attrib ution-ShareAlike_3.0_Unported_License">Creative Commons Attribution-ShareAlike License</a><a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/" style="display:none;"></a>; additional terms may apply. See <a href="http://wikimediafoundation.org/wiki/Terms_of_use">Terms of use</a> for details.<br/> Wikipedia® is a registered trademark of the <a href="http://www.wikimediafoundation.org/">Wikimedia Foundation, Inc.</a>, a non-profit organization.<br /></li><li class="noprint"><a class='internal' href="http://en.wikipedia.org/wiki/Wikipedia:Contact_us">Contact us</a></div> </div> ----
As far as I can see, the code is defining list items without specifying a
<ul> or <ol> pair. One of the <li> elements is unclosed. And there's also some very strange display:none; code in this snippet.
All of this seems very odd and quirky. I believe some of this quirkiness would be mitigated by using pre-built functions and following established coding styles, rather than using DIY templates.
Again, I'm wondering which senior developer (or even non-senior developer) is reviewing this code. Some clarification on that would be appreciated.
I've probably written about ten lines of PHP in my life, so feel free to tell me off if these comments are out of left field and/or don't make any sense. These were just my observations from reading through some of the code today.
Some revisions are also apparently being pushed live without any outside review.
Yes, this is known. Every effort has been made to get eyes on every change, but some things have been pushed quickly for testing and to meet our schedule for the opt-in launch.
It's incredibly dangerous to push out code without at least cursory outside review. It's an enormous risk you're taking, though it's apparently yours to take. It's a very bad situation, in my opinion.
MZMcBride
Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Tomasz Finc wrote:
I'll let Patrick respond to the more technical questions but Brion Vibber has been doing the majority of the reviews for this. He's been helped by Reedy and Aaron for some of the revisions as well.
[19:33:57] <Myra> brion: Have you been reviewing MobileFrontend? [19:34:05] <brion> Myra, nope
http://toolserver.org/~mwbot/logs/%23mediawiki/20110815.txt
MZMcBride
On Tue, Aug 16, 2011 at 3:36 AM, MZMcBride z@mzmcbride.com wrote:
Tomasz Finc wrote:
I'll let Patrick respond to the more technical questions but Brion Vibber has been doing the majority of the reviews for this. He's been helped by Reedy and Aaron for some of the revisions as well.
[19:33:57] <Myra> brion: Have you been reviewing MobileFrontend? [19:34:05] <brion> Myra, nope
Brion did indeed provide the original code review of the Mobile Frontend extension. It has not changed significantly since that time.
He has NOT been providing ongoing reviews since that time.
http://toolserver.org/~mwbot/logs/%23mediawiki/20110815.txt
MZMcBride
Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
On Tue, Aug 16, 2011 at 3:25 AM, Tomasz Finc tfinc@wikimedia.org wrote:
I'll let Patrick respond to the more technical questions but Brion Vibber has been doing the majority of the reviews for this. He's been helped by Reedy and Aaron for some of the revisions as well.
--tomasz
On Mon, Aug 15, 2011 at 8:15 PM, MZMcBride z@mzmcbride.com wrote:
Patrick Reilly wrote:
On Aug 15, 2011, at 6:27 PM, MZMcBride z@mzmcbride.com wrote:
Is the MobileFrontend extension development being monitored or reviewed by any senior developers?
Yes, it has been reviewed.
By whom?
Please see Tomasz's comment.
I took a look at the code today and it seemed incredibly strange.
Could you send along some examples please.
The use of a views directory containing .html.php files stuck out to me. As far as I know, this is the only extension in Wikimedia's SVN repo using this type of code structure. It looks like a holdover from the old Ruby code. Is that right? Is it going to be rewritten?
Yes, you are correct it is a holdover from the old Ruby code. It could be rewritten to be more in-line with the standards.
Some of its layout and architecture doesn't seem to be consistent with MediaWiki conventions/style and a lot of code (particularly variable assignments) looked duplicative.
Can you please provide an example.
Variables such as $randomButton are defined four times in the same file (extensions/MobileFrontend/MobileFrontend.php).
Yes, those view related variables could be created as class level variables instead avoiding the duplication.
I don't know too much about
PHP, but it seemed very strange. Is there a reason for the duplication?
Not really any good technical reason. It was mostly due to the views being slightly refactored.
Could it be reduced?
Yes.
In general, the URL parameters are odd. I'm not sure if the English Wikipedia is running the newest code, but if you visit a URL such as http://en.wikipedia.org/w/index.php?title=Main_Page&useFormat=mobile, none of the links within it maintain the &useFormat parameter, including and especially the links at the bottom.
This is by design. The useFormat parameter is used only to force the mobile view. The main way that the extension is invoked is via the X-Device header.
If you click one of the links at the
bottom such as "enable images on the mobile site," it removes all parameters including the ?title= parameter.
This could be easily changed. Thanks, for the feedback.
Rather than something sane and predictable for the URL parameter to view the standard (non-mobile) site (such as &useFormat=standard), the code uses ?mAction=view_normal_site.
This could also be easily changed for consistency sake.
As I commented in CodeReview today, a boolean parameter (?disableImages=1) has now been complemented with a completely separate parameter (?enableImages=1) rather than using ?disableImages=0, which I find to be very strange.
Okay, duly noted.
The HTML at the bottom of the page at http://en.wikipedia.org/w/index.php?title=Main_Page&useFormat=mobile appears to also be completely invalid (pasted below):
<div id='copyright'>Text is available under the <a rel="license" href="http://en.wikipedia.org/wiki/Wikipedia:Text_of_Creative_Commons_Attrib ution-ShareAlike_3.0_Unported_License">Creative Commons Attribution-ShareAlike License</a><a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/" style="display:none;"></a>; additional terms may apply. See <a href="http://wikimediafoundation.org/wiki/Terms_of_use">Terms of use</a> for details.<br/> Wikipedia® is a registered trademark of the <a href="http://www.wikimediafoundation.org/">Wikimedia Foundation, Inc.</a>, a non-profit organization.<br /></li><li class="noprint"><a class='internal' href="http://en.wikipedia.org/wiki/Wikipedia:Contact_us">Contact us</a></div> </div> ----
The copyright is not part of the mobile extension it is core to media wiki.
As far as I can see, the code is defining list items without specifying a
<ul> or <ol> pair. One of the <li> elements is unclosed. And there's also some very strange display:none; code in this snippet.
All of this seems very odd and quirky. I believe some of this quirkiness would be mitigated by using pre-built functions and following established coding styles, rather than using DIY templates.
This is NOT part of the template.
Again, I'm wondering which senior developer (or even non-senior developer) is reviewing this code. Some clarification on that would be appreciated.
It has been provided.
I've probably written about ten lines of PHP in my life, so feel free to tell me off if these comments are out of left field and/or don't make any sense.
They make sense and are appreciated.
These were just my observations from reading through some of the code
today.
I appreciate you taking the time to do that.
Some revisions are also apparently being pushed live without any outside review.
Yes, this is known. Every effort has been made to get eyes on every change, but some things have been pushed quickly for testing and to meet our schedule for the opt-in launch.
It's incredibly dangerous to push out code without at least cursory outside review. It's an enormous risk you're taking, though it's apparently yours to take. It's a very bad situation, in my opinion.
Duly noted.
MZMcBride
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
On Tue, Aug 16, 2011 at 7:15 AM, MZMcBride z@mzmcbride.com wrote:
Rather than something sane and predictable for the URL parameter to view the standard (non-mobile) site (such as &useFormat=standard), the code uses ?mAction=view_normal_site.
As I commented in CodeReview today, a boolean parameter (?disableImages=1) has now been complemented with a completely separate parameter (?enableImages=1) rather than using ?disableImages=0, which I find to be very strange.
Also, a stylistic nitpick: MediaWiki usually doesn't camelCase for URL parameters, so &useFormat=... should ideally be changed to useformat for consistency. Probably, this could also achieved with $wgActionPaths-style rewrite rules, e.g. en.wikipedia.org/mobile/Artticle_Name ?
On Tue, Aug 16, 2011 at 3:26 AM, Max Semenik maxsem.wiki@gmail.com wrote:
On Tue, Aug 16, 2011 at 7:15 AM, MZMcBride z@mzmcbride.com wrote:
Rather than something sane and predictable for the URL parameter to view the standard (non-mobile) site (such as &useFormat=standard), the code uses ?mAction=view_normal_site.
As I commented in CodeReview today, a boolean parameter (?disableImages=1) has now been complemented with a completely separate parameter (?enableImages=1) rather than using ?disableImages=0, which I find to be very strange.
Also, a stylistic nitpick: MediaWiki usually doesn't camelCase for URL parameters, so &useFormat=... should ideally be changed to useformat for consistency.
Duly Noted.
Probably, this could also achieved with $wgActionPaths-style
rewrite rules, e.g. en.wikipedia.org/mobile/Artticle_Name ?
This variable was originally supposed to just be temporary as a way to force the mobile render. I'll look into converting it to this approach.
-- Best regards, Max Semenik ([[User:MaxSem]]) _______________________________________________ Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Just a reminder that this is happening in a few hours. You can see the issues we'll be covering on the recently updated etherpad: http://hexm.de/5l
What: "Mobile" bug triage When: Wednesday, August 17, 17:00UTC Time zone conversion: http://hexm.de/5r Where: #wikimedia-dev on freenode Use http://webchat.freenode.net/ if you don't have an IRC client
This Wednesday, I'll be conducting a bug triage of bugs related to mobile devices and the new MobileFrontend Extension. In order to get as much non-WMF interest as possible, I'm announcing the triage two days early.
If you have a wiki that you would like to add mobile support to, then this is the triage for you! You'll have a chance to talk to developers about the issues and, if you can help with PHP development, you'll be able to see which bugs are most important to you to be fixed and even get some hints to begin diving into the code yourself.
The MobileFrontent extension (http://www.mediawiki.org/wiki/Extension:MobileFrontend) is about to go into a test deployment on Wikipedia, so this is the perfect time to get involved!
Hope to see you there,
Mark.
wikitech-l@lists.wikimedia.org