On 11/4/25 9:46 PM, Stuart Henderson wrote:
This is a little messy.

The current port in www/py-multipart is "python-multipart",
https://pypi.org/project/python-multipart/

Trouble is, there was already https://pypi.org/project/multipart/,
so the port naming for "python-multipart" is problematic.

python-multipart upstream squatted on "import multipart". That was changed
so the correct way to import it is now "import python_multipart" however
they have backwards compat on "import multipart" to display a warning.

www/trac tries to import multipart. If available it stops using the old
cgi library from Python core and uses multipart instead. This is a problem
when it does not get the module it expects. In -current this means
that trac hangs if py3-multipart-0.XX is installed.

This is worse with py313 because trac *requires* multipart in that case.

So, I'd like to move python-multipart to www/py-python-multipart and
replace www/py-multipart. Rather than sending an unreadable diff I'll
attach a tar.gz with these two. I updated python-multipart to a newer
version and fixed the license marker while there (Apache 2 not MIT).

Affects synapse RUN_DEPENDS and starlette TEST_DEPENDS. Both of those
ports are correctly importing it as python_multipart and not relying on
fallback, so should be fine even if both the new py3-python-multipart
and py3-multipart are installed, so we can just change the deps as
below.

Any dev OKs for the import?


Won't there be any issues like this at upgrade time?
Can't install py3-python-multipart-0.0.20 because of conflicts (py3-multipart-0.0.17p0)


Index: net/synapse/Makefile
===================================================================
RCS file: /cvs/ports/net/synapse/Makefile,v
diff -u -p -r1.111 Makefile
--- net/synapse/Makefile        30 Oct 2025 06:58:11 -0000      1.111
+++ net/synapse/Makefile        4 Nov 2025 20:45:39 -0000
@@ -1,6 +1,7 @@
  COMMENT =     open network for secure, decentralized communication
MODPY_DISTV = 1.141.0
+REVISION =     0
GH_ACCOUNT = element-hq
  GH_PROJECT =  synapse
@@ -59,7 +60,7 @@ RUN_DEPENDS = devel/py-jsonschema>=3.0.0
                textproc/py-ijson \
                devel/py-matrix-common>=1.3.0,<2.0.0 \
                sysutils/py-packaging \
-               www/py-multipart
+               www/py-python-multipart
  # still relying on pkg_resources, see comments in
  # https://github.com/matrix-org/synapse/pull/12542
  RUN_DEPENDS +=        devel/py-setuptools
Index: www/py-starlette/Makefile
===================================================================
RCS file: /cvs/ports/www/py-starlette/Makefile,v
diff -u -p -r1.3 Makefile
--- www/py-starlette/Makefile   21 Oct 2025 21:23:59 -0000      1.3
+++ www/py-starlette/Makefile   4 Nov 2025 20:45:39 -0000
@@ -26,6 +26,6 @@ TEST_DEPENDS =                devel/py-trio \
                        www/py-httpx \
                        www/py-itsdangerous \
                        www/py-jinja2 \
-                       www/py-multipart
+                       www/py-python-multipart
.include <bsd.port.mk>

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to