-
Notifications
You must be signed in to change notification settings - Fork 200
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bundler 2.3.23 on Debian Bullseye isn't installing the native platform gem #357
Comments
Thanks for reporting this! I'll take a look later today. Out of curiosity: is there a reason you're not using the precompiled native version? |
No - actually, I would prefer the precompiled version. :-) I was doing only a |
This is the PR with the change: braingourmets/crud#425 You can run |
Thanks for your patience. I poked around a bit and here's what I found. The vanilla "ruby" platform gem versions v1.5.3 and v1.5.2 behave identically when the target system does not have the So there was no change introduced that I can see that would be causing this problem. However, the thing we should look into is: why is this system not using the precompiled native version for What is the output of |
This is the output of
Bundler Build Metadata
Bundler settings
GemfileGemfile# frozen_string_literal: true
source 'https://rubygems.org'
# Rails
gem 'rails', '6.1.7'
# The original asset pipeline for Rails [https://github.com/rails/sprockets-rails]
gem 'sprockets-rails'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use Puma as the app server
gem 'puma'
# Use Haml for HTML templates (http://haml.info)
gem 'haml'
gem 'haml-rails'
# Use SCSS for stylesheets
gem 'cssbundling-rails'
gem 'jsbundling-rails'
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
gem 'turbolinks', '~> 5'
# Reduces boot times through caching; required in config/boot.rb
gem 'bootsnap', require: false
# Temporarily needed for some other gem.
gem 'net-smtp'
group :development do
# Provide better error pages
gem 'better_errors'
gem 'binding_of_caller'
gem 'listen'
gem 'rack-mini-profiler'
end
group :test do
# Style checkers
gem 'haml_lint', require: false
gem 'psych'
gem 'rails_best_practices', require: false
gem 'reek', require: false
gem 'rubocop', require: false
gem 'rubocop-performance', require: false
gem 'rubocop-rails', require: false
gem 'rubocop-rake', require: false
# Security checker
gem 'bundler-audit', require: false
end Gemfile.lock
|
I've just tested some things. It turned out it's not the 1.5.2-to-1.5.3 switch that has caused the problem, but the update from Bundler 2.3.22 to 2.3.23. |
(I have no idea whether this is a bug in the sqlite gem or in Bundler.) |
OK, this sounds like it might be a bundler behavior change ... but regardless, let's get you unblocked. Solution 1: use precompiled native gems I imagine your
and commit the updated Gemfile.lock to source code control. If you have macs as development machines you may need to repeat this for The resulting Gemfile.lock will have a Explicitly adding those platforms will ensure that you get the precompiled native gems and avoid the pkg-config problem. Solution 2: install pkg-config The other option is to just make sure your container has the debian
Let me know if either of these suggestions doesn't work? |
We've now worked around this by downgrading Bundler (which allowed us to install/update sqlite again). How can I help to get this solved for the future (on the sqlite or bundler side)? |
There isn't a problem with the sqlite3 gem. You need There may be a problem with bundler, but it's more likely that it is also functioning as designed and you need to evolve your Gemfile.lock in response to the changes introduced since Bundler 2.2.x in order to properly use native platform gems. I've instructed you how to do that above. |
I'm not at all denying that something went wrong here ... I'm just not sure there is anything that needs to be fixed upstream in this gem or in Bundler. I'm sorry for the difficulties! |
Switching from version 1.5.2 to 1.5.3, installing this gem via
bundle install
on our local Docker-based x86_64 dev environment fails:Possibly this gem needs to add
pkg-config
as a dependency.The text was updated successfully, but these errors were encountered: