[New-bugs-announce] [issue32885] Tools/scripts/pathfix.py leaves bunch of ~ suffixed files around with no opt-out
Miro Hrončok
report at bugs.python.org
Tue Feb 20 06:06:48 EST 2018
New submission from Miro Hrončok <miro at hroncok.cz>:
We (Fedora's Python SIG) would like to promote usage of Tools/scripts/pathfix.py (we've even moved it to $PATH) in Fedora RPM build (a.k.a spec files) instead of various error prone finds + greps + seds.
However when running pathfix.py, it creates backup files (with ~ suffix). This is mostly unfortunate in RPM build environment, because one needs to clean those up, otherwise one gets warnings and errors like this:
error: Installed (but unpackaged) file(s) found:
/usr/bin/spam~
Or the file with ~ might even get installed if a more relaxed patter is used in a %files section that lists what is part of the RPM package.
%{_bindir}/spam-*
We even have shebangs checks/mangling in place and the ~ suffixed file still has the wrong shebang, resulting in warnings like this:
*** WARNING: mangling shebang in /usr/bin/spam~ from #!/usr/bin/python -Es to #!/usr/bin/python2 -Es. This will become an ERROR, fix it manually!
Steps to Reproduce:
1. $ echo '#!python' > omg
2. $ Tools/scripts/pathfix.py -i "/usr/bin/python3" -p omg # possibly with extra flag, see bellow
omg: updating
3. $ ls
Actual results: omg omg~
Expected results: omg
Since the backup feature was here for ages, instead of changing the behavior, I suggest a flag is added that disables this. 2to3 has exactly the proposed flag as: "-n, --nobackups Don't write backups for modified files".
This doesn't necessarily need to go into all versions, but I've selected all that has this problem. Getting it to 3.6+ would be great, however if it goes to anything later, we'll backport it in the Fedora package.
I have a patch ready, sill send PR.
----------
messages: 312411
nosy: hroncok
priority: normal
severity: normal
status: open
title: Tools/scripts/pathfix.py leaves bunch of ~ suffixed files around with no opt-out
versions: Python 2.7, Python 3.4, Python 3.5, Python 3.6, Python 3.7, Python 3.8
_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue32885>
_______________________________________
More information about the New-bugs-announce
mailing list