{"id":1032,"date":"2010-12-15T11:10:48","date_gmt":"2010-12-15T10:10:48","guid":{"rendered":"https:\/\/www.entropywins.wtf\/blog\/?p=1032"},"modified":"2010-12-15T11:10:48","modified_gmt":"2010-12-15T10:10:48","slug":"new-mediawiki-extension-push","status":"publish","type":"post","link":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/","title":{"rendered":"New MediaWiki extension: Push"},"content":{"rendered":"<p>I&#8217;m happy to announce the release of a new <a href=\"http:\/\/www.mediawiki.org\/wiki\/\">MediaWiki<\/a> extension I&#8217;ve been working on over the past two weeks. As you&#8217;ve might already have guessed from it&#8217;s name, <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Push\">Push<\/a>, it enables you to push content of wiki pages to one or more other MediaWiki installs.<\/p>\n<p><strong>The main features are:<\/strong><\/p>\n<ul>\n<li> Pushing page content to other wikis via a tab on the page.<\/li>\n<li>Bulk push via Special:Push.<\/li>\n<li>Remote authentication support.<\/li>\n<li>Automatic transfer of included files.<\/li>\n<li>Support for <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Approved_Revs\">ApprovedRevs<\/a>. If there is an approved revision, it will be pushed, if not, the latest one is pushed.<\/li>\n<li><a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Admin_Links\">AdminLinks<\/a> integration.<\/li>\n<li>Usage of the new MediaWiki <a href=\"http:\/\/www.mediawiki.org\/wiki\/Resource_loader\">Resource Loader<\/a> when available with backward support for MW 1.16.x.<\/li>\n<\/ul>\n<p><strong>The tab interface<\/strong><\/p>\n<p>When logged in, a new tab or action (on vector based skins) will be added which leads to the push interface for the page you are on. This interface consists of a table listing the available target wikis and also informs you of the status of the target pages. A big push button in each row allows you to do the actual push. When there is more then one target wiki, a convenient &#8216;Push all&#8217; button will also be shown.Underneath this table the available options will be displayed. With the current version you can choose to include the templates used on the page in the push, as well as transferring the embedded images.<\/p>\n<p><a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Push\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1034\" title=\"The tab interface of the Push extension\" src=\"https:\/\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2010\/12\/push-tab-interface.png\" alt=\"The tab interface of the Push extension\" width=\"714\" height=\"453\" \/><\/a><\/p>\n<p>In this screenshot of the tab interface, you can see an actual &#8216;Push&#8217; tab, rather then an action in the collapsed actions dropdown. You can choose this behaviour, which is useful when you do very frequent pushing, using one of the settings made available by the Push extension.<\/p>\n<p>After initiating the push to one or more targets, the work will happen in the background, and the interface will update to show you progress, completion, and possible errors (such as not having sufficient rights to edit on the target wiki).<\/p>\n<p><strong>Special:Push<\/strong><\/p>\n<p>Push provides bulk push capabilities via a special page aptly titled &#8216;Special:Push&#8217;. The layout and workings of this page should be familiar to anyone having used MediaWikis native Special:Export, as it&#8217;s largely based on this special page. A big textbox allows you to specify the pages you want to push (one per line), and you can choose to add all pages from a category or namespace to it. Under the texbox are the same options as in the tab interface: automatic inclusion of templates and files. Finally you are able to select one or more target wikis.<\/p>\n<p><a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Push\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1035\" title=\"The Special:Push page\" src=\"https:\/\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2010\/12\/Push-special-interface.png\" alt=\"The Special:Push page\" width=\"807\" height=\"522\" \/><\/a><\/p>\n<p>Note that the file inclusion option was not added yet in the version the below screenshot was taken at. I obtained the above list of pages by entering &#8216;Locations&#8217; in the category box and submitting it.<\/p>\n<p>When submitting the push request, you&#8217;ll be shown the pushing progress in the form of a list to which items get added as pushes complete.<\/p>\n<p><a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension:Push\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1036\" title=\"Special:Push showing progress of a bulk push operation\" src=\"https:\/\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2010\/12\/Push-special-page.png\" alt=\"Special:Push showing progress of a bulk push operation\" width=\"811\" height=\"446\" \/><\/a><\/p>\n<p><strong>Funding<\/strong><\/p>\n<p>I created this extension as <a href=\"http:\/\/www.wikiworks.com\/\">WikiWorks<\/a> consultant for Texas Instruments. Thanks to TI for funding this and allowing licensing under the GNU GPL.<\/p>\n<p><a href=\"http:\/\/www.wikiworks.com\/\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1037\" title=\"WikiWorks, MediaWiki consulting\" src=\"https:\/\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2010\/12\/wikiworks-header-logo.png\" alt=\"WikiWorks, MediaWiki consulting\" width=\"429\" height=\"91\" \/><\/a><\/p>\n<p><strong>Status and future<\/strong><\/p>\n<p>Push is currently at version 0.5 and contains all the features requested by TI. It appears to be stable, and ready for production usage. Of course, if bugs pop up, they will be addressed and a new minor version will be released. Many useful additions to push can be imagined for various use-cases. Feel free to suggest them on the <a href=\"http:\/\/www.mediawiki.org\/wiki\/Extension_talk:Push\">Push discussion page<\/a> (where you also can ask for support and point out bugs). If you want to fund any new functionality, please contact WikiWorks.<\/p>\n<p>You can obtain the latest version of Push <a href=\"https:\/\/code.google.com\/p\/mwpush\/downloads\/list\">here<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;m happy to announce the release of a new MediaWiki extension I&#8217;ve been working on over the past two weeks.&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[7,8],"tags":[21,136,138,156,157,195,197,202,288],"class_list":["post-1032","post","type-post","status-publish","format-standard","hentry","category-programming","category-software","tag-ajax","tag-javascript","tag-jquery","tag-mediawiki","tag-mediawiki-extensions","tag-php","tag-planet-wikimedia","tag-push","tag-wikiworks"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>New MediaWiki extension: Push - Blog of Jeroen De Dauw<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"New MediaWiki extension: Push - Blog of Jeroen De Dauw\" \/>\n<meta property=\"og:description\" content=\"I&#8217;m happy to announce the release of a new MediaWiki extension I&#8217;ve been working on over the past two weeks.&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog of Jeroen De Dauw\" \/>\n<meta property=\"article:published_time\" content=\"2010-12-15T10:10:48+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2010\/12\/push-tab-interface.png\" \/>\n<meta name=\"author\" content=\"Jeroen\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/JeroenDeDauw\" \/>\n<meta name=\"twitter:site\" content=\"@JeroenDeDauw\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeroen\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2010\\\/12\\\/15\\\/new-mediawiki-extension-push\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2010\\\/12\\\/15\\\/new-mediawiki-extension-push\\\/\"},\"author\":{\"name\":\"Jeroen\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#\\\/schema\\\/person\\\/4e2ef14f2ca7dc3a0ac137d1692b66b7\"},\"headline\":\"New MediaWiki extension: Push\",\"datePublished\":\"2010-12-15T10:10:48+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2010\\\/12\\\/15\\\/new-mediawiki-extension-push\\\/\"},\"wordCount\":610,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#\\\/schema\\\/person\\\/4e2ef14f2ca7dc3a0ac137d1692b66b7\"},\"image\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2010\\\/12\\\/15\\\/new-mediawiki-extension-push\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/wp-content\\\/uploads\\\/2010\\\/12\\\/push-tab-interface.png\",\"keywords\":[\"Ajax\",\"JavaScript\",\"jQuery\",\"MediaWiki\",\"MediaWiki extensions\",\"PHP\",\"Planet Wikimedia\",\"Push\",\"WikiWorks\"],\"articleSection\":[\"Programming\",\"Software\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2010\\\/12\\\/15\\\/new-mediawiki-extension-push\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2010\\\/12\\\/15\\\/new-mediawiki-extension-push\\\/\",\"url\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2010\\\/12\\\/15\\\/new-mediawiki-extension-push\\\/\",\"name\":\"New MediaWiki extension: Push - Blog of Jeroen De Dauw\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2010\\\/12\\\/15\\\/new-mediawiki-extension-push\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2010\\\/12\\\/15\\\/new-mediawiki-extension-push\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/wp-content\\\/uploads\\\/2010\\\/12\\\/push-tab-interface.png\",\"datePublished\":\"2010-12-15T10:10:48+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2010\\\/12\\\/15\\\/new-mediawiki-extension-push\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2010\\\/12\\\/15\\\/new-mediawiki-extension-push\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2010\\\/12\\\/15\\\/new-mediawiki-extension-push\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/wp-content\\\/uploads\\\/2010\\\/12\\\/push-tab-interface.png\",\"contentUrl\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/wp-content\\\/uploads\\\/2010\\\/12\\\/push-tab-interface.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/2010\\\/12\\\/15\\\/new-mediawiki-extension-push\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"New MediaWiki extension: Push\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/\",\"name\":\"Entropy Wins\",\"description\":\"A blog on Software Architecture, Design and Craftsmanship\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#\\\/schema\\\/person\\\/4e2ef14f2ca7dc3a0ac137d1692b66b7\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.entropywins.wtf\\\/blog\\\/#\\\/schema\\\/person\\\/4e2ef14f2ca7dc3a0ac137d1692b66b7\",\"name\":\"Jeroen\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g\",\"caption\":\"Jeroen\"},\"logo\":{\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g\"},\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/in\\\/jeroendedauw\\\/\",\"https:\\\/\\\/x.com\\\/https:\\\/\\\/twitter.com\\\/JeroenDeDauw\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"New MediaWiki extension: Push - Blog of Jeroen De Dauw","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/","og_locale":"en_US","og_type":"article","og_title":"New MediaWiki extension: Push - Blog of Jeroen De Dauw","og_description":"I&#8217;m happy to announce the release of a new MediaWiki extension I&#8217;ve been working on over the past two weeks.&hellip;","og_url":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/","og_site_name":"Blog of Jeroen De Dauw","article_published_time":"2010-12-15T10:10:48+00:00","og_image":[{"url":"https:\/\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2010\/12\/push-tab-interface.png","type":"","width":"","height":""}],"author":"Jeroen","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/JeroenDeDauw","twitter_site":"@JeroenDeDauw","twitter_misc":{"Written by":"Jeroen","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/#article","isPartOf":{"@id":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/"},"author":{"name":"Jeroen","@id":"https:\/\/www.entropywins.wtf\/blog\/#\/schema\/person\/4e2ef14f2ca7dc3a0ac137d1692b66b7"},"headline":"New MediaWiki extension: Push","datePublished":"2010-12-15T10:10:48+00:00","mainEntityOfPage":{"@id":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/"},"wordCount":610,"commentCount":1,"publisher":{"@id":"https:\/\/www.entropywins.wtf\/blog\/#\/schema\/person\/4e2ef14f2ca7dc3a0ac137d1692b66b7"},"image":{"@id":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/#primaryimage"},"thumbnailUrl":"https:\/\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2010\/12\/push-tab-interface.png","keywords":["Ajax","JavaScript","jQuery","MediaWiki","MediaWiki extensions","PHP","Planet Wikimedia","Push","WikiWorks"],"articleSection":["Programming","Software"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/","url":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/","name":"New MediaWiki extension: Push - Blog of Jeroen De Dauw","isPartOf":{"@id":"https:\/\/www.entropywins.wtf\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/#primaryimage"},"image":{"@id":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/#primaryimage"},"thumbnailUrl":"https:\/\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2010\/12\/push-tab-interface.png","datePublished":"2010-12-15T10:10:48+00:00","breadcrumb":{"@id":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/#primaryimage","url":"https:\/\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2010\/12\/push-tab-interface.png","contentUrl":"https:\/\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2010\/12\/push-tab-interface.png"},{"@type":"BreadcrumbList","@id":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/15\/new-mediawiki-extension-push\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.entropywins.wtf\/blog\/"},{"@type":"ListItem","position":2,"name":"New MediaWiki extension: Push"}]},{"@type":"WebSite","@id":"https:\/\/www.entropywins.wtf\/blog\/#website","url":"https:\/\/www.entropywins.wtf\/blog\/","name":"Entropy Wins","description":"A blog on Software Architecture, Design and Craftsmanship","publisher":{"@id":"https:\/\/www.entropywins.wtf\/blog\/#\/schema\/person\/4e2ef14f2ca7dc3a0ac137d1692b66b7"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.entropywins.wtf\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.entropywins.wtf\/blog\/#\/schema\/person\/4e2ef14f2ca7dc3a0ac137d1692b66b7","name":"Jeroen","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g","caption":"Jeroen"},"logo":{"@id":"https:\/\/secure.gravatar.com\/avatar\/d62e6b5b8e332335cf17854fac850d9c70ba367c4692872613c3110ebd4e009b?s=96&d=mm&r=g"},"sameAs":["https:\/\/www.linkedin.com\/in\/jeroendedauw\/","https:\/\/x.com\/https:\/\/twitter.com\/JeroenDeDauw"]}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p74TBF-gE","jetpack-related-posts":[{"id":1019,"url":"https:\/\/www.entropywins.wtf\/blog\/2010\/12\/08\/semantic-mediawiki-update\/","url_meta":{"origin":1032,"position":0},"title":"(Semantic) MediaWiki update","author":"Jeroen","date":"2010-12-08","format":false,"excerpt":"I've been neglecting my blog in favour of microblogging status updates and release notes, and have not written anything here for over a month and a half. Therefore I'm going to provide an overview of all the awesome (now also on StatusNet!) new things that have come out since then,\u2026","rel":"","context":"In &quot;Programming&quot;","block_context":{"text":"Programming","link":"https:\/\/www.entropywins.wtf\/blog\/category\/programming\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2010\/12\/SMW_logo_260.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":1139,"url":"https:\/\/www.entropywins.wtf\/blog\/2013\/10\/31\/mediawiki-extension-installer\/","url_meta":{"origin":1032,"position":1},"title":"MediaWiki extension installer","author":"Jeroen","date":"2013-10-31","format":false,"excerpt":"During SMWCon earlier this week I hacked up a tool to install MediaWiki extensions with Composer. Composer is a dependency manager, in other words a tool that automates many of the tasks that people installing MediaWiki extensions currently need to deal with manually. Right now one needs to bother with\u2026","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2941,"url":"https:\/\/www.entropywins.wtf\/blog\/2025\/08\/20\/why-you-should-use-mediawiki-lts-versions\/","url_meta":{"origin":1032,"position":2},"title":"Why You Should Skip MediaWiki 1.44","author":"Jeroen","date":"2025-08-20","format":false,"excerpt":"Or: Why you should stop worrying and love the LTS releases. TL;DR: Stick to MediaWiki 1.43 LTS, avoid MediaWiki 1.44, 1.45, and 1.46. There are two major MediaWiki releases every year, and every fourth such release gets Long Term Support (LTS). Two consistent approaches to upgrading MediaWiki are to upgrade\u2026","rel":"","context":"In &quot;Software&quot;","block_context":{"text":"Software","link":"https:\/\/www.entropywins.wtf\/blog\/category\/software\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2025\/08\/MediaWikiLTS.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2025\/08\/MediaWikiLTS.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2025\/08\/MediaWikiLTS.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2025\/08\/MediaWikiLTS.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2025\/08\/MediaWikiLTS.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2025\/08\/MediaWikiLTS.png?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":1153,"url":"https:\/\/www.entropywins.wtf\/blog\/2013\/11\/24\/introduction-to-composer-for-mediawiki-developers\/","url_meta":{"origin":1032,"position":3},"title":"Introduction to Composer for MediaWiki developers","author":"Jeroen","date":"2013-11-24","format":false,"excerpt":"This post aims to be a quick start guide for MediaWiki extension developers that want to get their extension to be installable via Composer. If you are not yet familiar with Composer, I recommend you have a look at the Composer page on MediaWiki.org before continuing with this post. Defining\u2026","rel":"","context":"In \"composer\"","block_context":{"text":"composer","link":"https:\/\/www.entropywins.wtf\/blog\/tag\/composer\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2013\/11\/logo-composer-transparent.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":1172,"url":"https:\/\/www.entropywins.wtf\/blog\/2014\/01\/02\/mediawiki-extensions-to-define-their-mediawiki-compatibility\/","url_meta":{"origin":1032,"position":4},"title":"MediaWiki extensions to define their MediaWiki compatibility","author":"Jeroen","date":"2014-01-02","format":false,"excerpt":"Over the past year support for real dependency management has been gradually added to MediaWiki and selected extensions. This support being based on the Composer software. While extensions have been able to specify their dependencies for a while, such as PHP libraries and other extensions, they where not able to\u2026","rel":"","context":"In \"composer\"","block_context":{"text":"composer","link":"https:\/\/www.entropywins.wtf\/blog\/tag\/composer\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1109,"url":"https:\/\/www.entropywins.wtf\/blog\/2011\/05\/30\/new-mediawiki-extension-spark\/","url_meta":{"origin":1032,"position":5},"title":"New MediaWiki extension: Spark","author":"Jeroen","date":"2011-05-30","format":false,"excerpt":"Yesterday I quickly wrote up a simple (but awesome) MediaWiki extension that allows you to make use of the Spark library in your wiki. Spark as described on the Spark website: The web is not only growing in sheer size, but it also grows in how much it is interconnected.\u2026","rel":"","context":"In &quot;Programming&quot;","block_context":{"text":"Programming","link":"https:\/\/www.entropywins.wtf\/blog\/category\/programming\/"},"img":{"alt_text":"Spark logo","src":"https:\/\/i0.wp.com\/www.entropywins.wtf\/blog\/wp-content\/uploads\/2011\/05\/spark-logo.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/posts\/1032","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/comments?post=1032"}],"version-history":[{"count":0,"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/posts\/1032\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/media?parent=1032"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/categories?post=1032"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.entropywins.wtf\/blog\/wp-json\/wp\/v2\/tags?post=1032"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}