You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iceberg.apache.org by fo...@apache.org on 2025/09/15 18:41:07 UTC

(iceberg-cpp) branch main updated: fix: address feedback from initial release (#223)

This is an automated email from the ASF dual-hosted git repository.

fokko pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iceberg-cpp.git


The following commit(s) were added to refs/heads/main by this push:
     new 0508f80  fix: address feedback from initial release (#223)
0508f80 is described below

commit 0508f80aeb597838da41feab8aa128a57619629a
Author: Gang Wu <us...@gmail.com>
AuthorDate: Tue Sep 16 02:41:02 2025 +0800

    fix: address feedback from initial release (#223)
    
    - suppress warnings from verify_rc.sh
    - fix release.sh not to rename artifacts
    - refactor wordings in the email templates
---
 cmake_modules/IcebergThirdpartyToolchain.cmake | 57 ++++++++++----------------
 dev/release/release.sh                         | 15 ++-----
 dev/release/release_rc.sh                      | 12 +++---
 dev/release/verify_rc.sh                       |  4 +-
 4 files changed, 34 insertions(+), 54 deletions(-)

diff --git a/cmake_modules/IcebergThirdpartyToolchain.cmake b/cmake_modules/IcebergThirdpartyToolchain.cmake
index bb9fcd8..2e915c0 100644
--- a/cmake_modules/IcebergThirdpartyToolchain.cmake
+++ b/cmake_modules/IcebergThirdpartyToolchain.cmake
@@ -51,6 +51,14 @@ macro(prepare_fetchcontent)
   set(CMAKE_COMPILE_WARNING_AS_ERROR FALSE)
   set(CMAKE_EXPORT_NO_PACKAGE_REGISTRY TRUE)
   set(CMAKE_POSITION_INDEPENDENT_CODE ON)
+  # Use "NEW" for CMP0077 by default.
+  #
+  # https://cmake.org/cmake/help/latest/policy/CMP0077.html
+  #
+  # option() honors normal variables.
+  set(CMAKE_POLICY_DEFAULT_CMP0077
+      NEW
+      CACHE STRING "")
 endmacro()
 
 # ----------------------------------------------------------------------
@@ -59,43 +67,20 @@ endmacro()
 function(resolve_arrow_dependency)
   prepare_fetchcontent()
 
-  set(ARROW_BUILD_SHARED
-      OFF
-      CACHE BOOL "" FORCE)
-  set(ARROW_BUILD_STATIC
-      ON
-      CACHE BOOL "" FORCE)
+  set(ARROW_BUILD_SHARED OFF)
+  set(ARROW_BUILD_STATIC ON)
   # Work around undefined symbol: arrow::ipc::ReadSchema(arrow::io::InputStream*, arrow::ipc::DictionaryMemo*)
-  set(ARROW_IPC
-      ON
-      CACHE BOOL "" FORCE)
-  set(ARROW_FILESYSTEM
-      ON
-      CACHE BOOL "" FORCE)
-  set(ARROW_JSON
-      ON
-      CACHE BOOL "" FORCE)
-  set(ARROW_PARQUET
-      ON
-      CACHE BOOL "" FORCE)
-  set(ARROW_SIMD_LEVEL
-      "NONE"
-      CACHE STRING "" FORCE)
-  set(ARROW_RUNTIME_SIMD_LEVEL
-      "NONE"
-      CACHE STRING "" FORCE)
-  set(ARROW_POSITION_INDEPENDENT_CODE
-      ON
-      CACHE BOOL "" FORCE)
-  set(ARROW_DEPENDENCY_SOURCE
-      "BUNDLED"
-      CACHE STRING "" FORCE)
-  set(ARROW_WITH_ZLIB
-      ON
-      CACHE BOOL "" FORCE)
-  set(ZLIB_SOURCE
-      "SYSTEM"
-      CACHE STRING "" FORCE)
+  set(ARROW_IPC ON)
+  set(ARROW_FILESYSTEM ON)
+  set(ARROW_JSON ON)
+  set(ARROW_PARQUET ON)
+  set(ARROW_SIMD_LEVEL "NONE")
+  set(ARROW_RUNTIME_SIMD_LEVEL "NONE")
+  set(ARROW_POSITION_INDEPENDENT_CODE ON)
+  set(ARROW_DEPENDENCY_SOURCE "BUNDLED")
+  set(ARROW_WITH_ZLIB ON)
+  set(ZLIB_SOURCE "SYSTEM")
+  set(ARROW_VERBOSE_THIRDPARTY_BUILD OFF)
 
   fetchcontent_declare(VendoredArrow
                        ${FC_DECLARE_COMMON_OPTIONS}
diff --git a/dev/release/release.sh b/dev/release/release.sh
index d6b1db5..bc22ae7 100755
--- a/dev/release/release.sh
+++ b/dev/release/release.sh
@@ -63,13 +63,6 @@ svn \
 svn co "${dist_url}/${release_id}"
 pushd "${release_id}"
 
-echo "Renaming artifacts to their final release names..."
-for fname in ./*; do
-  mv "${fname}" "${fname//-rc${rc}/}"
-done
-echo "Renamed files:"
-ls -l
-
 gh release create "${tag}" \
   --repo "${repository}" \
   --title "Apache Iceberg C++ ${version}" \
@@ -111,15 +104,15 @@ To: dev@iceberg.apache.org
 Cc: announce@apache.org
 Hello everyone,
 
-I'm pleased to announce the release of Apache Iceberg C++ v${version}!
+I'm pleased to announce the release of Apache Iceberg C++ ${version}!
 
-Apache Iceberg is an open table format for huge analytic datasets,
+Apache Iceberg is an open table format for huge analytic datasets.
 Iceberg delivers high query performance for tables with tens of
 petabytes of data, along with atomic commits, concurrent writes, and
 SQL-compatible table evolution.
 
-This release contains <COMMIT_COUNT> commits from <CONTRIBUTOR_COUNT> unique contributors. Among
-the changes in this release are the following highlights:
+This release contains <COMMIT_COUNT> commits from <CONTRIBUTOR_COUNT> unique contributors.
+Among the changes in this release are the following highlights:
 
 - <FEATURE_1>
 - <FEATURE_2>
diff --git a/dev/release/release_rc.sh b/dev/release/release_rc.sh
index f9fcc0c..021f64a 100755
--- a/dev/release/release_rc.sh
+++ b/dev/release/release_rc.sh
@@ -72,7 +72,7 @@ fi
 rc_hash="$(git rev-list --max-count=1 "${rc_tag}")"
 
 id="apache-iceberg-cpp-${version}"
-rc_id="${id}-${rc}"
+rc_id="${id}-rc${rc}"
 tar_gz="${id}.tar.gz"
 
 if [ "${RELEASE_SIGN}" -gt 0 ]; then
@@ -126,26 +126,26 @@ echo ""
 echo "---------------------------------------------------------"
 cat <<MAIL
 To: dev@iceberg.apache.org
-Subject: [VOTE][C++] Release Apache Iceberg C++ v${version} RC${rc}
+Subject: [VOTE][C++] Release Apache Iceberg C++ ${version} RC${rc}
 
 Hi,
 
 I would like to propose the following release candidate (RC${rc}) of
-Apache Iceberg C++ version v${version}.
+Apache Iceberg C++ ${version}.
 
 This release candidate is based on commit:
 ${rc_hash} [1]
 
-The source release rc${rc} is hosted at [2].
+The source release RC${rc} is hosted at [2].
 
 Please download, verify checksums and signatures, run the unit tests,
 and vote on the release. See [3] for how to validate a release candidate.
 
 The vote will be open for at least 72 hours.
 
-[ ] +1 Release this as Apache Iceberg C++ v${version}
+[ ] +1 Release this as Apache Iceberg C++ ${version}
 [ ] +0
-[ ] -1 Do not release this as Apache Iceberg C++ v${version} because...
+[ ] -1 Do not release this as Apache Iceberg C++ ${version} because...
 
 [1]: https://github.com/apache/iceberg-cpp/tree/${rc_hash}
 [2]: https://dist.apache.org/repos/dist/dev/iceberg/apache-iceberg-cpp-${version}-rc${rc}
diff --git a/dev/release/verify_rc.sh b/dev/release/verify_rc.sh
index 1d106b0..c1db295 100755
--- a/dev/release/verify_rc.sh
+++ b/dev/release/verify_rc.sh
@@ -118,9 +118,11 @@ test_source_distribution() {
 
   # Configure build
   cmake -S . -B build \
+    -DCMAKE_CXX_FLAGS="-Wno-deprecated-declarations" \
     -DCMAKE_BUILD_TYPE=Release \
     -DICEBERG_BUILD_STATIC=ON \
-    -DICEBERG_BUILD_SHARED=ON
+    -DICEBERG_BUILD_SHARED=ON \
+    --compile-no-warning-as-error
 
   # Build
   cmake --build build --parallel $(nproc || sysctl -n hw.ncpu || echo 4)