Squirrel.Windows Versions Save

An installation and update framework for Windows desktop apps

1.7.4

6 years ago

What's New

  • Make sure SharpCompress is shipped in both the NuGet dependencies and the Mono version of Update
  • Only generate execution stubs for the top-level package folder, not nested folders

1.7.2

6 years ago

What's New

  • Fix issue where execution stubs would not get copied correctly (#1045)

1.7.1

6 years ago

What's New

  • Fix issue where npm scoped packages and other content would end up escaped (#1047)

1.7.0

6 years ago

What's New

Zip File Generation

This release switches our Zip file generation to using a combination of 7-Zip and SharpCompress, which drastically speeds up running releasify. This also paves the way for the installer to use more efficient compression schemes such as LZMA2

Other fixes

  • Add additional progress events (#972, thanks @gpailler)
  • Ensure that the current directory is set for stub executables and fix the first parameter being dropped (#1016, thanks @peters)
  • Fix MSI generation flipping out if an executable used version #s greater than 255 (#1023, thanks @rcorredera)
  • Update project files to VS2017 (note that this only affects building Squirrel, not using it)
  • Delta file generation can now be disabled via the --no-delta flag
  • Fix issue when NuGet package ID had dashes in the name (#1037, thanks @robertohuertasm)
  • We now make a best effort to refuse to clean folders that have currently running executables (#1017, thanks @gajagt). Note that you should not rely on this behavior, instead signal your executables to shut down in your --squirrel-obsolete hook.

1.6.0

7 years ago

What's New

.NET Framework version requirements can now be specified (#940)

--releasify can now specify which version of the .NET Framework that Setup will require during initial install.

Squirrel --releasify --framework-version net462 ./myfile.nupkg

Thanks @NeilSorensen!

Bug Fixes:

  • VS2015 Code Analysis Cleanups (#961, thanks @shoelzer)
  • Fix version parse exception in HandleEvents (#955, thanks @CodeFunta)
  • Ensure a console is allocated during Releasify (#948, thanks @BillHally)
  • Fix issue where SyncReleases doesn't work with TLS 1.2 (#949, thanks @TakeN0)

1.5.2

7 years ago

What's New

Releasify now disallows non-Semver versions

While using non-Semver versions in your NuGet package was always incorrect and resulted in undefined behavior, due to #868, these are now a full non-starter. We now require packages to have Semver-compatible versions names. Note that this doesn't affect your EXE versions, which can still use all four Win32 version numbers.

Bug Fixes

  • Allow uppercase characters in SemVer versions (#924, thanks @runehalfdan)
  • Sign DLL and .node files during Releasify
  • Ensure that Stub Executables pass along their parameters to the target

1.5.1

7 years ago

What's New

Bug Fixes:

  • Fix an issue where the MSI installer would AV on exit
  • Fix an issue on upgrade where pinned shortcuts would end up with --processStart in the arguments

1.5.0

7 years ago

What's New

Stub Executables (#868)

While Squirrel.Windows's approach of moving around executables and rewriting shortcuts is the key feature that enables background updates without rebooting / restarting, it also conflicts with Windows's View Of The World in a lot of annoying ways. Things like pinning, file associations, etc etc end up being tricky to handle with the current approach of using Update.exe as a trampoline.

Now, Squirrel will scan your package for executables and create a "dummy" copy of this executable - one with the same icon and version metadata, but will instead run a copy of the latest version of the Real version of the executable. Instead of shortcuts pointiing to Update.exe, it'll point to this executable.

Note that for the first release after you upgrade to 1.5.0, stub executables won't be copied in, since the update will be done by the previous version of Squirrel.Windows which is stub-unaware. The existing Update-based shortcuts will continue to work though.

ToastActivatorCLSID (#879, thanks @felixrieseberg)

This PR allows you to use Windows 10 App Activation, which is required for features such as Win10 notification replies. A activator CLSID will be generated based on your app's NuGet package ID, which will be written out to the log. Implement your activator class using this GUID.

1.4.5

7 years ago

What's New

Bug Fixes:

  • Further hardening against DLL Planting issues
  • Setup.exe now will use SQUIRREL_TEMP to install to (#846, thanks @LennartAJansson)
  • Don't log the signtool command line since it may contain passwords (#861, thanks @damieng)

1.4.4

7 years ago

What's New

Bug Fixes:

  • Work around corrupt RELEASES files (#728, thanks @nullif)
  • AppUserModelID doesn't allow spaces (#778, thanks @MarshallOfSound)
  • Allow query parameters in SyncRelease (#770, thanks @mbutters)
  • Fix an issue where we would still create a path containing lib/net45 which would trip MAX_PATH on certain apps (#792, thanks @damieng)