DDRescue-GUI 2.0.0 Release Notes
This is the latest-and-greatest version of DDRescue-GUI, and it’s better than ever! It brings loads of improvements to all platforms, ranging from performance boosts, to an improved design more focused on security from the ground up.
See the corresponding blog post for all the details.
Note for Linux users:
GetDevInfo needs to be installed before you can install this – head over to https://www.hamishmb.com/html/downloads.php?program_name=getdevinfo to download it first.
Ubuntu 14.04 and 16.04 users need the Python 2 version, and everybody else will need the Python 3 version.
An alternate way to make this easier for Ubuntu users is to add my PPA to your system (see https://launchpad.net/~hamishmb/+archive/ubuntu/myppa).
DDRescue-GUI 2.0.0 Changes
DDRescue-GUI (2.0.0):
- NB: In case you’re wondering, there was lots of toing-and-froing on the auth mechanisms because I was still deciding the implementation, so I was trying lots of prototype things.
- Update release info and version.
- Update to use the new GetDevInfo module.
- Remove old “GetDevInfo” folder.
- Don’t use old IsPartition() method of GetDevInfo any more.
- Use pylint to tidy up and fix some errors.
- Transition fixes for GetDevInfo module integration.
- Rename modules to be in keeping with the python style guide.
- Remove old tests for GetDevInfo package.
- Move IsPartition() function from old GetDevInfo into tools.py.
- Make the tools module more independent.
- Use pylint to further clean up the source code.
- ^ Also follow the style guide more closely.
- getdevinfo fix for macOS.
- Add some Py3 support code from GetDevInfo.
- Fix style issues on the auth dialog.
- Enable the about and disk info menu options while recovering data.
- Fix disk size calculations on macOS.
- Test with lots of versions of GNU ddrescue.
- Fix an issue with the ddrescue tools decorator.
- Fix for ddrescue v1.18.1 – better version detection.
- Test w/ ddrescue 1.23~rc1 and add config to support it better,
- Find new notification backend – terminal-notifier.
- Send sigint when stopping ddrescue instead of sigterm – less likely to cause issues.
- Determine ddrescue version in new function & warn about prerelease versions.
- More workarounds for ddrescue 1.23.
- Don’t ever present an empty list of choices when mounting partitions.
- Check if it will be possible to support wxPython 4 & Py 3 combo – preliminary hacky way – it is.
- Lots of fixes for Python 3 support.
- The files are now compatible with both py3 and py2.
- Test with Python 3 on various platforms.
- Change over to new branding.
- Show more program info in about dialog.
- Remove old 32-bit macOS setup crud – builds are now 64-bit only for macOS 10.9+.
- Various Py3 fixes for macOS.
- Make better use of global menus on macOS – can do because of wxPython 4.
- macOS: Set window focus to most recently clicked preset – better usability.
- Unit tests: stop asking for disk names over and over again.
- Add terminal-notifier to source tree, and use it instead of CocoaDialog (breaks macOS < 10.9 support).
- Remove CocoaDialog from source tree.
- Fix hdiutil resource unavailable errors on old versions of macOS.
- Fix display bug on Fedora & GNOME 3 w/ Py3.
- Ignore minor version differences in ddrescue.
- Compare ddrescue versions a smarter way to avoid breaking when run with newer ddrescue versions even if there’s no reason it won’t work.
- Create some tools to run privileged processes as root and get them working on Linux.
- Write a polkit policy for Linux.
- Make separate files for each type of program so we can have separate pkexec rules.
- Redirect output carefully to silence error messages from pkexec.
- Remove Linux xhost hack for Wayland – no longer needed.
- Move auth dialog to Tools/runasroot_mac.py & modify for this purpose.
- Stop the sudo password prompt from getting to stdout on macOS.
- Update setup.py for py2app macOS builds.
- Use user home directory as default file picker location – usability improvements.
- Mount output files read-only on Linux.
- Label the presets on settings window for extra clarity.
- Hide the auth dialog when desired on macos.
- Don’t block the GUI thread when opening the browser.
- Put progress %age before program name in title bar – easier to see on some platforms.
- Clarify privacy policy.
- Improve security by not using shell=True when running subprocesses.
- Test changes on macOS & get deployment builds working.
- Refactoring & fix some pylint issues.
- Lots of improvements to documentation.
- macOS: Don’t remove cached credentials.
- macOS: Streamline auth dialog.
- Test on macOS with APM disks (works fine).
- Test on macOS with APFS disks (will fix soon).
- Fix various issues with the auth dialog on macOS.
- New terminology: call ddrescue’s log files “map files” in accordance with newer versions of ddrescue.
- Check that hybrid MBR disks can be mounted – they can.
- Update bundled ddrescue binary to v1.23.
- Fix many more issues with the auth dialog.
- Beta testing.
- Fix very long line in about box.
- Remove cancel button from mac auth dialog.
- Fix macOS packaging.
- Fix potential display glitch.
- Fix macOS getdevinfo issues -py2app has poor support for python subprocesses.
- macOS: Activate window on startup to stop it opening in the background.
- Tighten & adjust polkit policy.
- Use lsblk’s JSON output for extra reliability on supported platforms (!= Ubuntu 14.04).
- Add read() method for output parsing from WxFixBoot – fixes potential deadlock getting device info.
- Do initial developer docs (more coming in a later release).
- Keep asking for auth until we get it on Linux.
- Fix some JSON parsing issues with lsblk.
- Add check for update feature.
- Sort partitions to mount alphabetically.
- Re-add old code for mounting output files for Ubuntu 14.04 (no JSON output from lsblk. Sigh.).
- Use wget to make update checker work on Ubuntu 14.04 (Python too old to support proper TLS. Sigh.).
- Delay update checker on startup by 10 seconds.
- Add release info details to the update checker.
- Rename some files to make them more importable.
- Catch generic exceptions from AST and JSON, preventing crashes.
- Pre-authenticate before running ddresuce on macOS.
- macOS: don’t depend on being in /Applications.