Implement a projects() datasource function
Ref T4100. This is like members(), but is implemented on top of the raw datasource. This is a lot simpler and involves way less code duplication.
I'll go back and implement members() like this, too.
Nothing actually uses this yet.
- Used browse view to browse datasource.
Reviewed By: btrahan
Maniphest Tasks: T4100
Differential Revision: https://secure.phabricator.com/D12458