CompactGUI Versions Save

Transparently compress active games and programs using Windows 10/11 APIs

v3.0.0-alpha.7

1 year ago

Changes

  • Added Watchers to monitor selected folders in the background for changes over time and keep track of decaying compression (Be careful with this; bugs undoubtedly lie ahead) #207
    • Includes details on when the folder was last compressed, when the folder was last modified, what compression level is predominant and also how much compression decay has occurred.
    • Watchers are lightweight and listen for Windows' firing of file changed events. Only when the system has been idle for >5 minutes does it run an analysis on folders that are flagged as changed. If none were flagged, nothing happens.
    • Watched folders can be accessed by a new page in the UI by hovering near the bottom of the program window.
  • Recompressing a folder now skips files that have already been compressed with the selected compression level
  • Slightly improved speed of pre-compression file checking
  • Added system tray icon and notification support (no notifications yet; let me know which notifications would be handy to have. Maybe notify if a watched folder decays to <50% of its compression?)
    • CompactGUI now automatically keeps running in the system tray and on startup if you have folders you want to monitor. (Planned: add option to disable this)
  • Made application single-instance to avoid issues with running multiple instances at once

Known issues

  • Watched folders will not play nice if you added a folder to the watchlist while in admin mode, and then went back to normal mode afterwards. It will still technically work, but the analysis will not be accurate (as it will skip over files it doesn't have permission to check)
  • Clicking the Analyse button to check all the watched folders won't show any visual indication that it's doing anything until it is finished. It is actually working, but you just can't see anything. Feel free to spam click the button if it makes you feel better.
  • The fading in/out bottom bar is a bit glitchy.

Important!

Because this application now uses .NET 6, you have two choices of downloads:

    • 2.72 MB: If you don't have the .NET 6 runtime installed when you try to run this, it will prompt you to download it from Microsoft
    • 150 MB: Includes all libraries required to run it completely standalone, however it's nearly 50x the size. I do recommend installing the .NET 6 runtime instead (which is itself only a 50MB download).

File Checksums

MD5: 		2DD4F0B810BE81433FCCE33493F44C26
SHA-256: 	9E0138F3330F524851C0EAE6DC24499BBACD3EAEE9FDD1418DAC1C714E8BFCB7

v3.0.0-alpha.6

1 year ago

Changes

  • Analysis now commences immediately after selecting a folder (one less click)
  • Added ability to cancel analysis if it takes >5 seconds
  • Added detection to check if you are trying to compress a folder you don't have permission for (usually Program Files) and will prompt to restart in admin mode (a badge will show beneath the title if you're in admin mode)
  • Settings are now independently versioned to (hopefully) avoid future breaking
  • UI Tweaks:
    • Added more transition animations to make the application look smoother during operation
    • If you select a Steam game, now show the game's name in the search bar rather than the folder name
    • Updated icon
  • Separated core application logic from the rest of the UI to make development easier - This is a bigger change than you might think, please report any bugs however big or small (even if the UI just looks a bit weird / elements overlapping strangely)

Fixes

  • Fixed crash if on first compression you selected "skip user submitted files" #256
  • Fixed databinding errors that resulted in analysis showing slightly different folder sizes on every run

Known issues

  • The options to skip files are still not implemented

Important!

Because this application now uses .NET 6, you have two choices of downloads:

    • 2.54 MB: If you don't have the .NET 6 runtime installed when you try to run this, it will prompt you to download it from Microsoft
    • 150 MB: Includes all libraries required to run it completely standalone, however it's nearly 50x the size. I do recommend installing the .NET 6 runtime instead (which is itself only a 50MB download).

File Checksums

MD5: 		A85AB7106514F9BCD80CE17BE3FDF6AA
SHA-256: 	82236B345C91ACE9BDED40E74BE8C410F5AEF1C68ECAE31B6073AC9925AF825A

v3.0.0-alpha.5

1 year ago

Changes

  • Updated Settings menu
    • You can now edit the list of poorly compressed filetypes
  • Added checkboxes and 90% of the background code to enable skipping poorly compressed files both from local list (in options menu) as well as from user-submitted results.
    • these options don't do anything yet but will show a preview of how many files could be skipped
    • currently there are not enough user submissions for most games to build a skip list.
    • This option will be enabled once I work out how to properly handle user submissions in the setting of files being skipped
      • Right now, if a file extension is skipped then that file is considered poorly compressible and would be included when submitted; which would mean if someone skipped all their files, it would mark everything as poorly compressed which would harm the accuracy of the crowdsourced results significantly
      • I could disable user submissions if it detects skipped files, but that would seriously stunt the number of results submitted
  • Updated compression options to remove unused checkboxes

Fixes

  • Fixed crash on startup when no internet connection is available #252
  • Fixed crash when trying to compress files that are in use or inaccessible #250

Known issues

  • If you've used the old Windows "Compress this folder" option in a folder's properties menu, CompactGUI cannot undo that yet. Disable that to make it work

Important!

Because this application now uses .NET 6, you have two choices of downloads:

  • CompactGUI.exe (3.1MB) RECOMMENDED
    • If you don't have the .NET 6 runtime installed when you try to run this, it will prompt you to download it from Microsoft
  • CompactGUI-Integrated.zip (150MB extracted) NOT RECOMMENDED
    • Includes all libraries required to run it completely standalone, however it's nearly 50x the size. I do recommend installing the .NET 6 runtime instead (which is itself only a 50MB download).

File Checksums

MD5: 		D0C1A2DB8B830ECDE02536A76C16E539
SHA-256: 	6B6613C49FFC15A6A832507F414D565B975E16756C4482931CE1E4A14FD35ED0

v3.0.0-alpha.4

1 year ago

Changes

  • Added ability to recompress a previously compressed folder
    • this will force compress all files again with the newly selected algorithm (skipping already compressed files is planned)
  • Add CompactGUI to explorer right-click menu
    • (not the fancy new Windows 11 one unfortunately. That is much more work for some reason)
  • Added options menu (most options do nothing yet)
  • Improved analysing, now identifies what type of compression files have (for future use)

Fixes

  • Fixed progress bar sometimes momentarily starting at 100% if a folder was recently uncompressed

Known issues

  • If you've used the old Windows "Compress this folder" option in a folder's properties menu, CompactGUI cannot undo that yet. Disable that to make it work
  • Compressing folders where files are actively in use will cause CompactGUI to crash.

Important!

Because this application now uses .NET 6, you have two choices of downloads:

  • CompactGUI.exe (3.1MB) RECOMMENDED
    • If you don't have the .NET 6 runtime installed when you try to run this, it will prompt you to download it from Microsoft
  • CompactGUI-Integrated.zip (150MB extracted) NOT RECOMMENDED
    • Includes all libraries required to run it completely standalone, however it's nearly 50x the size. I do recommend installing the .NET 6 runtime instead (which is itself only a 50MB download).

File Checksums

MD5: 		39DF368DDC7136455C395364C170DD58
SHA-256: 	E67D69AA795582C1FEF2B38E4FA2730316C64858D6EDF5B0FA3C9A7343FF6BCF

Full Changelog: https://github.com/IridiumIO/CompactGUI/compare/v3.0.0-alpha.3...v3.0.0-alpha.4

v3.0.0-alpha.3

1 year ago

Changes

  • Rewrote the backend to no longer use compact.exe and instead directly access the Win32 API for file compression/decompression.
    • This should make CompactGUI even faster especially when compressing folders with lots of tiny files.
    • At absolute worst, it should be no slower than running compact.exe directly, and uses much less CPU power as it's no longer spawning dozens of new processes to try to compensate.
    • Interestingly, the WofSetFileDataLocation function that replaces it has some form of built-in detection to automatically skip files if they're not going to compress well. Neat.
    • The first time you try this version, please use it on a non-essential folder and then check that the files are okay before compressing anything else. I have no reason to suspect there will be issues, but just to be safe :)
    • Subjective benchmark of Stardew Valley which has a lot of tiny files and really crippled the old version:
      Stardew Valley | 700 MB | 6800 Files
      
      compact.exe:         17.34s   Baseline
      CompactGUI v2.6.2:   81.79s   471% slower
      CompactGUI v3 a2:    17.82s   2.7% slower
      CompactGUI v3 a3:    12.95s   25% faster  # probably because it doesn't check files yet
      
  • Added version checker
    • if a new version is available, a banner will show up at the bottom with a link to this page

Fixes

  • Fixed progress bar sometimes momentarily starting at 100% if a folder was recently uncompressed

Important!

Because this application now uses .NET 6, you have two choices of downloads:

  • CompactGUI.exe (3.1MB) RECOMMENDED
    • If you don't have the .NET 6 runtime installed when you try to run this, it will prompt you to download it from Microsoft
  • CompactGUI-Integrated.zip (150MB extracted) NOT RECOMMENDED
    • Includes all libraries required to run it completely standalone, however it's nearly 50x the size. I do recommend installing the .NET 6 runtime instead (which is itself only a 50MB download).

File Checksums

MD5: 		F8D18BA39768F4906FACF44D49814133
SHA-256: 	07A7D2F4B1CEEE49AECB39435F9C25AF5A259FB005BC2C6F17B5F07C3D6E9DF5

Full Changelog: https://github.com/IridiumIO/CompactGUI/compare/v3.0.0-alpha.2...v3.0.0-alpha.3

v3.0.0-alpha.2

1 year ago

Major Fix

  • While updating the backend database formats, the last alpha release got broken resulting in crashing when analysing a folder. This has been fixed in this version. Going forward, new backend changes will be versioned to avoid similar incidences until major release.

!! Please delete the following directory to rebuild the database after downloading:

%localappdata%/IridiumIO/CompactGUI


Important!

Because this application now uses .NET 6, you have two choices of downloads:

  • CompactGUI.exe (3.1MB) RECOMMENDED
    • If you don't have the .NET 6 runtime installed on first run, it will prompt you to download it from Microsoft (x64 for Desktop)
  • CompactGUI-Integrated.zip (150MB extracted) NOT RECOMMENDED
    • Includes all libraries required to run it completely standalone, however it's nearly 50x the size. I do recommend installing the .NET 6 runtime instead (which is itself only a 50MB download).

v3.0.0-alpha

1 year ago

UPDATE 6/6/22

While updating the online database, I accidentally changed some words to integers which CompactGUI did not expect. A new release will come ASAP. Please do not download this version

Changes

  • Complete application rewrite using WPF and .NET 6.
  • Smoother, simpler UI. As a bonus if you're compressing a steam game, it shows a graphic from the game on the backdrop.
  • Major speed improvements with asynchronous and parallel processing of files
    • Using Ark: Survival Evolved as an example (160GB with 105,000 files)
      • Analysing New: 6 seconds Old: 104 seconds
      • Compressing New: 8 minutes Old: 22 minutes (if it didn't crash first)
  • Smarter skipping of files, including skipping files smaller than the disk cluster size #196
  • Better tracking of poorly compressed filetypes
    • At present when you submit results after compression, a list of the filetypes that didn't compress will be submitted as well. As more people use the submit feature, I'll be able to implement per-folder ignoring of known poorly compressible files to speed up the process even faster and save unnecessary disk writes.
  • Support for long file paths greater than the 260 character limit (you will probably also need to enable this in Windows) #241

Fixes

  • Just about everything is brand new so more is probably broken than has been fixed
  • Fixed misreporting of large filesizes #240
  • Major speed improvements

Important!

Because this application now uses .NET 6, you have two choices of downloads:

  • CompactGUI.exe (3.1MB) RECOMMENDED
    • If you don't have the .NET 6 runtime installed when you try to run this, it will prompt you to download it from Microsoft
  • CompactGUI-Integrated.zip (150MB extracted) NOT RECOMMENDED
    • Includes all libraries required to run it completely standalone, however it's nearly 50x the size. I do recommend installing the .NET 6 runtime instead (which is itself only a 50MB download).

v2.6.2

6 years ago

Changes

  • Changed online results DB to be compressed. A smaller file size = faster download.
  • Online results DB now only downloads if the current DB is >24 hours old. Previously a new one would download every time the program was opened.

File Checksums

MD5: 		ED4D75D75B18C6F022C74A34CF382BC4
SHA-1: 		956AF240C102BFDD50FB1DB0552738E239EAC533
SHA-256: 	0C5833BBC11DEA9B6FC68CC5E4E7B78847B448CB6C290233B945EAE7ADD74C86

v2.6.1

6 years ago

Fixes:

  • Fixed hanging when folders have symbols in their name and/or the folder name is <3 characters long. #179

File Checksums

MD5: 		E82A9E7F206F1842D8D523ABA51890B9
SHA-1: 		23C80DBDF027F8B875A52C0097B2FF94247E3431
SHA-256: 	FCE7ABA0C38D045180A68B2C97F38086D1506192D5ADCC7D9CE8B4875BD5AA37

v2.6

6 years ago

Changes

  • Updated Wiki parser and compression estimates to be compatible with new database format
  • Added list of files that will be processed to the main page
  • Updated some UI items for clarity + added tooltips to the compression options
  • Minor layout tweaks

Fixes

  • Fixed the output log not formatting certain characters properly #176
  • Tidying up and removal of some redundancies

File Checksums

MD5:  		7B55D21FFDD25F1ACC7B6D79B3CCDC97
SHA-1: 		E003F9189A04DDE06902C5A80CB34896260B610F
SHA-256:  	AB2B0FDBDD3A82D412127AA21DBF3E8055B29C05737D657F050A909FED61E00C