{ "1.99": "FIX: Just updating to the latest version of Unificator to include respective changes and fixes", "1.98": "FIX: Fixed an issue that prevented the placeholder picker from staying open while the user is scrolling through the list of available placeholders", "1.97": "FIX: Fixed an issue regarding an unjustied warning about non-unique filenames when using 'keep both' mode\r\nFIX: Fixed an issue with fileNameDupNo placeholder not updating properly in the table when editing the placeholder pattern or immediately after analyzing the input files", "1.96": "FIX: A further tiny fix to the previous fix regarding missing seconds information", "1.95": "FIX: Fixed incorrect parsing of CreateDate XMP metadata when seconds information was missing", "1.94": "FIX: Fixed two regressions regarding macOS 11 backward-compatibility", "1.93": "FIX: Fixed applied for granting additional security-scoped access", "1.92": "FIX: Fixed a bug that could cause Photo Naminator to crash when analyzing input files due to a concurrency issue\r\nFIX: Fixed a bug that could cause Photo Naminator to crash if a photo file's metadata content uses utf8-incompliant encodings (now replacing undecodable characters with '?' characters)", "1.91": "NEW: Photo Naminator gives you now control over how to handle file operations in case of file collisions in the output folder; options are: keeping old and new file in parallel (= default), overwriting the old file with the new one, or preserving the old one (skipping the operation for the new one)\r\nFIX: Fixed a bug that caused the last-modifed file timestamp to always be set to the current point in time rather than the photo's timestamp derived from metadata", "1.90": "FIX: Fix to the custom pattern edit field (enabling horizontal scrolling rather than line-breaking)", "1.89": "NEW: Photo Naminator can now also properly handle so-called sidecar or companion files like XMP files being associated with photo or video files; it detects those files as sidecar files and handles them in accordance to the photo file with which they are associated\r\nFIX: Yet another fix to make drag & drop work properly", "1.88": "NEW: The list of name pattern favorites can now be configured to be permanently shown (rather than auto-hiding when not hovering above it); when not auto-hiding the section, it can also be sized to your liking (well, almost)\r\nNEW: The descriptions of the pre-defined name pattern favorites can now be hidden, too, to reduce the screen real estate required and allow for a quicker selection", "1.87": "NEW: Pattern favorites now show the newest custom patterns at the top to reduce the need to scroll; furthermore, the order of the favorites can be changed to your liking; and last but not least, keybord shortcut keys have been added to directly pick a favorite via Command+# key\r\nNEW: Name patterns are now formatted using color coding for placeholders (green (=defined in all files)/orange (=defined in some, but not all files)/red (=not defined in any file)) and literals (white) for easier readability and improved usability", "1.86": "FIX: Fixed a bug that kept drag&drop of individual input files from working properly", "1.85": "CHANGE: Reworked application bootstrapping and crash management", "1.84": "FIX: Fixed a regression introduced with 1.83 that caused Photo Naminator to crash on older macOS versions", "1.83": "CHANGE: More UI enhancements", "1.82": "CHANGE: Some performance tuning\r\nCHANGE: Some UI enhancements", "1.81": "NEW: Photo Naminator now supports reverse geolocation lookup of street, city, state and country information based on photos' GPS locations stored in their respective EXIF metadata. The feature utilizes MapQuest remote APIs and requires a valid API key to be configured; see Photo Naminator's documentation for additional information\r\nFIX: Some minor UX fixes for macOS Sonoma and XCode 15 / SDK 14", "1.80": "FIX: Fixed some UI issues with the input file and output folder UI elements on macOS versions below 13.0 (e.g. Monterey)", "1.79": "NEW: In the unlikely case of a crash of the application, you can now reset it to factory defaults in the crash dialog", "1.78": "NEW: The input files/folder and output folder selector now keeps track of your selections and offers a recents list to reselect one of your earlier picks\r\nCHANGE: Removed the security scope configuration from the Settings section and put it into the input/output folder selection drop-down menu\r\nCHANGE: Removed the auto-mount configuration from the Settings section and put it into the input/output folder selection drop-down menu", "1.77": "NEW: Improved input file and output folder picker\r\nNEW: Placeholder picker list in custom pattern field now highlights those metadata properties that are defined for all currently loaded files\r\nFIX: Placeholder picker list in custom pattern field now shows camel-cased property names again (fixed regression)", "1.76": "CHANGE: When determining duplicate photo files, the file with the oldest filesystem time stamp gets selected as original (assuming all the ones created or modified later are copies), and if all filesystem timestamps are identical, the file with the shortest name is taken as original (assuming that usually a postfix like 'copy' or '_2' gets added); all just heuristics, but probably fitting 90% of cases...\r\nCHANGE: Also changed the sorting criteria if two photo files have absolutely identical EXIF timestamps: in such cases, filename length and alphabetical sorting of the filename will be applied, resulting in short and simple filenames being placed prior to longer and more complex ones\r\nFIX: Fix for Crash Manager window: cancel action added (press 'esc' key)", "1.75": "NEW: Metadata properties can now be grouped in the info pane\r\nCHANGE: All things Configuration are now called Settings", "1.74": "CHANGE: Reworked the app icon", "1.73": "CHANGE: Further improvement regarding security-scoped access to folders when working with individual input files rather than folders; app-sandboxing is a delivate topic...", "1.72": "FIX: Fixed an issue that could cause Photo Naminator's user interface to freeze while making an in-app coffee jar donation", "1.70": "NEW: Added a coffee jar donation feature, so in case you feel urged to say 'thanks' for my efforts by contributing to my coffee consumption during software development, there's now a convenient way to do so via the Apple App Store", "1.69": "CHANGE: Some smaller UX improvements\r\nFIX: Deletion of custom name patterns was under certain circumstances not properly persisted; fixed now", "1.68": "CHANGE: Improved the usability of the 'Favorites' name pattern picker in regards of deleting or adding custom patterns\r\nCHANGE: Photo file status now gets displayed in the Photo Info section, too", "1.67": "NEW: Two new placeholders added: FileNameElement#index# and FileNameElementRev#index# holding the elements of the fileName placeholder when split at any punctuation or whitespace character (see documentation for details); this allows accessing the individual parts of the original filename of a photo file when constructing a new name", "1.66": "CHANGE: A few smaller usability improvements\r\nFIX: Fixed a regression recently introduced affecting drag & drop of files", "1.65": "FIX: UX improvement", "1.64": "NEW: Improved resilience against and added warnings about the general sandbox limitation for dragging & dropping or selecting a massive amount (> 2500) of individual input files – use the files' root folder instead!\r\nCHANGE: Performance improvements analyzing input files\r\nCHANGE: A few smaller UX improvements", "1.63": "NEW: Added an option to rename photo files in-place, i.e. without an explicit output folder", "1.62": "NEW: Added new placeholder 'fileIsACopyOf' which is defined for each photo file if the file is a copy of another photo file in the set of input files. You can use this property to e.g. single out those duplicates from your input file set (more details see documentation); there's a sample name pattern in the pattern favorites you may use.", "1.61": "CHANGE: When setting a new input folder and no output folder is defined, the output folder will automatically be set to that same input folder", "1.60": "CHANGE: A few UX improvements", "1.59": "NEW: It is now possible to have a set of characters in the newly constructed filename to be replaced with a customizable replacement string; this allows, for example, to generically replace any space character with an underscore or simply have it removed\r\nNEW: There's now a dedicated popup for selecting, copying or deleting profiles\r\nFIX: Fixed a bug in the profile manager that could cause a crash when deleting a profile\r\nFIX: Fixed some visual glitch in the Navigation bar\r\nFIX: Fixed resetting input files/folder and output folder", "1.58": "FIX: More fixes for the Profile feature which didn't work properly (screen updates and copying setting when adding a new profile)", "1.57": "CHANGE: Some usability improvement regarding the eject and refresh buttons\r\nFIX: Fixed a table rendering bug\r\nFIX: Now keeping illegal unicode characters from entering the custom name pattern", "1.56": "NEW: Added a new Profile feature for Settings to allow you to define and switch between independent sets of settings quickly and easily\r\nCHANGE: An important change has been applied to conditional placeholders: The suppression formatter (-) has been depricated as now, whenever a conditional expression is used with a placeholder (introduced by a '?' or ':' after the formatter), the placeholder value will automatically be suppressed. To make use of the formatted value, place '##' within the conditional expression: this will be replaced by the actual, formatted value. More details are available in the documentation. Please make sure to adapt your custom formatters accordingly!\r\nCHANGE: Reworked the entire input file/folder and output folder handling\r\nFIX: Fixed a table update issue when selecting or deselecting the 'Re-create sub-folders' option", "1.55": "NEW: Added a feature to treat invalid or implausible timestamps as if they were undefined, allowing simplified handling of troublesome input files\r\nCHANGE: Had to revise the default list of fallback properties defined via the Settings section which unfortunately overwrites any changes you may have applied to them in the meantime (apologies!)\r\nCHANGE: A confirmation dialog will be presented prior to resetting settings to 'factory defaults' when pressing the 'Reset Settings' button\r\nFIX: Added a fix to handle timestamps given in Zulu time format correctly\r\nFIX: A few smaller UX improvements", "1.54": "CHANGE: Older versions of Photo Naminator used an 'Exif/DateTimeOriginal' placeholder to reference a photo's creation timestamp; this has been changed in more recent versions to 'DateTimeOriginal' only (i.e. without the 'exif/' prefix). This version of Photo Naminator now automatically adjusts previously created custom name patterns in case they still use the old placeholder names thus making them comply with the new behaviour\r\nFIX: Fixed a bug that kept Photo Naminator from correctly detecting a specific time/date format (i.e. if sub-seconds are provided 'inline') used with the DateTimeOriginal property\r\nFIX: Preventing to start a renaming run if the name pattern is empty; also: automatically selecting a default name pattern at startup if none is defined from a prior run", "1.53": "CHANGE: Made formatters for dates less error-prone: 'hh' and 'HH' now both format the hour in 24h format always (no more 12h or 24h format); furthermore, 'ii' can be used as an alternative to 'mm' to reference the minutes of a timestamp in a formatter, reducing chances for a potential mix-up with 'MM' which denotes the month", "1.52": "NEW: Photo Naminator now supports using 'Open with...' in Finder to start it with a selection of input files", "1.51": "NEW: New placeholder added with values 'image' and 'video' to distinguish the two supported media types", "1.50": "NEW: Photo Naminator now supports the creation of sub-strings from placeholder values when building a custom name pattern (for more details please see the documentation)", "1.49": "NEW: Photo Naminator can now filter duplicates of photo files from being processed (configurable in Settings section): with this option you can now drop identical file copies from being renamed (and copied/moved) thus allowing you to remove undesired identical copies of a photo file from your set of input files", "1.48": "FIX: Fixed a bug that caused the placeholder to be off or not properly detected as a timestamp if the DateTimeOriginal property contained timezone offset infos 'inline' and this info then contained a colon character to separate hours and minutes\r\nFIX: Fixed a bug that caused Photo Naminator to always use the file creation timestamp as a fallback if none of the specific timestamps in the metadata could be found, even if the option was disabled in the Settings", "1.47": "CHANGE: After the initial installation of Photo Naminator, the option to automatically fall back onto a file's file system timestamp if no photo timestamp metadata is stored with the file ( placeholder) is now by default disabled (before it was enabled by default); reason being that the default behaviour of Photo Naminator may be confusing if you're not aware of this logic.\r\nNEW: The Settings section can now also be opened via the File/Settings menu\r\nNEW: The About section now offers a 'Rate on the Apple App Store' button.", "1.46": "CHANGE: More refactoring done (centralized reuse package)\r\nFIX: Fix for embedded (offline) release notes retrieval\r\nFIX: A few minor internal fixes", "1.45": "CHANGE: Improved the About section by adding embedded release notes as fallback if remote retrieval of up-to-date release notes failed or was disabled by the user", "1.44": "CHANGE: More internal code refactoring, in particular regarding the Navigation bar", "1.43": "FIX: Seems like I found the workaround for the VideoPlayer bug (Apple Bug Report: FB8928032) that could cause Photo Naminator to crash if previewing a video file. Keep your fingers crossed.", "1.42": "CHANGE: Updated Welcome section when starting Photo Naminator the first time\r\nCHANGE: Some brush-up of the Crash Reporter section\r\nCHANGE: A bit of internal code clean-up", "1.41": "NEW: Added a crash detection feature for Photo Naminator so that reaching out to support for analysis and fixing can be done easily. I have seen a few crashes relating to video file replay in the preview, for example, that I can locate in the code but not reproduce. Getting more input from users and potentially some sample files to reproduce would be extremely helpful to provide an improved app version to everyone.", "1.40": "NEW: Added a new About tab to Photo Naminator – replacing the system's About dialog – providing information about the version installed, potentially newer versions available on the Apple App Store, copyrights and acknowledgements, release notes associated with the version history, possibility to reach out to the author (me) via email for support, and a bit more\r\nCHANGE: Adjusted the Feedback tab to match the visual design of the rest of the app\r\nCHANGE: Moved the option to enable or disable the remote version check from the Settings section to the About tab", "1.39": "FIX: Finally (finally?) fixed a crash that could occur when switching between video files and previewing them in the preview pane", "1.38": "NEW: Photo Naminator now makes use of the ExifTools open source project to retrieve metadata properties from a vast number of photo and video camera models\r\nCHANGE: Make sure to use DateTimeOriginal (not Exif/DateTimeOriginal or others) to access the timestamp of the photo's or video's creation time/date; this ensures proper formatting when used in a name pattern\r\nCHANGE: The preview and properties pane now scrolls completely (not just the properties anymore)", "1.37": "FIX: Fixed a user interface problem (unintended flickering during table updates) introduced when adapting Photo Naminator's code to comply with the latest Xcode version and SDK", "1.36": "NEW: In addition to renaming thru moving or copying the original input photo files, Photo Naminator can now also create renamed aliases (i.e. symbolic links) or hard links in the file system with the new name pointing to or representing the original file. See the documentation on the support website for more details.\r\nFIX: Fixed a usability issue that would allow to run Photo Naminator without a valid output directory selected", "1.35": "FIX: Fixed a timezone issue that could 'time-shift' photos unexpectedly if timezone information was missing in the photo file", "1.34": "FIX: Some improvements regarding window resizing", "1.33": "FIX: Fixes and adaptations for macOS 13 / Ventura and Xcode 14", "1.32": "FIX: Fixed a performance / usability issue that I introduced with the addition of the 'fileNameDupNo' placeholder in v1.22, causing a lagging behaviour of user interface updates when renaming a large number of files. Editing of custom patterns is now completely smooth again and the preview of the new filenames is back to instantaneous.", "1.31": "CHANGE: Usability improvement regarding unmounting of external devices, respectively resetting input or output folders", "1.30": "FIX: FIX: Another attempt to finally fix this crash with the video files preview that has been haunting Photo Naminator. Sigh.", "1.29": "FIX: Another fix to address a crash introduced with support of video files", "1.28": "FIX: Fixed a bug that could crash Photo Naminator when previewing a video file", "1.27": "CHANGE: Major simplification regarding timestamps: the placeholders 'DateTimeOriginal' and 'DateTimeDigitized' always hold the photos/videos creation and digitisation timestamps as derived from exif, tiff or video metadata (or file creation / modification timestamps as fallbacks); so you don't have to be careful anymore whether the information is sitting in the photos exif or TIFF metadata. Please check your custom placeholders and adapt them accordingly!\r\nFIX: Selection of video files as input is now also supported in the File picker and Finder's 'Open With...' functionality, not just via drag&drop (sigh!)\r\nFIX: Fixed a bug that caused sub-second timestamp information to not be properly derived in some cases", "1.26": "NEW: You can now eject the device containing the input folder/files or output folder directly within Photo Naminator, which helps simplifying the handling of external SD cards or USB drives when done renaming your photo files\r\nNEW: Added an auto-select feature for the input and output folder that allows you to automatically select a newly mounted external device as input or output folder (customisable in the Settings section) if these are currently undefined", "1.25": "FIX: Fixed a usability issue that caused the favorite/pre-defined name pattern picker as well as the custom pattern editing field to be disabled for interaction in case all input files had been processed already; now the selection/editing only requires one or more input files to be set – their processing state has no impact any more", "1.24": "NEW: new placeholder 'uuid' to get a universally unique ID to use in the new name for a photo file\r\nNEW: new placeholder 'DateTimeCurrent' added to be able to use the current date and time of the renaming run in name patterns for renamed files\r\nNEW: the start value for the placeholder 'sequenceNo' can now be automatically incremented by the number of successfully renamed photo files after each renaming run; this allows to create continuously growing sequence numbers for renamed files even across restarts of Photo Naminator (check out the Preferences tab)\r\nNEW: notification sounds can now be silenced on the Preferences tab\r\nNEW: now in addition to photo files, also video files can be renamed based on their metadata attributes", "1.23": "CHANGE: Usability enhancement to better hint users to select an output folder first before the renaming of input photo files can be started", "1.22": "NEW: New placeholder 'fileNameDupNo' introduced which contains a number specifying the duplicate number of a generated filename; this can be used to distinguish photo files that result in the same new name being calculated from a template (see documentation for more details)\r\nCHANGE: Conditional alternatives in placeholders now evaluate both undefined and empty properties (i.e. name exists but value is empty) as undefined (before only undefined properties were considered as undefined values)", "1.21": "CHANGE: A few UI/UX improvements", "1.20": "FIX: Fixed a bug that prevented custom date formatters to be applied to the file creation or modification timestamps when used as a fallback for missing EXIF timestamps\r\n– FIX: Fixed a bug that caused the 'new version check' (if enabled) to be executed several times when starting Photo Naminator rather than just once", "1.19": "CHANGE: Removed the ability to purge metadata as the algorithm was removing too much required information; the feature first needs further consideration and implementation work before being added again", "1.18": "NEW: Photo Naminator now comes with the option to also purge all dispensable metadata from JPG and PNG files (and only those image formats for now! Sorry.) while completely preserving the original photo itself (i.e. absolutely no re-encoding of the image data and thus potential quality loss or alteration involved)\r\nCHANGE: You can now also drop input files directly into the photo files table at the bottom of the main window (which I know you always wanted to do because it felt kind of natural to do)", "1.17": "NEW: Photo Naminator now displays the total size in MB of the photo files selected and the total size of free disk space in MB remaining on the output folder's drive/volume and issues a warning if that space is insufficient for copying the photo files during the renaming procedure", "1.16": "NEW: Photo Naminator now remembers your last input and output folder selection across restarts\r\nNEW: You can now cancel a running scan of an input folder to make correct your selection\r\nNEW: Now not only the EXIF and TIFF specific properties are made available for use in a name pattern, but all metadata attributes available with the photo file\r\nCHANGE: Metadata properties are now prefixed with their format-specific dictionary name, i.e. use 'Exif/DateTimeOriginal' to reference the photo's creation timestamp rather than 'DateTimeOriginal' in your custom name patterns\r\nCHANGE: Switching between recursive and non-recursive processing of the input folder as well as re-creating the existing sub-folder structure in the output folder can be done on the Home sheet rather than just in the Settings", "1.15": "CHANGE: Replaced the picker for the timezone offset with a 'real' timezone picker in the Settings section; by default, the current timezone from your system settings is used. Also, by default, Photo Naminator no longer normalizes timezones – you have to enable this feature explicitly in the Settings section\r\nCHANGE: Improved feedback feature\r\nCHANGE: By default, Photo Naminator does not process input folders recursively anymore – you have to enable this behaviour explicitly in Photo Naminator's Settings", "1.13": "FIX: Made the rendering of the new filename more robust against accidental leading or trailing whitespace characters in the name pattern (one line of code added, so much head-scratching prevented :)", "1.12": "NEW: Placeholders in name patterns now support conditional alternative texts: this allows you to define character sequences to be inserted into the new name for a photo file based on a metadata property being defined or undefined. Check out the documentation for more details.\r\nCHANGE: Improved help documentation and targeted links to the latter within Photo Naminator\r\nCHANGE: Improved handling of placeholder popup menu (appear/disappear)", "1.11": "NEW: Photo Naminator now supports to have recursively processed sub-folders of the input folder to be equivalently re-created in the output folder; you can thus maintain the relative location of your input photo files when renaming.\r\nNEW: Additional placeholders for the relative placement of an input file in the root input folder (fileNameSubPath) as well as its individual path components (fileNameSubFolder1, fileNameSubFolder2, ...)", "1.10": "NEW: Complete overhaul of the user experience: simplified and cleaner UI, full-blown table with sorting and filtering capability to allow scanning thru photo files quickly, photo 'info pane' to check a particular photo's metadata quickly, plus a number of additional smaller improvements\r\nCHANGE: Simplification in renaming logic by always using an explicit output folder; now 'rename & move' and 'rename a copy' are the two options that always place the renamed file in the output folder provided; prior logic of previous versions turned out to be too complicated\r\nCHANGE: Automatically checking for newer versions in the Apple App Store can now be switched off in the Settings section of Photo Naminator", "1.05": "NEW: Photo Naminator now extracts trailing sequence numbers from the original photo filenames and provides them as fileNameSeqNo placeholder (e.g. a filename 'IMG_6789.HEIC' will result in fileNameSeqNo containing '6789'); you can thus now preserve any sequence number assigned to the shot by your camera in the construction of the new filename\r\nCHANGE: Some usability improvements related to renaming photo files in-place vs. working on copies and displaying relative folder names", "1.04": "NEW: The Photo Naminator window now gets correctly auto-resized and fitted when being moved between different screens\r\nFIX: Fixed a bug that could cause layouting issues of Photo Naminator in multi-screen environments\r\nFIX: Fixed a bug that caused Olminator to crash when opening the help window", "1.03": "NEW: Photo Naminator now checks whether a newer version than the currently installed one is available on the Apple App Store and provides release notes information to the user\r\nFIX: Fixed a bug that kept custom patterns from working on macOS Big Sur (thanks, Christoph, for pointing me to this one!)\r\nCHANGE: Usability improvements, namely visualisation improvements and keyboard support, for placeholder selection from auto-complete list", "1.02": "NEW: Renaming of files 'in-place' is now supported in addition to renaming copies of original files only\r\nCHANGE: Several UI/UX enhancements, in particular usability improvements for renaming huge numbers of photo files", "1.01": "NEW: Various smaller usability enhancements including drag&drop support as well as registering Photo Naminator for IMAGES files so that you can 'open [photo files] with...' Photo Naminator directly from within Finder", "1.0": "NEW: Photo Naminator starts to exist on the Apple App Store" }