Search code examples
rubyrubygemsjekyll

The 'gems' configuration option has been renamed to 'plugins'.?


When I use the latest jekyll and start its server, a certain warning below shows up:

$ jekyll serve Configuration file: /Users/ishida/git/gipcompany.github.io/_config.yml Deprecation: The 'gems' configuration option has been renamed to 'plugins'. Please update your config file accordingly.

I guess the following gems should be replaced with plugins, and then the warning won't show up, but I couldn't find any official documentation. Is my guess correct?

$ cat _config.yml
(omit)
gems:
  - jekyll-feed

Solution

  • Your guess is correct, gems key is now plugins.

    In jekyll/lib/jekyll/configuration.rb you can find:

    def backwards_compatibilize
       ...
       renamed_key "gems", "plugins", config
    

    It is part of this Pull Request: plugins config key as replacement for gems (#5130)

    And it was the result of this issue:

    What do you think about renaming the gems config directive to plugins, with full backwards compatibility?

    The idea being, if you're not from the Ruby world, "gems" isn't a very intuitive term (even though that's what they are). Further, users shouldn't have to care about (or see) the behind-the-scenes plumbing, in terms of how things are distributed.

    Instead, let's call the key "plugins", a term which has a broader understanding outside the Ruby ecosystem, and one that should be familiar to any user coming from a more traditional CMS like WordPress or Drupal.

    In terms of practicality, it'd just be a matter of combining the gems and plugins arrays, if they exist when we load the config, and updating the docs in the next minor release.