All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Bitbake filterProviders does not respect sorted priorities
@ 2009-09-21 20:07 Chris Conroy
  2009-09-21 22:43 ` Denys Dmytriyenko
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Chris Conroy @ 2009-09-21 20:07 UTC (permalink / raw)
  To: OE-Dev

Cross-posting to the OE list since I haven't heard anything from the
bitbake list after posting this last week. The providers code ignores
package priorities and as a result unexpected packages can get chosen
when using overlays with different priority settings.

Original message posted to bitbake mailing list:

I am using bitbake 1.8.13 within OE, and I ran into a problem today
where the wrong package was being selected.

Digging into the problem, I found that the code that sorts packages does
not respect the priority order.

By iterating over sortpkg_pn.keys() instead of pkg_pn.keys(), it
produces the expected order based on the priorities I have set. Patch
below:

diff --git a/lib/bb/providers.py b/lib/bb/providers.py
index 8970fb3..6c1cf78 100644
--- a/lib/bb/providers.py
+++ b/lib/bb/providers.py
@@ -191,7 +191,7 @@ def _filterProviders(providers, item, cfgData,
dataCache):
             eligible.append(preferred_versions[pn][1])

     # Now add latest verisons
-    for pn in pkg_pn.keys():
+    for pn in sortpkg_pn.keys():
         if pn in preferred_versions and preferred_versions[pn][1]:
             continue
         preferred_versions[pn] = findLatestProvider(pn, cfgData,
dataCache, sortpkg_pn[pn][0])



^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2009-09-22 19:35 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-09-21 20:07 [PATCH] Bitbake filterProviders does not respect sorted priorities Chris Conroy
2009-09-21 22:43 ` Denys Dmytriyenko
2009-09-22  6:45 ` Holger Hans Peter Freyther
2009-09-22 10:27 ` Florian Boor

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.