Jake Wengroff Jake Wengroff - 4 months ago 13
Ruby Question

Jekyll 'include' configuration option must now be specified as an array

I have been using Jekyll and a Jekyll theme for my blog hosted on GitHub Pages. I haven't blogged in a few months, and today, before pushing to GitHub, I ran

jekyll serve
and received multiple errors, including:

Deprecation: The 'include' configuration option must now be specified as an array, but you specified a string. For now, we've treated the string you provided as a list of comma-separated values.


I also received another error:

Error: could not read file /Users/JakeWengroff/blog/pages/_posts/2016-07-28-blog-title.md: (<unknown>): mapping values are not allowed in this context at line 5 column 71


And when viewing my blog with
localhost:4000
, the newest post does not appear but all past posts do.

Despite these errors, I pushed the new post to GitHub, visited my blog's URL, and the same situation occurred: my most recent post does not appear, although all previous posts do.

I do know that Jekyll recently upgraded to v.3.2.0, though after reviewing the documentation, I could not seem to find any changes that address my error today. I also checked the Jekyll troubleshooting pages and again, I could not find anything that would address this issue.

The upgrading from Jekyll 2 to 3 page suggested adding
future: true
to the
_config.yml
page. I did that, and still, nothing.

Any help would be greatly appreciated. Thank you!

Answer

For your first error:

In your config file, change

include:      _portfolio

to:

include:
  - _portfolio

And for your second error, change this line, from:

summary:    Data scientists do not usually create their own algorithms: what a relief.

to:

summary:    "Data scientists do not usually create their own algorithms: what a relief."

Note that I just put the line in quotes because you've got a colon in the value, which Jekyll uses to differentiate between keys and values in front matter.