Kiwix Js Versions Save

Fully portable & lightweight ZIM reader in Javascript

4.0.0

2 months ago

Kiwix JS 4 0 Anniversary

What's changed

Version 4.0 is a major anniversary milestone for Kiwix JS! This release has major new features together with significant under-the-hood refactoring.

The most important new features include:

  • High-fidelity reading of all Zimit archive types, from Zimit Classic to upcoming Zimit v2.0;
  • Ability to read many Zimit-based archives in JQuery mode (for ZIMs with largely static content);
  • Multi-ZIM support: you can now browse different ZIMs simultaneously in two different instances of the app;
  • Security prompt on opening a dynamic ZIM for the first time, with fallback to Secure mode for untrusted sources.

Under the hood, a new architecture for the Service Worker supports multi-ZIM reading and boosts efficiency by allowing the browser to suspend and restart the Service Worker whenever needed.

And that's just the tip of the... iceberg: for the full user-friendly changelog, see CHANGELOG.

Detailed log of pull requests:

New Contributors

Summary Changelog: https://github.com/kiwix/kiwix-js/blob/main/CHANGELOG.md Full Changelog: https://github.com/kiwix/kiwix-js/compare/3.11.0...v4.0.0

3.11.0

6 months ago

What's Changed

The headline features are the provision of an in-app download library based on library.kiwix.org (with fallback to download.kiwix.org for those browsers that cannot access the former), and the ability to remember picked files and folders between app launches using the File System Access API and related APIs. The header and footer of the app also now slide away on scroll down (and slide back on scroll up), to make more room for focusing on the article being read. This behaviour can be turned off in Configuration.

Detailed log

Summary Changelog: https://github.com/kiwix/kiwix-js/blob/main/CHANGELOG.md Full Changelog: https://github.com/kiwix/kiwix-js/compare/3.10.0...3.11.0

3.10.0

8 months ago

What's Changed

The headline feature is the internationalization of the app's UI with French and Spanish languages. Additionally, major under-the-hood development work has been undertaken to move the app to a modern bundling system and to provide a comprehensive suite of end-to-end tests on BrowserStack.

New Contributors

Summary Changelog: https://github.com/kiwix/kiwix-js/blob/main/CHANGELOG.md Full Changelog: https://github.com/kiwix/kiwix-js/compare/3.9.0...3.10.0

3.9.0

11 months ago

What's Changed

The headline feature is the introduction of a Manifest V3 of the Chromium browser extension, together with the use of the PWA workaround to allow the Chromium extension to run inline JavaScript.

Full Changelog: https://github.com/kiwix/kiwix-js/compare/3.8.0...3.9.0

3.8.0

1 year ago

What's Changed

The headline feature is additional security by adding a sandbox to the app's iframe and a strengthened Content Security Policy. There is more robust handling of downloads (e.g. epubs and PDFs). There is also a new user-requested setting to disable drag-and-drop in case this UI causes any glitches.

For a summary version of the changes below, see CHANGELOG.md.

New Contributors

Full Changelog: https://github.com/kiwix/kiwix-js/compare/3.7.0...3.8.0

3.7.0

1 year ago

What's Changed

The headline feature is the introduction of Full-Text searching for ZIMs that have a Full-Text index, thanks to the openzim/javascript-libzim project. Currently, this only works in browsers that support Atomic Operations, which means recent versions of Chromium and Firefox. Title search is still available for older browsers.

For a summary version of the changes below, see CHANGELOG.md.

New Contributors

3.6.0

1 year ago
  • FEATURE: ServiceWorker Mode is now the default, and compatible clients upgrade automatically to this mode
  • FEATURE: On first run after update, the user is informed of the ServiceWorker Mode upgrade status (upgraded or incompatible)
  • NEW: A warning (with suggestions) is provided if user opens an incompatible Zimit (warc2zim) archive type
  • COMPATIBILITY: Minimum Firefox version has been raised to >=52, due to lack of full Extension APIs in earlier versions
  • UPDATE: Detection of active content updated for compatibility with more no-namespace ZIM archives
  • UPDATE: Nightly packages on the download server now include the date in their filenames
  • FIX: Kiwix icon now has an outline so that it is visible against dark OS backgrounds

3.5.0

1 year ago
  • FEATURE: The Enter key is now handled in Bootstrap dialogue boxes, triggering the default action
  • FIX: Switch to ServiceWorker mode via PWA workaround was broken due to a behaviour change in Firefox 103
  • FIX: Video seeking in ServiceWorker mode was not always working in some browser extensions
  • FIX: In ServiceWorker mode, open external links in new tabs (instead of inside the iframe, which could fail), and warn the user
  • FIX: Directory Entries were wrongly assumed to be no larger than 2048 bytes (this could lead to some infinite loop, with some very specific ZIM files)
  • UPDATE: Update logo on Firefox and Windows stores

3.4.0

2 years ago
  • FEATURE: Provide automatic dark mode switching (based on the underlying OS theme) in browsers supporting theme detection
  • FEATURE: Use bootstrap modal for alert and confirm dialogue boxes instead of native browser dialogues
  • WORKAROUND: For WebP image conversion in older browsers that implement some specific canvas anti-fingerprinting techniques, like IceCat 60.7
  • FIX: Partially remove dependency of backend on the User Interface
  • FIX: Provide an alert if user selects random button when no ZIM is loaded
  • FIX: Nightly builds are now uploaded to a new server (with sftp instead of ssh)
  • FIX: Deploy PWA image on a k8s cluster
  • FIX: PWA images are now uploaded to ghcr.io instead of Docker Hub. When a new image is uploaded, we also restart the pod to make it use the latest image
  • UPDATE: Routine updates to dependencies: Karma, node-fetch, follow-redirects, minimist

3.3.1

2 years ago

FIX: Improve packaging for the Ubuntu Touch app FIX: Provide a platform-compliant hook name for the Ubuntu Touch app (note that settings may be lost when upgrading to this version) BUGFIX: Correct the handling of version numbers in GitHub publishing workflow BUGFIX: Correct race condition preventing initialization of decompressors in some contexts (e.g. file:// protocol)