Release Notes
Version 2.2.1
User interface changes:
- Popups for selecting files in the rule interface now have tool tips showing the full paths of the files.
- Fixed instructional text in the AppleScript and shellscript editors being editable.
- Deleting your license brings up a warning alert now.
- Possible fix for permissions error when upgrading. Won't be able to tell if this works until the next update (it depends on the code of the version updated from, not the version being updated to).
Core changes:
- Fixed iTunes importing with iTunes 7.7
- App Sweep improved. Should catch a couple more file types and also should be a bit faster.
- Fixed "double free" error in the helper process.
- Plugged a couple memory leaks.
Version 2.2
This is a free upgrade.
New Features:
- Ability to create patterns for matching. Use the "matches/does not match" operator.
- Ability to create custom tokens. Define them in your match patterns and then use them in your rename/sort/Growl actions.
- AppleScripts and shellscripts can now be embedded into the rules. No external files needed. Scripts can be edited right in Hazel.
- Added new GTD-like date matching. Dates can be compared against "Today", "This Week", "This Month" and "This Year" which align with the calendar concepts of days, weeks, months and year.
- Added "is in the next" operator for dates. Useful for dates in the future (like due dates).
- Added "Subfolder Depth" attribute which is how many levels deep from the top folder (the top folder being at depth 0). Can now control what rules apply to what levels of a folder hierarchy.
- AppleScripts can now return a record with special keys to communicate back to Hazel:
- hazelStop: If set to true, Hazel will stop processing the current rule, considering it to have executed successfully. Subsequent actions in this rule will not be run.
- hazelSwitchFile: If set to an alternate file, subsequent actions will act on this file instead of the original one passed in. You can use this when the file is "transformed" (like turned into an archive) or if you want to re-target another file, like the parent folder.
User interface changes:
- You can now select multiple rules in the rule list (finally).
- Added new formatting options for the "domain" token. Clicking on it will allow you to get its "base" domain or strip it down even further by dropping the TLD. For instance, "www.example.com" can be formatted as "example.com" or "example".
- Script pop-ups now keep track of any currently used scripts.
- Fixed underlining of the "month" token's menu items. While the numerical forms should have underlines to indicate number of digits, they make no sense for the textual forms (Dec & December).
- Tweaked the color label picker on Leopard to more closely resemble Finder's current look. Will also display name and selection frame when moused over.
- Widened rule window to match width of System Preference's window (at least, Leopard's version of it).
- Fixed multiple duster icons appearing. Note, this fixes the problem from this version onwards. You may still experience it when first upgrading to this version.
Core changes:
- App Sweep will prompt for a password if any support files' permissions require it.
- App Sweep now picks up any installed QuickLook plugins.
- Fixed bug where extra hazeldb files were being created.
- Added "ScanInvisibles" default. If set, Hazel will not ignore invisibles, instead processing them like any other file.
- Added "IgnoredBackupDirs" default. It is an array of directories that when determining whether an app is installed, App Sweep will ignore if that app is underneath that directory.
- HFS busy flag is now ignored. Files with this flag set will not be considered busy. It was unclear whether any program uses this correctly and there were cases where programs were setting the flag incorrectly.
- Fixed error messages being logged when uninstalling files even when it was successful.
- Fixed memory leaks.
Version 2.1.7
User Interface changes:
- Fixed multiple duster icons appearing. Note, this fixes the problem from this version onwards. You may still experience it when first upgrading to this version.
Core changes:
- Fixed crashes when Safari 4 preview is installed.
Version 2.1.6
User Interface changes:
- Fixed crash when enabling/disabling rules with spacebar while navigating with arrow keys.
Core changes:
- Critical fix: fixed files disappearing when renamed with same name.
Version 2.1.5
User Interface changes:
- [Leopard] Fixed pattern editors being broken in 10.5.2. Spaces were disappearing at the beginning/end of the pattern or right before/after attributes (the lozenge things). Should now work like it did before.
- [Leopard] Fixed plus/minus buttons under the rules list becoming misaligned if Hazel initially loaded any other pane besides the folder pane.
- [Leopard] Fixed problem with alert saying eval period has expired even though app was recently registered. This resulted from a specific timing where app was registered after eval period expired but before user was alerted. On Leopard systems, the alert comes up only after the user has gone idle so the notification can be delayed for some time.
Core changes:
- Reduced chance that App Sweep would consider an app being upgraded as being thrown away.
Version 2.1.4
Core changes:
- [Tiger] Fixed hang on Tiger systems. Usually started happening after app went into demo mode. Should not have affected those on Leopard. If you are affected, you should download and install this version manually.
Version 2.1.3
User interface changes:
- [Leopard] Fixed "Other" token in the pattern interface.
Core changes:
- [Leopard] App Sweep should now uninstall apps that are backed up via Time Machine.
- [Leopard] Fixed the "Unarchive" action.
- Fixed problem with Hazel sometimes losing track of folders on external drives when they are unmounted.
- Fixed log/Growl message for the unarchive action showing the destination path as the source.
- Miscellaneous fixes.
Version 2.1.2
User interface changes:
- [Leopard] Fixed missing arrows on pop up buttons in the rule interface.
- [Leopard] Color label picker now resembles Leopard's "square" version on Leopard systems. Tiger version unaffected.
- Fixed UI not being able to edit a rule when it referenced a script that no longer exists.
- New installs are set to check for updates weekly. Note that this was done in a previous release but was broken such that the checks did not actually happen (even though the UI indicated it would). This did not affect anyone who set/changed the frequency after the initial launch.
- Fixed uninstall failing when Hazel was installed machine-wide on Leopard. Leopard tightened permissions on the machine-wide preference pane folder. Should now prompt for a password if necessary.
- Interface should be slightly better about handling folders on external volumes that are unmounted. You will still get failures when moving/copying to such folders. Looking into reducing the occurrences of these messages (at least for Growl) in a future release.
Core changes:
- Fixed general issues with Safari and OS X versions. Should now work correctly between different combinations of Safari and OS X, in particular, OS X 10.4.11 which switched to Safari 3.
- Fixed "Date Last Matched" when the attribute was blank, making it less useful when comparing against other dates.
- [Leopard] Background tasks now run at a lower IO level. This aspect was lost in the initial Tiger/Leopard transition.
- Fixed case where hazelfolderwatch was running out of open file descriptors.
- [Leopard] General updating of internal code to use newer Leopard APIs where possible.
Version 2.1.1
Core changes:
- Fixed moving of files between drives/volumes resulting in a copy instead.
- Fixed sporadic reset of Hazel internal metadata on some folders. Would result in rules getting re-run or date added being cleared.
- [Leopard] Fixed Hazel not picking up Safari's or Mail's download folder setting.
- Fixed move/copy failing if Spotlight is disabled on the folder/drive on which the source file resides.
- Tweaked memory characteristics of sizing operations. Should work much better when calculating the size of large file trees.
- Improved performance of Trash size limiting.
Version 2.1
This is a free upgrade.
New Features:
- Leopard (OS X 10.5) compatibility.
- Added "Make alias" action.
- Added "Reveal in Finder" action.
- Expanded support for different file "Kinds". Using the "Other..." option, you can choose from a list of every file type on the system.
- For certain attributes, you can match against whether it is blank or not.
User interface changes:
- Tweaked general layout of the folder pane.
- Re-arranged items in the action pop-up. Also, removed prepositions from action names and moved them into their own label after the pop up. Should be more consistent now.
- Re-arranged and added items to the pop-up of "Kind" values.
- Re-arranged a couple items in the attribute pop up.
- Fixed rule preview erroneously indicating that Hazel would descend into non-folders (aliases and symbolic links, for example).
- Fixed sporadic crash when canceling out of the rule sheet.
- Should now be able to find iTunes playlists/iPhoto albums in cases where the user moved the whole library by launching iTunes/iPhoto while holding down the option key.
- The rule preview should handle the case of missing metadata better now.
Core changes:
- Support for "Folder" and "Alias" Kinds even on filesystems where metadata is unavailable.
- Improved performance when calculating the size of folders. Should hopefully address performance issues when using rules that filter on size and also descend into subfolders.
- Changed how the Kind attribute prints out in filenames. Prints the actual Kind and not the more general categories that appear in the pop-up.
- Fixed sizing calculations following symbolic links. Should no longer do that.
- Fixed the hours attribute, when set to 24 hour clock, printing out values between 1-24 instead of 0-23.
- Fixed Spotlight attributes that are lists (like the Authors field) printing out with parentheses or extra quotes when used in file renaming or subfolder creation.
- You can now edit the casing (lowercase, uppercase, etc.) of Spotlight file attributes that are lists (like the "Authors" field). Just click on the token for the different options.
- Fixed cases of file attributes with colons being used in filenames.
- Fixed asterisks being used in conditions making the rules uneditable later.
- Fixed case when having multiple App Sweep panels, the second one would become unresponsive after throwing away files in the first one.
Version 2.0.2
New Features:- Added "Contents" attribute. Represents the text content of the file. Note that this only includes text indexed by Spotlight. If you can find a file by searching on a particular word, then that word is considered to be contained in the contents.
- Trash limits were broken in recent releases. This has been fixed.
- The "Rename" and "Sort into Subfolders" actions should now prevent the creation of any files starting with a dot (".") as this would make them invisible in Finder.
- The "extension" attribute in the "Sort into Subfolders" action no longer prepends the dot ("."). This should prevent the creation of unintentional extensions on folders.
- Fixed date added being incorrect for files in subfolders when the subfolder is added.
- iPhoto importing was returning before it was complete. Doing a move action right afterwards would sometimes interfere with the import. Now, the import should complete before the next action is run.
- Fixed some of the glitches in the field used to edit patterns. There are still some odd Apple bugs left.
- Fixed moving a file into a subfolder failing if the file exists. Now renumbers the file as needed.
- Other miscellaneous tweaks and fixes.
Version 2.0.1
New Features:- Added "Date Last Matched" attribute. Represents the date when a rule was last run against a file. Useful for noticing changes since "the last time." For instance, you can set Hazel to do a backup by checking if the file was modified since the last matched date and if so, copy it somewhere else.
- Sample rules have been moved to within Hazel; they are no longer on the disk image. On first launch, you are asked if you want to load them and you can load them later by using the "Load Sample Rules" item in the action menu.
- In the menu for date attributes, added underlining to indicate the number of digits/zero padding since it is not obvious when the example number has more than one digit.
- Fixed bug where comments would not get set on certain types of files (file packages?).
- Fixed military time and other alternate format settings not sticking for date patterns.
- Fixed bug where comments would be appended even though they were already there.
- Fixed Spotlight picker, when used from the attribute pop up menu, not going away when an attribute was selected (had to cancel to get rid of it).
- Fixed multiple Hazel icons in the menubar that can happen on repeated installs.
- Help menu should now show an entry for Hazel's help.
Version 2.0
This is a free upgrade.
New Features:- New rule actions:
- Rename file: Can rename files by specifying a pattern based on file attributes.
- Sort file into subfolders: Let's you define a pattern of subfolders into which the file is moved. Patterns can be based on different attributes like date added or the source domain.
- Unarchive: Unpacks standard archive files and moves them to the trash, leaving the unpacked version in the folder.
- Send Growl Message: Sends a custom notification via Growl. Growl must be installed for this to be enabled. See Growl support below.
- App Sweep: Hazel can watch for thrown away applications and offer to throw away its support files.
- Rule preview: Get a quick overview of what files will match which rules.
- Growl support: Get notifications of what Hazel is doing on your Desktop. Growl must be downloaded and installed separately.
- Move and copy actions now have option to replace the existing file.
- Better Spotlight integration: Rules can now filter on any Spotlight attribute in the system. Just select "Other" in the file attribute pop-up. Spotlight attributes are also available in the "Rename" and "Sort into subfolders" actions via the "Other" token.
- Support for Flock.
- New icons
- New menubar item. Can be used to start/stop Hazel and run rules manually.
- License and rules files can now be double-clicked.
- Rules files can be dropped onto folders or the rule list.
- Added various animation/transition effects in the interface.
- Yellow exclamation mark badge appears when a rule becomes invalid (like a destination folder no longer exists).
- Reversed the semantics of the option for adding keywords and commments. The option is now "Replace existing". If not checked, it's the equivalent of checking the "Append" option before. The semantics of your rules should be preserved. It basically just changes the interfaces such that a new rule will default to "Append".
- Improved visibility of folder names.
- Added "View log" button to the "Info" pane. Gives you quick access to Hazel's log.
- Added sending of system profile info when checking for updates. This is opt-in (and is off by default) but gives us data on what kind of configs to support.
- Fixed Sparkle updater sometimes bugging you to upgrade every 30 minutes.
- Fixed alerts getting buried under other windows in certain cases.
- New task scheduler written to replace usage of launchd.
- Fixes issue where Hazel stops working after a log out and log in.
- Should be more responsive when dealing with mounted volumes.
- No more annoying launchd log messages.
- Background tasks are now scheduled in a staggered fashion to minimize any periodic "surges" in activity.
- Hazel can now be stopped and restarted at will.
- Detection of busy files has been greatly improved.
- When appending comments, space is used as a separator instead of newline.
- Now ignores all invisible files (including dot files) when processing a folder.
- When calculating sizes of files in a folder, will ignore invisible files. So a folder can be considered empty (size = 0) even if it has files like .DS_Store in it.
- Hazel has its own log now in ~/Library/Logs/Hazel. Hazel will also rotate them on a weekly basis.
- Improved locking of internal database files. You should see fewer messages about lockfiles.
- Rules will now track scripts and Automator workflows if they are moved.
- Can now deal with iTunes and iLibrary library files that are aliased.
- Fixed potential looping with renaming.
- Fixed email address parsing for "is from domain" and "is not for domain" operators.
- Fixed "contains" and "does not contain" not working for multi-line comments.
- Fixed "where froms" being stripped on move/copy.
- Fixed comments with unicode characters getting deconstructed when comment was set or the file was moved/copied.
- Fixed Hazel losing track of a file if a custom script renames it. Subsequent actions in the same rule should now work.
- Fixed Archive action losing track of a file. Subsequent actions in the same rule should now work.
- Fixed multiple executions of rules when run manually.
- Fixed potential problem with moving/copying not generating the right numbering if the file name is already taken.
- Sped up setting of Finder comments. Also made it more reliable when Finder comments are accessed multiple times within the same rule.
- Fixed move and copy operations failing on files with slashes in their names.
Version 1.1.5
- Fixed comments getting lost during move/copy operations. The comments were still retained in Spotlight but unviewable in Finder.
- Fixed potential crasher on start up when Safari/Camino browser download preference could not be read.
Version 1.1.4
- Fixed file sizes in rules getting reset when the size was 4G or greater.
- Fixed bug where one could not open/edit rules which use the "Any file" condition.
- When selecting a destination folder, the UI now allows the source folder to be selected (this is a reversal of a previous change). This is necessary to deal with cases involving subfolders.
- Got rid of delay between making a change and having the change committed to disk. Now all changes are written out immediately. Should alleviate some minor confusion.
Version 1.1.3
- "Run rules now" now forces actions to be re-run on a file even if they have already been executed before. Should give better feedback to the user when testing out rules.
- Added "minute" for time intervals in rules (but not in folder or trash options). Note that there is a fudge factor of 5 minutes or so depending on when Hazel runs so do not expect precision greater than that.
- Fixed various problems with date added. Date added was not getting reset when a file was re-added to a folder and it was also getting lost when a file was re-saved by certain programs. Internal db changed to a hybrid name/file id table. It should behave as before 1.1.2 (which was the correct way) but still catch file renames in most cases (which is what the 1.1.2 changes were for).
- Fixed crash when Firefox preferences were saved in a different encoding.
- Fixed iTunes import failing when either the main library has been renamed or when running under a non-English localization.
- Fixed problems when there are no iTunes or iPhoto libraries.
- Fixed rule interface resetting the iPhoto action's album to "Library".
- Fixed rule interface so that it remembers the selection whenever you change attributes.
Version 1.1.2
- Added "Copy file to" action to copy a file/folder.
- Rudimentary checks added to prevent move and copy actions from having the same source and destination folders.
- Reworked internal database to store entries by file id instead of name. Hazel-maintained metadata, like date added, should carry over across renames of the file within the same folder.
- Fixed bug where Hazel claimed that a value was not filled in when creating a rule with the "open" action.
- Log messages for the background process can be redirected to a file. There is no UI for this setting but it can be set with the "LogFile" key in Hazel's preferences. The value should be a fully specified path.
- Other fixes and tweaks to rule interface.
Version 1.1.1
- Fixed the broken "Edit" item in the gear menu.
- Added contextual menu to the rule list.
Version 1.1
New Features:- New rule actions:
- Open file
- Import into iTunes
- Import into iPhoto
- Run AppleScript
- Run Automator workflow
- Run shell script
- Run rules on folder contents
- New software update mechanism. When a new version is available, you are presented with release notes. If you choose to upgrade, the update is downloaded and installed for you.
- Gave rule interface a minor facelift.
- New shaded look for folder list.
- Added "Reveal in Finder" contextual menu to folder list items.
- Can check/uncheck all rules at once by command-clicking one of the checkboxes.
- Added better keyboard navigation for the rule table.
- Added "Rename" to the action pull-down menu.
- Other miscellaneous tweaks.
- Combined the "Type" and "Content" attributes into "Kind" to better mirror Finder/Spotlight. The "Folder" kind is much more accurate from a user POV (does not include file and app packages). The "Document" kind is the closest to the former "File" type. "Document" is more accurate in that it will match a file package but will miss certain specialized types of flat files (such as an executable).
- Fixed case-sensitivity for "is" and "is not" operators (matches are supposed to be case-insensitive).
- Fixed problem with "Source URL/Address" in combination with "does not contain". Would evaluate to true when it shouldn't have at times.
- Made loop detection smarter when identifying a file. Now matches against the filesystem id. This prevents saving a file with the same name into the folder from triggering the loop detection.
- Loop detection is now much more lenient. Will only trigger after 5 loops.
- Finder comments set by Hazel should be reliably seen when doing "Get Info" in Finder.
- Fixed finder comment action to not prepend a newline when appending a comment if the comment is initially empty.
- Fixed bug where multiple alerts would pop up when notifying the user of the end of the evaluation period.
- Fixed sporadic crash when deleting folders.
- Worked around problem when upgrading Hazel while System Preferences is running and Hazel has already been loaded. When this happens, you are prompted to restart System Preferences. This should get rid of the odd behavior such as valid license keys all of a sudden considered invalid after an upgrade. Note that this only applies to upgrades from version 1.1 and up. This still remains an issue with the 1.0.x series.