Skip to main content

A dialog for updating specific files by syncing them from a server. Designed to work like InstallForge's "Visual Update Express".

Project description

Python Visual Update Express

A dialog for updating an application by downloading files from a server. Designed to work like InstallForge's "Visual Update Express".

This software may only be used as described in the LICENSE file. Please contact me through a github issue for questions about commercial use.

Compatible with Python 3.10 and up

Installation

python3 -m pip install python-visual-update-express

Usage

Add updater window in python

Import the UpdaterWindow and configure it

from python_visual_update_express import UpdaterWindow

UPDATE_BASE_URL = 'https://yoursite.com/releases/yourapplication/'
CURRENT_VERSION = '1.0.1'
UPDATE_TARGET_DIR = 'C:/yourlocationpath'

# If you are using have a PyQt6 QApplication set up, please indicate this to the UpdaterWindow by 
# setting the create_q_application parameter to 'False'.
# Otherwise the UpdateWindow will create another QApplication, causing issues with PyQt.
# If you don't have a PyQt6 QApplication set up, please omit the create_q_application parameter 
# so the updater will a QApplication up internally.
updater_window = UpdaterWindow(UPDATE_BASE_URL, CURRENT_VERSION, UPDATE_TARGET_DIR, False)

Then when you are ready, simply call show on the window to start the updater:

updater_window.show()

Update script

The updater works according to an updatescript.ini file on the server. This file tells the updater what versions of the application are supported and how to perform updates. Make sure to have this file available on the server URL used by the updater.

This is a very simple example of an updatescript.ini:

releases{
    1.0.0
    1.0.1
}

release:1.0.0{

}

release:1.0.1{
    DownloadFile:some-file.txt
}

Script commands

Currently only 1 command is available:

DownloadFile

This command will download a file on the speficied path, starting from the given update base URL + 'Updates/'. So if for example the base URL of https://yoursite.com/releases/yourapplication/ has been configured, a DownloadFile: dir1/some-file.txt will download the file from https://yoursite.com/releases/yourapplication/Updates/dir1/some-file.txt

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python_visual_update_express-1.0.3.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

python_visual_update_express-1.0.3-py3-none-any.whl (13.6 kB view details)

Uploaded Python 3

File details

Details for the file python_visual_update_express-1.0.3.tar.gz.

File metadata

File hashes

Hashes for python_visual_update_express-1.0.3.tar.gz
Algorithm Hash digest
SHA256 7d70867b4f6a46e7c22f386543b4f57693369132041eb49754655913968fa83b
MD5 f4a1b1d0d9cc5beefefa66c62eead053
BLAKE2b-256 c6f319c589fa8b76434038833375fca2802c5a3cc69317ec45cbc92578979e10

See more details on using hashes here.

File details

Details for the file python_visual_update_express-1.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for python_visual_update_express-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e0fca3ad74fd92c34cd23cd28c1283c27655196b4e0fe5b7ee3a8caa16dc6235
MD5 d481f30360000ab7b07d43090bdf8bf9
BLAKE2b-256 90932dbb9f2f4a37b117d8d505cfce431d099ab5c0bf9d8bc37cbfbe22c54505

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page