update the support policy with changes to time-box the release schedule
[gitmo/Moose.git] / lib / Moose / Manual / Support.pod
CommitLineData
eda0fb99 1=pod
2
3=head1 NAME
4
5Moose::Manual::Support - Policies regarding support, releases, and
6compatibility.
7
8=head1 RELEASE SCHEDULE
9
d1e4fecf 10Moose uses the release early, release often philosophy.
eda0fb99 11
d1e4fecf 12Moose is on a system of monthly minor Releases, and quarterly major releases. A minor release is
13deifined as one that makes every attempt to not break backwards compatibility. Currently this means
14that the dependency conflict lists, and test suite did not change substantially, or that any changes
15were additive.
16
17Major releases are potentially backwards incompatibiliy. Moose prioritizes correcness over backwards
18compatibility or performance, see the Deprecation Policy below for how backwards incompatible changes
19are announced.
20
21Between the last minor release and the next major release, a series of Development Releases will be
22made so that users can test the upcoming major release before it is distributed to CPAN. It is in the
23best interests of everyone involved if these releases are tested as widely as possible.
eda0fb99 24
25=head1 DEPRECATION POLICY
26
27Moose has always prioritized correctness over performance and backwards
79dce67a 28compatibility.
eda0fb99 29
ccc47a38 30Major deprecations or API changes are first documented in the Changes
204f629c 31file as well as in L<Moose::Manual::Delta>.
eda0fb99 32
ccc47a38 33Moose then attempts to warn for deprecated features and API changes for
34a reasonable number of releases before breaking any tested API.
eda0fb99 35
36Moose will also warn during installation if the version being installed
37will break a known installed dependency. Unfortunately due to the nature
38of the Perl install process these warnings may be easy to miss.
39
40=head1 BACKWARDS COMPATIBILITY
41
42We try to ensure compatibility by having a extensive test suite (last
43count just over around 5123 tests), as well as testing a number of
ccc47a38 44packages (currently just under 100 packages) that depend on Moose before
eda0fb99 45any release.
46
47The current list of downstream dependencies that are tested is in
48C<xt/author/test-my-dependents.t>.
49
50=head1 VERSION NUMBERS
51
52Moose's version numbers are monotonically incrementing two decimal
53values. The version numbers in Moose are I<not> semantic. This means
54that version 1.00 will be the hundredth release, nothing more.
55
3d5e4dc0 56Occasionally, we will release a test release with a version like
570.90_03. These versions may be less stable than non-test releases, and exist
58so that developers can test potentially code-breaking changes. By default, the
59CPAN client will not install a distribution which has an underscore in its
60version.
61
eda0fb99 62Moose was declared production ready at version 0.18 (via L<<
63http://www.perlmonks.org/?node_id=608144 >>).
64
65=head1 CONTRIBUTING
66
67Moose has an open contribution policy. Anybody is welcome to submit a
204f629c 68patch. Please see L<Moose::Manual::Contributing> for more details.
eda0fb99 69
79dce67a 70=cut