Skip to content

Convert googlePhotos to LAVA @artifact_processor (consolidate + media migration)#832

Merged
abrignoni merged 1 commit into
mainfrom
lava-batch-80
Jun 21, 2026
Merged

Convert googlePhotos to LAVA @artifact_processor (consolidate + media migration)#832
abrignoni merged 1 commit into
mainfrom
lava-batch-80

Conversation

@abrignoni

Copy link
Copy Markdown
Owner

Converts googlePhotos.py (441 lines, ~7 reports) to the decorated @artifact_processor pattern — six artifacts (category Google Photos):

Function Name
get_googlePhotos Google Photos - Local Media
get_googlePhotos_remote Google Photos - Remote Media
get_googlePhotos_shared Google Photos - Shared Media
get_googlePhotos_folders Google Photos - Backed Up Folders
get_googlePhotos_cache Google Photos - Cache
get_googlePhotos_trash Google Photos - Local Trash

Changes

  • Dynamic titles consolidated: the per-DB (gphotos0)/(gphotos-1) report titles become a Source column.
  • Schema variants unified: purge_timestamp, inferred_latitude/longitude, folder_name/media_store_id/trash_timestamp, upload_status are handled via column-existence checks producing a single query each (no more duplicated if/else query blocks).
  • Timestamps → aware UTC by parsing the SQLite datetime() strings (no SQL rewrites — lowest risk).
  • KML retained for Local/Remote Media coordinates (output_types: all).
  • Media migration: Cache and Local Trash images move from shutil.copy2 + media_to_html to ('Image','media') via check_in_media.
  • Reserved-word column audit run — clean.

Original dates (2021-04-14) preserved.

… migration)

Converts the Google Photos parser (441 lines, ~7 reports with per-DB
dynamic titles and schema variants) to six decorated artifacts: Local
Media, Remote Media, Shared Media, Backed Up Folders, Cache, and Local
Trash. The gphotos0/gphotos-1 dynamic report titles are consolidated into
a 'Source' column. Schema variants (purge_timestamp, inferred lat/long,
folder_name/media_store_id/trash_timestamp, upload_status) are unified via
column-existence checks into one query each. Timestamps are converted to
aware UTC by parsing the SQLite datetime strings (no SQL rewrites). Local
and Remote Media keep KML output for their coordinates. Cache and Local
Trash media migrate from shutil-copy + media_to_html to ('Image','media')
via check_in_media. Reserved-word column audit run (clean).
@abrignoni abrignoni merged commit bfb9d71 into main Jun 21, 2026
1 check passed
@abrignoni abrignoni deleted the lava-batch-80 branch June 21, 2026 19:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant