--- 2025 --- 09-04 (1.0) - NEW: A new mode where the file is re-compressed over and over until it no longer becomes smaller. This was the last missing feature so I now consider PNG or Die to be complete. - RELIABILITY: In the previous update I missed one place where a file gets deleted, it shouldn't matter, but it now also makes multiple attempts if it fails. - ENHANCE? Switched optipng.exe to a much newer version. I don't know if it helps, but I guess it can't hurt. 09-03 (0.9.9.1) - TWEAK: Files that get an error will have a more bright red color. - ENHANCE: When a file gets replaced, it's now replaced directly. Previously, the file was deleted first and then replaced. What this means is that if the file is on your desktop, if you have the folder open, or if you have the file selected, it will now stay in the same position instead of moving and getting unselected. - MAYBEFIX: Problem: sometimes the files are not deleted/moved properly, and may even cause incorrect files to be overwritten. Cause: I don't know. In very rare cases, seemingly only on Windows 10 and 11 (not 7), Windows just refuses to delete a file when the program tells it to, so the whole file replacement process gets screwed up in a way that I'm not sure how to deal with. My guess is that one of the compressors locks the file that it's modifying, and when it's done Windows has a delay when unlocking it and ends up blocking this program's request to delete/move it. This has always been a problem, but it became an even bigger problem in the latest update because the temporary files are named more consistently now which increases the chance of conflict. Fix? Changed some of the file copying/replacement/deletion logic. The program now makes multiple attempts to move files if it fails. Files are replaced in one step instead of 2 (see the ENHANCE above) so there's less chance for a file going missing. All files that start with "pngordie_result_" or "pngordie_tmcopy_" are now deleted from the output folder when the program starts or when you clear the list. 08-23 (0.9.9) - NEW: Added file replacement mode. If enabled, the original file will be replaced with the compressed version. If disabled, the compressed file will be in the "output" folder. - NEW: Added some buttons to the top, don't need to remember keyboard shortcuts anymore. - NEW/CHANGE: Compressors are no longer hard coded into the program, instead you can configure them from compressors.txt. - CHANGE: The stats.data file was replaced with state.txt file. This file has program settings on the first line, and compressor statistics on the rest. If stats.data exists but stats.txt does not, the stats from the stats.data will be loaded. - ENHANCE: The window now scales for high-DPI monitors. - VISUAL: Tweaked the UI and colors a bit. The text now has color and is better at describing what's happening. - OPTIMIZATION: Significantly optimized rendering when there's a ton of files on the list. Previously the program would process all the text for all the files every frame, but now files that are off-screen are skipped entirely. - OPTIMIZATION: The program should now waste less CPU when nothing is happening. - FIX: Problem: Non-ASCII filenames didn't work. Cause: Somewhere along the way, my translation of non-ASCII characters into "wide characters" (stupid text format used by Windows) fails, turning them into question marks. I'm not sure why since it works for everything else. Fix: PNG or Die now temporarily renames the files before giving them to the compressors. - FIX: Problem: A file's wins would be recorded into the stats twice in certain situations. Cause: The stats for all files, including old files whose stats were already recorded, were recorded every time the last task got finished. Fix: The stats are now only recorded for a task when that task completes, so there's no room for conflict. --- 2023 --- 02-03 (0.9.1) - FIX: If one of the compressors failed (for example when trying to compress a png in 16-bit color space), the resulting filesize was recorded as "-1" and treated as the winner with the lowest filesize. "-1" is now treated as an error and ignored. --- 2022 --- 03-?? (0.9) - Initial release