Skip to content

Replace RUBY_EXPORT with RUBY_FUNC_EXPORTED since it's the recommended way#97

Open
maxprokopiev wants to merge 1 commit intovmg:masterfrom
maxprokopiev:fix-ruby-export
Open

Replace RUBY_EXPORT with RUBY_FUNC_EXPORTED since it's the recommended way#97
maxprokopiev wants to merge 1 commit intovmg:masterfrom
maxprokopiev:fix-ruby-export

Conversation

@maxprokopiev
Copy link

RUBY_EXPORT used by ruby internally to figure out if library is static or dynamic. The change in ruby/ruby#9828 broke rinku because it couldn't find ruby_abi_version() anymore.

RUBY_FUNC_EXPORTED is recommended in that case
(see https://github.com/ruby/ruby/blob/b2392c6be418703e8941226ac80b359188bf3c5d/lib/bundler/templates/newgem/ext/newgem/extconf-c.rb.tt#L6)

RUBY_EXPORT used by ruby internally to figure out if library is static or dynamic.
The change in ruby/ruby#9828 broke rinku because it
couldn't find `ruby_abi_version()` anymore.

RUBY_FUNC_EXPORTED is recommended in that case
(see https://github.com/ruby/ruby/blob/b2392c6be418703e8941226ac80b359188bf3c5d/lib/bundler/templates/newgem/ext/newgem/extconf-c.rb.tt#L6)
@jeremy
Copy link

jeremy commented Oct 4, 2024

Thanks. Required to build on Ruby 3.4.

jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 17, 2025
* Bundler 4.0.2
* Rinku fork for vmg/rinku#97
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 17, 2025
* Bundler 4.0.2
* Rinku fork for vmg/rinku#97
* web-push fork for pushpad/web-push#19
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 17, 2025
* Bundler 4.0.2
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
  * rubocop: rubocop/rubocop#14644
  * web-push: for pushpad/web-push#19
@jeremy jeremy mentioned this pull request Dec 17, 2025
7 tasks
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 17, 2025
* Bundler 4.0.2
* Git sources for fixes and pending releases
  * nokogiri: to force compilation, fixing
    "nokogiri-1.18.10-x86_64-linux-gnu requires ruby version < 3.5.dev,
    >= 3.1, which is incompatible with the current version,
    4.0.0.preview2"
  * rinku: vmg/rinku#97
  * rubocop: rubocop/rubocop#14644
  * web-push: for pushpad/web-push#19
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 17, 2025
* Bundler 4.0.2
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
  * rubocop: rubocop/rubocop#14644
  * web-push: for pushpad/web-push#19
* Git sources for precompiled extensions to force compilation, fixing
  `< 3.5.dev` version constraint on the compiled extension not present
  on gems themselves: ffi, nokogiri
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 17, 2025
* Bundler 4.0.2
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
  * rubocop: rubocop/rubocop#14644
  * web-push: for pushpad/web-push#19
* Many precompiled extensions have Ruby < 3.5.dev version constrant that
  isn't present on the gem itself. Disable all platforms except Ruby to
  sidestep precompiled gems, forcing compilation. Affects ffi, nokogiri,
  sqlite3-ruby.
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 17, 2025
* Bundler 4.0.2
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
  * rubocop: rubocop/rubocop#14644
  * web-push: for pushpad/web-push#19
* Many platform-specific gems aren't compiled for Ruby 4 yet.
  Selective workarounds to force ruby platform for those: ffi,
  nokogiri, sqlite3-ruby.
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 17, 2025
* Bundler 4.0.2
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
  * rubocop: rubocop/rubocop#14644
  * web-push: for pushpad/web-push#19
* Many platform-specific gems aren't compiled for Ruby 4 yet.
  Selective workarounds to force ruby platform for those: ffi,
  nokogiri, sqlite3-ruby.
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 18, 2025
* Bundler 4.0.2
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
  * rubocop: rubocop/rubocop#14644
* Many platform-specific gems aren't compiled for Ruby 4 yet.
  Selective workarounds to force ruby platform for those: ffi,
  nokogiri, sqlite3-ruby.
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 18, 2025
* Bundler 4.0.2
* Gem upgrades for Ruby 4 compat
  * rubocop 1.82.0 for rubocop/rubocop#14644
  * web-push 3.1.0 for pushpad/web-push#19
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
* Many platform-specific gems aren't compiled for Ruby 4 yet, which
  triggers a Bundler bug wherein it selects a chooses an imcompatible
  platform-specific gem rather than falling back to the ruby platform
  and compiling. Fix: ruby/rubygems#9211
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 18, 2025
* Bundler 4.0.2
* Gem upgrades for Ruby 4 compat
  * rubocop 1.82.0 for rubocop/rubocop#14644
  * web-push 3.1.0 for pushpad/web-push#19
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
* Many platform-specific gems aren't compiled for Ruby 4 yet, which
  triggers a Bundler bug wherein it selects a chooses an imcompatible
  platform-specific gem rather than falling back to the ruby platform
  and compiling. Fix: ruby/rubygems#9211
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 18, 2025
* Bundler 4.0.2
* Gem upgrades for Ruby 4 compat
  * rubocop 1.82.0 for rubocop/rubocop#14644
  * web-push 3.1.0 for pushpad/web-push#19
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
* Many platform-specific gems aren't compiled for Ruby 4 yet, which
  triggers a Bundler bug wherein it selects a chooses an imcompatible
  platform-specific gem rather than falling back to the ruby platform
  and compiling. Fix: ruby/rubygems#9211
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 18, 2025
* Bundler 4.0.2
* Gem upgrades for Ruby 4 compat
  * rubocop 1.82.0 for rubocop/rubocop#14644
  * web-push 3.1.0 for pushpad/web-push#19
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
* Many platform-specific gems aren't compiled for Ruby 4 yet, which
  triggers a Bundler bug wherein it selects a chooses an imcompatible
  platform-specific gem rather than falling back to the ruby platform
  and compiling. Fix: ruby/rubygems#9211
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 18, 2025
* Bundler 4.0.2
* Gem upgrades for Ruby 4 compat
  * rubocop 1.82.0 for rubocop/rubocop#14644
  * web-push 3.1.0 for pushpad/web-push#19
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
* Many platform-specific gems aren't compiled for Ruby 4 yet, which
  triggers a Bundler bug wherein it selects a chooses an imcompatible
  platform-specific gem rather than falling back to the ruby platform
  and compiling. Fix: ruby/rubygems#9211
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 27, 2025
* Bundler 4.0.3
* Gem upgrades for Ruby 4 compat
  * rubocop 1.82.0 for rubocop/rubocop#14644
  * web-push 3.1.0 for pushpad/web-push#19
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
* Many platform-specific gems aren't compiled for Ruby 4 yet, which
  triggers a Bundler bug wherein it selects a chooses an imcompatible
  platform-specific gem rather than falling back to the ruby platform
  and compiling. Fix: ruby/rubygems#9211
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 27, 2025
* Bundler 4.0.3
* Gem upgrades for Ruby 4 compat
  * rubocop 1.82.0 for rubocop/rubocop#14644
  * web-push 3.1.0 for pushpad/web-push#19
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
* Many platform-specific gems aren't compiled for Ruby 4 yet, which
  triggers a Bundler bug wherein it selects a chooses an imcompatible
  platform-specific gem rather than falling back to the ruby platform
  and compiling. Fix: ruby/rubygems#9211
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 27, 2025
* Bundler 4.0.3
* Gem upgrades for Ruby 4 compat
  * rubocop 1.82.0 for rubocop/rubocop#14644
  * web-push 3.1.0 for pushpad/web-push#19
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
* Many platform-specific gems aren't compiled for Ruby 4 yet, which
  triggers a Bundler bug wherein it selects a chooses an imcompatible
  platform-specific gem rather than falling back to the ruby platform
  and compiling. Fix: ruby/rubygems#9211
jeremy added a commit to basecamp/fizzy that referenced this pull request Dec 27, 2025
* Bundler 4.0.3
* Awaiting platform-specific gem: ffi, nokogiri, sqlite3, thruster
* Gem upgrades for Ruby 4 compat
  * rubocop 1.82.0 for rubocop/rubocop#14644
  * web-push 3.1.0 for pushpad/web-push#19
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
  * rubocop: rubocop/rubocop#14644
  * web-push: for pushpad/web-push#19
* Many platform-specific gems aren't compiled for Ruby 4 yet, which
  triggers a Bundler bug wherein it selects a chooses an imcompatible
  platform-specific gem rather than falling back to the ruby platform
  and compiling. Fix: ruby/rubygems#9211
jeremy added a commit to basecamp/fizzy that referenced this pull request Jan 2, 2026
* Bundler 4.0.3
* Awaiting platform-specific gem: ffi, nokogiri, sqlite3, thruster
* Gem upgrades for Ruby 4 compat
  * rubocop 1.82.0 for rubocop/rubocop#14644
  * web-push 3.1.0 for pushpad/web-push#19
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
  * rubocop: rubocop/rubocop#14644
  * web-push: for pushpad/web-push#19
* Many platform-specific gems aren't compiled for Ruby 4 yet, which
  triggers a Bundler bug wherein it selects a chooses an imcompatible
  platform-specific gem rather than falling back to the ruby platform
  and compiling. Fix: ruby/rubygems#9211
jeremy added a commit to basecamp/fizzy that referenced this pull request Feb 4, 2026
* Bundler 4.0.3
* Awaiting platform-specific gem: ffi, nokogiri, sqlite3, thruster
* Gem upgrades for Ruby 4 compat
  * rubocop 1.82.0 for rubocop/rubocop#14644
  * web-push 3.1.0 for pushpad/web-push#19
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
  * rubocop: rubocop/rubocop#14644
  * web-push: for pushpad/web-push#19
* Many platform-specific gems aren't compiled for Ruby 4 yet, which
  triggers a Bundler bug wherein it selects a chooses an imcompatible
  platform-specific gem rather than falling back to the ruby platform
  and compiling. Fix: ruby/rubygems#9211
jeremy added a commit to basecamp/fizzy that referenced this pull request Feb 4, 2026
* Bundler 4.0.3
* Awaiting platform-specific gem: ffi, nokogiri, sqlite3, thruster
* Gem upgrades for Ruby 4 compat
  * rubocop 1.82.0 for rubocop/rubocop#14644
  * web-push 3.1.0 for pushpad/web-push#19
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
  * rubocop: rubocop/rubocop#14644
  * web-push: for pushpad/web-push#19
* Many platform-specific gems aren't compiled for Ruby 4 yet, which
  triggers a Bundler bug wherein it selects a chooses an imcompatible
  platform-specific gem rather than falling back to the ruby platform
  and compiling. Fix: ruby/rubygems#9211
jeremy added a commit to basecamp/fizzy that referenced this pull request Feb 4, 2026
* Bundler 4.0.3
* Awaiting platform-specific gem: ffi, nokogiri, sqlite3, thruster
* Gem upgrades for Ruby 4 compat
  * rubocop 1.82.0 for rubocop/rubocop#14644
  * web-push 3.1.0 for pushpad/web-push#19
* Git sources for fixes and pending releases
  * rinku: vmg/rinku#97
  * rubocop: rubocop/rubocop#14644
  * web-push: for pushpad/web-push#19
* Many platform-specific gems aren't compiled for Ruby 4 yet, which
  triggers a Bundler bug wherein it selects a chooses an imcompatible
  platform-specific gem rather than falling back to the ruby platform
  and compiling. Fix: ruby/rubygems#9211
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants