You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opendal.apache.org by er...@apache.org on 2026/06/07 05:21:07 UTC
(opendal) branch ci-ruby updated (0a0dfdae5 -> 85741b9f1)
This is an automated email from the ASF dual-hosted git repository.
erickguan pushed a change to branch ci-ruby
in repository https://gitbox.apache.org/repos/asf/opendal.git
discard 0a0dfdae5 ci: test ruby native build
new 85741b9f1 ci: test ruby native build
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (0a0dfdae5)
\
N -- N -- N refs/heads/ci-ruby (85741b9f1)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
(opendal) 01/01: ci: test ruby native build
Posted by er...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
erickguan pushed a commit to branch ci-ruby
in repository https://gitbox.apache.org/repos/asf/opendal.git
commit 85741b9f168b1f021052f6f8a2ff51292a06d936
Author: Erick Guan <29...@users.noreply.github.com>
AuthorDate: Sun Jun 7 13:20:55 2026 +0800
ci: test ruby native build
---
.github/workflows/release_ruby.yml | 5 ++++-
bindings/ruby/Rakefile | 24 +++++++++---------------
2 files changed, 13 insertions(+), 16 deletions(-)
diff --git a/.github/workflows/release_ruby.yml b/.github/workflows/release_ruby.yml
index baa57cd5d..34b8d63bc 100644
--- a/.github/workflows/release_ruby.yml
+++ b/.github/workflows/release_ruby.yml
@@ -98,6 +98,9 @@ jobs:
- os: ubuntu-24.04-arm
platform: aarch64-linux
rust_target: aarch64-unknown-linux-gnu
+ - os: macos-14
+ platform: arm64-darwin23
+ rust_target: aarch64-apple-darwin
- os: macos-15
platform: arm64-darwin24
rust_target: aarch64-apple-darwin
@@ -126,7 +129,7 @@ jobs:
uses: ruby/setup-ruby@v1
with:
bundler-cache: true
- working-directory: bindings/ruby # must repeat because GitHub Actions will not use defaults.run
+ working-directory: bindings/ruby # must repeat because actions will not use defaults.run
- name: Show available rake tasks
run: bundle exec rake --tasks
diff --git a/bindings/ruby/Rakefile b/bindings/ruby/Rakefile
index 5ff06790d..2dc28074f 100644
--- a/bindings/ruby/Rakefile
+++ b/bindings/ruby/Rakefile
@@ -23,8 +23,15 @@ require "rb_sys/extensiontask"
require "standard/rake"
GEMSPEC = Gem::Specification.load("opendal.gemspec")
+PACKAGE_NAME = "opendal"
CRATE_PACKAGE_NAME = "opendal-ruby"
+if ENV["RUBY_PLATFORM"].present? && ENV["RUBY_PLATFORM"] != ""
+ Rake::ExtensionTask.new(PACKAGE_NAME, spec) do |ext|
+ ext.platform = ENV["RUBY_PLATFORM"]
+ end
+end
+
desc "Copy core files for compilation"
task :copy_core do
core_dir = "../../core"
@@ -57,20 +64,7 @@ RbSys::ExtensionTask.new(CRATE_PACKAGE_NAME, GEMSPEC) do |ext|
ext.ext_dir = "."
ext.lib_dir = "lib/opendal_ruby"
- ext.cross_compile = true
- ext.cross_platform = %w[
- x86_64-linux
- arm64-linux
- arm64-darwin
- arm64-darwin23
- ]
-
- # Override Ruby version requirement for native gems
- # This prevents automatic constraint to the build Ruby version (e.g., >= 3.3, < 3.4.dev)
- ext.cross_compiling do |gem_spec|
- # keep in sync with opendal.gemspec
- gem_spec.required_ruby_version = ">= 3.2", "< 3.5.dev"
- end
+ ext.cross_compile = false
end
Rake::Task[:test].prerequisites << :compile
@@ -139,7 +133,7 @@ Rake::Task["release"].clear # clear the existing release task to allow override
Rake::Task["release:rubygem_push"].clear if Rake::Task.task_defined?("release:rubygem_push")
# overrides bundler's default rake release task
-# we removed build and git tagging steps. Read more in ``./.github/workflows/release-ruby.yml`
+# we removed build and git tagging steps. Read more in `./.github/workflows/release-ruby.yml`
# read more https://github.com/rubygems/rubygems/blob/master/bundler/lib/bundler/gem_helper.rb
desc "Multi-arch release"
task release: [