iconv will be deprecated in the future... #626

PHironaka opened this Issue Aug 20, 2012 · 16 comments

6 participants


My _site folder isn't generating any of the files inside my root folder. Here's the message I received when trying to run Jekyll:

/Users/peterhironaka/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': iconv will be deprecated in the future, use String#encode instead.
Configuration from /Users/peterhironaka/Desktop/thecrabdribblr/_config.yml
Auto-regenerating enabled: /Users/peterhironaka/Desktop/thecrabdribblr -> ./_site
[2012-08-19 22:53:20] regeneration: 36 files changed
[2012-08-19 22:53:21] INFO  WEBrick 1.3.1
[2012-08-19 22:53:21] INFO  ruby 1.9.3 (2012-04-20) [x86_64-darwin10.8.0]
[2012-08-19 22:53:21] INFO  WEBrick::HTTPServer#start: pid=1527 port=4000
[2012-08-19 22:53:26] ERROR no access permission to `/'
practivate.adobe.com - - [19/Aug/2012:22:53:26 PDT] "GET / HTTP/1.1" 403 283
- -> /
[2012-08-19 22:53:27] ERROR `/favicon.ico' not found.
practivate.adobe.com - - [19/Aug/2012:22:53:27 PDT] "GET /favicon.ico HTTP/1.1" 404 281
- -> /favicon.ico

Do you think this is an issue with my _Config.yml file? Is there a program to check for errors?


I'm getting the same issue. There is the deprecated warning about iconv, and it says that files have been changed, but none are built into the _site directory.


I think everyone gets the iconv warning and it's not related with your problem. At least I get the warning and do not experience the other problem.


Turns out my issue was due to the fact I was using a newer version of Liquid with Jekyll which doesn't use the {% literal %} tag anymore (which I was using in some posts), but instead {% raw %}.

Github Pages uses Liquid 2.2.2 which supports the former. To fix, I just had to install that version instead of the latest.


I installed Liquid 2.2.2 hoping to solve the issue of files not being generated as well. It didn't work. I still get the iconv warning and Jekyll still isn't generating files. This is odd, because it happened out of nowhere, and I didn't install anything new recently.

@PHironaka Your specific issue is in regards to _site not having an index.html. How do I know? I just ran into this myself.


Did you remove the old version of liquid just to be safe? I had to do this because the more recent version was still being used in favour. Removing it, making it fallback to 2.2.2 resolved it all.


I cleaned out the old versions using gem clean, then reinstalled 2.2.2. Now I get this output when running jekyll.

∞ jekyll
/Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:60:in `require': cannot load such file -- liquid (LoadError)
from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:60:in `rescue in require'
from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:35:in `require'
from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-0.11.2/lib/jekyll.rb:25:in `<top (required)>'
from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-0.11.2/bin/jekyll:20:in `<top (required)>'
from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/bin/jekyll:23:in `load'
from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/bin/jekyll:23:in `<main>'

Again, I should mention that this just started out of nowhere. I haven't installed anything new for awhile.


Hm. Though running:

gem query -n liquid

results in:

*** LOCAL GEMS ***

liquid (2.4.1, 2.2.2)

My Liquid 2.2.2 gem is located at /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/liquid-2.2.2

I wonder if the 2.4.1 version is installed in the version of Ruby that ships with Mountain Lion.
There is nothing notable inside of /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems.

I uninstalled 2.4.1, from wherever it was, which went as followed:

∞ gem uninstall liquid -v 2.4.1

You have requested to uninstall the gem:
jekyll-0.11.2 depends on [liquid (~> 2.3)]
tilt-1.3.3 depends on [liquid (>= 0)]
If you remove this gems, one or more dependencies will not be met. 
Continue with Uninstall? [Yn]  y
Successfully uninstalled liquid-2.4.1
∞ gem query -n liquid          

*** LOCAL GEMS ***

liquid (2.2.2)

Running gem
∞ jekyll

/Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in to_specs': Could not find liquid (~> 2.3) amongst [actionmailer-3.2.8, actionpack-3.2.8, activemodel-3.2.8, activerecord-3.2.8, activeresource-3.2.8, activesupport-3.2.8, addressable-2.3.2, albino-1.3.3, arel-3.0.2, bigdecimal-1.1.0, builder-3.0.0, bundler-1.1.5, chunky_png-1.2.6, classifier-1.3.3, commonjs-0.2.6, compass-0.12.2, cucumber-1.2.1, diff-lcs-1.1.3, directory_watcher-1.4.1, erubis-2.7.0, excon-0.16.1, factory_girl-4.0.0, fast-stemmer-1.0.1, ffi-1.1.5, foreman-0.55.0, fssm-0.2.9, gherkin-2.11.2, guard-1.3.2, heroku-2.30.3, heroku-api-0.3.4, highline-1.6.14, hike-1.2.1, i18n-0.6.0, io-console-0.3, jekyll-0.11.2, journey-1.0.4, json-1.5.4, kramdown-0.13.7, launchy-2.1.2, less-2.2.1, liquid-2.2.2, listen-0.4.7, mail-2.4.4, maruku-0.6.0, mime-types-1.19, minitest-2.5.1, multi_json-1.3.6, netrc-0.7.7, pg-0.14.0, polyglot-0.3.3, posix-spawn-0.3.6, rack-1.4.1, rack-cache-1.2, rack-ssl-1.3.2, rack-test-0.6.1, rails-3.2.8, railties-3.2.8, rake-, rb-fchange-0.0.5, rb-fsevent-0.9.1, rb-inotify-0.8.8, rdiscount-1.6.8, rdoc-3.9.4, rest-client-1.6.7, rspec-2.11.0, rspec- core-2.11.1, rspec-expectations-2.11.2, rspec-mocks-2.11.2, rubygems-update-1.8.24, rubyzip-0.9.9, sass-3.2.1, shoulda-3.1.1, shoulda-context-1.0.0, shoulda-matchers-1.2.0, slim-1.2.2, sprockets-2.1.3, syntax-1.0.0, temple-0.4.0, thor-0.16.0, tilt-1.3.3, treetop-1.4.10, tzinfo-0.3.33, vimgolf-0.4.1] (Gem::LoadError)
from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:777:in
block in activate_dependencies'
from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:766:in each'
from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:766:in
from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:750:in activate'
from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems.rb:1232:in
from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/bin/jekyll:22:in `


No one has mentioned this dependency Jekyll 0.11.2 has on Liquid 2.3 yet, which is surprising. Seems like something that would have come up by now. Should I downgrade?


The 0.11.0 version requires only Liquid 1.9, so I installed it and ran

jekyll 0.11.0 /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-0.11.0

which resulted in the original error again.

/Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': iconv will be deprecated in the future, use String#encode instead.
Configuration from /Users/kevinsuttle/Github/kevinsuttle.github.com/_config.yml
Building site: /Users/kevinsuttle/Github/kevinsuttle.github.com -> /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-0.11.0
/Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-0.11.0/lib/jekyll/convertible.rb:29:in `read_yaml': invalid byte sequence in UTF-8 (ArgumentError)
    from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-0.11.0/lib/jekyll/layout.rb:31:in `initialize'
    from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-0.11.0/lib/jekyll/site.rb:113:in `new'
    from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-0.11.0/lib/jekyll/site.rb:113:in `block in read_layouts'
    from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-0.11.0/lib/jekyll/site.rb:111:in `each'
    from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-0.11.0/lib/jekyll/site.rb:111:in `read_layouts'
    from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-0.11.0/lib/jekyll/site.rb:97:in `read'
    from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-0.11.0/lib/jekyll/site.rb:38:in `process'
    from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-0.11.0/bin/jekyll:250:in `<top (required)>'
    from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/bin/jekyll:23:in `load'
    from /Users/kevinsuttle/.rbenv/versions/1.9.3-p194/bin/jekyll:23:in `<main>'



So it has to be something with my system. I have opened other clean Jekyll repos fresh, and tried to run the Jekyll commands, but get the same error. Could it be my Ruby install or RBenv?


Uninstalled RBenv and its copy of Ruby, installed RVM and its copy of Ruby, including the latest Jekyll and Liquid gems. All is well. Shutting up about this now.


Sorry for the radio silence on this issue. I figured out what the issue was for me. There was a syntax error within the post.html file.

Now fixed and Jekyll is up and running once again :)


Gah. Was running fine for awhile. Now back to this iconv issue again. Is it something in my dotfiles? https://github.com/kevinSuttle/dotfiles


I figured out my problem. I had an image in the layouts directory. Seriously. This is what caused it. This whole time it was an image. FFS.

@harry1989 harry1989 referenced this issue in pradeep1288/oldWebsite Sep 23, 2012

Adding some CSS transforms for the social icons #3

Jekyll member

@PHironaka since you're the original reporter of the bug and the issue is fixed, would you be so kind as to close this issue? Thanks!


@mattr- Yes sir my apologies on the delay.

@PHironaka PHironaka closed this Oct 15, 2012

Related issue confirmed here from an image. How do we make some debug messages to check for these silent fails haha. Was preventing _site generation. Fixed by removing folder with issues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment