BT

InfoQ Homepage News GitHub Pages Moves to Jekyll 3.0 to Improve Performance

GitHub Pages Moves to Jekyll 3.0 to Improve Performance

Bookmarks

According to GitHub, Jekyll 3.0 will make GitHub Pages faster and easier to use, though the switch will not be painless for all existing sites due to some features being removed in the process.

Besides lots of performance improvements, Jekyll 3.0 adoption will also bring a couple of new features to GitHub Pages, such as:

  • incremental regeneration of pages through the (still experimental) --incremental switch, which promises to make builds even faster.
  • liquid profiler, enabled through a --profile switch to the build or serve commands. This will analyze a site’s build time and show where improvements are desirable.

Other changes that GitHub is enforcing to Pages will, though, shrink the options available to developers. First and foremost, GitHub Pages will exclusively support kramdown, Jekyll’s default engine, starting May 1st, 2016. This means that alternative engines, such as Rdiscount and RedCarpet will not be supported anymore. According to GitHub, Pages will provide the features of the two deprecated engine, so to make the transition painless. Yet, developers on Reddit complained that kramdown does not support all the features available from the other engines. In the process, alternative markup language Textile will also become unsupported from May 1st.

As a workaround to that, a few developers suggested on Reddit to generate locally the web site and then push it to GitHub by using a command like git subtree push --prefix build_folder origin gh-pages. An useful hint at this regard, is using two branches, one to host all sources, and another, master, for the rendered web site.

Another potentially breaking change concerns Pages syntax highlighter. Indeed, the only option available with the new GitHub Pages is Ruby-based Rouge, which rules out Python-based Pygments and other highlighter such as highlight.js.

Finally, Jekyll 3.0 does no support relative permalinks anymore, thus requiring that all paths be relative to the site’s root directory.

Rate this Article

Adoption
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT

Is your profile up-to-date? Please take a moment to review and update.

Note: If updating/changing your email, a validation request will be sent

Company name:
Company role:
Company size:
Country/Zone:
State/Province/Region:
You will be sent an email to validate the new email address. This pop-up will close itself in a few moments.