[Rpm-maint] [rpm-software-management/rpm] Refactor dbiset and callers to hide implementation (PR #3155)

Panu Matilainen notifications at github.com
Mon Jun 10 14:41:50 UTC 2024


Force all callers through the internal API instead of mucking with internals - preliminary heave to make moving it to C++ easier.
You can view, comment on, or merge this pull request online at:

  https://github.com/rpm-software-management/rpm/pull/3155

-- Commit Summary --

  * Eliminate the non-set variants of dbiIndexSet internal APIs
  * Add dbiIndexSetClear() internal API
  * Avoid direct access to dbiIndexSet in rpmdbIndexIteratorPkgOffsets()
  * Avoid direct access to dbiIndexSet in rpmdbFindByFile()
  * Avoid dbiIndexSet internals access in rpmdb iterator fu
  * Avoid dbiIndexSet internal access in rpmdbFilterIterator()
  * Avoid dbiIndexSet internals access in bdb_ro backend
  * Avoid dbiIndexSet internals in ndb backend
  * Avoid dbiIndexSet internals access in dbiFindMatches()
  * Inline dbiIndexSetAppend() into the *Set() variant
  * Inline dbiIndexSetPrune() into the *Set() variant
  * Inline dbiIndexSetFilter() into the *Set() variant
  * Use dbiIndexSetSort() rather than manual qsort() doing the same
  * Refactor dbiIndexSet prune and filter to common base
  * Hide dbiIndexSet() implementation in C style

-- File Changes --

    M lib/backend/bdb_ro.c (11)
    M lib/backend/dbiset.c (97)
    M lib/backend/dbiset.h (47)
    M lib/backend/ndb/glue.c (9)
    M lib/rpmdb.c (77)

-- Patch Links --

https://github.com/rpm-software-management/rpm/pull/3155.patch
https://github.com/rpm-software-management/rpm/pull/3155.diff

-- 
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/pull/3155
You are receiving this because you are subscribed to this thread.

Message ID: <rpm-software-management/rpm/pull/3155 at github.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20240610/7246a18c/attachment-0001.html>


More information about the Rpm-maint mailing list