Epoch promotion was a thing around and before the turn of the millenium,
we really shouldn't be carrying that cruft around anymore.
Remove all traces that we can without too much guilt about breaking
ABI/API and not bumping soname which we dont want to do for this
stupid old thing: all the symbols are left in place, they just don't
work anymore. Nobody should notice as nobody can have been using this
stuff in the last 15+ years.
This is an internal helper for debug logging and should've never been
part of the API in the first place. We're removing all sorts of things
on this round anyway so it's a fine opportunity for removing this too.
It's not as if anybody used this outside rpm because it's ... not
exactly useful.
This enables to handle trigger rpmds in the same way as normal
rpmds. Merging of rpmds takes into account trigger indices if
they are set and rpmdsPutToHeader()/rpmdsNewPool() puts/gets
trigger indices into/from header if resulting rpmds is trigger
rpmds.
- Private pools can be very expensive when constructing and tearing
down dependency sets by the masses. Permit taking advantage of
shared pool outside librpm internals.
- In the package/transaction related things the strpool is more of
an internal implementation detail than an end-goal in itself, move
string pool related interfaces of rpmts, rpmfi and rpmds to
internal-only APIs for now. The kind interfaces we'll want to eventually
export a) dont exist yet and b) are likely to be something very different.
- The string pool itself remains exported however, its a handy data
structure for all sorts of things and both librpm and librpmbuild
heavily use it already.
- Add an internal header for rpmds too to allow adding interfaces we
dont necessarily want to export in the public API, make the indexed
accessors available internally.