TL;DR

Hawkey project [1] is being obsoleted, use libhif [2] instead. For hawkey 
Python API consumers,
the transition should be painless.


Why we have done that?

Nowadays there are three major consumers of hawkey - DNF, PackageKit and 
rpm-ostree. The hawkey
API was not in final form yet and was changed constantly based on demands from 
these package
managers. We have merged hawkey project inside libhif and hidden some of not 
yet stable API.

Merging hawkey into libhif was another step to move more code base of DNF into 
C. DNF will reuse
some of the existing code of libhif. Having this shared library can eliminate 
inconsistencies
about installed packages when DNF and PackageKit is used alternately. Moreover 
we would like to
reuse the same metadata for all package managers to save your bandwidth.

Libhif should contain the common functionality for all package managers. So far 
libhif is
providing high level API by taking care of fetching metadata from mirrors, 
doing dependency
solving and executing RPM transaction. In the future it will support repository 
configuration
parsing, GPG checking and so on. At this time, this is handled by all package 
managers
separately.


Facts for Hawkey consumers:

* libhif-0.7.0 will obsolete hawkey package
* some of the C hawkey API from libhif will not be exposed anymore, please use 
libhif functions
instead
* python bindings will not change and the libhif package will still provide 
`python2-hawkey` and
`python3-hawkey`
* API in libhif is still not considered as fully stable yet
* first release of libhif with hawkey inside is targeted for Fedora 25

Please watch libhif project on github [2] and participate in PR discussions so 
you can influence
the development. Do not hesitate to respond with your concerns / opinions.


Honza

[0] https://dnf.baseurl.org/2016/02/24/dnf-into-c-initiative-started/
[1] https://github.com/rpm-software-management/hawkey
[2] https://github.com/rpm-software-management/libhif
--
devel mailing list
devel@lists.fedoraproject.org
http://lists.fedoraproject.org/admin/lists/devel@lists.fedoraproject.org

Reply via email to