Cannot push to heroku since latest Nokogiri gem update - ruby-on-rails

Everything seemed to be fine until Nokogiri gem update in Dec 27 2016, this is what it says in heroku logs and i can't seem to find out how to solve it. it works on development, it just doesn't push to heroku. Thank you in advance
enter code here.
-----> Ruby app detected
-----> Compiling Ruby/Rails
-----> Using Ruby version: ruby-2.0.0
###### WARNING:
Removing `Gemfile.lock` because it was generated on Windows.
Bundler will do a full resolve so native gems are handled properly.
This may result in unexpected gem versions being used in your app.
In rare occasions Bundler may not be able to resolve your dependencies at all.
https://devcenter.heroku.com/articles/bundler-windows-gemfile
-----> Installing dependencies using bundler 1.13.6
Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4
Fetching gem metadata from https://rubygems.org/..........
Fetching version metadata from https://rubygems.org/..
Fetching dependency metadata from https://rubygems.org/.
Resolving dependencies...
nokogiri-1.7.0 requires ruby version >= 2.1.0, which is incompatible with the
current version, ruby 2.0.0p648
Bundler Output: Fetching gem metadata from https://rubygems.org/..........
Fetching version metadata from https://rubygems.org/..
Fetching dependency metadata from https://rubygems.org/.
Resolving dependencies...
nokogiri-1.7.0 requires ruby version >= 2.1.0, which is incompatible with the
current version, ruby 2.0.0p648
!
! Failed to install gems via Bundler.
!
! Push rejected, failed to compile Ruby app.
! Push failed

You can update your gemfile to a version that is compatible:
for example:
gem 'nokogiri', '~> 1.5.9'

Related

Install local gems via bundle on heroku not working

I'm trying to install my app to heroku. But I'm having an issue with a gem. Its a private gem and we don't have a private gem server setup, so I've cloned the gem locally as a submodule inside the app.
When I push to heroku I get this error:
! Warning: Multiple default buildpacks reported the ability to handle this app. The first buildpack in the list below will be used.
Detected buildpacks: Ruby,Node.js
See https://devcenter.heroku.com/articles/buildpacks#buildpack-detect-order
-----> Ruby app detected
-----> Compiling Ruby/Rails
-----> Using Ruby version: ruby-2.5.1
-----> Installing dependencies using bundler 1.15.2
Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment
Warning: the running version of Bundler (1.15.2) is older than the version that created the lockfile (1.16.2). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.
You are trying to install in deployment mode after changing
your Gemfile. Run `bundle install` elsewhere and add the
updated Gemfile.lock to version control.
The gemspecs for path gems changed
Bundler Output: Warning: the running version of Bundler (1.15.2) is older than the version that created the lockfile (1.16.2). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.
You are trying to install in deployment mode after changing
your Gemfile. Run `bundle install` elsewhere and add the
updated Gemfile.lock to version control.
The gemspecs for path gems changed
!
! Failed to install gems via Bundler.
!
! Push rejected, failed to compile Ruby app.
! Push failed
When I removed the locally install gem it all worked fine.
So strong hunch is that bundler 1.15.2 handles local gems differently and it's causing a conflict.
In my Gemfile, not inside any group, I have gem 'portkey', path: './gems/portkey/'
At the top of my Gemfile.lock I have
PATH
remote: gems/portkey
specs:
portkey (0.1.10)
bitly
omniauth-google-oauth2 (~> 0.5.3)
rails (~> 5.2.1)
rebrandly
shortener (~> 0.8.0)
will_paginate
Heroku doesn't support bundler 1.16.2 yet afaik
I'm using rails 5/ruby-2.5 and I don't seem be able to downgrade bundler to 1.15.2 and generate an older version of the lockfile
I can't easily make this gem accessible any other way.
I'm stumped how I can make the install of this gem work, and suggestions would be greatly appreciated.
Had a similar issue, solved by upgrading to Bundler 2.0.1 (which is now supported by Heroku).
For 1.x version they still use 1.15.2 though.

Deploying rails app to heroku failure -> Bundle is locked to

I'm trying to deploy my rails app to heroku. I'm having an issue with a gem called feeSuggest (I created this myself). It's a simple gem, that takes in a number, and print out a statement based on that.
This is my build log
-----> Ruby app detected
-----> Compiling Ruby/Rails
-----> Using Ruby version: ruby-2.3.4
-----> Installing dependencies using bundler 1.15.2
Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment
The git source `git://github.com/activerecord-hackery/ransack.git` uses the `git` protocol, which transmits data without encryption. Disable this warning with `bundle config git.allow_insecure true`, or switch to the `https` protocol to keep your data secure.
Warning: the running version of Bundler (1.15.2) is older than the version that created the lockfile (1.16.1). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.
Fetching gem metadata from https://rubygems.org/..........
Fetching version metadata from https://rubygems.org/..
Fetching dependency metadata from https://rubygems.org/.
Your bundle is locked to feeSuggest (0.0.0), but that version could not be found
in any of the sources listed in your Gemfile. If you haven't changed sources,
that means the author of feeSuggest (0.0.0) has removed it. You'll need to
update your bundle to a different version of feeSuggest (0.0.0) that hasn't been
removed in order to install.
Bundler Output: The git source `git://github.com/activerecord-hackery/ransack.git` uses the `git` protocol, which transmits data without encryption. Disable this warning with `bundle config git.allow_insecure true`, or switch to the `https` protocol to keep your data secure.
Warning: the running version of Bundler (1.15.2) is older than the version that created the lockfile (1.16.1). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.
Fetching gem metadata from https://rubygems.org/..........
Fetching version metadata from https://rubygems.org/..
Fetching dependency metadata from https://rubygems.org/.
Your bundle is locked to feeSuggest (0.0.0), but that version could not be found
in any of the sources listed in your Gemfile. If you haven't changed sources,
that means the author of feeSuggest (0.0.0) has removed it. You'll need to
update your bundle to a different version of feeSuggest (0.0.0) that hasn't been
removed in order to install.
!
! Failed to install gems via Bundler.
!
! Push rejected, failed to compile Ruby app.
! Push failed

Freeze push heroku master

I'm trying to do a deploy on heroku and freezes on the last step,Fetching http://github.com/rails/prototype_legacy_helper.git
-----> Removing .DS_Store files
-----> Ruby app detected
-----> Compiling Ruby/Rails
-----> Using Ruby version: ruby-2.0.0
-----> Installing dependencies using 1.5.2
New app detected loading default bundler cache
Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment
Fetching gem metadata from https://rubygems.org/.......
Fetching additional metadata from https://rubygems.org/..
Fetching http://github.com/rails/prototype_legacy_helper.git
Install the gem as a plugin (only if Rails version less than 4.0):
$ rails plugin install git://github.com/rails/prototype_legacy_helper.git
prototype_legacy helper is no longer maintained.

Foundation 5 for Rails on Heroku Failing

I am building a new website on Rails and was able to successfully install the new Foundation 5 gem locally. When I pushed it to Heroku I have been getting the following message:
-----> Ruby app detected
-----> Compiling Ruby/Rails
-----> Using Ruby version: ruby-2.0.0
-----> Installing dependencies using Bundler version 1.3.2
New app detected loading default bundler cache
Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment
Fetching gem metadata from https://rubygems.org/.......
Fetching gem metadata from https://rubygems.org/..
Could not find foundation-rails-5.0.0 in any of the sources
Bundler Output: Fetching gem metadata from https://rubygems.org/.......
Fetching gem metadata from https://rubygems.org/..
Could not find foundation-rails-5.0.0 in any of the sources
!
! Failed to install gems via Bundler.
!
! Push rejected, failed to compile Ruby app
Any ideas where I should go from here? Is there something I need to do on my end or is this on Heroku's end?
The first few versions of the gem were yanked.
Make sure your Gemfile points to a version 5.0.1.0 or greater.
I've had the same issue, and it's also been noted on Foundation's forum. The foundation-rails gem is pretty new (I just now updated to 5.0.2) and it still tanks. Probably just a matter of time until Heroku/Zurb work out the kinks.

I can't push my Rails project to heroku, can't find bootstrap-sass

When I try to push my project to Heroku I get this error:
-----> Deleting 3 files matching .slugignore patterns.
-----> Ruby/Rails app detected
-----> Using Ruby version: ruby-1.9.3
-----> Installing dependencies using Bundler version 1.3.2
Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment
Fetching gem metadata from https://rubygems.org/.......
Fetching gem metadata from https://rubygems.org/..
Could not find bootstrap-sass-2.3.1.1 in any of the sources
!
! Failed to install gems via Bundler.
!
! Heroku push rejected, failed to compile Ruby/rails app
To git#heroku.com:kerbal-space-station.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git#heroku.com:kerbal-space-station.git'
However my Gemfile certainly does have that and bundle install locally works fine.
bootstrap-sass 2.3.1.1 was yanked: https://rubygems.org/gems/bootstrap-sass/versions
You should run:
bundle update bootstrap-sass
then commit the new Gemfile.lock and push to heroku
The last version of bootstrap-sass is 2.3.1.0, you're looking for 2.3.1.1 and it doesn't exists.
Check your gemfile and add:
gem 'bootstrap-sass', '2.3.1.0'
you don't need to put version number you can only put
gem 'bootstrap-sass'
then do
bundle update

Resources