Bug 1017373

Summary: rpmdevtools install intrusive bash completion
Product: [Fedora] Fedora Reporter: Pete Zaitcev <zaitcev>
Component: rpmlintAssignee: Tom "spot" Callaway <tcallawa>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 19CC: a.badger, manuel.wolfshant, tcallawa, tmz, twoerner, ville.skytta
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-01-05 00:40:00 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Pete Zaitcev 2013-10-09 18:02:27 UTC
Description of problem:

When rpmdevtools packge is installed, tab-expansion of filenames
is compromised. In particular, spec name cannot be expanded for
rpmlint.

Version-Release number of selected component (if applicable):

rpmdevtools-8.3-3.fc19.noarch

How reproducible:

Synchronoous but may depend on order of install in /etc/bash_completion.d

Steps to Reproduce:
1. yum install rpmdevtools rpmdiff
2. cd somewhere in Fedora git tree where you have a spec file foo.spec
3. rpmlint f<TAB>

Actual results:

Insane grinding of the disk for about a minute, maybe 90 seconds

Expected results:

foo.spec

Additional info:

I looked at /etc/bash_completion.d/rpmdevtools.bash-completion, but
could not understand a thing. Let's have its author figure it out.

Comment 1 Ville Skyttä 2013-10-10 12:08:21 UTC
rpmlint completion is in the rpmlint package, and rpmdevtools doesn't have a dependency on it.

If you want to override programmable rpmlint completion altogether, use Alt-/ instead of Tab. Or start completing the rpmlint specfile prefixing it with ./ so it won't trigger lookup of installed packages.

I've never seen anything like 90 seconds for this though. My 3 year old laptop (which OTOH has a SSD disk) does it in less than half a second.

Comment 2 Pete Zaitcev 2013-10-10 17:38:01 UTC
I filed this against rpmdevtools because in my testing it seemed that
removing rpmdevtools would resume normal completion. However, it seems
that perhaps I was wrong. When rpmlint alone is installed, completion
takes 11 seconds or so, which is much faster but still not ideal.