jekyll-postfiles icon indicating copy to clipboard operation
jekyll-postfiles copied to clipboard

generating failed with a lowercased pdf extension (.pdf)

Open phoenixwu opened this issue 5 years ago • 3 comments

cannot work with a lowercased extension pdf file(.pdf), such as: _posts/2019-06-02-ttt2/xxx.pdf Jekyll Feed: Generating feed for posts Liquid Exception: undefined method to_liquid' for #<Pathname:xxx.pdf> in sitemap.xml Error: undefined method to_liquid' for #Pathname:xxx.pdf Error: Run jekyll build --trace for more information.

but it works fine if I changed the extension into uppercase PDF(.PDF):

 Regenerating: 1 file(s) changed at 2019-06-10 15:41:30
                _posts/2019-06-02-ttt2/xxx.PDF
   Jekyll Feed: Generating feed for posts
                ...done in 4.171719 seconds.

phoenixwu avatar Jun 10 '19 07:06 phoenixwu

Today I found some .doc files have the same issue, I must uppercase the extension to .DOC to make jekyll-postfiles to recognize it. Some .doc files works fine but some can't. I think maybe it's because of the filename pattern, Chinese characters or something?

In order to keep things going, I just try to disable the gem 'jekyll-sitemap' in Gemfile, and this weird issue is gone! 😕 I think this is not the root cause, but since I'm using jekyll in my local LAN only, so I don't really need the sitemap.xml in my case.

phoenixwu avatar Jun 13 '19 15:06 phoenixwu

I just tried it and I can include pdf files fine. I've also got jekyll-sitemap so if that is the issue, then it's not uniquely for lowecase file extensions. Can you try running and posting with --trace and posting the exception stack?

mohkale avatar Jan 03 '20 16:01 mohkale

Been a while, but I also encounter this problem (and same 'patch' of using uppercase for the extension resolves it). I ran the build with --trace and got:

meganmakela@Megans-MacBook-Pro meganmakela.github.io % bundle exec jekyll build --trace Configuration file: /Users/meganmakela/Documents/Projects/meganmakela.github.io/_config.yml Source: /Users/meganmakela/Documents/Projects/meganmakela.github.io Destination: /Users/meganmakela/Documents/Projects/meganmakela.github.io/_site Incremental build: disabled. Enable with --incremental Generating... Jekyll Feed: Generating feed for posts Liquid Exception: undefined method to_liquid' for #<Pathname:2019_SVT.pdf> in sitemap.xml bundler: failed to load command: jekyll (/usr/local/lib/ruby/gems/3.0.0/bin/jekyll) /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/variable_lookup.rb:49:in block in evaluate': undefined method to_liquid' for #<Pathname:2019_SVT.pdf> (NoMethodError) from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/variable_lookup.rb:38:in each_index' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/variable_lookup.rb:38:in evaluate' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/context.rb:159:in evaluate' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/condition.rb:116:in interpret_condition' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/condition.rb:47:in block in evaluate' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/condition.rb:46:in loop' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/condition.rb:46:in evaluate' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/filters.rb:220:in block (2 levels) in where_exp' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/filters.rb:218:in select' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/filters.rb:218:in block in where_exp' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/context.rb:123:in stack' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/filters.rb:217:in where_exp' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/strainer.rb:56:in invoke' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/context.rb:86:in invoke' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/variable.rb:84:in block in render' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/variable.rb:82:in each' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/variable.rb:82:in inject' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/variable.rb:82:in render' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/tags/assign.rb:26:in render' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/block_body.rb:103:in render_node_to_output' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/block_body.rb:91:in render' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/template.rb:208:in block in render' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/template.rb:242:in with_profiling' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/template.rb:207:in render' from /Users/meganmakela/.gem/ruby/3.0.0/gems/liquid-4.0.3/lib/liquid/template.rb:220:in render!' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/liquid_renderer/file.rb:39:in block (3 levels) in render!' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/liquid_renderer/file.rb:59:in measure_counts' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/liquid_renderer/file.rb:38:in block (2 levels) in render!' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/liquid_renderer/file.rb:63:in measure_bytes' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/liquid_renderer/file.rb:37:in block in render!' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/liquid_renderer/file.rb:70:in measure_time' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/liquid_renderer/file.rb:36:in render!' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/renderer.rb:127:in render_liquid' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/renderer.rb:80:in render_document' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/renderer.rb:63:in run' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/site.rb:532:in render_regenerated' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/site.rb:524:in block in render_pages' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/site.rb:523:in each' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/site.rb:523:in render_pages' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/site.rb:208:in render' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/site.rb:80:in process' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/command.rb:28:in process_site' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/commands/build.rb:65:in build' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/commands/build.rb:36:in process' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/command.rb:91:in block in process_with_graceful_fail' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/command.rb:91:in each' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/command.rb:91:in process_with_graceful_fail' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/lib/jekyll/commands/build.rb:18:in block (2 levels) in init_with_program' from /Users/meganmakela/.gem/ruby/3.0.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in block in execute' from /Users/meganmakela/.gem/ruby/3.0.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in each' from /Users/meganmakela/.gem/ruby/3.0.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in execute' from /Users/meganmakela/.gem/ruby/3.0.0/gems/mercenary-0.4.0/lib/mercenary/program.rb:44:in go' from /Users/meganmakela/.gem/ruby/3.0.0/gems/mercenary-0.4.0/lib/mercenary.rb:21:in program' from /usr/local/lib/ruby/gems/3.0.0/gems/jekyll-4.1.1/exe/jekyll:15:in <top (required)>' from /usr/local/lib/ruby/gems/3.0.0/bin/jekyll:23:in load' from /usr/local/lib/ruby/gems/3.0.0/bin/jekyll:23:in <top (required)>' from /Users/meganmakela/.gem/ruby/3.0.0/gems/bundler-2.2.6/lib/bundler/cli/exec.rb:63:in load' from /Users/meganmakela/.gem/ruby/3.0.0/gems/bundler-2.2.6/lib/bundler/cli/exec.rb:63:in kernel_load' from /Users/meganmakela/.gem/ruby/3.0.0/gems/bundler-2.2.6/lib/bundler/cli/exec.rb:28:in run' from /Users/meganmakela/.gem/ruby/3.0.0/gems/bundler-2.2.6/lib/bundler/cli.rb:494:in exec' from /Users/meganmakela/.gem/ruby/3.0.0/gems/bundler-2.2.6/lib/bundler/vendor/thor/lib/thor/command.rb:27:in run' from /Users/meganmakela/.gem/ruby/3.0.0/gems/bundler-2.2.6/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in invoke_command' from /Users/meganmakela/.gem/ruby/3.0.0/gems/bundler-2.2.6/lib/bundler/vendor/thor/lib/thor.rb:392:in dispatch' from /Users/meganmakela/.gem/ruby/3.0.0/gems/bundler-2.2.6/lib/bundler/cli.rb:30:in dispatch' from /Users/meganmakela/.gem/ruby/3.0.0/gems/bundler-2.2.6/lib/bundler/vendor/thor/lib/thor/base.rb:485:in start' from /Users/meganmakela/.gem/ruby/3.0.0/gems/bundler-2.2.6/lib/bundler/cli.rb:24:in start' from /Users/meganmakela/.gem/ruby/3.0.0/gems/bundler-2.2.6/exe/bundle:49:in block in <top (required)>' from /Users/meganmakela/.gem/ruby/3.0.0/gems/bundler-2.2.6/lib/bundler/friendly_errors.rb:130:in with_friendly_errors' from /Users/meganmakela/.gem/ruby/3.0.0/gems/bundler-2.2.6/exe/bundle:37:in <top (required)>' from /Users/meganmakela/.gem/ruby/3.0.0/bin/bundle:23:in load' from /Users/meganmakela/.gem/ruby/3.0.0/bin/bundle:23:in

' meganmakela@Megans-MacBook-Pro meganmakela.github.io %

meganmakela avatar Feb 21 '21 19:02 meganmakela