1Dancer2::DeprecationPolUisceyr(3C)ontributed Perl DocumeDnatnacteiro2n::DeprecationPolicy(3)
2
3
4
6 Dancer2::DeprecationPolicy - Define the process by which outdated,
7 broken, or unused code is removed from Dancer2
8
10 version 0.400001
11
13 While there are conflicting ideas about deprecation, in Dancer2,
14 deprecated code is code that:
15
16 • Is in the way of implementing important features or fixes that
17 provide more value.
18
19 • Has a negative impact on the integrity and security of user code,
20 whether by misusing it to not.
21
22 • Provides a negative experience for the users.
23
24 Deprecated code is code we either had to write and can now remove or we
25 thought was a good idea and were wrong. It is code that doesn't overall
26 benefit users or the developers.
27
28 Deprecated code is code that is marked for eventual removal and we do
29 not intend to keep in the Dancer2 codebase.
30
32 • Code to be deprecated is posted/discussed publicly (see below)
33
34 • Deprecated code enters soft deprecation phase
35
36 • After 12 months or 2 major releases, code is hard deprecated
37
38 • After 6 months or 1 major release, hard deprecated code is removed
39
40 Deprecated code is marked with warnings and the version and/or date in
41 which it will no longer be available.
42
43 Public Notice
44 When a feature/code is to be deprecated, the Dancer Core Team will
45 create a new GitHub issue for the code/feature to be deprecated, and
46 announce this in a public manner (blog post, Twitter, and the mailing
47 list, at minimum). The notice should provide the reason for the
48 deprecation, what Dancer2/the community is gaining as a result of the
49 deprecation, and what the officially recognized alternative to the
50 deprecated code is.
51
52 The public notice period will provide the developer/user base an
53 opportunity to voice objections or provide feedback or alternatives to
54 deprecation. It also allows the Core Team to better assess the
55 potential long range effects of deprecation.
56
57 While the deprecated feature/code can be discussed by community, the
58 decision will be ultimately made by the Dancer Core Team. There is no
59 definitive time for the public notice period to end; some deprecations
60 are more urgent than others, and each situation is left to the
61 discretion of the Core Team, with feedback from the community.
62
63 Soft Deprecation
64 When code is soft deprecated, a warning will be thrown to indicate that
65 the code is to be considered deprecated. Apps will continue to function
66 normally otherwise.
67
68 Hard Deprecation
69 After 12 months or two major releases (whichever comes first), the code
70 is considered to be hard deprecated. An error will continue to be
71 thrown, but unlike soft deprecation, continued usage of the deprecated
72 code will cause the application to die.
73
74 There is one caveat to this: code will never be deprecated for less
75 than 6 months. So if we deprecate code after v0.500000, become
76 unusually productive, and produce Dancer 0.600000 and 0.700000 in a two
77 month timeframe, no deprecated code will be removed because 6 months
78 hasn't elapsed.
79
80 Removal
81 Six months following hard deprecation, or one major release after hard
82 deprecation, the deprecated code is removed from Dancer2.
83
85 In special cases, based on community feedback, these timelines may be
86 extended. But we expect this to be a rare occurrence, at best.
87
89 We strongly encourage (but cannot/do not require) plugin authors to
90 adopt the same policy.
91
93 Dancer Core Developers
94
96 This software is copyright (c) 2023 by Alexis Sukrieh.
97
98 This is free software; you can redistribute it and/or modify it under
99 the same terms as the Perl 5 programming language system itself.
100
101
102
103perl v5.38.0 2023-07-20 Dancer2::DeprecationPolicy(3)