Skip to content

Latest commit

 

History

History
689 lines (467 loc) · 15.8 KB

CHANGES.rst

File metadata and controls

689 lines (467 loc) · 15.8 KB

CHANGELOG

2.5.7

Date: 11.12.2024

  • remove keyutils from CI workflow to avoid failure on python>=3.11

2.5.6

Date: 11.12.2024

  • fix another problem in setup.py
  • fix CI workflow failure

2.5.5

Date: 11.12.2024

  • add translations for zh_CN

2.5.4

Date: 11.12.2024

  • fix compatibility with setuptools v75.3.0 in setup.py
  • deprecate installation via python setup.py install

2.5.3

Date: 24.04.2024

  • allow matching against a list of values in config rules (device_config) [thanks @dajt1725]
  • fix --terminal command line option (was not doing anything) [@dajt1725]
  • fix AttributeError when python-keyring-keyutils is installed instead of keyutils [thanks @bubbleguuum]

2.5.2

Date: 27.01.2024

  • drop external dependency on distutils (#278)
  • rename --notify-command to --event-hook to prevent misunderstandings (#279)

2.5.1

Date: 23.11.2023

  • fix default install location for bash completion scripts (#275)
  • fix zsh completion for device names with spaces (#253)

2.5.0

Date: 03.10.2023

  • add bash completions for CLI options (thanks @oersen)
  • updates for translations
  • added German translation
  • add bright outlines for wayland icons in dark themes
  • ignore snap loop devices by default
  • maintenance on CI workflows
  • fix KeyError when properties are invalidated multiple times (#272)

2.4.2

Date: 01.03.2022

  • add support for AyatanaAppIndicator3
  • update Turkish translation
  • fix some documentation typos and errors

2.4.1

Date: 02.02.2022

  • setup loop devices in read-write mode if sufficient permissions are available

2.4.0

Date: 30.11.2021

  • add icon name that is specifically designed for tray panel
  • add Turkish translations (thanks @ersen0!)
  • try to detect installed translation files also in non-system installations
  • make it possible to override localedir manually using the TEXTDOMAINDIR environment variable
  • add guide on how to contribute translations and improve the Makefile

2.3.3

Date: 05.03.2021

  • fix: buttons in "device-added" notifications always mounting the last partition instead of the selected one

2.3.2

Date: 27.01.2021

  • fix incorrect use of wayland settings (appindicator+workarounds) within X session, if a wayland session is or was active under the same user (even if that was in a different login session)
  • fix incorrect display of image menu items under X due to caching

2.3.1

Date: 27.01.2021

  • add workaround for missing menu checkboxes on sway/wayland
  • add workaround for menu not showing up with proper size on sway/wayland
  • distribute icons within udiskie package (allows displaying icons in local/venv installations)
  • fix ignored coroutine return values, fixes e.g. program exit code

2.3.0

Date: 22.01.2021

  • don't swallow STDOUT for notify-commands
  • default to appindicator if tray is requested under wayland
  • don't auto-disable tray when running in "pure" wayland session
  • set window role on the password dialog

2.2.0

Date: 07.05.2020

  • add Italian translation
  • remove unneeded xdg from optional dependencies
  • fix a typo in Spanish translation and update russian translation files

2.1.1

Date: 17.04.2020

  • handle XDG_CONFIG_HOME variable without external pyxdg dependency
  • silence warning when using AppIndicator
  • make --appindicator sufficient to show icon (previously additionally required --tray)
  • improve wording in password dialog "Remember" -> "Cache"
  • make some of the logging more concise
  • fix recursive adding/removing of some child devices:
    • fix incorrect root device detection for devices without Drive property (e.g. children of loop devices)
    • fix --detach option when applied to partitions of loop devices

2.1.0

Date: 02.02.2020

  • fix some typos (thanks @torstehu, #197)
  • change how device rules are evaluated: lookup undecided rules on parent device (fixes issue with filters not applying to subdevices of a matched device, see #198)
  • change builtin rules to not show loop devices with HintIgnore, see #181
  • change how is_external attribute is compute: use the value from udisks directly (fixes issue with is_external property not behaving as expected, see #185)
  • add 'skip' keyword for rules to skip evaluation of further rules on this device, and continue directly on the parent

2.0.4

Date: 21.01.2020

  • fix user commands that output non-utf8 data

2.0.3

Date: 20.01.2020

  • fix exception when using non-device parameters with DeviceCommand (e.g. in --notify-command)

2.0.2

Date: 30.12.2019

  • hotfix for automounting being broken since 2.0.0

2.0.1

Date: 28.12.2019

  • use importlib.resources directly on py3.7 and above, rather than requiring importlib_resources as additional dependency

2.0.0

Date: 26.12.2019

  • require python >= 3.5
  • drop python2 support
  • drop udisks1 support
  • drop command line options corresponding to udisks version selection (-1, -2)
  • use py35's async def functions -- improving stack traces upon exception
  • internal refactoring and simplifications
  • add "show password" checkbox in password dialog

1.7.7

Date: 17.02.2019

  • keep password dialog always on top
  • fix stdin-based password prompts

1.7.6

Date: 17.02.2019

  • add russian translations (thanks @mr-GreyWolf)
  • fixed deprecation warnings in setup.py (thanks @sealj553)

1.7.5

Date: 24.05.2018

  • fix "NameError: 'Async' is not defined" when starting without tray icon

1.7.4

Date: 17.05.2018

  • fix attribute error when using options in udiskie-mount (#159)
  • fix tray in appindicator mode (#156)
  • possibly fix non-deterministic bugs (due to garbage collection) by keeping global reference to all active asyncs

1.7.3

Date: 13.12.2017

  • temporary workaround for udisks2.7 requiring filesystem-mount-system when trying to mount a LUKS cleartext device diretcly after unlocking

1.7.2

Date: 18.10.2017

  • officially deprecate udisks1
  • officially deprecate python2 (want python >= 3.5)
  • fix startup crash on py2
  • fix exception when inserting LUKS device if --password-prompt or udisks1 is used
  • fix minor problem with zsh autocompletion

1.7.1

Date: 02.10.2017

  • add an "open keyfile" button to the password dialog
  • add warning if mounting device without ntfs-3g (#143)
  • fix problem with LVM devices

1.7.0

Date: 26.03.2017

  • add joined device_config list in the config file
  • deprecate mount_options and ignore_device in favor of device_config
  • can configure automount per device using the new device_config [#107]
  • can configure keyfiles (requires udisks 2.6.4) [#66]
  • remove mailing list

1.6.2

Date: 06.03.2017

  • Show losetup/quit actions only in ex-menu
  • Show note in menu if no devices are found

1.6.1

Date: 24.02.2017

  • add format strings for the undocumented udiskie-info utility
  • speed up autocompletion times, for udiskie-mount by about a factor three, for udiskie-umount by about a factor 10

1.6.0

Date: 22.02.2017

  • fix crash on startup if config file is empty
  • add --notify-command to notify external programs (@jgraef) [#127]
  • can enable/disable automounting via special right-click menu [#98]
  • do not explicitly specify filesystem when mounting [#131]

1.5.1

Date: 03.06.2016

  • fix unicode issue that occurs on python2 when stdout is redirected (in particular for zsh autocompletion)

1.5.0

Date: 03.06.2016

  • make systray menu flat (use udiskie --tray --menu smart to request the old menu) [#119]
  • extend support for loop devices (requires UDisks2) [#101]
  • support ubuntu/unity AppIndicator backend for status icon [#59]
  • add basic utility to obtain info on block devices [#122]
  • add zsh completions [#26]
  • improve UI menu labels for devices
  • fix error when force-ejecting device [#121]
  • respect configured ignore-rules in udiskie-umount
  • fix error message for empty task lists [#123]

1.4.12

Date: 15.05.2016

  • log INFO events to STDOUT (#112)
  • fix exception in notifications when action is not available. This concerns the retry button in the job_failed notification, as well as the browse action in the device_mounted notification (#117)
  • don't show 'browse' action in tray menu if unavailable

1.4.11

Date: 13.05.2016

  • protect password dialog against garbage collection (which makes the invoking coroutine hang up and not unlock the device)
  • fix add_all/remove_all operations: only consider leaf/root devices within the handleable devices hierarchy:
  • avoid considering the same device twice (#114)
  • makes sure every handleable device is considered at all in remove_all

1.4.10

Date: 11.05.2016

  • signal failing mount/unmount operations with non-zero exit codes (#110)
  • suppress notifications for unhandled devices
  • add rules for docker devices marking them unhandled to avoid excessive notifications (#113)
  • allow mounting/unmounting using UUID (#90)
  • prevent warning when starting without X session (#102)
  • can now match against wildcards in config rules (#49)

1.4.9

Date: 02.04.2016

  • add is_loop and loop_file properties for devices
  • fix recursive mounting of crypto devices (udiskie-mount)
  • prevent empty submenus from showing

1.4.8

Date: 09.02.2016

  • fix problem with setupscript if utf8 is not the default encoding
  • fix crash when starting without X
  • basic support for loop devices (must be enabled explicitly at this time)
  • fix handling of 2 more error cases

1.4.7

Date: 04.01.2016

  • fix typo that prevents the yaml config file from being used
  • fix problem with glib/gio gir API on slackware (olders versions?)
  • fix bug when changing device state (e.g. when formatting existing device or burning ISO file to device)
  • improve handling of race conditions with udisks1 backend
  • fix notifications for devices without labels

1.4.6

Date: 28.12.2015

  • cleanup recent bugfixes
  • close some gates for more py2/unicode related bugs

1.4.5

Date: 24.12.2015

  • fix another bug with unicode data on command line (py2)
  • slightly improve stack traces in async code
  • further decrease verbosity while removing devices

1.4.4

Date: 24.12.2015

  • fix too narrow dependency enforcement
  • make udiskie slightly less verbose in default mode

1.4.3

Date: 24.12.2015

  • fix bug with unicode data on python2
  • fix bug due to event ordering in udisks1
  • fix bug due to inavailability of device data at specific time

1.4.2

Date: 22.12.2015

  • fix regression in get_password_tty

1.4.1

Date: 19.12.2015

  • fix problem in SmartTray due to recent transition to async

1.4.0

Date: 19.12.2015

  • go async (with self-made async module for now, until gbulb becomes ready)
  • specify GTK/Notify versions to be imported (hence fix warnings and a problem for the tray icon resulting from accidentally importing GTK2)
  • add optional password caching

1.3.2

  • revert "respect the automount flag for devices"
  • make dependency on Gtk optional

1.3.1

  • use icon hints from udev settings in notifications
  • respect the automount flag for devices
  • don't fail if libnotify is not available

1.3.0

  • add actions to "Device added" notification
  • allow to configure which actions should be added to notifications

1.2.1

  • fix unicode issue in setup script
  • update license/copyright notices

1.2.0

  • use UDisks2 by default
  • add --password-prompt command line argument and config file entry

1.1.3

  • fix password prompt for GTK2 (tray is still broken for GTK2)
  • fix minor documentation issues

1.1.2

  • add key device_id for matching devices rather than only file systems
  • improve documentation regarding dependencies

1.1.1

  • fix careless error in man page

1.1.0

  • implemented internationalization
  • added spanish translation
  • allow to choose icons from a configurable list

1.0.4

  • compatibility with older version of pygobject (e.g. in Slackware 14.1)

1.0.3

  • handle exception if no notification service is installed

1.0.2

  • fix crash when calling udiskie mount/unmount utilites without udisks1 installed

1.0.1

  • fix crash when calling udiskie without having udisks1 installed (regression)

1.0.0

  • port to PyGObject, removing dependencies on pygtk, zenity, dbus-python, python-notify
  • use a PyGObject based password dialog
  • remove --password-prompt parameter
  • rename command line parameters
  • add negations for all command line parameters

0.8.0

  • remove the '--filters' parameter for good
  • change config format to YAML
  • change default config path to $XDG_CONFIG_HOME/udiskie/config.yml
  • separate ignore filters from mount option filters
  • allow to match multiple attributes against a device (AND-wise)
  • allow to overwrite udiskies default handleability settings
  • raise exception if --config file doesn't exist
  • add --options parameter for udiskie-mount
  • simplify local installations

0.7.0

There are some backward incompatible changes, hence the version break:

  • command line parameter '-f'/'--filters' renamed to '-C'/'--config'
  • add sections in config file to disable individual mount notifications and set defaults for some program options (udisks version, prompt, etc)
  • refactor udiskie.cli, udiskie.config and udiskie.tray
  • revert 'make udiskie a namespace package'
  • add 'Browse folder' action to tray menu
  • add 'Browse folder' action button to mount notifications
  • add '--no-automounter' command line option to disable automounting
  • add '--auto-tray' command line option to use a tray icon that automatically disappears when no actions are available
  • show notifications when devices dis-/appear (can be disabled via config file)
  • show 'id_label' in tray menu, if available (instead of mount path or device path)
  • add 'Job failed' notifications
  • add 'Retry' button to failed notifications
  • remove automatic retries to unlock LUKS partitions
  • pass only device name to external password prompt
  • add '--quiet' command line option
  • ignore devices ignored by udev rules

0.6.4

  • fix logging in setup.py
  • more verbose log messages (with time) when having -v on
  • fix mounting devices that are added as 'external' and later changed to 'internal' [udisks1] (applies to LUKS devices that are opened by an udev rule for example)

0.6.3 (bug fix)

  • fix exception in Mounter.detach_device if unable to detach
  • fix force-detach for UDisks2 backend
  • automatically use UDisks2 if UDisks1 is not available
  • mount unlocked devices only once, removes error message on UDisks2
  • mention __ignore__ in man page

0.6.2 (aesthetic)

  • add custom icons for the context menu of the system tray widget

0.6.1 (bug fix)

  • fix udisks2 external device detection bug: all devices were considered external when using Sniffer (as done in the udiskie-mount and udiskie-umount tools)

0.6.0 (udisks2 support, bug fix)

  • cache device states to avoid some race conditions
  • show filesystem label in mount/unmount notifications
  • retry to unlock LUKS devices when wrong password was entered twice
  • show 'eject' only if media is available (udisks1 ejects only in this case)
  • (un-) mount/lock notifications shown even when operations failed
  • refactor internal API
  • experimental support for udisks2

0.5.3 (feature, bug fix)

  • add '__ignore__' config file option to prevent handling specific devices
  • delay notifications until termination of long operations

0.5.2 (tray icon)

  • add tray icon (pygtk based)
  • eject / detach drives from command line

0.5.1 (mainly internal changes)

  • use setuptools entry points to create the executables
  • make udiskie a namespace package

0.5.0 (LUKS support)

  • support for LUKS devices (using zenity for password prompt)
  • major refactoring
  • use setuptools as installer