All information in this file is pursuant to the Spack Technical Charter. In case of any conflict or difference in language, the Spack Technical Charter takes priority over this document.
The role of the Technical Steering Committee (TSC) is to provide technical direction to the project. The TSC will vote on any matters on which the community is unable to reach consensus.
Members can be added to the TSC by a majority vote of the TSC. If there is a vacancy on the TSC, the TSC shall initiate a nomination period at the first meeting it is aware of the vacancy, and nominations may be made until the next TSC meeting. The nominations will be made privately to the TSC. If there are no nominees, the TSC will reduce in size by one rather than adding a new member. If there are multiple nominees, the TSC will vote among the nominees (by ranked-choice if more than two nominees). If the winning candidate does not receive a majority of votes, to include a majority in the final round of ranked-choice vote tallying, the TSC will reduce in size by one and not add a new member.
Members may resign their role at any time by notifying the TSC, either in advance of a meeting or at a meeting of the TSC. This will result in a vacancy, handled as above. Members may also be removed from the TSC by a 2/3 vote of the TSC. If a TSC member has been inactive for over 6 months, the TSC must hold a vote on whether to remove that member from the TSC.
Current Membership:
- Todd Gamblin (@tgamblin), LLNL
- Greg Becker (@becker33), LLNL
- Peter Scheibel (@scheibelp), LLNL
- Tamara Dahlgren (@tldahlgren), LLNL
- Massimiliano Culpo (@alalazo), np-complete, S.r.l
- Harmen Stoppels (@haampie), Stoppels Consulting
- Phil Sakievich (@psakievich), SNL
- Adam Stewart (@adamjstewart), TU Munich
- Wouter Deconinck (@wdconinc), U. Manitoba
- John Parent (@johnwparent), Kitware
- Ryan Krattiger (@kwryankrattiger), Kitware
- Luke Peyralans (@eugeneswalker), U. Oregon
- Marc Paterno (@marcpaterno), Fermilab
- Mark Krentel (@mwkrentel), Rice University
The TSC will elect a chair. The TSC chair runs TSC meetings and may make interim decisions on urgent matters on behalf of the TSC, which may be reviewed by the TSC at its next meeting.
Current chair:
- Todd Gamblin (@tgamblin), LLNL
The TSC meets at 9am Pacific Time on the first Wednesday of every month. These meetings are open to the public, and are held virtually.
Meeting notes can be found in tsc-meeting-notes in this repository.
Public Spack community meetings are held every Wednesday that is not a TSC meeting, at 9am Pacific Time. These meetings are held virtually over webex.
The Spack project uses slack for day-to-day communication. Invitations to the Spack slack instance are publically available from slack.spack.io.
Spack issues, pull requests, and long term discussions are tracked on the Spack GitHub page. Upcoming high-impact changes have their own pinned discussion.
The Spack mailing list is
an announcements-only list. Spack also has a twitter account
[@spackpm](https://github.com/spackpm).
Only members of the TSC may have administrative access to the Spack repository. TSC members will be given access as needed. This list is not generally published for operational security reasons.
There are other teams within the Spack github organization which control access to various permissions on the repository. These teams are:
tsc: see abovespack-releasers: can create a new release of Spackmerge-to-develop: can merge an approved pull request to Spacktriage: can triage pull requests and issues in the Spack repositorymaintainers: any user registered to be the maintainer for a package in Spack
See the relevant teams in the Spack github repository for membership of these teams. Membership in these teams is controlled by the TSC.