- Updated the NSIS installer to support side-by-side updates, allowing the running application to remain active while a new version is staged in a separate directory.
- Modified the installation directory handling to ensure the correct paths are used for shortcuts and registry entries.
- Enhanced the update process to include a retry mechanism for folder swaps, improving reliability during updates.
- Adjusted comments and documentation for clarity on the update process and its implications.
- Replaced references to launcher.exe with FarmControl.exe in the installer script, ensuring consistency in application execution.
- Added taskkill command to stop running FarmControl processes during installation.
- Updated shortcut creation to point to FarmControl.exe for both desktop and start menu.
- Enhanced cleanup process to remove old executable backups and ensure proper application state after updates.
- Refactored updater logic to check for the presence of FarmControl.exe, improving application launch reliability.
- Implemented a new function to restart Farm Control after a successful installation, triggered by the `/RESTARTFC` option.
- Enhanced the installer script to wait for the application to close before relaunching, improving user experience during updates.
- Updated the app update process to conditionally schedule a restart based on the platform, ensuring compatibility with macOS.
- Added a delay in the app update process to ensure the UI reflects completion before quitting.
- Updated the Windows launcher resolution logic to prefer the installed launcher, improving post-update behavior.
- Refactored the restart script to use `.cmd` extension and optimized process handling for better reliability.
- Updated `package.json` to change installation scope from `perMachine` to `perUser`, allowing installations for standard users without admin rights.
- Modified `farmcontrol.nsi` to adjust installation directory and registry keys to use `HKCU` instead of `HKLM`, improving accessibility for non-admin users.
- Refined `installer.nsh` and related scripts to ensure proper handling of the farmcontrol URI handler and shortcuts, aligning with the new user access model.
- Removed references to the `grant-users-access.nsh` script, as user access permissions are now managed directly within the installer.
- Simplified the script for restarting the application by removing unnecessary process checks and sleep logic.
- Introduced a new variable for the application directory to ensure the correct working directory is set before launching the application.
- Updated the method of executing the restart script to use `spawn` instead of `schtasks`, improving reliability and clarity in the restart process.
- Updated multiple files to consistently use `os.homedir()` for constructing the local application data path, improving compatibility and clarity across the codebase.
- This change enhances the reliability of directory retrieval for Windows environments.
- Removed the restart stage from the app update progress component, simplifying the update stages to only include download and install.
- Updated the app update logic to schedule a restart after installation instead of handling it directly in the installer functions.
- Enhanced the messaging for installation completion by removing references to automatic restarts in the progress messages.
- Introduced a new updater-runner module to manage application restarts across platforms, improving the update workflow.