My fix rpmlint #647

Merged
merged 3 commits into from Aug 16, 2011

3 participants

@tomspur

This series of commits fixes many rpmlint warnings/errors:
ipython-doc.noarch: W: spurious-executable-perm /usr/share/doc/ipython-0.11/examples/core/seteditor.py
ipython-doc.noarch: W: hidden-file-or-dir /usr/share/doc/ipython-0.11/manual/.buildinfo
ipython-doc.noarch: W: doc-file-dependency /usr/share/doc/ipython-0.11/examples/newparallel/wave2D/RectPartitioner.py /usr/bin/env
ipython-doc.noarch: W: doc-file-dependency /usr/share/doc/ipython-0.11/examples/newparallel/task2.py /usr/bin/env
ipython-doc.noarch: W: doc-file-dependency /usr/share/doc/ipython-0.11/examples/core/example-embed.py /usr/bin/env
ipython-doc.noarch: W: doc-file-dependency /usr/share/doc/ipython-0.11/examples/lib/gui-gtk.py /usr/bin/env
ipython-doc.noarch: W: doc-file-dependency /usr/share/doc/ipython-0.11/examples/newparallel/workflow/job_wrapper.py /usr/bin/env
ipython-doc.noarch: W: doc-file-dependency /usr/share/doc/ipython-0.11/examples/lib/gui-qt.py /usr/bin/env
ipython-doc.noarch: W: doc-file-dependency /usr/share/doc/ipython-0.11/examples/core/example-gnuplot.py /usr/bin/env
ipython-doc.noarch: W: doc-file-dependency /usr/share/doc/ipython-0.11/examples/newparallel/wave2D/parallelwave-mpi.py /usr/bin/env
ipython-doc.noarch: W: doc-file-dependency /usr/share/doc/ipython-0.11/examples/lib/gui-tk.py /usr/bin/env
ipython-doc.noarch: W: doc-file-dependency /usr/share/doc/ipython-0.11/examples/newparallel/wave2D/parallelwave.py /usr/bin/env
ipython-doc.noarch: W: doc-file-dependency /usr/share/doc/ipython-0.11/examples/newparallel/wave2D/wavesolver.py /usr/bin/env
ipython-doc.noarch: W: doc-file-dependency /usr/share/doc/ipython-0.11/examples/lib/gui-wx.py /usr/bin/env
ipython-gui.noarch: W: no-documentation
ipython.noarch: W: spelling-error %description -l en_US embeddable -> embedded
ipython.noarch: W: spelling-error %description -l en_US pdb -> pd, db, pub
ipython.noarch: W: spelling-error %description -l en_US profiler -> profile, profiles, profiled
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/core/splitinput.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/testing/mkdoctests.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/parallel/apps/iploggerapp.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/utils/ipstruct.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/parallel/controller/hub.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/testing/plugin/iptest.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/lib/inputhookwx.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/external/ssh/forward.py 0644L /usr/bin/env
ipython.noarch: E: incorrect-fsf-address /usr/lib/python2.7/site-packages/IPython/external/ssh/forward.py
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/external/guid/guid.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/zmq/kernelapp.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/parallel/engine/engine.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/lib/__init_
.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/parallel/engine/streamkernel.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/core/error.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/utils/notification.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/core/alias.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/parallel/apps/winhpcjob.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/core/autocall.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/lib/inputhookgtk.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/parallel/apps/ipclusterapp.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/utils/upgradedir.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/core/ipapi.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/core/prefilter.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/extensions/parallelmagic.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/utils/pickleshare.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/lib/inputhook.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/zmq/pykernel.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/parallel/apps/ipcontrollerapp.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/zmq/ipkernel.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/lib/guisupport.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/core/page.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/parallel/apps/win32support.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/testing/plugin/setup.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/parallel/apps/baseapp.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/core/display_trap.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/parallel/controller/heartmonitor.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/utils/syspathcontext.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/frontend/terminal/ipapp.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/zmq/session.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/quarantine/ipy_workdir.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/quarantine/ipy_gnuglobal.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/config/configurable.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/core/shellapp.py 0644L /usr/bin/env
ipython.noarch: W: hidden-file-or-dir /usr/lib/python2.7/site-packages/IPython/.git_commit_info.ini
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/core/payloadpage.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/zmq/frontend.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/lib/irunner.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/parallel/apps/ipengineapp.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/quarantine/ipy_render.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/utils/traitlets.py 0644L /usr/bin/env
ipython.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/parallel/apps/logwatcher.py 0644L /usr/bin/env
ipython-tests.noarch: W: no-documentation
ipython-tests.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/config/tests/test_configurable.py 0644L /usr/bin/env
ipython-tests.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/core/tests/test_imports.py 0644L /usr/bin/env
ipython-tests.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/utils/tests/test_traitlets.py 0644L /usr/bin/env
ipython-tests.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/lib/tests/test_imports.py 0644L /usr/bin/env
ipython-tests.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/testing/tests/test_tools.py 0644L /usr/bin/env
ipython-tests.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/IPython/config/tests/test_loader.py 0644L /usr/bin/env
ipython-tests.noarch: W: no-manual-page-for-binary iptest
4 packages and 0 specfiles checked; 58 errors, 21 warnings.

tomspur added some commits Jul 31, 2011
@tomspur tomspur Fix rpmlint: spurious-executable-perm
"""
The file is installed with executable permissions, but was identified as one
that probably should not be executable.  Verify if the executable bits are
desired, and remove if not.
"""
98f7126
@tomspur tomspur Fix rpmlint: incorrect-fsf-address
"""
The Free Software Foundation address in this file seems to be outdated or
misspelled.  Ask upstream to update the address, or if this is a license file,
possibly the entire file with a new copy available from the FSF.
"""
Replacing it with the correct one.
e9b1ebb
@minrk
IPython member

Why did you make all of the examples not executable? That doesn't seem right, since they are executable scripts.

@tomspur

rpmlint is complaining, because the executable files with /usr/bin/env will add a dependency to /usr/bin/env to the ipython-docs package.

I think, it's right to remove that dependency and run the example scripts with "python script.py" (running example scripts in /usr/share/doc is a bad idea anyway - later on...)

It's just more handy in ipython.git... I can understand your point :)

Consider it as a proposal, not as "the" fix ;)
Fixing the rest and letting the /usr/bin/env dependency, won't hurt much anyway...

@minrk
IPython member

Fair enough. Then it sounds like the answer is to change permissions during whatever step stages to .../share/doc, but not the source examples themselves, since those should remain executable. Or maybe the examples should just be outside the docs dir in the first place. Does anybody actually look for examples in /usr/share/docs? Is it a normal thing to be putting code there?

@tomspur

Yes, that's the usual location for %doc files.
I prefer to look online for documentation and not /usr/share/doc/, but when you don't have internet connection, having them there is a good thing.

I don't think it makes sense to put them somewhere else. It would then be better to ignore the warnings from rpmlint about the doc-file-dependency and just look for the rest...

@fperez
IPython member

I don't want this one to go stale... So what's the final decision, @tomspur: do we leave the scripts executable and accept the dependency on env (probably something everybody haves, so it doesn't worry me at all), or do you want to make the changes so that the scripts get chmodded at install time? The latter is a lot more work, so I vote for the former.

Feel free to do a forced push that removes the commit making the chmod changes, rather than doing and undoing them.

@tomspur tomspur Fix rpmlint: non-executable-script
"""
This text file contains a shebang or is located in a path dedicated for
executables, but lacks the executable bits and cannot thus be executed.  If
the file is meant to be an executable script, add the executable bits,
otherwise remove the shebang or move the file elsewhere.
"""

Mostly deleting the shebang, but some files contain a __main__ function,
so make them executable.

This is the last commit of this series and:
Closes gh-647.
a8c5475
@tomspur

Although it doesn't look like it here, I did delete the commit about deleting the env dependency, so there are only three commmits in this pull request:
Fix rpmlint: spurious-executable-perm
Fix rpmlint: incorrect-fsf-address
Fix rpmlint: non-executable-script
@fperez: The first is a good decision :)

@fperez
IPython member

OK, these all look good. Wow, I didn't realize we had so many spurious executable files with usr/bin/env python in the library part! Thanks a lot for the cleanup...

I'll merge now.

@fperez fperez merged commit 4ee2feb into ipython:master Aug 16, 2011
@mattvonrocketstein mattvonrocketstein pushed a commit to mattvonrocketstein/ipython that referenced this pull request Nov 3, 2014
@tomspur tomspur Fix rpmlint: non-executable-script
"""
This text file contains a shebang or is located in a path dedicated for
executables, but lacks the executable bits and cannot thus be executed.  If
the file is meant to be an executable script, add the executable bits,
otherwise remove the shebang or move the file elsewhere.
"""

Mostly deleting the shebang, but some files contain a __main__ function,
so make them executable.

This is the last commit of this series and:
Closes gh-647.
48b065b
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment