I've noticed that a lot of my fellow MediaWiki devs using OS X or Linux
don't have much experience with Windows 10's new 'Edge' browser, so I wrote
up some notes about testing with it and what to expect regarding versioning
and bug reporting:
https://www.mediawiki.org/wiki/Microsoft_Edge_browser_testing_notes
In particular, note that although versioning of the browser engine is tied
to the Windows 10 operating system, the OS is updated much more
aggressively than older versions of Windows.
The 'Windows Insider' preview release program also gives a chance to check
new engine features for bugs, or confirm that a reported bug has been fixed
correctly, before major OS updates go out. Not as good as the nightly
browser builds we get from Mozilla and Google, but it's a big improvement
from IE days. :)
-- brion
Apologies for not sending out this announcement before hand.
Short summary: The machine that Phabricator is hosted on rebooted itself
last night due to high temperatures. It ended up just shutting itself
down.
Today we needed our DataCenter Technician to reapply the thermal paste
in an attempt to remedy the issue. That took less than 10 minutes but it
happened during the middle of the day.
Full details: https://phabricator.wikimedia.org/T131742
And yes, we are requesting a backup machine so issues like this won't
have as much of an impact on you (our users):
https://phabricator.wikimedia.org/T131775
Best,
Greg
--
| Greg Grossmeier GPG: B2FA 27B1 F7EB D327 6B8E |
| identi.ca: @greg A18D 1138 8E47 FAC8 1C7D |
There is clearly a need for a generic solution to hash fragment
routing in MediaWiki.
So far I've seen needs in MultimediaViewer, Kartographer,
MobileFrontend, Gather and potential needs in VisualEditor. There are
probably other bespoke solutions in other extensions too.
It would be great to take a minute and standardise on something (we
can always change it later).
I invite your discussion here:
https://phabricator.wikimedia.org/T114007
and your thoughts on my straw man proposal:
https://gerrit.wikimedia.org/r/#/c/260950/4
We are planning to enable automatic redirect following in all REST API
[1] HTML entry points on April 25th. When responding to a request for
a redirected title [2], the response headers will contain:
Status: 302
Location: <path-to-redirect-target>
For most clients, this means that their HTTP client will automatically
follow redirects, simplifying common use cases. The few clients with a
need to retrieve the redirect page content itself have two options:
1) Disable following redirects in the client. For HTML and
data-parsoid entry points, the response still includes the HTML body &
regular response headers like the ETag.
2) Send a `?redirect=false` query string parameter. This option is
recommended for browsers, which lack control over redirect behavior
for historical security reasons.
If you do have a need to avoid following redirects, you can make these
changes before the feature is enabled. Internally, we have already
done so for VisualEditor and the Mobile Content Service. See also
https://phabricator.wikimedia.org/T118548 for background & related
discussion.
Let us know if you have any concerns or questions about this.
Thanks,
Gabriel Wicke for the Wikimedia Services Team
[1]: https://en.wikipedia.org/api/rest_v1/?doc (using en.wikipedia.org
as an example)
[2]: https://www.mediawiki.org/wiki/Help:Redirects
What's the best way to build OOjs UI locally into the MW lib directory
while developing?
I'm having two issues:
1. The README.md says:
"Install dev dependencies and build the distribution files:<br/>`$ npm
install`"
This does not actually build to dist for me.
I then tried:
npm run-script publish-build
That partly works but has many errors:
https://phabricator.wikimedia.org/P2903
However, it apparently creates the key files.
2. I see update-oojs-ui.sh, but it looks like it's only intended for
when the OOjs UI change is already published.
I had to hack it up with:
npm install '/home/matthew/Code/Wikimedia/oojs/oojs-ui/'
which seems to basically work.
If there is not yet a proper way to do this, I'll probably add this as
an option.
This should be documented, probably at
https://www.mediawiki.org/wiki/Using_OOjs_UI_in_MediaWiki .
Matt
This week, JavaScript module interfaces in ResourceLoader
<https://phabricator.wikimedia.org/T108655> were merged, the ServiceLocator
implementation continued, and there was a lively discussion of options for
balancing templates on IRC. Shadow namespaces
<https://phabricator.wikimedia.org/T91162> are scheduled for discussion at
next week's IRC meeting.
Gabriel
RFC inbox
-
T30085: RFC: Allow user login with email address in addition to username
<https://phabricator.wikimedia.org/T30085>: Last update October. Issue
is email addresses associated with multiple accounts. Possibly related to
AuthManager work.
-
T128352: RfC: Need to merge Notifications and Watchlist or lack thereof
<https://phabricator.wikimedia.org/T128352>: Very much a product
question.
-
T130528: RFC: PSR-6 Cache interface in Mediawiki core
<https://phabricator.wikimedia.org/T130528>: Addshore and Anomie have
been working on this recently.
Approved RFCs
T108655 Standardise access to JavaScript interfaces
<https://phabricator.wikimedia.org/T108655> (Roan): Previously approved.
Implementation landed in master this week.
This week's IRC meeting
T130567 RFC: Hygienic transclusions for WYSIWYG, incremental parsing &
composition <https://phabricator.wikimedia.org/T130567>,
T114444 DOM scopes <https://phabricator.wikimedia.org/T114444>, and
T114445 Balanced
templates <https://phabricator.wikimedia.org/T114445>: (Tim) The discussion
exposed two main questions: 1) How to best resolve content model conflicts,
and 2) whether to (eventually) default to balanced templates or not. The
implementation in T114445 <https://phabricator.wikimedia.org/T114445>
proposes a solution to mark specific templates for balancing, and explores
two options for conflict resolution. The discussion will continue on the
tasks.
Next week’s IRC meeting
T91162 Shadow namespaces <https://phabricator.wikimedia.org/T91162>
(brion): A proposed mechanism for sharing content like templates or modules
cross-wiki, similar to how InstantCommons and foreign file repos work.
Kunal is getting ready to work on this.
Under discussion
T124792 RFC: Service Locator for MediaWiki core
<https://phabricator.wikimedia.org/T124792> (Daniel): Discussed in IRC
Office hour last week (see task for notes). Discussed at Wikimedia
Hackathon 2016 in Israel <https://etherpad.wikimedia.org/p/wmhack2016_DI>.
Implementation under way.
T91162 RFC: Shadow namespaces <https://phabricator.wikimedia.org/T91162>
(brion): Scheduled for IRC meeting next week.
T123753 Establish retrospective reports for Security and Performance
incidents <https://phabricator.wikimedia.org/T123753> (RobLa): Briefly
discussed at last week's IRC meeting, some activity on the task.
T119908 RFC: Migrate code review / management to Phabricator from Gerrit
<https://phabricator.wikimedia.org/T119908> (RobLa): ArchCom is looking for
more detail on CI integration, as well as background on alternatives
considered for code review + CI. On hold.
T39902 RFC: Implement rendering of redlinks as post-processor
<https://phabricator.wikimedia.org/T39902> (Gabriel): Solutions for
highlighting links to non-existing pages in Parsoid HTML. Main question is
preprocessing vs. separate metadata processed on client. Experiment shows
that specific link matching / replacement can be done in <2ms for large
documents on the server.
T130663 RFC: Reference API requirements and options
<https://phabricator.wikimedia.org/T130663> (Timo): We need to better
define the scope of this RFC and come up with a solid proposal. Open to
input on whether or not this should be blocked on larger product goals
relating to centralised citations. Join WikiCite 2016 in Germany!
https://meta.wikimedia.org/wiki/WikiCite_2016
T18691 RFC: Section headings should have a clickable anchor
<https://phabricator.wikimedia.org/T18691> (Timo): Working on better
understanding of the problem space and possible solutions. Volker gathered
various considerations and challenges. Under discussion in Front-end
standards group.
T16950: Support global preferences
<https://phabricator.wikimedia.org/T16950> (no shepherd): No clear owner
yet.
T130528 RFC: PSR-6 Cache interface in Mediawiki core
<https://phabricator.wikimedia.org/T130528> (no shepherd).
T122942 RFC: Support language variants in the REST API
<https://phabricator.wikimedia.org/T122942> (Gabriel): Discussing options
with Reading.
No activity in the last two weeks:
T124504 Transition WikiDev '16 working areas into working groups
<https://phabricator.wikimedia.org/T124504> (RobLa)
T66214 Use content hash based image / thumb URLs & define an official thumb
API <https://phabricator.wikimedia.org/T66214> (Brion)
T113034 RFC: Overhaul Interwiki map, unify with Sites and WikiMap
<https://phabricator.wikimedia.org/T113034> (Daniel)
T128351 RFC: Notifications in core
<https://phabricator.wikimedia.org/T128351> (Brion)
T122825 Service ownership and minimum maintenance requirements
<https://phabricator.wikimedia.org/T122825> (Gabriel)
T54807: Identify and remove legacy preferences from MediaWiki core
<https://phabricator.wikimedia.org/T54807> (no shepherd)
T88596 Improving extension management
<https://phabricator.wikimedia.org/T88596> (Daniel)
T114444 RFC: Introduce notion of DOM scopes in wikitext
<https://phabricator.wikimedia.org/T114444> (Tim)
T120164 RFC: Institute "last call" period for MediaWiki RfCs
<https://phabricator.wikimedia.org/T120164> (WIP)
T118517 RFC: Use <figure> for media
<https://phabricator.wikimedia.org/T118517> (Brion)
Hi,
tomorrow at 1800 UTC (10am PST) i would like to upgrade bast1001 and
schedule some downtime. I anticipate about an hour.
Data from home dirs has already been rsynced elsewhere (and is in Bacula).
Please switch to bast3001 or bast2001 during this period (or permanently if
they are closer for you anyways).
--
Daniel Zahn <dzahn(a)wikimedia.org>
Operations Engineer
In addition to the smaller bandwidth requirements for VP9 video encoding
versus Theora or VP8, Microsoft is adding support for VP9 video and Opus
audio in WebM to Windows 10 in the summer 2016 update.
Currently in Win10 preview builds this only works in Edge when using Media
Source Extensions, and VP9 is disabled by default if not
hardware-accelerated, but it's coming along. :)
If the final version lands with suitable config, users of Edge version 15
and later shouldn't need the ogv.js JavaScript decoding shim to get media
playback on Wikipedia. Neat!
Things still to do in TimedMediaHandler:
* add transcode output for audio-only files as Opus in WebM container
(Brion)
* keep working on the Kaltura->VideoJS front-end switch to make our lives
easier fixing the UI (Derk-Jan & Brion) and to prep for...
* eventually we'll want to use MPEG-DASH manifests and Media Source
Extensions to implement playback that's responsive to network and CPU speed
and can switch resolutions seamlessly. This may or may not be a
prerequisite for Win10 Edge playback if MS sticks with the MSE requirement.
* consider improving the transcode status overview at
Special:TimedMediaHandler; it reports errors in a way that doesn't scale
well.
Things still to do in Wikimedia site config:
* add VP9/Opus transcodes to our config (audio, 240p, 360p, 480p, 720p,
1080p definitely; consider 1440p and 2160p for Ultra-HD videos)
* consider dropping some VP8 sizes (desktop browsers that support VP8
should all support VP9 now; old Android versions that don't grok VP9 might
be main target remaining for VP8)
Things to consider:
* VP9 is slower to encode than VP8, and a transition will require a lot of
back-running of existing files. We *will* need to assign more video
scalers, at least temporarily.
* I started writing a client-side bot to trigger new transcodes on old
files. Prefer I should finish that, or prep a server side script that
someone in ops will have to babysit?
* in future, the ogv.js JS decoder shim will still be used for Safari and
IE 11, but I may be able to shift it from Theora to VP9 after making more
fixes to the WebM demuxer. Decoding is slower per pixel but at a lower
resolution you often get higher quality because of better compression and
handling of motion -- and bandwidth usage is much better, which should make
it a win on iPhones. This means eventually we may be able to reduce or drop
the Ogg output. This will also tie in with MPEG-DASH adaptive streaming, so
should be able to pick best size for CPU speed more reliably than current
heuristic.
* longer term, AOMedia codec will arrive (initial code drop came out
recently, based on VP10) with definite support from Google, Mozilla, and
Microsoft. This should end up supplementing VP9 in a couple years, and
should be even more bandwidth-efficient for high resolutions.
-- brion