Skip to content

[1.0.0] Add a schema to the backend.#111

Merged
ChadSikorra merged 8 commits intoFreeDSx:mainfrom
ChadSikorra:upgrade/schema
May 9, 2026
Merged

[1.0.0] Add a schema to the backend.#111
ChadSikorra merged 8 commits intoFreeDSx:mainfrom
ChadSikorra:upgrade/schema

Conversation

@ChadSikorra
Copy link
Copy Markdown
Contributor

Now that the backend actually has persistence built-in, and we are already handling that logic, it makes sense to integrate a schema per RFC 4512. This way library users can define an explicit schema that clients must adhere to. Otherwise currently there's nothing preventing any client to write anything they want to any entry.

This also helps lay the foundation for put in some kind of ACL, or at least a decision hook, for restricting entry modifications / access based on the authenticated client.

So this does the following:

  • Adds the base schema models / DTOs.
  • Adds a way to set them in the server options.
  • Exposes it in the sub-schema entry so it's discoverable by clients.
  • Enforces schema validation on filter evaluation and writes.

Explicitly ignoring LDIF for now. I can always add it later. This was already a lot of files to properly support this.

@ChadSikorra ChadSikorra force-pushed the upgrade/schema branch 2 times, most recently from aedf771 to 1bf2ad9 Compare May 9, 2026 15:17
@ChadSikorra ChadSikorra merged commit c3994f4 into FreeDSx:main May 9, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant