Store UUIDs in configuration instead of entity IDs

Created on 8 July 2020, over 4 years ago
Updated 31 August 2024, 4 months ago

Problem/Motivation

To support the model of deployable configuration, any site configuration containing entity IDs should switch to using UUIDs instead.

This is basically Make it possible to link to an entity by UUID Active , but we don't care about linking to entities here (that can happen later), only storage.

Current proposal

On the front-end, keep everything using entity IDs. On the back-end (storage), store IDs as UUIDs, and convert them when passing between the front-end. The implementation would be the same as that in Have Views' taxonomy term filters use UUIDs instead of entity IDs Needs work .

What's included

  • Allow UUIDs to be stored for front page, 403 and 404 pages.
  • Allow UUIDs to be stored for the page condition for e.g. block-placement.
  • ...

Long-term plan?

Maybe a long-term implementation plan for all of this stuff, in order, could be:

  1. This issue. (Just change the storage for now.)
  2. Make it possible to link to an entity by UUID Active (Allow linking, but keep entity IDs canonical.)
  3. #1726734: Replace serial entity IDs with UUIDs in URLs, or even globally? (Make UUIDs canonical, but allow for linking from entity IDs.)
Feature request
Status

Active

Version

11.0 🔥

Component
Configuration 

Last updated 3 days ago

Created by

🇨🇦Canada colan Toronto 🇨🇦

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

  • 🇬🇧United Kingdom maseyuk

    This would be very useful

  • 🇩🇪Germany donquixote

    I just noticed a workaround:

    • When you save the site config that has the urls for front, 403 and 404, even if you specify an alias, it stores the `/node/123` url.
    • However, if you then manually edit the config files, put the alias instead of `node/123`, and import the config, that actually works.
Production build 0.71.5 2024