Re: [Bug 262906] net-mgmt/py-pysnmp: abandonned source used

From: John W. O'Brien <john_freebsd-python_at_radioprosciutto.org>
Date: Wed, 19 Jul 2023 12:52:03 UTC
On 7/19/23 01:49, Alastair Hogge wrote:
> Hello,
> 
> I am attempting to update the Port mentioned in the Subject[1], however,
> am running into the following build issue:
> ===========================================================================
> =>> Recording filesystem state for prestage... done
> =======================<phase: stage
>> ============================
> ===== env: DEVELOPER_MODE=yes STRICT_DEPENDS=yes USER=root UID=0 GID=0
> ===>  Staging for py39-pysnmp-5.0.28
> ===>   py39-pysnmp-5.0.28 depends on package: py39-pyasn1>0 - found
> ===>   py39-pysnmp-5.0.28 depends on package: py39-pycryptodomex>0 -
> found
> ===>   py39-pysnmp-5.0.28 depends on package: py39-pysmi>0 - found
> ===>   py39-pysnmp-5.0.28 depends on file: /usr/local/bin/python3.9 -
> found
> ===>   Generating temporary packing list
> Traceback (most recent call last):
>    File "/usr/local/lib/python3.9/runpy.py", line 197, in
> _run_module_as_main
>      return _run_code(code, main_globals, None,
>    File "/usr/local/lib/python3.9/runpy.py", line 87, in _run_code
>      exec(code, run_globals)
>    File "/usr/local/lib/python3.9/site-packages/installer/__main__.py",
> line 98, in <module>
>      _main(sys.argv[1:], "python -m installer")
>    File "/usr/local/lib/python3.9/site-packages/installer/__main__.py",
> line 86, in _main
>      with WheelFile.open(args.wheel) as source:
>    File "/usr/local/lib/python3.9/contextlib.py", line 119, in __enter__
>      return next(self.gen)
>    File "/usr/local/lib/python3.9/site-packages/installer/sources.py",
> line 162, in open
>      with zipfile.ZipFile(path) as f:
>    File "/usr/local/lib/python3.9/zipfile.py", line 1248, in __init__
>      self.fp = io.open(file, filemode)
> FileNotFoundError: [Errno 2] No such file or directory:
> '/wrkdirs/usr/ports/net-mgmt/py-pysnmp/work-py39/pysnmp_lextudio-5.0.28/dist/pysnmp-5.0.28*.whl'
> *** Error code 1
> 
> Stop.
> make: stopped in /usr/ports/net-mgmt/py-pysnmp
> 
> That is an edited log from poudriere-testport. Attached is my Work In
> Progress diff.
> 
> Contents of dist:
> $ ls
> /wrkdirs/usr/ports/net-mgmt/py-pysnmp/work-py39/pysnmp_lextudio-5.0.28/dist
> pysnmp_lextudio-5.0.28-py3-none-any.whl
> 
> So, a .whl file exists, and has name similar to the DISTNAME set in the
> attached diff. I have set the DISTNAME based on advice from John[1],
> this is how I managed to get the Port to fetch from PYPI. How is this
> meant to be handled? Is renaming the .whl OK?
> 
> 1: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=262906

For net-mgmt/py-pysmi, I also had to patch pyproject.toml [2] to match 
the port name [3].

[2] https://github.com/lextudio/pysnmp/blob/v5.0.28/pyproject.toml#L2
[3] 
https://cgit.freebsd.org/ports/diff/net-mgmt/py-pysmi/files/patch-pyproject.toml?id=718622a56caf647e137c7896197e0d6b17dedddb