This is an automated email from the ASF dual-hosted git repository.
xiaokang pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-graphar.git
The following commit(s) were added to refs/heads/main by this push:
new f87ca772 fix(python): Fix python wheel error by disabling s3 (#826)
f87ca772 is described below
commit f87ca772a95f6aa00ca81fd1ed7c6fbc11587c11
Author: Xiaokang Yang <[email protected]>
AuthorDate: Fri Jan 16 10:16:53 2026 +0800
fix(python): Fix python wheel error by disabling s3 (#826)
* trt
* remove sudo
* test
* try build graphar cpp
* try build graphar cpp
* remove sudo
* remove sudo
* try
* try
* try close s3
* try close s3
* try
* try
* open arrow s3 in macos
* try
* update
* fix smoke test
* only run in cp39
* try fix
* update
* format
* format
---
.github/workflows/python-wheel-workflow.yml | 51 +++++++++++++++++++----------
cpp/src/graphar/filesystem.cc | 6 ++++
python/pyproject.toml | 2 +-
3 files changed, 40 insertions(+), 19 deletions(-)
diff --git a/.github/workflows/python-wheel-workflow.yml
b/.github/workflows/python-wheel-workflow.yml
index cdbe0702..4504bd40 100644
--- a/.github/workflows/python-wheel-workflow.yml
+++ b/.github/workflows/python-wheel-workflow.yml
@@ -130,27 +130,28 @@ jobs:
fi
dnf install -y 'dnf-command(config-manager)' || dnf install -y
dnf-plugins-core || true
# Follow official Apache Arrow install instructions for
AlmaLinux/RHEL-family
- dnf install -y epel-release || \
- dnf install -y oracle-epel-release-el${ALMA_MAJOR} || \
- dnf install -y
https://dl.fedoraproject.org/pub/epel/epel-release-latest-${ALMA_MAJOR}.noarch.rpm
- dnf install -y
https://packages.apache.org/artifactory/arrow/almalinux/${ALMA_MAJOR}/apache-arrow-release-latest.rpm
+ dnf install -y epel-release || dnf install -y
oracle-epel-release-el$(cut -d: -f5 /etc/system-release-cpe | cut -d. -f1) ||
dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-$(cut
-d: -f5 /etc/system-release-cpe | cut -d. -f1).noarch.rpm
+ dnf install -y
https://packages.apache.org/artifactory/arrow/almalinux/$(cut -d: -f5
/etc/system-release-cpe | cut -d. -f1)/apache-arrow-release-latest.rpm
dnf config-manager --set-enabled epel || :
dnf config-manager --set-enabled powertools || :
dnf config-manager --set-enabled crb || :
- dnf config-manager --set-enabled ol${ALMA_MAJOR}_codeready_builder || :
- dnf config-manager --set-enabled
codeready-builder-for-rhel-${ALMA_MAJOR}-rhui-rpms || :
- subscription-manager repos --enable
codeready-builder-for-rhel-${ALMA_MAJOR}-$(arch)-rpms || :
- # manylinux images may carry older Arrow packages (e.g. arrow1700-*)
which
- # conflict with the newer packages from the Apache Arrow repo (e.g.
arrow2200-*).
- # Remove any preinstalled Arrow/Parquet RPMs so we install a
consistent set.
- dnf remove -y 'arrow*' 'parquet*' || true
- # Required for GraphAr C++ build via Arrow CMake packages
- dnf install -y --allowerasing \
- arrow-devel \
- arrow-dataset-devel \
- arrow-acero-devel \
- parquet-devel \
- libcurl-devel re2-devel ccache
+ dnf config-manager --set-enabled ol$(cut -d: -f5
/etc/system-release-cpe | cut -d. -f1)_codeready_builder || :
+ dnf config-manager --set-enabled codeready-builder-for-rhel-$(cut -d:
-f5 /etc/system-release-cpe | cut -d. -f1)-rhui-rpms || :
+ subscription-manager repos --enable codeready-builder-for-rhel-$(cut
-d: -f5 /etc/system-release-cpe | cut -d. -f1)-$(arch)-rpms || :
+ dnf install -y arrow-devel # For C++
+ dnf install -y arrow-glib-devel # For GLib (C)
+ dnf install -y arrow-dataset-devel # For Apache Arrow Dataset C++
+ dnf install -y arrow-dataset-glib-devel # For Apache Arrow Dataset
GLib (C)
+ dnf install -y arrow-acero-devel # For Apache Arrow Acero C++
+ dnf install -y arrow-flight-devel # For Apache Arrow Flight C++
+ dnf install -y arrow-flight-glib-devel # For Apache Arrow Flight GLib
(C)
+ dnf install -y arrow-flight-sql-devel # For Apache Arrow Flight SQL C++
+ dnf install -y arrow-flight-sql-glib-devel # For Apache Arrow Flight
SQL GLib (C)
+ dnf install -y gandiva-devel # For Apache Gandiva C++
+ dnf install -y gandiva-glib-devel # For Apache Gandiva GLib (C)
+ dnf install -y parquet-devel # For Apache Parquet C++
+ dnf install -y parquet-glib-devel # For Apache Parquet GLib (C)
+
steps:
- name: Checkout (needed for some tooling)
uses: actions/checkout@v4
@@ -184,6 +185,7 @@ jobs:
otool -l "$CONDA/lib/libarrow.dylib" | (grep -A3 -E
'LC_BUILD_VERSION|LC_VERSION_MIN_MACOSX' || true)
fi
fi
+
- name: Install Arrow (Windows)
if: matrix.os == 'windows'
shell: pwsh
@@ -224,6 +226,7 @@ jobs:
exit 1
fi
echo "PKGDIR=$PKGDIR" >> "$GITHUB_ENV"
+
- name: Build wheels
shell: bash
run: |
@@ -232,12 +235,24 @@ jobs:
python -m pip install packaging cibuildwheel
mkdir -p python/dist
python -m cibuildwheel --output-dir python/dist "$PKGDIR"
+
- name: Store artifacts
uses: actions/upload-artifact@v4
with:
name: wheels-${{ matrix.os }}-${{ matrix.platform }}
path: python/dist/*
+ - name: Smoke test wheel
+ shell: bash
+ run: |
+ set -euxo pipefail
+ python -m pip uninstall -y graphar || true
+
+ python -m pip install --find-links python/dist graphar
+
+ python -c "import graphar; import graphar._core; print('GraphAr
imported successfully')"
+ graphar --help >/dev/null
+
upload_test_pypi:
name: Publish to TestPyPI (auto)
needs: [build_wheels, build_sdist]
diff --git a/cpp/src/graphar/filesystem.cc b/cpp/src/graphar/filesystem.cc
index 600ed779..78472cc4 100644
--- a/cpp/src/graphar/filesystem.cc
+++ b/cpp/src/graphar/filesystem.cc
@@ -370,20 +370,26 @@ Result<std::shared_ptr<FileSystem>>
FileSystemFromUriOrPath(
// arrow::fs::InitializeS3 and arrow::fs::FinalizeS3 need arrow_version >= 15
Status InitializeS3() {
#if defined(ARROW_VERSION) && ARROW_VERSION > 14000000
+#if defined(ARROW_S3)
auto options = arrow::fs::S3GlobalOptions::Defaults();
+#endif
#else
arrow::fs::S3GlobalOptions options;
options.log_level = arrow::fs::S3LogLevel::Fatal;
#endif
#if defined(ARROW_VERSION) && ARROW_VERSION >= 15000000
+#if defined(ARROW_S3)
RETURN_NOT_ARROW_OK(arrow::fs::InitializeS3(options));
+#endif
#endif
return Status::OK();
}
Status FinalizeS3() {
#if defined(ARROW_VERSION) && ARROW_VERSION >= 15000000
+#if defined(ARROW_S3)
RETURN_NOT_ARROW_OK(arrow::fs::FinalizeS3());
+#endif
#endif
return Status::OK();
}
diff --git a/python/pyproject.toml b/python/pyproject.toml
index 5f3c6e96..bc19fa63 100644
--- a/python/pyproject.toml
+++ b/python/pyproject.toml
@@ -22,7 +22,7 @@ build-backend = "scikit_build_core.build"
[project]
name = "graphar"
-version = "0.13.0-dev"
+version = "0.13.0.dev1"
description = "An open source, standard data file format for graph data
storage and retrieval."
readme = "README.md"
authors = [{ name = "GraphAr community", email = "[email protected]" }]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]