Skip to content
This repository has been archived by the owner on Jul 5, 2024. It is now read-only.

2.9.3-g5eac3d

Pre-release
Pre-release
Compare
Choose a tag to compare
@caesay caesay released this 20 Mar 11:06

This pre-release contains a re-work of how Squirrel retrieves updates. The constructor of UpdateManager now accepts an IUpdateSource instead of a string, which describes how to download and parse the index/feed of releases, and provides functionality to subsequently download a release file. This refactor will allow much more creative remote update locations - rss feeds, proper use of github api, etc.

There are three built-in sources that replicate the previous functionality.

  • SimpleFileSource supersedes passing a directory path string into the UpdateManager constructor
  • SimpleWebSource supersedes passing a http url string into the UpdateManager constructor
  • GithubSource replaces GithubUpdateManager and UpdateManager.GitHubUpdateManager, although these functions remain in Squirrel for the moment. The preferred way to use Squirrel with GitHub releases is then:
    new UpdateManager(new GithubSource("https://github.com/your/repo"));

This change also means that GithubSource can also be used with private repositories with the correct authorisation token.

The UpdateManager(string) constructor also still exists, and will choose to use a file or web source depending on if it is a path or a http url. This means people updating to this version of Squirrel will not need to make any changes to their code.

There has also been several improvements to how delta packages are generated, massive performance gains and more compatibility.

Breaking Changes:

  • 7a15378 AssemblyRuntimeInfo renamed to SquirrelRuntimeInfo
  • aa945cd Remove legacy overload of HandleEvents

Other Changes:

  • 65fcbc2 6c19593 da50aa8 Add IUpdateSource and refactor UpdateManager
  • 150eb66 Package architecture selection and verification is now inside SquirrelRuntimeInfo
  • 8f6eaf8 da4d64a 3620fad 3cc9f2b Improved releasify logging / better clarity
  • 7bd9bb4 Update Vanara, NuGet, AWSSDK, PeNet
  • fedd102 Add some parallelism and remove msdelta in delta package generator