this post was submitted on 21 Feb 2024
122 points (97.7% liked)

Selfhosted

40198 readers
673 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 2 points 8 months ago (2 children)

For someone freshly interested in self hosting, what does breaking changes with respect to immich really mean? Does it mean that if I upgrade to this version, I have to rebuild my library, face tags etc? Or does it mean that things might stop working and some files might need to be changed, upgraded manually and things may get awry in doing so.

[–] [email protected] 2 points 8 months ago* (last edited 8 months ago)

Normally a breaking change means after you apply the change it's not easy/straightforward to rollback to the older version if you want to do that for whatever reason.

For example, a new version is released and underlying database table or structure changes. You upgrade properly, and find the new version has some bugs (or you simply don't like it). If you want to use the older version again until the newer one is fixed it's not a matter of simply point to old version.

As the database structure has fundamentally changed underneath in the new version, when you put back the old version it simply doesn't understand the new structure and might stop working. You need ways to be able to make the DB structure compatible with the older application.

If the application is stable the devs might provide ways to do this. But since this is an alpha... You're on your own.

TL;DR it means the older and newer version of the application aren't strictly compatible with each other

[–] [email protected] 1 points 8 months ago (2 children)

I haven't reviewed the changelog for this immich, but yes a breaking change typically means if you just went and updated you would have a broken system. sometimes something like you mentioned if a backend database is changed or db column attributes altered.

[–] [email protected] 2 points 8 months ago (1 children)

This scares me to an extent but as long as immich provides some instructions on what to do to get back on track, this should be okay.

Also, what happens if one skips multiple such breaking updates? Will it be my responsibility to hunt down the changes and make corresponding amends?

And finally, while I understand that immich is not supposed to be photo backup solution, does it allow export and import of metadata, tags etc? I ask because I intend to set it up and I may skip few of these updates and instead do a fresh install a year or so later. If I can simply export my settings, face ID info, albums from old setup and import it into the new one then it makes things very easy.

Otherwise the phrase breaking changes does sound really scary.

[–] [email protected] 2 points 8 months ago* (last edited 8 months ago)

Yep

Yes

That part I haven't read up on

Breaking changes are scary for running solutions. it is why IT has a mandate of "Never touch a running system" (security patches only)

Immich is a younger, quickly evolving project, so new features or improvements may justify breaking the upgrade path. There may be folks that share data migration tips when that happens. It is why in corporate world we never want to be on the latest version of something; let the non critical data users find the problems.

Also you may have seen this on the project page. Basically use at own risk until things mature:

⚠️ The project is under very active development. Expect bugs and changes. Do not use it as the only way to store your photos and videos!

[–] [email protected] 1 points 8 months ago

As an example in an engineering software it had been forward compatible for 30 years, recently they changed the datatypes for certain expressions: some expressions that could be number type now were restricted to integer. This broke every formula built off of that expression type in legacy data. ugg