pkg-static: py37-textfsm-0.4.1 conflicts with py37-texttable-1.6.2 (installs files into the same place). Problematic file: /usr/local/lib/python3.7/site-packages/__pycache__/texttable.cpython-37.opt-1.pyc They both try to install texttable.py in site-packages. I applied the bug to py-textfsm since py-texttable was in the tree first. (Also textfsm is up to 1.1.0)
Created attachment 211788 [details] [patch] move textfsm into site-packages/textfsm to avoid conflict with py-texttable The attached patch moves the python "lib" files into site-packages/textfsm. The user would do "import textfsm.clitable", for instance. This solve the packaging conflict. But the downside is that any existing scripts that expect 'import clitable' to work would have to be modified. Adding textfsm/ to a .pth file doesn't help since the texttable naming conflict still exists. Alternately the texttable.py could be renamed (texttable_fsm.py or something). That's not great either unless upstream adopts the change.
Created attachment 211793 [details] py-textfsm-1.1.1.patch Hi John, thank you for the patch and reporting the issue! Although your patch resolves the packaging issue I was a bit surprised that there's already a 1.1.1 release out. [1] So I was curious and tried also the 1.1.1 release and it seems that the problem is solved since the 1.1.0 release as the textproc/py-textfsm got its own subdirectory "textfsm". Attached is a preliminary patch that updates textproc/py-textfsm to the 1.1.1 release that might resolve the issue. ---- [1] The reason why Portscout didn't send an e-mail is no surprise as upstream doesn't provide a sdist for PyPi since the 1.1.0 release.
Comment on attachment 211788 [details] [patch] move textfsm into site-packages/textfsm to avoid conflict with py-texttable Yes, the update to 1.1.1 works for me (by making a texfsm package and sticking everything in site-packages/textfsm/). Your patch to update to 1.1.1 looks good to me (and briefly run-tested). Should the site-packages/testdata/ directory be installed?
Created attachment 211941 [details] py-textfsm-1.1.1-v2.patch (In reply to John Hein from comment #3) Thanks for testing and good catch regarding the "testdata" directory! I also stumbled on it during QA. Here's an slightly updated patch that also patches out a line in "setup.py" to prevent the installation of the "testdata" directory with its contents. It seems that the directory is only used by the testsuite. IMHO the directory should be omitted (as the updated patch does) or added as a subdirectory under "textfsm". I'll do some final QA before committing the updated patch.
A commit references this bug: Author: kai Date: Thu Mar 5 07:17:34 UTC 2020 New revision: 527810 URL: https://svnweb.freebsd.org/changeset/ports/527810 Log: textproc/py-textfsm: Update to 1.1.1 This update resolves a package installation conflict with textproc/py-texttable as both ports installs "texttable.py" into the same place. [1] Also while I'm here: * Switch to GitHub for a while as no sdist tarballs are available at PyPi. * Make the port concurrent safe because it installs scripts outside of the site-lib directory. * Remove the "testdata" directory to prevent possible package conflicts as it's only required for the test suite. * Add a "do-test" target to make future QA easier. Changelog: https://github.com/google/textfsm/releases/tag/v1.1.0 https://github.com/google/textfsm/releases/tag/v1.1.1 PR: 244257 Reported by: John Hein <jcfyecrayz@liamekaens.com> [1] MFH: 2020Q1 Changes: head/textproc/py-textfsm/Makefile head/textproc/py-textfsm/distinfo head/textproc/py-textfsm/files/ head/textproc/py-textfsm/files/patch-setup.py
(In reply to John Hein from comment #3) Committed to the /head branch, once again thank you for reporting it and the initial patch! I'm going to merge this also into the 2020Q1 branch, still waiting for approval from the ports-secteam.
A commit references this bug: Author: kai Date: Thu Mar 5 07:32:55 UTC 2020 New revision: 527813 URL: https://svnweb.freebsd.org/changeset/ports/527813 Log: MFH: r527810 textproc/py-textfsm: Update to 1.1.1 This update resolves a package installation conflict with textproc/py-texttable as both ports installs "texttable.py" into the same place. [1] Also while I'm here: * Switch to GitHub for a while as no sdist tarballs are available at PyPi. * Make the port concurrent safe because it installs scripts outside of the site-lib directory. * Remove the "testdata" directory to prevent possible package conflicts as it's only required for the test suite. * Add a "do-test" target to make future QA easier. Changelog: https://github.com/google/textfsm/releases/tag/v1.1.0 https://github.com/google/textfsm/releases/tag/v1.1.1 PR: 244257 Reported by: John Hein <jcfyecrayz@liamekaens.com> [1] Approved by: ports-secteam (joneum) Changes: _U branches/2020Q1/ branches/2020Q1/textproc/py-textfsm/Makefile branches/2020Q1/textproc/py-textfsm/distinfo branches/2020Q1/textproc/py-textfsm/files/
Changes were merged into the recent quartely branch, all done!