kiwix-lib 7.0.0 =============== * [API break] Add a argument to kiwix-serve to specify the library to use. kiwix-lib 6.0.4 =============== * Fix HTML rendering of the search result if there is no result. * Do not crash at html rendering if request ask for 0 results (start == end) * Correctly find the executable path if we are using AppImage kiwix-lib 6.0.3 =============== * force one column suggestion in kiwix-serve suggestions * fix fulltext search link in suggestions * UI fixes in kiwix-serve rendering kiwix-lib 6.0.2 =============== * Correctly set the groupId in the pom file. kiwix-lib 6.0.1 =============== * Generate the pom file for android/maven kiwix-lib 6.0.0 =============== * Move the server code in kiwix-lib (from kiwix-serve). * Add unit test on regex functions. * Fix computerAbsolutePath (thread safe, memory leak). * Correctly set the book's path as valid if we construct the book from a reader. * [JNI] Add a method to know if a article is a redirection. * Do not embed the gtest dependency. * [JNI] Add a constructor to JNIKiwixString. * Change order of search of the favicon urls. * Clean a lot of unecessary includes in headers. (potential "API break") kiwix-lib 5.2.0 =============== * kiwix-serve integration (as a seperated process). * Fix crash in the suggestion search. * Better API to filter the library books. * New kiwix-lib application for android. (.aar) * Use ReLinker to link with libkiwix.so in android. * Correctly set the verbosity of zim search. kiwix-lib 5.1.0 =============== * Add function to pause, resume and stop downloads. * Add zim's tags in the opds stream. * Addapt to new libzim 5.0.0 API. kiwix-lib 5.0.0 =============== * Remove error message when trying to open an wrong zim file. * Rewrite `makeTmpDirectory` to not use uuid functions on windows. * [API break] Remove `getNetworkInterfaces` and `getBestPublicIp`. * Remove rpath * Detect infinite (and too long) redirect loops. kiwix-lib 4.1.0 =============== * Allow the library to be filtered by tags. * Fix language mapping. * Update README about mustache dependency. kiwix-lib 4.0.1 =============== * Fix "maybe uninitialize variable" issue. * Ensure path are stored correctly (absolute path) in the library. * [CI] Use the new deps archive xz kiwix-lib 4.0.0 =============== * [API break] Remove support for external index. * Move to the mustache templating system instead of ctpp2. * Make meson.build works for meson>=0.43.0 * [API break] Move the basic tools from the `common` directory to `tools`. kiwix-lib 3.1.1 =============== * The OPDS feed book's date must be the date of the book, not the date of the feed generation. * Convert the standard opds date to our format (YYYY-MM-DD) * Remove duplicate language attribute in the libxml dumper. * Create the datadirectory to not fail to write a file in a non-existent directory kiwix-lib 3.1.0 =============== * Add a method to get the favicon url of book (if available). * Move dump code of library.xml in a specific class. * Add a first support to bookmarks kiwix-lib 3.0.3 =============== * Add the 'en' language to the mapping alpha2-code ('en') to alpha3-code ('eng'). * Correctly write the 'ArticleCount' and 'MediaCount' in the library.xml. * Correctly fill the book size for the zim file size. * Fix launch of aria2c. kiwix-lib 3.0.2 =============== * Use the correct path separator when computing relativePath on Windows. kiwix-lib 3.0.1 =============== * Small fix about parsing the opdsStream. kiwix-lib 3.0.0 =============== * Change the downloader to use aria2 using a separated process (with rpc) instead of using the libaria2. This simplify a lot the link process to libaria2 on Windows. - kiwix-lib doesn't depend on libaria2 anymore. - kiwix-lib now depends on libcurl. * [API break] Library class API has been updated : - Books are referenced by id, not index. A lot of methods have been updated this way. - Books "list" is now private. - There is no more "current" book. - listBooksIds's filters have been updated. * [API break] Book class API has been updated : - Move the definition of Book in `book.h`. - Use getter/setter methods instead public members. - Size (getSize/setSize) is now returned in bytes, not kB. - Dependending of how the book has been initialized (opdsfeed), the faviconUrl may be stored in the book, the favicon being downloaded when using `getFavicon`. - The path (and indexPath) are always absolute path. - Book has now a downloadId, corresponding to the aria2 download id (if exists) * [API break] Manager class API has been updated : - The manager is mainly use to fill a Libray from a "library.xml" file or opds feed. Other operations (has removeBookById, setBookPath, filter, ...) have been removed. - The manager use a intermediate class (LibraryManipulator) to add book to the library. This dependency injection allow caller code to hook the add of a book to the library. - The manager work on a existing Library. It doesn't how a internal Library. * [API break] OpdsDumper class API has been updated : - dumpOPDSFeed method now take the list of bookIds to dump instead of dumping all books in the library. - OpdsDumper can now dump openSearch result information (total result count, start index, ...). * [API break] Common tools API has been updated : - `base64_encode` and `base64_decode` take std::string as arguments. - New `download` function in networkTools.h using libcurl. - New `getDataDirectory` function in pathTools. - Better `beautifyInteger` and `beautifyFileSize` functions. - New `nodeToString` function serializing a pugi::xml_node to a string. - New `converta2toa3` function to convert alpha2 language code to aplha3 language code. kiwix-lib 2.0.2 =============== * [Android] Forward c++ errors message de Java world. * Follow redirection of favicon. * Make aria2 dependency optional. * Inculde unistd.h only on unix platform. kiwix-lib 2.0.1 =============== * Fix parsing of url. * Remove unused static resources. * Correctly decode reserved characters in URLs. * Explicitly use icu namespace to allow use of packaged icu lib. kiwix-lib 2.0.0 =============== * Introduce a new API to retrive content from a reader. * Introduce the `Entry` class. * Reader's methods return an `Entry`. * Content and other information can be retrieved from the `Entry`. * Older Reader's methods are depreciated. * Add an `OPDSDumper` class to dump a whole `Library` as an OPDS feed. * Add a tool function to get the content of a file. * Add a tool function to create a tempory directory. * Add a `Downloader` class to download a file. * Allow the manager to populate a `Library` from an OPDS feed. * Try to locate libctpp2 in default system libdir and then fallback in 'lib' directory. * Build kiwix-lib setting RPATH. * Build kiwix-lib without warning (werror=true) * Build kiwix-lib on macos. kiwix-lib 1.1.1 =============== * Correct the name of kiwix-lib (from `kiwixlib`) in meson.build to generate dist archive with the correct name. * Libzim version need to be at least 3.2.0 kiwix-lib 1.1.0 =============== * Allow for more than 70 search result per page in html results rendering (kiwix/kiwix-tools#92) * Add a small api to do geo queries. * Add multi-search support in the JNI (#67) * Add an API to get only one part of an article. * Add an API to get direct location of an article content in the zim file. * Improve urlencoding * Fix pagination in html results rendering. * Compile using gcc-5 on Travis. * Allow JNI to access search snippets. * JNI throw an exception instead of returning an invalid object if something goes wrong. * Add doctext documentation. (#116) * Various bug fixes. kiwix-lib 1.0.0 =============== * Correctly regenerate template resource using cttp2c at compilation time. * Suggestion use xapian database when available * Support multi-zim search in kiwix-lib (a search can now search on several embedded database in zims in the same time) * Fix some wording * Fix license issues * Add out argument to jni getContent* method to get the title of article in the same time we get the content * Rename `compile_resources.py` script to `kiwix-compile-resources` * Use static lib when building for android or in "static mode" * Make the ResourceNotFound exception public kiwix-lib 0.2.0 =============== * Generate the snippet from the article content if the snippet is not directly in the database. This provide better snippets as they now depending of the query. * Use the stopwords and the language stored in the fulltext index database to parse the user query. * Remove the indexer functionnality. * Move to C++11 standard. * Use the fulltext search of the zimlib. We still have the fulltext search code in kiwix-lib to be able to search in fulltext index by side of a zim file. (To be remove in the future) * Few API hanges * Change a lot of `Reader` methods to const methods. * Fix some crashes.