Adds which Projects a user is a member of to their profile, with a link to more. Build fallback states for no badges or no projects.
Details
- Reviewers
epriestley - Commits
- Restricted Diffusion Commit
rP2f0571923c9a: Add project list to user profiles
Review a user with projects, without projects, with badges, without badges.
Diff Detail
- Repository
- rP Phabricator
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Oh, sorry! Slipped through the cracks.
I think this is reasonable to at least add and keep an eye on. Right now I think a lot of people are members of fairly irrelevant projects, but hopefully that will get better now that you can watch stuff without joining it.
I think the other major cause of irrelevant membership is autojoin-on-create. I'm thinking about maybe dropping that rule, or doing one of these when you create a project?
- Join this project as its first member.
I don't love the checkbox. I guess we could also do:
Members: [ Your Name ]
Or just:
Members: [ ... ]
But that sort of teaches users the wrong rule about how to add/edit members.
And not letting you join-on-create makes it tough to get some policies set up without doing "set open policy, save, join, close policies", which is also not good. So I don't have a great fix.
Also, not really related, but the null state for feed on Projects is a little tumbleweedy:
The People one isn't as bad but is maybe a little iffy:
These are pretty hard to hit, but maybe worth touching up eventually.
Yeah I took a few tries at redesigning feed and didn't get very far, just some space updates. I'll fix up the null states though.
I'm probably OK just removing the auto-join outright. They only fit for project projects, and don't really fit for teams or tags.
All else being equal I'd like to remove it, but then you can't set certain policies when you create a project -- particularly "Editable By: Project Members" or similar, since you won't be able to edit it. You have to:
- Set "Editable By: epriestley"
- Save, creating the project.
- Join the project.
- Set "Editable By: Project Members"
I think "Editable By: Project Members" is a pretty reasonable setting to want and even a reasonable default to set, so I'm hesitant to break it.
We could maybe do something spooky and magical like "test if you can edit; if you can't, test if you could if you joined the project; if you could, join the project" but that feels pretty bizarre/scary to me.
Maybe the members thing can just hint that it's unusual, e.g.:
Initial Members: [ ... ]
The "teaching the wrong way to do stuff" issue probably isn't too big a deal since there are lots of other cues about how to set/edit members.