# Changelog All notable changes to `self-replace` are documented here. ## 1.5.0 - Raised MSRV to 1.63 and upgraded windows-sys to 0.52. #26 ## 1.4.0 - Added `self_delete_at`. #22 ## 1.3.7 - Fix windows dependency. #16 - Fix examples failing to run on non unix platforms. ## 1.3.6 - Symlinks are now properly resolved. This allows replacing the executable when it's invoked via a symlink. #18 ## 1.3.5 - Explicitly pass the process handle on Windows simplifying the implementation. - Change the dummy command to use on windows away from `ping.exe` to `cmd.exe`. - More correctly invoke `CreateProcessA` on Windows. ## 1.3.4 _yanked invalid release_ ## 1.3.3 - Avoid the use of `atexit` and spawn immediately. This has the advantage that even if the process crashes hard, we already have started the cleanup handler. - Improve safety of the crate for Windows by avoiding unsupported life before main. ## 1.3.2 - Use an atomic rename on Windows in the self replacement case for the final step to avoid accidentally leaving partial executables behind. - Resolved an issue where a potentially incorrect filename was computed on Windows in some cases. - A temporary folder is now always preferred on windows for the temporary operations if possible. This code path now also works correctly. ## 1.3.1 - Fixes a bug that caused the wrong path to be calculated internally creating an access error in some cases. ## 1.3.0 - Added support for `self_delete_outside_path` to support more complex uninstallation scenarios on Windows. ## 1.2.0 - Improve a race condition on Windows. ## 1.1.0 - Support older rustc releases. ## 1.0.0 - Initial release.