Rolling out embedded function calls to five Wiktionaries
We have rolled out embedded function calls to a first set of Wiktionary projects:
Hausa
Igbo
Malayalam
Bengali
, and
Divehi Wiktionary
. These represent
the focus languages
that have a Wiktionary (that is, all but Dagbani), and in addition one right-to-left language, Divehi. This also represents a rough doubling of pageviews to wikis with embedded function calls, following our plan for a careful roll-out to the projects.
As before, we ask folks to show restraint and only contribute to these projects if you are or want to become a member of the given community.
Do not use any of those wikis as test beds.
You can use the
Wikifunctions call sandbox
for that. You can find
documentation about embedding function calls
on Wikifunctions.
We have switched our roll-out to focus on Wiktionaries for now, instead of Wikipedias. This change was in order to follow the
Parsoid roll-out
, on which embedded function calls depend. We will come back to the Wikipedias probably later this year.
In the next few months we are planning to deploy to many more Wiktionaries. This will allow the Wiktionary communities to work on functions that are useful across the different Wiktionary projects. This might include the already existing
morphological functions
e.g.
the
regular plural
of
house
is
houses
), or functions such as this one listing the
three main tense forms of an English verb
e.g.
begin, began, begun
. We are currently limited to simple string outputs in what can be embedded in pages, but for later this year we plan to allow some formatting, with the goal to create whole conjugation tables, which could be reused across many different language editions of Wiktionary projects. Until then, we are curious what kind of functions you will be building now!
Calculating with today’s date
Hello on this lovely
Friday
. It is
-261
days until
Wikimania 2025
If you’re reading this text on the wiki page on which it was published, the day of the week and the number of days in the previous sentence will update automatically as we get closer to Wikimania (if you’re reading this in an e-mail, this won’t work – there is no integration of Wikifunctions function calls in e-mails yet, or planned).
A new feature when embedding function calls in wikipages allows you to leave the value for a
Gregorian calendar date
empty. If you do so, the value will be automatically set to the current day when the page is accessed (according to the wiki’s timezone). This allows for all kinds of dynamic outputs: you can return the
age
of a person or institution, the current
day of the week
, today’s
distance to the Moon
, and much more.
You use this feature by simply leaving the value empty. Feel free to try it out on the
embedded calls Sandbox
. You can find
further documentation on how to use embedded function calls
in wikis that have that enabled.
We are planning to work on two other types to get default values: a
Wikidata item reference
to set the item connected to a given page (if any), and the
language
of a given page. Both can then be used in function calls to adapt the function call to a given page. These are expected to be developed and deployed later this year.
Please let us know if you find any issues with the new feature.
Recent Changes in the software
Last week, as discussed above, we finished one of our planned Quarterly pieces of work, and also a number of pieces of others.
For the 'light-weight enums' work (
T390558
), we have added an interface (
T391918
) and special rights for creating and editing them (
T391913
and
T391914
); for now, like with Types, we're holding them back only for staff, but we will expand their access later. To make the creation and editing tools possible, we also re-designed our tests for what kinds of edits and creations are allowed to be more flexible. There's still more to do here before we call this complete, but we should be able to demonstrate it on-wiki shortly.
Within our performance strand of work this Quarter, we're working to add better caching to the orchestrator. We have added the functionality to the MediaWiki side of the code to trigger this new behaviour (
T391971
). Soon, we will wire it together, and measure and report on the impact.
Following-up on a wide-ranging set of issues that
User:99of9
found when running Test cases, we added some regression tests related to different valid 'shapes' of Language objects (
T391329
).
As part of Wikimedia-wide support, we have added a new Language,
Z1970/qxp
T394068
).
Ongoing consultation about Location of Abstract Content
Thanks to everyone who participated in the consultation about the
Location for Abstract Content
so far! The consultation will continue for another two weeks. We try to keep answering questions by and participating in the consultation with the community.
Personally, I found the arguments thought-provoking, and I find myself changing my own position as I read about new ideas and considerations I haven’t had before. I am planning to add a current state of my thinking next week. So keep the ideas and arguments going!
News in Types
The
Unicode code point
type has been set up with a
read
and
display
function, thus improving the UX on Wikifunctions and also allowing Functions using this Type to be used in embedded calls. Thanks to
User:99of9
for shepherding this improvement and for working on the read and display functions.
For our current work to support import of more Wikidata content (
T390559
), discussions on three new types proposals are ongoing:
Wikidata time
Wikidata quantity
, and
Wikidata geocoordinates
. Comments are welcome!
US