This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/datafusion-comet.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 582b54f6b Publish built docs triggered by
b07360e4e89fc11609b55fdd0d788490196e6735
582b54f6b is described below
commit 582b54f6b11e828c1a670742471ad76693cfe5bf
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Thu Feb 12 16:29:27 2026 +0000
Publish built docs triggered by b07360e4e89fc11609b55fdd0d788490196e6735
---
_sources/contributor-guide/index.md.txt | 1 +
_sources/contributor-guide/release_process.md.txt | 361 ++++++++++
_sources/user-guide/latest/compatibility.md.txt | 14 +-
_sources/user-guide/latest/configs.md.txt | 2 +
asf/index.html | 6 +-
contributor-guide/adding_a_new_expression.html | 1 +
contributor-guide/adding_a_new_operator.html | 1 +
contributor-guide/benchmarking.html | 1 +
contributor-guide/contributing.html | 1 +
contributor-guide/debugging.html | 1 +
contributor-guide/development.html | 1 +
contributor-guide/ffi.html | 1 +
contributor-guide/index.html | 10 +
contributor-guide/jvm_shuffle.html | 1 +
contributor-guide/native_shuffle.html | 1 +
contributor-guide/parquet_scans.html | 1 +
contributor-guide/plugin_overview.html | 1 +
contributor-guide/profiling_native_code.html | 1 +
contributor-guide/release_process.html | 826 ++++++++++++++++++++++
contributor-guide/roadmap.html | 7 +-
contributor-guide/spark-sql-tests.html | 1 +
contributor-guide/sql-file-tests.html | 1 +
contributor-guide/tracing.html | 1 +
objects.inv | Bin 1568 -> 1593 bytes
searchindex.js | 2 +-
user-guide/latest/compatibility.html | 14 +-
user-guide/latest/configs.html | 34 +-
27 files changed, 1258 insertions(+), 34 deletions(-)
diff --git a/_sources/contributor-guide/index.md.txt
b/_sources/contributor-guide/index.md.txt
index f5ebc43ed..2b6842e44 100644
--- a/_sources/contributor-guide/index.md.txt
+++ b/_sources/contributor-guide/index.md.txt
@@ -39,5 +39,6 @@ Profiling Native Code <profiling_native_code>
Spark SQL Tests <spark-sql-tests.md>
SQL File Tests <sql-file-tests.md>
Roadmap <roadmap.md>
+Release Process <release_process>
Github and Issue Tracker <https://github.com/apache/datafusion-comet>
```
diff --git a/_sources/contributor-guide/release_process.md.txt
b/_sources/contributor-guide/release_process.md.txt
new file mode 100644
index 000000000..55d93b077
--- /dev/null
+++ b/_sources/contributor-guide/release_process.md.txt
@@ -0,0 +1,361 @@
+<!---
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+
+# Apache DataFusion Comet: Release Process
+
+This documentation explains the release process for Apache DataFusion Comet.
+
+## Creating the Release Candidate
+
+This part of the process can be performed by any committer.
+
+Here are the steps, using the 0.1.0 release as an example.
+
+### Create Release Branch
+
+This document assumes that GitHub remotes are set up as follows:
+
+```shell
+$ git remote -v
+apache [email protected]:apache/datafusion-comet.git (fetch)
+apache [email protected]:apache/datafusion-comet.git (push)
+origin [email protected]:yourgithubid/datafusion-comet.git (fetch)
+origin [email protected]:yourgithubid/datafusion-comet.git (push)
+```
+
+Create a release branch from the latest commit in main and push to the
`apache` repo:
+
+```shell
+git fetch apache
+git checkout main
+git reset --hard apache/main
+git checkout -b branch-0.1
+git push apache branch-0.1
+```
+
+### Generate Release Documentation
+
+Generate the documentation content for this release. The docs on `main`
contain only template markers,
+so we need to generate the actual content (config tables, compatibility
matrices) for the release branch:
+
+```shell
+./dev/generate-release-docs.sh
+git add docs/source/user-guide/latest/
+git commit -m "Generate docs for 0.1.0 release"
+git push apache branch-0.1
+```
+
+This freezes the documentation to reflect the configs and expressions
available in this release.
+
+### Update Maven Version
+
+Update the `pom.xml` files in the release branch to update the Maven version
from `0.1.0-SNAPSHOT` to `0.1.0`.
+
+There is no need to update the Rust crate versions because they will already
be `0.1.0`.
+
+### Update Version in main
+
+Create a PR against the main branch to prepare for developing the next release:
+
+- Update the Rust crate version to `0.2.0`.
+- Update the Maven version to `0.2.0-SNAPSHOT` (both in the `pom.xml` files
and also in the diff files
+ under `dev/diffs`).
+
+### Generate the Change Log
+
+Generate a change log to cover changes between the previous release and the
release branch HEAD by running
+the provided `dev/release/generate-changelog.py`.
+
+It is recommended that you set up a virtual Python environment and then
install the dependencies:
+
+```shell
+cd dev/release
+python3 -m venv venv
+source venv/bin/activate
+pip3 install -r requirements.txt
+```
+
+To generate the changelog, set the `GITHUB_TOKEN` environment variable to a
valid token and then run the script
+providing two commit ids or tags followed by the version number of the release
being created. The following
+example generates a change log of all changes between the previous version and
the current release branch HEAD revision.
+
+```shell
+export GITHUB_TOKEN=<your-token-here>
+python3 generate-changelog.py 0.0.0 HEAD 0.1.0 > ../changelog/0.1.0.md
+```
+
+Create a PR against the _main_ branch to add this change log and once this is
approved and merged, cherry-pick the
+commit into the release branch.
+
+### Build the jars
+
+#### Setup to do the build
+
+The build process requires Docker. Download the latest Docker Desktop from
https://www.docker.com/products/docker-desktop/.
+If you have multiple docker contexts running switch to the context of the
Docker Desktop. For example -
+
+```shell
+$ docker context ls
+NAME DESCRIPTION DOCKER ENDPOINT
ERROR
+default Current DOCKER_HOST based configuration
unix:///var/run/docker.sock
+desktop-linux Docker Desktop
unix:///Users/parth/.docker/run/docker.sock
+my_custom_context *
tcp://192.168.64.2:2376
+
+$ docker context use desktop-linux
+```
+
+#### Run the build script
+
+The `build-release-comet.sh` script will create a docker image for each
architecture and use the image
+to build the platform specific binaries. These builder images are created
every time this script is run.
+The script optionally allows overriding of the repository and branch to build
the binaries from (Note that
+the local git repo is not used in the building of the binaries, but it is used
to build the final uber jar).
+
+```shell
+Usage: build-release-comet.sh [options]
+
+This script builds comet native binaries inside a docker image. The image is
named
+"comet-rm" and will be generated by this script
+
+Options are:
+
+-r [repo] : git repo (default:
https://github.com/apache/datafusion-comet.git)
+-b [branch] : git branch (default: release)
+-t [tag] : tag for the spark-rm docker image to use for building (default:
"latest").
+```
+
+Example:
+
+```shell
+cd dev/release && ./build-release-comet.sh && cd ../..
+```
+
+#### Build output
+
+The build output is installed to a temporary local maven repository. The build
script will print the name of the
+repository location at the end. This location will be required at the time of
deploying the artifacts to a staging
+repository
+
+### Tag the Release Candidate
+
+Tag the release branch with `0.1.0-rc1` and push to the `apache` repo
+
+```shell
+git fetch apache
+git checkout branch-0.1
+git reset --hard apache/branch-0.1
+git tag 0.1.0-rc1
+git push apache 0.1.0-rc1
+```
+
+Note that pushing a release candidate tag will trigger a GitHub workflow that
will build a Docker image and publish
+it to GitHub Container Registry at
https://github.com/apache/datafusion-comet/pkgs/container/datafusion-comet
+
+### Publishing Documentation
+
+In `docs` directory:
+
+- Update `docs/source/index.rst` and add a new navigation menu link for the
new release in the section `_toc.user-guide-links-versioned`
+- Add a new line to `build.sh` to delete the locally cloned `comet-*` branch
for the new release e.g. `comet-0.11`
+- Update the main method in `generate-versions.py`:
+
+```python
+ latest_released_version = "0.11.0"
+ previous_versions = ["0.8.0", "0.9.1", "0.10.1"]
+```
+
+Test the documentation build locally, following the instructions in
`docs/README.md`.
+
+Note that the download links in the installation guide will not work until the
release is finalized, but having the
+documentation available could be useful for anyone testing out the release
candidate during the voting period.
+
+## Publishing the Release Candidate
+
+This part of the process can mostly only be performed by a PMC member.
+
+### Publish the maven artifacts
+
+#### Setup maven
+
+##### One time project setup
+
+Setting up your project in the ASF Nexus Repository from here:
https://infra.apache.org/publishing-maven-artifacts.html
+
+##### Release Manager Setup
+
+Set up your development environment from here:
https://infra.apache.org/publishing-maven-artifacts.html
+
+##### Build and publish a release candidate to nexus.
+
+The script `publish-to-maven.sh` will publish the artifacts created by the
`build-release-comet.sh` script.
+The artifacts will be signed using the gpg key of the release manager and
uploaded to the maven staging repository.
+
+Note that installed GPG keys can be listed with `gpg --list-keys`. The gpg key
is a 40 character hex string.
+
+Note: This script needs `xmllint` to be installed. On macOS xmllint is
available by default.
+
+On Ubuntu `apt-get install -y libxml2-utils`
+
+On RedHat `yum install -y xmlstarlet`
+
+```shell
+
+/comet:$./dev/release/publish-to-maven.sh -h
+usage: publish-to-maven.sh options
+
+Publish signed artifacts to Maven.
+
+Options
+-u ASF_USERNAME - Username of ASF committer account
+-r LOCAL_REPO - path to temporary local maven repo (created and written to by
'build-release-comet.sh')
+
+The following will be prompted for -
+ASF_PASSWORD - Password of ASF committer account
+GPG_KEY - GPG key used to sign release artifacts
+GPG_PASSPHRASE - Passphrase for GPG key
+```
+
+example
+
+```shell
+/comet:$./dev/release/publish-to-maven.sh -u release_manager_asf_id -r
/tmp/comet-staging-repo-VsYOX
+ASF Password :
+GPG Key (Optional):
+GPG Passphrase :
+Creating Nexus staging repository
+...
+```
+
+In the Nexus repository UI (https://repository.apache.org/) locate and verify
the artifacts in
+staging
(https://central.sonatype.org/publish/release/#locate-and-examine-your-staging-repository).
+
+If the artifacts appear to be correct, then close and release the repository
so it is made visible (this should
+actually happen automatically when running the script).
+
+### Create the Release Candidate Tarball
+
+Run the create-tarball script on the release candidate tag (`0.1.0-rc1`) to
create the source tarball and upload it to
+the dev subversion repository
+
+```shell
+./dev/release/create-tarball.sh 0.1.0 1
+```
+
+This will generate an email template for starting the vote.
+
+### Start an Email Voting Thread
+
+Send the email that is generated in the previous step to
`[email protected]`.
+
+## Publishing Binary Releases
+
+Once the vote passes, we can publish the source and binary releases.
+
+### Publishing Source Tarball
+
+Run the release-tarball script to move the tarball to the release subversion
repository.
+
+```shell
+./dev/release/release-tarball.sh 0.1.0 1
+```
+
+### Create a release in the GitHub repository
+
+Go to https://github.com/apache/datafusion-comet/releases and create a release
for the release tag, and paste the
+changelog in the description.
+
+### Publishing Maven Artifacts
+
+Promote the Maven artifacts from staging to production by visiting
https://repository.apache.org/#stagingRepositories
+and selecting the staging repository and then clicking the "release" button.
+
+### Publishing Crates
+
+Publish the `datafusion-comet-spark-expr` crate to crates.io so that other
Rust projects can leverage the
+Spark-compatible operators and expressions outside of Spark.
+
+### Push a release tag to the repo
+
+Push a release tag (`0.1.0`) to the `apache` repository.
+
+```shell
+git fetch apache
+git checkout 0.1.0-rc1
+git tag 0.1.0
+git push apache 0.1.0
+```
+
+Note that pushing a release tag will trigger a GitHub workflow that will build
a Docker image and publish
+it to GitHub Container Registry at
https://github.com/apache/datafusion-comet/pkgs/container/datafusion-comet
+
+Reply to the vote thread to close the vote and announce the release.
+
+## Update released version number in documentation
+
+- We provide direct links to the jar files in Maven
+- The Kubernetes page needs updating once the Docker image has been published
to GitHub Container Regsistry
+
+## Post Release Admin
+
+Register the release with the [Apache Reporter
Service](https://reporter.apache.org/addrelease.html?datafusion) using
+a version such as `COMET-0.1.0`.
+
+### Delete old RCs and Releases
+
+See the ASF documentation on [when to
archive](https://www.apache.org/legal/release-policy.html#when-to-archive)
+for more information.
+
+#### Deleting old release candidates from `dev` svn
+
+Release candidates should be deleted once the release is published.
+
+Get a list of DataFusion Comet release candidates:
+
+```shell
+svn ls https://dist.apache.org/repos/dist/dev/datafusion | grep comet
+```
+
+Delete a release candidate:
+
+```shell
+svn delete -m "delete old DataFusion Comet RC"
https://dist.apache.org/repos/dist/dev/datafusion/apache-datafusion-comet-0.1.0-rc1/
+```
+
+#### Deleting old releases from `release` svn
+
+Only the latest release should be available. Delete old releases after
publishing the new release.
+
+Get a list of DataFusion releases:
+
+```shell
+svn ls https://dist.apache.org/repos/dist/release/datafusion | grep comet
+```
+
+Delete a release:
+
+```shell
+svn delete -m "delete old DataFusion Comet release"
https://dist.apache.org/repos/dist/release/datafusion/datafusion-comet-0.0.0
+```
+
+## Post Release Activities
+
+Writing a blog post about the release is a great way to generate more interest
in the project. We typically create a
+Google document where the community can collaborate on a blog post. Once the
content is agreed then a PR can be
+created against the
[datafusion-site](https://github.com/apache/datafusion-site) repository to add
the blog post. Any
+contributor can drive this process.
diff --git a/_sources/user-guide/latest/compatibility.md.txt
b/_sources/user-guide/latest/compatibility.md.txt
index e7f69bda0..fffa05509 100644
--- a/_sources/user-guide/latest/compatibility.md.txt
+++ b/_sources/user-guide/latest/compatibility.md.txt
@@ -115,15 +115,15 @@ Cast operations in Comet fall into three levels of
support:
| | binary | boolean | byte | date | decimal | double | float | integer | long
| short | string | timestamp |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| binary | - | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | C | N/A |
-| boolean | N/A | - | C | N/A | U | C | C | C | C | C | C | U |
-| byte | U | C | - | N/A | C | C | C | C | C | C | C | U |
+| boolean | N/A | - | C | N/A | C | C | C | C | C | C | C | U |
+| byte | C | C | - | N/A | C | C | C | C | C | C | C | U |
| date | N/A | U | U | - | U | U | U | U | U | U | C | C |
| decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | U |
| double | N/A | C | C | N/A | I | - | C | C | C | C | C | U |
| float | N/A | C | C | N/A | I | C | - | C | C | C | C | U |
-| integer | U | C | C | N/A | C | C | C | - | C | C | C | U |
-| long | U | C | C | N/A | C | C | C | C | - | C | C | U |
-| short | U | C | C | N/A | C | C | C | C | C | - | C | U |
+| integer | C | C | C | N/A | C | C | C | - | C | C | C | U |
+| long | C | C | C | N/A | C | C | C | C | - | C | C | U |
+| short | C | C | C | N/A | C | C | C | C | C | - | C | U |
| string | C | C | C | C | I | C | C | C | C | C | - | I |
| timestamp | N/A | U | U | C | U | U | U | U | C | U | C | - |
@@ -147,7 +147,7 @@ or strings containing null bytes (e.g \\u0000)
| | binary | boolean | byte | date | decimal | double | float | integer | long
| short | string | timestamp |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| binary | - | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | C | N/A |
-| boolean | N/A | - | C | N/A | U | C | C | C | C | C | C | U |
+| boolean | N/A | - | C | N/A | C | C | C | C | C | C | C | U |
| byte | U | C | - | N/A | C | C | C | C | C | C | C | U |
| date | N/A | U | U | - | U | U | U | U | U | U | C | C |
| decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | U |
@@ -179,7 +179,7 @@ or strings containing null bytes (e.g \\u0000)
| | binary | boolean | byte | date | decimal | double | float | integer | long
| short | string | timestamp |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| binary | - | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | N/A | C | N/A |
-| boolean | N/A | - | C | N/A | U | C | C | C | C | C | C | U |
+| boolean | N/A | - | C | N/A | C | C | C | C | C | C | C | U |
| byte | U | C | - | N/A | C | C | C | C | C | C | C | U |
| date | N/A | U | U | - | U | U | U | U | U | U | C | C |
| decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | U |
diff --git a/_sources/user-guide/latest/configs.md.txt
b/_sources/user-guide/latest/configs.md.txt
index 7254cc7fc..ea32a0da6 100644
--- a/_sources/user-guide/latest/configs.md.txt
+++ b/_sources/user-guide/latest/configs.md.txt
@@ -274,6 +274,7 @@ These settings can be used to determine which parts of the
plan are accelerated
| `spark.comet.expression.Log10.enabled` | Enable Comet acceleration for
`Log10` | true |
| `spark.comet.expression.Log2.enabled` | Enable Comet acceleration for `Log2`
| true |
| `spark.comet.expression.Lower.enabled` | Enable Comet acceleration for
`Lower` | true |
+| `spark.comet.expression.MakeDate.enabled` | Enable Comet acceleration for
`MakeDate` | true |
| `spark.comet.expression.MakeDecimal.enabled` | Enable Comet acceleration for
`MakeDecimal` | true |
| `spark.comet.expression.MapContainsKey.enabled` | Enable Comet acceleration
for `MapContainsKey` | true |
| `spark.comet.expression.MapEntries.enabled` | Enable Comet acceleration for
`MapEntries` | true |
@@ -287,6 +288,7 @@ These settings can be used to determine which parts of the
plan are accelerated
| `spark.comet.expression.Month.enabled` | Enable Comet acceleration for
`Month` | true |
| `spark.comet.expression.Multiply.enabled` | Enable Comet acceleration for
`Multiply` | true |
| `spark.comet.expression.Murmur3Hash.enabled` | Enable Comet acceleration for
`Murmur3Hash` | true |
+| `spark.comet.expression.NextDay.enabled` | Enable Comet acceleration for
`NextDay` | true |
| `spark.comet.expression.Not.enabled` | Enable Comet acceleration for `Not` |
true |
| `spark.comet.expression.OctetLength.enabled` | Enable Comet acceleration for
`OctetLength` | true |
| `spark.comet.expression.Or.enabled` | Enable Comet acceleration for `Or` |
true |
diff --git a/asf/index.html b/asf/index.html
index 40775acbc..f1d66db5a 100644
--- a/asf/index.html
+++ b/asf/index.html
@@ -65,7 +65,7 @@ under the License.
<script async="true" defer="true"
src="https://buttons.github.io/buttons.js"></script>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
- <link rel="prev" title="Comet Roadmap"
href="../contributor-guide/roadmap.html" />
+ <link rel="prev" title="Apache DataFusion Comet: Release Process"
href="../contributor-guide/release_process.html" />
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="docsearch:language" content="en"/>
<meta name="docsearch:version" content="" />
@@ -464,12 +464,12 @@ under the License.
<div class="prev-next-area">
<a class="left-prev"
- href="../contributor-guide/roadmap.html"
+ href="../contributor-guide/release_process.html"
title="previous page">
<i class="fa-solid fa-angle-left"></i>
<div class="prev-next-info">
<p class="prev-next-subtitle">previous</p>
- <p class="prev-next-title">Comet Roadmap</p>
+ <p class="prev-next-title">Apache DataFusion Comet: Release Process</p>
</div>
</a>
</div>
diff --git a/contributor-guide/adding_a_new_expression.html
b/contributor-guide/adding_a_new_expression.html
index 6785a93ae..7729b11b9 100644
--- a/contributor-guide/adding_a_new_expression.html
+++ b/contributor-guide/adding_a_new_expression.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/contributor-guide/adding_a_new_operator.html
b/contributor-guide/adding_a_new_operator.html
index 1fff6ae66..544aa3896 100644
--- a/contributor-guide/adding_a_new_operator.html
+++ b/contributor-guide/adding_a_new_operator.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/contributor-guide/benchmarking.html
b/contributor-guide/benchmarking.html
index 549c87ea2..8407a523c 100644
--- a/contributor-guide/benchmarking.html
+++ b/contributor-guide/benchmarking.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/contributor-guide/contributing.html
b/contributor-guide/contributing.html
index bbaa2e9cd..12a67f5ed 100644
--- a/contributor-guide/contributing.html
+++ b/contributor-guide/contributing.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/contributor-guide/debugging.html b/contributor-guide/debugging.html
index 91bd4dfb3..723f6c146 100644
--- a/contributor-guide/debugging.html
+++ b/contributor-guide/debugging.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/contributor-guide/development.html
b/contributor-guide/development.html
index 23e5ae751..73c2a1489 100644
--- a/contributor-guide/development.html
+++ b/contributor-guide/development.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/contributor-guide/ffi.html b/contributor-guide/ffi.html
index 31c1141e0..a03074a2d 100644
--- a/contributor-guide/ffi.html
+++ b/contributor-guide/ffi.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/contributor-guide/index.html b/contributor-guide/index.html
index 0c345ee39..75e682025 100644
--- a/contributor-guide/index.html
+++ b/contributor-guide/index.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
@@ -582,6 +583,15 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html#ongoing-improvements">Ongoing Improvements</a></li>
</ul>
</li>
+<li class="toctree-l1"><a class="reference internal"
href="release_process.html">Release Process</a><ul>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html#creating-the-release-candidate">Creating the Release
Candidate</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html#publishing-the-release-candidate">Publishing the
Release Candidate</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html#publishing-binary-releases">Publishing Binary
Releases</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html#update-released-version-number-in-documentation">Update
released version number in documentation</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html#post-release-admin">Post Release Admin</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html#post-release-activities">Post Release
Activities</a></li>
+</ul>
+</li>
<li class="toctree-l1"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</div>
diff --git a/contributor-guide/jvm_shuffle.html
b/contributor-guide/jvm_shuffle.html
index bfb8c0e05..5856508c5 100644
--- a/contributor-guide/jvm_shuffle.html
+++ b/contributor-guide/jvm_shuffle.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/contributor-guide/native_shuffle.html
b/contributor-guide/native_shuffle.html
index 1f3cecf9d..f08406ee5 100644
--- a/contributor-guide/native_shuffle.html
+++ b/contributor-guide/native_shuffle.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/contributor-guide/parquet_scans.html
b/contributor-guide/parquet_scans.html
index a61124a2e..2bb8ffb82 100644
--- a/contributor-guide/parquet_scans.html
+++ b/contributor-guide/parquet_scans.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/contributor-guide/plugin_overview.html
b/contributor-guide/plugin_overview.html
index f0482a30e..13b246f05 100644
--- a/contributor-guide/plugin_overview.html
+++ b/contributor-guide/plugin_overview.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/contributor-guide/profiling_native_code.html
b/contributor-guide/profiling_native_code.html
index f3591cf46..c4a40a39c 100644
--- a/contributor-guide/profiling_native_code.html
+++ b/contributor-guide/profiling_native_code.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/contributor-guide/release_process.html
b/contributor-guide/release_process.html
new file mode 100644
index 000000000..6ef037ba7
--- /dev/null
+++ b/contributor-guide/release_process.html
@@ -0,0 +1,826 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+
+<!DOCTYPE html>
+
+
+<html lang="en" data-content_root="../" data-theme="light">
+
+ <head>
+ <meta charset="utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0"
/><meta name="viewport" content="width=device-width, initial-scale=1" />
+
+ <title>Apache DataFusion Comet: Release Process — Apache DataFusion
Comet documentation</title>
+
+
+
+ <script data-cfasync="false">
+ document.documentElement.dataset.mode = localStorage.getItem("mode") ||
"light";
+ document.documentElement.dataset.theme = localStorage.getItem("theme") ||
"light";
+ </script>
+ <!--
+ this give us a css class that will be invisible only if js is disabled
+ -->
+ <noscript>
+ <style>
+ .pst-js-only { display: none !important; }
+
+ </style>
+ </noscript>
+
+ <!-- Loaded before other Sphinx assets -->
+ <link href="../_static/styles/theme.css?digest=8878045cc6db502f8baf"
rel="stylesheet" />
+<link
href="../_static/styles/pydata-sphinx-theme.css?digest=8878045cc6db502f8baf"
rel="stylesheet" />
+
+ <link rel="stylesheet" type="text/css"
href="../_static/pygments.css?v=8f2a1f02" />
+ <link rel="stylesheet" type="text/css"
href="../_static/theme_overrides.css?v=cd442bcd" />
+
+ <!-- So that users can add custom icons -->
+ <script
src="../_static/scripts/fontawesome.js?digest=8878045cc6db502f8baf"></script>
+ <!-- Pre-loaded scripts that we'll load fully later -->
+ <link rel="preload" as="script"
href="../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf" />
+<link rel="preload" as="script"
href="../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf" />
+
+ <script src="../_static/documentation_options.js?v=5929fcd5"></script>
+ <script src="../_static/doctools.js?v=9a2dae69"></script>
+ <script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
+ <script>DOCUMENTATION_OPTIONS.pagename =
'contributor-guide/release_process';</script>
+ <script async="true" defer="true"
src="https://buttons.github.io/buttons.js"></script>
+ <link rel="index" title="Index" href="../genindex.html" />
+ <link rel="search" title="Search" href="../search.html" />
+ <link rel="next" title="ASF Links" href="../asf/index.html" />
+ <link rel="prev" title="Comet Roadmap" href="roadmap.html" />
+ <meta name="viewport" content="width=device-width, initial-scale=1"/>
+ <meta name="docsearch:language" content="en"/>
+ <meta name="docsearch:version" content="" />
+ </head>
+
+
+ <body data-bs-spy="scroll" data-bs-target=".bd-toc-nav" data-offset="180"
data-bs-root-margin="0px 0px -60%" data-default-mode="light">
+
+
+
+ <div id="pst-skip-link" class="skip-link d-print-none"><a
href="#main-content">Skip to main content</a></div>
+
+ <div id="pst-scroll-pixel-helper"></div>
+
+ <button type="button" class="btn rounded-pill" id="pst-back-to-top">
+ <i class="fa-solid fa-arrow-up"></i>Back to top</button>
+
+
+ <dialog id="pst-search-dialog">
+
+<form class="bd-search d-flex align-items-center"
+ action="../search.html"
+ method="get">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <input type="search"
+ class="form-control"
+ name="q"
+ placeholder="Search the docs ..."
+ aria-label="Search the docs ..."
+ autocomplete="off"
+ autocorrect="off"
+ autocapitalize="off"
+ spellcheck="false"/>
+ <span class="search-button__kbd-shortcut"><kbd
class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
+</form>
+ </dialog>
+
+ <div class="pst-async-banner-revealer d-none">
+ <aside id="bd-header-version-warning" class="d-none d-print-none"
aria-label="Version warning"></aside>
+</div>
+
+
+ <header class="bd-header navbar navbar-expand-lg bd-navbar d-print-none">
+<div class="bd-header__inner bd-page-width">
+ <button class="pst-navbar-icon sidebar-toggle primary-toggle"
aria-label="Site navigation">
+ <span class="fa-solid fa-bars"></span>
+ </button>
+
+
+ <div class="col-lg-3 navbar-header-items__start">
+
+ <div class="navbar-item">
+
+
+
+
+
+<a class="navbar-brand logo" href="../index.html">
+
+
+
+
+
+
+
+
+ <img src="../_static/DataFusionComet-Logo-Light.png" class="logo__image
only-light" alt="Apache DataFusion Comet documentation - Home"/>
+ <img src="../_static/DataFusionComet-Logo-Dark.png" class="logo__image
only-dark pst-js-only" alt="Apache DataFusion Comet documentation - Home"/>
+
+
+</a></div>
+
+ </div>
+
+ <div class="col-lg-9 navbar-header-items">
+
+ <div class="me-auto navbar-header-items__center">
+
+ <div class="navbar-item">
+<nav>
+ <ul class="bd-navbar-elements navbar-nav">
+
+<li class="nav-item ">
+ <a class="nav-link nav-internal" href="../about/index.html">
+ Comet Overview
+ </a>
+</li>
+
+
+<li class="nav-item ">
+ <a class="nav-link nav-internal" href="../user-guide/index.html">
+ User Guide
+ </a>
+</li>
+
+
+<li class="nav-item current active">
+ <a class="nav-link nav-internal" href="index.html">
+ Contributor Guide
+ </a>
+</li>
+
+
+<li class="nav-item ">
+ <a class="nav-link nav-internal" href="../asf/index.html">
+ ASF Links
+ </a>
+</li>
+
+ </ul>
+</nav></div>
+
+ </div>
+
+
+ <div class="navbar-header-items__end">
+
+ <div class="navbar-item navbar-persistent--container">
+
+
+<button class="btn search-button-field search-button__button pst-js-only"
title="Search" aria-label="Search" data-bs-placement="bottom"
data-bs-toggle="tooltip">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <span class="search-button__default-text">Search</span>
+ <span class="search-button__kbd-shortcut"><kbd
class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd
class="kbd-shortcut__modifier">K</kbd></span>
+</button>
+ </div>
+
+
+ <div class="navbar-item"><ul class="navbar-icon-links"
+ aria-label="Icon Links">
+ <li class="nav-item">
+
+
+
+
+
+
+
+
+ <a href="https://github.com/apache/datafusion-comet" title="GitHub"
class="nav-link pst-navbar-icon" rel="noopener" target="_blank"
data-bs-toggle="tooltip" data-bs-placement="bottom"><i class="fa-brands
fa-github fa-lg" aria-hidden="true"></i>
+ <span class="sr-only">GitHub</span></a>
+ </li>
+</ul></div>
+
+ <div class="navbar-item">
+
+<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button
pst-js-only" aria-label="Color mode" data-bs-title="Color mode"
data-bs-placement="bottom" data-bs-toggle="tooltip">
+ <i class="theme-switch fa-solid fa-sun fa-lg"
data-mode="light" title="Light"></i>
+ <i class="theme-switch fa-solid fa-moon fa-lg"
data-mode="dark" title="Dark"></i>
+ <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg"
data-mode="auto" title="System Settings"></i>
+</button></div>
+
+ </div>
+
+ </div>
+
+
+ <div class="navbar-persistent--mobile">
+
+<button class="btn search-button-field search-button__button pst-js-only"
title="Search" aria-label="Search" data-bs-placement="bottom"
data-bs-toggle="tooltip">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <span class="search-button__default-text">Search</span>
+ <span class="search-button__kbd-shortcut"><kbd
class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd
class="kbd-shortcut__modifier">K</kbd></span>
+</button>
+ </div>
+
+
+
+</div>
+
+ </header>
+
+
+ <div class="bd-container">
+ <div class="bd-container__inner bd-page-width">
+
+
+
+ <dialog id="pst-primary-sidebar-modal"></dialog>
+ <div id="pst-primary-sidebar" class="bd-sidebar-primary bd-sidebar">
+
+
+
+ <div class="sidebar-header-items sidebar-primary__section">
+
+
+ <div class="sidebar-header-items__center">
+
+
+
+ <div class="navbar-item">
+<nav>
+ <ul class="bd-navbar-elements navbar-nav">
+
+<li class="nav-item ">
+ <a class="nav-link nav-internal" href="../about/index.html">
+ Comet Overview
+ </a>
+</li>
+
+
+<li class="nav-item ">
+ <a class="nav-link nav-internal" href="../user-guide/index.html">
+ User Guide
+ </a>
+</li>
+
+
+<li class="nav-item current active">
+ <a class="nav-link nav-internal" href="index.html">
+ Contributor Guide
+ </a>
+</li>
+
+
+<li class="nav-item ">
+ <a class="nav-link nav-internal" href="../asf/index.html">
+ ASF Links
+ </a>
+</li>
+
+ </ul>
+</nav></div>
+
+
+ </div>
+
+
+
+ <div class="sidebar-header-items__end">
+
+ <div class="navbar-item"><ul class="navbar-icon-links"
+ aria-label="Icon Links">
+ <li class="nav-item">
+
+
+
+
+
+
+
+
+ <a href="https://github.com/apache/datafusion-comet" title="GitHub"
class="nav-link pst-navbar-icon" rel="noopener" target="_blank"
data-bs-toggle="tooltip" data-bs-placement="bottom"><i class="fa-brands
fa-github fa-lg" aria-hidden="true"></i>
+ <span class="sr-only">GitHub</span></a>
+ </li>
+</ul></div>
+
+ <div class="navbar-item">
+
+<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button
pst-js-only" aria-label="Color mode" data-bs-title="Color mode"
data-bs-placement="bottom" data-bs-toggle="tooltip">
+ <i class="theme-switch fa-solid fa-sun fa-lg"
data-mode="light" title="Light"></i>
+ <i class="theme-switch fa-solid fa-moon fa-lg"
data-mode="dark" title="Dark"></i>
+ <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg"
data-mode="auto" title="System Settings"></i>
+</button></div>
+
+ </div>
+
+ </div>
+
+ <div class="sidebar-primary-items__start sidebar-primary__section">
+ <div class="sidebar-primary-item"><!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<nav class="bd-links" id="bd-docs-nav" aria-label="Main navigation">
+ <div class="bd-toc-item active">
+ <p aria-level="2" class="caption" role="heading"><span
class="caption-text">Index</span></p>
+<ul class="current">
+<li class="toctree-l1"><a class="reference internal"
href="../about/index.html">Comet Overview</a></li>
+<li class="toctree-l1"><a class="reference internal"
href="../user-guide/index.html">User Guide</a></li>
+<li class="toctree-l1 current"><a class="reference internal"
href="index.html">Contributor Guide</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal"
href="contributing.html">Getting Started</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="plugin_overview.html">Comet Plugin Architecture</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="plugin_overview.html#plugin-components">Plugin Components</a></li>
+<li class="toctree-l2"><a class="reference internal" href="ffi.html">Arrow
FFI</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="jvm_shuffle.html">JVM Shuffle</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="native_shuffle.html">Native Shuffle</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="parquet_scans.html">Parquet Scans</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="development.html">Development Guide</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="debugging.html">Debugging Guide</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="benchmarking.html">Benchmarking Guide</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="adding_a_new_operator.html">Adding a New Operator</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="adding_a_new_expression.html">Adding a New Expression</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="tracing.html">Tracing</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="profiling_native_code.html">Profiling Native Code</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2 current"><a class="current reference internal"
href="#">Release Process</a></li>
+<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal"
href="../asf/index.html">ASF Links</a></li>
+</ul>
+
+ </div>
+</nav>
+</div>
+ </div>
+
+
+ <div class="sidebar-primary-items__end sidebar-primary__section">
+ <div class="sidebar-primary-item">
+<div id="ethical-ad-placement"
+ class="flat"
+ data-ea-publisher="readthedocs"
+ data-ea-type="readthedocs-sidebar"
+ data-ea-manual="true">
+</div></div>
+ </div>
+
+
+ </div>
+
+ <main id="main-content" class="bd-main" role="main">
+
+
+ <div class="bd-content">
+ <div class="bd-article-container">
+
+ <div class="bd-header-article d-print-none">
+<div class="header-article-items header-article__inner">
+
+ <div class="header-article-items__start">
+
+ <div class="header-article-item">
+
+<nav aria-label="Breadcrumb" class="d-print-none">
+ <ul class="bd-breadcrumbs">
+
+ <li class="breadcrumb-item breadcrumb-home">
+ <a href="../index.html" class="nav-link" aria-label="Home">
+ <i class="fa-solid fa-home"></i>
+ </a>
+ </li>
+
+ <li class="breadcrumb-item"><a href="index.html" class="nav-link">Comet
Contributor Guide</a></li>
+
+ <li class="breadcrumb-item active" aria-current="page"><span
class="ellipsis">Apache DataFusion Comet: Release Process</span></li>
+ </ul>
+</nav>
+</div>
+
+ </div>
+
+
+</div>
+</div>
+
+
+
+
+<div id="searchbox"></div>
+ <article class="bd-article">
+
+ <!---
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<section id="apache-datafusion-comet-release-process">
+<h1>Apache DataFusion Comet: Release Process<a class="headerlink"
href="#apache-datafusion-comet-release-process" title="Link to this
heading">#</a></h1>
+<p>This documentation explains the release process for Apache DataFusion
Comet.</p>
+<section id="creating-the-release-candidate">
+<h2>Creating the Release Candidate<a class="headerlink"
href="#creating-the-release-candidate" title="Link to this heading">#</a></h2>
+<p>This part of the process can be performed by any committer.</p>
+<p>Here are the steps, using the 0.1.0 release as an example.</p>
+<section id="create-release-branch">
+<h3>Create Release Branch<a class="headerlink" href="#create-release-branch"
title="Link to this heading">#</a></h3>
+<p>This document assumes that GitHub remotes are set up as follows:</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>$<span class="w"> </span>git<span
class="w"> </span>remote<span class="w"> </span>-v
+apache<span class="w"> </span>[email protected]:apache/datafusion-comet.git<span
class="w"> </span><span class="o">(</span>fetch<span class="o">)</span>
+apache<span class="w"> </span>[email protected]:apache/datafusion-comet.git<span
class="w"> </span><span class="o">(</span>push<span class="o">)</span>
+origin<span class="w">
</span>[email protected]:yourgithubid/datafusion-comet.git<span class="w">
</span><span class="o">(</span>fetch<span class="o">)</span>
+origin<span class="w">
</span>[email protected]:yourgithubid/datafusion-comet.git<span class="w">
</span><span class="o">(</span>push<span class="o">)</span>
+</pre></div>
+</div>
+<p>Create a release branch from the latest commit in main and push to the
<code class="docutils literal notranslate"><span
class="pre">apache</span></code> repo:</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>git<span class="w"> </span>fetch<span
class="w"> </span>apache
+git<span class="w"> </span>checkout<span class="w"> </span>main
+git<span class="w"> </span>reset<span class="w"> </span>--hard<span class="w">
</span>apache/main
+git<span class="w"> </span>checkout<span class="w"> </span>-b<span class="w">
</span>branch-0.1
+git<span class="w"> </span>push<span class="w"> </span>apache<span class="w">
</span>branch-0.1
+</pre></div>
+</div>
+</section>
+<section id="generate-release-documentation">
+<h3>Generate Release Documentation<a class="headerlink"
href="#generate-release-documentation" title="Link to this heading">#</a></h3>
+<p>Generate the documentation content for this release. The docs on <code
class="docutils literal notranslate"><span class="pre">main</span></code>
contain only template markers,
+so we need to generate the actual content (config tables, compatibility
matrices) for the release branch:</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>./dev/generate-release-docs.sh
+git<span class="w"> </span>add<span class="w">
</span>docs/source/user-guide/latest/
+git<span class="w"> </span>commit<span class="w"> </span>-m<span class="w">
</span><span class="s2">"Generate docs for 0.1.0 release"</span>
+git<span class="w"> </span>push<span class="w"> </span>apache<span class="w">
</span>branch-0.1
+</pre></div>
+</div>
+<p>This freezes the documentation to reflect the configs and expressions
available in this release.</p>
+</section>
+<section id="update-maven-version">
+<h3>Update Maven Version<a class="headerlink" href="#update-maven-version"
title="Link to this heading">#</a></h3>
+<p>Update the <code class="docutils literal notranslate"><span
class="pre">pom.xml</span></code> files in the release branch to update the
Maven version from <code class="docutils literal notranslate"><span
class="pre">0.1.0-SNAPSHOT</span></code> to <code class="docutils literal
notranslate"><span class="pre">0.1.0</span></code>.</p>
+<p>There is no need to update the Rust crate versions because they will
already be <code class="docutils literal notranslate"><span
class="pre">0.1.0</span></code>.</p>
+</section>
+<section id="update-version-in-main">
+<h3>Update Version in main<a class="headerlink" href="#update-version-in-main"
title="Link to this heading">#</a></h3>
+<p>Create a PR against the main branch to prepare for developing the next
release:</p>
+<ul class="simple">
+<li><p>Update the Rust crate version to <code class="docutils literal
notranslate"><span class="pre">0.2.0</span></code>.</p></li>
+<li><p>Update the Maven version to <code class="docutils literal
notranslate"><span class="pre">0.2.0-SNAPSHOT</span></code> (both in the <code
class="docutils literal notranslate"><span class="pre">pom.xml</span></code>
files and also in the diff files
+under <code class="docutils literal notranslate"><span
class="pre">dev/diffs</span></code>).</p></li>
+</ul>
+</section>
+<section id="generate-the-change-log">
+<h3>Generate the Change Log<a class="headerlink"
href="#generate-the-change-log" title="Link to this heading">#</a></h3>
+<p>Generate a change log to cover changes between the previous release and the
release branch HEAD by running
+the provided <code class="docutils literal notranslate"><span
class="pre">dev/release/generate-changelog.py</span></code>.</p>
+<p>It is recommended that you set up a virtual Python environment and then
install the dependencies:</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span><span class="nb">cd</span><span class="w">
</span>dev/release
+python3<span class="w"> </span>-m<span class="w"> </span>venv<span class="w">
</span>venv
+<span class="nb">source</span><span class="w"> </span>venv/bin/activate
+pip3<span class="w"> </span>install<span class="w"> </span>-r<span class="w">
</span>requirements.txt
+</pre></div>
+</div>
+<p>To generate the changelog, set the <code class="docutils literal
notranslate"><span class="pre">GITHUB_TOKEN</span></code> environment variable
to a valid token and then run the script
+providing two commit ids or tags followed by the version number of the release
being created. The following
+example generates a change log of all changes between the previous version and
the current release branch HEAD revision.</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span><span class="nb">export</span><span
class="w"> </span><span class="nv">GITHUB_TOKEN</span><span
class="o">=</span><your-token-here>
+python3<span class="w"> </span>generate-changelog.py<span class="w">
</span><span class="m">0</span>.0.0<span class="w"> </span>HEAD<span class="w">
</span><span class="m">0</span>.1.0<span class="w"> </span>><span class="w">
</span>../changelog/0.1.0.md
+</pre></div>
+</div>
+<p>Create a PR against the <em>main</em> branch to add this change log and
once this is approved and merged, cherry-pick the
+commit into the release branch.</p>
+</section>
+<section id="build-the-jars">
+<h3>Build the jars<a class="headerlink" href="#build-the-jars" title="Link to
this heading">#</a></h3>
+<section id="setup-to-do-the-build">
+<h4>Setup to do the build<a class="headerlink" href="#setup-to-do-the-build"
title="Link to this heading">#</a></h4>
+<p>The build process requires Docker. Download the latest Docker Desktop from
https://www.docker.com/products/docker-desktop/.
+If you have multiple docker contexts running switch to the context of the
Docker Desktop. For example -</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>$<span class="w"> </span>docker<span
class="w"> </span>context<span class="w"> </span>ls
+NAME<span class="w"> </span>DESCRIPTION<span class="w">
</span>DOCKER<span class="w"> </span>ENDPOINT<span
class="w"> </span>ERROR
+default<span class="w"> </span>Current<span class="w">
</span>DOCKER_HOST<span class="w"> </span>based<span class="w">
</span>configuration<span class="w"> </span>unix:///var/run/docker.sock
+desktop-linux<span class="w"> </span>Docker<span class="w">
</span>Desktop<span class="w">
</span>unix:///Users/parth/.docker/run/docker.sock
+my_custom_context<span class="w"> </span>*<span class="w">
</span>tcp://192.168.64.2:2376
+
+$<span class="w"> </span>docker<span class="w"> </span>context<span class="w">
</span>use<span class="w"> </span>desktop-linux
+</pre></div>
+</div>
+</section>
+<section id="run-the-build-script">
+<h4>Run the build script<a class="headerlink" href="#run-the-build-script"
title="Link to this heading">#</a></h4>
+<p>The <code class="docutils literal notranslate"><span
class="pre">build-release-comet.sh</span></code> script will create a docker
image for each architecture and use the image
+to build the platform specific binaries. These builder images are created
every time this script is run.
+The script optionally allows overriding of the repository and branch to build
the binaries from (Note that
+the local git repo is not used in the building of the binaries, but it is used
to build the final uber jar).</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>Usage:<span class="w">
</span>build-release-comet.sh<span class="w"> </span><span
class="o">[</span>options<span class="o">]</span>
+
+This<span class="w"> </span>script<span class="w"> </span>builds<span
class="w"> </span>comet<span class="w"> </span>native<span class="w">
</span>binaries<span class="w"> </span>inside<span class="w"> </span>a<span
class="w"> </span>docker<span class="w"> </span>image.<span class="w">
</span>The<span class="w"> </span>image<span class="w"> </span>is<span
class="w"> </span>named
+<span class="s2">"comet-rm"</span><span class="w"> </span>and<span
class="w"> </span>will<span class="w"> </span>be<span class="w">
</span>generated<span class="w"> </span>by<span class="w"> </span>this<span
class="w"> </span>script
+
+Options<span class="w"> </span>are:
+
+-r<span class="w"> </span><span class="o">[</span>repo<span
class="o">]</span><span class="w"> </span>:<span class="w"> </span>git<span
class="w"> </span>repo<span class="w"> </span><span
class="o">(</span>default:<span class="w">
</span>https://github.com/apache/datafusion-comet.git<span class="o">)</span>
+-b<span class="w"> </span><span class="o">[</span>branch<span
class="o">]</span><span class="w"> </span>:<span class="w"> </span>git<span
class="w"> </span>branch<span class="w"> </span><span
class="o">(</span>default:<span class="w"> </span>release<span
class="o">)</span>
+-t<span class="w"> </span><span class="o">[</span>tag<span
class="o">]</span><span class="w"> </span>:<span class="w"> </span>tag<span
class="w"> </span><span class="k">for</span><span class="w"> </span>the<span
class="w"> </span>spark-rm<span class="w"> </span>docker<span class="w">
</span>image<span class="w"> </span>to<span class="w"> </span>use<span
class="w"> </span><span class="k">for</span><span class="w">
</span>building<span class="w"> </span><span class="o">(</span>default:< [...]
+</pre></div>
+</div>
+<p>Example:</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span><span class="nb">cd</span><span class="w">
</span>dev/release<span class="w"> </span><span
class="o">&&</span><span class="w">
</span>./build-release-comet.sh<span class="w"> </span><span
class="o">&&</span><span class="w"> </span><span
class="nb">cd</span><span class="w"> </span>../..
+</pre></div>
+</div>
+</section>
+<section id="build-output">
+<h4>Build output<a class="headerlink" href="#build-output" title="Link to this
heading">#</a></h4>
+<p>The build output is installed to a temporary local maven repository. The
build script will print the name of the
+repository location at the end. This location will be required at the time of
deploying the artifacts to a staging
+repository</p>
+</section>
+</section>
+<section id="tag-the-release-candidate">
+<h3>Tag the Release Candidate<a class="headerlink"
href="#tag-the-release-candidate" title="Link to this heading">#</a></h3>
+<p>Tag the release branch with <code class="docutils literal
notranslate"><span class="pre">0.1.0-rc1</span></code> and push to the <code
class="docutils literal notranslate"><span class="pre">apache</span></code>
repo</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>git<span class="w"> </span>fetch<span
class="w"> </span>apache
+git<span class="w"> </span>checkout<span class="w"> </span>branch-0.1
+git<span class="w"> </span>reset<span class="w"> </span>--hard<span class="w">
</span>apache/branch-0.1
+git<span class="w"> </span>tag<span class="w"> </span><span
class="m">0</span>.1.0-rc1
+git<span class="w"> </span>push<span class="w"> </span>apache<span class="w">
</span><span class="m">0</span>.1.0-rc1
+</pre></div>
+</div>
+<p>Note that pushing a release candidate tag will trigger a GitHub workflow
that will build a Docker image and publish
+it to GitHub Container Registry at
https://github.com/apache/datafusion-comet/pkgs/container/datafusion-comet</p>
+</section>
+<section id="publishing-documentation">
+<h3>Publishing Documentation<a class="headerlink"
href="#publishing-documentation" title="Link to this heading">#</a></h3>
+<p>In <code class="docutils literal notranslate"><span
class="pre">docs</span></code> directory:</p>
+<ul class="simple">
+<li><p>Update <code class="docutils literal notranslate"><span
class="pre">docs/source/index.rst</span></code> and add a new navigation menu
link for the new release in the section <code class="docutils literal
notranslate"><span
class="pre">_toc.user-guide-links-versioned</span></code></p></li>
+<li><p>Add a new line to <code class="docutils literal notranslate"><span
class="pre">build.sh</span></code> to delete the locally cloned <code
class="docutils literal notranslate"><span class="pre">comet-*</span></code>
branch for the new release e.g. <code class="docutils literal
notranslate"><span class="pre">comet-0.11</span></code></p></li>
+<li><p>Update the main method in <code class="docutils literal
notranslate"><span class="pre">generate-versions.py</span></code>:</p></li>
+</ul>
+<div class="highlight-python notranslate"><div
class="highlight"><pre><span></span> <span
class="n">latest_released_version</span> <span class="o">=</span> <span
class="s2">"0.11.0"</span>
+ <span class="n">previous_versions</span> <span class="o">=</span> <span
class="p">[</span><span class="s2">"0.8.0"</span><span
class="p">,</span> <span class="s2">"0.9.1"</span><span
class="p">,</span> <span class="s2">"0.10.1"</span><span
class="p">]</span>
+</pre></div>
+</div>
+<p>Test the documentation build locally, following the instructions in <code
class="docutils literal notranslate"><span
class="pre">docs/README.md</span></code>.</p>
+<p>Note that the download links in the installation guide will not work until
the release is finalized, but having the
+documentation available could be useful for anyone testing out the release
candidate during the voting period.</p>
+</section>
+</section>
+<section id="publishing-the-release-candidate">
+<h2>Publishing the Release Candidate<a class="headerlink"
href="#publishing-the-release-candidate" title="Link to this heading">#</a></h2>
+<p>This part of the process can mostly only be performed by a PMC member.</p>
+<section id="publish-the-maven-artifacts">
+<h3>Publish the maven artifacts<a class="headerlink"
href="#publish-the-maven-artifacts" title="Link to this heading">#</a></h3>
+<section id="setup-maven">
+<h4>Setup maven<a class="headerlink" href="#setup-maven" title="Link to this
heading">#</a></h4>
+<section id="one-time-project-setup">
+<h5>One time project setup<a class="headerlink" href="#one-time-project-setup"
title="Link to this heading">#</a></h5>
+<p>Setting up your project in the ASF Nexus Repository from here:
https://infra.apache.org/publishing-maven-artifacts.html</p>
+</section>
+<section id="release-manager-setup">
+<h5>Release Manager Setup<a class="headerlink" href="#release-manager-setup"
title="Link to this heading">#</a></h5>
+<p>Set up your development environment from here:
https://infra.apache.org/publishing-maven-artifacts.html</p>
+</section>
+<section id="build-and-publish-a-release-candidate-to-nexus">
+<h5>Build and publish a release candidate to nexus.<a class="headerlink"
href="#build-and-publish-a-release-candidate-to-nexus" title="Link to this
heading">#</a></h5>
+<p>The script <code class="docutils literal notranslate"><span
class="pre">publish-to-maven.sh</span></code> will publish the artifacts
created by the <code class="docutils literal notranslate"><span
class="pre">build-release-comet.sh</span></code> script.
+The artifacts will be signed using the gpg key of the release manager and
uploaded to the maven staging repository.</p>
+<p>Note that installed GPG keys can be listed with <code class="docutils
literal notranslate"><span class="pre">gpg</span> <span
class="pre">--list-keys</span></code>. The gpg key is a 40 character hex
string.</p>
+<p>Note: This script needs <code class="docutils literal notranslate"><span
class="pre">xmllint</span></code> to be installed. On macOS xmllint is
available by default.</p>
+<p>On Ubuntu <code class="docutils literal notranslate"><span
class="pre">apt-get</span> <span class="pre">install</span> <span
class="pre">-y</span> <span class="pre">libxml2-utils</span></code></p>
+<p>On RedHat <code class="docutils literal notranslate"><span
class="pre">yum</span> <span class="pre">install</span> <span
class="pre">-y</span> <span class="pre">xmlstarlet</span></code></p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>/comet:$./dev/release/publish-to-maven.sh<span
class="w"> </span>-h
+usage:<span class="w"> </span>publish-to-maven.sh<span class="w">
</span>options
+
+Publish<span class="w"> </span>signed<span class="w"> </span>artifacts<span
class="w"> </span>to<span class="w"> </span>Maven.
+
+Options
+-u<span class="w"> </span>ASF_USERNAME<span class="w"> </span>-<span
class="w"> </span>Username<span class="w"> </span>of<span class="w">
</span>ASF<span class="w"> </span>committer<span class="w"> </span>account
+-r<span class="w"> </span>LOCAL_REPO<span class="w"> </span>-<span class="w">
</span>path<span class="w"> </span>to<span class="w"> </span>temporary<span
class="w"> </span><span class="nb">local</span><span class="w">
</span>maven<span class="w"> </span>repo<span class="w"> </span><span
class="o">(</span>created<span class="w"> </span>and<span class="w">
</span>written<span class="w"> </span>to<span class="w"> </span>by<span
class="w"> </span><span class="s1">'build-release-comet.sh& [...]
+
+The<span class="w"> </span>following<span class="w"> </span>will<span
class="w"> </span>be<span class="w"> </span>prompted<span class="w">
</span><span class="k">for</span><span class="w"> </span>-
+ASF_PASSWORD<span class="w"> </span>-<span class="w"> </span>Password<span
class="w"> </span>of<span class="w"> </span>ASF<span class="w">
</span>committer<span class="w"> </span>account
+GPG_KEY<span class="w"> </span>-<span class="w"> </span>GPG<span class="w">
</span>key<span class="w"> </span>used<span class="w"> </span>to<span
class="w"> </span>sign<span class="w"> </span>release<span class="w">
</span>artifacts
+GPG_PASSPHRASE<span class="w"> </span>-<span class="w"> </span>Passphrase<span
class="w"> </span><span class="k">for</span><span class="w"> </span>GPG<span
class="w"> </span>key
+</pre></div>
+</div>
+<p>example</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>/comet:$./dev/release/publish-to-maven.sh<span
class="w"> </span>-u<span class="w"> </span>release_manager_asf_id<span
class="w"> </span>-r<span class="w"> </span>/tmp/comet-staging-repo-VsYOX
+ASF<span class="w"> </span>Password<span class="w"> </span>:
+GPG<span class="w"> </span>Key<span class="w"> </span><span
class="o">(</span>Optional<span class="o">)</span>:
+GPG<span class="w"> </span>Passphrase<span class="w"> </span>:
+Creating<span class="w"> </span>Nexus<span class="w"> </span>staging<span
class="w"> </span>repository
+...
+</pre></div>
+</div>
+<p>In the Nexus repository UI (https://repository.apache.org/) locate and
verify the artifacts in
+staging
(https://central.sonatype.org/publish/release/#locate-and-examine-your-staging-repository).</p>
+<p>If the artifacts appear to be correct, then close and release the
repository so it is made visible (this should
+actually happen automatically when running the script).</p>
+</section>
+</section>
+</section>
+<section id="create-the-release-candidate-tarball">
+<h3>Create the Release Candidate Tarball<a class="headerlink"
href="#create-the-release-candidate-tarball" title="Link to this
heading">#</a></h3>
+<p>Run the create-tarball script on the release candidate tag (<code
class="docutils literal notranslate"><span class="pre">0.1.0-rc1</span></code>)
to create the source tarball and upload it to
+the dev subversion repository</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>./dev/release/create-tarball.sh<span
class="w"> </span><span class="m">0</span>.1.0<span class="w"> </span><span
class="m">1</span>
+</pre></div>
+</div>
+<p>This will generate an email template for starting the vote.</p>
+</section>
+<section id="start-an-email-voting-thread">
+<h3>Start an Email Voting Thread<a class="headerlink"
href="#start-an-email-voting-thread" title="Link to this heading">#</a></h3>
+<p>Send the email that is generated in the previous step to <code
class="docutils literal notranslate"><span
class="pre">dev@datafusion.apache.org</span></code>.</p>
+</section>
+</section>
+<section id="publishing-binary-releases">
+<h2>Publishing Binary Releases<a class="headerlink"
href="#publishing-binary-releases" title="Link to this heading">#</a></h2>
+<p>Once the vote passes, we can publish the source and binary releases.</p>
+<section id="publishing-source-tarball">
+<h3>Publishing Source Tarball<a class="headerlink"
href="#publishing-source-tarball" title="Link to this heading">#</a></h3>
+<p>Run the release-tarball script to move the tarball to the release
subversion repository.</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>./dev/release/release-tarball.sh<span
class="w"> </span><span class="m">0</span>.1.0<span class="w"> </span><span
class="m">1</span>
+</pre></div>
+</div>
+</section>
+<section id="create-a-release-in-the-github-repository">
+<h3>Create a release in the GitHub repository<a class="headerlink"
href="#create-a-release-in-the-github-repository" title="Link to this
heading">#</a></h3>
+<p>Go to https://github.com/apache/datafusion-comet/releases and create a
release for the release tag, and paste the
+changelog in the description.</p>
+</section>
+<section id="publishing-maven-artifacts">
+<h3>Publishing Maven Artifacts<a class="headerlink"
href="#publishing-maven-artifacts" title="Link to this heading">#</a></h3>
+<p>Promote the Maven artifacts from staging to production by visiting
https://repository.apache.org/#stagingRepositories
+and selecting the staging repository and then clicking the “release”
button.</p>
+</section>
+<section id="publishing-crates">
+<h3>Publishing Crates<a class="headerlink" href="#publishing-crates"
title="Link to this heading">#</a></h3>
+<p>Publish the <code class="docutils literal notranslate"><span
class="pre">datafusion-comet-spark-expr</span></code> crate to crates.io so
that other Rust projects can leverage the
+Spark-compatible operators and expressions outside of Spark.</p>
+</section>
+<section id="push-a-release-tag-to-the-repo">
+<h3>Push a release tag to the repo<a class="headerlink"
href="#push-a-release-tag-to-the-repo" title="Link to this heading">#</a></h3>
+<p>Push a release tag (<code class="docutils literal notranslate"><span
class="pre">0.1.0</span></code>) to the <code class="docutils literal
notranslate"><span class="pre">apache</span></code> repository.</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>git<span class="w"> </span>fetch<span
class="w"> </span>apache
+git<span class="w"> </span>checkout<span class="w"> </span><span
class="m">0</span>.1.0-rc1
+git<span class="w"> </span>tag<span class="w"> </span><span
class="m">0</span>.1.0
+git<span class="w"> </span>push<span class="w"> </span>apache<span class="w">
</span><span class="m">0</span>.1.0
+</pre></div>
+</div>
+<p>Note that pushing a release tag will trigger a GitHub workflow that will
build a Docker image and publish
+it to GitHub Container Registry at
https://github.com/apache/datafusion-comet/pkgs/container/datafusion-comet</p>
+<p>Reply to the vote thread to close the vote and announce the release.</p>
+</section>
+</section>
+<section id="update-released-version-number-in-documentation">
+<h2>Update released version number in documentation<a class="headerlink"
href="#update-released-version-number-in-documentation" title="Link to this
heading">#</a></h2>
+<ul class="simple">
+<li><p>We provide direct links to the jar files in Maven</p></li>
+<li><p>The Kubernetes page needs updating once the Docker image has been
published to GitHub Container Regsistry</p></li>
+</ul>
+</section>
+<section id="post-release-admin">
+<h2>Post Release Admin<a class="headerlink" href="#post-release-admin"
title="Link to this heading">#</a></h2>
+<p>Register the release with the <a class="reference external"
href="https://reporter.apache.org/addrelease.html?datafusion">Apache Reporter
Service</a> using
+a version such as <code class="docutils literal notranslate"><span
class="pre">COMET-0.1.0</span></code>.</p>
+<section id="delete-old-rcs-and-releases">
+<h3>Delete old RCs and Releases<a class="headerlink"
href="#delete-old-rcs-and-releases" title="Link to this heading">#</a></h3>
+<p>See the ASF documentation on <a class="reference external"
href="https://www.apache.org/legal/release-policy.html#when-to-archive">when to
archive</a>
+for more information.</p>
+<section id="deleting-old-release-candidates-from-dev-svn">
+<h4>Deleting old release candidates from <code class="docutils literal
notranslate"><span class="pre">dev</span></code> svn<a class="headerlink"
href="#deleting-old-release-candidates-from-dev-svn" title="Link to this
heading">#</a></h4>
+<p>Release candidates should be deleted once the release is published.</p>
+<p>Get a list of DataFusion Comet release candidates:</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>svn<span class="w"> </span>ls<span
class="w"> </span>https://dist.apache.org/repos/dist/dev/datafusion<span
class="w"> </span><span class="p">|</span><span class="w"> </span>grep<span
class="w"> </span>comet
+</pre></div>
+</div>
+<p>Delete a release candidate:</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>svn<span class="w"> </span>delete<span
class="w"> </span>-m<span class="w"> </span><span class="s2">"delete old
DataFusion Comet RC"</span><span class="w">
</span>https://dist.apache.org/repos/dist/dev/datafusion/apache-datafusion-comet-0.1.0-rc1/
+</pre></div>
+</div>
+</section>
+<section id="deleting-old-releases-from-release-svn">
+<h4>Deleting old releases from <code class="docutils literal
notranslate"><span class="pre">release</span></code> svn<a class="headerlink"
href="#deleting-old-releases-from-release-svn" title="Link to this
heading">#</a></h4>
+<p>Only the latest release should be available. Delete old releases after
publishing the new release.</p>
+<p>Get a list of DataFusion releases:</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>svn<span class="w"> </span>ls<span
class="w"> </span>https://dist.apache.org/repos/dist/release/datafusion<span
class="w"> </span><span class="p">|</span><span class="w"> </span>grep<span
class="w"> </span>comet
+</pre></div>
+</div>
+<p>Delete a release:</p>
+<div class="highlight-shell notranslate"><div
class="highlight"><pre><span></span>svn<span class="w"> </span>delete<span
class="w"> </span>-m<span class="w"> </span><span class="s2">"delete old
DataFusion Comet release"</span><span class="w">
</span>https://dist.apache.org/repos/dist/release/datafusion/datafusion-comet-0.0.0
+</pre></div>
+</div>
+</section>
+</section>
+</section>
+<section id="post-release-activities">
+<h2>Post Release Activities<a class="headerlink"
href="#post-release-activities" title="Link to this heading">#</a></h2>
+<p>Writing a blog post about the release is a great way to generate more
interest in the project. We typically create a
+Google document where the community can collaborate on a blog post. Once the
content is agreed then a PR can be
+created against the <a class="reference external"
href="https://github.com/apache/datafusion-site">datafusion-site</a> repository
to add the blog post. Any
+contributor can drive this process.</p>
+</section>
+</section>
+
+
+ </article>
+
+
+
+
+
+ <footer class="prev-next-footer d-print-none">
+
+<div class="prev-next-area">
+ <a class="left-prev"
+ href="roadmap.html"
+ title="previous page">
+ <i class="fa-solid fa-angle-left"></i>
+ <div class="prev-next-info">
+ <p class="prev-next-subtitle">previous</p>
+ <p class="prev-next-title">Comet Roadmap</p>
+ </div>
+ </a>
+ <a class="right-next"
+ href="../asf/index.html"
+ title="next page">
+ <div class="prev-next-info">
+ <p class="prev-next-subtitle">next</p>
+ <p class="prev-next-title">ASF Links</p>
+ </div>
+ <i class="fa-solid fa-angle-right"></i>
+ </a>
+</div>
+ </footer>
+
+ </div>
+
+
+
+
+ </div>
+ <footer class="bd-footer-content">
+
+ </footer>
+
+ </main>
+ </div>
+ </div>
+
+ <!-- Scripts loaded after <body> so the DOM is not blocked -->
+ <script defer
src="../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf"></script>
+<script defer
src="../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf"></script>
+
+<!-- Based on pydata_sphinx_theme/footer.html -->
+<footer class="footer mt-5 mt-md-0">
+ <div class="container">
+
+ <div class="footer-item">
+ <p>Apache DataFusion, Apache DataFusion Comet, Apache, the Apache
feather logo, and the Apache DataFusion project logo</p>
+ <p>are either registered trademarks or trademarks of The Apache Software
Foundation in the United States and other countries.</p>
+ </div>
+ </div>
+</footer>
+
+
+ </body>
+</html>
\ No newline at end of file
diff --git a/contributor-guide/roadmap.html b/contributor-guide/roadmap.html
index 26d8dc240..91709dd5f 100644
--- a/contributor-guide/roadmap.html
+++ b/contributor-guide/roadmap.html
@@ -65,7 +65,7 @@ under the License.
<script async="true" defer="true"
src="https://buttons.github.io/buttons.js"></script>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
- <link rel="next" title="ASF Links" href="../asf/index.html" />
+ <link rel="next" title="Apache DataFusion Comet: Release Process"
href="release_process.html" />
<link rel="prev" title="SQL File Tests" href="sql-file-tests.html" />
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="docsearch:language" content="en"/>
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2 current"><a class="current reference internal"
href="#">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
@@ -513,11 +514,11 @@ Arrow FFI (<a class="reference external"
href="https://github.com/apache/datafus
</div>
</a>
<a class="right-next"
- href="../asf/index.html"
+ href="release_process.html"
title="next page">
<div class="prev-next-info">
<p class="prev-next-subtitle">next</p>
- <p class="prev-next-title">ASF Links</p>
+ <p class="prev-next-title">Apache DataFusion Comet: Release Process</p>
</div>
<i class="fa-solid fa-angle-right"></i>
</a>
diff --git a/contributor-guide/spark-sql-tests.html
b/contributor-guide/spark-sql-tests.html
index 1b039fb4f..f09713a9b 100644
--- a/contributor-guide/spark-sql-tests.html
+++ b/contributor-guide/spark-sql-tests.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2 current"><a class="current reference internal"
href="#">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/contributor-guide/sql-file-tests.html
b/contributor-guide/sql-file-tests.html
index b61d5d167..22acaafa2 100644
--- a/contributor-guide/sql-file-tests.html
+++ b/contributor-guide/sql-file-tests.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2 current"><a class="current reference internal"
href="#">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/contributor-guide/tracing.html b/contributor-guide/tracing.html
index c365875e6..be8bb705e 100644
--- a/contributor-guide/tracing.html
+++ b/contributor-guide/tracing.html
@@ -370,6 +370,7 @@ under the License.
<li class="toctree-l2"><a class="reference internal"
href="spark-sql-tests.html">Spark SQL Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="sql-file-tests.html">SQL File Tests</a></li>
<li class="toctree-l2"><a class="reference internal"
href="roadmap.html">Roadmap</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="release_process.html">Release Process</a></li>
<li class="toctree-l2"><a class="reference external"
href="https://github.com/apache/datafusion-comet">Github and Issue
Tracker</a></li>
</ul>
</li>
diff --git a/objects.inv b/objects.inv
index ed244d10f..00085caf2 100644
Binary files a/objects.inv and b/objects.inv differ
diff --git a/searchindex.js b/searchindex.js
index 58b38c086..9660c6d85 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles": {"1. Format Your Code": [[12,
"format-your-code"]], "1. Install Comet": [[21, "install-comet"]], "1. Native
Operators (nativeExecs map)": [[4, "native-operators-nativeexecs-map"]], "2.
Build and Verify": [[12, "build-and-verify"]], "2. Clone Spark and Apply Diff":
[[21, "clone-spark-and-apply-diff"]], "2. Sink Operators (sinks map)": [[4,
"sink-operators-sinks-map"]], "3. Comet JVM Operators": [[4,
"comet-jvm-operators"]], "3. Run Clippy (Recommended)": [[12 [...]
\ No newline at end of file
+Search.setIndex({"alltitles": {"1. Format Your Code": [[12,
"format-your-code"]], "1. Install Comet": [[22, "install-comet"]], "1. Native
Operators (nativeExecs map)": [[4, "native-operators-nativeexecs-map"]], "2.
Build and Verify": [[12, "build-and-verify"]], "2. Clone Spark and Apply Diff":
[[22, "clone-spark-and-apply-diff"]], "2. Sink Operators (sinks map)": [[4,
"sink-operators-sinks-map"]], "3. Comet JVM Operators": [[4,
"comet-jvm-operators"]], "3. Run Clippy (Recommended)": [[12 [...]
\ No newline at end of file
diff --git a/user-guide/latest/compatibility.html
b/user-guide/latest/compatibility.html
index f1dcf7f51..755148812 100644
--- a/user-guide/latest/compatibility.html
+++ b/user-guide/latest/compatibility.html
@@ -585,7 +585,7 @@ Spark.</p></li>
<td><p>-</p></td>
<td><p>C</p></td>
<td><p>N/A</p></td>
-<td><p>U</p></td>
+<td><p>C</p></td>
<td><p>C</p></td>
<td><p>C</p></td>
<td><p>C</p></td>
@@ -595,7 +595,7 @@ Spark.</p></li>
<td><p>U</p></td>
</tr>
<tr class="row-even"><td><p>byte</p></td>
-<td><p>U</p></td>
+<td><p>C</p></td>
<td><p>C</p></td>
<td><p>-</p></td>
<td><p>N/A</p></td>
@@ -665,7 +665,7 @@ Spark.</p></li>
<td><p>U</p></td>
</tr>
<tr class="row-odd"><td><p>integer</p></td>
-<td><p>U</p></td>
+<td><p>C</p></td>
<td><p>C</p></td>
<td><p>C</p></td>
<td><p>N/A</p></td>
@@ -679,7 +679,7 @@ Spark.</p></li>
<td><p>U</p></td>
</tr>
<tr class="row-even"><td><p>long</p></td>
-<td><p>U</p></td>
+<td><p>C</p></td>
<td><p>C</p></td>
<td><p>C</p></td>
<td><p>N/A</p></td>
@@ -693,7 +693,7 @@ Spark.</p></li>
<td><p>U</p></td>
</tr>
<tr class="row-odd"><td><p>short</p></td>
-<td><p>U</p></td>
+<td><p>C</p></td>
<td><p>C</p></td>
<td><p>C</p></td>
<td><p>N/A</p></td>
@@ -793,7 +793,7 @@ or strings containing null bytes (e.g \u0000)</p></li>
<td><p>-</p></td>
<td><p>C</p></td>
<td><p>N/A</p></td>
-<td><p>U</p></td>
+<td><p>C</p></td>
<td><p>C</p></td>
<td><p>C</p></td>
<td><p>C</p></td>
@@ -1001,7 +1001,7 @@ or strings containing null bytes (e.g \u0000)</p></li>
<td><p>-</p></td>
<td><p>C</p></td>
<td><p>N/A</p></td>
-<td><p>U</p></td>
+<td><p>C</p></td>
<td><p>C</p></td>
<td><p>C</p></td>
<td><p>C</p></td>
diff --git a/user-guide/latest/configs.html b/user-guide/latest/configs.html
index 7e5998593..8ed9d3752 100644
--- a/user-guide/latest/configs.html
+++ b/user-guide/latest/configs.html
@@ -1310,58 +1310,66 @@ under the License.
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">Lower</span></code></p></td>
<td><p>true</p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MakeDecimal.enabled</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MakeDate.enabled</span></code></p></td>
+<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">MakeDate</span></code></p></td>
+<td><p>true</p></td>
+</tr>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MakeDecimal.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">MakeDecimal</span></code></p></td>
<td><p>true</p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MapContainsKey.enabled</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MapContainsKey.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">MapContainsKey</span></code></p></td>
<td><p>true</p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MapEntries.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MapEntries.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">MapEntries</span></code></p></td>
<td><p>true</p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MapFromArrays.enabled</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MapFromArrays.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">MapFromArrays</span></code></p></td>
<td><p>true</p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MapFromEntries.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MapFromEntries.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">MapFromEntries</span></code></p></td>
<td><p>true</p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MapKeys.enabled</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MapKeys.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">MapKeys</span></code></p></td>
<td><p>true</p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MapValues.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MapValues.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">MapValues</span></code></p></td>
<td><p>true</p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.Md5.enabled</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.Md5.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">Md5</span></code></p></td>
<td><p>true</p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.Minute.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.Minute.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">Minute</span></code></p></td>
<td><p>true</p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MonotonicallyIncreasingID.enabled</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.MonotonicallyIncreasingID.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">MonotonicallyIncreasingID</span></code></p></td>
<td><p>true</p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.Month.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.Month.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">Month</span></code></p></td>
<td><p>true</p></td>
</tr>
-<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.Multiply.enabled</span></code></p></td>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.Multiply.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">Multiply</span></code></p></td>
<td><p>true</p></td>
</tr>
-<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.Murmur3Hash.enabled</span></code></p></td>
+<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.Murmur3Hash.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">Murmur3Hash</span></code></p></td>
<td><p>true</p></td>
</tr>
+<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.NextDay.enabled</span></code></p></td>
+<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">NextDay</span></code></p></td>
+<td><p>true</p></td>
+</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span
class="pre">spark.comet.expression.Not.enabled</span></code></p></td>
<td><p>Enable Comet acceleration for <code class="docutils literal
notranslate"><span class="pre">Not</span></code></p></td>
<td><p>true</p></td>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]