python libraries conflict

I'm trying to update mail/mailman3 port to 3.3.5
It requires updating a few ports it depends on, including mail/py-aiosmtpd and www/py-falcon.

After updating py-falcon to 3.0.1 and running make install I get:

Code:
pkg-static: py38-falcon-3.0.1 conflicts with py38-aiosmtpd-1.2_1 (installs files into the same place).  Problematic file: /usr/local/lib/python3.8/site-packages/examples/__init__.py
*** Error code 1

Is there a ports mechanism in place already to deal with conflicts like these in python ports, or something else I can do?
 
untar the pkg, hack +MANIFEST, create the pkg back
or just use pkg install -f if you are brave
Thanks for the advice, but I'm updating the port itself, to build it on our poudriere server. If successful I'll submit a patch for the ports tree.
 
I guess the general question is, how to deal with python ports that assume/only work with --user? Both falcon and aiosmtpd install examples/__init__.py in site-packages. I've looked at a few other python ports and even though they have examples directories, they're not installed in site-packages/, so is the setuptools config for the packages or the ports Makefile that controls what gets installed? If it's the setuptools config, what's the best way to patch it to stop the conflicts?
 
py38 packages install everything in /usr/local/lib/python3.8/site-packages/
Only "pip --user" installs in ~/.local/lib/python3.8/site-packages
 
py38 packages install everything in /usr/local/lib/python3.8/site-packages/
Only "pip --user" installs in ~/.local/lib/python3.8/site-packages
I know, and then I see pypi packages like falcon-3.0.1 and aiosmtpd-1.2.7 that both install site-packages/examples/__init__.py. I actually think aiosmtpd fixed it in 1.4.2, I'm going to try that, but I'm still curious how to deal with python ports that install conflicting files in site-packages.
 
Maybe patch setup.py (or whatever) to use a different location for its examples.
Modules should not pollute global directories with their private stuff.
 
I managed to build and install mailman 3.3.5. Upgrading py-aiosmtpd to 1.4.2 fixed the conflict. I'll try to sort out all the patches and try and get them committed
 
Back
Top