blob: 20214392c5ce0ab5d8fea078a57f810bf8f7cffc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
{% extends "base.html" %}
{% load date_format fundraising_extras hosts %}
{% block sectionid %}roadmap{% endblock %}
{% block title %}Django {{ series }} Roadmap{% endblock %}
{% block layout_class %}sidebar-right{% endblock %}
{% block header %}
<p>Download</p>
{% endblock %}
{% block content %}
<h1>Django {{ series }} Roadmap</h1>
<p>This document details the schedule and roadmap towards Django {{ series }}.</p>
<section id="what-features-will-be-released">
<h2>What features will be in Django {{ series }}?</h2>
<p>Whatever gets committed by the alpha feature freeze!</p>
<p>Django {{ series }} will be a time-based release. Any features completed and committed
to main by the alpha feature freeze deadline noted below will be included. Any
that miss the deadline won't.</p>
<p>If you have a major feature you'd like to contribute, please propose it on
<a href="https://github.com/orgs/django/projects/24/">new feature ideas GitHub project</a> and review the
<a href="{% url 'document-detail' lang='en' version='dev' url='internals/contributing/bugs-and-features' host 'docs' %}#requesting-features">requesting features documentation</a>.</p>
<p>Minor features and bug fixes will be merged as they are completed. If you
have submitted a patch, ensure the flags on the Trac ticket are correct so it
appears in the "Patches needing review" filter of the
<a href="{% host_url 'dashboard-index' host 'dashboard' %}">Django Development Dashboard</a>.
Better yet, find someone to review your patch and mark the ticket as
"Ready for checkin". Tickets marked "Ready for checkin" are regularly reviewed
by mergers.</p>
</section>
<section id="how-to-help">
<h2>How you can help</h2>
<p>Community effort is key. You can help by:</p>
<ul>
<li>Reading the <a href="{% url 'document-detail' lang='en' version='dev' url='internals/contributing' host 'docs' %}">guide to contributing</a>
and <a href="{% url 'document-detail' lang='en' version='dev' url='internals/release-process' host 'docs' %}">Django's release process</a>.</li>
<li>Working on patches and <a href="{% url 'document-detail' lang='en' version='dev' url='internals/contributing/triaging-tickets' host 'docs' %}">triaging tickets</a>.</li>
<li>Attending sprints.</li>
<li>Testing release snapshots (alphas, betas) against your code and reporting bugs.</li>
<li>Providing as many testers as possible to ensure a bug-free release.</li>
</ul>
</section>
<section id="schedule">
<h2>Schedule</h2>
<p>
Major milestones along the way to {{ series }} are scheduled below.
See <a href="#process">Process</a> for more details. Dates are subject to change.
</p>
<div class="table-wrapper">
<table>
<thead>
<tr>
<th scope="col">Date</th>
<th scope="col">Milestone</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{ releases.a.date|default:"TBD" }}</td>
<td>Django {{ series }} alpha; feature freeze.</td>
</tr>
<tr>
<td>{{ releases.b.date|default:"TBD" }}</td>
<td>Django {{ series }} beta; non-release blocking bug fix freeze.</td>
</tr>
<tr>
<td>{{ releases.c.date|default:"TBD" }}</td>
<td>Django {{ series }} RC 1; translation string freeze.</td>
</tr>
<tr>
<td>{{ releases.f.date|default:"TBD" }}</td>
<td>Django {{ series }} final.</td>
</tr>
</tbody>
</table>
</div>
<section id="process">
<h3>Process</h3>
<p>Any features not completed by the feature freeze date won't make it into {{ series }}.</p>
<p>The release manager will keep the schedule updated and ensure efficient
routing of issues and reminders for deadlines.</p>
<section id="feature-freeze-alpha-1">
<h4>Feature freeze / Alpha 1</h4>
<p>All major and minor features must be merged by the Alpha 1 deadline. Any
features not done by this point will be deferred or dropped. At this time, we
will fork <code>stable/{{ series }}.x</code> from <code>main</code>.</p>
<p>After the alpha, non-release blocking bug fixes may be backported at the
mergers' discretion.</p>
</section>
<section id="beta-1">
<h4>Beta 1</h4>
<p>Beta 1 marks the end of changes that aren't release blocking bugs. Only release
blocking bug fixes will be allowed to be backported after the beta.</p>
</section>
<section id="rc-1">
<h4>RC 1</h4>
<p>If release blockers are still coming in at the planned release candidate date,
we'll release beta 2 to encourage further testing. RC 1 marks the freeze for
translation strings; translators will have two weeks to submit updates. Release
blocking bug fixes may continue to be backported.</p>
</section>
<section id="final">
<h4>Final</h4>
<p>Django {{ series }} final will ideally ship two weeks after the last RC. If no major bugs
are found by then, {{ series }} final will be issued; otherwise, the timeline will be
adjusted as needed.</p>
</section>
</section>
</section>
{% endblock %}
{% block content-related %}
<div role="complementary">
<h2 class="visuallyhidden" id="aside-header">Additional Information</h2>
{% donation_snippet %}
</div>
{% endblock %}
|