Page MenuHomeDevCentral

Move resolve_resource_id into Resources helper class
ClosedPublic

Authored by dereckson on Nov 4 2025, 02:15.
Tags
None
Referenced Files
F19143024: D3846.diff
Wed, Dec 24, 20:42
F19136111: D3846.id9960.diff
Wed, Dec 24, 19:02
F19119184: D3846.diff
Wed, Dec 24, 11:40
F19113381: D3846.id.diff
Wed, Dec 24, 01:26
Unknown Object (File)
Tue, Dec 23, 08:25
Unknown Object (File)
Mon, Dec 22, 20:22
Unknown Object (File)
Mon, Dec 22, 16:40
Unknown Object (File)
Sat, Dec 20, 13:22
Subscribers
None

Details

Summary

Recreate the missing or prune get_user_id method

Test Plan
  • browse a regular namespace
  • load a workspace with custom auth method

Diff Detail

Repository
rOBSIDIAN Obsidian Workspaces
Lint
No Lint Coverage
Unit
No Test Coverage
Branch
main
Build Status
Buildable 6150
Build 6434: arc lint + arc unit

Event Timeline

dereckson added inline comments.
workspaces/src/includes/objects/user.php
263

There is an implementation issue for Option::orElse

We should ideally have:

  • Option::or to give a default value
  • Option::orElse to execute a closure in lazy loading

Here, the _from_email will always be executed, to get the default value to pass to orElse

Our code could become:

->orElse(function() use ($expression) {
    return self::get_user_from_email($expression);
})

In Keruald, this None::orElse must method actually match or():

public function orElse (mixed $default) : mixed {
    return $default;
}

It should execute the function, while in Some, the implementation is correct:

public function orElse (callable $callable) : mixed {
    return $callable()
}

Option::orElse is correctly implemented in D3847.

Bump omnitools to dev 1.x version. Use camel case.

This revision is now accepted and ready to land.Nov 6 2025, 00:11