micro-os-plus / web-jekyll

The complete Jekyll source for the µOS++ IIIe web site
http://micro-os-plus.github.io
2 stars 7 forks source link

Problems with new version from kramdown (1.12.0 (was 1.11.1)) #11

Closed carlosdelfino closed 8 years ago

carlosdelfino commented 8 years ago

Error:

consu_000@SocialSLA ~/Documents/GitHub/micro-os-plus.github.io-source-test $ bundler exec ~/.gem/ruby/gems/jekyll-3.1.6/bin/jekyll serve --watch --incremental --port 4001 Configuration file: /cygdrive/c/Users/consu_000/Documents/GitHub/micro-os-plus.github.io-source-test/_config.yml Source: /cygdrive/c/Users/consu_000/Documents/GitHub/micro-os-plus.github.io-source-test Destination: _site Incremental build: enabled Generating... Deprecation: posts.each should be changed to posts.docs.each. Called by /home/consu_000/.gem/ruby/gems/jekyll-last-modified-at-0.3.4/lib/jekyll-last-modified-at/generator.rb:7:in `block in generate'. Liquid Exception: no implicit conversion of nil into String in _layouts/post.html jekyll 3.1.6 | Error: no implicit conversion of nil into String

System type & version

consu_000@SocialSLA ~ $ ruby -v ruby 2.2.5p319 (2016-04-26 revision 54774) [x86_64-cygwin]

consu_000@SocialSLA ~ $ bundle -v Bundler version 1.12.5

consu_000@SocialSLA ~ $ bundler exec ~/.gem/ruby/gems/jekyll-3.1.6/bin/jekyll -v jekyll 3.1.6

consu_000@SocialSLA ~/Documents/GitHub/micro-os-plus.github.io-source-test $ bundle update Fetching gem metadata from https://rubygems.org/ Fetching version metadata from https://rubygems.org/ Fetching dependency metadata from https://rubygems.org/ Resolving dependencies..... Using i18n 0.7.0 Using json 1.8.3 Using minitest 5.9.0 Using thread_safe 0.3.5 Using addressable 2.4.0 Using colorator 1.1.0 Using ffi 1.9.14 Using forwardable-extended 2.6.0 Using gemoji 2.1.0 Using mini_portile2 2.1.0 Using pkg-config 1.1.7 Using sass 3.4.22 Using rb-fsevent 0.9.7 Installing kramdown 1.12.0 (was 1.11.1) Using liquid 3.0.6 Using mercenary 0.3.6 Using rouge 1.11.1 Using safe_yaml 1.0.4 Using jekyll-paginate 1.1.0 Using bundler 1.12.5 Using tzinfo 1.2.2 Using jekyll-sitemap 0.11.0 Using rb-inotify 0.9.7 Using pathutil 0.14.0 Using nokogiri 1.6.8 Using jekyll-sass-converter 1.4.0 Using activesupport 4.2.7.1 Using listen 3.0.8 Using html-pipeline 2.4.2 Using jekyll-watch 1.5.0 Using jekyll 3.2.1 Using jekyll-last-modified-at 0.3.4 Using jekyll-mentions 1.1.3 Using jekyll-redirect-from 0.11.0 Using jemoji 0.7.0 Bundle updated!

ilg-ul commented 8 years ago

as far as I understand ruby, the problem seems to be in jekyll-last-modified-at. there is an issue registered for this, but the author seems unresponsive (https://github.com/gjtorikian/jekyll-last-modified-at/issues/41).

as someone suggested, since it is only an warning, it can be ignored for the moment.

carlosdelfino commented 8 years ago

I tried to return to the previous version of Kramdown, parameterizing the Gemfile file to use version 1.11.1 and the error continues.

I do not understand what is happening.

Anyway the error is not in the jekyll-last-modified-at, but at Liquid are two distinct messages, the first ever received. The new that came up was this:

Liquid Exception: no implicit conversion of nil into String in _layouts/post.html jekyll 3.1.6 | Error: no implicit conversion of nil into String

please if you do not get errors, please lock in the versions that you are using, parameterizing the Gemfile, so I replicate the environment here through the 'bundler'

ilg-ul commented 8 years ago

here is how my build looks like:

Last login: Sat Jul 30 23:59:22 on ttys002
ilg-mbp:~ ilg$ /Users/ilg/My\ Files/MacBookPro\ Projects/uOS/micro-os-plus.github.io-source.git/jekyll-build.command ; exit;
Configuration file: /Users/ilg/My Files/MacBookPro Projects/uOS/micro-os-plus.github.io-source.git/_config.yml
            Source: /Users/ilg/My Files/MacBookPro Projects/uOS/micro-os-plus.github.io-source.git
       Destination: ../micro-os-plus.github.io.git
 Incremental build: disabled. Enable with --incremental
      Generating... 
       Deprecation: posts.each should be changed toposts.docs.each.
                    Called by /opt/homebrew-jekyll3/lib/ruby/gems/2.3.0/gems/jekyll-last-modified-at-0.3.4/lib/jekyll-last-modified-at/generator.rb:7:in `block in generate'.
                    done in 48.193 seconds.
 Auto-regeneration: disabled. Use --watch to enable.

Gemfile.lock is up to date.

carlosdelfino commented 8 years ago

I lock the Jekyll Version and Kramdown, and nothing.

My environment files and result from command:

https://gist.github.com/carlosdelfino/a3d7a08b26b9ce8a0e59e91e77b15622

ilg-ul commented 8 years ago

if I got it right, the point of adding the Gemfile and Gemfile.lock was to easily replicate a configuration.

why don't you use that configuration?

carlosdelfino commented 8 years ago

I will update my Gemfile to reflect the Gemfile.lock that committed in its repository. but I think it is best to also tie the Gemfile so that when you run the update Bundler have the same environment.

As stacktrace the problem is in the plugin "tocGenerator".

ilg-ul commented 8 years ago

tocGenerator

this plug-in is in the project. it was updated to accommodate translated TOC header.

it might be possible that you still have a difference in your branch. I suggest you update to the latest master and try again.

carlosdelfino commented 8 years ago

I lock the versions and update the gist to you see how are my enviroment: https://gist.github.com/carlosdelfino/a3d7a08b26b9ce8a0e59e91e77b15622

About the branch I update today: https://github.com/micro-os-plus/micro-os-plus.github.io-source/network

and nothing.

ilg-ul commented 8 years ago

no idea.

clone the repo to a separate folder, run bundle update and try again. be sure you do not change anything.

carlosdelfino commented 8 years ago

you use utf-8 or ansi-1252?

I make new clone and get this messages now:

  Liquid Exception: incompatible character encodings: UTF-8 and Windows-1252 in /_layouts/old-wiki-page.html
bundler: failed to load command: /home/consu_000/.gem/ruby/gems/jekyll-3.2.1/exe/jekyll (/home/consu_000/.gem/ruby/gems/jekyll-3.2.1/exe/jekyll)
Encoding::CompatibilityError: incompatible character encodings: UTF-8 and Windows-1252
ilg-ul commented 8 years ago

I'm macOS only, it should be utf-8.

carlosdelfino commented 8 years ago

kkkk ????

carlosdelfino commented 8 years ago

jekyll and your secrets :D

ilg-ul commented 8 years ago

it might be jekyll, it might be my code, but it might also be a windows related problem.

carlosdelfino commented 8 years ago

it is quite possible that might be a problem on versions for Windows.

I'll see what I can do here.

I will run a tool to ensure that the files are all as UTF-8 and Unix format. (Linefeed only) And the problem continue.

I will try on Mac, now.

ilg-ul commented 8 years ago

https://jekyllrb.com/docs/windows/#encoding

carlosdelfino commented 8 years ago

I changed the code page in several ways, but the problem is in file name. I tried to use this programs:

rm -rf _site
convmv -r -f windows-1252 -t UTF-8 . 
find . -name "*.md" --exec recode CP1252...UTF-8 {} \;
find . -name "*.html" --exec recode CP1252...UTF-8 {} \;

But it did not work exactly with the files listed below:

./MIGRATE-µOS-wikis.md
./pages/micro-os-plus/i/The_µOS++_(micro_os_plus_plus).md
./pages/micro-os-plus/i/The_µOS++_SE.md
./pages/micro-os-plus/ii/The_µOS++_IIIe_Wiki.md
./pages/micro-os-plus/ii/The_µOS++_Second_Edition_Wiki.md
./pages/micro-os-plus/ii/The_µOS++_SE_Wiki.md

I change this file manually, This files use a special character "µ", I think not is good for windows file name, I change it for "u" and jekyll work fine.

Please see the commit: 9122155805ef10bd2d6bcedb2cd26d67ebd1bc8d

I never had this problem between Mac and Windows, thought to be only the file names, but commit you can see that there is a problem with some characters used.

carlosdelfino commented 8 years ago

this work, but not a good choice is trash from I try change code page: c13f42555536d7f3a3b23b4306a66d326ec2d2f1