dwww Home | Manual pages | Find package

PERLGOV(1)              Perl Programmers Reference Guide             PERLGOV(1)

NAME
       perlgov - Perl Rules of Governance

PREAMBLE
       We are forming a system of governance for development of the Perl
       programming language.

       The scope of governance includes the language definition, its
       implementation, its test suite, its documentation, and the policies and
       procedures by which it is developed and maintained.

       The system of governance includes definitions of the groups that will
       make decisions, the rules by which these groups are formed and changed,
       and the enumerated powers and constraints on the activities of these
       governing groups.

       In forming a system of governance, we seek to achieve the following
       goals:

       •   We  want  a  system  that  is  functional.  That means the governing
           groups may decide to undertake large changes, or they may decide  to
           act  conservatively,  but  they  will  act  with  intent  and  clear
           communication rather than fail to reach decisions when needed.

       •   We want a system that is  trusted.  That  means  that  a  reasonable
           contributor  to  Perl  might  disagree  with  decisions  made by the
           governing groups, but will accept that they were made in good  faith
           in  consultation  with  relevant  communities  outside the governing
           groups.

       •   We want a system that is sustainable.  That means it has  provisions
           to  self-modify,  including  ways  of  adding  new  members  to  the
           governing groups, ways to survive  members  becoming  inactive,  and
           ways of amending the rules of governance themselves if needed.

       •   We  want  a  system  that  is  transparent.  That means that it will
           prefer policies that manage ordinary matters in public, and it  will
           prefer secrecy in a limited number of situations.

       •   We  want  a  system  that  is  respectful.   That means that it will
           establish standards  of  civil  discourse  that  allow  for  healthy
           disagreement  but  avoid  rancor  and hostility in the community for
           which it is responsible.

Mandate
       Perl language governance shall work to:

       •   Maintain the quality, stability, and continuity of the Perl language
           and interpreter

       •   Guide the evolution of the Perl language and interpreter

       •   Establish  and  oversee  the  policies,  procedures,  systems,   and
           mechanisms  that  enable  a  community  of  contributors to the Perl
           language and interpreter

       •   Encourage   discussion   and   consensus   among   contributors   as
           preferential to formal decision making by governance groups

       •   Facilitate   communication   between   contributors   and   external
           stakeholders in the broader Perl ecosystem

Definitions
       This document describes three roles involved in governance:

       "Core Team"
       "Steering Council"
       "Vote Administrator"

       A section on each follows.

   The Core Team
       The Core Team are a group of trusted volunteers involved in the  ongoing
       development of the Perl language and interpreter.  They are not required
       to be language developers or committers.

       References  to  specific  votes  are explained in the "Rules for Voting"
       section.

       Powers

       In addition to their contributions to the Perl language, the  Core  Team
       sets the rules of Perl governance, decides who participates in what role
       in  governance,  and  delegates substantial decision making power to the
       Steering Council.

       Specifically:

       •   They elect the  Steering  Council  and  have  the  power  to  remove
           Steering Council members.

       •   In  concert  with  the  Steering  Council,  they  manage  Core  Team
           membership.

       •   In concert with the Steering Council, they have the power to  modify
           the Perl Rules of Governance.

       The Core Team do not have any authority over parts of the Perl ecosystem
       unrelated  to  developing  and  releasing  the  language  itself.  These
       include, but are not limited to:

       •   The Perl Foundation

       •   CPAN administration and CPAN authors

       •   perl.org, metacpan.org, and other community-maintained websites  and
           services

       •   Perl  conferences and events, except those organized directly by the
           Core Team

       •   Perl-related intellectual property legally owned  by  third-parties,
           except as allowed by applicable licenses or agreements

       Membership

       The  initial  Core  Team members will be specified when this document is
       first ratified.

       Any Core Team member may nominate someone to be added to the  Core  Team
       by sending the nomination to the Steering Council.  The Steering Council
       must  approve  or  reject  the  nomination.   If  approved, the Steering
       Council will organize a Membership Change Vote to ratify the addition.

       Core Team members should demonstrate:

       •   A solid track record of being constructive and helpful

       •   Significant contributions to the project's goals, in any form

       •   Willingness to dedicate some time to improving Perl

       Contributions are not limited to code. Here is  an  incomplete  list  of
       areas where contributions may be considered for joining the Core Team:

       •   Working on community management and outreach

       •   Providing support on mailing lists, IRC, or other forums

       •   Triaging tickets

       •   Writing patches (code, docs, or tests)

       •   Reviewing patches (code, docs, or tests)

       •   Participating in design discussions

       •   Providing expertise in a particular domain (security, i18n, etc.)

       •   Managing Perl infrastructure (websites, CI, documentation, etc.)

       •   Maintaining significant projects in the Perl ecosystem

       •   Creating visual designs

       Core  Team  membership  acknowledges sustained and valuable efforts that
       align well with the philosophy and the goals of the Perl project.

       Core Team members are expected to act as role models for  the  community
       and  custodians of the project, on behalf of the community and all those
       who rely on Perl.

       Term

       Core Team members serve until they are removed.

       Removal

       Core Team Members may resign their position at any time.

       In exceptional circumstances, it may be necessary to remove someone from
       the Core Team against their will,  such  as  for  flagrant  or  repeated
       violations of a Code of Conduct.  Any Core Team member may send a recall
       request  to  the  Steering  Council naming the individual to be removed.
       The Steering Council must approve or  reject  the  recall  request.   If
       approved, the Steering Council will organize a Membership Change vote to
       ratify the removal.

       If  the  removed  member  is also on the Steering Council, then they are
       removed from the Steering Council as well.

       Inactivity

       Core Team members  who  have  stopped  contributing  are  encouraged  to
       declare themselves "inactive". Inactive members do not nominate or vote.
       Inactive  members may declare themselves active at any time, except when
       a vote has been proposed and is not concluded.  Eligibility to  nominate
       or vote will be determined by the Vote Administrator.

       To record and honor their contributions, inactive Core Team members will
       continue to be listed alongside active members.

       No Confidence in the Steering Council

       The  Core Team may remove either a single Steering Council member or the
       entire Steering Council via a No Confidence Vote.

       A No Confidence Vote is triggered when a Core Team member calls for  one
       publicly  on  an  appropriate project communication channel, and another
       Core Team member seconds the proposal.

       If a No Confidence Vote removes all Steering Council members,  the  Vote
       Administrator of the No Confidence Vote will then administer an election
       to select a new Steering Council.

       Amending Perl Rules of Governance

       Any  Core  Team member may propose amending the Perl Rules of Governance
       by sending a proposal to the Steering  Council.   The  Steering  Council
       must  decide  to  approve  or  reject  the  proposal.   If approved, the
       Steering Council will organize an Amendment Vote.

       Rules for Voting

       Membership Change, Amendment, and No Confidence  Votes  require  2/3  of
       participating votes from Core Team members to pass.

       A  Vote  Administrator must be selected following the rules in the "Vote
       Administrator" section.

       The vote occurs in two steps:

       1.  The Vote Administrator describes the proposal being voted upon.  The
           Core Team then may discuss the matter in advance of voting.

       2.  Active Core Team members vote in  favor  or  against  the  proposal.
           Voting is performed anonymously.

       For  a  Membership  Change  Vote,  each  phase  will last one week.  For
       Amendment and No Confidence Votes, each phase will last two weeks.

   The Steering Council
       The Steering Council is a 3-person committee, elected by the Core  Team.
       Candidates  are not required to be members of the Core Team.  Non-member
       candidates are added to the Core Team if elected as if by  a  Membership
       Change Vote.

       References  to  specific  elections  are  explained  in  the  "Rules for
       Elections" section.

       Powers

       The Steering Council has broad authority to  make  decisions  about  the
       development  of  the  Perl  language,  the  interpreter,  and  all other
       components, systems and processes that result in  new  releases  of  the
       language interpreter.

       For example, it can:

       •   Manage the schedule and process for shipping new releases

       •   Establish  procedures  for  proposing,  discussing and deciding upon
           changes to the language

       •   Delegate power to individuals on or outside the Steering Council

       Decisions of the Steering Council will be made by majority vote of  non-
       vacant seats on the council.

       The  Steering Council should look for ways to use these powers as little
       as possible.  Instead of voting, it's better to seek consensus.  Instead
       of  ruling  on  individual  cases,  it's  better to define standards and
       processes that apply to all cases.

       As with the Core Team, the Steering Council does not have any  authority
       over  parts  of the Perl ecosystem unrelated to developing and releasing
       the language itself.

       The Steering Council does not have the power to modify the Perl Rules of
       Governance, except as provided in the section "Amending  Perl  Rules  of
       Governance".

       Term

       A  new  Steering  Council  will  be chosen by a Term Election after each
       stable  feature  release  (that  is,  change   to   "PERL_REVISION"   or
       "PERL_VERSION")  or  after  two  years,  whichever comes first. The Term
       Election will be organized within two weeks of the triggering event. The
       council members will  serve  until  the  completion  of  the  next  Term
       Election unless they are removed.

       Removal

       Steering Council members may resign their position at any time.

       Whenever  there  are vacancies on the Steering Council, the council will
       organize a Special Election within one week after  the  vacancy  occurs.
       If  the  entire Steering Council is ever vacant, a Term Election will be
       held instead.

       The Steering Council may defer the Special Election  for  up  to  twelve
       weeks.   Their intent to do so must be publicly stated to the Core Team.
       If any active Core Team member objects  within  one  week,  the  Special
       Election  must be organized within two weeks.  At any time, the Steering
       Council may choose to cancel  the  deferment  and  immediately  commence
       organizing a Special Election.

       If  a  Steering  Council  member  is deceased, or drops out of touch and
       cannot be contacted for a month or longer, then the rest of the  council
       may  vote  to  declare  their  seat vacant.  If an absent member returns
       after such a declaration is made, they are not reinstated automatically,
       but may run in the Special Election to fill the vacancy.

       Otherwise, Steering Council members may only be removed before  the  end
       of their term through a No Confidence Vote by the Core Team.

       Rules for Elections

       Term  and  Special  Election  are  ranked-choice  votes  to construct an
       ordered list of candidates to fill vacancies in the Steering Council.

       A Vote Administrator must be selected following the rules in  the  "Vote
       Administrator" section.

       Both Term and Special Elections occur in two stages:

       1.  Candidates  advertise  their interest in serving. Candidates must be
           nominated by  an  active  Core  Team  member.  Self-nominations  are
           allowed.   Nominated  candidates  may  share a statement about their
           candidacy with the Core Team.

       2.  If there are  no  more  candidates  than  open  seats,  no  vote  is
           required.   The  candidates  will  be  declared to have won when the
           nomination period ends.

           Otherwise, active Core Team Members vote by ranking all  candidates.
           Voting   is   performed  anonymously.   After  voting  is  complete,
           candidates are ranked using the Condorcet Internet Voting  Service's
           proportional  representation  mode.   If  a  tie  occurs,  it may be
           resolved by mutual agreement among the tied candidates, or else  the
           tie   will   be  resolved  through  random  selection  by  the  Vote
           Administrator.

       Anyone voted off the Core Team is not eligible to  be  a  candidate  for
       Steering Council unless re-instated to the Core Team.

       For  a Term Election, each phase will last two weeks.  At the end of the
       second phase, the top three ranked candidates are  elected  as  the  new
       Steering Council.

       For  a  Special  Election, each phase will last one week.  At the end of
       the second  phase,  vacancies  are  filled  from  the  ordered  list  of
       candidates until no vacancies remain.

       The  election  of  the  first  Steering Council will be a Term Election.
       Ricardo Signes will be the  Vote  Administrator  for  the  initial  Term
       Election  unless  he is a candidate, in which case he will select a non-
       candidate administrator to replace him.

   The Vote Administrator
       Every election  or  vote  requires  a  Vote  Administrator  who  manages
       communication,  collection  of  secret  ballots, and all other necessary
       activities to complete the voting process.

       Unless otherwise  specified,  the  Steering  Council  selects  the  Vote
       Administrator.

       A  Vote Administrator must not be a member of the Steering Council nor a
       candidate or subject of the vote.  A Vote Administrator may be a  member
       of  the  Core  Team  and,  if  so, may cast a vote while also serving as
       administrator.  If the Vote Administrator becomes a candidate during  an
       election vote, they will appoint a non-candidate replacement.

       If  the  entire  Steering  Council  is  vacant or is the subject of a No
       Confidence Vote, then the Core Team will select a Vote Administrator  by
       consensus.   If  consensus  cannot  be  reached  within  one  week,  the
       President of The Perl Foundation will select a Vote Administrator.

Steering Council and Core Team Members
       The list below names the members of the Steering Council and  Core  Team
       responsible  for  creating  the release of perl with which this document
       shipped.

       Remember, though that if you're reading the copy of this  document  that
       was  installed  with  perl, it's very likely out of date.  Because every
       new stable feature release  triggers  an  election,  you're  better  off
       looking   at   the   most   up   to   date   copy   of   this   document
       <https://github.com/Perl/perl5/blob/blead/pod/perlgov.pod>, in the blead
       branch of Perl's git repository.  Because it's git, you can also see how
       the membership has changed over time.

Steering Council Members
       •   Graham Knop

       •   Paul Evans

       •   Philippe Bruhat

Core Team Members
       The current members of the Perl Core Team are:

   Active Members
       Chad Granum <exodist7@gmail.com>
       Chris 'BinGOs' Williams <chris@bingosnet.co.uk>
       Craig Berry <craigberry@mac.com>
       Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>
       David Mitchell <davem@iabyn.com>
       Graham Knop <haarg@haarg.org>
       H. Merijn Brand <perl5@tux.freedom.nl>
       Hugo van der Sanden <hv@crypt.org>
       James E Keenan <jkeenan@cpan.org>
       Karen Etheridge <ether@cpan.org>
       Karl Williamson <khw@cpan.org>
       Leon Timmermans <fawaka@gmail.com>
       Matthew Horsfall <wolfsage@gmail.com>
       Max Maischein <cpan@corion.net>
       Neil Bowers <neilb@neilb.org>
       Nicholas Clark <nick@ccl4.org>
       Nicolas R <atoomic@cpan.org>
       Paul "LeoNerd" Evans <leonerd@leonerd.org.uk>
       Philippe "BooK" Bruhat <book@cpan.org>
       Ricardo Signes <rjbs@semiotic.systems>
       Steve Hay <steve.m.hay@googlemail.com>
       Stuart Mackintosh <stuart@perlfoundation.org>
       Todd Rinaldo <toddr@cpanel.net>
       Tony Cook <tony@develop-help.com>
       Yves Orton <demerphq@gmail.com>

   Inactive Members
       Abhijit Menon-Sen <ams@toroid.org>
       Andy Dougherty <doughera@lafayette.edu>
       David Golden <xdg@xdg.me>
       Jan Dubois <jan@jandubois.com>
       Jason McIntosh <jmac@jmac.org>
       Jesse Vincent <jesse@fsck.com>

perl v5.40.1                       2026-08-30                        PERLGOV(1)

Generated by dwww version 1.16 on Sat Oct 3 07:42:44 CEST 2026.