Page MenuHomePhabricator

MediaWiki 1.26 bundled repo should be state of the art
Closed, ResolvedPublic

Description

All the extensions and skins to be bundled in 1.26.0 should represent the state of the art.

Using the list of extensions ./make-release.py --list-bundled 1.26.0 I crafted a very lame script pasted at P2189 which generates as of Nov 23rd:

RepoRegistrationcomposer testnpm test
extensions/Citeokokok
extensions/CiteThisPageokokok
extensions/ConfirmEditokokok
extensions/Gadgetsokokok
extensions/ImageMapokno testok
extensions/InputBoxokokok
extensions/Interwikiokokok
extensions/LocalisationUpdateokokok
extensions/Nukeokokok
extensions/ParserFunctionsokokok
extensions/PdfHandlerokokok
extensions/Poemokokok
extensions/Renameuserokokok
extensions/SpamBlacklistokokok
extensions/SyntaxHighlight_GeSHiokokok
extensions/TitleBlacklistokokok
extensions/WikiEditorokokok
skins/CologneBlueokokok
skins/Modernokokok
skins/MonoBookokokok
skins/Vectorokokok

We have a lot of activity going on to add composer.json / npm.json with a test entry point. So most probably the master branches have something.

In most case we will have to drop jshint/phpcs though, but maybe we can just bump the REL1_26 branch to latest master to catch up.

Related Objects

StatusSubtypeAssignedTask
Resolvedhashar
ResolvedLegoktm
ResolvedJdforrester-WMF
ResolvedPaladox
ResolvedPaladox
ResolvedJdforrester-WMF
ResolvedLegoktm
ResolvedFlorian
ResolvedJdforrester-WMF
ResolvedPaladox
ResolvedNone
ResolvedLegoktm
ResolvedLegoktm
ResolvedLegoktm
ResolvedLegoktm
ResolvedLegoktm
ResolvedPaladox
ResolvedLegoktm
ResolvedKrenair
ResolvedLegoktm

Event Timeline

hashar raised the priority of this task from to Needs Triage.
hashar updated the task description. (Show Details)
hashar added subscribers: hashar, demon, Legoktm, Paladox.

Change 246208 had a related patch set uploaded (by Paladox):
Add some Jenkins tests

https://gerrit.wikimedia.org/r/246208

Paladox set Security to None.
Paladox updated the task description. (Show Details)
Paladox updated the task description. (Show Details)

@Paladox that is for REL1_26. We will need to do some backports.

Change 246208 merged by jenkins-bot:
Add some Jenkins tests

https://gerrit.wikimedia.org/r/246208

Change 246981 had a related patch set uploaded (by Paladox):
build: Add composer test, initially with just parallel-test

https://gerrit.wikimedia.org/r/246981

Change 246991 had a related patch set uploaded (by Paladox):
Add composer.json

https://gerrit.wikimedia.org/r/246991

demon triaged this task as Medium priority.Oct 22 2015, 4:44 PM

Refreshed table. ConfirmEdit got composer/npm added.

I don't think we'll get composer.json created & merged w/ tests and backported to REL1_26 by Wednesday. Suggest just trying to finish getting ConfirmEdit's registration backported and npm for everything (which is done I think).

I have added a bunch of composer entry points. Some are falling such as LocalizationUpdate https://gerrit.wikimedia.org/r/#/c/254927/ :(

ConfirmEdit registration was added via T88047

https://gerrit.wikimedia.org/r/#/c/250277/ is the backport for REL1_26.

We will probably want to look at REL1_26..master because some changes have been made to extension.json/skin.json since we have cut the branches.

For some repos, I just went ahead and did a merge commit of master into REL1_26.

For ImageMap I could not add a composer test entry point because the PHP entry point check for wfLoadExtension existence and dies. When running php-parallel-lint that causes the job to fail.

@polybuildr had the same issue and claimed T103800 . There is probably a solution there.

From all REL1_26 bundled repos, only ImageMap and LocalisationUpdate have a composer.json file containing an autoload section.

@polybuildr state that removing is the easiest way since the RfC for extension management using composer was declined..

We might want to review all the registration files to be sure.

As per the discussion at T103800, since T467: RfC: Extension management with Composer was declined, the easiest way is to not autoload anything via composer.

Another approach I had explored was checking if the script is executing in the CLI and if so, don't die. But as @Legoktm explained to me then, that could silently break something in the future and then we'd be very confused.

Legoktm claimed this task.

ImageMap's composer.json is incompatible with running "composer test". We can fix that by making a breaking change to remove the autoload in composer (which we've done in ULS, ContentTranslation, Vector, etc.), but it's probably not worth it just to add phplint. Marking as resolved since everything else is done.

Change 246981 merged by jenkins-bot:
build: Add composer test, initially with just parallel-test

https://gerrit.wikimedia.org/r/246981