---
layout: default
---
<!--
# Licensed to the Apache Software Foundation (ASF) under one or more contributor
# license agreements; and to You under the Apache License, Version 2.0.
-->
<div id="whiskIndexedLayout">

    <!-- Community Index -->
    <div id="whiskIndex">
        <ul>
            <li><a href="#downloads">Downloads</a></li>

            <!-- Versioning -->
            <li><a href="#versioning">Versioning</a></li>

            <!-- Downloads -->
            <li class="index-menu-toggle"><a href="#apache-releases">Apache Releases</a></li>
            <ul class="index-menuitems">
                <li><a href="#verifying">Verifying</a></li>
                <li><a href="#keys">Keys</a></li>
                <li><a href="#component-releases">Component Releases</a></li>
            </ul>

            <!-- Nightly and incremental builds -->
            <li class="index-menu-toggle"><a href="#developer-builds">Developer Builds</a></li>

        </ul>
    </div>

    <section id="whiskNodes">
        <main class="doc">
            <div class="content">
                <a class="indexable" id="downloads"></a>
                <h2>Downloads</h2>
                <div class="collapsible-content">
                  <p>This page contains links to the official project source code downloads by release.</p>
                </div>
            </div>
        </main>

        <main class="doc">
            <div class="content">
                <a class="indexable" id="versioning"></a>
                <h3>Versioning</h3>
                <p>Apache OpenWhisk uses semantic versioning. Version numbers
                  use the form <code>major.minor.incremental-build</code> and
                  are incremented as follows:</p>
                    <ul>
                      <li><em>major version</em>: for incompatible API changes.</li>
                      <li><em>minor version</em>: for new functionality added in a backward-compatible manner.</li>
                      <li><em>incremental version</em>: for forward-compatible bug fixes.</li>
                      <li><em>build</em>: optional postfix to distinguish intermediate builds.</li>
                    </ul>
            </div>
        </main>

        <main class="doc">
            <div class="content">
                <a class="indexable" id="apache-releases"></a>
                <h3>Apache Releases</h3>
                <p>The Apache OpenWhisk project provides official releases of
                  source code, by component groupings, as TAR compressed
                  archives files denoted by the <em>.tar.gz</em> extension)
                  in accordance with the Apache Software Foundation (ASF)
                  <a style="font-weight:normal;" href="http://www.apache.org/legal/release-policy.html">
                    release policy</a>.
                </p>
                <p>Developers who wish to use nightly builds or interim builds
                  should read about them below under
                  <a style="font-weight:normal;" href="#developer-builds">Developer Builds</a>.
                </p>
                <p>
                  Older releases are archived at
                    <ul>
                        <li><a style="font-weight:normal;" href="http://archive.apache.org/dist/incubator/openwhisk/">archive.apache.org (incubator releases)</a>
                         and</li>
                        <li><a style="font-weight:normal;" href="http://archive.apache.org/dist/openwhisk/">archive.apache.org</a>.</li>
                    </ul>
                </p>
                <a class="indexable" id="verifying"></a>
                <h4>Verifying</h4>
                <p>As an Apache project, all official release artifacts are provided as compressed archives and are signed by a
                  project Release Manager and can be verified following these instructions:</p>
                <ul>
                    <li><a href="https://www.apache.org/info/verification">How to verify downloaded files</a></li>
                </ul>

                <a class="indexable" id="keys"></a>
                <h4>Keys</h4>
                <p>You can access the <a href="https://downloads.apache.org/openwhisk/KEYS">Release Keys</a> to verify the release artifacts.</p>

                <a class="indexable" id="unified-releases"></a>
                <h4>Unified Releases</h4>
                <p>A complete OpenWhisk system combines a number of
                   software components including action runtimes, CLI
                   tools, the core platform, the package catalog,
                   event providers, and deployment packaging. The
                   project makes periodic time-based unified releases
                   that bundle a compatible set of OpenWhisk's individually
                   released software components to make it easier for
                   users to install a coherent and complete OpenWhisk
                   system on their own machines.</p>
                <p>The available unified releases are:
                  <ul>
                    <li><a href="https://www.apache.org/dyn/closer.cgi/openwhisk/20.11">20.11</a> (Released November 29, 2020).</li>
                  </ul>
                </p>

                <a class="indexable" id="component-releases"></a>
                <h4>Component Releases</h4>
                <p>Individual downloads of the latest released version of each OpenWhisk component are available.  Components are grouped by their role in the platform.</p>
                <p>Please click on a platform role to see the individual downloadable components:</p>
                <h5 class="section-toggle section-toggle-start-open">Core System</h5>
                <div class="section-start-open">
                  <div class="content">
                    <div class="flow-columns">
                      <div class="component-releases-structure theme-deeper-sea-green">
                        <p><ctitle>OpenWhisk</ctitle>Core OpenWhisk Platform Components.</p>
                        <div class="component-release-artifact-list border-deeper-sea-green">
                          <version>1.0.0</version>
                          <a href="https://www.apache.org/dyn/closer.cgi/openwhisk/OpenWhisk-1.0.0-sources.tar.gz">
                            Source code</a>
                          <a href="https://downloads.apache.org/openwhisk/OpenWhisk-1.0.0-sources.tar.gz.sha512">SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/OpenWhisk-1.0.0-sources.tar.gz.asc">PGP signature</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-deeper-sea-green">
                        <p><ctitle>OpenWhisk API Gateway</ctitle>A performant, OpenWhisk-enabled API Gateway based on Openresty and NGINX.</p>
                        <div class="component-release-artifact-list border-deeper-sea-green">
                          <version>1.0.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-apigateway-1.0.0-sources.tar.gz">Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-apigateway-1.0.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-apigateway-1.0.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-deeper-sea-green">
                        <p><ctitle>OpenWhisk Deploy Kubernetes</ctitle>Helm chart for deploying OpenWhisk on Kubernetes.</p>
                        <div class="component-release-artifact-list border-deeper-sea-green">
                          <version>1.0.0</version>
                          <a href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-deploy-kube-1.0.0-sources.tar.gz">
                            Source code</a>
                          <a href="https://downloads.apache.org/openwhisk/openwhisk-deploy-kube-1.0.0-sources.tar.gz.sha512">SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-deploy-kube-1.0.0-sources.tar.gz.asc">PGP signature</a>
                        </div>
                      </div>

                    </div>
                  </div>
                </div>

                <h5 class="section-toggle section-toggle-start-open ">Action Runtimes</h5>
                <div class="section-start-open">
                  <div class="content">
                   <div class="flow-columns">

                      <div class="component-releases-structure theme-deeper-sky-blue">
                        <p><ctitle>OpenWhisk Runtime Docker</ctitle>The Apache OpenWhisk Runtime SDK for building Docker “blackbox" runtimes.</p>
                        <div class="component-release-artifact-list border-deeper-sky-blue">
                          <version>1.15.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-runtime-docker-1.15.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-docker-1.15.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-docker-1.15.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-deeper-sky-blue">
                        <p><ctitle>OpenWhisk Runtime Dotnet</ctitle>Supports functions written for .NET Core v3.1 and 6.0.</p>
                        <div class="component-release-artifact-list border-deeper-sky-blue">
                          <version>1.17.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-runtime-dotnet-1.17.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-dotnet-1.17.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-dotnet-1.17.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-deeper-sky-blue">
                        <p><ctitle>OpenWhisk Runtime Go</ctitle>Supports functions written for GoLang v1.19 and v1.20.</p>
                        <div class="component-release-artifact-list border-deeper-sky-blue">
                          <version>1.22.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-runtime-go-1.22.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-go-1.22.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-go-1.22.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-deeper-sky-blue">
                        <p><ctitle>OpenWhisk Runtime Java</ctitle>Supports functions written for Java 8 (OpenJDK 8, JVM OpenJ9).</p>
                        <div class="component-release-artifact-list border-deeper-sky-blue">
                          <version>1.18.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-runtime-java-1.18.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-java-1.18.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-java-1.18.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-deeper-sky-blue">
                        <p><ctitle>OpenWhisk Runtime Node.js</ctitle>Supports functions written for Node.js v16 or v18.</p>
                        <div class="component-release-artifact-list border-deeper-sky-blue">
                          <version>1.21.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-runtime-nodejs-1.21.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-nodejs-1.21.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-nodejs-1.21.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-deeper-sky-blue">
                        <p><ctitle>OpenWhisk Runtime PHP</ctitle>Supports functions written for PHP v7.4, v8.0, or v8.1</p>
                        <div class="component-release-artifact-list border-deeper-sky-blue">
                          <version>1.18.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-runtime-php-1.18.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-php-1.18.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-php-1.18.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-deeper-sky-blue">
                        <p><ctitle>OpenWhisk Runtime Python</ctitle>Supports functions written for Python v3 and v3AI which includes AI library support.</p>
                        <div class="component-release-artifact-list border-deeper-sky-blue">
                          <version>1.17.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-runtime-python-1.17.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-python-1.17.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-python-1.17.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-deeper-sky-blue">
                        <p><ctitle>OpenWhisk Runtime Ruby</ctitle>Supports functions written for Ruby v2.5 and v2.6.</p>
                        <div class="component-release-artifact-list border-deeper-sky-blue">
                          <version>1.17.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-runtime-ruby-1.17.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-ruby-1.17.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-ruby-1.17.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-deeper-sky-blue">
                        <p><ctitle>OpenWhisk Runtime Rust</ctitle>Supports functions written for Rust v1.34.</p>
                        <div class="component-release-artifact-list border-deeper-sky-blue">
                          <version>1.3.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-runtime-rust-1.3.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-rust-1.3.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-rust-1.3.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-deeper-sky-blue">
                        <p><ctitle>OpenWhisk Runtime Swift</ctitle>Supports functions written for Swift v4.2, v5.1, v5.3, v5.4</p>
                        <div class="component-release-artifact-list border-deeper-sky-blue">
                          <version>1.17.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-runtime-swift-1.17.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-swift-1.17.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-runtime-swift-1.17.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                   </div>
                  </div>
                </div>

                <h5 class="section-toggle section-toggle-start-open ">Tools for Developers</h5>
                <div class="section-start-open">
                  <div class="content">
                    <div class="flow-columns">
                      <div class="component-releases-structure theme-darkgoldenrod">
                        <p><ctitle>OpenWhisk CLI</ctitle>OpenWhisk command-line interface.</p>
                        <div class="component-release-artifact-list border-darkgoldenrod">
                          <version>1.2.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-cli-1.2.0-sources.tar.gz">Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-cli-1.2.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-cli-1.2.0-sources.tar.gz.asc">
                            PGP signature</a>
                          <a
                            href="https://github.com/apache/openwhisk-cli/releases/tag/1.2.0">
                            Binaries (GitHub, unofficial)</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-darkgoldenrod">
                        <p><ctitle>OpenWhisk Whisk Deploy (wskdeploy)</ctitle>Client utility to deploy, configure and manage OpenWhisk applications and packages with a single YAML Manifest file.</p>
                        <div class="component-release-artifact-list border-darkgoldenrod">
                          <version>1.2.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-wskdeploy-1.2.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-wskdeploy-1.2.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-wskdeploy-1.2.0-sources.tar.gz.asc">
                            PGP signature</a>
                          <a
                            href="https://github.com/apache/openwhisk-wskdeploy/releases/tag/1.2.0">
                            Binaries (GitHub, unofficial)</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-darkgoldenrod">
                        <p><ctitle>OpenWhisk Whisk Debug (wskdebug)</ctitle>Debugging and live development tool for OpenWhisk</p>
                        <div class="component-release-artifact-list border-darkgoldenrod">
                          <version>1.4.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-wskdebug-1.4.0-sources.tar.gz">Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-wskdebug-1.4.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-wskdebug-1.4.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-darkgoldenrod">
                        <p><ctitle>OpenWhisk Client Go</ctitle>OpenWhisk client library in Go.</p>
                        <div class="component-release-artifact-list border-darkgoldenrod">
                          <version>1.2.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-client-go-1.2.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-client-go-1.2.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-client-go-1.2.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-darkgoldenrod">
                        <p><ctitle>OpenWhisk Client JS</ctitle>JavaScript client library for the OpenWhisk platform</p>
                        <div class="component-release-artifact-list border-darkgoldenrod">
                          <version>3.21.7</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-client-js-3.21.7-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-client-js-3.21.7-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-client-js-3.21.7-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                    </div>
                  </div>
                </div>

                <h5 class="section-toggle section-toggle-start-open ">Package Catalog and Composer</h5>
                <div class="section-start-open">
                  <div class="content">
                    <div class="flow-columns">
                      <div class="component-releases-structure theme-deeper-aquamarine">
                        <p><ctitle>OpenWhisk Catalog</ctitle>Package catalogs of OpenWhisk, which provides an easy way to enhance your application with useful capabilities, and to access external services in the ecosystem.</p>
                        <div class="component-release-artifact-list border-deeper-aquamarine">
                          <version>1.0.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-catalog-1.0.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-catalog-1.0.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-catalog-1.0.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                      <div class="component-releases-structure theme-deeper-aquamarine">
                        <p><ctitle>OpenWhisk Composer</ctitle>Composer is a new programming model for composing cloud functions built on OpenWhisk</p>
                        <div class="component-release-artifact-list border-deeper-aquamarine">
                          <version>0.12.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-composer-0.12.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-composer-0.12.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-composer-0.12.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>

                <h5 class="section-toggle section-toggle-start-open ">Provider Packages</h5>
                <div class="section-start-open">
                  <div class="content">
                    <div class="flow-columns">
                      <div class="component-releases-structure theme-darksalmon">
                        <p><ctitle>OpenWhisk Package Alarms</ctitle>Apache OpenWhisk package that can be used to create periodic, time-based alarms </p>
                        <div class="component-release-artifact-list border-darksalmon">
                          <version>2.3.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-package-alarms-2.3.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-package-alarms-2.3.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-package-alarms-2.3.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>

                      <!--
                           !!! DO NOT REMOVE THIS COMMENT SECTION !!!
                           We have not made a post-incubation release of this package yet.
                           Hide the download until we do.  The old one is not really usable (NodeJS 6 based)
                           and was removed from the downloads section a while ago.

                      <div class="component-releases-structure theme-darksalmon">
                        <p><ctitle>OpenWhisk Package Cloudant</ctitle>Apache OpenWhisk package that can be used to interact with a Cloudant database</p>
                        <div class="component-release-artifact-list border-darksalmon">
                          <version>2.0.0-incubating</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/incubating/openwhisk-package-cloudant-2.0.0-incubating-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/incubating/openwhisk-package-cloudant-2.0.0-incubating-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/incubating/openwhisk-package-cloudant-2.0.0-incubating-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>
                      -->

                      <div class="component-releases-structure theme-darksalmon">
                        <p><ctitle>OpenWhisk Package Kafka</ctitle>Apache OpenWhisk package for communicating with Kafka</p>
                        <div class="component-release-artifact-list border-darksalmon">
                          <version>2.1.0</version>
                          <a
                            href="https://www.apache.org/dyn/closer.cgi/openwhisk/openwhisk-package-kafka-2.1.0-sources.tar.gz">
                            Source code</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-package-kafka-2.1.0-sources.tar.gz.sha512">
                            SHA-512 checksum</a>
                          <a
                            href="https://downloads.apache.org/openwhisk/openwhisk-package-kafka-2.1.0-sources.tar.gz.asc">
                            PGP signature</a>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
            </div>
        </main>

      <main class="doc">
        <div class="content">
          <a class="indexable" id="developer-builds"></a>
          <h3>Developer Builds</h3>
          <p>Most of the Apache OpenWhisk project component repositories
            are configured within GitHub to automatically generate interim
            builds (not
            <a href="#apache-releases">official release builds</a>)
            for each merged Pull Request (PR) and/or on
            a nightly basis.  These builds, by default, are tagged
            <b><em>'nightly'</em></b> and appear under their respective GitHub
            component's release tab and are intended for developer
            evaluation and testing only.
          </p>
          <p>In some special cases,
            Committers on the project may choose to use GitHub to tag
            certain builds as they become closer to being Release Candidate
            (RC) builds.  However, <em>any build tagged within GitHub with
            either 'nightly' or any other tag <strong>do NOT have
            official Apache project release status</strong>.</em>
            All official Apache OpenWhisk release builds
            undergo a rigorous process to be approved and are linked
            <a style="font-weight:normal;" href="#apache-releases">above</a>.
          </p>
          <p>To be clear, <strong>GitHub "releases" are not official
            Apache OpenWhisk project releases.</strong>
          </p>
        </div>
      </main>

    </section>
</div>
