All notable changes to this project will be documented in this file.
- Issue #43 - Race condition which caused EzYuzu to crash when
Launch Yuzu After Update
was checked - thanks @DebugDax, @Gwouigwoui
- EzYuzu can now enable HDR for Yuzu - thanks @bannert1337
- GUI toggle can be found under
Options
>General
>Update Yuzu
>Enable HDR Support
- Command line argument is
--enable-hdr
- GUI toggle can be found under
- Safe Mode - used to bypass user preferences and load defaults - thanks @buthig666
- Hold
Ctrl
down before launching EzYuzu
- Hold
- EzYuzu now pulls 7-Zip 23.01 instead of 22.01 - better performance
- EzYuzu now saves its user preferences inside
EzYuzu.settings.json
, alongside EzYuzu.exe. Allows multiple instances of EzYuzu to be used with unique preferences - thanks @Xarishark - UI Tweaks
- Reordered options inside
Options
>General
>Update Yuzu
- Change the "Update to Yuzu [version]" label on the button to "Update from [current version] to [new version]" - thanks @mateohhh
- Reordered options inside
- Issue #33 - Bug inside
version
file if contents did not contain an integer - thanks @DebugDax - Avoid multiple calls to
RefreshDetectedYuzuInstallationStateAsync()
for improved performance - thanks @informagico - Couple minor bug fixes
- Added ability to automatically close EzYuzu once update has completed - thanks @OsoaGH
- Toggle can be found under
Options
>General
>Update Yuzu
- Toggle can be found under
- Added ability to automatically begin updating Yuzu when EzYuzu has loaded - thanks @OsoaGH
- Toggle can be found under
Options
>General
>Update Yuzu
- Toggle can be found under
Launch Yuzu after Update
within the GUI now launches Yuzu instantly if the currently installed version is the latest, no need to pull another copy - thanks @Xarishark- Added additional logic to
-p
command line switch to detect if fullyuzu.exe
path has been passed in, if so, to get directory file name instead
- Issue #26 - fixed scaling issues when Main form resizes certain controls - thanks @buthig666, @Spyke8x, @YoLolo69, @mjd180
- Rare GUI bug where
BtnProcess
would enable even if no directory was set - Rare bug which may cause SocketException - thanks @Xarishark
- Complete rewrite in .NET 7. Goodbye .NET Framework 4.8.1 - better performance, newer c# features and increased support for await/async model
- Ability to override Update Versions - this enables the ability to rollback versions - thanks @Nicolas-Miranda
Options
>Advanced
>Override Update Versions
- Added Command Line arguments to allow EzYuzu to be executed via Command Line. This enables bulk updates in different locations, see GUIDE for usage - thanks @miapuffia
- Added option to Launch Yuzu after successful update - thanks @Xarishark
Options
>General
>Update Yuzu
>Launch Yuzu after Update
- When EzYuzu detects a newer version of Yuzu available to install, the
Update
button now also displays the build number available - thanks @Nicolas-Miranda - Added
.editorconfig
file to repo - thanks @informagico
EzYuzu
now bundles all.dll
dependencies inside the executable - no need to drag any additional.dll
files into EzYuzu's working directoryEzYuzu
no longer requires Administrator rights to run - thanks @stephannnVisual C++
is automatically installed when EzYuzu is ran as Administrator. Ignored when ran as User.- Goodbye
Newtonsoft.Json
, helloSystem.Text.Json
- Bundled into .NET 7 and adds better performance when pulling json data - incompatibilites before have been resolved
- Goodbye
Ookii.Dialogs.WinForms
, .NET 7 now provides modernFolderBrowseDialog
- Another code refactor to handle both Update Channels. Removed redundant code
- Further GUI tweaks to improve UX
- Advanced options such as
Overriding Update Channel
andUpdate Versions
is now moved toOptions
>Advanced
. Hidden by default to declutter main UI
- Advanced options such as
- Removed redundant code from codebase
- Optimised several methods to utilise await/async.
- Retired
WebClient
, now utilisesIHttpClientFactory
to pull data - faster and memory efficient
- Issue #22 - EzYuzu now properly supports mapped drives for network drives, no need to type FQDN
- Downgraded
Ookii.Dialogs.WinForms
binaries from4.0.0
to1.2.0
due to incompatibilities with certain systems and configurations - Switched
System.Text.Json
toNewtonsoft.Json
due to incompatibilities with certain systems and configurations - Tweaked
GetEarlyAccessGitHubRepoJsonData()
withinEarlyAccessYuzuManager.cs
to remove theMemoryStream
dependency - Tweaked
GetMainlineGitHubRepoJsonData()
withinMainlineYuzuManager.cs
to remove theMemoryStream
dependency
- Issue #15 - Can't load 'System.Runtime.CompilerServices.Unsafe'
- Added support for Early Access Builds via pineappleEA
- Mainline remains default for
New Install
, unless overridden.
- Mainline remains default for
- Ability to switch Update Channels for current installations.
Options
>General
>Update Channel
>Override Update Channel
- EzYuzu will automatically detect which Update Channel the selected copy of Yuzu is on.
-
Goodbye
RegEx
, helloSystem.Text.Json
- Completely refactored how EzYuzu pulls the latest archives down for both Update Channels - now uses api.github.com instead of downloading the entire webpage and parsing with RegEx. Increased robustness and further speed improvements.
-
Updated
FrmAbout
credits to point to Readme Acknowledgements -
Updated
Ookii.Dialogs.WinForms
binaries from1.2.0
to4.0.0
-
Another code refactor to handle both Update Channels. Removed redundant code
-
Improved yuzu version detection - checks current channel through
yuzu-cmd.exe
-
Path handling - now uses
Path.Combine
to build filepaths instead of hard-coding -
Further UI tweaks to improve UX
- Disabling dropdowns and other controls when
btnProcess
is initiated
- Disabling dropdowns and other controls when
- Improved error handling
- Typo's within
FrmAbout
- Updated app to
Microsoft .NET Framework 4.8
- Option to
Check for Updates
within EzYuzu. This can be found viaHelp
>Check for Updates
- EzYuzu now closes
Yuzu.exe
before updating files to prevent file locks - thanks @buruto - EzYuzu now uses locally installed 7-Zip if present to extract archives
- EzYuzu now displays which version of Yuzu is being downloaded
-
Complete code refactor of EzYuzu
- Extracted duplicate methods from
frmMain.cs
and moved intoEzYuzuManager.cs
- Utilises
await/async
model - Redundant / duplicate code removed
- Improved Error handling
- Extracted duplicate methods from
-
EzYuzu now downloads
yuzu-windows-msvc-xxx-xxx.7z
instead ofyuzu-windows-msvc-xxx-xxx.zip
and uses7z.exe
to unpack rather thanSystem.IO.Compression.ZipFile
- upto 25% speed increase -
Tweaked
FetchLatestYuzuVersionNumber
method withinEzYuzuManager.cs
- pulls version from URL instead of downloading and parsing the page header -
EzYuzu update module will now allow overlapping of versions before older versions are no longer supported.
-
EzYuzu now automatically selected the appropriate action on the selected directory
- If
yuzu.exe
is not found, assumesNew Install
- If
yuzu.exe
exists andversion
file is old, assumesUpdate Yuzu
- If
version
file is latest, disable update button
- If
-
EzYuzu GUI changes
- Removed
Check
button - now checks when directory is selected - Removed
Dropdown
options - now dynamically decides option based on directory selected - Added
Reinstall Visual C++
options. This can be found viaOptions
>General
>Update Yuzu
>Reinstall Visual C++
- Increased
Update
button size to improve UX
- Removed
- An issue with parsing the version number from yuzu-mainline repo
- Issue #11 and Issue #8 - Unhandled exception has occurred in your application when
yuzu-windows-msvc
exists within same directory
- Unhandled Exception error when Updating Yuzu (Issue #7) - due to GitHub updating their URL structure
- EzYuzu version detection
- EzYuzu now remembers previously selected Yuzu Folder Location when launched
- Folder Browse dialog - modern UI implemented
- Visual C++ Redistributable installer no longer forces reboot
- Improved cleanup process
- UI tweaks to improve UX
New Install
- now also sets "Optimised GPU Defaults"
- Improved GPU detection
- UI grammar and punctuation
- Initial release