Code Monkey home page Code Monkey logo

qtupdatesystem's Introduction

QtUpdateSystem

Windows build status Linux / OSX build Status

Provide an easy to use and very efficient update system for small to big archives. With this library you can auto update your application or whatever you want (size limit is at 2^64-1) with only a static file based repository.

This library is still experimental and currently used by the Stargate No Limits and Stargate Network teams to publish their updates.

The goals of this library is to provide a very efficient system to update files by :

  • minimizing the download size as much as possible
  • no more cost than serving static files for the HTTP server
  • working over HTTP(s) with optional basic authentication
  • publishing updates in a matter of seconds
  • checking & applying updates while downloading files
  • automatic error handling and files corrections
  • checking local file integrity

To achieve thoses goals this library depends on :

How to install

Once you have cloned this repository, the prefered way to compile the library is to use the cmake build suite.

How to use

The library is composed of 3 classes :

  • updater : for client side update
  • packager : for packages creation
  • repository : for managing packages and versions

Here is list of the most useful functions and a brief description of what it does

Updater

  • checkForUpdates : check from the remote repository if an update is available
  • update : update files
  • copy : copy the repository to another place

Packager

  • generate : generate a package

Repository

  • addPackage : add a package to the repository
  • removePackage : remove a package from the repository
  • simplify : remove useless packages
  • setCurrentRevision : change the current revision of the repository

qtupdatesystem's People

Contributors

speedy37 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.