This is an automated email from the ASF dual-hosted git repository.
jbonofre pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/polaris.git
The following commit(s) were added to refs/heads/main by this push:
new d14ee7b7a Graduation code base changes (#3830)
d14ee7b7a is described below
commit d14ee7b7a2f3902f1e891a4fdab28d0c6b3afe00
Author: Robert Stupp <[email protected]>
AuthorDate: Fri Feb 20 17:57:07 2026 +0100
Graduation code base changes (#3830)
* Graduation code base changes
* Removal of "incubator" mentions
* Removal of the DISCLAIMER files
* GitHub workflows
* Existing blog posts and docs for published releases are not updated
* (C) year
* re-add rephrased `--devel` option note
* oops
---
.github/SECRETS.md | 22 ++--
.../workflows/release-1-create-release-branch.yml | 4 +-
.../release-2-update-release-candidate.yml | 2 +-
.../release-3-build-and-publish-artifacts.yml | 19 ++-
.github/workflows/release-4-publish-release.yml | 26 ++---
.../release-X-cancel-release-candidate.yml | 8 +-
CHAT_BYLAWS.md | 14 +--
DISCLAIMER | 10 --
NOTICE | 4 +-
README.md | 8 +-
.../src/main/kotlin/polaris-java.gradle.kts | 2 +-
.../src/main/kotlin/publishing/rootProject.kt | 9 +-
gradle/jar-licenses/NOTICE | 4 +-
helm/polaris/Chart.yaml | 6 +-
helm/polaris/DISCLAIMER | 10 --
helm/polaris/NOTICE | 4 +-
helm/polaris/README.md | 2 +-
helm/polaris/artifacthub-repo.yml | 2 +-
helm/polaris/helm.md.gotmpl | 9 +-
plugins/spark/v3.5/spark/BUNDLE-NOTICE | 8 +-
releasey/bin/build-helm-index.sh | 10 +-
releasey/libs/_constants.sh | 4 +-
releasey/libs/_version.sh | 22 ++--
releasey/release-process-flowchart.mmd | 2 +-
runtime/admin/distribution/DISCLAIMER | 10 --
runtime/admin/distribution/NOTICE | 4 +-
runtime/admin/src/main/docker/Dockerfile.jvm | 3 +-
.../src/main/resources/application.properties | 2 +-
.../src/main/resources/application.properties | 2 +-
runtime/distribution/DISCLAIMER | 10 --
runtime/distribution/NOTICE | 4 +-
runtime/distribution/build.gradle.kts | 1 -
runtime/server/distribution/DISCLAIMER | 10 --
runtime/server/distribution/NOTICE | 4 +-
runtime/server/src/main/docker/Dockerfile.jvm | 3 +-
site/content/_index.adoc | 8 +-
site/content/community/_index.adoc | 36 +++---
.../release-guides/manual-release-guide.md | 111 +++---------------
.../release-guides/release-verification-guide.md | 22 ++--
.../release-guides/semi-automated-release-guide.md | 129 +--------------------
site/content/community/security-report.md | 2 +-
site/content/downloads/_index.md | 2 +-
site/content/in-dev/unreleased/_index.md | 12 +-
site/content/in-dev/unreleased/configuration.md | 2 +-
site/content/in-dev/unreleased/entities.md | 2 +-
.../deploying-polaris/local-deploy.md | 2 +-
.../getting-started/install-dependencies.md | 2 +-
site/content/in-dev/unreleased/helm.md | 9 +-
.../unreleased/managing-security/access-control.md | 2 +-
.../managing-security/external-pdp/_index.md | 2 +-
.../managing-security/external-pdp/opa.md | 2 +-
site/content/in-dev/unreleased/telemetry.md | 2 +-
tools/verify-release/verify-release.sh | 22 ++--
.../apache/polaris/version/TestPolarisVersion.java | 2 +-
.../jarTest/resources/META-INF/FAKE_MANIFEST.MF | 2 +-
version.txt | 2 +-
56 files changed, 185 insertions(+), 454 deletions(-)
diff --git a/.github/SECRETS.md b/.github/SECRETS.md
index 3c17730d5..5dd6a2401 100644
--- a/.github/SECRETS.md
+++ b/.github/SECRETS.md
@@ -38,14 +38,14 @@ Note: Organization level secrets are _not_ shown the
repository's list of secret
### GitHub Secrets
[These secrets](https://github.com/apache/polaris/settings/secrets/actions)
are either provided and managed by Apache
-Infra or the Polaris (P)PMC.
+Infra or the Polaris PMC.
-| Secret | Purpose
| Provided by |
-|----------------------------|-----------------------------------------------------------------------------------|----------------|
-| `POLARIS_GPG_PRIVATE_KEY` | GPG signing key, used to sign release
artifacts. | ASF Infra |
-| `POLARIS_SVN_DEV_USERNAME` | [Apache
SVN](https://dist.apache.org/repos/dist) username. | ASF
Infra |
-| `POLARIS_SVN_DEV_PASSWORD` | Password for the above.
| ASF Infra |
-| `TEST_PYPI_API_TOKEN` | [TestPyPI](https://test.pypi.org/) API token,
used to publish snapshot artifacts. | Polaris (P)PMC |
+| Secret | Purpose
| Provided by |
+|----------------------------|-----------------------------------------------------------------------------------|-------------|
+| `POLARIS_GPG_PRIVATE_KEY` | GPG signing key, used to sign release
artifacts. | ASF Infra |
+| `POLARIS_SVN_DEV_USERNAME` | [Apache
SVN](https://dist.apache.org/repos/dist) username. | ASF
Infra |
+| `POLARIS_SVN_DEV_PASSWORD` | Password for the above.
| ASF Infra |
+| `TEST_PYPI_API_TOKEN` | [TestPyPI](https://test.pypi.org/) API token,
used to publish snapshot artifacts. | Polaris PMC |
### GitHub variables
@@ -56,11 +56,11 @@ None.
### GitHub Secrets
[These
secrets](https://github.com/apache/polaris-tools/settings/secrets/actions) are
either provided and managed by
-Apache Infra or the Polaris (P)PMC.
+Apache Infra or the Polaris PMC.
-| Secret | Purpose
| Provided by |
-|-----------------------|-----------------------------------------------------------------------------------|----------------|
-| `TEST_PYPI_API_TOKEN` | [TestPyPI](https://test.pypi.org/) API token, used
to publish snapshot artifacts. | Polaris (P)PMC |
+| Secret | Purpose
| Provided by |
+|-----------------------|-----------------------------------------------------------------------------------|-------------|
+| `TEST_PYPI_API_TOKEN` | [TestPyPI](https://test.pypi.org/) API token, used
to publish snapshot artifacts. | Polaris PMC |
### GitHub Variables
diff --git a/.github/workflows/release-1-create-release-branch.yml
b/.github/workflows/release-1-create-release-branch.yml
index 4712a0809..89870294d 100644
--- a/.github/workflows/release-1-create-release-branch.yml
+++ b/.github/workflows/release-1-create-release-branch.yml
@@ -23,7 +23,7 @@ on:
workflow_dispatch:
inputs:
version:
- description: 'Release version without RC number (e.g.,
1.0.0-incubating)'
+ description: 'Release version without RC number (e.g., 1.0.0)'
required: true
type: string
dry_run:
@@ -81,7 +81,7 @@ jobs:
# Validate version format and extract components
if ! validate_and_extract_polaris_version "${version}"; then
- echo "❌ Invalid version format. Expected:
major.minor.patch-incubating, got: ${version}" >> $GITHUB_STEP_SUMMARY
+ echo "❌ Invalid version format. Expected: major.minor.patch, got:
${version}" >> $GITHUB_STEP_SUMMARY
exit 1
fi
diff --git a/.github/workflows/release-2-update-release-candidate.yml
b/.github/workflows/release-2-update-release-candidate.yml
index 7b4eb942b..446412a65 100644
--- a/.github/workflows/release-2-update-release-candidate.yml
+++ b/.github/workflows/release-2-update-release-candidate.yml
@@ -94,7 +94,7 @@ jobs:
find_next_patch_number "${major}" "${minor}"
# Build the target version using branch major.minor and determined
patch
- version_without_rc="${major}.${minor}.${patch}-incubating"
+ version_without_rc="${major}.${minor}.${patch}"
# Find the next available RC number by checking existing tags
find_next_rc_number "${version_without_rc}"
diff --git a/.github/workflows/release-3-build-and-publish-artifacts.yml
b/.github/workflows/release-3-build-and-publish-artifacts.yml
index 84920078e..95b4a04cf 100644
--- a/.github/workflows/release-3-build-and-publish-artifacts.yml
+++ b/.github/workflows/release-3-build-and-publish-artifacts.yml
@@ -85,13 +85,13 @@ jobs:
echo "" >> $GITHUB_STEP_SUMMARY
echo "Current ref: \`${ref}\`" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
- echo "Please select a release candidate tag (e.g.,
\`apache-polaris-1.0.0-incubating-rc0\`) from the 'Use workflow from' dropdown
in the GitHub UI." >> $GITHUB_STEP_SUMMARY
+ echo "Please select a release candidate tag (e.g.,
\`apache-polaris-1.0.0-rc0\`) from the 'Use workflow from' dropdown in the
GitHub UI." >> $GITHUB_STEP_SUMMARY
exit 1
fi
# Validate git tag format and extract version components
if ! validate_and_extract_git_tag_version "${git_tag}"; then
- echo "❌ Invalid git tag format: \`${git_tag}\`. Expected format:
apache-polaris-x.y.z-incubating-rcN." >> $GITHUB_STEP_SUMMARY
+ echo "❌ Invalid git tag format: \`${git_tag}\`. Expected format:
apache-polaris-x.y.z-rcN." >> $GITHUB_STEP_SUMMARY
exit 1
fi
@@ -422,7 +422,7 @@ jobs:
dist_dev_dir=${RELEASEY_DIR}/polaris-dist-dev
# Base URL for Apache Polaris helm charts archive
-
ARCHIVE_URL="https://archive.apache.org/dist/incubator/polaris/helm-chart"
+ ARCHIVE_URL="https://archive.apache.org/dist/polaris/helm-chart"
# Temporary directory for downloads
WORK_DIR=$(mktemp -d)
@@ -433,7 +433,7 @@ jobs:
echo ""
echo "Discovering chart versions from archive.apache.org..."
ARCHIVE_VERSIONS=$(curl -sL "$ARCHIVE_URL/" | \
- grep -oE 'href="[0-9]+\.[0-9]+\.[0-9]+-incubating/"' | \
+ grep -oE 'href="[0-9]+\.[0-9]+\.[0-9]+(-incubating)?/"' | \
sed 's/href="//;s/\/"//' | \
sort -V | uniq || echo "")
echo "Found archive versions: $ARCHIVE_VERSIONS"
@@ -543,15 +543,15 @@ jobs:
* https://github.com/apache/polaris/tree/${commit_sha}
The release tarball, signature, and checksums are here:
- *
https://dist.apache.org/repos/dist/dev/incubator/polaris/${version_without_rc}
+ *
https://dist.apache.org/repos/dist/dev/polaris/${version_without_rc}
Helm charts are available on:
- *
https://dist.apache.org/repos/dist/dev/incubator/polaris/helm-chart/${version_without_rc}
+ *
https://dist.apache.org/repos/dist/dev/polaris/helm-chart/${version_without_rc}
NB: you have to build the Docker images locally in order to test
Helm charts.
You can find the KEYS file here:
- * https://downloads.apache.org/incubator/polaris/KEYS
+ * https://downloads.apache.org/polaris/KEYS
Convenience binary artifacts are staged on Nexus. The Maven
repositories URLs are:
*
https://repository.apache.org/content/repositories/${staging_repository_id}/
@@ -565,7 +565,6 @@ jobs:
[ ] +0
[ ] -1 Do not release this because...
- Only PPMC members and mentors have binding votes, but other
community members are encouraged to cast non-binding votes. This vote will pass
if there are 3 binding +1 votes and more binding +1 votes than -1 votes.
-
- NB: if this vote passes, a new vote has to be started on the
Incubator general mailing list.
+ Only PMC members have binding votes, but other community members are
encouraged to cast non-binding votes.
+ This vote will pass if there are 3 binding +1 votes and more binding
+1 votes than -1 votes.
EOT
diff --git a/.github/workflows/release-4-publish-release.yml
b/.github/workflows/release-4-publish-release.yml
index 0baa2e386..0850c9912 100644
--- a/.github/workflows/release-4-publish-release.yml
+++ b/.github/workflows/release-4-publish-release.yml
@@ -118,7 +118,7 @@ jobs:
find_next_patch_number "${major}" "${minor}"
# Build the version string for the patch with RC tags
- version_without_rc="${major}.${minor}.${patch}-incubating"
+ version_without_rc="${major}.${minor}.${patch}"
# Find the latest RC tag for this version
find_next_rc_number "${version_without_rc}"
@@ -188,11 +188,11 @@ jobs:
source "${LIBS_DIR}/_exec.sh"
# Define source and destination URLs
-
dev_artifacts_url="${APACHE_DIST_URL}/dev/incubator/polaris/${version_without_rc}"
-
release_artifacts_url="${APACHE_DIST_URL}/release/incubator/polaris/${version_without_rc}"
+
dev_artifacts_url="${APACHE_DIST_URL}/dev/polaris/${version_without_rc}"
+
release_artifacts_url="${APACHE_DIST_URL}/release/polaris/${version_without_rc}"
-
dev_helm_url="${APACHE_DIST_URL}/dev/incubator/polaris/helm-chart/${version_without_rc}"
-
release_helm_url="${APACHE_DIST_URL}/release/incubator/polaris/helm-chart/${version_without_rc}"
+
dev_helm_url="${APACHE_DIST_URL}/dev/polaris/helm-chart/${version_without_rc}"
+
release_helm_url="${APACHE_DIST_URL}/release/polaris/helm-chart/${version_without_rc}"
exec_process svn mv --username "$SVN_USERNAME" --password
"$SVN_PASSWORD" --non-interactive \
"${dev_artifacts_url}" "${release_artifacts_url}" \
@@ -217,11 +217,11 @@ jobs:
source "${LIBS_DIR}/_constants.sh"
source "${LIBS_DIR}/_exec.sh"
- release_artifacts_url="${APACHE_DIST_URL}/release/incubator/polaris"
-
release_helm_url="${APACHE_DIST_URL}/release/incubator/polaris/helm-chart"
+ release_artifacts_url="${APACHE_DIST_URL}/release/polaris"
+ release_helm_url="${APACHE_DIST_URL}/release/polaris/helm-chart"
# List and remove old release artifact versions
- old_versions=$(svn list --username "$SVN_USERNAME" --password
"$SVN_PASSWORD" --non-interactive "${release_artifacts_url}" | grep -E
'^[0-9]+\.[0-9]+\.[0-9]+-incubating/$' | sed 's|/$||' | grep -v
"^${version_without_rc}$" || true)
+ old_versions=$(svn list --username "$SVN_USERNAME" --password
"$SVN_PASSWORD" --non-interactive "${release_artifacts_url}" | grep -E
'^[0-9]+\.[0-9]+\.[0-9]+(-incubating)?/$' | sed 's|/$||' | grep -v
"^${version_without_rc}$" || true)
if [[ -n "${old_versions}" ]]; then
echo "## Old Releases Cleanup" >> $GITHUB_STEP_SUMMARY
@@ -241,7 +241,7 @@ jobs:
fi
# List and remove old Helm chart versions
- old_helm_versions=$(svn list --username "$SVN_USERNAME" --password
"$SVN_PASSWORD" --non-interactive "${release_helm_url}" | grep -E
'^[0-9]+\.[0-9]+\.[0-9]+-incubating/$' | sed 's|/$||' | grep -v
"^${version_without_rc}$" || true)
+ old_helm_versions=$(svn list --username "$SVN_USERNAME" --password
"$SVN_PASSWORD" --non-interactive "${release_helm_url}" | grep -E
'^[0-9]+\.[0-9]+\.[0-9]+(-incubating)?/$' | sed 's|/$||' | grep -v
"^${version_without_rc}$" || true)
if [[ -n "${old_helm_versions}" ]]; then
echo "" >> $GITHUB_STEP_SUMMARY
@@ -271,8 +271,8 @@ jobs:
source "${LIBS_DIR}/_exec.sh"
# Define source and destination URLs for the Helm index
-
dev_helm_index_url="${APACHE_DIST_URL}/dev/incubator/polaris/helm-chart/index.yaml"
-
release_helm_index_url="${APACHE_DIST_URL}/release/incubator/polaris/helm-chart/index.yaml"
+
dev_helm_index_url="${APACHE_DIST_URL}/dev/polaris/helm-chart/index.yaml"
+
release_helm_index_url="${APACHE_DIST_URL}/release/polaris/helm-chart/index.yaml"
# Move the index.yaml from dev to release
# The index was already properly generated in workflow 3 with
relative URLs for the current
@@ -364,8 +364,8 @@ jobs:
exec_process mkdir -p "${artifacts_dir}"
# Download artifacts from Apache dist release space
-
release_artifacts_url="${APACHE_DIST_URL}/release/incubator/polaris/${version_without_rc}"
-
release_helm_url="${APACHE_DIST_URL}/release/incubator/polaris/helm-chart/${version_without_rc}"
+
release_artifacts_url="${APACHE_DIST_URL}/release/polaris/${version_without_rc}"
+
release_helm_url="${APACHE_DIST_URL}/release/polaris/helm-chart/${version_without_rc}"
# Download main artifacts
exec_process svn export --username "$SVN_USERNAME" --password
"$SVN_PASSWORD" --non-interactive \
diff --git a/.github/workflows/release-X-cancel-release-candidate.yml
b/.github/workflows/release-X-cancel-release-candidate.yml
index 98f01d2f3..453b92a24 100644
--- a/.github/workflows/release-X-cancel-release-candidate.yml
+++ b/.github/workflows/release-X-cancel-release-candidate.yml
@@ -95,13 +95,13 @@ jobs:
echo "" >> $GITHUB_STEP_SUMMARY
echo "Current ref: \`${ref}\`" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
- echo "Please select a release candidate tag (e.g.,
\`apache-polaris-1.0.0-incubating-rc0\`) from the 'Use workflow from' dropdown
in the GitHub UI." >> $GITHUB_STEP_SUMMARY
+ echo "Please select a release candidate tag (e.g.,
\`apache-polaris-1.0.0-rc0\`) from the 'Use workflow from' dropdown in the
GitHub UI." >> $GITHUB_STEP_SUMMARY
exit 1
fi
# Validate git tag format and extract version components
if ! validate_and_extract_git_tag_version "${git_tag}"; then
- echo "❌ Invalid git tag format: \`${git_tag}\`. Expected format:
apache-polaris-x.y.z-incubating-rcN." >> $GITHUB_STEP_SUMMARY
+ echo "❌ Invalid git tag format: \`${git_tag}\`. Expected format:
apache-polaris-x.y.z-rcN." >> $GITHUB_STEP_SUMMARY
exit 1
fi
@@ -183,8 +183,8 @@ jobs:
source "${LIBS_DIR}/_exec.sh"
# Define URLs for artifacts and Helm chart in dist dev
-
dev_artifacts_url="${APACHE_DIST_URL}/dev/incubator/polaris/${version_without_rc}"
-
dev_helm_url="${APACHE_DIST_URL}/dev/incubator/polaris/helm-chart/${version_without_rc}"
+
dev_artifacts_url="${APACHE_DIST_URL}/dev/polaris/${version_without_rc}"
+
dev_helm_url="${APACHE_DIST_URL}/dev/polaris/helm-chart/${version_without_rc}"
# Check if artifacts directory exists and delete it
if svn ls --username "$SVN_USERNAME" --password "$SVN_PASSWORD"
--non-interactive "${dev_artifacts_url}" >/dev/null 2>&1; then
diff --git a/CHAT_BYLAWS.md b/CHAT_BYLAWS.md
index 8d551f845..145a0159a 100644
--- a/CHAT_BYLAWS.md
+++ b/CHAT_BYLAWS.md
@@ -19,7 +19,7 @@
# Apache Polaris - Project Chat Bylaws
-Apache Polaris is currently undergoing Incubation at the Apache Software
Foundation.
+Apache Polaris is a top level project at the Apache Software Foundation.
## Motivation
@@ -29,7 +29,7 @@ A few rules shall ensure that the chat conforms to the rules
and best
practices of the Apache Software Foundation and serves well as a collaboration
tool for the project.
Organizations and other open-source projects that contribute continuously and
significantly to Polaris are welcome, but
-shall not use the Polaris chat as a vehicle for their own marketing without
explicit approval of the project (P)PMC.
+shall not use the Polaris chat as a vehicle for their own marketing without
explicit approval of the project PMC.
## Code of Conduct
@@ -38,15 +38,15 @@ the Polaris project public chat.
## Governance
-* The Polaris project’s chat tool is not provided by the ASF - the Polaris
project (P)PMC members govern and monitor the
+* The Polaris project’s chat tool is not provided by the ASF - the Polaris
project PMC members govern and monitor the
chat service.
* Everybody is welcome to join the Polaris project chat. Invites are not
needed.
-* Polaris project (P)PMC members have “administrator” privileges on the Slack
chat. Polaris project committers are granted
+* Polaris project PMC members have “administrator” privileges on the Slack
chat. Polaris project committers are granted
“moderator” or “administrator” privileges for moderation purposes.
* This bylaws document shall be published on the project’s web site and linked
from relevant public channels.
-* Only (P)PMC members are allowed to create new channels. The number of
channels shall be limited to #general (user
+* Only PMC members are allowed to create new channels. The number of channels
shall be limited to #general (user
discussions), #dev (development discussions), #announcements (release
announcements), and #noise (GitHub feed).
-* Only (P)PMC members are allowed to notify a large number of users (aka
@here).
+* Only PMC members are allowed to notify a large number of users (aka @here).
## 3rd Parties
@@ -54,7 +54,7 @@ Definition: “3rd party” means any (other) open-source project
or any commerc
### 3rd Party Channels
-* 3rd parties who contribute to or use the Polaris project may ask the (P)PMC
to get a dedicated public channel, for
+* 3rd parties who contribute to or use the Polaris project may ask the PMC to
get a dedicated public channel, for
example #vendor-<vendor-name> or #project-<project-name>.
* Promotion of 3rd party content is only permitted in these 3rd party
channels, and only if the content primarily covers
Polaris. Commercial advertisements in any form are prohibited.
diff --git a/DISCLAIMER b/DISCLAIMER
deleted file mode 100644
index e78e79b24..000000000
--- a/DISCLAIMER
+++ /dev/null
@@ -1,10 +0,0 @@
-Apache Polaris (incubating) is an effort undergoing incubation at The Apache
-Software Foundation (ASF), sponsored by the Apache Incubator PMC.
-
-Incubation is required of all newly accepted projects until a further review
-indicates that the infrastructure, communications, and decision making process
-have stabilized in a manner consistent with other successful ASF projects.
-
-While incubation status is not necessarily a reflection of the completeness
-or stability of the code, it does indicate that the project has yet to be
-fully endorsed by the ASF.
\ No newline at end of file
diff --git a/NOTICE b/NOTICE
index 8c392caff..68b0f7fb8 100644
--- a/NOTICE
+++ b/NOTICE
@@ -1,5 +1,5 @@
-Apache Polaris (incubating)
-Copyright 2025 The Apache Software Foundation
+Apache Polaris
+Copyright 2026 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
diff --git a/README.md b/README.md
index 7d570c8cd..0b0c4d3a1 100644
--- a/README.md
+++ b/README.md
@@ -17,7 +17,7 @@
under the License.
-->
-# Apache Polaris (incubating)
+# Apache Polaris
Apache Polaris™ is an open-source, fully-featured catalog for Apache
Iceberg™. It implements Iceberg's
[REST
API](https://github.com/apache/iceberg/blob/main/open-api/rest-catalog-open-api.yaml),
@@ -208,9 +208,3 @@ Advanced configuration options for publishing build scans
(only local and non-`a
## License
Apache Polaris is under the Apache License Version 2.0. See the
[LICENSE](LICENSE).
-
-## ASF Incubator disclaimer
-
-Apache Polaris™ is an effort undergoing incubation at The Apache
Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is
required of all newly accepted projects until a further review indicates that
the infrastructure, communications, and decision making process have stabilized
in a manner consistent with other successful ASF projects. While incubation
status is not necessarily a reflection of the completeness or stability of the
code, it does indicate that the [...]
-
-<sub>Apache®, Apache Polaris™, Apache Iceberg™, Apache
Spark™ are either registered trademarks or trademarks of the Apache
Software Foundation in the United States and/or other countries.</sub>
diff --git a/build-logic/src/main/kotlin/polaris-java.gradle.kts
b/build-logic/src/main/kotlin/polaris-java.gradle.kts
index 48da55557..f0c196b0a 100644
--- a/build-logic/src/main/kotlin/polaris-java.gradle.kts
+++ b/build-logic/src/main/kotlin/polaris-java.gradle.kts
@@ -204,7 +204,7 @@ tasks.withType<Jar>().configureEach {
// Do not add any (more or less) dynamic information to jars, because
that makes Gradle's
// caching way less efficient. Note that version and Git information are
already added to jar
// manifests for release(-like) builds.
- "Implementation-Title" to "Apache Polaris(TM) (incubating)",
+ "Implementation-Title" to "Apache Polaris(TM)",
"Implementation-Vendor" to "Apache Software Foundation",
"Implementation-URL" to "https://polaris.apache.org/",
)
diff --git a/build-logic/src/main/kotlin/publishing/rootProject.kt
b/build-logic/src/main/kotlin/publishing/rootProject.kt
index db15baf94..24cf1fef0 100644
--- a/build-logic/src/main/kotlin/publishing/rootProject.kt
+++ b/build-logic/src/main/kotlin/publishing/rootProject.kt
@@ -147,10 +147,10 @@ internal fun configureOnRootProject(project: Project) =
* https://github.com/apache/$asfName/tree/$gitCommitId
The release tarball, signature, and checksums are here:
- *
https://dist.apache.org/repos/dist/dev/incubator/$asfName/apache-$asfName-$version
+ *
https://dist.apache.org/repos/dist/dev/$asfName/apache-$asfName-$version
You can find the KEYS file here:
- * https://downloads.apache.org/incubator/$asfName/KEYS
+ * https://downloads.apache.org/$asfName/KEYS
Convenience binary artifacts are staged on Nexus. The Maven
repository URL is:
* $staginRepoUrl
@@ -163,13 +163,10 @@ internal fun configureOnRootProject(project: Project) =
[ ] +0
[ ] -1 Do not release this because...
- Only PPMC members and mentors have binding votes, but other
community members are
+ Only PMC members have binding votes, but other community members
are
encouraged to cast non-binding votes. This vote will pass if
there are
3 binding +1 votes and more binding +1 votes than -1 votes.
- NB: if this vote pass, a new vote has to be started on the
Incubator general mailing
- list.
-
Thanks
Regards
"""
diff --git a/gradle/jar-licenses/NOTICE b/gradle/jar-licenses/NOTICE
index 1b5fc7e68..2bc804bb4 100644
--- a/gradle/jar-licenses/NOTICE
+++ b/gradle/jar-licenses/NOTICE
@@ -1,5 +1,5 @@
-Apache Polaris (incubating)
-Copyright 2025 The Apache Software Foundation
+Apache Polaris
+Copyright 2026 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
diff --git a/helm/polaris/Chart.yaml b/helm/polaris/Chart.yaml
index 7db69ab70..eef889193 100644
--- a/helm/polaris/Chart.yaml
+++ b/helm/polaris/Chart.yaml
@@ -19,10 +19,10 @@
apiVersion: v2
name: polaris
-description: A Helm chart for Apache Polaris (incubating)
+description: A Helm chart for Apache Polaris
type: application
-version: 1.4.0-incubating-SNAPSHOT
-appVersion: 1.4.0-incubating-SNAPSHOT
+version: 1.4.0-SNAPSHOT
+appVersion: 1.4.0-SNAPSHOT
home: https://polaris.apache.org/
icon:
https://raw.githubusercontent.com/apache/polaris/main/site/static/img/logos/polaris-brandmark.png
sources:
diff --git a/helm/polaris/DISCLAIMER b/helm/polaris/DISCLAIMER
deleted file mode 100644
index e78e79b24..000000000
--- a/helm/polaris/DISCLAIMER
+++ /dev/null
@@ -1,10 +0,0 @@
-Apache Polaris (incubating) is an effort undergoing incubation at The Apache
-Software Foundation (ASF), sponsored by the Apache Incubator PMC.
-
-Incubation is required of all newly accepted projects until a further review
-indicates that the infrastructure, communications, and decision making process
-have stabilized in a manner consistent with other successful ASF projects.
-
-While incubation status is not necessarily a reflection of the completeness
-or stability of the code, it does indicate that the project has yet to be
-fully endorsed by the ASF.
\ No newline at end of file
diff --git a/helm/polaris/NOTICE b/helm/polaris/NOTICE
index 1fe1f1199..0ec62d390 100644
--- a/helm/polaris/NOTICE
+++ b/helm/polaris/NOTICE
@@ -1,5 +1,5 @@
-Apache Polaris (incubating)
-Copyright 2025 The Apache Software Foundation
+Apache Polaris
+Copyright 2026 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
diff --git a/helm/polaris/README.md b/helm/polaris/README.md
index 12e8e66ca..7d7d7b108 100644
--- a/helm/polaris/README.md
+++ b/helm/polaris/README.md
@@ -39,7 +39,7 @@ including Apache Doris™, Apache Flink®, Apache Spark™,
Dremio® OSS, StarRo
* Centralized catalog, namespace, and table management
* Kubernetes-native deployment with support for horizontal scaling, Ingress,
and Gateway API
* Production-ready observability with health checks and metrics
-* Open source and vendor neutral, governed by the Apache Polaris PPMC under
the Apache Software Foundation
+* Open source and vendor neutral, governed by the Apache Polaris PMC under the
Apache Software Foundation
## Documentation
diff --git a/helm/polaris/artifacthub-repo.yml
b/helm/polaris/artifacthub-repo.yml
index a751ab532..cb4d2f782 100644
--- a/helm/polaris/artifacthub-repo.yml
+++ b/helm/polaris/artifacthub-repo.yml
@@ -20,5 +20,5 @@
# Artifact Hub repository metadata file
repositoryID: apache-polaris
owners:
- - name: Apache Polaris PPMC
+ - name: Apache Polaris PMC
email: [email protected]
diff --git a/helm/polaris/helm.md.gotmpl b/helm/polaris/helm.md.gotmpl
index 90536fedc..a0400c1a4 100644
--- a/helm/polaris/helm.md.gotmpl
+++ b/helm/polaris/helm.md.gotmpl
@@ -30,14 +30,14 @@ The instructions below are for the local Minikube cluster.
They assume Minikube
Start the Minikube cluster, add the official Polaris Helm repository, create
the target namespace, and install the chart:
```bash
minikube start
-helm repo add polaris https://downloads.apache.org/incubator/polaris/helm-chart
+helm repo add polaris https://downloads.apache.org/polaris/helm-chart
helm repo update
kubectl create namespace polaris
-helm install polaris polaris/polaris --namespace polaris --devel
+helm install polaris polaris/polaris --namespace polaris
```
{{ "{{" }}< alert note >}}
-The --devel flag is required while Polaris is in the incubation phase.
+For Apache Polaris releases up to 1.3.0-incubating, the `--devel` flag is
required for `helm` invocations.
Helm treats the -incubating suffix as a pre‑release by SemVer rules, and will
skip charts that are not in a stable versioning scheme by default.
{{ "{{" }}< /alert >}}
@@ -50,8 +50,7 @@ Default Polaris Helm chart values are for a non-persistent
backend. To use a per
Polaris Helm chart package includes a number of files that can be used as a
starting point for such configuration. To use them, download the chart into a
local directory:
```bash
helm pull polaris \
- --repo https://downloads.apache.org/incubator/polaris/helm-chart \
- --devel \
+ --repo https://downloads.apache.org/polaris/helm-chart \
--untar \
--untardir ./helm
```
diff --git a/plugins/spark/v3.5/spark/BUNDLE-NOTICE
b/plugins/spark/v3.5/spark/BUNDLE-NOTICE
index 9138e5e89..be4561b6b 100644
--- a/plugins/spark/v3.5/spark/BUNDLE-NOTICE
+++ b/plugins/spark/v3.5/spark/BUNDLE-NOTICE
@@ -1,5 +1,5 @@
-Apache Polaris (incubating)
-Copyright 2025 The Apache Software Foundation
+Apache Polaris
+Copyright 2026 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
@@ -15,9 +15,9 @@ file:
| Copyright 2015-2025 Dremio Corporation
|
| ---------------------------------------
-| This project includes code from Apache Polaris (incubating), with the
following in its NOTICE file:
+| This project includes code from Apache Polaris, with the following in its
NOTICE file:
|
-| | Apache Polaris (incubating)
+| | Apache Polaris
| | Copyright 2024 The Apache Software Foundation
| |
| | This product includes software developed at
diff --git a/releasey/bin/build-helm-index.sh b/releasey/bin/build-helm-index.sh
index 3d57b3a87..169c64b89 100755
--- a/releasey/bin/build-helm-index.sh
+++ b/releasey/bin/build-helm-index.sh
@@ -19,8 +19,8 @@
#
# Build a Helm index.yaml file for Apache Polaris charts from both
-# https://archive.apache.org/dist/incubator/polaris/helm-chart/ and
-# https://downloads.apache.org/incubator/polaris/helm-chart/
+# https://archive.apache.org/dist/polaris/helm-chart/ and
+# https://downloads.apache.org/polaris/helm-chart/
#
# The current release workflows force a regeneration of the Helm index
# after the old (unmaintained) releases are removed from the Apache dist
@@ -52,14 +52,14 @@ set -euo pipefail
get_helm_chart_version_from_url() {
local base_url="$1"
curl -sL "$base_url/" |
- grep -oE 'href="[0-9]+\.[0-9]+\.[0-9]+-incubating/"' |
+ grep -oE 'href="[0-9]+\.[0-9]+\.[0-9]+(-incubating)?/"' |
sed 's/href="//;s/\/"//' |
sort -V | uniq
}
# Base URLs for Apache Polaris helm charts
-ARCHIVE_URL="https://archive.apache.org/dist/incubator/polaris/helm-chart"
-DOWNLOADS_URL="https://downloads.apache.org/incubator/polaris/helm-chart"
+ARCHIVE_URL="https://archive.apache.org/dist/polaris/helm-chart"
+DOWNLOADS_URL="https://downloads.apache.org/polaris/helm-chart"
# Temporary directory for downloads
WORK_DIR=$(mktemp -d)
diff --git a/releasey/libs/_constants.sh b/releasey/libs/_constants.sh
index a59175ac6..03ec4c6ba 100644
--- a/releasey/libs/_constants.sh
+++ b/releasey/libs/_constants.sh
@@ -22,13 +22,13 @@ LIBS_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
# Git/SVN repository constants
APACHE_DIST_URL=${APACHE_DIST_URL:-"https://dist.apache.org/repos/dist"}
-APACHE_DIST_PATH=${APACHE_DIST_PATH:-"/dev/incubator/polaris"}
+APACHE_DIST_PATH=${APACHE_DIST_PATH:-"/dev/polaris"}
# Execution mode constants
DRY_RUN=${DRY_RUN:-1}
# Version validation regex patterns
-VERSION_REGEX="([0-9]+)\.([0-9]+)\.([0-9]+)-incubating"
+VERSION_REGEX="([0-9]+)\.([0-9]+)\.([0-9]+)"
VERSION_REGEX_GIT_TAG="^apache-polaris-$VERSION_REGEX-rc([0-9]+)$"
# Branch validation regex pattern for major.minor.x format
BRANCH_VERSION_REGEX="([0-9]+)\.([0-9]+)\.x"
diff --git a/releasey/libs/_version.sh b/releasey/libs/_version.sh
index d882af463..d7eae189d 100644
--- a/releasey/libs/_version.sh
+++ b/releasey/libs/_version.sh
@@ -50,7 +50,7 @@ function validate_and_extract_git_tag_version {
# This function validates the format of a git tag version and extracts its
components (major.minor.patch and rc number).
# It is similar to validate_and_extract_rc_version, but for git tag format.
# It returns 0 if the version is valid and sets the global variables major,
minor, patch, and rc_number.
- # It also sets the global variable version_without_rc to the
"major.minor.patch-incubating" format without the rc number.
+ # It also sets the global variable version_without_rc to the
"major.minor.patch" format without the rc number.
# Otherwise, it returns 1.
local version="$1"
@@ -62,15 +62,15 @@ function validate_and_extract_git_tag_version {
minor="${BASH_REMATCH[2]}"
patch="${BASH_REMATCH[3]}"
rc_number="${BASH_REMATCH[4]}"
- version_without_rc="${major}.${minor}.${patch}-incubating"
+ version_without_rc="${major}.${minor}.${patch}"
return 0
}
function validate_and_extract_polaris_version {
# This function validates the format of a Polaris version and extracts its
components (major.minor.patch).
- # It accepts the full version format (e.g., "1.0.0-incubating") and sets the
global variables major, minor, patch.
- # It also sets the global variable version_without_rc to the
"major.minor.patch-incubating" format.
+ # It accepts the full version format (e.g., "1.0.0") and sets the global
variables major, minor, patch.
+ # It also sets the global variable version_without_rc to the
"major.minor.patch" format.
# Returns 0 if the version is valid, 1 otherwise.
local version="$1"
@@ -81,7 +81,7 @@ function validate_and_extract_polaris_version {
major="${BASH_REMATCH[1]}"
minor="${BASH_REMATCH[2]}"
patch="${BASH_REMATCH[3]}"
- version_without_rc="${major}.${minor}.${patch}-incubating"
+ version_without_rc="${major}.${minor}.${patch}"
return 0
}
@@ -108,20 +108,20 @@ function update_helm_version {
local new_version="$1"
exec_process sed -E -i~ "s/^version: .+/version: ${new_version}/g"
"$HELM_CHART_YAML_FILE"
exec_process sed -E -i~ "s/^appVersion: .+/appVersion: ${new_version}/g"
"$HELM_CHART_YAML_FILE"
- exec_process sed -E -i~
"s/[0-9]+[.][0-9]+([.][0-9]+)?(-incubating)-SNAPSHOT/${new_version}/g"
"$HELM_README_FILE"
+ exec_process sed -E -i~
"s/[0-9]+[.][0-9]+([.][0-9]+)?(-incubating)?-SNAPSHOT/${new_version}/g"
"$HELM_README_FILE"
# The readme file may contain version with double dash for shields.io badges
# We need a second `sed` command to ensure that the version replacement
preserves this double-dash syntax.
local current_version_with_dash
local version_with_dash
current_version_with_dash="${old_version//-/--}"
version_with_dash="${version//-/--}"
- exec_process sed -E -i~
"s/[0-9]+[.][0-9]+([.][0-9]+)?(--incubating)--SNAPSHOT/${version_with_dash}/g"
"$HELM_README_FILE"
+ exec_process sed -E -i~
"s/[0-9]+[.][0-9]+([.][0-9]+)?(--incubating)?--SNAPSHOT/${version_with_dash}/g"
"$HELM_README_FILE"
}
function find_next_rc_number {
# This function finds the next available RC number for a given version.
# It returns 0 and sets the global variable rc_number to the next available
RC number.
- # RC numbers start from 0. It takes the version_without_rc as input (e.g.,
"1.0.0-incubating").
+ # RC numbers start from 0. It takes the version_without_rc as input (e.g.,
"1.0.0").
local version_without_rc="$1"
# Get all existing RC tags for this version
@@ -154,7 +154,7 @@ function find_next_patch_number {
local minor="$2"
# Get all existing RC tags for this major.minor version
- local rc_tag_pattern="apache-polaris-${major}.${minor}.*-incubating-rc*"
+ local rc_tag_pattern="apache-polaris-${major}.${minor}.*-rc*"
local existing_rc_tags
existing_rc_tags=$(git tag -l "${rc_tag_pattern}" | sort -V)
@@ -165,7 +165,7 @@ function find_next_patch_number {
# Extract all patch numbers from RC tags and find the highest
local highest_patch=-1
while IFS= read -r tag; do
- if [[ ${tag} =~
apache-polaris-${major}\.${minor}\.([0-9]+)-incubating-rc[0-9]+ ]]; then
+ if [[ ${tag} =~ apache-polaris-${major}\.${minor}\.([0-9]+)-rc[0-9]+ ]];
then
local current_patch="${BASH_REMATCH[1]}"
if [[ ${current_patch} -gt ${highest_patch} ]]; then
highest_patch=${current_patch}
@@ -174,7 +174,7 @@ function find_next_patch_number {
done <<< "${existing_rc_tags}"
# Check if a final release tag exists for the highest patch (without -rc
suffix)
- local
final_tag="apache-polaris-${major}.${minor}.${highest_patch}-incubating"
+ local final_tag="apache-polaris-${major}.${minor}.${highest_patch}"
if git rev-parse "${final_tag}" >/dev/null 2>&1; then
# Final release tag exists, increment to next patch number
patch=$((highest_patch + 1))
diff --git a/releasey/release-process-flowchart.mmd
b/releasey/release-process-flowchart.mmd
index 61e33933f..cf18bd5cf 100644
--- a/releasey/release-process-flowchart.mmd
+++ b/releasey/release-process-flowchart.mmd
@@ -24,7 +24,7 @@ flowchart TD
D --> E["🤖 GitHub Workflow<br/>🔧 Manual trigger from release manager<br/>•
Build the source and binary artifacts<br/>• Stage artifacts to dist dev
repository<br/>• Publish artifacts to Nexus staging repository<br/>• Close
Nexus staging repository<br/>• Build Docker images for server and admin
tool<br/>• Build the Helm chart<br/>• Create signature and checksum for Helm
package files<br/>• Copy package files to dist dev repository"]
- E --> H["👤 Release Manager<br/><br/>• Start vote thread on dev mailing
list<br/>• Wait for the vote to pass<br/>• Start vote thread on incubator
mailing list<br/>• Wait for the vote to pass"]
+ E --> H["👤 Release Manager<br/><br/>• Start vote thread on dev mailing
list<br/>• Wait for the vote to pass"]
H --> I["🤖 GitHub Workflow<br/>🔧 Manual trigger from release
manager<br/><br/>• Copy distribution from dist dev to dist release space<br/>•
Create a final release tag to Git repository<br/>• Create the GitHub
release<br/>• Publish Docker images to DockerHub<br/>• Release the candidate
repository on Nexus"]
diff --git a/runtime/admin/distribution/DISCLAIMER
b/runtime/admin/distribution/DISCLAIMER
deleted file mode 100644
index e78e79b24..000000000
--- a/runtime/admin/distribution/DISCLAIMER
+++ /dev/null
@@ -1,10 +0,0 @@
-Apache Polaris (incubating) is an effort undergoing incubation at The Apache
-Software Foundation (ASF), sponsored by the Apache Incubator PMC.
-
-Incubation is required of all newly accepted projects until a further review
-indicates that the infrastructure, communications, and decision making process
-have stabilized in a manner consistent with other successful ASF projects.
-
-While incubation status is not necessarily a reflection of the completeness
-or stability of the code, it does indicate that the project has yet to be
-fully endorsed by the ASF.
\ No newline at end of file
diff --git a/runtime/admin/distribution/NOTICE
b/runtime/admin/distribution/NOTICE
index 6898e4ec4..82c83e306 100644
--- a/runtime/admin/distribution/NOTICE
+++ b/runtime/admin/distribution/NOTICE
@@ -1,5 +1,5 @@
-Apache Polaris (incubating)
-Copyright 2025 The Apache Software Foundation
+Apache Polaris
+Copyright 2026 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
diff --git a/runtime/admin/src/main/docker/Dockerfile.jvm
b/runtime/admin/src/main/docker/Dockerfile.jvm
index c50ab6cae..cfcb30e11 100644
--- a/runtime/admin/src/main/docker/Dockerfile.jvm
+++ b/runtime/admin/src/main/docker/Dockerfile.jvm
@@ -19,7 +19,7 @@
FROM registry.access.redhat.com/ubi9/openjdk-21-runtime:1.24-2.1771324986
LABEL org.opencontainers.image.source=https://github.com/apache/polaris \
- org.opencontainers.image.description="Apache Polaris (incubating) Admin
Tool" \
+ org.opencontainers.image.description="Apache Polaris Admin Tool" \
org.opencontainers.image.licenses=Apache-2.0
ENV LANGUAGE='en_US:en' \
@@ -45,6 +45,5 @@ COPY --chown=polaris:polaris build/quarkus-app/app/
/deployments/app/
COPY --chown=polaris:polaris build/quarkus-app/quarkus/ /deployments/quarkus/
COPY --chown=polaris:polaris distribution/LICENSE /deployments/
COPY --chown=polaris:polaris distribution/NOTICE /deployments/
-COPY --chown=polaris:polaris distribution/DISCLAIMER /deployments/
ENTRYPOINT [ "java", "-jar", "/deployments/polaris-admin-tool.jar" ]
\ No newline at end of file
diff --git a/runtime/admin/src/main/resources/application.properties
b/runtime/admin/src/main/resources/application.properties
index 29229ebec..ca0199c44 100644
--- a/runtime/admin/src/main/resources/application.properties
+++ b/runtime/admin/src/main/resources/application.properties
@@ -22,7 +22,7 @@
# and creates Polaris jars. These properties cannot be overridden in runtime.
# Cf. https://quarkus.io/guides/all-config
-quarkus.application.name=Apache Polaris Admin Tool (incubating)
+quarkus.application.name=Apache Polaris Admin Tool
quarkus.banner.enabled=false
quarkus.container-image.build=false
diff --git a/runtime/defaults/src/main/resources/application.properties
b/runtime/defaults/src/main/resources/application.properties
index 9c0a1f9e0..2a995de09 100644
--- a/runtime/defaults/src/main/resources/application.properties
+++ b/runtime/defaults/src/main/resources/application.properties
@@ -23,7 +23,7 @@
# Cf. https://quarkus.io/guides/all-config
quarkus.banner.path=/org/apache/polaris/service/banner.txt
-quarkus.application.name=Apache Polaris Server (incubating)
+quarkus.application.name=Apache Polaris Server
quarkus.container-image.build=false
quarkus.container-image.push=false
diff --git a/runtime/distribution/DISCLAIMER b/runtime/distribution/DISCLAIMER
deleted file mode 100644
index e78e79b24..000000000
--- a/runtime/distribution/DISCLAIMER
+++ /dev/null
@@ -1,10 +0,0 @@
-Apache Polaris (incubating) is an effort undergoing incubation at The Apache
-Software Foundation (ASF), sponsored by the Apache Incubator PMC.
-
-Incubation is required of all newly accepted projects until a further review
-indicates that the infrastructure, communications, and decision making process
-have stabilized in a manner consistent with other successful ASF projects.
-
-While incubation status is not necessarily a reflection of the completeness
-or stability of the code, it does indicate that the project has yet to be
-fully endorsed by the ASF.
\ No newline at end of file
diff --git a/runtime/distribution/NOTICE b/runtime/distribution/NOTICE
index 5aa672a42..54eda7281 100644
--- a/runtime/distribution/NOTICE
+++ b/runtime/distribution/NOTICE
@@ -1,5 +1,5 @@
-Apache Polaris (incubating)
-Copyright 2025 The Apache Software Foundation
+Apache Polaris
+Copyright 2026 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
diff --git a/runtime/distribution/build.gradle.kts
b/runtime/distribution/build.gradle.kts
index 75ddcf7b4..5a47c87e4 100644
--- a/runtime/distribution/build.gradle.kts
+++ b/runtime/distribution/build.gradle.kts
@@ -70,7 +70,6 @@ distributions {
}
from("README.md")
- from("DISCLAIMER")
from("LICENSE")
from("NOTICE")
}
diff --git a/runtime/server/distribution/DISCLAIMER
b/runtime/server/distribution/DISCLAIMER
deleted file mode 100644
index e78e79b24..000000000
--- a/runtime/server/distribution/DISCLAIMER
+++ /dev/null
@@ -1,10 +0,0 @@
-Apache Polaris (incubating) is an effort undergoing incubation at The Apache
-Software Foundation (ASF), sponsored by the Apache Incubator PMC.
-
-Incubation is required of all newly accepted projects until a further review
-indicates that the infrastructure, communications, and decision making process
-have stabilized in a manner consistent with other successful ASF projects.
-
-While incubation status is not necessarily a reflection of the completeness
-or stability of the code, it does indicate that the project has yet to be
-fully endorsed by the ASF.
\ No newline at end of file
diff --git a/runtime/server/distribution/NOTICE
b/runtime/server/distribution/NOTICE
index bd8343eed..bf0201889 100644
--- a/runtime/server/distribution/NOTICE
+++ b/runtime/server/distribution/NOTICE
@@ -1,5 +1,5 @@
-Apache Polaris (incubating)
-Copyright 2025 The Apache Software Foundation
+Apache Polaris
+Copyright 2026 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
diff --git a/runtime/server/src/main/docker/Dockerfile.jvm
b/runtime/server/src/main/docker/Dockerfile.jvm
index 31a8b132c..5998c0ead 100644
--- a/runtime/server/src/main/docker/Dockerfile.jvm
+++ b/runtime/server/src/main/docker/Dockerfile.jvm
@@ -19,7 +19,7 @@
FROM registry.access.redhat.com/ubi9/openjdk-21-runtime:1.24-2.1771324986
LABEL org.opencontainers.image.source=https://github.com/apache/polaris \
- org.opencontainers.image.description="Apache Polaris (incubating)" \
+ org.opencontainers.image.description="Apache Polaris" \
org.opencontainers.image.licenses=Apache-2.0
ENV LANGUAGE='en_US:en' \
@@ -47,6 +47,5 @@ COPY --chown=polaris:polaris build/quarkus-app/app/
/deployments/app/
COPY --chown=polaris:polaris build/quarkus-app/quarkus/ /deployments/quarkus/
COPY --chown=polaris:polaris distribution/LICENSE /deployments/
COPY --chown=polaris:polaris distribution/NOTICE /deployments/
-COPY --chown=polaris:polaris distribution/DISCLAIMER /deployments/
EXPOSE 8181 8182
\ No newline at end of file
diff --git a/site/content/_index.adoc b/site/content/_index.adoc
index e7ac5aa18..a56ad0aee 100644
--- a/site/content/_index.adoc
+++ b/site/content/_index.adoc
@@ -22,7 +22,7 @@ type: home
cascade:
no_list: true
---
-{{< blocks/cover title="Welcome to the Apache Polaris™ (incubating) web site!"
image_anchor="center" color="primary" >}}
+{{< blocks/cover title="Welcome to the Apache Polaris™ web site!"
image_anchor="center" color="primary" >}}
Apache Polaris is an open-source, fully-featured catalog for Apache Iceberg™.
It implements Iceberg's REST API, enabling seamless multi-engine
interoperability across a wide range of platforms, including Apache Doris™,
Apache Flink®, Apache Spark™, Dremio® OSS, StarRocks, and Trino.
<div class="text-center">
@@ -48,12 +48,6 @@ For announcement and discussions about the project.
{{< blocks/section color="dark" >}}
<p>
-<a href="https://incubator.apache.org/"><img src="img/apache-incubator.svg"
width="200em"></a>
-</p>
-<p>
-Apache Polaris™ is an effort undergoing incubation at The Apache Software
Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of
all newly accepted projects until a further review indicates that the
infrastructure, communications, and decision making process have stabilized in
a manner consistent with other successful ASF projects. While incubation status
is not necessarily a reflection of the completeness or stability of the code,
it does indicate that the projec [...]
-</p>
-<p>
Apache®, Apache Polaris™, Apache Iceberg™, Apache Spark™ are either registered
trademarks or trademarks of the Apache Software Foundation in the United States
and/or other countries.
</p>
{{< /blocks/section >}}
diff --git a/site/content/community/_index.adoc
b/site/content/community/_index.adoc
index 89cfe748e..5a23c06cf 100644
--- a/site/content/community/_index.adoc
+++ b/site/content/community/_index.adoc
@@ -73,30 +73,30 @@ cascade:
|===
| https://github.com/ajantha-bhat[Ajantha Bhat] | Committer |
link:https://www.dremio.com/[Dremio]
-| https://github.com/adutra[Alex Dutra] | PPMC Member |
link:https://www.dremio.com/[Dremio]
+| https://github.com/adutra[Alex Dutra] | PMC Member |
link:https://www.dremio.com/[Dremio]
| https://github.com/annafil[Anna Filippova] | Committer |
link:https://www.snowflake.com/[Snowflake]
-| Anoop Johnson | PPMC Member | link:https://www.google.com/[Google]
-| https://github.com/ashvina[Ashvin Agrawal] | PPMC Member |
link:https://www.microsoft.com/[Microsoft]
-| https://github.com/dennishuo[Dennis Huo] | PPMC Member |
link:https://www.snowflake.com/[Snowflake]
-| https://github.com/dimas-b[Dmitri Bourlatchkov] | PPMC Member |
link:https://www.dremio.com/[Dremio]
+| Anoop Johnson | PMC Member | link:https://www.google.com/[Google]
+| https://github.com/ashvina[Ashvin Agrawal] | PMC Member |
link:https://www.microsoft.com/[Microsoft]
+| https://github.com/dennishuo[Dennis Huo] | PMC Member |
link:https://www.snowflake.com/[Snowflake]
+| https://github.com/dimas-b[Dmitri Bourlatchkov] | PMC Member |
link:https://www.dremio.com/[Dremio]
| https://github.com/eric-maynard[Eric Maynard] | Committer |
-| https://github.com/fpapon[François Papon] | Mentor |
-| Holden Karau | Mentor |
-| https://github.com/jackye1995[Jack Ye] | PPMC Member |
link:https://lancedb.com/[LanceDB]
-| https://github.com/jbonofre[JB Onofre] | Champion, Mentor, PPMC Member |
link:https://www.dremio.com/[Dremio]
-| https://github.com/vvcephei[John Roesler] | PPMC Member |
link:https://www.confluent.io/[Confluent]
+| https://github.com/fpapon[François Papon] | PMC Member |
+| Holden Karau | PMC Member |
+| https://github.com/jackye1995[Jack Ye] | PMC Member |
link:https://lancedb.com/[LanceDB]
+| https://github.com/jbonofre[JB Onofre] | PMC Member, Chair |
link:https://www.dremio.com/[Dremio]
+| https://github.com/vvcephei[John Roesler] | PMC Member |
link:https://www.confluent.io/[Confluent]
| https://github.com/HonahX[Jonas Jiang] | Committer |
link:https://www.snowflake.com/[Snowflake]
-| Kent Yao | Mentor |
-| https://github.com/collado-mike[Michael Collado] | PPMC Member |
link:https://www.snowflake.com/[Snowflake]
+| Kent Yao | PMC Member |
+| https://github.com/collado-mike[Michael Collado] | PMC Member |
link:https://www.snowflake.com/[Snowflake]
| https://github.com/pingtimeout[Pierre Laporte] | Committer |
link:https://www.dremio.com/[Dremio]
| https://github.com/singhpk234[Prashant Singh] | Committer |
link:https://www.snowflake.com/[Snowflake]
-| https://github.com/snazy[Robert Stupp] | PPMC Member |
link:https://www.dremio.com/[Dremio]
-| https://github.com/russellspitzer[Russell Spitzer] | PPMC |
link:https://www.snowflake.com/[Snowflake]
-| Ryan Blue | Mentor |
+| https://github.com/snazy[Robert Stupp] | PMC Member |
link:https://www.dremio.com/[Dremio]
+| https://github.com/russellspitzer[Russell Spitzer] | PMC Member |
link:https://www.snowflake.com/[Snowflake]
+| Ryan Blue | PMC Member |
| https://github.com/sungwy[Sung Yun] | Committer |
link:https://www.bloomberg.com/[Bloomberg]
-| https://github.com/takidau[Tyler Akidau] | PPMC Member |
link:https://www.snowflake.com/[Snowflake]
-| https://github.com/MonkeyCanCode[Yong Zheng] | PPMC Member |
-| https://github.com/flyrain[Yufei Gu] | PPMC Member |
link:https://www.snowflake.com/[Snowflake]
+| https://github.com/takidau[Tyler Akidau] | PMC Member |
link:https://www.snowflake.com/[Snowflake]
+| https://github.com/MonkeyCanCode[Yong Zheng] | PMC Member |
+| https://github.com/flyrain[Yufei Gu] | PMC Member |
link:https://www.snowflake.com/[Snowflake]
| https://github.com/ebyhr[Yuya Ebihara] | Committer |
link:https://www.starburst.io/[Starburst]
|===
{{% /blocks/feature %}}
diff --git a/site/content/community/release-guides/manual-release-guide.md
b/site/content/community/release-guides/manual-release-guide.md
index bdfd03ceb..524bcb838 100644
--- a/site/content/community/release-guides/manual-release-guide.md
+++ b/site/content/community/release-guides/manual-release-guide.md
@@ -41,14 +41,14 @@ Instructions how to verify a release candidate are
available [here](../release-v
To create a release candidate, you will need:
* your Apache credentials (for repository.apache.org and dist.apache.org
repositories)
-* a [GPG key](https://www.apache.org/dev/release-signing#generate) for signing
artifacts, published in
[KEYS](https://downloads.apache.org/incubator/polaris/KEYS) file
+* a [GPG key](https://www.apache.org/dev/release-signing#generate) for signing
artifacts, published in [KEYS](https://downloads.apache.org/polaris/KEYS) file
### Publish your GPG key
If you haven't published your GPG key yet, you must publish it before starting
the release process:
```
-svn checkout https://dist.apache.org/repos/dist/release/incubator/polaris
polaris-dist-release
+svn checkout https://dist.apache.org/repos/dist/release/polaris
polaris-dist-release
cd polaris-dist-release
echo "" >> KEYS # append a new line
gpg --list-sigs <YOUR KEY ID HERE> >> KEYS # append signatures
@@ -120,7 +120,6 @@ This step can be useful to gather ongoing patches that the
community thinks shou
The communication can be started via a `[DISCUSS]` mail on the
[email protected] mailing list and the desired tickets can be added to
the github milestone of the next release.
Note, creating a milestone in github requires a committer. However, a
non-committer can assign tasks to a milestone if added to the list of
collaborators in
[.asf.yaml](https://github.com/apache/polaris/blob/main/.asf.yaml).
-Also note since Polaris is an incubating project, make sure what every branch
/ tag you are creating is suffixed with `-incubating`.
### Create release branch
@@ -213,7 +212,7 @@ The binary distributions (for convenience) are available in:
Now, we can stage the artifacts to dist dev repository:
```
-svn checkout https://dist.apache.org/repos/dist/dev/incubator/polaris
polaris-dist-dev
+svn checkout https://dist.apache.org/repos/dist/dev/polaris polaris-dist-dev
cd polaris-dist-dev
mkdir x.y.z
cp /path/to/polaris/github/clone/repo/build/distribution/* x.y.z
@@ -306,14 +305,14 @@ Apache Polaris x.y.z release.
* https://github.com/apache/polaris/tree/<SHA1>
The release tarball, signature, and checksums are here:
-* https://dist.apache.org/repos/dist/dev/incubator/polaris/x.y.z
+* https://dist.apache.org/repos/dist/dev/polaris/x.y.z
Helm charts are available on:
-* https://dist.apache.org/repos/dist/dev/incubator/polaris/helm-chart
+* https://dist.apache.org/repos/dist/dev/polaris/helm-chart
NB: you have to build the Docker images locally in order to test Helm charts.
You can find the KEYS file here:
-* https://downloads.apache.org/incubator/polaris/KEYS
+* https://downloads.apache.org/polaris/KEYS
Convenience binary artifacts are staged on Nexus. The Maven
repositories URLs are:
@@ -327,14 +326,10 @@ Please vote in the next 72 hours.
[ ] +0
[ ] -1 Do not release this because...
-Only PPMC members and mentors have binding votes, but other community
-members are
-encouraged to cast non-binding votes. This vote will pass if there are
-3 binding +1 votes and more binding +1 votes than -1 votes.
-
-NB: if this vote passes, a new vote has to be started on the Incubator
-general mailing
-list.
+Only PMC members have binding votes, but other community
+members are encouraged to cast non-binding votes.
+This vote will pass if there are 3 binding +1 votes and
+more binding +1 votes than -1 votes.
```
When a candidate is passed or rejected, reply with the vote result:
@@ -352,75 +347,7 @@ The vote result is:
+0: c (binding), d (non-binding)
-1: e (binding), f (non-binding)
-A new vote is starting in the Apache Incubator general mailing list.
-```
-
-### Start a new vote on the Incubator general mailing list
-
-As Polaris is an Apache Incubator project, you now have to start a new vote on
the Apache Incubator general mailing list.
-
-You have to send this email to [email protected]:
-
-```
-[VOTE] Release Apache Polaris x.y.z (rci)
-```
-
-```
-Hello everyone,
-
-The Apache Polaris community has voted and approved the release of Apache
Polaris x.y.z (rci).
-We now kindly request the IPMC members review and vote for this release.
-
-Polaris community vote thread:
-* https://lists.apache.org/thread/<VOTE THREAD>
-
-Vote result thread:
-* https://lists.apache.org/thread/<VOTE RESULT>
-
-The release candidate:
-* https://dist.apache.org/repos/dist/dev/incubator/polaris/x.y.z
-
-Git tag for the release:
-* https://github.com/apache/polaris/releases/tag/apache-polaris-x.y.z-rci
-
-Git commit for the release:
-* https://github.com/apache/polaris/commit/<COMMIT>
-
-Maven staging repository:
-* https://repository.apache.org/content/repositories/orgapachepolaris-<ID>/
-
-Please download, verify and test.
-
-Please vote in the next 72 hours.
-
-[ ] +1 approve
-[ ] +0 no opinion
-[ ] -1 disapprove with the reason
-
-To learn more about apache Polaris, please see https://polaris.apache.org/
-
-Checklist for reference:
-
-[ ] Download links are valid.
-[ ] Checksums and signatures.
-[ ] LICENSE/NOTICE files exist
-[ ] No unexpected binary files
-[ ] All source files have ASF headers
-[ ] Can compile from source
-```
-
-Binding votes are the votes from the IPMC members. Similar to the previous
vote, send the result on the Incubator general mailing list:
-
-```
-[RESULT][VOTE] Release Apache Polaris x.y.z (rci)
-```
-
-```
-Hi everyone,
-
-This vote passed with the following result:
-
-
+We will proceed with publishing the approved artifacts and sending out the
announcement soon.
```
## Finishing the release
@@ -432,14 +359,14 @@ After the release votes passed, you need to release the
last candidate's artifac
First, copy the distribution from the dist dev space to the dist release space:
```
-svn mv https://dist.apache.org/repos/dist/dev/incubator/polaris/x.y.z
https://dist.apache.org/repos/dist/release/incubator/polaris
-svn mv
https://dist.apache.org/repos/dist/dev/incubator/polaris/helm-chart/x.y.z
https://dist.apache.org/repos/dist/release/incubator/polaris/helm-chart
+svn mv https://dist.apache.org/repos/dist/dev/polaris/x.y.z
https://dist.apache.org/repos/dist/release/polaris
+svn mv https://dist.apache.org/repos/dist/dev/polaris/helm-chart/x.y.z
https://dist.apache.org/repos/dist/release/polaris/helm-chart
```
-Then, update the Helm Chart repository index on
https://dist.apache.org/repos/dist/release/incubator/polaris/helm-chart/index.yaml:
+Then, update the Helm Chart repository index on
https://dist.apache.org/repos/dist/release/polaris/helm-chart/index.yaml:
```
-svn checkout
https://dist.apache.org/repos/dist/release/incubator/polaris/helm-chart
polaris-dist-release-helm-chart
+svn checkout https://dist.apache.org/repos/dist/release/polaris/helm-chart
polaris-dist-release-helm-chart
cd polaris-dist-release-helm-chart
helm repo index .
svn add index.yaml
@@ -471,7 +398,7 @@ Now that the release artifacts have been published, the
next step is to publish
First, checkout the release tag:
```
-git checkout apache-polaris-[major].[minor].[patch]-incubating
+git checkout apache-polaris-[major].[minor].[patch]
```
Set up a worktree for the versioned docs and create a new branch:
@@ -551,7 +478,7 @@ The Apache Polaris team is pleased to announce Apache
Polaris x.y.z.
<Add Quick Description of the Release>
-This release can be downloaded
https://www.apache.org/dyn/closer.cgi/incubator/polaris/apache-polaris-x.y.z.
+This release can be downloaded
https://www.apache.org/dyn/closer.cgi/polaris/apache-polaris-x.y.z.
Artifacts are available on Maven Central.
@@ -579,7 +506,7 @@ After downloading the distributions archives, signatures,
checksums, and KEYS fi
First, import the keys in your local keyring:
```
-curl https://downloads.apache.org/incubator/polaris/KEYS -o KEYS
+curl https://downloads.apache.org/polaris/KEYS -o KEYS
gpg --import KEYS
```
@@ -607,5 +534,5 @@ In the source distribution:
Votes are cast by replying on the vote email on the dev mailing list, with
either `+1`, `0`, `-1`.
-In addition to your vote, it's customary to specify if your vote is binding or
non-binding. Only members of the PPMC and mentors have formally binding votes,
and IPMC on the vote on the Incubator general mailing list.
+In addition to your vote, it's customary to specify if your vote is binding or
non-binding. Only members of the PMC have formally binding votes.
If you're unsure, you can specify that your vote is non-binding. You can find
more details on https://www.apache.org/foundation/voting.html.
diff --git
a/site/content/community/release-guides/release-verification-guide.md
b/site/content/community/release-guides/release-verification-guide.md
index dddcbacbe..4e7b45d7a 100644
--- a/site/content/community/release-guides/release-verification-guide.md
+++ b/site/content/community/release-guides/release-verification-guide.md
@@ -44,9 +44,9 @@ Tasks that are automated:
* Source code artifacts have correct names matching the current release.
* Built artifacts are [reproducible](#reproducible-builds).
* Build passes.
-* `DISCLAIMER`, `LICENSE` and `NOTICE` files are included.
+* `LICENSE` and `NOTICE` files are included.
* main and sources jar artifacts contain `META-INF/LICENSE` and
`META-INF/NOTICE` files.
-* main distribution artifacts contain `DISCLAIMER`, `LICENSE` and `NOTICE`
files in the top-level directory.
+* main distribution artifacts contain `LICENSE` and `NOTICE` files in the
top-level directory.
Tasks that need human attention:
* Download links are valid. Check all links in the `[VOTE]` email for the
release:
@@ -54,10 +54,10 @@ Tasks that need human attention:
* Commit on the GitHub website
* SVN repository with the source tarball and binary release artifacts
* SVN repository with the Helm chart
- * Link to the KEYS file (_MUST_ be equal to
`https://downloads.apache.org/incubator/polaris/KEYS`)
+ * Link to the KEYS file (_MUST_ be equal to
`https://downloads.apache.org/polaris/KEYS`)
* Maven staging repository
* A link to this page is included.
-* The contents of the `DISCLAIMER`, `LICENSE` and `NOTICE` files are correct
for the repository.
+* The contents of the `LICENSE` and `NOTICE` files are correct for the
repository.
* Contents of jar artifacts `META-INF/LICENSE` and `META-INF/NOTICE` files are
correct.
* All files have license headers, if necessary.
This is (mostly) verified using the "rat" tool during builds/CI.
@@ -86,7 +86,7 @@ Remember to include your
[vote
(+1/0/-1)](https://www.apache.org/foundation/glossary.html#MajorityApproval)
and whether it's "binding."
A -1 vote requires a technical justification.
-As a (P)PMC member, your vote is "binding," all other votes are "non-binding."
+As a PMC member, your vote is "binding," all other votes are "non-binding."
# Verifying a release candidate
@@ -129,7 +129,7 @@ Example (values taken from the 1.2.0-rc2 release)
bash <(curl \
--silent
https://raw.githubusercontent.com/apache/polaris/refs/heads/main/tools/verify-release/verify-release.sh)
\
--git-sha 354a5ef6b337bf690b7a12fefe2c984e2139b029 \
- --version 1.3.0-incubating-rc0 \
+ --version 1.4.0-rc0 \
--maven-repo-id 1033
```
@@ -138,7 +138,7 @@ Same example, but using the short option names:
bash <(curl \
-s
https://raw.githubusercontent.com/apache/polaris/refs/heads/main/tools/verify-release/verify-release.sh)
\
-s 354a5ef6b337bf690b7a12fefe2c984e2139b029 \
- -v 1.3.0-incubating-rc0 \
+ -v 1.4.0-rc0 \
-m 1033
```
@@ -159,13 +159,13 @@ After some startup checks, the tool emits some
information about the release can
Verifying staged release
========================
-Git tag: apache-polaris-1.3.0-incubating-rc0
+Git tag: apache-polaris-1.4.0-rc0
Git sha: 354a5ef6b337bf690b7a12fefe2c984e2139b029
-Version: 1.3.0-incubating
+Version: 1.4.0
RC: 0
Maven repo URL:
https://repository.apache.org/content/repositories/orgapachepolaris-1033/
-Main dist URL:
https://dist.apache.org/repos/dist/dev/incubator/polaris/1.3.0-incubating
-Helm chart URL:
https://dist.apache.org/repos/dist/dev/incubator/polaris/helm-chart/1.3.0-incubating
+Main dist URL: https://dist.apache.org/repos/dist/dev/polaris/1.4.0
+Helm chart URL:
https://dist.apache.org/repos/dist/dev/polaris/helm-chart/1.4.0
Verify directory: /tmp/polaris-release-verify-2025-10-23-14-22-31-HPmmiybzk
A verbose log containing the identified issues will be available here:
diff --git
a/site/content/community/release-guides/semi-automated-release-guide.md
b/site/content/community/release-guides/semi-automated-release-guide.md
index 9090dba96..9e9b9827b 100644
--- a/site/content/community/release-guides/semi-automated-release-guide.md
+++ b/site/content/community/release-guides/semi-automated-release-guide.md
@@ -78,7 +78,7 @@ Once the workflow has run, the run details page contains a
recap of the main inf
The second Github workflow to run is [`Release - 2 - Update version and
Changelog for Release
Candidate`](https://github.com/apache/polaris/actions/workflows/release-2-update-release-candidate.yml).
This workflow will:
* Verify that all Github checks are green for the release branch.
* For RC0 only: update the project version files with the final version
number, update the changelog, and commit the changes to the release branch.
-* Create the `apache-polaris-[major].[minor].[patch]-incubating-rc[N]` tag
+* Create the `apache-polaris-[major].[minor].[patch]-rc[N]` tag
The rules to create the `[major].[minor].[patch]-rc[N]` tag are as follows:
* Find the last patch number for the `[major].[minor]` version by looking at
existing tags, or 0 if no tag exists.
@@ -114,7 +114,7 @@ The third Github workflow to run is [`Release - 3 - Build
and publish release ar
* Copy package files to Apache dist dev repository
* Generate an e-mail to notify the community of the availability of the
release candidate
-This workflow must be run from an RC tag (e.g.,
`apache-polaris-1.3.0-incubating-rc0`). Select the tag from the `Use workflow
from` dropdown in the Github Actions UI. Selecting any other reference in the
Github Actions UI will result in a failure.
+This workflow must be run from an RC tag (e.g., `apache-polaris-1.3.0-rc0`).
Select the tag from the `Use workflow from` dropdown in the Github Actions UI.
Selecting any other reference in the Github Actions UI will result in a failure.

@@ -158,129 +158,6 @@ The vote result is:
+0: c (binding), d (non-binding)
-1: e (binding), f (non-binding)
-A new vote is starting in the Apache Incubator general mailing list.
-```
-
-## Start a new vote thread on the Incubator general mailing list
-As Polaris is an Apache Incubator project, you now have to start a new vote on
the Apache Incubator general mailing list.
-The Incubator vote e-mail resembles the Polaris vote e-mail, with a few
additional details:
-* It mentions that the Polaris (podling) vote has passed
-* It contains links to the Polaris vote thread and the vote result thread
-* It contains a checklist for the IPMC members to verify the release artifacts
-
-Note that unlike for the podling vote, no e-mail is pre-generated by the
Github workflow.
-
-You have to send this email to [email protected]:
-
-```
-[VOTE] Release Apache Polaris [major].[minor].[patch] (rc[N])
-```
-
-```
-Hello everyone,
-
-The Apache Polaris community has voted and approved the release of Apache
Polaris [major].[minor].[patch] (rc[N]).
-We now kindly request the IPMC members review and vote for this release.
-
-Polaris community vote thread:
-* https://lists.apache.org/thread/<VOTE THREAD>
-
-Vote result thread:
-* https://lists.apache.org/thread/<VOTE RESULT>
-
-* This corresponds to the tag:
apache-polaris-[major].[minor].[patch]-incubating-rc[N]
-*
https://github.com/apache/polaris/commits/apache-polaris-[major].[minor].[patch]-incubating-rc[N]
-* https://github.com/apache/polaris/tree/<SHA1>
-
-The release tarball, signature, and checksums are here:
-*
https://dist.apache.org/repos/dist/dev/incubator/polaris/[major].[minor].[patch]-incubating
-
-Helm charts are available on:
-*
https://dist.apache.org/repos/dist/dev/incubator/polaris/helm-chart/[major].[minor].[patch]-incubating
-NB: you have to build the Docker images locally in order to test Helm charts.
-
-You can find the KEYS file here:
-* https://downloads.apache.org/incubator/polaris/KEYS
-
-Convenience binary artifacts are staged on Nexus. The Maven repositories URLs
are:
-* https://repository.apache.org/content/repositories/orgapachepolaris-<ID>/
-
-Please download, verify, and test according to the release verification guide,
which can be found at:
-*
https://polaris.apache.org/community/release-guides/release-verification-guide/
-
-Please vote in the next 72 hours.
-
-[ ] +1 approve
-[ ] +0 no opinion
-[ ] -1 disapprove with the reason
-
-To learn more about apache Polaris, please see https://polaris.apache.org/
-
-Checklist for reference:
-
-[ ] Download links are valid.
-[ ] Checksums and signatures.
-[ ] LICENSE/NOTICE files exist
-[ ] No unexpected binary files
-[ ] All source files have ASF headers
-[ ] Can compile from source
-```
-
-The next steps depend on the vote result.
-
-## Close the vote thread on the Incubator general mailing list
-### If the vote failed
-When a release candidate is rejected during the IPMC vote, you need to send
two e-mails to inform the community of the vote result.
-First, reply in the same thread (in the general Incubator mailing list) with
the vote result.
-
-```
-Hello everyone,
-
-Thanks to all who participated in the vote for Release Apache Polaris
[major].[minor].[patch] (rc[N]).
-
-The vote failed due to [reason].
-
-Thanks,
-```
-
-Then, run the Github workflow [`Release - X - Cancel Release Candidate After
Vote
Failure`](https://github.com/apache/polaris/actions/workflows/release-X-cancel-release-candidate.yml).
This workflow will:
-* Drop the Apache Nexus staging repository
-* Delete the release artifacts (including Helm Chart) from the Apache dist dev
repository
-* Prepare an e-mail template to notify the community of the vote result
-
-
-
-The run details page contains a recap of the main information, with all the
steps that were executed.
-It also contains the e-mail template to notify the community of the vote
result.
-Ensure to replace the `[REASON - TO BE FILLED BY RELEASE MANAGER]` placeholder
with the actual reason for the vote failure.
-Then send the e-mail to the Polaris dev mailing list.
-
-
-
-### If the vote passed
-When the release candidate vote passes, send a new e-mail with the vote result:
-
-```
-[RESULT][VOTE] Release Apache Polaris [major].[minor].[patch] (rc[N])
-```
-
-```
-Hello everyone,
-
-The vote to release Apache Polaris [major].[minor].[patch] (rc[N]) has passed
with [N] +1 binding and [M] +1 non-binding votes.
-
-Binding +1 votes:
-* [NAME]
-* [NAME]
-* [NAME]
-* ...
-
-Non-binding +1 votes:
-* [NAME]
-* ...
-
-Vote thread: https://lists.apache.org/thread/<VOTE THREAD>
-
We will proceed with publishing the approved artifacts and sending out the
announcement soon.
```
@@ -307,7 +184,7 @@ Now that the release artifacts have been published, the
next step is to publish
First, checkout the release tag:
```
-git checkout apache-polaris-[major].[minor].[patch]-incubating
+git checkout apache-polaris-[major].[minor].[patch]
```
Set up a worktree for the versioned docs and create a new branch:
diff --git a/site/content/community/security-report.md
b/site/content/community/security-report.md
index 2bdf82bf8..3ac8d4089 100644
--- a/site/content/community/security-report.md
+++ b/site/content/community/security-report.md
@@ -34,7 +34,7 @@ Regular issue reports should be directed to GitHub Issue or
the [email protected]
The general process for handling security vulnerabilities as follows:
* The reporter privately reports the vulnerability to the [email protected]
and [email protected] mailing lists (including as much information as
possible, such as reproducible versions, relevant descriptions, reproduction
methods, and the scope of impact).
-* The Polaris PPMC collaborates privately with the reporter to discuss if the
report is accepted, vulnerability resolution (after preliminary confirmation, a
`CVE` can be requested).
+* The Polaris PMC collaborates privately with the reporter to discuss if the
report is accepted, vulnerability resolution (after preliminary confirmation, a
`CVE` can be requested).
* The podling creates a new release to include the vulnerability fix.
* At an appropriate date, a general description of the vulnerability and how
to apply fix will be publicly disclosed (in compliance with The ASF standards)
both on this page and on the [email protected] mailing list.
diff --git a/site/content/downloads/_index.md b/site/content/downloads/_index.md
index c21a0532c..87b83bd45 100644
--- a/site/content/downloads/_index.md
+++ b/site/content/downloads/_index.md
@@ -28,7 +28,7 @@ params:
---
## Helm Chart
-Repo: https://downloads.apache.org/incubator/polaris/helm-chart
+Repo: https://downloads.apache.org/polaris/helm-chart
## 1.3.0
| Artifact
| PGP Sig
| SHA-512
[...]
diff --git a/site/content/in-dev/unreleased/_index.md
b/site/content/in-dev/unreleased/_index.md
index a55fc149e..369a32f07 100644
--- a/site/content/in-dev/unreleased/_index.md
+++ b/site/content/in-dev/unreleased/_index.md
@@ -37,20 +37,20 @@ These pages refer to the current state of the main branch,
which is still under
Functionalities can be changed, removed or added without prior notice.
{{< /alert >}}
-Apache Polaris (Incubating) is a catalog implementation for Apache
Iceberg™ tables and is built on the open source Apache Iceberg™
REST protocol.
+Apache Polaris is a catalog implementation for Apache Iceberg™ tables
and is built on the open source Apache Iceberg™ REST protocol.
With Polaris, you can provide centralized, secure read and write access to
your Iceberg tables across different REST-compatible query engines.
- overview")
+
## Key concepts
-This section introduces key concepts associated with using Apache Polaris
(Incubating).
+This section introduces key concepts associated with using Apache Polaris.
-In the following diagram, a sample [Apache Polaris (Incubating)
structure](#catalog) with nested [namespaces](#namespace) is shown for
Catalog1. No tables
+In the following diagram, a sample [Apache Polaris structure](#catalog) with
nested [namespaces](#namespace) is shown for Catalog1. No tables
or namespaces have been created yet for Catalog2 or Catalog3.
- structure")
+
### Catalog
@@ -136,7 +136,7 @@ In the following example workflow, Bob creates an Apache
Iceberg™ table na
has the privileges to perform this action. Alice
creates an unmanaged table in Snowflake to read data from Table1.
-")
+
## Security and access control
diff --git a/site/content/in-dev/unreleased/configuration.md
b/site/content/in-dev/unreleased/configuration.md
index 92f19c71c..cd70ead5f 100644
--- a/site/content/in-dev/unreleased/configuration.md
+++ b/site/content/in-dev/unreleased/configuration.md
@@ -24,7 +24,7 @@ weight: 550
## Overview
-This page provides information on how to configure Apache Polaris
(Incubating). Unless stated
+This page provides information on how to configure Apache Polaris. Unless
stated
otherwise, this information is valid both for Polaris Docker images (and
Kubernetes deployments) as
well as for Polaris binary distributions.
diff --git a/site/content/in-dev/unreleased/entities.md
b/site/content/in-dev/unreleased/entities.md
index df53a0787..8fc95b4c2 100644
--- a/site/content/in-dev/unreleased/entities.md
+++ b/site/content/in-dev/unreleased/entities.md
@@ -22,7 +22,7 @@ type: docs
weight: 400
---
-This page documents various entities that can be managed in Apache Polaris
(Incubating).
+This page documents various entities that can be managed in Apache Polaris.
## Catalog
diff --git
a/site/content/in-dev/unreleased/getting-started/deploying-polaris/local-deploy.md
b/site/content/in-dev/unreleased/getting-started/deploying-polaris/local-deploy.md
index f364c6b72..e42700d14 100644
---
a/site/content/in-dev/unreleased/getting-started/deploying-polaris/local-deploy.md
+++
b/site/content/in-dev/unreleased/getting-started/deploying-polaris/local-deploy.md
@@ -80,7 +80,7 @@ Run the following command to start Polaris server:
You should see output for some time as Polaris builds and starts up.
Eventually, you won’t see any more logs and should see messages that resemble
the following:
```
-INFO [io.quarkus] [,] [,,,] (main) Apache Polaris Server (incubating)
<version> on JVM (powered by Quarkus <version>) started in 1.911s. Listening
on: http://0.0.0.0:8181. Management interface listening on http://0.0.0.0:8182.
+INFO [io.quarkus] [,] [,,,] (main) Apache Polaris Server <version> on JVM
(powered by Quarkus <version>) started in 1.911s. Listening on:
http://0.0.0.0:8181. Management interface listening on http://0.0.0.0:8182.
INFO [io.quarkus] [,] [,,,] (main) Profile prod activated.
INFO [io.quarkus] [,] [,,,] (main) Installed features: [...]
```
diff --git
a/site/content/in-dev/unreleased/getting-started/install-dependencies.md
b/site/content/in-dev/unreleased/getting-started/install-dependencies.md
index 66640104d..f43887eed 100644
--- a/site/content/in-dev/unreleased/getting-started/install-dependencies.md
+++ b/site/content/in-dev/unreleased/getting-started/install-dependencies.md
@@ -22,7 +22,7 @@ type: docs
weight: 100
---
-This guide serves as an introduction to several key entities that can be
managed with Apache Polaris (Incubating), describes how to build and deploy
Polaris locally, and finally includes examples of how to use Polaris with
Apache Spark™.
+This guide serves as an introduction to several key entities that can be
managed with Apache Polaris, describes how to build and deploy Polaris locally,
and finally includes examples of how to use Polaris with Apache Spark™.
# Prerequisites
diff --git a/site/content/in-dev/unreleased/helm.md
b/site/content/in-dev/unreleased/helm.md
index e26c1423b..4e6fa6af6 100644
--- a/site/content/in-dev/unreleased/helm.md
+++ b/site/content/in-dev/unreleased/helm.md
@@ -30,14 +30,14 @@ The instructions below are for the local Minikube cluster.
They assume Minikube
Start the Minikube cluster, add the official Polaris Helm repository, create
the target namespace, and install the chart:
```bash
minikube start
-helm repo add polaris https://downloads.apache.org/incubator/polaris/helm-chart
+helm repo add polaris https://downloads.apache.org/polaris/helm-chart
helm repo update
kubectl create namespace polaris
-helm install polaris polaris/polaris --namespace polaris --devel
+helm install polaris polaris/polaris --namespace polaris
```
{{< alert note >}}
-The --devel flag is required while Polaris is in the incubation phase.
+For Apache Polaris releases up to 1.3.0-incubating, the `--devel` flag is
required for `helm` invocations.
Helm treats the -incubating suffix as a pre‑release by SemVer rules, and will
skip charts that are not in a stable versioning scheme by default.
{{< /alert >}}
@@ -50,8 +50,7 @@ Default Polaris Helm chart values are for a non-persistent
backend. To use a per
Polaris Helm chart package includes a number of files that can be used as a
starting point for such configuration. To use them, download the chart into a
local directory:
```bash
helm pull polaris \
- --repo https://downloads.apache.org/incubator/polaris/helm-chart \
- --devel \
+ --repo https://downloads.apache.org/polaris/helm-chart \
--untar \
--untardir ./helm
```
diff --git a/site/content/in-dev/unreleased/managing-security/access-control.md
b/site/content/in-dev/unreleased/managing-security/access-control.md
index b2243bf09..d0ffdff73 100644
--- a/site/content/in-dev/unreleased/managing-security/access-control.md
+++ b/site/content/in-dev/unreleased/managing-security/access-control.md
@@ -23,7 +23,7 @@ type: docs
weight: 200
---
-This section provides information about how access control works for Apache
Polaris (Incubating).
+This section provides information about how access control works for Apache
Polaris.
Polaris uses a role-based access control (RBAC) model in which the Polaris
administrator assigns access privileges to catalog roles
and then grants access to resources to principals by assigning catalog roles
to principal roles.
diff --git
a/site/content/in-dev/unreleased/managing-security/external-pdp/_index.md
b/site/content/in-dev/unreleased/managing-security/external-pdp/_index.md
index c4e2c4158..6354b4d21 100644
--- a/site/content/in-dev/unreleased/managing-security/external-pdp/_index.md
+++ b/site/content/in-dev/unreleased/managing-security/external-pdp/_index.md
@@ -23,7 +23,7 @@ type: docs
weight: 300
---
-This section provides information about integrating Apache Polaris
(Incubating) with external Policy Decision Points (PDPs) for authorization.
+This section provides information about integrating Apache Polaris with
external Policy Decision Points (PDPs) for authorization.
## Overview
diff --git
a/site/content/in-dev/unreleased/managing-security/external-pdp/opa.md
b/site/content/in-dev/unreleased/managing-security/external-pdp/opa.md
index 6e2ffe673..f92ac57ea 100644
--- a/site/content/in-dev/unreleased/managing-security/external-pdp/opa.md
+++ b/site/content/in-dev/unreleased/managing-security/external-pdp/opa.md
@@ -27,7 +27,7 @@ weight: 100
**OPA integration is currently an preview feature** and may undergo breaking
changes in future versions. Use with caution in production environments.
{{< /alert >}}
-This page describes how to integrate Apache Polaris (Incubating) with [Open
Policy Agent (OPA)](https://www.openpolicyagent.org/) for external
authorization.
+This page describes how to integrate Apache Polaris with [Open Policy Agent
(OPA)](https://www.openpolicyagent.org/) for external authorization.
## Overview
diff --git a/site/content/in-dev/unreleased/telemetry.md
b/site/content/in-dev/unreleased/telemetry.md
index fc1a1336c..59a9b763e 100644
--- a/site/content/in-dev/unreleased/telemetry.md
+++ b/site/content/in-dev/unreleased/telemetry.md
@@ -87,7 +87,7 @@ The collector must talk the OpenTelemetry protocol (OTLP) and
the port must be i
By default, Polaris adds a few attributes to the [OpenTelemetry Resource] to
identify the server,
and notably:
-- `service.name`: set to `Apache Polaris Server (incubating)`;
+- `service.name`: set to `Apache Polaris Server`;
- `service.version`: set to the Polaris version.
[OpenTelemetry Resource]: https://opentelemetry.io/docs/languages/js/resources/
diff --git a/tools/verify-release/verify-release.sh
b/tools/verify-release/verify-release.sh
index 13ce85e4b..19420bf54 100755
--- a/tools/verify-release/verify-release.sh
+++ b/tools/verify-release/verify-release.sh
@@ -32,8 +32,8 @@ Usage: $0 [options]
Mandatory options:
-s | --git-sha | --sha <GIT_SHA> Git commit (full, not abbreviated)
Example:
b7188a07511935e7c9c64128dc047107c26f97f6
- -v | --version <version> Release version, including
'-incubating' and RC
- Example: 1.3.0-incubating-rc0
+ -v | --version <version> Release version, including RC
+ Example: 1.4.0-rc0
-m | --maven-repo-id <staging-ID> Staging Maven repository staging ID
Example: 1234
This will be prefixed with
${maven_repo_url_prefix}
@@ -44,7 +44,7 @@ Usage: $0 [options]
Full example for RC4 of version 9.8.0, staging repo ID 4568.
- ./verify-release.sh -s b7188a07511935e7c9c64128dc047107c26f97f6 -v
9.8.0-incubating-rc4 -m 4568
+ ./verify-release.sh -s b7188a07511935e7c9c64128dc047107c26f97f6 -v 9.8.0-rc4
-m 4568
!
}
@@ -90,7 +90,7 @@ RESET='\033[m'
# Allow leading characters, but only extract the version and rc.
VERSION_RC_REGEX="^([a-z-]+)?([0-9]+\.[0-9]+\.[0-9]+(-incubating)?)-rc([0-9]+)$"
if [[ ! ${version} =~ ${VERSION_RC_REGEX} ]]; then
- echo "Version '${version}' does not match the version pattern
0.0.0-incubating-rc0" > /dev/stderr
+ echo "Version '${version}' does not match the version pattern 0.0.0-rc0" >
/dev/stderr
exit 1
fi
version="${BASH_REMATCH[2]}"
@@ -147,8 +147,8 @@ ulimit -n 16384
failures_file="$(pwd)/${run_id}.log"
-dist_url_prefix="https://dist.apache.org/repos/dist/dev/incubator/polaris/"
-keys_file_url="https://downloads.apache.org/incubator/polaris/KEYS"
+dist_url_prefix="https://dist.apache.org/repos/dist/dev/polaris/"
+keys_file_url="https://downloads.apache.org/polaris/KEYS"
git_tag_full="apache-polaris-${version}-rc${rc_num}"
@@ -462,7 +462,6 @@ log_info "Git commit on tag '${git_tag_full}':
${git_sha_on_tag}"
log_part_end
log_part_start "Verify mandatory files in source tree"
- [[ -e "${worktree_dir}/DISCLAIMER" ]] || log_fatal "Mandatory DISCLAIMER
file missing in source tree"
[[ -e "${worktree_dir}/LICENSE" ]] || log_fatal "Mandatory LICENSE file
missing in source tree"
[[ -e "${worktree_dir}/NOTICE" ]] || log_fatal "Mandatory NOTICE file
missing in source tree"
[[ "$(cat "${worktree_dir}/version.txt")" == "${version}" ]] || log_fatal
"version.txt in source tree does not contain expected version"
@@ -522,11 +521,11 @@ log_part_start "Comparing main distribution artifacts"
compare_binary_file "source tarball" "apache-polaris-${version}.tar.gz"
"${worktree_dir}/build/distributions" "${dist_dir}"
dist_file_prefix="polaris-bin-${version}"
compare_binary_file "Polaris distribution tarball" "${dist_file_prefix}.tgz"
"${worktree_dir}/runtime/distribution/build/distributions" "${dist_dir}"
-[[ $(tar -tf "${dist_dir}/${dist_file_prefix}.tgz" | grep --extended-regexp
--count "^${dist_file_prefix}/(DISCLAIMER|LICENSE|NOTICE)$") -ne 3 ]] && \
- log_fatal "${dist_file_prefix}.tgz: Mandatory DISCLAIMER/LICENSE/NOTICE
files not in ${dist_file_prefix}/"
+[[ $(tar -tf "${dist_dir}/${dist_file_prefix}.tgz" | grep --extended-regexp
--count "^${dist_file_prefix}/(LICENSE|NOTICE)$") -ne 3 ]] && \
+ log_fatal "${dist_file_prefix}.tgz: Mandatory LICENSE/NOTICE files not in
${dist_file_prefix}/"
compare_binary_file "Polaris distribution zip" "${dist_file_prefix}.zip"
"${worktree_dir}/runtime/distribution/build/distributions" "${dist_dir}"
-[[ $(zipinfo -1 "${dist_dir}/${dist_file_prefix}.zip" | grep --extended-regexp
--count "^${dist_file_prefix}/(DISCLAIMER|LICENSE|NOTICE)$") -ne 3 ]] && \
- log_fatal "${dist_file_prefix}.zip: Mandatory DISCLAIMER/LICENSE/NOTICE
files not in ${dist_file_prefix}/"
+[[ $(zipinfo -1 "${dist_dir}/${dist_file_prefix}.zip" | grep --extended-regexp
--count "^${dist_file_prefix}/(LICENSE|NOTICE)$") -ne 3 ]] && \
+ log_fatal "${dist_file_prefix}.zip: Mandatory LICENSE/NOTICE files not in
${dist_file_prefix}/"
log_part_end
log_part_start "Comparing helm chart artifacts"
@@ -539,7 +538,6 @@ helm_package_file="polaris-${version}.tgz"
tar ${tar_opts} -xf "${helm_dir}/${helm_package_file}" --directory
"${helm_work_dir}/staged" || true
tar ${tar_opts} -xf "${helm_work_dir}/${helm_package_file}" --directory
"${helm_work_dir}/local" || true
proc_exec "Helm package ${helm_package_file} contents" diff -r
"${helm_work_dir}/local" "${helm_work_dir}/staged"
-[[ -e "${helm_work_dir}/staged/polaris/DISCLAIMER" ]] || log_fatal "Mandatory
DISCLAIMER file missing in Helm package ${helm_package_file}"
[[ -e "${helm_work_dir}/staged/polaris/LICENSE" ]] || log_fatal "Mandatory
LICENSE file missing in Helm package ${helm_package_file}"
[[ -e "${helm_work_dir}/staged/polaris/NOTICE" ]] || log_fatal "Mandatory
NOTICE file missing in Helm package ${helm_package_file}"
log_part_end
diff --git
a/tools/version/src/jarTest/java/org/apache/polaris/version/TestPolarisVersion.java
b/tools/version/src/jarTest/java/org/apache/polaris/version/TestPolarisVersion.java
index c23feef28..0d5866287 100644
---
a/tools/version/src/jarTest/java/org/apache/polaris/version/TestPolarisVersion.java
+++
b/tools/version/src/jarTest/java/org/apache/polaris/version/TestPolarisVersion.java
@@ -79,7 +79,7 @@ public class TestPolarisVersion {
soft.assertThat(polarisVersionString()).isEqualTo(System.getProperty("polarisVersion"));
soft.assertThat(isReleaseBuild()).isTrue();
-
soft.assertThat(getBuildReleasedVersion()).contains("0.1.2-incubating-SNAPSHOT");
+ soft.assertThat(getBuildReleasedVersion()).contains("0.1.2-SNAPSHOT");
soft.assertThat(getBuildGitHead()).contains("27cf81929cbb08e545c8fcb1ed27a53d7ef1af79");
soft.assertThat(getBuildGitTag()).contains("foo-tag-bar");
soft.assertThat(getBuildJavaSpecificationVersion()).contains("21");
diff --git a/tools/version/src/jarTest/resources/META-INF/FAKE_MANIFEST.MF
b/tools/version/src/jarTest/resources/META-INF/FAKE_MANIFEST.MF
index 2b041c308..54aa42d08 100644
--- a/tools/version/src/jarTest/resources/META-INF/FAKE_MANIFEST.MF
+++ b/tools/version/src/jarTest/resources/META-INF/FAKE_MANIFEST.MF
@@ -1,5 +1,5 @@
Manifest-Version: 1.0
-Apache-Polaris-Version: 0.1.2-incubating-SNAPSHOT
+Apache-Polaris-Version: 0.1.2-SNAPSHOT
Apache-Polaris-Is-Release: true
Apache-Polaris-Build-Git-Head: 27cf81929cbb08e545c8fcb1ed27a53d7ef1af79
Apache-Polaris-Build-Git-Describe: foo-tag-bar
diff --git a/version.txt b/version.txt
index ff155f1ea..8f069aebb 100644
--- a/version.txt
+++ b/version.txt
@@ -1 +1 @@
-1.4.0-incubating-SNAPSHOT
+1.4.0-SNAPSHOT