V1.0.0-beta.13 released

v1.0.0-beta.13, the luckiest build :crossed_fingers::four_leaf_clover: is a release candidate for version 1.0.0.

What’s in it?

Mostly bugfixes:

  • :bug: Fix sorting to be reverse chronological order for child asset galleries (prior builds had inadvertently changed order of child assets to chronological order). Thanks for the report, mariomare22!

  • :bug: Prior versions of macOS volume parsing would completely ignore quarantine and nobrowse mountpoints, but this would cause PhotoStructure to have an incomplete and incorrect view of volumes, leading to invalid Asset File URIs.

  • :bug: Windows upgrades after beta.13 should restart automatically.

  • :bug: Simplify sync to check every hour for pending volumes to sync.

  • :bug: Free disk space now uses realpath to ensure symlinks and crossmounts (common in macOS) look at the correct volume.

  • :bug: Duplicate mountpoint volumes from GVFS and df are now merged

  • :package: copyToLibraryMimetypes: support for selective automatic organization (say, to only copy raw images into your library). When “automatic organization” is enabled, files whose mimetypes are included in this list will be copied into your originals directory.Note that mimetypes can include an asterisk to do glob-matching. See the related system setting “copyAssetsToLibrary”. Defaults to ["image/*", "video/*"].

  • :package: matchSidecarsFuzzily: set to false to disable fuzzy sidecar matching. If set to true, PhotoStructure will look for sidecar files that match the basename of the asset, plus some common suffixes (like “-edit”, “-edited”, or variant copies, like “-2”). This setting only impacts .XMP, .MIE, and .EXIF sidecars. PhotoStructure always matches .JSON files fuzzily, as that is required to handle Google Takeouts properly. Defaults to false (to be conservative with sidecar matching).

  • :package: Suggested library directory improvements

    • Root mountpoints and direct child directories are checked for prior libraries
    • Suggested directories are verified that they should be read/writable
    • info --suggested-libraries exposes these volumes on the command line now.
  • :package: New siblingInferenceBasenameCoeff setting controls siblingInferenceBasenameCoeff

  • :package: Volume metadata is now automatically cached for up to a day, based on the amount of free disk space is available. Thanks for the suggestion, Rodger!. Use info --volumes-ttl --debug to see what PhotoStructure thinks.

  • :bug:/:package: volumes() and mountpoints() results are now cached, so if the OS times out or a disk is flaky, the prior successful result will be returned (instead of crashing).

  • :bug:/:package: Timezone improvements

    • check for .tz and ExifDateTime fields in self and siblings
    • prevent the current TZ from “leaking” into unspecified captured-at times
    • respect enableSiblingInference
    • when inferred, the capturedAt.src now contains information about where the timezone came from
  • :package: New debugTimeouts setting which logs debug information whenever any operation times out. Defaults to false.

How do I install it?


Any unfinished issues?

Where should I report bugs?

Reply here, or create a new bug, or post to the discord: whatever’s more convenient.

1 Like

I started up PhotoStructure Beta 12 on Widows 10 desktop, it wasn’t running. I immediately got a message upgrade to Beta 13. Upgrade commenced with request to run with Admin privileges. Once this was done nothing else was evident. After about 5 minutes I manually started PhotoStructure and then beta 13 was running.

Sorry, on upgrade on Windows 10 PhotoStructure did not automatically start!


Upgraded, and I’ve got two issues:

  • Search isn’t working in any of my four libraries :’(

  • One of my libraries (the test one ironically) won’t start up. Will DM you logs.
    Screenshot below.
    2021-08-02 15_42_22-AIDAN-DELL - TeamViewer - Free license (non-commercial use only)

Should’ve skipped number 13 :wink:

All my libraries took a really long time to start up on beta 13. When I upgraded the first one, I thought it had become unresponsive, but eventually it started. Was about to close it and try again but it started just in the nick of time. Definitely a change from betas prior to 13. (Note I’m using PhotoStructure for Node)

That’s actually expected (!!). We’ll know if it’s fixed with the next version (because now we’re running the code that should restart after upgrades).

Oh crap: I was able to reproduce this on a test library, I’ll get this fixed tomorrow morning.

After updating last night and confirming that Photostructure was working, I woke up to the container stopped with the following error in the docker log:

PhotoStructure is ready: <http://localhost:1787/>
{"fatal":true,"exit":true,"status":12,"pid":27,"ppid":20,"error":"ChildService(sync).onStdout(): Error: ChildService(sync).onStdout()Cannot write to /ps/library: LibraryHealthChecks: Failed to copy sample file to library. Is /ps/library writable?¹⁶"}

Shutting down PhotoStructure...
Verifying & backing up /ps/library/.photostructure/models/db.sqlite3...
PhotoStructure library db has been backed up to /ps/library/.photostructure/models/backup.

I’ll email you the logs!

1 Like

Sweet, will keep an eye out for beta 14 and give it another go then.

After updating last night and confirming that Photostructure was working, I woke up to the container stopped with the following error in the docker log:

My libraries randomly stopped after about a day of uptime, same error, although in my case I don’t see a “Shutting down PhotoStructure…” message after the errors:

PhotoStructure beta 13 on Node

They restart fine. On beta 12 they stayed up for days

*Edit - on restart I noticed the libraries have lost my “plus” status

Yep, same here… shuts down every night now. Had been running for ages.

I am running beta 13 on a Windows 10 Desktop.
I found that the program has now crashed.
Message the health check and asked if directory is writeable.

I restarted the program and it took ages to start up.
Finally the Home screen appeared but not complete and received the same message.

There is plenty of free disk space

Sorry about that!

I may have found the issue, but unfortunately there wasn’t much logging around the code that’s causing the error, so the fix is a bit of a Hail Mary. I’ll be releasing beta.14 with this fix later this morning.

1 Like