Obsidian follows Azhàr / Keruald includes structure.
As such, some of the code can be duplicated from code already migrated to rKERUALD. Other missing methods could be migrated there, as Obsidian is a little more modern.
Obsidian follows Azhàr / Keruald includes structure.
As such, some of the code can be duplicated from code already migrated to rKERUALD. Other missing methods could be migrated there, as Obsidian is a little more modern.
| rKERUALD Keruald libraries development repository | |||
| D3787 | rKERUALD6f31873efc42 Import _ERROR constants into global debug space | ||
| rKOT Keruald OmniTools | |||
| D3787 | rKOT826acb70aabf Import _ERROR constants into global debug space | ||
| rOBSIDIAN Obsidian Workspaces | |||
| D3795 | rOBSIDIANfa31a36d44c2 Define Application, Environment and Session as framework key parts | ||
| D3793 | rOBSIDIAN15c816a60aae Promote Controller and Context classes in namespace | ||
| D3789 | rOBSIDIANf6a03fb1b387 Prune unused global functions | ||
| D3774 | rOBSIDIANdd8b7e76c36c Switch events and databases class to Keruald packages implementations | ||
Looking the code of keruald/databases, it's clear that it's exactly based on Obsidian consolidated design choices: Keruald Databases even use the camelCase method names introduced in Obsidian, with a WithLegacyMethods trait to stay compatible with other applications.
The only changes are:
For cache it seems we use serialize/unserialize directly into the PHP code:
[20-Oct-2025 19:11:29 UTC] PHP Deprecated: unserialize(): Passing null to parameter #1 ($data) of type string is deprecated in /var/51-wwwroot/obsidian/workspaces/src/includes/workspaces/Workspace.php on line 177
The keruald/cache library directly uses those methods. Recommended in PSR-16 if I remember well (*).