• DontNoodles
    link
    fedilink
    English
    arrow-up
    2
    ·
    4 months ago

    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.

    • baatliwala@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      4 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

    • BCsven@lemmy.ca
      link
      fedilink
      English
      arrow-up
      1
      ·
      4 months ago

      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.

      • DontNoodles
        link
        fedilink
        English
        arrow-up
        2
        ·
        4 months ago

        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.

        • BCsven@lemmy.ca
          link
          fedilink
          English
          arrow-up
          2
          ·
          edit-2
          4 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!

      • BCsven@lemmy.ca
        link
        fedilink
        English
        arrow-up
        1
        ·
        4 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