---
layout: post
status: PUBLISHED
published: true
title: 'Apache Month in Review: October 2020'
author:
  display_name: Swapnil M Mane
  login: swapnilmmane
  email: swapnilmmane@apache.org
author_login: swapnilmmane
author_email: swapnilmmane@apache.org
id: a689e7a5-4858-4e92-8a33-134159630172
date: '2020-11-01 15:33:18 -0500'
categories:
- Newsletter
tags:
- round-up
- projects
- '2020'
- news
- summary
- software
- monthly
- october
- apache
- initiatives
- foundation
- community
comments: []
permalink: foundation/entry/apache-month-in-review-october
---
</p>
<p><i><span style="font-weight: 700;">Welcome to the latest monthly overview of events from the Apache community. Here's a summary of what happened in October:</span></i></p>
<p><span style="font-weight: 700;">New this month --</span></p>
<p>&nbsp;- ApacheCon&trade;&nbsp;&ndash; the ASF's official global conference series, bringing Tomorrow's Technology Today since 1998.<br>&nbsp;&nbsp; -- ApacheCon@Home 2020 was a huge success&nbsp;<a href="https://blogs.apache.org/conferences/entry/apachecon-home-2020-was-a" target="_blank">https://blogs.apache.org/conferences/entry/apachecon-home-2020-was-a</a><br>&nbsp; &nbsp;-- All sessions, including Plenaries and Keynotes from ApacheCon@Home are available&nbsp;<a href="https://www.youtube.com/c/TheApacheFoundation/" target="_blank">https://www.youtube.com/c/TheApacheFoundation/</a> <br></p>
<p>&nbsp;<span class="il">- Apache</span> Software Foundation Operations Summary: Q1 FY2021 (May - July 2020) <a href="https://s.apache.org/2mefr" rel="noreferrer" target="_blank">https://s.apache.org/2mefr</a></p>
<p>&nbsp;- The Apache Software Foundation Celebrates 20 Years of OpenOffice&nbsp;<a href="https://s.apache.org/86lex" target="_blank">https://s.apache.org/86lex</a></p>
<p>&nbsp;- "Inside Infra" &ndash; the interview series featuring members of the ASF Infrastructure team<br>&nbsp; &nbsp;-- Daniel Gruno --Part II <a href="https://s.apache.org/InsideInfra-Daniel2" target="_blank">https://s.apache.org/InsideInfra-Daniel2</a></p>
<p>&nbsp;- Apache Month in Review: September 2020 <a href="https://s.apache.org/Sep2020" target="_blank">https://s.apache.org/Sep2020</a></p>
<p><br><span style="font-weight: 700;">Important Dates --</span></p>
<p><span style="font-weight: 700;"></span>&nbsp; - Next Board Meeting: 18 November 2020. Board calendar and minutes <a href="http://apache.org/foundation/board/calendar.html" target="_blank">http://apache.org/foundation/board/calendar.html</a></p>
<p><br><span style="font-weight: 700;">Infrastructure --</span></p>
<div>Our<br />
 seven-member Infrastructure team on three continents oversees our<br />
highly-reliable, distributed network under the leadership of VP<br />
Infrastructure David Nalley and Infrastructure Administrator Greg Stein.<br />
 ASF Infrastructure supports 300+ Apache projects and their communities<br />
across ~200 individual machines, 1,400+ repositories, 5-6PB in traffic<br />
annually, ~75M downloads per month, and 2-3M daily emails on 2,000+<br />
lists. ASF Infra performs 7M+ weekly checks to ensure services are available around the clock. The average uptime in October was 100%. <a href="http://www.apache.org/uptime/" target="_blank">http://www.apache.org/uptime/</a><b><br></b></div>
<div><b><br></b></div>
<div><b>Committer Activity --</b></div>
<p>
In October, 789 Apache Committers changed 12,272,284 lines of code over 15,524 commits. The Committers with the top 5 highest<br />
contributions, in order, were: Andrea Cosentino, Claus Ibsen, Mark Miller, Mark<br />
Thomas, and Andi Huber. <br> <br></p>
<p><b>Project Releases and Updates --</b></p>
<p>New releases from Apache Ant (Build Management);&nbsp;Any23 (Content); Arrow (Big Data); APISIX (API); BookKeeper (Big Data); Calcite (Big Data); Camel (Integration); Commons DBCP (Libraries); Commons NET (Libraries); Commons Pool (Libraries); Druid (Big Data);&nbsp;Flink (Big Data); Groovy (Programming Languages); Hadoop (Big Data); HBase (Big Data); HttpComponents Client (Servers); <span class="il">Ignite (</span><span class="il">Data Management Platform); </span>Jackrabbit (Content); Kylin (Big Data); Lucene (Search);&nbsp;NiFi (Big Data); Oak (Content); OpenMeetings (Web Conferencing); Pulsar (Messaging); Qpid Broker (Messaging); Skywalking (Application Performance Management); Solr (Search); Struts (Web Frameworks); Tomcat (Servers);&nbsp;Tuweni (Blockchain); Wicket (Web Frameworks); XMLBeans (Library).</p></p>
<p>The<br />
 Apache Incubator is the primary entry path for projects we invite you to review the many projects currently in development in the Apache Incubator <a href="http://incubator.apache.org/" target="_blank">http://incubator.apache.org/</a>&nbsp;. New releases from incubating podlings include: Apache Teaclave (Incubating; Computing); <span class="il">StreamPipes (</span><span class="il">Incubating; IoT);</span> TVM (Incubating; Machine Learning).<span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"></span></p>
<p># # #</p>
<p>To see our Weekly News Round-ups, visit <a href="https://blogs.apache.org/foundation/" target="_blank">https://blogs.apache.org/foundation/</a>&nbsp;and click on the calendar in the upper-right side (published every Friday) or hop directly to <a href="https://blogs.apache.org/foundation/category/Newsletter" target="_blank">https://blogs.apache.org/foundation/category/Newsletter</a>&nbsp;.<br />
 For real-time updates, sign up for Apache-related news by sending mail<br />
to announce-subscribe@apache.org and follow @TheASF on Twitter. We appreciate your support!</p></p>
