v3.6.0 #983
jaimetur
announced in
Announcements
v3.6.0
#983
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
🗓️ CHANGELOG
Planned Roadmap for the following releases
Changelog for the past releases+
Release: v3.6.0
Release Date: 2025-08-31
Main Changes:
🚨 Breaking Changes:
Auto-Rename Albums content basednow uses as dates separator-instead of.and as group of dates separator--instead of-. Those separators can be customized using two new parameters (see below).🌟 New Features:
-dateSep, --date-separator <DATE_SEPARATOR>to specify the Dates Separator for the FeatureAuto-Rename Albums Content Based.-rangeSep, --range-separator <RANGE_OF_DATES_SEPARATOR>to specify the Range of Dates Separator for the FeatureAuto-Rename Albums Content Based.-gpthLog, --gpth-logto Save GPTH log messages into a log file withinLogsfolder.🚀 Enhancements:
Improvements in
Auto Rename Albums Foldersfeature to Compute the best 'oldest_date' per file using the following priority:Updated GPTH to version
5.0.2(by @Xentraxx & @jaimetur) which includes new features, performance improvements and bugs fixing extracting metadata info from Google Takeouts.✨ GPTH New Features
Extrafiles from Google Takeout with following suffixes:-motion,-animation,-collage.--keep-inputto Work on a temporary sibling copy of --input (suffix _tmp), keeping the original untouched.--keep-duplicatesto keep duplicates files in_Duplicatessubfolder within output folder.--save-logto save log messages into disk file.build-and-create-release.ymlto Automatically build all binaries, create new release (stable or pre-release), update it wiht the release-notes and upload the binaries to the new release.🚀 GPTH Improvements
fallbackToExifToolOnNativeMissinGlobalConfigServiceClass to specify if we want to fallback to ExifTool on Native EXIF reader fail. (Normally if Native fails is because EXIF is corrupt, so fallback to ExifTool does not help).enableExifToolBatchinGlobalConfigServiceClass to specify if we want to enable/disable call ExifTool with batches of files instead of one call per file (this speed-up a lot the EXIF writting time with ExifTool).maxExifImageBatchSizeinGlobalConfigServiceClass to specify the maximum number of Images for each batch passed in any call to ExifTool.maxExifVideoBatchSizeinGlobalConfigServiceClass to specify the maximum number of Videos for each batch passed in any call to ExifTool.forceProcessUnsupportedFormatsinGlobalConfigServiceClass to specify if we want to forze process unsupported format such as.AVI,.MPGor.BMPfiles with ExifTool.silenceUnsupportedWarningsinGlobalConfigServiceClass to specify if we want to recive or silence warnings due to unsupported format on ExifTool calls.enableTelemetryInMergeMediaEntitiesStepinGlobalConfigServiceClass to enable/disable Telemetry in Step 3: Merge Media Entities.MediaEntitymodel with the following attributes:albumsMap: List of AlbumsInfo obects, where each object represent the album where each file of the media entity have been found. This List which can contain many usefull info related to the Album.dateTaken: a single dataTaken for all the files within the entitydateAccuracy: a single dateAccuracy for all the files within the entity (based on which extraction method have been used to extract the date)dateTimeExtractionMethod: a single dateTimeExtractionMethod for all the files within the entity (method used to extract the dataTaken assigned to the entity)partnerShared: true if the entity is partnerSharedprimaryFile: contains the best ranked file within all the entity files (canonical first, then secondaries ranked by lenght of basename, then lenght of pathname)secondaryFiles: contains all the secondary files in the entityduplicatesFiles: contains files which has at least one more file within the entity in the same folder (duplicates within folder)MediaEntityfor an easy utilization.MediaEntitystructure.MediaEntitystructure.filesattribute fromMediaEntityClass.media_entity_moving_strategy.dartmodule withmedia_entity_moving_service.dartmodule and now it is stored underlib/steps/step_06_moving_files/servicesfolder.Find Duplicatesstep:Photos from yyyyfolder and within one or more Album folderWrite EXIFstep to Step 7 (after Move Files step) in order to write EXIF data only to those physical files in output folder (skipping shortcuts).Step 3: Remove DuplicatestoStep 3: Merge Media Entitiesbecause this represents much better the main purpose of this step.Step 3: Merge Media Entities.Step 3: Merge Media Entitiesnow only consider within-folder duplicates. And take care of the primaryFile/secondaryFiles based on a ranking for the rest of the pipeline.Step 7: Write EXIFnow take into account all the files in the MediaEntity file except duplicatesFiles and files withisShortcut=trueattribute.Step 6: Move Filesnow manage hardlinks/juntions as fallback of native shorcuts using API toWindowsSymlinkServicewhen no admin rights are granted.Step 8: Update Creation Timenow take into account all the files in the MediaEntity file except duplicatesFiles.Step 8: Update Creation Timenow update creation time also for shortcuts.Step 3: Remove DuplicateStep 6: Move FilesStep 8: Update Creation Time.🐛 GPTH Bug Fixes
💾 Download
Download the tool either for Linux, MacOS or Windows (for both x64 and arm64 architectures) or Docker version (platform & architecture independent) as you prefer, directly from following links:
Linux::
Mac OS:
Windows:
Docker Launcher:
What's Changed
4.3.1(by @Xentraxx & @jaimetur) which incl… by @jaimetur in Updated GPTH to version4.3.1(by @Xentraxx & @jaimetur) which incl… #963Auto-Rename Albums content basednow uses as dates separator-instead of.and as group of dates separator--instead of-. Those separators can be customized using two new parameters--date-separatorand--range-separatorby @jaimetur in v3.6.0 with GPTH v4.4.0 which includes several performance improvements.Auto-Rename Albums content basednow uses as dates separator-instead of.and as group of dates separator--instead of-. Those separators can be customized using two new parameters--date-separatorand--range-separator#965Full Changelog: v3.5.2...v3.6.0
This discussion was created from the release v3.6.0.
Beta Was this translation helpful? Give feedback.
All reactions