Index | Thread | Search

From:
Landry Breuil <landry@openbsd.org>
Subject:
Re: [NEW] textproc/py-retext, textproc/py-markups, textproc/py-mdx_math
To:
Pedro Almeida <palmeida@monkeys.pt>
Cc:
ports@openbsd.org
Date:
Mon, 17 Nov 2025 16:05:16 +0100

Download raw body.

Thread
Le Mon, Nov 17, 2025 at 12:44:27AM +0000, Pedro Almeida a écrit :
> Hi!
> 
> Please find attached a functional port for ReText, and two direct
> dependencies.
> 
> ReText is a simple but powerful editor for markup languages. It is based on
> Markups module which supports Markdown, reStructuredText, Textile and
> AsciiDoc. One can also add support for custom markups using Python modules.
> 
> Markups has 4 wrappers for markup languages available "by default":
> Markdown, reStructuredText, Textile and AsciiDoc, which introduces a second
> level dependencies.
> Three of them were trivial to include since they already been ported.
> For the forth, Textile, the dependcy tree is kind of "heavy" and have being
> a challenge to me for some time now.

from what i can see at https://pypi.org/project/textile/ it needs 'nh3'
and 'regex'. only nh3 is missing in the portstree.

> Since the port of ReText is functional for the other three, is there any
> possibility to list this dependency as optional?

either as a comment in the Makefile, or eventually in the DESCR.

or you could also add @comment in from the the textile-related lines in
the PLIST for markups, this way support for it isnt advertized.

for markups, maybe the default HOMEPAGE ( https://pypi.org/project/Markups/) or
https://pymarkups.readthedocs.io/en/latest/ would be better than github ?)

the tests run fine for markups.

mdx-math still had a trailing dot for COMMENT, and an unneeded empty
REVISION.

retext needs RUN_DEPENDS on x11/gtk+4,guic for the gtk-update-icon-cache
@tag line, and i dont think you need wheel and packaging in RUN_DEPENDS
(wheel will automatically be in BUILD_DEPENDS via
MODPY_PYBUILD=setuptools)

maybe it could use a RUN_DEPENDS on pyqt6-webengine, enchant and
chardet, depending on which features they add ? webengine seems to be
used for some preview..

[project.optional-dependencies]
spellcheck = ["pyenchant"]
encoding-detection = ["chardet"]
webengine = ["PyQt6-WebEngine"]

other than that, i've briefly tested retext and it looks nice
feature-wise, great addition.

Landry