doc: show edit on github links and version warnings

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
This commit is contained in:
Noah Watkins 2018-10-01 16:54:19 -07:00 committed by Noah Watkins
parent 1b57df1d51
commit bb887b78f8
10 changed files with 672 additions and 183 deletions

View File

@ -124,6 +124,24 @@ for target in $sphinx_targets; do
done
# build the releases.json. this reads in the yaml version and dumps
# out the json representation of the same file. the resulting releases.json
# should be served from the root of hosted site.
$vdir/bin/python << EOF > $TOPDIR/build-doc/output/html/releases.json
from __future__ import print_function
import datetime
import json
import yaml
def json_serialize(obj):
if isinstance(obj, datetime.date):
return obj.isoformat()
with open("$TOPDIR/doc/releases/releases.yml", 'r') as fp:
releases = yaml.load(fp)
print(json.dumps(releases, indent=2, default=json_serialize))
EOF
#
# Build and install JavaDocs
#

View File

@ -1,3 +1,4 @@
Sphinx == 1.6.3
git+https://github.com/ceph/sphinx-ditaa.git@py3#egg=sphinx-ditaa
git+https://github.com/michaeljones/breathe#egg=breathe
pyyaml==3.13

0
doc/README.md Normal file
View File

202
doc/_ext/ceph_releases.py Normal file
View File

@ -0,0 +1,202 @@
# cobbled together from:
# https://github.com/sphinx-contrib/documentedlist/blob/master/sphinxcontrib/documentedlist.py
# https://github.com/sphinx-doc/sphinx/blob/v1.6.3/sphinx/ext/graphviz.py
# https://github.com/thewtex/sphinx-contrib/blob/master/exceltable/sphinxcontrib/exceltable.py
# https://bitbucket.org/prometheus/sphinxcontrib-htsql/src/331a542c29a102eec9f8cba44797e53a49de2a49/sphinxcontrib/htsql.py?at=default&fileviewer=file-view-default
# into the glory that follows:
import json
import six
import yaml
import sphinx
import datetime
from docutils.parsers.rst import Directive
from docutils import nodes
from sphinx.util import logging
class CephReleases(Directive):
has_content = False
required_arguments = 1
optional_arguments = 0
option_spec = {}
def run(self):
filename = self.arguments[0]
document = self.state.document
env = document.settings.env
rel_filename, filename = env.relfn2path(filename)
env.note_dependency(filename)
try:
with open(filename, 'r') as fp:
releases = yaml.load(fp)
releases = releases["releases"]
except Exception as e:
return [document.reporter.warning(
"Failed to open Ceph releases file {}: {}".format(filename, e),
line=self.lineno)]
table = nodes.table()
tgroup = nodes.tgroup(cols=3)
table += tgroup
tgroup.extend(
nodes.colspec(colwidth=30, colname='c'+str(idx))
for idx, _ in enumerate(range(4)))
thead = nodes.thead()
tgroup += thead
row_node = nodes.row()
thead += row_node
row_node.extend(nodes.entry(h, nodes.paragraph(text=h))
for h in ["Version", "Initial release", "Latest", "End of life (estimated)"])
releases = six.iteritems(releases)
releases = sorted(releases, key=lambda t: t[0], reverse=True)
tbody = nodes.tbody()
tgroup += tbody
rows = []
for code_name, info in releases:
actual_eol = info.get("actual_eol", None)
if actual_eol and actual_eol <= datetime.datetime.now().date():
continue
trow = nodes.row()
entry = nodes.entry()
para = nodes.paragraph(text="`{}`_".format(code_name))
sphinx.util.nodes.nested_parse_with_titles(
self.state, para, entry)
#entry += para
trow += entry
sorted_releases = sorted(info["releases"],
key=lambda t: t["released"])
oldest_release = sorted_releases[0]
newest_release = sorted_releases[-1]
entry = nodes.entry()
para = nodes.paragraph(text="{}".format(
oldest_release["released"].strftime("%b %Y")))
entry += para
trow += entry
entry = nodes.entry()
if newest_release.get("skip_ref", False):
para = nodes.paragraph(text="{}".format(
newest_release["version"]))
else:
para = nodes.paragraph(text="`{}`_".format(
newest_release["version"]))
sphinx.util.nodes.nested_parse_with_titles(
self.state, para, entry)
#entry += para
trow += entry
entry = nodes.entry()
para = nodes.paragraph(text="{}".format(
info.get("target_eol", "--")))
entry += para
trow += entry
rows.append(trow)
tbody.extend(rows)
return [table]
class CephTimeline(Directive):
has_content = False
required_arguments = 12
optional_arguments = 0
option_spec = {}
def run(self):
filename = self.arguments[0]
document = self.state.document
env = document.settings.env
rel_filename, filename = env.relfn2path(filename)
env.note_dependency(filename)
try:
with open(filename, 'r') as fp:
releases = yaml.load(fp)
except Exception as e:
return [document.reporter.warning(
"Failed to open Ceph releases file {}: {}".format(filename, e),
line=self.lineno)]
display_releases = self.arguments[1:]
timeline = []
for code_name, info in six.iteritems(releases["releases"]):
if code_name in display_releases:
for release in info.get("releases", []):
released = release["released"]
timeline.append((released, code_name, release["version"],
release.get("skip_ref", False)))
assert "development" not in releases["releases"]
if "development" in display_releases:
for release in releases["development"]["releases"]:
released = release["released"]
timeline.append((released, "development", release["version"],
release.get("skip_ref", False)))
timeline = sorted(timeline, key=lambda t: t[0], reverse=True)
table = nodes.table()
tgroup = nodes.tgroup(cols=3)
table += tgroup
columns = ["Date"] + display_releases
tgroup.extend(
nodes.colspec(colwidth=30, colname='c'+str(idx))
for idx, _ in enumerate(range(len(columns))))
thead = nodes.thead()
tgroup += thead
row_node = nodes.row()
thead += row_node
for col in columns:
entry = nodes.entry()
if col.lower() in ["date", "development"]:
para = nodes.paragraph(text=col)
else:
para = nodes.paragraph(text="`{}`_".format(col))
sphinx.util.nodes.nested_parse_with_titles(
self.state, para, entry)
row_node += entry
tbody = nodes.tbody()
tgroup += tbody
rows = []
for row_info in timeline:
trow = nodes.row()
entry = nodes.entry()
para = nodes.paragraph(text=row_info[0].strftime("%b %Y"))
entry += para
trow += entry
for release in display_releases:
entry = nodes.entry()
if row_info[1] == release:
if row_info[3]: # if skip ref
para = nodes.paragraph(text=row_info[2])
else:
para = nodes.paragraph(text="`{}`_".format(row_info[2]))
sphinx.util.nodes.nested_parse_with_titles(
self.state, para, entry)
else:
para = nodes.paragraph(text="--")
entry += para
trow += entry
rows.append(trow)
tbody.extend(rows)
return [table]
def setup(app):
app.add_directive('ceph_releases', CephReleases)
app.add_directive('ceph_timeline', CephTimeline)

View File

@ -0,0 +1,43 @@
"""
Adapted from https://gist.github.com/mgedmin/6052926
Sphinx extension to add ReadTheDocs-style "Edit on GitHub" links to the
sidebar.
Loosely based on https://github.com/astropy/astropy/pull/347
"""
import os
import warnings
__licence__ = 'BSD (3 clause)'
def get_github_url(app, view, path):
return 'https://github.com/{project}/{view}/{branch}/doc/{path}'.format(
project=app.config.edit_on_github_project,
view=view,
branch=app.config.edit_on_github_branch,
path=path)
def html_page_context(app, pagename, templatename, context, doctree):
if templatename != 'page.html':
return
if not app.config.edit_on_github_project:
warnings.warn("edit_on_github_project not specified")
return
path = os.path.relpath(doctree.get('source'), app.builder.srcdir)
show_url = get_github_url(app, 'blob', path)
edit_url = get_github_url(app, 'edit', path)
context['show_on_github_url'] = show_url
context['edit_on_github_url'] = edit_url
def setup(app):
app.add_config_value('edit_on_github_project', '', True)
app.add_config_value('edit_on_github_branch', 'master', True)
app.connect('html-page-context', html_page_context)

41
doc/_static/js/ceph.js vendored Normal file
View File

@ -0,0 +1,41 @@
$(function() {
var releases_url = "http://docs.ceph.com/docs/master/releases.json";
function show_edit(branch, data) {
if (branch) {
if (branch === "master") {
$("#dev-warning").show();
return true;
}
if (data && data.releases && branch in data.releases) {
var eol = ("actual_eol" in data.releases[branch]);
if (eol) {
$("#eol-warning").show();
}
return !eol;
}
}
$("#dev-warning").show();
return false;
}
function get_branch() {
var url = window.location.href;
var res = url.match(/docs.ceph.com\/docs\/([a-z]+)\/?/i)
if (res) {
return res[1]
}
return null;
}
$.getJSON(releases_url, function(data) {
var branch = get_branch();
if (show_edit(branch, data)) {
// patch the edit-on-github URL for correct branch
var url = $("#edit-on-github").attr("href");
url = url.replace("master", branch);
$("#edit-on-github").attr("href", url);
$("#docubetter").show();
}
});
});

21
doc/_templates/page.html vendored Normal file
View File

@ -0,0 +1,21 @@
{% extends "!page.html" %}
{% block body %}
<div id="dev-warning" class="admonition note" style="display:none;">
<p class="first admonition-title">Notice</p>
<p class="last">This document is for a development version of Ceph.</p>
</div>
<div id="eol-warning" class="admonition warning" style="display:none;">
<p class="first admonition-title">Warning</p>
<p class="last">This document is for an unsupported version of Ceph.</p>
</div>
{%- if edit_on_github_url %}
<div id="docubetter" align="right" style="display:none; padding: 15px; font-weight: bold;">
<a id="edit-on-github" href="{{ edit_on_github_url }}" rel="nofollow">{{ _('Edit on GitHub')}}</a>
</div>
{%- endif %}
{{ super() }}
{% endblock %}

View File

@ -37,16 +37,21 @@ html_title = "Ceph Documentation"
html_logo = 'logo.png'
html_favicon = 'favicon.ico'
html_show_sphinx = False
html_static_path = ["_static"]
html_sidebars = {
'**': ['smarttoc.html', 'searchbox.html'],
}
sys.path.insert(0, os.path.abspath('_ext'))
extensions = [
'sphinx.ext.autodoc',
'sphinx.ext.graphviz',
'sphinx.ext.todo',
'sphinxcontrib.ditaa',
'breathe',
'edit_on_github',
'ceph_releases',
]
ditaa = 'ditaa'
todo_include_todos = True
@ -68,6 +73,16 @@ breathe_projects_source = {
}
breathe_domain_by_extension = {'py': 'py', 'c': 'c', 'h': 'c', 'cc': 'cxx', 'hpp': 'cxx'}
# the docs are rendered with github links pointing to master. the javascript
# snippet in _static/ceph.js rewrites the edit links when a page is loaded, to
# point to the correct branch.
edit_on_github_project = 'ceph/ceph'
edit_on_github_branch = 'master'
# handles edit-on-github and old version warning display
def setup(app):
app.add_javascript('js/ceph.js')
# mocking ceph_module offered by ceph-mgr. `ceph_module` is required by
# mgr.mgr_module
class Dummy(object):

325
doc/releases/releases.yml Normal file
View File

@ -0,0 +1,325 @@
#
# there are two sections
#
# releases: ... for named releases
# developement: ... for dev releases
#
# by default a `version` is interpreted as a sphinx reference when rendered (see
# schedule.rst for the existing tags such as `_13.2.2`). If a version should not
# be treated as a reference, add `skip_ref: True` as a key/value pair sibling to
# the `version` key.
#
# If a version might represent an actual number (e.g. 0.80) quote it.
#
releases:
mimic:
releases:
- version: 13.2.2
released: 2018-09-01
- version: 13.2.1
released: 2018-07-01
- version: 13.2.0
released: 2018-06-01
luminous:
releases:
- version: 12.2.8
released: 2018-09-01
- version: 12.2.7
released: 2018-07-01
- version: 12.2.6
released: 2018-07-01
- version: 12.2.5
released: 2018-04-01
- version: 12.2.4
released: 2018-02-01
- version: 12.2.3
released: 2018-02-01
- version: 12.2.2
released: 2017-12-01
- version: 12.2.1
released: 2017-09-01
- version: 12.2.0
released: 2017-08-01
kraken:
target_eol: 2017-08-01
actual_eol: 2017-08-01
releases:
- version: 11.2.1
released: 2017-08-01
- version: 11.2.0
released: 2017-01-01
jewel:
target_eol: 2018-06-01
actual_eol: 2018-07-01
releases:
- version: 10.2.11
released: 2018-07-11
- version: 10.2.10
released: 2017-10-01
- version: 10.2.9
released: 2017-07-01
- version: 10.2.8
released: 2017-07-01
- version: 10.2.7
released: 2017-04-01
- version: 10.2.6
released: 2017-03-01
- version: 10.2.5
released: 2016-12-01
- version: 10.2.4
released: 2016-12-01
- version: 10.2.3
released: 2016-09-01
- version: 10.2.2
released: 2016-06-01
- version: 10.2.1
released: 2016-05-01
- version: 10.2.0
released: 2016-04-01
infernalis:
actual_eol: 2016-04-01
releases:
- version: 9.2.1
released: 2016-02-01
- version: 9.2.0
released: 2015-11-01
hammer:
target_eol: 2017-05-01
actual_eol: 2017-08-01
releases:
- version: 0.94.10
released: 2017-02-01
- version: 0.94.9
released: 2016-08-01
- version: 0.94.8
released: 2016-08-01
- version: 0.94.7
released: 2016-05-01
- version: 0.94.6
released: 2016-02-01
- version: 0.94.5
released: 2015-10-01
- version: 0.94.4
released: 2015-10-01
- version: 0.94.3
released: 2015-08-01
- version: 0.94.2
released: 2015-06-01
- version: 0.94.1
released: 2015-04-01
- version: '0.94'
released: 2015-04-01
giant:
actual_eol: 2015-04-01
releases:
- version: 0.87.2
released: 2015-04-01
- version: 0.87.1
released: 2015-02-01
- version: '0.87'
released: 2014-10-01
firefly:
target_eol: 2016-01-01
actual_eol: 2016-04-01
releases:
- version: 0.80.11
released: 2015-11-01
- version: 0.80.10
released: 2015-07-01
- version: 0.80.9
released: 2015-03-01
- version: 0.80.8
released: 2015-01-01
- version: 0.80.7
released: 2014-10-01
- version: 0.80.6
released: 2014-10-01
- version: 0.80.5
released: 2014-07-01
- version: 0.80.4
released: 2014-07-01
- version: 0.80.3
released: 2014-07-01
- version: 0.80.2
released: 2014-07-01
- version: 0.80.1
released: 2014-05-01
- version: '0.80'
released: 2014-05-01
emperor:
actual_eol: 2014-05-01
releases:
- version: 0.72.2
released: 2013-12-01
- version: 0.72.1
released: 2013-11-01
- version: '0.72'
released: 2013-11-01
dumpling:
target_eol: 2015-03-01
actual_eol: 2015-05-01
releases:
- version: 0.67.11
released: 2014-09-01
- version: 0.67.10
released: 2014-08-01
- version: 0.67.9
released: 2014-05-01
- version: 0.67.8
released: 2014-05-01
- version: 0.67.7
released: 2014-02-01
- version: 0.67.6
released: 2014-02-01
- version: 0.67.5
released: 2013-12-01
- version: 0.67.4
released: 2013-10-01
- version: 0.67.3
released: 2013-09-01
- version: 0.67.2
released: 2013-08-01
- version: 0.67.1
released: 2013-08-01
- version: '0.67'
released: 2013-08-01
development:
releases:
- version: 13.1.0
released: 2018-05-01
skip_ref: true
- version: 13.0.2
released: 2018-04-01
skip_ref: true
- version: 13.0.1
released: 2018-02-01
skip_ref: true
- version: 13.0.0
released: 2017-08-01
skip_ref: true
- version: 12.1.4
released: 2017-08-01
skip_ref: true
- version: 12.1.3
released: 2017-08-01
skip_ref: true
- version: 12.1.2
released: 2017-08-01
skip_ref: true
- version: 12.1.1
released: 2017-07-01
skip_ref: true
- version: 12.1.0
released: 2017-06-01
skip_ref: true
- version: 12.0.3
released: 2017-05-01
skip_ref: true
- version: 12.0.2
released: 2017-04-01
skip_ref: true
- version: 12.0.1
released: 2017-03-01
skip_ref: true
- version: 12.0.0
released: 2017-02-01
skip_ref: true
- version: 11.1.1
released: 2017-01-01
skip_ref: true
- version: 11.1.0
released: 2016-12-01
skip_ref: true
- version: 11.0.2
released: 2016-10-01
- version: 11.0.1
released: 2016-10-01
skip_ref: true
- version: 11.0.0
released: 2016-06-01
skip_ref: true
- version: 10.1.2
released: 2016-04-01
- version: 10.1.1
released: 2016-04-01
- version: 10.1.0
released: 2016-03-01
- version: 10.0.5
released: 2016-03-01
- version: 10.0.4
released: 2016-03-01
skip_ref: true
- version: 10.0.3
released: 2016-02-01
- version: 10.0.2
released: 2016-01-01
- version: 10.0.1
released: 2015-12-01
- version: 10.0.0
released: 2015-11-01
- version: 9.1.0
released: 2015-10-01
- version: 9.0.3
released: 2015-08-01
- version: 9.0.2
released: 2015-07-01
- version: 9.0.1
released: 2015-06-01
- version: 9.0.0
released: 2015-05-01
- version: '0.93'
released: 2015-02-01
- version: '0.92'
released: 2015-02-01
- version: '0.91'
released: 2015-01-01
- version: '0.90'
released: 2014-12-01
- version: '0.89'
released: 2014-12-01
- version: '0.88'
released: 2014-11-01
- version: '0.86'
released: 2014-10-01
- version: '0.85'
released: 2014-09-01
- version: '0.84'
released: 2014-08-01
- version: '0.83'
released: 2014-07-01
- version: '0.82'
released: 2014-06-01
- version: '0.81'
released: 2014-06-01
- version: '0.79'
released: 2014-04-01
- version: '0.78'
released: 2014-03-01
- version: '0.77'
released: 2014-02-01
- version: '0.76'
released: 2014-01-01
- version: '0.75'
released: 2014-01-01
- version: '0.74'
released: 2013-12-01
- version: '0.73'
released: 2013-12-01
- version: '0.71'
released: 2013-10-01
- version: '0.70'
released: 2013-10-01
- version: '0.69'
released: 2013-09-01
- version: '0.68'
released: 2013-09-01

View File

@ -2,192 +2,15 @@
Ceph Releases
=============
Current
-------
.. ceph_releases:: releases.yml
Timeline
--------
+----------------------+----------+-------------+-----------+----------+---------------+-----------+----------+------------+------------+-------------+
| | `Mimic`_ | `Luminous`_ | `Kraken`_ | `Jewel`_ | `Infernalis`_ | `Hammer`_ | `Giant`_ | `Firefly`_ | `Emperor`_ | `Dumpling`_ |
| | | | EOL | EOL | EOL | EOL | EOL | EOL | EOL | EOL |
+----------------------+----------+-------------+-----------+----------+---------------+-----------+----------+------------+------------+-------------+
| First release | June | August | January | April | November | April | October | May | November | August |
| | 2018 | 2017 | 2017 | 2016 | 2015 | 2015 | 2014 | 2014 | 2013 | 2013 |
+----------------------+----------+-------------+-----------+----------+---------------+-----------+----------+------------+------------+-------------+
| Estimated retirement | | | August | June | | May | | January | | March |
| | | | 2017 | 2018 | | 2017 | | 2016 | | 2015 |
+----------------------+----------+-------------+-----------+----------+---------------+-----------+----------+------------+------------+-------------+
| Actual retirement | | | August | July | April 2016 | August | April | April | May | May |
| | | | 2017 | 2018 | | 2017 | 2015 | 2016 | 2014 | 2015 |
+----------------------+----------+-------------+-----------+----------+---------------+-----------+----------+------------+------------+-------------+
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | Development | `Mimic`_ | `Luminous`_ | `Kraken`_ | `Jewel`_ | `Infernalis`_ | `Hammer`_ | `Giant`_ | `Firefly`_ | `Emperor`_ | `Dumpling`_ |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| September 2018 | | `13.2.2`_ | `12.2.8`_ | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| July 2018 | | `13.2.1`_ | `12.2.6`_ | | `10.2.11`_ | | | | | | |
| | | | `12.2.7`_ | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| June 2018 | | `13.2.0`_ | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| May 2018 | 13.1.0 | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| April 2018 | 13.0.2 | | `12.2.5`_ | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| February 2018 | 13.0.1 | | `12.2.3`_ | | | | | | | | |
| | | | `12.2.4`_ | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| December 2017 | | | `12.2.2`_ | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| October 2017 | | | | | `10.2.10`_ | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| September 2017 | | | `12.2.1`_ | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| August 2017 | 13.0.0 | | `12.2.0`_ | `11.2.1`_ | | | | | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | 12.1.4 | | | | | | | | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | 12.1.3 | | | | | | | | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | 12.1.2 | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| July 2017 | 12.1.1 | | | | `10.2.9`_ | | | | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | | | | | `10.2.8`_ | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| June 2017 | 12.1.0 | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| May 2017 | 12.0.3 | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| April 2017 | 12.0.2 | | | | `10.2.7`_ | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| March 2017 | 12.0.1 | | | | `10.2.6`_ | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| February 2017 | 12.0.0 | | | | | |`0.94.10`_ | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| January 2017 | 11.1.1 | | | `11.2.0`_ | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| December 2016 | 11.1.0 | | | | `10.2.5`_ | | | | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | | | | | `10.2.4`_ | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| October 2016 | `11.0.2`_ | | | | | | | | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | 11.0.1 | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| September 2016 | | | | | `10.2.3`_ | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| August 2016 | | | | | | | `0.94.9`_ | | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | | | | | | | `0.94.8`_ | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| June 2016 | 11.0.0 | | | | `10.2.2`_ | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| May 2016 | | | | | `10.2.1`_ | | `0.94.7`_ | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| April 2016 | `10.1.2`_ | | | | `10.2.0`_ | | | | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | `10.1.1`_ | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| March 2016 | `10.1.0`_ | | | | | | | | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | `10.0.5`_ | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| February 2016 | `10.0.3`_ | | | | | `9.2.1`_ | `0.94.6`_ | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| January 2016 | `10.0.2`_ | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| December 2015 | `10.0.1`_ | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| November 2015 | `10.0.0`_ | | | | | `9.2.0`_ | | | `0.80.11`_ | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| October 2015 | `9.1.0`_ | | | | | | `0.94.5`_ | | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | | | | | | | `0.94.4`_ | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| August 2015 | `9.0.3`_ | | | | | | `0.94.3`_ | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| July 2015 | `9.0.2`_ | | | | | | | | `0.80.10`_ | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| June 2015 | `9.0.1`_ | | | | | | `0.94.2`_ | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| May 2015 | `9.0.0`_ | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| April 2015 | | | | | | | `0.94.1`_ | `0.87.2`_ | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | | | | | | | `0.94`_ | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| March 2015 | | | | | | | | | `0.80.9`_ | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| February 2015 | `0.93`_ | | | | | | | `0.87.1`_ | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | `0.92`_ | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| January 2015 | `0.91`_ | | | | | | | | `0.80.8`_ | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| December 2014 | `0.90`_ | | | | | | | | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | `0.89`_ | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| November 2014 | `0.88`_ | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| October 2014 | `0.86`_ | | | | | | | `0.87`_ | `0.80.7`_ | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | | | | | | | | | `0.80.6`_ | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| September 2014 | `0.85`_ | | | | | | | | | | `0.67.11`_ |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| August 2014 | `0.84`_ | | | | | | | | | | `0.67.10`_ |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| July 2014 | `0.83`_ | | | | | | | | `0.80.5`_ | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | | | | | | | | | `0.80.4`_ | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | | | | | | | | | `0.80.3`_ | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | | | | | | | | | `0.80.2`_ | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| June 2014 | `0.82`_ | | | | | | | | | | |
| +-------------+------------+------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | `0.81`_ | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| May 2014 | | | | | | | | | `0.80.1`_ | | `0.67.9`_ |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | | | | | | | | | `0.80`_ | | `0.67.8`_ |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| April 2014 | `0.79`_ | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| March 2014 | `0.78`_ | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| February 2014 | `0.77`_ | | | | | | | | | | `0.67.7`_ |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | | | | | | | | | | | `0.67.6`_ |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| January 2014 | `0.76`_ | | | | | | | | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | `0.75`_ | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| December 2013 | `0.74`_ | | | | | | | | | `0.72.2`_ | `0.67.5`_ |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | `0.73`_ | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| November 2013 | | | | | | | | | | `0.72.1`_ | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | | | | | | | | | | `0.72`_ | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| October 2013 | `0.71`_ | | | | | | | | | | `0.67.4`_ |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | `0.70`_ | | | | | | | | | | |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| September 2013 | `0.69`_ | | | | | | | | | | |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | `0.68`_ | | | | | | | | | | `0.67.3`_ |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| August 2013 | | | | | | | | | | | `0.67.2`_ |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | | | | | | | | | | | `0.67.1`_ |
| +-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
| | | | | | | | | | | | `0.67`_ |
+----------------+-------------+-----------+-------------+-----------+------------+---------------+-----------+------------+------------+------------+-------------+
.. ceph_timeline:: releases.yml development mimic luminous kraken jewel infernalis hammer giant firefly emperor dumpling
.. _Mimic: ../mimic
.. _13.2.2: ../mimic#v13-2-2-mimic