Update product and feature template for Jekyll 3.3

Key change is using the new `absolute_url` and `relative_url` filters

http://jekyllrb.com/news/2016/10/06/jekyll-3-3-is-here/
https://github.com/blog/2277-what-s-new-in-github-pages-with-jekyll-3-3
main
Joel Marcey 8 years ago
parent 24bceb0963
commit 2bcaf8246b
  1. 2
      docs/CONTRIBUTING.md
  2. 3
      docs/Gemfile
  3. 61
      docs/Gemfile.lock
  4. 14
      docs/README.md
  5. 24
      docs/_config.yml
  6. 5
      docs/_config_local_dev.yml
  7. 8
      docs/_includes/blog_pagination.html
  8. 4
      docs/_includes/doc.html
  9. 14
      docs/_includes/head.html
  10. 2
      docs/_includes/header.html
  11. 2
      docs/_includes/home_header.html
  12. 4
      docs/_includes/nav.html
  13. 4
      docs/_includes/plugins/post_social_plugins.html
  14. 4
      docs/_includes/post.html
  15. 2
      docs/blog/all.html
  16. 20
      docs/css/main.scss
  17. 8
      docs/feed.xml

@ -7,7 +7,7 @@ You should only have to do these one time.
- Rename this file to `CONTRIBUTING.md`.
- Rename `EXAMPLE-README-FOR-RUNNING-DOCS.md` to `README.md` (replacing the existing `README.md` that came with the template).
- Rename `EXAMPLE-LICENSE` to `LICENSE`.
- Checkout the [template information](./TEMPLATE-INFORMATION.md).
- Review the [template information](./TEMPLATE-INFORMATION.md).
- Review `./_config.yml`.
- Make sure you update `title`, `description`, `tagline` and `gacode` (Google Analytics) in `./_config.yml`.

@ -1,3 +1,2 @@
source 'https://rubygems.org'
gem 'github-pages', group: :jekyll_plugins
gem 'jekyll-redirect-from'
gem 'github-pages', '~> 104'

@ -13,7 +13,7 @@ GEM
execjs
coffee-script-source (1.10.0)
colorator (1.1.0)
ethon (0.9.0)
ethon (0.9.1)
ffi (>= 1.3.0)
execjs (2.7.0)
faraday (0.9.2)
@ -21,26 +21,28 @@ GEM
ffi (1.9.14)
forwardable-extended (2.6.0)
gemoji (2.1.0)
github-pages (94)
github-pages (104)
activesupport (= 4.2.7)
github-pages-health-check (= 1.2.0)
jekyll (= 3.2.1)
jekyll (= 3.3.0)
jekyll-avatar (= 0.4.2)
jekyll-coffeescript (= 1.0.1)
jekyll-feed (= 0.5.1)
jekyll-feed (= 0.8.0)
jekyll-gist (= 1.4.0)
jekyll-github-metadata (= 2.0.2)
jekyll-github-metadata (= 2.2.0)
jekyll-mentions (= 1.2.0)
jekyll-paginate (= 1.1.0)
jekyll-redirect-from (= 0.11.0)
jekyll-sass-converter (= 1.3.0)
jekyll-seo-tag (= 2.0.0)
jekyll-sitemap (= 0.10.0)
jekyll-seo-tag (= 2.1.0)
jekyll-sitemap (= 0.12.0)
jekyll-swiss (= 0.4.0)
jemoji (= 0.7.0)
kramdown (= 1.11.1)
liquid (= 3.0.6)
listen (= 3.0.6)
mercenary (~> 0.3)
minima (= 1.0.1)
minima (= 2.0.0)
rouge (= 1.11.1)
terminal-table (~> 1.4)
github-pages-health-check (1.2.0)
@ -53,7 +55,8 @@ GEM
activesupport (>= 2)
nokogiri (>= 1.4)
i18n (0.7.0)
jekyll (3.2.1)
jekyll (3.3.0)
addressable (~> 2.4)
colorator (~> 1.0)
jekyll-sass-converter (~> 1.0)
jekyll-watch (~> 1.1)
@ -63,14 +66,17 @@ GEM
pathutil (~> 0.9)
rouge (~> 1.7)
safe_yaml (~> 1.0)
jekyll-avatar (0.4.2)
jekyll (~> 3.0)
jekyll-coffeescript (1.0.1)
coffee-script (~> 2.2)
jekyll-feed (0.5.1)
jekyll-feed (0.8.0)
jekyll (~> 3.3)
jekyll-gist (1.4.0)
octokit (~> 4.2)
jekyll-github-metadata (2.0.2)
jekyll-github-metadata (2.2.0)
jekyll (~> 3.1)
octokit (~> 4.0)
octokit (~> 4.0, != 4.4.0)
jekyll-mentions (1.2.0)
activesupport (~> 4.0)
html-pipeline (~> 2.3)
@ -80,9 +86,11 @@ GEM
jekyll (>= 2.0)
jekyll-sass-converter (1.3.0)
sass (~> 3.2)
jekyll-seo-tag (2.0.0)
jekyll (~> 3.1)
jekyll-sitemap (0.10.0)
jekyll-seo-tag (2.1.0)
jekyll (~> 3.3)
jekyll-sitemap (0.12.0)
jekyll (~> 3.3)
jekyll-swiss (0.4.0)
jekyll-watch (1.5.0)
listen (~> 3.0, < 3.1)
jemoji (0.7.0)
@ -98,20 +106,18 @@ GEM
rb-inotify (>= 0.9.7)
mercenary (0.3.6)
mini_portile2 (2.1.0)
minima (1.0.1)
minitest (5.9.0)
minima (2.0.0)
minitest (5.9.1)
multipart-post (2.0.0)
net-dns (0.8.0)
nokogiri (1.6.8)
nokogiri (1.6.8.1)
mini_portile2 (~> 2.1.0)
pkg-config (~> 1.1.7)
octokit (4.3.0)
octokit (4.4.1)
sawyer (~> 0.7.0, >= 0.5.3)
pathutil (0.14.0)
forwardable-extended (~> 2.6)
pkg-config (1.1.7)
public_suffix (1.5.3)
rb-fsevent (0.9.7)
rb-fsevent (0.9.8)
rb-inotify (0.9.7)
ffi (>= 0.5.0)
rouge (1.11.1)
@ -120,21 +126,20 @@ GEM
sawyer (0.7.0)
addressable (>= 2.3.5, < 2.5)
faraday (~> 0.8, < 0.10)
terminal-table (1.7.0)
unicode-display_width (~> 1.1)
terminal-table (1.7.3)
unicode-display_width (~> 1.1.1)
thread_safe (0.3.5)
typhoeus (0.8.0)
ethon (>= 0.8.0)
tzinfo (1.2.2)
thread_safe (~> 0.1)
unicode-display_width (1.1.0)
unicode-display_width (1.1.1)
PLATFORMS
ruby
DEPENDENCIES
github-pages
jekyll-redirect-from
github-pages (~> 104)
BUNDLED WITH
1.12.5
1.13.1

@ -44,18 +44,26 @@ The requirements for running a GitHub pages site locally is described in [GitHub
- On first runs or for structural changes to the documentation (e.g., new sidebar menu item), do a full build.
```
bundle exec jekyll serve --config=_config.yml,_config_local_dev.yml
bundle exec jekyll serve
```
- For content changes only, you can use `--incremental` for faster builds.
```
bundle exec jekyll serve --config=_config.yml,_config_local_dev.yml --incremental
bundle exec jekyll serve --incremental
```
> We use `bundle exec` instead of running straight `jekyll` because `bundle exec` will always use the version of Jekyll from our `Gemfile`. Just running `jekyll` will use the system version and may not necessarily be compatible.
> The `_config_local_dev` file overrides some URL settings that you might be using in production to allow you to test links, etc. locally.
- To run using an actual IP address, you can use `--host=0.0.0.0`
```
bundle exec jekyll serve --host=0.0.0.0
```
This will allow you to use the IP address associated with your machine in the URL. That way you could share it with other people.
e.g., on a Mac, you can your IP address with something like `ifconfig | grep "inet " | grep -v 127.0.0.1`.
1. Either of commands in the previous step will serve up the site on your local device at http://127.0.0.1:4000/ or http://localhost:4000.

@ -8,9 +8,27 @@ fbappid: "1615782811974223"
gacode: "UA-49459723-1"
# baseurl determines the subpath of your site. For example if you're using an
# organisation.github.io/reponame/ basic site URL, then baseurl would be set
# as "/reponame/" but leave blank if you have a top-level domain URL
# https://byparker.com/blog/2014/clearing-up-confusion-around-baseurl/
url: "http://rocksdb.org" # the base hostname & protocol for your site
# as "/reponame" but leave blank if you have a top-level domain URL as it is
# now set to "" by default as discussed in:
# http://jekyllrb.com/news/2016/10/06/jekyll-3-3-is-here/
# baseurl:
# the base hostname & protocol for your site
# If baseurl is set, then the absolute url for your site would be url/baseurl
# This was also be set to the right thing automatically for local development
# https://github.com/blog/2277-what-s-new-in-github-pages-with-jekyll-3-3
# http://jekyllrb.com/news/2016/10/06/jekyll-3-3-is-here/
url: "http://rocksdb.org"
# Note: There are new filters in Jekyll 3.3 to help with absolute and relative urls
# absolute_url
# relative_url
# So you will see these used throughout the Jekyll code in this template.
# no more need for | prepend: site.url | prepend: site.baseurl
# http://jekyllrb.com/news/2016/10/06/jekyll-3-3-is-here/
#https://github.com/blog/2277-what-s-new-in-github-pages-with-jekyll-3-3
# The GitHub repo for your project
ghrepo: "facebook/rocksdb"
# Use these color settings to determine your colour scheme for the site.

@ -1,5 +0,0 @@
# Local development config settings to over-ride base.
# `jekyll serve` will by default generate a webserver at localhost:4000, so
# only change `url` if you're using a non-default location.
url: "http://127.0.0.1:4000"

@ -3,7 +3,7 @@
<br />
<div class="pagination">
{% if paginator.previous_page %}
<a href="{{ paginator.previous_page_path | replace: '//', '/' }}">&laquo; Prev</a>
<a href="{{ paginator.previous_page_path | relative_url | replace: '//', '/' }}">&laquo; Prev</a>
{% else %}
<span>&laquo; Prev</span>
{% endif %}
@ -12,14 +12,14 @@
{% if page == paginator.page %}
<em>{{ page }}</em>
{% elsif page == 1 %}
<a href="/blog">{{ page }}</a>
<a href="{{ '/blog' | relative_url }}">{{ page }}</a>
{% else %}
<a href="{{ site.paginate_path | replace: '//', '/' | replace: ':num', page }}">{{ page }}</a>
<a href="{{ site.paginate_path | relative_url | replace: '//', '/' | replace: ':num', page }}">{{ page }}</a>
{% endif %}
{% endfor %}
{% if paginator.next_page %}
<a href="{{ paginator.next_page_path | replace: '//', '/' }}">Next &raquo;</a>
<a href="{{ paginator.next_page_path | relative_url | replace: '//', '/' }}">Next &raquo;</a>
{% else %}
<span>Next &raquo;</span>
{% endif %}

@ -1,6 +1,6 @@
<div class="post">
<header class="post-header">
<h1 class="post-title">{% if include.truncate %}<a href="{{ page.url }}">{{ page.title }}</a>{% else %}{{ page.title }}{% endif %}</h1>
<h1 class="post-title">{% if include.truncate %}<a href="{{ absolute_url }}{{ page.url }}">{{ page.title }}</a>{% else %}{{ page.title }}{% endif %}</h1>
</header>
<article class="post-content">
@ -8,7 +8,7 @@
{% if page.content contains '<!--truncate-->' %}
{{ page.content | split:'<!--truncate-->' | first }}
<div class="read-more">
<a href="{{ page.url }}" >
<a href="{{ absolute_url }}{{ page.url }}" >
...Read More
</a>
</div>

@ -3,14 +3,14 @@
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta property="og:url" content="{{ page.url | replace:'index.html','' | prepend: site.url }}" />
<meta property="og:url" content="{{ page.url | replace:'index.html','' | absolute_url }}" />
<meta property="og:site_name" content="{{ site.title }}"/>
<meta property="og:title" content="{% if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %}" />
<meta property="og:image" content="{{ site.url }}/static/og_image.png" />
<meta property="og:image" content="{{ absolute_url }}/static/og_image.png" />
<meta property="og:description" content="{% if page.excerpt %}{{ page.excerpt | strip_html | strip_newlines | truncate: 160 }}{% else %}{{ site.description }}{% endif %}" />
<link rel="stylesheet" href="{{ site.url }}/css/main.css" media="screen">
<link rel="icon" href="{{ site.url }}/static/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="{{ absolute_url }}/css/main.css" media="screen">
<link rel="icon" href="{{ absolute_url }}/static/favicon.png" type="image/x-icon">
{% if site.searchconfig %}
<link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css" />
{% endif %}
@ -18,8 +18,8 @@
<title>{% if page.title %}{{ page.title }} | {{ site.title }}{% else %}{{ site.title }}{% endif %}</title>
<meta name="description" content="{% if page.excerpt %}{{ page.excerpt | strip_html | strip_newlines | truncate: 160 }}{% else %}{{ site.description }}{% endif %}">
<base href="{{ site.url }}/" />
<base href="{{ absolute_url }}/" />
<link rel="canonical" href="{{ page.url | replace:'index.html','' | prepend: site.url }}">
<link rel="alternate" type="application/rss+xml" title="{{ site.title }}" href="{{ "/feed.xml" | prepend: site.url }}" />
<link rel="canonical" href="{{ page.url | replace:'index.html','' | absolute_url }}">
<link rel="alternate" type="application/rss+xml" title="{{ site.title }}" href="{{ "/feed.xml" | absolute_url }}" />
</head>

@ -1,7 +1,7 @@
<div class="headerContainer">
<div id="header_wrap" class="wrapper headerWrapper">
<div class="inner">
<img class="projectLogo" height="200px" src="/static/logo.svg" alt="{{ site.title }}" title="{{ site.title }}" />
<img class="projectLogo" height="200px" src="{{ relative_url }}/static/logo.svg" alt="{{ site.title }}" title="{{ site.title }}" />
<h1 id="project_title">{{ site.title }}</h1>
<h2 id="project_tagline" class="fbossFontLight">{{ site.tagline }}</h2>

@ -15,7 +15,7 @@
</div>
</div>
<div class="projectLogo">
<img src="/static/logo.svg" alt="{{ site.title }}">
<img src="{{ relative_url }}/static/logo.svg" alt="{{ site.title }}">
</div>
</div>
</div>

@ -1,8 +1,8 @@
<div id="fixed_header" class="fixedHeaderContainer{% if include.alwayson %} visible{% endif %}">
<div class="headerWrapper wrapper">
<header>
<a href="{{ site.url }}/">
<img src="/static/logo.svg">
<a href="{{ absolute_url }}/">
<img src="{{ relative_url }}/static/logo.svg">
<h2>{{ site.title }}</h2>
</a>

@ -2,12 +2,12 @@
<a
href="https://twitter.com/share"
class="twitter-share-button"
data-url="{{ page.url | replace:'index.html','' | prepend: site.url }}"
data-url="{{ page.url | replace:'index.html','' | absolute_url }}"
data-text="{% if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %}"
data-hashtags="flowtype">Tweet</a>
<div
class="fb-like"
data-href="{{ page.url | replace:'index.html','' | prepend: site.url }}"
data-href="{{ page.url | replace:'index.html','' | absolute_url }}"
data-layout="button_count"
data-action="like"
data-show-faces="false"

@ -9,7 +9,7 @@
{% if author.full_name %}
<p class="post-authorName">{{ author.full_name }}</p>
{% endif %}
<h1 class="post-title">{% if include.truncate %}<a href="{{ site.url }}{{ page.url }}">{{ page.title }}</a>{% else %}{{ page.title }}{% endif %}</h1>
<h1 class="post-title">{% if include.truncate %}<a href="{{ absolute_url }}{{ page.url }}">{{ page.title }}</a>{% else %}{{ page.title }}{% endif %}</h1>
<p class="post-meta">Posted {{ page.date | date: '%B %d, %Y' }}{% if page.meta %} • {{ page.meta }}{% endif %}</p>
</header>
@ -18,7 +18,7 @@
{% if page.content contains '<!--truncate-->' %}
{{ page.content | split:'<!--truncate-->' | first | markdownify }}
<div class="read-more">
<a href="{{ site.url }}{{ page.url }}" >
<a href="{{ absolute_url }}{{ page.url }}" >
Read More
</a>
</div>

@ -11,7 +11,7 @@ category: blog
{% assign author = site.data.authors[post.author] %}
<p>
<strong>
<a href="{{ post.url }}">{{ post.title }}</a>
<a href="{{ relative_url }}{{ post.url }}">{{ post.title }}</a>
</strong>
on {{ post.date | date: "%B %e, %Y" }} by {{ author.display_name }}
</p>

@ -5,40 +5,40 @@
@font-face {
font-family: 'Lato';
src: url('/static/fonts/LatoLatin-Italic.woff2') format('woff2'),
url('/static/fonts/LatoLatin-Italic.woff') format('woff');
src: url('{{ relative_url }}/static/fonts/LatoLatin-Italic.woff2') format('woff2'),
url('{{ relative_url }}/static/fonts/LatoLatin-Italic.woff') format('woff');
font-weight: normal;
font-style: italic;
}
@font-face {
font-family: 'Lato';
src: url('/static/fonts/LatoLatin-Black.woff2') format('woff2'),
url('/static/fonts/LatoLatin-Black.woff') format('woff');
src: url('{{ relative_url }}/static/fonts/LatoLatin-Black.woff2') format('woff2'),
url('{{ relative_url }}/static/fonts/LatoLatin-Black.woff') format('woff');
font-weight: 900;
font-style: normal;
}
@font-face {
font-family: 'Lato';
src: url('/static/fonts/LatoLatin-BlackItalic.woff2') format('woff2'),
url('/static/fonts/LatoLatin-BlackItalic.woff') format('woff');
src: url('{{ relative_url }}/static/fonts/LatoLatin-BlackItalic.woff2') format('woff2'),
url('{{ relative_url }}/static/fonts/LatoLatin-BlackItalic.woff') format('woff');
font-weight: 900;
font-style: italic;
}
@font-face {
font-family: 'Lato';
src: url('/static/fonts/LatoLatin-Light.woff2') format('woff2'),
url('/static/fonts/LatoLatin-Light.woff') format('woff');
src: url('{{ relative_url }}/static/fonts/LatoLatin-Light.woff2') format('woff2'),
url('{{ relative_url }}/static/fonts/LatoLatin-Light.woff') format('woff');
font-weight: 300;
font-style: normal;
}
@font-face {
font-family: 'Lato';
src: url('/static/fonts/LatoLatin-Regular.woff2') format('woff2'),
url('/static/fonts/LatoLatin-Regular.woff') format('woff');
src: url('{{ relative_url }}/static/fonts/LatoLatin-Regular.woff2') format('woff2'),
url('{{ relative_url }}/static/fonts/LatoLatin-Regular.woff') format('woff');
font-weight: normal;
font-style: normal;
}

@ -6,8 +6,8 @@ layout: null
<channel>
<title>{{ site.title | xml_escape }}</title>
<description>{{ site.description | xml_escape }}</description>
<link>{{ site.url }}/</link>
<atom:link href="{{ "/feed.xml" | prepend: site.url }}" rel="self" type="application/rss+xml"/>
<link>{{ absolute_url }}/</link>
<atom:link href="{{ "/feed.xml" | absolute_url }}" rel="self" type="application/rss+xml"/>
<pubDate>{{ site.time | date_to_rfc822 }}</pubDate>
<lastBuildDate>{{ site.time | date_to_rfc822 }}</lastBuildDate>
<generator>Jekyll v{{ jekyll.version }}</generator>
@ -16,8 +16,8 @@ layout: null
<title>{{ post.title | xml_escape }}</title>
<description>{{ post.content | xml_escape }}</description>
<pubDate>{{ post.date | date_to_rfc822 }}</pubDate>
<link>{{ post.url | prepend: site.url }}</link>
<guid isPermaLink="true">{{ post.url | prepend: site.url }}</guid>
<link>{{ post.url | absolute_url }}</link>
<guid isPermaLink="true">{{ post.url | absolute_url }}</guid>
{% for tag in post.tags %}
<category>{{ tag | xml_escape }}</category>
{% endfor %}

Loading…
Cancel
Save