Page MenuHomePhabricator

Parsoid in the apt repository not compatible with master MediaWiki
Closed, ResolvedPublic

Description

I am running the latest master version of MediaWiki and VisualEditor. I installed Parsoid according to the instructions in https://www.mediawiki.org/wiki/Parsoid/Setup#Ubuntu_.2F_Debian_on_amd64. Everything is configured correctly, but VE can't communicate with Parsoid (404).

Reverting f5c874cbaf2c1408342305fbc87dc6db36728e07 locally fixed the issue; apparently that patch makes MediaWiki incompatible with older Parsoids. I conclude that the Parsoid in the apt repository is hopelessly outdated; please update it.

A side note: configuring it according to https://www.mediawiki.org/wiki/Parsoid/Setup#Configuration causes the Parsoid service to be unable to start, since parsoidConfig.setMwApi actually takes two arguments and not one. I don't know if this is a typo in documentation, or another symptom of a hopelessly outdated version. (CSA note: it's a symptom of the outdated parsoid version.)

Event Timeline

matmarex raised the priority of this task from to Needs Triage.
matmarex updated the task description. (Show Details)
matmarex added a project: Parsoid.
matmarex added subscribers: matmarex, cscott, Krenair.

See T110698 regarding the outdated repo.

And, yes, the configuration instructions are for Parsoid in git master (and what would have been the newer version of the deb package if the build would have succeeded). I think we should update our docs. to point to older revisions of that wiki page for older deb versions.

I'd prefer *not* to update the docs, since the old versions of Parsoid were equally hard to configure, in completely different ways. I've updated VE, Parsoid, and (soon) Flow documentation to use the same configuration information, which is consistent with the latest mediawiki and the latest VE, Parsoid, Flow, etc. It will just confuse things further to spawn a bunch of alternate configuration information pages.

(The latest version of Parsoid is compatible with old mediawiki versions, but not the other way around. So there's no real reason for people not to use the latest Parsoid and thus (IMO) no reason to document the configuration of old Parsoid versions.)

If you actually want to configure an older parsoid, you can look at the history page to find the older installation instructions. But my goal is to move us all past those bad old days.

(And note that the only reason @matmarex is in this pickle is because we couldn't actually release the new Parsoid promptly as we'd planned, because ops screwed up the NFS migration (T110698). We didn't discover that until after the new version of Parsoid had been released and all the docs updated. For what it's worth, the version of Parsoid in npm is up-to-date, and the instructions to install Parsoid from git are also valid. So those are workarounds.)

This comment was removed by cscott.

I didn't mean "update" the docs as in add all instructions. But, just add a line saying: "If you are using a parsoid version older than xyz, then please look at these older instructions here" that points to the older revision of that page. I don't see that as confusing -- just helpful for those with older installs.

Yes, but that comment wouldn't actually help much -- you need to look at older versions of the mediawiki, VE, Flow, and potentially RESTBase installation instructions as well. It starts getting very complicated. And no one is/should actually be using that particular configuration, so you're just encouraging people to do something we wouldn't recommend and won't support. Let's just fix the real problem, not create new sources of confusion.

I'm certainly not opposed to adding a note that "due to XYZ reasons, the latest version of Parsoid is not yet packaged for debian, and the latest debian packages are out of date. Please follow the "developer setup" instructions until this is fixed." I think that's a more sustainable course -- and the "developer setup" of Parsoid is, in fact, well tested and supported, so we're not creating any new problems.

Yes, but that comment wouldn't actually help much -- you need to look at older versions of the mediawiki, VE, Flow, and potentially RESTBase installation instructions as well. It starts getting very complicated.

Fair enough.

I've updated https://www.mediawiki.org/wiki/Parsoid/Setup with the warning I suggested above. Feel free to tweak/style/etc.

cscott set Security to None.

I've updated https://www.mediawiki.org/wiki/Parsoid/Setup with the warning I suggested above. Feel free to tweak/style/etc.

+1! I recently ran into the same problem :) Wouldn't it be a nice gimmick to send an announce to MediaWiki-l or MediaWiki-announce? I invested some time to find out, why VisualEditor isn't working anymore (ok, I'm using a wmf-branch, which isn't supported, but a notice, that the parsoid deb isn't updated currently sounds like a reasonable problem to announce, so that wiki sysadmins can consider, if they update manually to the latest version, using the developer setup, or keeping the old version "as long as possible"). What do you think?

ssastry triaged this task as High priority.Sep 14 2015, 3:23 PM

Change 239098 had a related patch set uploaded (by Cscott):
Release version 0.4.1

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

Change 239098 merged by jenkins-bot:
Release version 0.4.1

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

cscott claimed this task.

0.4.1all has been pushed to releases.wikimedia.org, and all the installation instructions updated.

Yay, it works for me again!

On https://www.mediawiki.org/wiki/Parsoid/Setup#Ubuntu_.2F_Debian, I think the first of the "Caveats about the deb":

We currently only provide packages for amd64. You'll get 404s when using another architecture, such as i386. The repository location will eventually change to an official WMF repository once that is set up.

Is no longer true. Is it?