Hi,
we've released v0.37.0 of OOUI this Wednesday. It will rollout on the
normal train next Tuesday.
Highlights in this release:
- Underlying library OOjs was updated to v3.0.1, up from v3.0.0,
nominally a breaking change.
- Text flow of form layouts on mobile devices was improved, surfaced
in Advanced Mobile Contributions
- Additionally this release removed deprecated icons 'beaker' and
'unTrash', both were renamed, former to 'labFlask', latter to
'restore'. Additionally 'toc' in 'icons-layout' was deprecated in this
release, as design team has decided to use 'listBullet' as unified
table of contents icon.[0]
If you haven't yet updated them, now's the time.
You can find details on additional new features, code-level, styling
and interaction design amendments, and all improvements since v0.36.0
in the full changelog[1].
If you have any further queries or need help dealing with breaking
changes, please let me know.
As always, interactive demos[2] and library documentation is available
on mediawiki.org[3], there is comprehensive generated code-level
documentation and interactive demos and tutorials hosted on
doc.wikimedia.org[4].
OOUI version: 0.37.0
MediaWiki version: 1.35.0-wmf.11
Date of deployment to production: Regular train, starting Tuesday 17 December
[0] - https://doc.wikimedia.org/oojs-ui/master/demos/?page=icons
[1] - https://gerrit.wikimedia.org/g/oojs/ui/+/v0.37.0/History.md
[2] - https://doc.wikimedia.org/oojs-ui/master/demos/#widgets-mediawiki-vector-ltr
[3] - https://www.mediawiki.org/wiki/OOUI
[4] - https://doc.wikimedia.org/oojs-ui/master/
Best,
Volker
📘 Read on Phabricator at
https://phabricator.wikimedia.org/phame/post/view/180/
-------
How’d we do in our strive for operational excellence last month? Read on to
find out!
## 📊 Month in numbers
* 3 documented incidents. [1]
* 26 new Wikimedia-prod-error reports. [2]
* 26 Wikimedia-prod-error reports closed. [3]
* 198 currently open Wikimedia-prod-error reports in total. [4]
To read more about these incidents and pending actionables; check <
https://wikitech.wikimedia.org/wiki/Incident_documentation#2020>, or
Explore Wikimedia incident stats (interactive).
-------
## 📖 Paradoxical array key
Wikimedia encountered several Zend engine bugs that could corrupt a PHP
program at run-time, during the upgrade from HHVM to PHP 7.2. (Some of
these bugs are still being worked on.) One of the bugs we fixed last month
was particularly mysterious. Investigation led by Antoine (Hashar) and Tim
Starling.
MediaWiki would create an array in PHP and add a key-value pair to it. We
could iterate this array, and see that our key was there. Moments later, if
we tried to retrieve the value from that same array, sometimes the key
would no longer exist!
After many ad-hoc debug logs, core dumps, and GDB sessions, the problem was
tracked down to the string interning system of Zend PHP. String interning
is a memory reduction technique. It means we only store one copy of a
character sequence in RAM, even if the many parts of the code use the same
character sequence. For example, the words “user” and “edit” are frequently
used in the MediaWiki codebase. One of those sequences is the empty string
(“”), which is also used a lot in our code. This is the string we found
disappearing most often from our PHP arrays. This bug affected several
components, including Wikibase, the wikimedia/rdbms library, and
ResourceLoader.
Tim used a hardware watchpoint in GDB, and traced the root cause to the
Memcached client for PHP. The php-memcached client would “free” a string
directly from the internal memory manager after doing some work. It did
this even for “interned” strings that other parts of the program may still
be depending on.
Effie and Giuseppe backported the upstream fix to our php-memcached package
and deployed it to production. Thanks! —
https://phabricator.wikimedia.org/T232613
-------
## 📉 Outstanding reports
Take a look at the workboard and look for tasks that might need your help.
The workboard lists error reports, grouped by the month in which they were
first observed.
→ https://phabricator.wikimedia.org/tag/wikimedia-production-error/
Breakdown of recent months (past two weeks not included):
* March: 3 of 10 reports left. (unchanged). ⚠️
* April: Two reports closed, 4 of 14 left.
* May: (All clear!)
* June: Two reports closed. 4 of 11 left.
* July: Four reports closed, 8 of 18 left.
* August: 4 of 14 reports left. (unchanged)
* September: One report closed, 8 of 12 left.
* October: 8 of 12 left (unchanged).
* November: 5 of 5 left (unchanged)
* December: Three reports closed, 6 of 9 left.
* January: 7 new reports survived the month of January.
There are a total of 57 reports filed in recent months that remain open.
This is down from 62 last month.
-------
## 🎉 Thanks!
Thank you to everyone who helped by reporting, investigating, or resolving
problems in Wikimedia production. Thanks!
Until next time,
– Timo Tijhof
-------
Footnotes:
[1] Incidents. –
https://wikitech.wikimedia.org/wiki/Incident_documentation#2020
[2] Tasks created. –
https://phabricator.wikimedia.org/maniphest/query/qfCVpWqGX0tJ/#R
[3] Tasks closed. –
https://phabricator.wikimedia.org/maniphest/query/ndeCQjeJ6UNr/#R
[4] Open tasks. –
https://phabricator.wikimedia.org/maniphest/query/47MGY8BUDvRD/#R
Hi guys my name is Nwobodo Leonard a mechanical engineering student from
Nigeria, I am interested in working on any python related course for this
year's Google summer of code! I will appreciate all the help I can get..i
am still not an advanced programmer but I am always willing to learn.
Hello all,
We are planning on a India Hackathon.
https://meta.wikimedia.org/wiki/CIS-A2K/Events/India_Hackathon_2020
To bring new developers and train them, looking for a developer guide or
handbook/beginners guide.
Do we any such starters guide?
I think the below topics would be nice to be covered on the handbook.
If no such hand book, shall we create one? Will be useful ?
Topics to be covered :
Intro
Setup
User creation
User types
Name space
Admin rights
Bot access
Pages create/edit/delete
Category create/edit/delete
Page
Talk page
Preference
Gadget
Widget
Common.js
Api
Paws
Tool server
Become
Ssh keys
Cron
Host web apps
SQL dump access
SQL access
SQL structure
Daily dump access
Wikidata api
Sparql
Wikidata tools
Pywikibot
Wiki old module
Phabricator
Asking for help
Docs
Mailing list
Irc
Telegram groups
Oauth
Auth APIs
Pagination in results
Linking pages to wikidata
Linking to other language site pages
Test wiki site to play around
Auto Wiki Browser
Tools repo.
----------
What other topics can be added?
Share your thoughts.
Thanks.
TLDR: If you use $wgDebugLogGroups['profileoutput'] in LocalSettings.php as
a way to collect performance profiles from Tideways/XHProf, this will no
longer receive messages in MediaWiki 1.35 and later.
-------
Hi,
I've been auditing the Profiler component in MediaWiki and deprecating or
removing various legacy features that either don't fit the current model
very well and/or that seem to be broken, unused or undocumented. [1] The
objective here is to keep offering the same functionalities for developers,
but in a way that's easier to use, with fewer moving parts, and lower
maintenance costs for us.
Today I'm writing about the "profileoutput" debug log channel. As part of
the PSR-3/Monolog refactor many years ago, this feature was grandfathered
into the LegacyLogger.
The $wgProfiler variable controls which collector and output are used at
run-time. For example, you can collect the call graph with XHProf/Tideways,
and then output it to an HTML comment, or dump to a file on disk, etc. Any
number of outputs can be implemented and enabled.
The "profileoutput" debug log channel was effectively another way of
achieving the same thing, by assigning $wgDebugLogGroups['profileoutput']
to a file path.
If you're currently using this, see
https://phabricator.wikimedia.org/T245835 for how to make this work via
$wgProfiler instead.
-- Timo
[1] https://phabricator.wikimedia.org/T231366
Hello All,
This week we will be starting a monthly Quality and Testing Engineering
office hour series of meetings. The Quality and Testing Engineering office
hours will generally have a theme or topic to encourage participation.
This month, Željko Filipin from the Quality and Test Engineering team will
be hosting a session on "Software Testing Anti-patterns".
Logistics:
Date - Friday February 21, 2020
Time - 17:00 UTC
Meeting URL: meet.google.com/xgq-kyfk-crt
<https://meet.google.com/xgq-kyfk-crt?hs=122>
Cheers,
JR
Hi,
for HTML version see
https://www.mediawiki.org/wiki/Scrum_of_scrums/2020-02-26
Željko
--
= 2020-02-26 =
== Callouts ==
* Language -> Core Platform: Requesting help to debug why some jobs are not
being queued [[phab:T144780]]
* Release Engineering: [All] MediaWiki 1.35.0 will get cut on 7 April 2020.
If your team has any proposed blockers/deadlines for that, please get them
done: [[phab:tag/MW-1.35-release]]
== Product ==
=== Editing ===
* Updates:
** Replying v1.0: On Tuesday, 18-Feb, v1.0 of the new replying workflow was
deployed to Arabic, Dutch, French and Hungarian Wikipedias via a query
string parameter (ca be tested by appending ?dtenable=1 to any talk URL on
ar, fr, hu or nl talk page)
*** Currently checking instrumentation, once any discovered issues are
addressed we'll be deploying this as a beta feature
** Replying v2.0: developing technical approach to comment editing and
drafting replies in rich text
=== Growth ===
* Updates:
** Newcomer tasks 1.1 (topic matching): planning to deploy our upgrade of
the topic matching algorithm next week to use ORES articletopics. This
upgrade will increase the number of topics available to newcomers from 27
to 64
*** We will be altering the user interface to help newcomers navigate the
larger number of topics
*** Sort ORES topics alphabetically (task [[phab:T246061]])
*** Add backend support for ORES topics (task [[phab:T243477]], task
[[phab:T243359]])
** Newcomer tasks 1.2 (guidance): adding additional in-context help and
guidance for newcomers completing suggested edit tasks
*** NewcomerTasks: Add feature flag for guidance (task [[phab:T245525]])
** Planning to streamline deployments so that we can work with more wikis
more quickly
** Homepage desktop and mobile style updates (task [[phab:T232546]], task
[[phab:T239442]])
=== iOS native app ===
* Updates:
**Continuing development on 6.6 release (mobile-html integration)
[[phab:project/view/4273]]
=== Android native app ===
* Updates:
** Final testing and profiling of mobile-html and conversion logic.
** Final testing of structured image tagging interface.
=== Web ===
* Updates:
** Summary: continuing desktop improvements (DIP). The feature manager is
well underway in active development iterations, the skin preference has had
one patch merged, template partial support caching behavior is being
investigated, and there's lots cooking.
** [[Reading/Web/Desktop_Improvements|Desktop Improvements Project (Vector
/ DIP)]]:
*** [[phab:T245793|<nowiki>[Firefox 73] Infusing a RadioOptionWidget
changes first-child alignment</nowiki>]]
*** [[phab:T245456|<nowiki>[Dev] Adopt template partials in Vector and
revise sidebar component</nowiki>]]
*** [[phab:T244481|<nowiki>Provide basic FeatureManagement in Vector
codebase</nowiki>]]
*** [[phab:T243281|<nowiki>Build opt-out button for logged-in users with
new vector on</nowiki>]]
*** [[phab:T242381|<nowiki>Add a Vector skin version preference</nowiki>]]
*** [[phab:T232140|<nowiki>Separate out logo handling into square image
logos and long text/wordmark banner logos</nowiki>]]
*** [[phab:T113095|<nowiki>A cached server-side HTML template should update
when you change a partial template which it includes</nowiki>]]
*** [[phab:T242779|<nowiki>Add Vector and Popups PHP documentation to
doc.wikimedia.org</nowiki>]]
*** [[phab:T242177|<nowiki>Technical: Deprecate
mediawiki.skinning.interface in favor of ResourceLoaderSkinModule</nowiki>]]
** Mobile website (MinervaNeue / MobileFrontend):
*** [[phab:T245162|<nowiki>Job unable to create file page "Fatal: Call
function inNamespace() on null" (via MinervaHooks)</nowiki>]]
*** [[phab:T244106|<nowiki>[M] Setup storybook from Minerva</nowiki>]]
*** [[phab:T243650|<nowiki>Regression: Mobile talk page shows links in
overlay header</nowiki>]]
*** [[phab:T244181|<nowiki>[print] Article title hidden with mobile print
styles</nowiki>]]
=== Product Infrastructure ===
* Updates:
** Push notification service planning continues. RFC and proposed fiscal Q4
work plan due end of week.
** Patches in progress for proposed MachineVision schema changes to fix
slow random image queries: [[phab:T243872]]
=== Structured Data ===
* Updates:
** no real change - hoping to release some new input types and constraints
next week
=== Parsing ===
* Updates:
** Parsing, Release Engr., Service Ops met last week to work through
details of Parsoid deployment once Parsoid is in core as a composer library.
** Details in [[phab:T240055]] and being worked on this week.
=== Language ===
* Blocked by:
** Requesting help to debug why some jobs are not being queued:
[[phab:T144780]]
* Updates:
** OpusMT available in Production for en->as language pair.
** ContentTranslation is out of Beta for total 20 Wikipedias!
** Section Translation work in progress.
== Technology ==
=== Fundraising Tech ===
* Updates:
** More work for recurring donation on backup card processor
** Fixing up batch refund scripts
** Deleting gigs of cruft from Civi DB, adding maintenance scripts to keep
it trim
** Further harmonizing our use of Civi concepts with how they're intended
to be used in Civi core
** Reviewing work on centralnotice banner templates
=== Core Platform ===
* Blocking:
** Search Platform: MW Job consumers sometimes pause for several minutes
[[phab:T224425]]
** Language: Requesting help to debug why some jobs are not being queued
[[phab:T144780]]
* Updates:
** New hooks interfaces [[phab:T240307]]
** REST API for jobs
** Hashchecking extension [[phab:T245595]]
** Search API for Desktop Refresh search widget
** Rolling out Changeprop K8S
=== Engineering Productivity ===
==== Quality and Test Engineering ====
* Updates:
** Quality and Test Engineering Office Hour - Topic: Software Testing
Anti-patterns [[phab:T241234]]
==== Release Engineering ====
* Updates:
** [All] MediaWiki 1.35.0 will get cut on 7 April 2020. If your team has
any proposed blockers/deadlines for that, please get them done:
[[phab:tag/MW-1.35-release]]
** Scap 3.13.0 release
https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/tools/scap/+/relea…
** Train Health
*** This week: 1.35.0-wmf.21 - [[phab:T233869]]
*** Next week: 1.35.0-wmf.22 - [[phab:T233870]]
=== Search Platform ===
* Blocked by:
** Core: MW Job consumers sometimes pause for several minutes
[[phab:T224425]]
* Updates:
** WDQS: Extract more metrics from blazegraph sparql update response -
[[phab:T239908]]
** WDQS: Rework how value and reference changes are handled -
[[phab:T239687]]
=== Security ===
* Updates:
** KaiOS: 3rd party review process should begin soon: [[phab:T240869]]
** Talk Pages review, resolving this week: [[phab:T242134]]
** Fileimporter, next up to resolve: [[phab:T202071]]
** DoubleWiki, next up to resolve: [[phab:T131199]]
=== Site Reliability Engineering ===
* Blocking:
** PI on proton, mobileapps.
* Updates:
** Working with CPT to migrate changeprop to k8s.
Just now I asked the following question on the Technical Talk
livestream at https://www.youtube.com/watch?v=J-CRsiwYM9w
10:19 AM: Page 20 of Robert West's 2016 Stanford thesis, "Human
Navigation of Information Networks" says, "We have access to
Wikimedia’s full server logs, containing all HTTP requests to
Wikimedia projects."
10:19 AM: The text is at
http://infolab.stanford.edu/~west1/pubs/West_Dissertation-2016.pdf
10:19 AM: Page 19 indicates that this information includes the "IP
address, proxy information, and user agent."
10:20 AM: This is confirmed by West at
https://www.youtube.com/watch?v=jQ0NPhT-fsE&t=25m40s
10:20 AM: Does the Foundation still share that identifying information
with research affiliates? If so, how many are them world-wide; if not,
when did sharing this information stop?
10:25 AM: MediaWiki @James Salsman I see your question, but donfly.
Can we reach out to you after the talk?
10:25 AM: MediaWiki: sorry hit enter too soon!
10:26 AM: MediaWiki: I don't have the full-context of the thesis to
ask kate to answer the question on the fly. Can we reach out to you
after?
10:26 AM: James Salsman: With whom am I corresponding?
10:27 AM: James Salsman: Sarah?
10:28 AM: MediaWiki: Yes! That's me!
10:28 AM: James Salsman: Would it be easier to ask, "how many research
affiliates does the Foundation share server logs with IP addresses?"
10:29 AM: MediaWiki: Yes, I can ask that.
10:30 AM: James Salsman: Thank you.
At 10:34, the messages with the the URLs I posted were removed from
the chat log.
At 10:36, the chat stream was removed from the video, which was
replaced with the text, "Chat is disabled for this live stream," and
now is completely missing.
I am still interested in getting an answer to this question, but
disturbed by the removal of links to sources. Could I please have an
explanation?
Sincerely,
Jim