Skip to content
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

[Bug]: permalink_ext': undefined method end_with?' for {}:Hash #9558

Open
marek22k opened this issue Feb 28, 2024 · 0 comments
Open

[Bug]: permalink_ext': undefined method end_with?' for {}:Hash #9558

marek22k opened this issue Feb 28, 2024 · 0 comments

Comments

@marek22k
Copy link

marek22k commented Feb 28, 2024

Operating System

Arch Linux

Ruby Version

ruby 3.2.2 (2023-03-30 revision e51014f9c0) [x86_64-linux]

Jekyll Version

jekyll 4.3.3

Expected Behavior

Builds the website

Current Behavior

Does not build the website

Relevant log output

$ jekyll build --trace
Configuration file: /home/marek/git/dn42-wiki/_config.yml
            Source: /home/marek/git/dn42-wiki
       Destination: /home/marek/git/dn42-wiki/_site
 Incremental build: disabled. Enable with --incremental
      Generating... 
/home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/renderer.rb:239:in `permalink_ext': undefined method `end_with?' for {}:Hash (NoMethodError)

      if document_permalink && !document_permalink.end_with?("/")
                                                  ^^^^^^^^^^
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/renderer.rb:46:in `output_ext'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/convertible.rb:89:in `output_ext'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/page.rb:170:in `html?'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/page.rb:80:in `template'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/page.rb:94:in `url'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-sitemap-1.4.0/lib/jekyll/jekyll-sitemap.rb:65:in `block in file_exists?'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-sitemap-1.4.0/lib/jekyll/jekyll-sitemap.rb:65:in `any?'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-sitemap-1.4.0/lib/jekyll/jekyll-sitemap.rb:65:in `file_exists?'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-sitemap-1.4.0/lib/jekyll/jekyll-sitemap.rb:13:in `generate'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/site.rb:193:in `block in generate'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/site.rb:191:in `each'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/site.rb:191:in `generate'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/site.rb:79:in `process'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/command.rb:28:in `process_site'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/commands/build.rb:65:in `build'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/commands/build.rb:36:in `process'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/command.rb:91:in `block in process_with_graceful_fail'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/command.rb:91:in `each'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/command.rb:91:in `process_with_graceful_fail'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/lib/jekyll/commands/build.rb:18:in `block (2 levels) in init_with_program'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `block in execute'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `each'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `execute'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/mercenary-0.4.0/lib/mercenary/program.rb:44:in `go'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/mercenary-0.4.0/lib/mercenary.rb:21:in `program'
	from /home/marek/.rvm/gems/ruby-3.2.2/gems/jekyll-4.3.3/exe/jekyll:15:in `<top (required)>'
	from /home/marek/.rvm/gems/ruby-3.2.2/bin/jekyll:25:in `load'
	from /home/marek/.rvm/gems/ruby-3.2.2/bin/jekyll:25:in `<main>'
	from /home/marek/.rvm/gems/ruby-3.2.2/bin/ruby_executable_hooks:22:in `eval'
	from /home/marek/.rvm/gems/ruby-3.2.2/bin/ruby_executable_hooks:22:in `<main>'

Code Sample

_config.yml:

plugins:
  - jekyll-optional-front-matter
  - jekyll-titles-from-headings
  - jekyll-sitemap

defaults:
  -
    scope:
      path: ""
    values:
      layout: "page"
      permalink: {{ "/:path/:name" }}

title: dn42 wiki

keywords: dn42,wiki,routing,bgp

lang: "en"

Problem

Hello,

I have a number of Markdown files and have given them all a title using jekyll-titles-from-headings and jekyll-optional-front-matter. These Markdown files are in the wiki/ directory. With permalink: "/:path/:name" will now create a URL like website/wiki/page. However, I do not want to have wiki in the URL. So I have something like permalink: {{ "/:path/:name" | replace: "wiki/", "" }} but got this error.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant