Commit | Line | Data |
cb93c9d7 |
1 | =head1 NAME |
2 | |
3 | Catalyst::Manual::DevelopmentProcess - Administrative structure of the Catalyst Development Process |
4 | |
e91e320b |
5 | =head1 Catalyst development |
cb93c9d7 |
6 | |
e91e320b |
7 | =head2 Schedule |
8 | |
9 | There is no dated release cycle for Catalyst. New releases will be made |
ca7329b2 |
10 | when sufficient small fixes have accumulated; or an important bugfix, or |
11 | significant feature addition, is completed. |
cb93c9d7 |
12 | |
ca7329b2 |
13 | =head2 Roadmap for features |
e91e320b |
14 | |
15 | The Catalyst Roadmap is kept at |
b1a08fe1 |
16 | L<http://dev.catalyst.perl.org/repos/Catalyst/Catalyst-Runtime/5.80/trunk/lib/Roadmap.pod> |
cb93c9d7 |
17 | |
e91e320b |
18 | =head2 Bug list |
19 | |
20 | The TODO list with known bugs / deficiences is kept at |
21 | L<http://dev.catalyst.perl.org/repos/Catalyst/Catalyst-Runtime/5.80/trunk/TODO> |
cb93c9d7 |
22 | |
e91e320b |
23 | =head1 The Catalyst Core Team |
cb93c9d7 |
24 | |
25 | The intention of the Catalyst Core Team is to maintain and support the |
26 | Catalyst framework, in order for it to be a viable and stable framework |
27 | for developing web-based MVC applications. This includes both technical |
28 | decisions about the Catalyst core distribution, and public relations |
29 | relating to the Catalyst framework as a whole. |
30 | |
ca7329b2 |
31 | The current goals of the Catalyst core development team are stability, |
32 | performance, and a properly paced addition of features, with a focus on |
33 | extensibility. |
e91e320b |
34 | |
ca7329b2 |
35 | The core team is concerned with the 'core' Catalyst distributions |
e91e320b |
36 | (i.e. L<Catalyst::Runtime>, L<Catalyst::Devel> and L<Catalyst::Manual>), |
ca7329b2 |
37 | and also tries to encourage best practices for extension authors, and |
e91e320b |
38 | cooperation and shared vision within the Catalyst community. |
cb93c9d7 |
39 | |
40 | =head2 Membership |
41 | |
ca7329b2 |
42 | The Catalyst Core Team consists of the developers who have full commit |
43 | privileges to the entire Catalyst source tree, and who have made a significant |
e91e320b |
44 | contribution to the core Catalyst distributions, and various extensions and |
ca7329b2 |
45 | plugins. |
cb93c9d7 |
46 | |
e91e320b |
47 | In addition, the core team includes members that have non-technical |
ca7329b2 |
48 | roles, such as marketing, legal, or economic responsibilities. |
cb93c9d7 |
49 | |
7d36d4ac |
50 | Currently, the Core Team consists of the following people: |
cb93c9d7 |
51 | |
52 | =over 4 |
53 | |
7d36d4ac |
54 | =item Brian Cassidy |
55 | |
cb93c9d7 |
56 | =item Andy Grundman |
57 | |
58 | =item Christian Hansen |
59 | |
7d36d4ac |
60 | =item Yuval Kogman |
cb93c9d7 |
61 | |
62 | =item Marcus Ramberg |
63 | |
7d36d4ac |
64 | =item Jonathan Rockway |
65 | |
cb93c9d7 |
66 | =item Jesse Sheidlower |
67 | |
68 | =item Matt S. Trout |
69 | |
b1a08fe1 |
70 | =item Florian Ragwitz |
71 | |
72 | =item Tomas Doran |
73 | |
cb93c9d7 |
74 | =back |
75 | |
76 | New members of the Core Team must be accepted by a 2/3 majority by the |
77 | current members. |
78 | |
79 | =head2 Technical Decisions. |
80 | |
81 | Any change to the Catalyst core which can not be conceived as a |
82 | correction of an error in the current feature set will need to be |
83 | accepted by at least 3 members of the Core Team before it can be |
84 | commited to the trunk (which is the basis for CPAN releases). Anyone |
85 | with access is at any time free to make a branch to develop a proof of |
86 | concept for a feature to be committed to trunk. |
87 | |
88 | =head2 Organizational and Philosophical Decisions. |
89 | |
ca7329b2 |
90 | Any organizational or philosophical decision should be decided by |
91 | majority vote. Thus it should be a goal of the organization that its |
92 | membership number should at any time be an odd number, to render it |
93 | effective with regards to decision making. The exceptions to this rule |
94 | are changes to this charter and additions to the membership of the Core |
95 | Team, which require a 2/3 majority. |
cb93c9d7 |
96 | |
97 | =head2 CPAN Releases |
98 | |
99 | Planned releases to CPAN should be performed by the release manager, at |
100 | the time of writing Marcus Ramberg, or the deputy release manager, at |
b1a08fe1 |
101 | the time of writing Florian Ragwitz. In the case of critical error |
cb93c9d7 |
102 | correction, any member of the Core Team can perform a rescue release. |
103 | |
104 | =head2 Public statements from the Core Team |
105 | |
106 | The Core Team should strive to appear publicly as a group when answering |
107 | questions or other correspondence. In cases where this is not possible, |
ca7329b2 |
108 | the same order as for CPAN releases applies. |
cb93c9d7 |
109 | |
e91e320b |
110 | =head1 Contributing to Catalyst |
111 | |
ca7329b2 |
112 | The main philosophy behind Catalyst development can be summarized as: |
e91e320b |
113 | |
114 | Patches welcome! |
115 | |
116 | Everyone is welcome (and will be encouraged) to contribute to Catalyst |
117 | in whatever capacity they're able to. People in #catalyst-dev will be |
118 | more than happy to talk newcomers through contributing their first patch, |
ca7329b2 |
119 | or how best to go about their first CPAN extension module.... |
e91e320b |
120 | |
121 | =head2 Repositories |
122 | |
123 | The Catalyst subversion repository can be found at: |
124 | |
6047cb18 |
125 | svn: http://dev.catalyst.perl.org/repos/Catalyst |
46a5f2f5 |
126 | browser: http://dev.catalyst.perl.org/svnweb/Catalyst |
e91e320b |
127 | |
bbddff00 |
128 | and the git repository can be found at: |
129 | |
6047cb18 |
130 | read: git://git.shadowcat.co.uk/catagits/PROJECTNAME |
131 | write: catagits@git.shadowcat.co.uk:PROJECTNAME |
132 | browser: https://git.shadowcat.co.uk/gitweb/gitweb.cgi |
e91e320b |
133 | |
46a5f2f5 |
134 | =head2 New Catalyst Extensions |
e91e320b |
135 | |
136 | As Catalyst is deliberately designed for extension, there is an ecosystem of |
46a5f2f5 |
137 | several hundred Catalyst extensions that can be found on CPAN. |
cb93c9d7 |
138 | |
46a5f2f5 |
139 | See L<Catalyst::Manual::ExtendingCatalyst> for more information on how |
140 | to extend Catalyst in various ways and how to write CPANable components |
141 | for Catalyst which can be reused in many applications. |
bbddff00 |
142 | |
46a5f2f5 |
143 | It is recommended to post a request for comments to the Catalyst mailing |
144 | list, or ask around in the #catalyst IRC channel before starting to |
145 | implement something, as another member of the community is likely to |
146 | have example or prototype code that you can reuse, and members of the |
147 | community and core team are happy to advise on the best way to implement |
148 | a generic solution to a particular problem. |
bbddff00 |
149 | |
46a5f2f5 |
150 | This could save you duplicate work, and will help you produce a better |
151 | thought out and designed extension. |
bbddff00 |
152 | |
153 | =head1 AUTHORS |
154 | |
155 | Catalyst Contributors, see Catalyst.pm |
156 | |
157 | =head1 COPYRIGHT |
158 | |
159 | This library is free software. You can redistribute it and/or modify it under |
160 | the same terms as Perl itself. |
161 | |
162 | =cut |
163 | |