]> granicus.if.org Git - apache/blob - STATUS
* Vote and comment
[apache] / STATUS
1 APACHE 2.4 STATUS:                        -*- mode: text; coding: utf-8 -*-
2 Last modified at [$Date$]
3
4 The current version of this file can be found at:
5
6   * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x/STATUS
7
8 Documentation status is maintained separately and can be found at:
9
10   * docs/STATUS in this source tree, or
11   * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x/docs/STATUS
12
13 The current development branch of this software can be found at:
14
15   * http://svn.apache.org/repos/asf/httpd/httpd/trunk
16
17 Consult the following STATUS files for information on related projects:
18
19   * http://svn.apache.org/repos/asf/apr/apr/trunk/STATUS
20   * http://svn.apache.org/repos/asf/apr/apr/branches/1.4.x/STATUS
21   * http://svn.apache.org/repos/asf/apr/apr-util/branches/1.4.x/STATUS
22   * http://svn.apache.org/repos/asf/apr/apr/branches/1.5.x/STATUS
23   * http://svn.apache.org/repos/asf/apr/apr-util/branches/1.5.x/STATUS
24
25 Patches considered for backport are noted in their branches' STATUS:
26
27   * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.0.x/STATUS
28   * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x/STATUS
29   * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x/STATUS
30
31
32
33 Release history:
34     [NOTE that x.{odd}.z versions are strictly Alpha/Beta releases,
35           while x.{even}.z versions are Stable/GA releases.]
36
37     2.4.19  : In development.
38     2.4.18  : Tagged on December 8, 2015. Released on Decmber 14, 2015.
39     2.4.17  : Tagged on October 9, 2015. Released October 13, 2015.
40     2.4.16  : Tagged on July 9, 2015. Released July 15, 2015
41     2.4.15  : Tagged on June 19, 2015. Not released.
42     2.4.14  : Tagged on June 11, 2015. Not released.
43     2.4.13  : Tagged on June 4, 2015. Not released.
44     2.4.12  : Tagged on January 22, 2015. Released Jan 29, 2015
45     2.4.11  : Tagged on January 15, 2015. Not released.
46     2.4.10  : Tagged on July 15, 2014. Released July 21, 2014
47     2.4.9   : Tagged on March 13, 2014. Released on March 17, 2014
48     2.4.8   : Tagged on March 11, 2014. Not released.
49     2.4.7   : Tagged on November 19, 2013. Released on Nov 25, 2013
50     2.4.6   : Tagged on July 15, 2013. Released July, 22, 2013
51     2.4.5   : Tagged on July 11, 2013, not released.
52     2.4.4   : Tagged on February 18, 2013. Released Feb 25, 2013
53     2.4.3   : Tagged on August 17, 2012. Released Aug 18, 2012
54     2.4.2   : Tagged on April 5, 2012. Released Apr 17, 2012.
55     2.4.1   : Tagged on February 13, 2012. Released Feb 21, 2012.
56     2.4.0   : Tagged on January 16, 2012, not released.
57     2.3.16  : Tagged on December 15, 2011.
58     2.3.15  : Tagged on November 8, 2011. Released Nov. 15, 2011.
59     2.3.14  : Tagged on August 1, 2011. Released Aug. 9, 2011.
60     2.3.13  : Tagged on June 28, 2011, not released.
61     2.3.12  : Tagged on May 11, 2011. Released May 23, 2011.
62     2.3.11  : Released as Beta on March 7, 2011.
63     2.3.10  : Tagged on December 13, 2010. Released Dec 21, 2010.
64     2.3.9   : Tagged on November 23, 2010, not released.
65     2.3.8   : Tagged on August 24, 2010.
66     2.3.7   : Tagged on August 19, 2010, not released.
67     2.3.6   : Released on June 21, 2010.
68     2.3.5   : Released on January 26, 2010.
69     2.3.4   : Released on December 8, 2009.
70     2.3.3   : Tagged on November 11, 2009, not released.
71     2.3.2   : Tagged on March 23, 2009, not released.
72     2.3.1   : Tagged on January 2, 2009, not released.
73     2.3.0   : Tagged on December 6, 2008, not released.
74
75 Contributors looking for a mission:
76
77   * Just do an egrep on "TODO" or "XXX" in the source.
78
79   * Review the bug database at: http://issues.apache.org/bugzilla/
80
81   * Review the "PatchAvailable" bugs in the bug database:
82
83     https://issues.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&product=Apache+httpd-2&keywords=PatchAvailable
84
85     After testing, you can append a comment saying "Reviewed and tested".
86
87   * Open bugs in the bug database.
88
89   * See also the STATUS file in the docs/ directory, which lists documentation-specific TODO items.
90
91
92 CURRENT RELEASE NOTES:
93
94   * Forward binary compatibility is expected of Apache 2.4.x releases, such
95     that no MMN major number changes will occur after 2.4.1.  Such changes can
96     only be made in the trunk.
97
98   * All commits to branches/2.4.x must be reflected in SVN trunk,
99     as well, if they apply.  Logical progression is commit to trunk
100     then merge into branches/2.4.x, as applicable.
101
102   * Current exceptions for RTC for this branch:
103     . http/2 - mod_http2
104     . mod_lua
105     . documentation
106     . non-Unix build
107     . non-Unix, single-platform code
108
109 RELEASE SHOWSTOPPERS:
110
111
112 PATCHES ACCEPTED TO BACKPORT FROM TRUNK:
113   [ start all new proposals below, under PATCHES PROPOSED. ]
114
115
116
117 PATCHES PROPOSED TO BACKPORT FROM TRUNK:
118   [ New proposals should be added at the end of the list ]
119
120   *) mod_alias: Introduce expression parser support for Alias, ScriptAlias
121      and Redirect. Limit Redirect expressions to directory (Location) context
122      and redirect statuses (implicit or explicit).
123      trunk patch: http://svn.apache.org/r1653941
124                   http://svn.apache.org/r1653978
125                   http://svn.apache.org/r1656225
126                   http://svn.apache.org/r1686853
127                   http://svn.apache.org/r1686856
128      2.4.x patch: https://people.apache.org/~minfrin/httpd-mod_alias-expr2.patch
129      +1: minfrin, jim, rpluem
130
131   *) mod_ssl: Free dhparams when getting DH params. This fixes issue when
132      SSLCryptoDevice does not get unregistered because of non-zero refcount
133      during the mod_ssl unload happening on httpd startup.
134      trunk patch: http://svn.apache.org/r1720129
135      2.4.x patch: http://jkaluza.fedorapeople.org/httpd-2.4.x-dhparams-free.patch
136      +1: jkaluza
137      ylavic: +1 with r1723295 (likewise for ecparams).
138      rpluem says: Can we get an updated 2.4.x proposal that includes r1723295?
139
140   *) mod_cache_socache: Fix a possible cached entity body corruption when it
141      is received from an origin server in multiple batches and forwarded by
142      mod_proxy.
143      trunk patch: http://svn.apache.org/r1721899
144      2.4.x patch: trunk works, module CHANGES
145      +1: ylavic, jim, rpluem
146
147   *) mod_ssl: Add SSLOCSPProxyURL to add the possibility to do all queries
148      to OCSP responders through a HTTP proxy.
149      Trunk version of patch:
150          http://svn.apache.org/r1726881
151          http://svn.apache.org/r1727111
152      Backport version for 2.4.x of patch:
153          Trunk version of patch works modulo CHANGES
154      +1: rpluem, jim
155
156   *) mod_proxy_hcheck: Dynamic reverse proxy backend health check module
157      Trunk version of patch: <various>
158      Backport version for 2.4.x of patch:
159          http://home.apache.org/~jim/patches/hcheck-2.4.patch
160          <Plus docs>
161      +1: jim
162
163   *) core: Track the useragent_host per-request when mod_remoteip or similar
164      modules track a per-request useragent_ip.  Modules should be updated
165      to inquire for ap_get_useragent_host() in place of ap_get_remote_host().
166      Trunk version of patch:
167          http://svn.apache.org/r1729929
168      Trunk patch to core.c/http_core.h applies, modulo CHANGES & ap_mmn.h
169      Note: httpd.h comment r.e. realiging bit fields must be omitted.
170      +1: wrowe
171
172   *) hostname: Test and log useragent_host per-request across various modules,
173      including the scoreboard, expression and rewrite engines, setenvif,
174      authz_host, access_compat, custom logging, ssl and REMOTE_HOST variables.
175      PR55348  [William Rowe]
176      Trunk version of patch:
177          http://svn.apache.org/r1729930
178          http://svn.apache.org/r1729931
179      Trunk patch r1729930 applies, modulo CHANGES
180      Backport patch to r1729931 is noted in the commit log message
181      Requires r1729929 to be applied.
182      +1: wrowe
183  
184   *) core: introducing new hook "pre_close_connection" to give protocols other
185      than http/1.1 a chance to send one last frame before close. Scoreboard
186      additions to allow update from master connections.
187      Requires MMN bump
188      trunk patch:  http://svn.apache.org/r1727071
189                    http://svn.apache.org/r1727573
190      2.4.x patch:  trunk works (modulo CHANGES)
191      covener: needs MMN bump, but sorting out previous MMN question first.
192      jim: Status, re: MMN bump ??
193      icing: I am embarrassingly bad at this. I propose to include the scoreboard
194             additions into this bump and propose all this together. So the new
195             proposal is (including an old apr_time_now() optimization from jim
196             for scorebaord.c). And that now includes all backports necessary to
197             update mod_http2 in 2.4.x:
198      trunk patch:  
199                    http://svn.apache.org/r1417440
200                    http://svn.apache.org/r1727071
201                    http://svn.apache.org/r1727573
202                    http://svn.apache.org/r1726009
203                    http://svn.apache.org/r1726026
204                    http://svn.apache.org/r1729376
205                    http://svn.apache.org/r1729960
206      2.4.x patch:  trunk works (modulo CHANGES)
207      Resetting votes:
208      +1: icing, jim
209      rpluem says: +1, but I would like to see http://svn.apache.org/r1730865 added.
210
211   *) mod_watchdog: Error logging
212      trunk patch:  http://svn.apache.org/r1722154
213                    http://svn.apache.org/r1722701
214      2.4.x patch:  trunk works
215      +1: jim, rjung, rpluem
216
217   *) various: APLOGNO
218      trunk patch:  http://svn.apache.org/r1725485
219      2.4.x patch:  trunk works
220                    http://home.apache.org/~jim/patches/aplogno-2.4.patch
221      +1: jim, rjung, rpluem
222
223   *) mod_heartmonitor: No need to search twice for the same value + fix some style
224      trunk patch:  http://svn.apache.org/r1727842
225      2.4.x patch:  trunk works
226      +1: jailletc36, jim, rpluem
227
228   *) mod_proxy_wstunnel, mod_proxy_connect: Use the correct pool and allocator
229      lifetime when sending brigades and buckets down the filter chain to the
230      backend and the client in mod_proxy_wstunnel and mod_proxy_connect.
231      Trunk version of patch:
232           http://svn.apache.org/r1726776
233           http://svn.apache.org/r1726779
234           http://svn.apache.org/r1726781
235           http://svn.apache.org/r1726782
236           http://svn.apache.org/r1726787
237           http://svn.apache.org/r1727551
238           http://svn.apache.org/r1727553
239           http://svn.apache.org/r1727567
240           http://svn.apache.org/r1728478
241           http://svn.apache.org/r1728481
242           http://svn.apache.org/r1730823
243      Backport version for 2.4.x of patch:
244         http://home.apache.org/~rpluem/patches/proxy_correctlifetime.diff
245      +1: rpluem,
246
247 PATCHES/ISSUES THAT ARE BEING WORKED
248
249    * core: Fix crash in ap_mpm_pod_check call caused by NULL dereference of
250           its parameter when starting httpd as single process (httpd -X).
251      trunk patch: http://svn.apache.org/r1711479
252      2.4.x patch: trunk works
253      +1: jkaluza, jim
254      minfrin: Needs extra parens to suppress a warning:
255               prefork.c:1319:16: note: place parentheses around the assignment
256               to silence this warning
257      jailletc36: This has been done in r1711919
258      ylavic: Also, I don't think the changes on worker/event are needed,
259              only prefork requires the accept mutex in ONE_PROCESS mode.
260
261   *) http: Don't remove the Content-Length of zero from a HEAD response if
262      it comes from an origin server, module or script. Allow the previous
263      behaviour (for legacy/buggy modules only, not origin) by also backporting
264      the HttpContentLengthHeadZero directive (and also HttpExpectStrict which
265      comes for free with the same commit).
266      trunk patch: http://svn.apache.org/r1554303
267                   http://svn.apache.org/r1678215
268      2.4.x patch: http://people.apache.org/~ylavic/httpd-2.4.x-preserve_head_cl_zero.patch
269      +1: ylavic, jim
270      ylavic: r1554303 issued a major MMN bump, but since the ABI change is two
271              ints added at the end of core_server_config, the proposed merge
272              does a minor bump only.
273      minfrin: Two new directives need to be documented.
274
275    * mod_proxy_http: Don't establish or reuse a backend connection before pre-
276      fetching the request body, so to minimize the delay between it is supposed
277      to be alive and the first bytes sent: this is a best effort to prevent the
278      backend from closing because of idle or keepalive timeout in the meantime.
279      Also, handle a new "proxy-flushall" environment variable which allows to
280      flush any forwarded body data immediately. PR 56541+37920.
281      trunk patch: http://svn.apache.org/r1656259
282                   http://svn.apache.org/r1656359 (CHANGES entry)
283      2.4.x patch: trunk works (modulo CHANGES, docs/log-message-tags)
284      +1: ylavic
285      -0: jim:  This seems to be a hit to normal performance, to handle an
286                error and/or non-normal condition. The pre-fetch is
287                expensive, and is always done, even before we know that
288                the backend is available to rec' it. I understand the
289                error described, but is the fix actually worth it (plus
290                it seems to allow for a DDoS vector).
291      ylavic: It seems to me that the problem is real since we reuse the
292              connection before prefetching 16K (either controlled by the
293              client, or by an input filter), we currently always prefetch
294              these bytes already. Regarding performance I don't see any
295              difference (more cycles) compared with the current code.
296              However I think I failed to rebuild the header_brigade when
297              the proxy loop is retried (ping), so I need to rework this.
298              Do you think we'd better remove the prefetch, or maybe just
299              make it nonblocking (by default)?
300         jim: Non-blocking seems the best way to handle...
301
302 PATCHES/ISSUES THAT ARE STALLED
303
304    * core: Add ap_errorlog_provider to make ErrorLog logging modular. This
305            backport keeps syslog logging as part of httpd core and only adds
306            API to allow other modules to be used for error logging.
307      trunk patch: http://svn.apache.org/r1525597
308                   http://svn.apache.org/r1525664
309                   http://svn.apache.org/r1525845
310                   http://svn.apache.org/r1527003
311                   http://svn.apache.org/r1527005
312                   http://svn.apache.org/r1532344
313                   http://svn.apache.org/r1539988
314                   http://svn.apache.org/r1541029
315                   http://svn.apache.org/r1543979
316                   http://svn.apache.org/r1544156
317                   http://svn.apache.org/r1626978
318      2.4.x patch: http://people.apache.org/~jkaluza/patches/httpd-2.4.x-errorlog_provider.patch
319      +1: jkaluza
320      +1: covener w/ doc or code to fix syntax (providername:providerarg not supported like syslog or socacheproviders, 
321                  needs 2 args which is not valid in ErrorLog manual)
322      trawick: nit: fix "writing" in "/* NULL if we are writting to syslog */"
323               (sorry, haven't finished reviewing completely)
324      jim: What is the status of this??
325
326    * mod_proxy: Add ap_proxy_define_match_worker() and use it for ProxyPassMatch
327      and ProxyMatch section to distinguish between normal workers and workers
328      with regex substitutions in the name. Implement handling of such workers
329      in ap_proxy_get_worker(). Fixes the bug when regex workers were not
330      matched and used for request. PR 43513.
331      trunk patch: http://svn.apache.org/r1609680
332                   http://svn.apache.org/r1609688
333                   http://svn.apache.org/r1641381
334      ylavic: Merge patch provided (reusing new->real to avoid double de_socketfy() call).
335              Also added missing r1609688 to the patchset.
336      2.4.x patch: http://people.apache.org/~ylavic/httpd-2.4.x-ap_proxy_define_match_worker.patch
337      +1: ylavic
338      -0: covener tried to review this one in Austin with Jeff.  Does the added match function 
339          really cover a very narrow set of parameters with the way it skips over backreferences?
340          Also, why a new API vs. just setting the field inline?
341
342    * mod_systemd: New module, for integration with systemd on Linux.
343      trunk patch: http://svn.apache.org/r1393976
344                   http://svn.apache.org/r1393997
345                   http://svn.apache.org/r1484554
346                   http://svn.apache.org/r1528032
347                   http://svn.apache.org/r1528034
348                   http://svn.apache.org/r1614821
349                   http://svn.apache.org/r1618579
350                   http://svn.apache.org/r1618588
351      2.4.x patch: http://people.apache.org/~jkaluza/patches/mod_systemd/httpd-2.4.x-mod_systemd.patch
352      +1: jkaluza
353
354    * mod_journald: Add new module mod_journald to log error logs into journald.
355                    This patch needs changes done in mod_systemd patch (already
356                    proposed for 2.4.x).
357      trunk patch: http://svn.apache.org/r1610339
358                   http://svn.apache.org/r1621806
359      2.4.x patch: http://people.apache.org/~jkaluza/patches/httpd-2.4.x-mod_journald.patch
360      +1: jkaluza, jim
361      rjung, minfrin: Not understanding "This patch needs changes done in
362                      mod_systemd patch", am I right in understanding this patch is
363                      already committed?
364      jkaluza: No, that patch is not committed yet. It is in STALLED section.
365               The link for that patch is: http://people.apache.org/~jkaluza/patches/mod_systemd/httpd-2.4.x-mod_systemd.patch
366
367    * core: Add support for systemd socket activation.
368      trunk patch: http://svn.apache.org/r1511033
369                   http://svn.apache.org/r1608686
370                   http://svn.apache.org/r1608694
371                   http://svn.apache.org/r1608703
372                   http://svn.apache.org/r1608721
373                   http://svn.apache.org/r1608744
374      2.4.x patch: http://people.apache.org/~jkaluza/patches/mod_systemd/httpd-2.4.x-socket-activation.patch
375      +1: jkaluza
376
377   * mod_proxy: Ensure network errors detected by the proxy are returned as
378     504 Gateway Timout as opposed to 502 Bad Gateway
379     trunk patch: https://svn.apache.org/viewvc?view=revision&revision=1480058
380     2.4.x patch: trunk patch works modulo CHANGES
381     +1:
382     -1: rpluem: This change is still disputed. See
383         http://mail-archives.apache.org/mod_mbox/httpd-dev/201305.mbox/%3C1B16B9E3-87BA-4EEF-939C-7C7313B54714%40gbiv.com%3E
384
385   * cross-compile: allow to provide CC_FOR_BUILD so that gen_test_char will be
386     compiled by the build compiler instead of the host compiler.
387     Also set CC_FOR_BUILD to 'cc' when cross-compilation is detected.
388     Trunk patches: http://svn.apache.org/viewvc?view=revision&revision=1327907
389                    http://svn.apache.org/viewvc?view=revision&revision=1328390
390                    http://svn.apache.org/viewvc?view=revision&revision=1328714
391     2.4 patch: http://people.apache.org/~fuankg/diffs/httpd-2.4.x-cross_compile.diff
392     fuankg: on hold until we agree for a better and more simple solution ...
393
394    * Makefile.win: Added copying of .vbs / .wsf CGIs to Windows install target.
395                    Moved fixing of shebang to separate target so that it is
396                    no longer executed by default and all CGIs remain inactive.
397      trunk patch: http://svn.apache.org/viewvc?view=revision&revision=1387984
398                   http://svn.apache.org/viewvc?view=revision&revision=1421203
399                   http://svn.apache.org/viewvc?view=revision&revision=1421591
400      2.4.x patch: http://people.apache.org/~fuankg/diffs/httpd-2.4.x-Makefile.win.diff
401      +1 fuankg, gsmith
402      -.8: trawick
403           This commit is essentially deciding that an httpd install on
404           Windows now has printenv/testcgi written in 2 more languages.
405           To the extent that the usefulness is that it shows how to make scripts
406           of these types executable by httpd, I believe that the documentation
407           is the proper place to solve that.  To the extent that the usefullness
408           is to show how to implement a CGI in these particular languages, I believe
409           that the httpd distribution and documentation in general is not the
410           place for that.  Historically these types of scripts have caused problems
411           for downstream vendorsas well as newbies (and sometimes the intersection
412           of those two groups) who don't understand that these are information leaks
413           once they are enabled, and the subtlety of the way they are disabled ("Apache
414           messed up the first line; let me fix that") contributes to that.
415      fuankg notes: I've just added a big warning to all CGI scripts which should now
416           make absolutely clear that these CGIs are for testing purpose only - so those
417           who enable those scripts with inserting the right shebang should be 100% aware
418           of any risks (this should cover your last point).
419      jim: trawick, does the above address your concerns?
420      trawick: to some extent (somebody reading the script gets an idea)
421           Why isn't the configuration requirement documented instead
422           of described indirectly in a sample?
423           Why are these new samples added to the install without three
424           votes?  (I didn't veto it; put your name next to the two
425           existing ones and I'll be satisified that enough people
426           considered this addition as an appropriate solution for a
427           real httpd usability problem.)
428      wrowe: I'd agree with trawick, and suggest that these scripts can begin
429             their life somewhere in the manual/ tree.  This really seems like
430             the place where /usr/share/httpd/examples/ would be useful, but
431             there isn't an ordinary directory for that.  Since we want none
432             of the scripts to function 'out of the box', what about a new
433             cgi-examples/ dir alongside cgi-bin/? Otherwise manual/cgi/examples
434             might work?
435