Ticket #10526 (new enhancement)

Opened 4 years ago

Last modified 4 years ago

Sync with upstreams mwlib

Reported by: martin.langhoff Owned by: cjb
Priority: normal Milestone: Future Release
Component: wikibrowse-activity Version: 1.5/1.0 Software Build os852 aka 10.1.2
Keywords: Cc:
Action Needed: never set Verified: no
Deployments affected: Blocked By:


We do have quite a few formatting / parsing glitches at the moment. Newer mwlib may fix those.

Wade dixit:

mwlib was under active development when I grabbed it for the activity like 2 years ago, so there may have been nice fixes since then.  One of the major issues it had was not outputting completely valid XHTML, which is why we had to run the output through a beautifier before passing it to Firefox.  (It had to be XHTML for Firefox to display the MathML)  That may be costing some time.

Change History

Changed 4 years ago by martin.langhoff

  • owner set to cjb
  • type changed from defect to enhancement
  • version changed from not specified to 1.5/1.0 Software Build os852 aka 10.1.2
  • component changed from not assigned to wikibrowse-activity
  • milestone changed from Not Triaged to Future Release

Changed 4 years ago by martin.langhoff

Reviewed current mwlib, and spent a morning trying to get server.py to work with it.

Work needed:

  • mwlib is now hosted in git so we can track it as a git submodule
  • server.py needs to be replaced by mw-serve, or reworked to mimic mw-serve
  • activity.py - same as server.py
  • our work in woip can be ported to a mwlib "reader" (reading from bzip2)
  • optionally, our work in woip can be ported to a mwlib "writer" backend (to bzip2 + indexes) -- this would mean we can take adv of the mwlib infra to compile wikislices
  • optionally migrate to ctypes for better portability - see #10510

What can we expect:

  • Faster serving -- as it outputs valid XHTML natively
  • Slower serving -- as upstream has dropped re2c scanner
  • Better correctness (?)
  • Port of writer backend: a maintained wikislice creation & maintenace toolchain
  • Port to ctypes: better portability across Python versions

Changed 4 years ago by martin.langhoff

Note: See TracTickets for help on using tickets.