Add pja-ant (Peter Alexander) as core maintainer (#40)

* Add pja-ant (Peter Alexander) as core maintainer

* Add validation for alphabetical member ordering in users.ts

- Added validation in validate-config.ts that checks:
  1. GitHub members are sorted alphabetically (case-insensitive)
  2. Email-only members come after all GitHub members
- Sorted existing users.ts entries to pass the new validation
This commit is contained in:
David Soria Parra 2026-01-22 20:21:27 +00:00 • committed by GitHub
commit 46c864c0bc
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -55,6 +55,49 @@ for (const member of MEMBERS) {
}
}
// Validate member ordering in users.ts
console.log('Validating member ordering in users.ts...');
{
// Split members into github members and email-only members
const githubMembers: (typeof MEMBERS)[number][] = [];
const emailOnlyMembers: (typeof MEMBERS)[number][] = [];
for (const member of MEMBERS) {
if (member.github) {
githubMembers.push(member);
} else if (member.email) {
emailOnlyMembers.push(member);
}
}
// Check that github members come before email-only members
let foundEmailOnly = false;
for (const member of MEMBERS) {
if (!member.github && member.email) {
foundEmailOnly = true;
} else if (member.github && foundEmailOnly) {
console.error(
`ERROR: Member "${member.github}" appears after email-only members. GitHub members should come before email-only members.`
);
hasErrors = true;
break;
}
}
// Check that github members are sorted alphabetically (case-insensitive)
for (let i = 1; i < githubMembers.length; i++) {
const prev = githubMembers[i - 1].github!.toLowerCase();
const curr = githubMembers[i].github!.toLowerCase();
if (prev > curr) {
console.error(
`ERROR: Members are not sorted alphabetically. "${githubMembers[i - 1].github}" should come after "${githubMembers[i].github}".`
);
hasErrors = true;
break;
}
}
}
// Validate parent role references in roles.ts
console.log('Validating parent role references in roles.ts...');
for (const role of ROLES) {