MediaWiki 1.35.0

MediaWiki is a free and open-source wiki software package written in PHP. It serves as the platform for Wikipedia and the other Wikimedia projects, used by hundreds of millions of people each month. MediaWiki is localised in over 350 languages and its reliability and robust feature set have earned it a large and vibrant community of third-party users and developers. MediaWiki is: feature-rich and extensible, both on-wiki and with hundreds of extensions; scalable and suitable for both small and large sites; simple to install, working on most hardware/software combinations; and available in your language.

Tags wiki php
License GNU GPLv3
State mature

Recent Releases

1.35.029 Sep 2020 12:05 minor feature: Merge "rdbms: Mark the Database class as stable for subclassing" . rcfilters: focus order on the limit/duration popup. . Merge "rcfilters: focus order on the limit/duration popup". . MediaSearchWidget: Added aria-label for screen reader for the search . . Merge "make prefetch for dumps work with large revisions for multiple . . mediawiki.ui: Deprecate `@colorProgressive*` `@colorDestructive*` v . . Merge "mediawiki.ui: Deprecate `@colorProgressive*` `@colorDestruct . . mediawiki.ui: Deprecate message (boxes) related variables. . mediawiki.ui: Deprecate `@colorMediumSevere` `@colorLowSevere` vars. . Add REL1_35 sub-modules. . RELEASE-NOTES-1.35: Note that this is now pre-testing, not alpha. . Merge "Add REL1_35 sub-modules" into REL1_35. . registration: string "true" in extension v2 schema. . EditPage: handle undoafter param properly. . Update git submodules. . composer: Lock Parsoid version to specific 0.12.0-a22 release. . Merge "composer: Lock Parsoid version to specific 0.12.0-a22 release" . . Bump Parsoid to v0.12.0-a23. . Update git submodules. . Merge "Bump Parsoid to v0.12.0-a23" into REL1_35. . installer: Undeprecate WebInstaller::getInfoBox(), still used. . Update git submodules. . Remove the obsolete populateContentModel script. . Clarify hook definition in extension.json. . Add overlay to mw.notify area. . Add watchlist expiry support to applicable APIs. . Merge "Add overlay to mw.notify area" into REL1_35. . Update the hooks documentation included with MediaWiki. . Remove obsolete findHooks.php script. . vue: Add unminified version of . shell: Expand documentation in firejail.profile. . Deprecate printableversion=yes. . Add import/export round trip test. . MCR import. . Check for unknown slot. . PageUpdater: handling of null edits. . registration: Sync v2 and v1 schemas. . Merge "PageUpdater: handling of null edits" into REL1_35. . OOUI: Backport I3d88853fdf9915d2b08063c80ecaf7d92828a5df. .
1.34.425 Sep 2020 03:15 minor feature: PHPCS. phan in ActorMigration. . Prep 1.34.4. . Add documentation to ActorMigration::getExistingActorId().
1.35.0-rc.305 Sep 2020 12:45 minor feature: mediawiki.visibleTimeout: Update the nextVisibleTimeoutId value . Update git submodules. . Update git submodules. . Remove maintenance/createCommonPasswordCdb.php. . Add missing comma to ValidSkinNames code example. . Increase "sites.site_global_key" to varbinary(64). . Merge "Remove maintenance/createCommonPasswordCdb.php" into REL1_35. . Merge "mediawiki.visibleTimeout: Update the nextVisibleTimeoutId valu . . shell edge-cases in Windows. . Drop PHP 7.2 support in MediaWiki 1.35; require 7.3.19. . Update RELEASE-NOTES-1.35. . Add CentralIdLookup::factoryNonLocal(). . CentralIdLookup: Add @SInCE to factoryNonLocal(). . User::pingLimiter: add user-global rate limit type. . Update git submodules. . User: enforce pingLimiter() expiry time. . Remove maintenance/storage/drop_content_model_info.sql. . Rest: Handle Uri constructor exception. . RequestFromGlobalsTest failing in Travis CI. . Rest: Use try/catch to handle URIs with embedded colon. . Few more RELEASE-NOTES items. . Bump MW_VERSION to 1.35.0-rc.3.
1.35.0-rc.222 Aug 2020 11:45 minor feature: uuid: filenames on Windows . Remove Gruntfile.js from the tarball. . Remove package-lock.json from the tarball. . firejail: Strengthen by copying from Wikimedia's profile. . Merge "firejail: Strengthen by copying from Wikimedia's profile" into . . ResourceLoaderOOUIImageModule: loadOOUIDefinition() may return false. . installer: PostgreSQL installer should respect a custom port. . Update git submodules. . bad use of ` =` PHP bit operation where `= ` bool is intended. . SpecialBlock: Show error if a block could not be inserted or found. . UserOptionsManager: options reset. . Merge "SpecialBlock: Show error if a block could not be inserted or f . . Merge "UserOptionsManager: options reset." into REL1_35. . WatchAction: avoid unnecessary UPDATEs when expiry is unchanged. . Allow skins to override initialisation. . Allow skins to disable search lazy load. . Followup to 34c1661: Allow skins to disable sea . . Update language in watchlist expiry. . Use IPset in MWRestrictions::checkIP. . Merge "Update language in watchlist expiry" into REL1_35. . race condition on edit page. . Hide watchlist expiry label in edit form. . Merge "Allow skins to override initialisation" i . . Merge " Allow skins to disable search lazy load" . . Merge "Followup to 34c1661: Allow skins to disa . . mime: docs of MIME_EXTENSIONS, they're arrays, not space-seperated. . Add application/font-sfnt to MimeMap for ttf files. . WatchedItemStore: Cache single WatchedItems with preexisting expiry. . Add a maintenance script to create bot passwords. . SpecialBlock: Make error more generic if block not inserted/found. . Add Traditional Chinese zh-hant as fallback for Amis (ami). . Improve wfParseUrl docs. . Add multi index fields in ImageListPager for unique paginate. . Guard against 'Widget not found' error. . Merge "Add Traditional Chinese zh
1.35.0-rc.108 Aug 2020 14:45 minor feature: RecentChanges watchlist filters when WatchlistExpiry is off . Update time period for watchlist expiry pop-up. . expiry dropdown not getting disabled on edit page. . Merge "RecentChanges watchlist filters when WatchlistExpiry is of . . Merge "expiry dropdown not getting disabled on edit page." into R . . Merge "Update time period for watchlist expiry pop-up" into REL1_35. . resources: Add license information for promise-polyfill. . maintenance: Remove executable bit from scripts without shebang. . bold of watched items on Special:RecentChangesLinked. . Edit page expiry dropdown should keep state after disabling/enabling. . Merge "bold of watched items on Special:RecentChangesLinked" into . . Translate expiry period in pop-up message for watchlist expiry. . Add watchlist clock icon to RecentChanges. . Merge "Add watchlist clock icon to RecentChanges" into REL1_35. . Update git submodules. . Permit temporary table writes on replica DB connections. . Add UI support in Special:EditWatchlist for watchlist expiry. . Disable wgLegacyJavaScriptGlobals by default. . Merge "Add UI support in Special:EditWatchlist for watchlist expiry" . . Add Edge to MediaWiki:Clearyourcache. . Add mediawiki.ui Less variable deprecation note. . AutoLoader: Remove entry for Wikimedia Services. . UserFactory method for getting anonymous user. . Merge "UserFactory method for getting anonymous user" into REL1_35. . reassignEdits: Update script to use User::newFromName for anon users. . Merge "AutoLoader: Remove entry for Wikimedia Services" into REL1_35. . Flesh out RELEASE-NOTES for changes since 1.35.0-rc.0. . Default to using watchlist expiry of old page when moving pages. . Two more RELEASE-NOTES-1.35 entries. . Bump MW_VERSION to 1.35.0-rc.1.
1.35.0-rc.001 Aug 2020 11:45 minor feature: Merge "Improve logging for "main slot of revision not found in databa . resourceloader: Mark ResourceLoaderModule as stable for subclassing. . Merge "Annotate newable classes". . Merge "resourceloader: Mark ResourceLoaderModule as stable for subcla . . Stability annotations for interfaces. . User: Move per-user logic in pingLimiter() r together. . Localisation updates from . Merge "HISTORY: Remove empty `Removed and replaced external libraries . . Merge "User: Move per-user logic in pingLimiter() r together". . Merge "MediaWikiServicesTest: newMediaWikiServices never has paramete . . Merge "Localisation updates from". . Merge "Add default deletion reason for deleting broken redirects.". . Split patch-drop-user-fields.sql into patch per table. . Mark API base classes as extensible. . Mark pager base classes as stable for subclassing. . Mark action base classes as extensible. . Add purgeExpiredBlocks maintenance script. . Mark additional classes as newable for now. . Update CREDITS file ahead of 1.35.0 release. . Merge "Split patch-drop-user-fields.sql into patch per table". . Merge "Update CREDITS file ahead of 1.35.0 release". . Merge "Mark additional classes as newable for now.". . Merge "Mark action base classes as extensible". . resourceloader: Improve perf of VueComponentParser's use of Remex. . Mark methods in authentication base classes as stable for overriding. . Merge "Mark pager base classes as stable for subclassing.". . resourceloader: Document that ResourceLoader::applyFilter can return . . Mark exceptions as @newable. . Merge "resourceloader: Document that ResourceLoader::applyFilter can . . Merge "Mark methods in authentication base classes as stable for over . . Merge "Mark exceptions as @newable". . Mark search base classes as stable for subclassing. . GlobalFunctions,WebRequest: Remove use of AtEase for parse_url(). . Merge "GlobalFunctions,WebRequest: Remove u
1.34.226 Jun 2020 00:05 minor feature: API: Use ConvertibleTimestamp::setFakeTime for testing curtimestamp . Merge "Fill GenderCache for used pages in action=query prop=fileusage". . installer: Deprecate WebInstaller::getInfoBox, getWarningBox and getE . . Merge "newRevisionsFromBatch: don't throw on duplicate row.". . Merge "You are reviewing an old revision should be a warningbox". . Merge "Clean up ar_usertext_timestamp index mess". . Merge "installer: Deprecate WebInstaller::getInfoBox, getWarningBox a . . resourceloader: Add modules parameter to makeVersionQuery(). . Add a run mode to wgDisableQueryPageUpdate. . filerepo: make FileRepo::store/storeBatch() accept FSFile as similar . . Merge "Add a run mode to wgDisableQueryPageUpdate". . Merge "Add.pipeline/ with dev image variant". . Merge "filebackend: avoid use of wfWikiId() in FileBackendGroup". . Merge "objectcache: fully respect "pcTTL" in WANObjectCache instead o . . In recompressTracked.php, the names of things related to child pr . . resourceloader: Add type hints for type ResourceLoaderContext. . Localisation updates from . Speed up ApiQuerySiteinfoTest:testContinuation. . Remove MySQL index aliasing for user_newtalk indexes. . MWTestCase: include table prein domain for temp table only mode. . Force usage of MCR aware database schema. . Merge "API: Use ConvertibleTimestamp::setFakeTime for testing curtime . . Merge "Speed up ApiQuerySiteinfoTest:testContinuation". . docs: typo on Doxygen main page. . Merge "MWTestCase: include table prein domain for temp table only . . Merge "Split down patch-comment-table.sql". . resourceloader: Add context to static functions in ResourceLoader. . Remove Revision::getRevisionText and gated pre-MCR schema access. . rdbms: Remove obsolete comment in LoadBalancerSingle. . permission check on protection log. . .pipeline/config.yaml: rename dev stage to publish. . Merge "Force usage of MCR aware database schema". . RevisionStore: Introduce getConte