Devhelp is a quite old piece of software (created in 2001), and as every software, the code evolves during its lifetime. So there are sometimes API breaks. We try to not break applications depending on the Devhelp API. But if we see that a certain API is used nowhere else than the Devhelp application itself (or is dead code), we don’t hesitate to break the API to improve the code.
Currently we try to not break Anjuta and GNOME Builder. If your application is not listed and depends on the Devhelp API and is Free Software, please contact the Devhelp maintainers.
Changes between 3.29.1 and 3.29.2
-
DhBookManager
is now completely empty and entirely deprecated, the minimum amount of API is kept to not break Anjuta. It has been replaced by a more flexible infrastructure:DhProfile
,DhSettings
andDhBookList
. If your application uses only the default libdevhelp widgets it will still work fine – even if you don’t adapt the code of the application – because in that case it will use the defaultDhProfile
which contains the same content as howDhBookManager
was implemented. -
Whether a DhBook is enabled/selected is now decoupled from DhBook:
dh_book_get_enabled()
anddh_book_set_enabled()
have been removed, as well as theDhBook::enabled
andDhBook::disabled
signals. For a book to be enabled it now needs to be part of aDhBookList
, which is more flexible because there can be several differentDhBookList
‘s in parallel. -
The last parameter of
dh_keyword_model_filter()
has been changed, it is no longer the language (a string, that parameter was deprecated), it is a nullableDhProfile
. -
dh_book_tree_get_selected_book()
has been replaced bydh_book_tree_get_selected_link()
.
Changes between 3.28.0 and 3.29.1
-
The
DhBookManager:group-by-language
property has been replaced by theDhSettings:group-books-by-language
one. -
dh_book_tree_new()
now takes aDhProfile
parameter.
Changes between 3.27.1 and 3.27.2
-
dh_book_cmp_by_path()
has been removed (dead code). -
The
DhBookManager::language-enabled
andDhBookManager::language-disabled
signals have been removed (dead code). -
dh_sidebar_get_selected_book()
has been removed (it was used only insideDhSidebar
). -
dh_book_get_completions()
has been replaced bydh_book_get_completion()
.
Changes between 3.26.0 and 3.27.1
-
dh_link_new()
has been split in two, withdh_link_new_book()
to create aDhLink
ofDH_LINK_TYPE_BOOK
. -
The
dh_link_get_file_name()
function has been removed. -
The
dh_book_get_path()
function has been replaced bydh_book_get_index_file()
. -
The
dh_book_new()
constructor now takes aGFile
argument instead of a string path. -
dh_book_get_name()
has been renamed todh_book_get_id()
. -
dh_book_cmp_by_name()
has been renamed todh_book_cmp_by_id()
. -
dh_link_get_book_name()
has been renamed todh_link_get_book_title()
. -
dh_book_get_keywords()
has been renamed todh_book_get_links()
. -
The ownership transfer of the return values of
dh_book_tree_get_selected_book()
anddh_sidebar_get_selected_book()
have been changed from(transfer none)
to(transfer full)
.
Changes between 3.25.1 and 3.25.2
-
The
page
parameter ofdh_link_new()
has been removed because it was broken indh-parser.c
. Thebook
parameter has also been moved, to group related parameters together. -
The
dh_link_get_page_name()
function has been removed because it was broken and used nowhere. -
The
dh_link_get_type_as_string()
function (which took aDhLink
parameter) has been removed, and it has been replaced bydh_link_type_to_string()
which takes aDhLinkType
parameter.
Changes between 3.24.0 and 3.25.1
-
All deprecated APIs have been removed.
-
dh-error.h
is now private. -
The
DhApp
,DhAssistant
andDhWindow
classes are now private.DhApp
is a subclass ofGtkApplication
, and an application can have only oneGtkApplication
instance, so as-isDhApp
didn’t make sense in the library (what if two different libraries have both a subclass ofGtkApplication
?). SinceDhAssistant
andDhWindow
depend onDhApp
, they are now also private. -
The
DhLanguage
class is now private, it’s currently used only internally byDhBookManager
. -
Due to
DhBookManager
being now a singleton, there has been the following API changes: -
dh_assistant_view_set_book_manager()
has been removed. -
dh_keyword_model_set_words()
has been removed. -
The
DhBookTree:book-manager
property has been removed. -
API break for
dh_book_tree_new()
/ -
The
DhSidebar:book-manager
property has been removed. -
The
book_manager
parameter ofdh_sidebar_new()
is no deprecated.