CTO News Hubb
Advertisement
  • Home
  • CTO News
  • IT
  • Technology
  • Tech Topics
    • AI
    • QC
    • Robotics
    • Blockchain
  • Contact
No Result
View All Result
  • Home
  • CTO News
  • IT
  • Technology
  • Tech Topics
    • AI
    • QC
    • Robotics
    • Blockchain
  • Contact
No Result
View All Result
CTO News Hubb
No Result
View All Result
Home CTO News

New repository format for faster and smaller updates | F-Droid

March 2, 2023
in CTO News


We just released version 1.16 of the official F-Droid client app for
Android which includes many radical changes under the hood as well as many
bug fixes for long standing issue. Read on for more details.

Growing repository size

As more and more apps make their way into F-Droid, the official repository
index that includes all apps and their metadata also keeps growing.
Currently, the size of the compressed index is 8 MB which is 33 MB
uncompressed. When updating the repository index, each F-Droid client app
has to download and process those 8MB again and again. This problematic
trend became apparent a long time
ago
.

Updating only what has changed

Our repository index is in JSON format and we decided to make use of RFC
7396 JSON Merge Patch
to
create much smaller JSON files that only contain the changes since your
F-Droid app last updated. Technically, this works by downloading a new
entry.json file instead of the full
index. This entry file points to the full index in case the app had never
updated before and needs all app metadata anyway. But the entry also
contains pointers to various smaller difference files. The app
automatically picks the right diff and only downloads that much smaller file
instead of the full index. This not only saves bandwidth, it also makes
updating the index much faster as only the minimum amount of data needs to
be downloaded, processed and stored. As of writing, the latest diff is 80
KB
compressed which is 241 KB uncompressed which is only 1% of the full
index. Version 1.16 of the official F-Droid client app for Android
supports this new repository format.

Other improvements

The new version has a large number of radical changes under the hood. For
example, the entire database had to be replaced to support the new
difference based repository format. We also used the opportunity to improve
various bit and pieces along the way:

  • improved mirror support: all files (e.g. images) now get loaded from
    mirrors reducing the load on the main server
  • better support for low RAM devices, because the index now gets streamed
    into the DB instead of loading all of it into memory
  • hash verification: The SHA256 hash of all files is now part of the
    repository metadata and gets verified while downloading
  • stronger digest algorithm for repository signing: We now use SHA256
    instead of SHA1 for the index signature
  • support for downloading repository files via IPFS
  • many bug fixes that came out of modernizing ancient code

The new version went through a series of alpha releases with
extended testing to make sure no severe issues make it into the stable
release. It is now considered ready for general use.

Information for repository and client maintainers

Owners of third-party F-Droid repositories can enable the new format by
upgrading to the latest version of
fdroidserver which will
automatically publish the new format in addition to the old ones which we
keep around to support older client apps.

Developers of third-party F-Droid clients are encouraged to adopt the new
format either with their own implementations or by making use of the new
libraries

we are publishing to make using this technology as easy as possible and to
share as much code as possible between different F-Droid implementations.

This work was funded by the FFDW-DVD grant



Source link

Previous Post

Dremio adds new Apache Iceberg features to its data lakehouse

Next Post

Is Flux the future of Web3 Infrastructure?

Next Post

Is Flux the future of Web3 Infrastructure?

Robot Talk Episode 39 – Maria Bauza Villalonga

Trending News

Are your hiring practices restricting the attraction of female tech talent?

March 8, 2023

Who Will Blockchain Put out of Business?

December 26, 2022

The Hard Truth About Performance — A Guide for CTOs

December 31, 2022

© 2022 CTO News Hubb All rights reserved.

Use of these names, logos, and brands does not imply endorsement unless specified. By using this site, you agree to the Privacy Policy and Terms & Conditions.

Navigate Site

  • Home
  • CTO News
  • IT
  • Technology
  • AI
  • QC
  • Robotics
  • Blockchain
  • Contact

Newsletter Sign Up

No Result
View All Result
  • Home
  • CTO News
  • IT
  • Technology
  • Tech Topics
    • AI
    • QC
    • Robotics
    • Blockchain
  • Contact

© 2021 JNews – Premium WordPress news & magazine theme by Jegtheme.

SUBSCRIBE TO OUR WEEKLY NEWSLETTERS