Page MenuHomePhabricator

Error "No such file or directory ... Maintenance.php"
Closed, InvalidPublicBUG REPORT

Assigned To
None
Authored By
DungLe94
Apr 15 2021, 11:26 AM
Referenced Files
F35034772: image.png
Apr 2 2022, 8:52 AM
F34400394: image.png
Apr 15 2021, 4:50 PM
F34400341: pomme - source.txt
Apr 15 2021, 4:19 PM
F34400065: image.png
Apr 15 2021, 11:26 AM
F34400069: image.png
Apr 15 2021, 11:26 AM
F34400058: image.png
Apr 15 2021, 11:26 AM
F34400070: image.png
Apr 15 2021, 11:26 AM
F34400079: image.png
Apr 15 2021, 11:26 AM

Description

Previously, I installed mediawiki on Docker on Windows 10. Then I run

echo -e 'Foo' | php ./vendor/wikimedia/parsoid/bin/parse.php

and got an error

# echo -e 'Foo' | php ./vendor/wikimedia/parsoid/bin/parse.php

Warning: require_once(/var/www/html/vendor/wikimedia/parsoid/tools/../vendor/autoload.php): failed to open stream: No such file or directory in /var/www/html/vendor/wikimedia/parsoid/tools/Maintenance.php on line 106

Fatal error: require_once(): Failed opening required '/var/www/html/vendor/wikimedia/parsoid/tools/../vendor/autoload.php' (include_path='.:/usr/local/lib/php') in /var/www/html/vendor/wikimedia/parsoid/tools/Maintenance.php on line 106

I posted a question about it here.

Then I've installed Bitnami MediaWiki. The installation is successful.

image.png (650×1 px, 108 KB)

I have checked that the file parse.php is in directory C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\bin.

image.png (564×980 px, 71 KB)

I've also added the folder containing php C:\Bitnami\mediawiki-1.35.2-0\php in my PATH environment variable.

image.png (499×1 px, 90 KB)

image.png (255×603 px, 16 KB)

After all of this setup, I open cmd in directory C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid and run my dream command echo 'Foo' | php bin/parse.php. Unfortunately the same error appears.

C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>echo 'Foo' | php bin/parse.php

PHP Warning:  require_once(C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools/../vendor/autoload.php): failed to open stream: No such file or directory in C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools\Maintenance.php on line 106
PHP Fatal error:  require_once(): Failed opening required 'C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools/../vendor/autoload.php' (include_path='.;C:\php\pear') in C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools\Maintenance.php on line 106

When I go to directory C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools, the file Maintenance.php is there.

image.png (359×1 px, 42 KB)

Could you please elaborate on this issue?

Event Timeline

Reedy added a subscriber: Reedy.

It looks like the expectation of the path to vendor is wrong.

Replacing with require_once __DIR__ . '/../vendor/autoload.php'; with require_once __DIR__ . '/../../../../vendor/autoload.php'; or even just require_once __DIR__ . '/../../../autoload.php'; will fix that error, but then leads to another (and I don't know if this breaks some other setup/expectation; it seems to be designed presumably with a git clone of parsoid, and then expected relative path to vendor itself)

PHP Fatal error:  Uncaught Error: Class 'Wikimedia\Parsoid\Tools\OptsProcessor' not found in /var/www/wiki/mediawiki/core/vendor/wikimedia/parsoid/tools/Maintenance.php:119
Stack trace:
#0 /var/www/wiki/mediawiki/core/vendor/wikimedia/parsoid/bin/parse.php(8): require_once()
#1 {main}
  thrown in /var/www/wiki/mediawiki/core/vendor/wikimedia/parsoid/tools/Maintenance.php on line 119
reedy@ubuntu64-web-esxi:/var/www/wiki/mediawiki/core/vendor/wikimedia/parsoid$ nano tools/Maintenance.php

That seems to be because OptsProcessor is only autoloaded via autoload-dev

	"autoload-dev": {
		"psr-4": {
			"Wikimedia\\Parsoid\\ParserTests\\": "tests/ParserTests",
			"Wikimedia\\Parsoid\\Tools\\": "tools/",
			"Test\\": "tests/phpunit/"
		}
	},

@Reedy I guess your MediaWiki is installed manually. So this error is not exclusively within 1-click installation such as Docker MediaWiki and Bitnami MediaWiki, right?

@Reedy I guess your MediaWiki is installed manually. So this error is not exclusively within 1-click installation such as Docker MediaWiki and Bitnami MediaWiki, right?

Indeed.

Looking at the code docs...

# On scandium and production machines, you should use:
# sudo -u www-data php /srv/mediawiki/multiversion/MWScript.php \
#     /srv/parsoid-testing/bin/<cmd>.php --wiki=hiwiki --integrated <args>
#
# eg:
#
# USER@scandium:/srv/mediawiki/multiversion$ echo '==Foo==' | \
#    sudo -u www-data php MWScript.php \
#    /srv/parsoid-testing/bin/parse.php --wiki=hiwiki --integrated
#

But

reedy@ubuntu64-web-esxi:/var/www/wiki/mediawiki/core/vendor/wikimedia/parsoid$ echo 'Foo' | MW_INSTALL_PATH=/var/www/wiki/mediawiki/core php bin/parse.php --integrated
Unexpected option integrated!

@Reedy So I really found a bug in the famous software MediaWiki ^^ Please inform me if someone fixes this bug.

My ultimate goal is to parse the Wiki xml dump into HTML. There are many parsers available, but Parsoid is of course the best. The resulted HTML will allow me to create contents adapted to different devices and read on different software (GoldenDict, Google Chrome, Microsoft Edge, Mdict, ...). I'm sure that a lot of people will benefit from this. My short-term goal is to build a dictionary for GoldenDict from Wiktionary dump.

Yeah, I'm sure the Parsing team will chip in at some point soon to either tell us we're doing something daft, or there's indeed an issue/edge case to be fixed

reedy@ubuntu64-web-esxi:/var/www/wiki/mediawiki/core/vendor/wikimedia/parsoid$ echo 'Foo' | MW_INSTALL_PATH=/var/www/wiki/mediawiki/core php bin/parse.php --integrated
Unexpected option integrated!

@Tgr fixed this in https://gerrit.wikimedia.org/r/c/mediawiki/services/parsoid/+/678327 .. so, the docker image needs an update.

Oh, none of us had reviewed it. +2ed it now. :-)

@ssastry I guess to fix the error, I need to replace the old parse.php with the updated one. I've visited https://gerrit.wikimedia.org/r/c/mediawiki/services/parsoid/+/678327, but don't know how to download the updated parse.php. Can you explain more?

Is your setup using/following the REL1_35 branch, or is it following specific git tags?

@Reedy I installed the Bitnami MediaWiki from here. I have no experience with software development, so I don't know what you meant by REL1_35 branch or git tag. I thought the Bitnami MediaWiki stack is created by you guys at Wikimedia, no?

Nope, we have nothing to do with Bitnami MediaWiki. Well, beyond it seemingly uses the Debian MediaWiki packages that @Legoktm does (and obviously developing/releasing MediaWiki itself).

https://github.com/bitnami/bitnami-docker-mediawiki

It doesn't look like this fix will make it into a bitnami docker container for probably 2.5 months from now, unless you can convince them to do so upstream.

@Reedy I thought I just need to replace the old parse.php with the new one. It's not that simple, no? If the fix for Bitnami MediaWiki takes too much time, I hope the fix for Docker is sooner.

You can just "replace the old parse.php with the new one", but you might cause yourself problems down the line.

The "official" docker just follows release tarballs too. You could potentially use the "dev" docker container, which follows the master git branch... In most cases, the fix to Parsoid would be available there within a week or so, depending on when the next parsoid tag is released

@Reedy Waiting for one week to get the bug fixed is not a big problem :))

I have struggled a lot to make Parsoid work. Is there any way I can see the resulted html from Parsoid parsing the text (attached below) before I get the fix?

My ultimate goal is to parse the Wiki xml dump into HTML. There are many parsers available, but Parsoid is of course the best. The resulted HTML will allow me to create contents adapted to different devices and read on different software (GoldenDict, Google Chrome, Microsoft Edge, Mdict, ...). I'm sure that a lot of people will benefit from this. My short-term goal is to build a dictionary for GoldenDict from Wiktionary dump.

If you import the XML dump into your local wiki, then, you don't have to use parse.php for this. You can simply hit the REST API to fetch the HTML for the pages. So, you don't have to mess with parse.php or anything.

The REST API would be of the form: https://$LOCAL_WIKI_URL/w/rest.php/v1/page/$TITLE/html where $LOCAL_WIKI_URL will be localhost or localhost:8080 or whatever appropriate for docker.

@ssastry With the link http://10.188.250.97/wiki/index.php/%C3%89tudier, I get

image.png (785×1 px, 126 KB)

Then I try the REST API http://10.188.250.97/wiki/rest.php/v1/page/%C3%89tudier/html and get an error

{"messageTranslations":{"en":"Unable to fetch Parsoid HTML"},"httpCode":500,"httpReason":"Internal Server Error"}

It seems Parsoid is inevitable in the fetching process.

I see the phrase Template: everywhere (see my above screenshot). Is it normal or abnormal (due to bugging Parsoid)?

I see the phrase Template: everywhere (see my above screenshot). Is it normal or abnormal (due to bugging Parsoid)?

It means you haven't imported everything, or at least, the template dependancies for that page.

It seems Parsoid is inevitable in the fetching process.

Parsoid is, sure. Subbu said that directly interacting with parse.php (etc) wasn't necessary

@Reedy You meant using directly parse.php is not possible due to a bug, but Parsoid still works well when we import the xml dump with php importDump.php dumpfile.xml> ?

Is there an option for command ImportDump.php to parse only the first 1000 pages? I meant to parse a small number of pages to see how the html looks like. I check the documentation here but to no avail.

@Reedy You meant using directly parse.php is not possible due to a bug, but Parsoid still works well when we import the xml dump with php importDump.php dumpfile.xml> ?

Yes; or it should if configured correctly. The Internal Server Error sounds like something isn't quite right though.

Is there an option for command ImportDump.php to parse only the first 1000 pages? I meant to parse a small number of pages to see how the html looks like. I check the documentation here but to no avail.

No. Mostly people would suggest creating a dump (using Special:Export on the wiki) if you want a subset/partial

I try to import some of the last few lines with

php C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\maintenance\importDump.php C:\Users\Akira\Downloads\Compressed\frwiktionary-20210401-pages-articles-multistream.xml --no-updates --skip-to:4130000

Then I got an error :((

C:\Users\Akira>php C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\maintenance\importDump.php C:\Users\Akira\Downloads\Compressed\frwiktionary-20210401-pages-articles-multistream.xml --no-updates --skip-to 4130000
4130000 (80127.49 pages/sec 0.02 revs/sec)
4130100 (78613.06 pages/sec 1.92 revs/sec)
4130200 (77245.21 pages/sec 3.76 revs/sec)
4130300 (75937.97 pages/sec 5.53 revs/sec)
4130400 (74607.61 pages/sec 7.24 revs/sec)
4130500 (73306.22 pages/sec 8.89 revs/sec)
4130600 (71995.46 pages/sec 10.48 revs/sec)
4130700 (70853.21 pages/sec 12.02 revs/sec)
4130800 (69787.11 pages/sec 13.53 revs/sec)
4130900 (68802.13 pages/sec 15.01 revs/sec)
4131000 (67789.56 pages/sec 16.43 revs/sec)
4131100 (66828.13 pages/sec 17.81 revs/sec)
4131200 (65898.88 pages/sec 19.16 revs/sec)
4131300 (64924.98 pages/sec 20.45 revs/sec)
4131400 (64049.76 pages/sec 21.72 revs/sec)
4131500 (63171.89 pages/sec 22.95 revs/sec)
4131600 (62302.26 pages/sec 24.14 revs/sec)
MWUnknownContentModelException from line 201 of C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\includes\content\ContentHandlerFactory.php: The content model 'Scribunto' is not registered on this wiki.
See https://www.mediawiki.org/wiki/Content_handlers to find out which extensions handle this content model.
#0 C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\includes\content\ContentHandlerFactory.php(266): MediaWiki\Content\ContentHandlerFactory->validateContentHandler()
#1 C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\includes\content\ContentHandlerFactory.php(189): MediaWiki\Content\ContentHandlerFactory->createContentHandlerFromHook()
#2 C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\includes\content\ContentHandlerFactory.php(97): MediaWiki\Content\ContentHandlerFactory->createForModelID()
#3 C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\includes\import\WikiImporter.php(1185): MediaWiki\Content\ContentHandlerFactory->getContentHandler()
#4 C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\includes\import\WikiImporter.php(932): WikiImporter->getContentHandler()
#5 C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\includes\import\WikiImporter.php(958): WikiImporter->makeContent()
#6 C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\includes\import\WikiImporter.php(857): WikiImporter->processRevision()
#7 C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\includes\import\WikiImporter.php(795): WikiImporter->handleRevision()
#8 C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\includes\import\WikiImporter.php(612): WikiImporter->handlePage()#9 C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\maintenance\importDump.php(353): WikiImporter->doImport()
#10 C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\maintenance\importDump.php(286): BackupReader->importFromHandle()
#11 C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\maintenance\importDump.php(130): BackupReader->importFromFile()
#12 C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\maintenance\doMaintenance.php(107): BackupReader->execute()
#13 C:\Bitnami\mediawiki-1.35.2-0\apps\mediawiki\htdocs\maintenance\importDump.php(358): require_once('C:\\Bitnami\\medi...')
#14 {main}

I would like to delete my wiki (I aborted the import before it finished) and then import just a few last pages to see the resulted html. Is there a command to do so?

Looks like you are needing a lot of detailed guidance and support in some of this work. I recommend you try to ensure your MediaWiki is set up properly with Parsoid configured properly. And, then, you need to ensure that the XML dump is properly imported (including all templates, modules, and necessary extensions). Then, you can fetch the HTML for it from your MediaWiki install. If you are having trouble doing this setup, please find the appropriate support forum (maybe someone can point you to them). We aren't really set up to provide this level of support. In any case, Phabricator is not the right forum for this level of troubleshooting / MediaWiki support.

Alternatively, you can run a crawler that is rate limited appropriately to fetch content from en.wiktionary.org (Ex: https://en.wiktionary.org/w/rest.php/v1/page/harangue/html) and you can save that HTML locally and then appropriately do what you need to do with that HTML dump. Given the trouble you are having with setting up your own mediawki install, I recommend this approach.

This ticket seems to have become numerous individual support requests. I'm going to boldly close this; please bring up general questions in support forums.
Thanks for your understanding.

Thank you so much for all of your help. I will try to install MediaWiki with Parsoid configured properly.

@ssastry Assume that I have set up MediaWiki along with Parsoid properly. I don't import the .xml.bz2 dump into MediaWiki. I also don't have Internet connection. Is it possible for Parsoid to convert the wikitext in the dump into a complete HTML, just as the rest api from the wiki website does?

I also wonder why MediaWiki does not publish the html version of the dump. The html is a structured text and easy to be exploited.

@DungLe94: Please see my previous comment and please ask support questions in support places instead. Thanks.

I have installed the latest version 1.37.2, but it seems the problem has not been solved.

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>echo 'Foo' | php bin/parse.php
PHP Warning:  require_once(C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools/../vendor/autoload.php): failed to open stream: No such file or directory in C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools\Maintenance.php on line 117
PHP Fatal error:  require_once(): Failed opening required 'C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools/../vendor/autoload.php' (include_path='.;C:\php\pear') in C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools\Maintenance.php on line 117

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>

What if you try doing echo 'Foo' | php bin/parse.php --integrated ?

What if you try doing echo 'Foo' | php bin/parse.php --integrated ?

Hello @Reedy, the result is

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>echo 'Foo' | php bin/parse.php --integrated
MW_INSTALL_PATH environment variable must be defined.
PHP Fatal error:  Uncaught Error: Class 'AutoLoader' not found in C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools\Maintenance.php:46
Stack trace:
#0 C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\bin\parse.php(8): require_once()
#1 {main}
  thrown in C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools\Maintenance.php on line 46

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>

MW_INSTALL_PATH environment variable must be defined.

Assuming your MediaWiki install is at /var/www/html

MW_INSTALL_PATH=/var/www/html echo 'Foo' | php bin/parse.php --integrated

@Reedy

The folder structure of the wikimedia installation is

image.png (444×372 px, 16 KB)

Another error shows up

Microsoft Windows [Version 10.0.19044.1586]
(c) Microsoft Corporation. All rights reserved.

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>MW_INSTALL_PATH="C:\Bitnami\mediawiki-1.37.2-0" echo 'Foo' | php bin/parse.php --integrated
'MW_INSTALL_PATH' is not recognized as an internal or external command,
operable program or batch file.

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>
C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>MW_INSTALL_PATH="C:\Bitnami\mediawiki-1.37.2-0\apps" echo 'Foo' | php bin/parse.php --integrated
'MW_INSTALL_PATH' is not recognized as an internal or external command,
operable program or batch file.

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>
C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>MW_INSTALL_PATH="C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki" echo 'Foo' | php bin/parse.php --integrated

Now we're getting into the realms of Windows tech support from what I can see...

This ticket seems to have become numerous individual support requests. I'm going to boldly close this; please bring up general questions in support forums.
Thanks for your understanding.

I guess based on https://ss64.com/nt/set.html

SET MW_INSTALL_PATH="C:\Bitnami\mediawiki-1.37.2-0"

then

echo 'Foo' | php bin/parse.php --integrated

@Reedy

The original problem has re-appeared ✌

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>SET MW_INSTALL_PATH="C:\Bitnami\mediawiki-1.37.2-0"

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>echo 'Foo' | php bin/parse.php --integrated
PHP Warning:  require_once("C:\Bitnami\mediawiki-1.37.2-0"/maintenance/Maintenance.php): failed to open stream: No such file or directory in C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools\Maintenance.php on line 35
PHP Fatal error:  require_once(): Failed opening required '"C:\Bitnami\mediawiki-1.37.2-0"/maintenance/Maintenance.php' (include_path='.;C:\php\pear') in C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools\Maintenance.php on line 35

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>

Because the path to MediaWiki isn't right

I would've assumed that a folder called mediawiki would contain mediawiki...

SET MW_INSTALL_PATH="C:\Bitnami\mediawiki-1.37.2-0\htdocs\mediawiki"

echo 'Foo' | php bin/parse.php --integrated

@Reedy

The error persists

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>SET MW_INSTALL_PATH="C:\Bitnami\mediawiki-1.37.2-0\htdocs\mediawiki"

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>echo 'Foo' | php bin/parse.php --integrated
PHP Warning:  require_once("C:\Bitnami\mediawiki-1.37.2-0\htdocs\mediawiki"/maintenance/Maintenance.php): failed to open stream: No such file or directory in C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools\Maintenance.php on line 35
PHP Fatal error:  require_once(): Failed opening required '"C:\Bitnami\mediawiki-1.37.2-0\htdocs\mediawiki"/maintenance/Maintenance.php' (include_path='.;C:\php\pear') in C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid\tools\Maintenance.php on line 35

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>

In the error, It seems the path "C:\Bitnami\mediawiki-1.37.2-0\htdocs\mediawiki"/maintenance/Maintenance.php is not right, so I remove the " and run

SET MW_INSTALL_PATH=C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs
echo 'Foo' | php bin/parse.php --integrated

It seems to work <3

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>SET MW_INSTALL_PATH=C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>
C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>echo 'Foo' | php bin/parse.php --integrated
The "Parsoid" extension must be installed for this script to run. Please enable it and then try again.

C:\Bitnami\mediawiki-1.37.2-0\apps\mediawiki\htdocs\vendor\wikimedia\parsoid>

Could you explain a little bit how to enable Parsoid?