Bug 436159

Summary: includepkgs is ignored
Product: [Fedora] Fedora Reporter: Alexandre Oliva <oliva>
Component: yumAssignee: Seth Vidal <skvidal>
Status: CLOSED UPSTREAM QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: rawhideCC: ffesti, james.antill, katzj, pmatilai, tim.lauridsen
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-03-05 18:24:52 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Alexandre Oliva 2008-03-05 17:55:16 UTC
Description of problem:
I have some repos in my yum.conf from which I only select a few packages.  As of
yesterday, yum attempts to install various "updates" from them that it shouldn't
even see.  The problem is not fixed in today's yum.

Version-Release number of selected component (if applicable):
yum-3.2.12-3.fc9.noarch

How reproducible:
Every time


Steps to Reproduce:
1.Add the following to a rawhide configuration:
[dag-fc3]
name=dag-fc3
baseurl=http://apt.sw.be/fedora/3/en/$basearch/dag
enabled=1
includepkgs=ogle*

2.yum install distcc
  
Actual results:
It succeeds in installing distcc from the repository.

Expected results:
The package should have been excluded.

Additional info:
I actually have distcc* enabled and it's other packages from other repositories
that are being replaced, but this was the simplest example I could come up with.

Comment 1 James Antill 2008-03-05 18:24:52 UTC
 This is fixed upstream, it was a bad optimisation here is the patch:

diff --git a/yum/__init__.py b/yum/__init__.py
index cd449db..1acadf1 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -870,7 +870,7 @@ class YumBase(depsolve.Depsolve):
         if len(includelist) == 0:
             return
         
-        pkglist = self.pkgSack.returnPackages(repo.id, patterns=includelist)
+        pkglist = self.pkgSack.returnPackages(repo.id)
         exactmatch, matched, unmatched = \
            parsePackages(pkglist, includelist, casematch=1)