Skip to content

Commit e3c1ec7

Browse files
committed
Fix validation of Zulip streams
1 parent 56c13f5 commit e3c1ec7

File tree

2 files changed

+16
-10
lines changed

2 files changed

+16
-10
lines changed

src/validate.rs

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -758,16 +758,20 @@ fn validate_zulip_stream_ids(data: &Data, errors: &mut Vec<String>) {
758758
return Ok(());
759759
}
760760

761-
wrapper(team.members(data)?.iter(), errors, |member, _| {
762-
if let Some(member) = data.person(member) {
763-
if member.zulip_id().is_none() {
764-
bail!(
765-
"person `{}` in '{}' is a member of a Zulip stream but has no Zulip id",
766-
member.github(),
767-
team.name()
768-
);
761+
wrapper(streams.iter(), errors, |stream, errors| {
762+
wrapper(stream.members().iter(), errors, |member, _| {
763+
match member {
764+
ZulipMember::MemberWithId { .. } | ZulipMember::JustId(_) => {}
765+
ZulipMember::MemberWithoutId { github } => {
766+
bail!(
767+
"person `{github}` is a member of a Zulip stream `{}` defined in team `{}`, but has no Zulip id",
768+
stream.name(),
769+
team.name()
770+
);
771+
}
769772
}
770-
}
773+
Ok(())
774+
});
771775
Ok(())
772776
});
773777
Ok(())

teams/all.toml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,9 @@ excluded-people = [
4545

4646
# Private channel with all team members, so that we can have an easy way of reaching them.
4747
[[zulip-streams]]
48-
name = "rust project"
48+
name = "all/private"
49+
# Exclude the following people from the Zulip stream for grandfathering purposes,
50+
# where previously we didn't require all project team members to have Zulip IDs.
4951
excluded-people = [
5052
"U007D",
5153
"andrewpollack",

0 commit comments

Comments
 (0)