mirror of
https://github.com/protocolbuffers/protobuf
synced 2026-08-26 02:23:14 -04:00
Fixes #28927 I ran into this while packaging the OpenTelemetry Ruby auto-instrumentation as a prebuilt gem bundle (see #28927 for the full write up). The tl;dr: `bigdecimal` is only used by the test suite, so it only needs to be a development dependency. The only references are:8baed752ce/ruby/tests/common_tests.rb (L9)8baed752ce/ruby/tests/common_tests.rb (L1708)As a runtime dependency it causes pain for anyone vendoring the gem. `bigdecimal` is a native extension with no precompiled build, so it has to be compiled from source for each Ruby ABI, making it the one gem that stops a prebuilt bundle from working across Ruby versions, despite never being loaded at runtime. This PR moves `bigdecimal` from a runtime to a development dependency. For consistency it also moves `bigdecimal` into the `test` group in the Gemfile, since that's the only environment that needs it. Closes #28928 COPYBARA_INTEGRATE_REVIEW=https://github.com/protocolbuffers/protobuf/pull/28928 from mwear:ruby-bigdecimal-dev-dependency6fb8ee4fadPiperOrigin-RevId: 957450742
23 lines
489 B
Ruby
23 lines
489 B
Ruby
source 'https://rubygems.org'
|
|
|
|
# FFI is required for JRuby platforms, but optional elsewhere
|
|
if defined? $JRUBY_VERSION
|
|
gem "ffi", "~>1", platforms: %i[jruby]
|
|
gem "ffi-compiler", "~>1", platforms: %i[jruby]
|
|
else
|
|
group :development do
|
|
gem "ffi", "~>1"
|
|
gem "ffi-compiler", "~>1"
|
|
end
|
|
end
|
|
|
|
group :test do
|
|
gem "test-unit", '~> 3.7'
|
|
gem "bigdecimal"
|
|
end
|
|
|
|
group :development do
|
|
gem "rake", "~> 13.3"
|
|
gem "rake-compiler", "~> 1.3"
|
|
gem "rake-compiler-dock", "~> 1.11"
|
|
end
|