mirror of https://github.com/kiwix/libkiwix.git
550 lines
20 KiB
Plaintext
550 lines
20 KiB
Plaintext
libkiwix 11.0.0
|
||
===============
|
||
|
||
* [server] Add support for internationalization (@veloman-yunkan #679)
|
||
* [server] Use gzip compression instead of deflat (mgautierfr #757)
|
||
* [server] Version the static resources. This allow better invalidating
|
||
browser cache when resources are changed (@veloman-yunkan #712)
|
||
* [server|front] Use integer to query the host for page length (@juuz #772)
|
||
* [server] Improve multizim search API:
|
||
- Improvement of the cache system
|
||
- Better API to select on which books to search in.
|
||
- SysAdmin is now able to limit the number of book we search in for a multizim search
|
||
* [server] Introduce a opensearch API for multizim fulltext search
|
||
* [wrapper] Remove java wrapper
|
||
* Testing:
|
||
- Testing of search result pages content (@veloman-yunkan #765)
|
||
- Better testing structure of xml search result (@veloman-yunkan #780)
|
||
|
||
libkiwix 10.1.1
|
||
===============
|
||
|
||
* Correctly detect the number of article for older zims (<=6) (@mgautier #743)
|
||
* [server] Fix fulltext search (@mgautierfr #724)
|
||
* [server][internal] New way to build Error message (@veloman-yunkan #732 #738 #744)
|
||
* Fix CI (@mgautierfr #736)
|
||
|
||
libkiwix 10.1.0
|
||
===============
|
||
|
||
This release is an important one as it fixes a Xss vulnerability introduced
|
||
in libkiwix 10.0.0
|
||
|
||
* [SECURITY] Fix a Xss attack vulnerability (introduced in 10.0.0) (@juuz0 #721)
|
||
* [server] Add a option to set a limit on the number of connexion per IP (@kelson42 #700)
|
||
* [server] Do not display a lang tag in the UI if the book has no language (@juuz0 #706)
|
||
* [server] Add the book title associated to a search results (@thavelick #705, @mgautierfr #718)
|
||
* Add `dc:issued` to opds output stream (@veloman-yunkan #715)
|
||
* Add handling of several languages not provided by ICU (@juuz0 #701)
|
||
* [server] Add a caching system for search and suggestion (@maneeshpm #620)
|
||
* Fix cross-compilation (@kelson42 #703)
|
||
* Add unit-testing of suggestions and error pages (@veloman-yunkan #709 #710 #727)
|
||
* Better testing system of html response (@veloman-yunkan #725)
|
||
|
||
libkiwix 10.0.1
|
||
===============
|
||
|
||
* [server] The catalog search interpret `count=0` as no limit.
|
||
This was the case for a long time. This was changed unintentionally
|
||
(@veloman-yunkan #686)
|
||
* [server] Correctly generere a human friendly title in the server frontend.
|
||
(@juuz0 #687, @kelson42 #689)
|
||
* [server] Fix download button if there is no url do download from.
|
||
(@juuz0 #691)
|
||
* Add non-minified isotope.pkdg.js
|
||
Needed for debian packaging as we need the source and minified version is
|
||
not the source (@legoktm #693)
|
||
* [server] Add a tooltip with the full language for the lang tag.
|
||
* CI fixes (@kelson42 @legoktm)
|
||
|
||
libkiwix 10.0.0
|
||
===============
|
||
|
||
This release is huge release.
|
||
The project has been renamed to libkiwix, it is more coherent with the library name.
|
||
|
||
* Server front page :
|
||
- Use js in the front page to display the available book,
|
||
using the OPDS stream as source. The front page is now populated only with
|
||
the visible books and user can search for books. (@MananJethwany #530, #541, #534)
|
||
(@kelson42 #628)
|
||
- Revamp css (@MananJethwany #559)
|
||
- Correctly Convert 3iso language code to 2iso (@juuz0 #672)
|
||
|
||
* Server suggestions search :
|
||
- Add pagination for suggestion search (@maneeshpm #591)
|
||
- Fix suggestion system (@MananJethwany #498)
|
||
- Provide the kind and path (when adapted) to the suggestion answer (@MananJethwany #464)
|
||
- The displayed suggestion have now highligth on the searched terms (@maneeshpm #505)
|
||
- Properly handle html encoding of suggestions (@veloman-yunkan #458)
|
||
|
||
* Server improvements :
|
||
- Remove meta endpoints (@mgautier #669)
|
||
- Add raw endpoints to get the raw content of a zim (@mgautierfr #646)
|
||
- Add details on 404 error pages (@soumyankar #490)
|
||
- Fix headbar insertion when `<head>` tag has attributes (@kelson42 #440)
|
||
- Better headbar insertion (after charset definition) (@kelson42 #442)
|
||
|
||
* New OPDS Stream v2 :
|
||
- Add a list of categories (@veloman-yunkan)
|
||
- Support for partial entries (@veloman-yunkan #602)
|
||
- Support multiple icons size in the OPDS stream (@veloman-yunkan #577 #630)
|
||
- Add language endpoint to catalog (@veloman-yunkan #553)
|
||
- Add illustration API to get the illustration of a book (@mgautierfr #645)
|
||
- OPDS search can now filter books by category (@veloman-yunkan #459)
|
||
|
||
* Library improvements :
|
||
- Allow the libray to be live reloaded when the library.xml changes (@veloman-yunkan #636)
|
||
- Properly handle removing of book from the library (@veloman-yunkan #485)
|
||
- Use xapian to search for books in the library (@veloman-yunkan #460, #488)
|
||
|
||
* Added methods/functions :
|
||
- Fix `fileExist` and introduce `fileReadable` (@juuz0 #668)
|
||
- Add `getVersions` and `printVersions` functions (@kelson42 #665)
|
||
- Add `getNetworkInterfaces()` and `getBestPublicIP()` functions (@juuz0 #622)
|
||
- Add `get_zimid()` method to the search result (@maneeshpm #510)
|
||
|
||
* Various improvements :
|
||
- Better secret value for aria2c rpc (@juuz0 #666)
|
||
- Avoid duplicated Archive/Reader in the Searcher (@veloman-yunkan #648)
|
||
- Add basic documentation (@mgautierfr #640)
|
||
- Do not use Reader internally (@maneeshpm #536 #576)
|
||
- Remove dependency headers from our public headers (@mgautierfr #574)
|
||
- Downloader now don't write metalink on the filesystem (@kelson42 #502)
|
||
- Support opening a zim file using a fd (@veloman-yukan #429)
|
||
- Use C++11 std::thread instead of pthread (@mgautierfr #445)
|
||
- [READER] Do not crash if zim file has no `Counter` metadata (@mgautierfr #449)
|
||
- Ensure libzim dependency is compiled with xapian (@mgautierfr #434)
|
||
- Support video and audio mimetype in `getMediaCount` (@kelson42 #439)
|
||
- Better parsing of the counterMap (@kelson42 #437)
|
||
- Adapt libkiwix to libzim 7.0.0 (@mgautierfr #428)
|
||
- Remove deprecated methods (@mgautierfr)
|
||
- CI: Build package for Ubuntu Hirsute, Impish and Jammy (@legoktm #431 #568) and remove Groovy
|
||
- Fix compilation for FreeBSD (@swills g#432)
|
||
- Many fixes and improvement (@MananJethwany, @maneeshpm, @veloman-yunkan, @mgautierfr)
|
||
|
||
kiwix-lib 9.4.1
|
||
===============
|
||
|
||
* Fix `M/Counter` parsing.
|
||
* [SERVER] Adjust body padding-top for taskbar
|
||
* Fix potential crash when stoping a server not started.
|
||
* Various fix in build system and the CI.
|
||
|
||
kiwix-lib 9.4.0
|
||
===============
|
||
|
||
* [SERVER] Make the headers handling case insensitive.
|
||
* [SERVER] Make server answer 204 http status code for empty search
|
||
* [PACKAGING] Made CI build deb packages.
|
||
* [SERVER] Add a way to prevent taskbar and external link bloquer at article
|
||
level.
|
||
* Fix meson file to be compatible with meson 0.45
|
||
* [SERVER] Update search requests to use pageStart/pageLength instead of
|
||
pageStart/pageEnd arguments.
|
||
* [SERVER] Set a fixed favicon size in the main page.
|
||
* [SERVER] Refactor the response system code to better handling future new
|
||
libzim api.
|
||
* Fix segmentation fault around exchange with aria2 process making
|
||
kiwix-desktop crash at exit.
|
||
|
||
kiwix-lib 9.3.1
|
||
===============
|
||
|
||
* Fix handling of samba path on windows.
|
||
* Do not include `kiwix_config.h` in public header.
|
||
* Fix compilation with libmicrohttpd v0.97.1
|
||
* Increase default test timeout to 160seconds/test.
|
||
* Add automatic debian packaging.
|
||
* Use non-minified version of jquery-ui.js
|
||
* Pass `-latomic` compile option for sh4 architecture.
|
||
* Make mesion install `kiwix-compile-resources` man page.
|
||
|
||
kiwix-lib 9.3.0
|
||
===============
|
||
|
||
* Add a thread safe method to search suggestions.
|
||
Old methods are now deprecated.
|
||
|
||
kiwix-lib 9.2.3
|
||
===============
|
||
|
||
* Add test on byte-range
|
||
* Fix compilation on bionic and windows.
|
||
* Allow building using debian packaged kainjow-mustache
|
||
* Pass `-latomic` compile option for architectures that need it
|
||
|
||
kiwix-lib 9.2.2
|
||
===============
|
||
|
||
* Fix handling on empty content in byte range management (wrong assert)
|
||
|
||
kiwix-lib 9.2.1
|
||
===============
|
||
|
||
* Fix support of byte range request.
|
||
|
||
kiwix-lib 9.2
|
||
=============
|
||
|
||
* Add tests
|
||
* Refactoring server code.
|
||
* [SERVER] Add HEAD, Etag and If-None-Match support.
|
||
* [SERVER] Compress opds catalog answers.
|
||
|
||
kiwix-lib 9.1.2
|
||
===============
|
||
|
||
* Do not use the pathToSave if it is empty.
|
||
|
||
kiwix-lib 9.1.1
|
||
===============
|
||
|
||
* Fix the detection of the dataDirectory on windows.
|
||
|
||
kiwix-lib 9.1.0
|
||
===============
|
||
|
||
* [JAVA] Add a method to get the size of an article.
|
||
* Add a new method to the libray to get the book by path.
|
||
* Add a option to make the server blocks external link.
|
||
Links are intercepted by js an redirected to a "portail" page.
|
||
* [ODPS] Correctly handle book's articleCount and mediaCount.
|
||
|
||
kiwix-lib 9.0.1
|
||
===============
|
||
|
||
* [JAVA] Use a long to store the offset of an article in the zim file instead
|
||
of an int.
|
||
|
||
kiwix-lib 9.0.0
|
||
===============
|
||
|
||
* [OPDS] Correctly set the id of the OPDS stream.
|
||
* [OPDS] Do not try to filter the catalog if no filter field is given in the
|
||
request.
|
||
* [WINDOWS] Correctly convert path to wide chars when opening the library.xml
|
||
* [LIBRARY] Remove the function the read file using a native path.
|
||
All path must be utf8, no need to pass a native path along the utf8 path.
|
||
* [TEST] Fix tests using the main function of gtest instead of custom one.
|
||
* [CI] Move to github CI instead of Travis.
|
||
* The `Book::update` method always update the book's fields. Even if they are
|
||
not empty.
|
||
* [JAVA] Add wrapping around the library manager (opds parsing)
|
||
* [ARIA2] Add api option to start download with option (destination folder)
|
||
* [OPDS] Fixes about opds parsing, generation (missing attributes)
|
||
and requesting (server)
|
||
* Add methods on `Book` to get specific tag values (was on `Reader` only)
|
||
* Add flavour attribute to `Book`
|
||
* Fix opensearch description.
|
||
* Trust the given library.xml (by default) instead of reading the value from
|
||
the zim files.
|
||
* [OPDS] Be able to filter the content by name or size.
|
||
* [WINDOWS] Fix launching subcommand when there is spaces in the path.
|
||
|
||
kiwix-lib 8.2.2
|
||
===============
|
||
|
||
* Improve a few compilation scripts
|
||
|
||
kiwix-lib 8.2.1
|
||
===============
|
||
|
||
* Reintroduce kiwix-serve taskbar
|
||
|
||
kiwix-lib 8.2.0
|
||
===============
|
||
|
||
* More debug information if aria2c command fails
|
||
* Allow to set kiwix-serve port
|
||
* Better (dead) bookmarks mgmt
|
||
|
||
kiwix-lib 8.1.0
|
||
===============
|
||
|
||
* Fix pathTools manipulation.
|
||
* Add missing implementation of getArticleCount and getMediaCount on android.
|
||
* Correctly convert windows path to utf8.
|
||
* Add code coverage in the CI
|
||
|
||
kiwix-lib 8.0.1
|
||
===============
|
||
|
||
* Fix join function
|
||
|
||
kiwix-lib 8.0.0
|
||
===============
|
||
|
||
* Add new methods to get all (and new) metadata from the zim file.
|
||
* Add methods to get the value of a specific tag.
|
||
* [API Change] Convert tags value to the new convention.
|
||
* [API Change] Rename `getMatatag` method to `getMetadata`
|
||
* [ABI Change] Correctly detect executable path in appimage.
|
||
|
||
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.
|