keystonejs / keystone

The most powerful headless CMS for Node.js — built with GraphQL and React
https://keystonejs.com
MIT License
8.98k stars 1.13k forks source link

Use 128-bit random base64url identifiers for images & files, not uuid #9079

Closed dcousens closed 3 months ago

dcousens commented 3 months ago

This pull request standardizes file and image fields to use the same "identifier" shape and type, falling back on a random 128-bit randomBytes identifier encoded as base64url.

Although the change should be backwards compatible in respect to Keystone, as these identifiers shouldn't have been monotonic anyway - I have marked this as major in the event users expected them to be UUIDs for some other reason.

codesandbox-ci[bot] commented 3 months ago

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Latest deployment of this branch, based on commit f6ba6649864be395a4fc19d96ba278392dee58c1:

Sandbox Source
@keystone-6/sandbox Configuration