####* This version is not yet released and is under active development.
###Updated
-
Client
- Added option to update_check which allows for being less restrictive about looking on the specific channel for updates. The default setting is to only allow from the provided channel.
-
Libs
- certifi 2016.9.26
- dsdev-utils 0.9.6
- urllib3 1.20
###Fixed
- Client
- Restart - Linux & Mac
- CLI
- MemoryError - Windows Python 3.5 64bit
- PyUpdater
- Parsing a pre-release format
###Removed
- Extra Y/N prompt before keypack creation
- Unused code
###Added
-
Client
- version attribute on update object is a version string in a human readable format.
-
Docs
- API
###Updated
- Docs
- Usage | CLI
- Libs
- dsdev-utils 0.9.2
- requests 1.18.1
###Fixed
- Client
- Remove all files used to auto-update after application update - win
- Restart GUI applications on Mac & Linux
###Removed
- Client
- Writing debug log -- @cbenhagen
- Unused code
###Updated
- Docs
- Added note about signing
###Fixed
- Deploy error
###Fixed
- Deploy script
###Added
- Tests
- Auto update
- One dir support - currently disabled
- pytest-datadir
###Updated
- Client
- No longer importing unused functions
- Docs
- Page titles
- Install instructions
- Libs
- versioneer 0.17
- urllib3 1.18
- Tests
- To coincide with the refactoring of some modules
###Fixed
- CLI
- Writing public key to client config
- Uploading of debug logs
- version output -- @cbenhagen
###Updated
- Client
- Percent complete shows up to 1 decimal
- Core
- More efficient deltas. (A small internal app now has a patch size of 2kb, down from 1.4mb.)
- Docs
- Add missing commands
- Libs
- urllib3 1.17
###Removed
- CLI
- requirement of --target-name on archive command
- Client
- bsdiff python implementation (slower & no longer used)
- Core
- Extended pause after uploading
- Redundant compatibility code
###Deprecated
- CLI
- Unused flags for make-spec command
###Added
- CLI
- Ability to set max download retries. 1-10
- Tests
- Auto update
###Fixed
- Docs
- Links on Install page - @LucaBernstein
- Only log debug
- Encoding URL's
- Usage on 64bit linux
###Updated
- Client
- Decreased memory usage when downloading data
- Docs
- Badges reflect master build status
- Tests
- Less output on appveyor
###Removed
- Docs
- Obsolete info
- Redundant code
- Unused requirements
###Added
- Client
- Reporting of percent complete when patch updating
- FOSS to docs
###Fixed
- Client
- Reporting of downloaded status in callbacks
###Added
- Docs
- Usage docs for updating application & assets
###Fixed
- Client
- Restart
- In certain cases calling download() after a failed download will not start another download
- Parsing platform name from archive filename
###Added
- Retry download
- dsdev-utils >= 0.9.0
- Client
- AppUpdate.extract_overwrite
- File hash verification before extracting
###Updated
- Client
- Only log debug messages
- Store update data in appdata local instead of roaming
- archive command
- Windows tests setup scripts
- More concise docs
###Fixed
- Client
- Write file to file-system when no hash is passed
- Close file descriptors
###Removed
- jms-utils
- Duplicate logging calls
- Duplicate listing of dependencies
- archive --target-name
- Redundant code
###Deprecated
- AppUpdate.win_extract_overwrite
- Use: AppUpdate.extract_overwrite
- Remove: v3.0
- AppUpdate.restart
- Use: AppUpdate.extract_restart
- Remove: v3.0
###Fixed
- Creating patches
###Added
- Ability for windows apps to be extracted & overwritten but not restarted
- FileDownloaderError
###Updated
- Docs
- Re-factored PackageHandler
###Fixed
- Using format string while logging
###Added
- PyUpdater-SCP-plugin to pyupdater[all] install
###Updated
- Install bsdiff by default
- Lib
- PyUpdater-SCP-plugin >= 3.0.5
###Fixed
- User message when setting config directory
###Updated
- Graceful exit when attempting to import a module removed from the stdlib
###Fixed
- Website
- Changelog submenu
###Fixed
- Deploy to pypi
###Backwards incompatible changes
- Upload plugin system
- See "Create Upload Plugins" in docs
- Version manifest file the client downloads during update checks.
- See "Upgrading PyUpdater" in docs
###Added
- CLI
- Configure where client_config.py is written
- Plugins
-list plugins
- update plugin settings
- show plugin settings
- Verbose: Show why packages were not processed
- Keep files after upload
###Updated
- Plugin System
- Simplified plugin interface
- Enables saving of plugin configuration
- Automatic loading of plugin configuration before use
- Docs
- Renamed sub menus
- Work flow
- Plugin Creation
- Plugin command
- Upgrade how to
- License
- File deletion on windows when uploading
- Supports PyInstaller 3.0 - 3.2
- Updated tests
- Some overall clean up of the code base
###Fixed
- Status Badges
- Patch updates
- Including libraries in current directory
###Removed
- Compatibility code for older versions of PyUpdater
- Need for specific version of PyInstaller
- Lib
- requests
###Removed
- debug code
###Updated
- Libs
- PyInstaller 3.1.1
- requests 2.9.1
- stevedore 1.12.0
- urllib3 1.15.1
###Fixed
- Finding directory of executable
###Removed
- Unused import
###Fixed
- Missing import
###Removed
- Unused dependency
- cryptography
###Fixed
- Processing packages on windows
###Fixed
- Error when archive is in the manifest but missing from files folder
- Error when attempting to remove executable left in new folder
###Updated
- Read & write files in utf-8
- Libs
- cryptography 1.1.2
- stevedore 1.10.0
###Removed
- Unused test init code
###Updated
- Libs
- cryptography 1.1.1
- certifi no longer pinned to specific version
###Fixed
- Parsing name of archive with spaces
###Fixed
- Creating second keypack for specific app
###Updated
- Upload Plugins
- S3 2.5
- SCP 2.3
###Fixed
- Issue restarting application when located in directories beginning with a period.
###Fixed
- Download progress callbacks
- Potential issue restarting application when located in certain directories.
###Removed
- Initializing client with list of callbacks
###Updated
- Cleanup of archives on dev machine
- Centralized cleanup function to be used by client & package handler
###Fixed
- Creating patches for updates
- Erroneous warning when paring version info
###Updated
- Libs
- cryptography 1.1
- requests 2.8.1
- stevedore 1.9.0
###Fixed
- xrange on py3
###Added
- Make file for windows
- Patch size in manifest
- Release Channels
- Alpha, Beta & Stable. Channels can be changed at anytime! Just pass the desired channel to update_check
- Auto Upgrade external files
- Update your external files, binaries or whatever you want to auto upgrade. Patch support included :). The absolute path to the update archive is available .abspath
###Updated
- Pass all arguments except ones we care about directly to pyinstaller
- CLI help messages
- Debugging messages
- Pre-Release versions can be in long or short form
- Before: 1.0a 1.1.b 1.2.1b1
- After: 1.0alpha 1.1.beta 1.2.1beta1
- Client
- Windows: Updates no longer open cmd prompt when restart app
- Windows: restart scripts written to appdata instead of cwd
- Utils
- Make up to multiple attempts to remove a file/directory before giving up - Windows only
- Patching
- Will take combined size of patches and compare to the size of a full download in bytes to determine if patch update is suitable.
- Will only create patches for packages on stable channel
- Initial patch will start at 1 instead of 100
- Docs
- Commands explained with description and examples
- Cosmetic updates
###Removed
- Update command
- Duplicate code
- Build arg --app-name
- PyUpdater will pull the app name provided during repo init
###Updated
- Universal wheel
###Added
- Python 3 support
- Offline root keys
- CI testing on windows
- Tox testing
- ETA provided to callbacks
- Async download
- download(async=True)
###Updated
- Client
- Support for offline root keys
- Sanatizing url attributes
- Patches clients up to 4 versions behind
- Config is now a dict instead of class
- Logging errors for 3rd party services
- Info messages
- Storage object
- JSON backed
- Centralized data store
- ClI
- help messages
- offline keys are created and imported
- importing keys overwrites currently imported key
- Optimized tests
- Centralized PyUpdater object creation
- Test filename generators
- Libs
- urllib3 1.12
- requests 2.8.0
- Simplified signature verification
###Fixed
- Error when not able to get cpu count on windows
- Writing debug
- Uploading debug logs
###Removed
- vendored pyinstaller
- revoking keys
- Some unused code
- PyUpdaterConfig
###Fixed
- File already exists error
###Fixed
- Compilation
###Updated
- PyInstaller to 39b02fe5e7563431115f9812f757a21bbcc78837
###Fixed
- Missing bootloaders
###Added
-
Vendored PyInstaller
- f920d3eea510ed088eda5359c04990338600c2b8
- Ability to provide fixes quicker
###Fixed
- Error when patch info is None
###Fixed
- Parsing platform names
###Fixed
- Versioneer settings
###Updated
- Versioneer settings
###Updated
-
Code refactoring & optimizations
-
Download url
-
Converted docs to markdown
-
Error handling for callbacks
-
Libs
- ed15519 1.4
- stevedore 1.6.0
- PyUpdater-S3-Plugin 2.3
###Removed
- Duplicate code
- Deprecated log command
###Added
- More hooks from pyinstaller develop
###Updated
- Test runs in parallel
- Documentation
- Libs
- requests 2.7.0
- urllib3 1.10.4
###Fixed
- Parsing App Name from update archive filename when version number is in x.x format
- Potential import error if pyinstaller version lower then 2.1
###Removed
- Unused code
###Updated
-
PyUpdater
- Debug logs are uploaded to a gist on github
- requests lib 2.6.2
- urllib3 lib 1.10.3
- stevedore lib 1.4.0
- S3 plugin 2.2
- SCP plugin 2.2
- Code refactoring
###Fixed
-
PyUpdater
- Potential leak of sensitive information to log files
###Updated
-
Client
- Better error handling
-
PyUpdater
- Using json to store config data
- Less IO during execution
- Header performance improvements - upstream
- Central db object
###Fixed
-
Client
- Handling of download with corresponding hash
-
PyUpdater
- session fixation attacks and potentially cookie stealing - upstream
- Not writing config file when cleaning repo
###Removed
-
PyUpdater
- RC4 from default cipher list - upstream
- Old migration code
- Removed old json version file
- Download progress to stdout
- Unused imports
###Fixed
-
Client
- Removing old updates. Really fixed it this time :)
###Fixed
-
Client
- Removing old updates
###Fixed
-
PyUpdater
- Creating new config db when running any command
###Added
-
CLI
- Update command. Used after updating PyUpdater to update repository
-
Logging
- Now logs framework version
###Updated
-
CLI
- Clearer output messages
- Correct some spelling
-
Client
- Exception handling
- Moved patcher and downloader to client package
- Using requests instead of urllib3.
- More reliable https verification
-
PyUpdater
-
Potential incorrect comparison of pyinstaller versions
-
Archive version parsing
-
Crashing if directory doesn't exists
-
Pinning version of plugins
-
Initial support for pre release versions
-
Moved some uploader config to plugins. Check plugin docs for more info.
-
Updated config attributes. * Make sure to run pyupdater update
-
Install commands
$ pip install[patch] # To enable patch support $ pip install[all] # To add patch support, aws s3 & scp upload plugins
-
-
Plugins
- from pyi_updater.uploader import BaseUploader
- from pyi_updater.uploader.commom import BaseUploader will be remove in v0.22+
###Fixed
-
Key Handler
- Writing of deprecated version meta after migration
- Not loading keys from db
-
Package Handler
- Migration of repo meta config
-
PyUpdater
- Potential error when adding key add key.db isn't loaded
###Removed
-
PyUpdater
- Some unused attributes on config object
- Unsed functions