Page MenuHomeFreeBSD

Mk/Uses/python.mk: Do not surround plist entries in quotes
ClosedPublic

Authored by jrm on Aug 28 2020, 5:49 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Apr 9, 9:53 PM
Unknown Object (File)
Feb 28 2024, 2:36 AM
Unknown Object (File)
Feb 24 2024, 11:14 PM
Unknown Object (File)
Dec 21 2023, 12:38 AM
Unknown Object (File)
Dec 20 2023, 1:24 AM
Unknown Object (File)
Aug 1 2023, 10:23 PM
Unknown Object (File)
Jun 30 2023, 10:07 AM
Unknown Object (File)
Jun 17 2023, 7:37 AM
Subscribers

Details

Summary
Mk/Uses/python.mk: Do not surround plist entries in quotes

This fixes packaging issues like this one.


===> Checking for items in STAGEDIR missing from pkg-plist
Error: Orphaned: %%PYTHON_SITELIBDIR%%/scipy/io/tests/data/Transparent Busy.ani
===> Checking for items in pkg-plist which are not in STAGEDIR
Error: Missing: "/usr/local/%%PYTHON_SITELIBDIR%%/scipy/io/tests/data/Transparent Busy.ani"
===> Error: Plist issues found.


I tested an update to scient/py-scipy, which includes a plist entry with a space, and this patch fixed the issue.  I see many other ports have pkg-plist entries with spaces and no quotes, so I assume this will not introduce new issues.  Am I missing anything?

PR:
Submitted by:
Reported by:
Differential_Revision: D26221

Diff Detail

Lint
No Lint Coverage
Unit
No Test Coverage
Build Status
Buildable 33214
Build 30557: arc lint + arc unit

Event Timeline

jrm requested review of this revision.Aug 28 2020, 5:49 PM
jrm created this revision.
jrm retitled this revision from pyhton.mk: Do not surround plist entries in quotes This fixes packaging issues like this one. ``` ===> Checking for items in STAGEDIR missing from pkg-plist Error: Orphaned: %%PYTHON_SITELIBDIR%%/scipy/io/tests/data/Transparent Busy.ani ===>... to pyhton.mk: Do not surround plist entries in quotes.Aug 28 2020, 5:50 PM
jrm edited the summary of this revision. (Show Details)
jrm edited the summary of this revision. (Show Details)
  • Add end-of-line marker to sed command

Expression looks good and now that you mention it, a port I maintain even has a space in one of the plist entries, so I suppose we are probably space-safe.

Should probably exp-run it to be certain? I wouldn't really expect any fallout, though.

This revision is now accepted and ready to land.Aug 28 2020, 7:01 PM
koobs retitled this revision from pyhton.mk: Do not surround plist entries in quotes to Mk/Uses/python.mk: Do not surround plist entries in quotes.
koobs edited the summary of this revision. (Show Details)
koobs edited the summary of this revision. (Show Details)

Why is it quoted in the first place, and why is it broken now?

In D26221#583268, @mat wrote:

Why is it quoted in the first place, and why is it broken now?

It looks like it's quoted because in Mk/Uses/python.mk the package list is generated using PYDISTUTILS_INSTALLARGS:= --record ${_PYTHONPKGLIST}. It's broken because different things under Mk/ do not expect a quote, e.g., ${SED} -e 's|^${PREFIX}/||' ${_PYTHONPKGLIST} ${TMPPLIST} or when doing stage-qa.

In D26221#583669, @jrm wrote:
In D26221#583268, @mat wrote:

Why is it quoted in the first place, and why is it broken now?

It looks like it's quoted because in Mk/Uses/python.mk the package list is generated using PYDISTUTILS_INSTALLARGS:= --record ${_PYTHONPKGLIST}. It's broken because different things under Mk/ do not expect a quote, e.g., ${SED} -e 's|^${PREFIX}/||' ${_PYTHONPKGLIST} ${TMPPLIST} or when doing stage-qa.

Oh, ok, I forgot Python's plists were generated by distutils. So, it was always adding quotes if required, but it is the first time it happened, ok.

Thank you for investigating the why. Be sure to include the why in the commit message.

Will do. I should have put portmgr as a reviewer here. Will do that now. Could you approve if you are ok with the change, or do you think an exp-run is necessary? I requested one at https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=248981