Release 1.1 (in development)
============================
* Added Python 3.x support.
Release 1.0.2 (in development)
==============================
* Allow breaking long signatures, continuing with backlash-escaped
newlines.
* Fix unwanted styling of C domain references (because of a namespace
clash with Pygments styles).
* Allow references to PEPs and RFCs with explicit anchors.
* #471: Fix LaTeX references to figures.
* #482: When doing a non-exact search, match only the given type
of object.
* #481: Apply non-exact search for Python reference targets with
``.name`` for modules too.
* #484: Fix crash when duplicating a parameter in an info field list.
* #487: Fix setting the default role to one provided by the
``oldcmarkup`` extension.
* #488: Fix crash when json-py is installed, which provides a
``json`` module but is incompatible to simplejson.
* #480: Fix handling of target naming in intersphinx.
* #486: Fix removal of ``!`` for all cross-reference roles.
Release 1.0.1 (Jul 27, 2010)
============================
* #470: Fix generated target names for reST domain objects; they
are not in the same namespace.
* #266: Add Bengali language.
* #473: Fix a bug in parsing JavaScript object names.
* #474: Fix building with SingleHTMLBuilder when there is no toctree.
* Fix display names for objects linked to by intersphinx with
explicit targets.
* Fix building with the JSON builder.
* Fix hyperrefs in object descriptions for LaTeX.
Release 1.0 (Jul 23, 2010)
==========================
Incompatible changes
--------------------
* Support for domains has been added. A domain is a collection of
directives and roles that all describe objects belonging together,
e.g. elements of a programming language. A few builtin domains are
provided:
- Python
- C
- C++
- JavaScript
- reStructuredText
* The old markup for defining and linking to C directives is now
deprecated. It will not work anymore in future versions without
activating the :mod:`~sphinx.ext.oldcmarkup` extension; in Sphinx
1.0, it is activated by default.
* Removed support for old dependency versions; requirements are now:
- docutils >= 0.5
- Jinja2 >= 2.2
* Removed deprecated elements:
- ``exclude_dirs`` config value
- ``sphinx.builder`` module
Features added
--------------
* General:
- Added a "nitpicky" mode that emits warnings for all missing
references. It is activated by the :option:`-n` command-line switch
or the :confval:`nitpicky` config value.
- Added ``latexpdf`` target in quickstart Makefile.
* Markup:
- The :rst:role:`menuselection` and :rst:role:`guilabel` roles now
support ampersand accelerators.
- New more compact doc field syntax is now recognized: ``:param type
name: description``.
- Added ``tab-width`` option to :rst:dir:`literalinclude` directive.
- Added ``titlesonly`` option to :rst:dir:`toctree` directive.
- Added the ``prepend`` and ``append`` options to the
:rst:dir:`literalinclude` directive.
- #284: All docinfo metadata is now put into the document metadata, not
just the author.
- The :rst:role:`ref` role can now also reference tables by caption.
- The :rst:dir:`include` directive now supports absolute paths, which
are interpreted as relative to the source directory.
- In the Python domain, references like ``:func:`.name``` now look for
matching names with any prefix if no direct match is found.
* Configuration:
- Added :confval:`rst_prolog` config value.
- Added :confval:`html_secnumber_suffix` config value to control
section numbering format.
- Added :confval:`html_compact_lists` config value to control
docutils' compact lists feature.
- The :confval:`html_sidebars` config value can now contain patterns
as keys, and the values can be lists that explicitly select which
sidebar templates should be rendered. That means that the builtin
sidebar contents can be included only selectively.
- :confval:`html_static_path` can now contain single file entries.
- The new universal config value :confval:`exclude_patterns` makes the
old :confval:`unused_docs`, :confval:`exclude_trees` and
:confval:`exclude_dirnames` obsolete.
- Added :confval:`html_output_encoding` config value.
- Added the :confval:`latex_docclass` config value and made the
"twoside" documentclass option overridable by "oneside".
- Added the :confval:`trim_doctest_flags` config value, which is true
by default.
- Added :confval:`html_show_copyright` config value.
- Added :confval:`latex_show_pagerefs` and :confval:`latex_show_urls`
config values.
- The behavior of :confval:`html_file_suffix` changed slightly: the
empty string now means "no suffix" instead of "default suffix", use
``None`` for "default suffix".
* New builders:
- Added a builder for the Epub format.
- Added a builder for manual pages.
- Added a single-file HTML builder.
* HTML output:
- Inline roles now get a CSS class with their name, allowing styles to
customize their appearance. Domain-specific roles get two classes,
``domain`` and ``domain-rolename``.
- References now get the class ``internal`` if they are internal to
the whole project, as opposed to internal to the current page.
- External references can be styled differently with the new
``externalrefs`` theme option for the default theme.
- In the default theme, the sidebar can experimentally now be made
collapsible using the new ``collapsiblesidebar`` theme option.
- #129: Toctrees are now wrapped in a ``div`` tag with class
``toctree-wrapper`` in HTML output.
- The :data:`toctree` callable in templates now has a ``maxdepth``
keyword argument to control the depth of the generated tree.
- The :data:`toctree` callable in templates now accepts a
``titles_only`` keyword argument.
- Added ``htmltitle`` block in layout template.
- In the JavaScript search, allow searching for object names including
the module name, like ``sys.argv``.
- Added new theme ``haiku``, inspired by the Haiku OS user guide.
- Added new theme ``nature``.
- Added new theme ``agogo``, created by Andi Albrecht.
- Added new theme ``scrolls``, created by Armin Ronacher.
- #193: Added a ``visitedlinkcolor`` theme option to the default
theme.
- #322: Improved responsiveness of the search page by loading the
search index asynchronously.
* Extension API:
- Added :event:`html-collect-pages`.
- Added :confval:`needs_sphinx` config value and
:meth:`~sphinx.application.Sphinx.require_sphinx` application API
method.
- #200: Added :meth:`~sphinx.application.Sphinx.add_stylesheet`
application API method.
* Extensions:
- Added the :mod:`~sphinx.ext.viewcode` extension.
- Added the :mod:`~sphinx.ext.extlinks` extension.
- Added support for source ordering of members in autodoc, with
``autodoc_member_order = 'bysource'``.
- Added :confval:`autodoc_default_flags` config value, which can be
used to select default flags for all autodoc directives.
- Added a way for intersphinx to refer to named labels in other
projects, and to specify the project you want to link to.
- #280: Autodoc can now document instance attributes assigned in
``__init__`` methods.
- Many improvements and fixes to the :mod:`~sphinx.ext.autosummary`
extension, thanks to Pauli Virtanen.
- #309: The :mod:`~sphinx.ext.graphviz` extension can now output SVG
instead of PNG images, controlled by the
:confval:`graphviz_output_format` config value.
- Added ``alt`` option to :rst:dir:`graphviz` extension directives.
- Added ``exclude`` argument to :func:`.autodoc.between`.
* Translations:
- Added Croatian translation, thanks to Bojan Mihelač.
- Added Turkish translation, thanks to Firat Ozgul.
- Added Catalan translation, thanks to Pau Fernández.
- Added simplified Chinese translation.
- Added Danish translation, thanks to Hjorth Larsen.
- Added Lithuanian translation, thanks to Dalius Dobravolskas.
Release 0.6.8 (in development)
==============================
* #445: Fix links to result pages when using the search function
of HTML built with the ``dirhtml`` builder.
* #444: In templates, properly re-escape values treated with the
"striptags" Jinja filter.
Release 0.6.7 (Jun 05, 2010)
============================
* #440: Remove usage of a Python >= 2.5 API in the ``literalinclude``
directive.
* Fix a bug that prevented some references being generated in the
LaTeX builder.
* #428: Add some missing CSS styles for standard docutils classes.
* #432: Fix UnicodeErrors while building LaTeX in translated locale.
Release 0.6.6 (May 25, 2010)
============================
* Handle raw nodes in the ``text`` writer.
* Fix a problem the Qt help project generated by the ``qthelp``
builder that would lead to no content being displayed in the Qt
Assistant.
* #393: Fix the usage of Unicode characters in mathematic formulas
when using the ``pngmath`` extension.
* #404: Make ``\and`` work properly in the author field of the
``latex_documents`` setting.
* #409: Make the ``highlight_language`` config value work properly
in the LaTeX builder.
* #418: Allow relocation of the translation JavaScript files to
the system directory on Unix systems.
* #414: Fix handling of Windows newlines in files included with
the ``literalinclude`` directive.
* #377: Fix crash in linkcheck builder.
* #387: Fix the display of search results in ``dirhtml`` output.
* #376: In autodoc, fix display of parameter defaults containing
backslashes.
* #370: Fix handling of complex list item labels in LaTeX output.
* #374: Make the ``doctest_path`` config value of the doctest
extension actually work.
* Fix the handling of multiple toctrees when creating the global
TOC for the ``toctree()`` template function.
* Fix the handling of hidden toctrees when creating the global TOC
for the ``toctree()`` template function.
* Fix the handling of nested lists in the text writer.
* #362: In autodoc, check for the existence of ``__self__`` on
function objects before accessing it.
* #353: Strip leading and trailing whitespace when extracting
search words in the search function.
Release 0.6.5 (Mar 01, 2010)
============================
* In autodoc, fix the omission of some module members explicitly
documented using documentation comments.
* #345: Fix cropping of sidebar scroll bar with ``stickysidebar``
option of the default theme.
* #341: Always generate UNIX newlines in the quickstart Makefile.
* #338: Fix running with ``-C`` under Windows.
* In autodoc, allow customizing the signature of an object where
the built-in mechanism fails.
* #331: Fix output for enumerated lists with start values in LaTeX.
* Make the ``start-after`` and ``end-before`` options to the
``literalinclude`` directive work correctly if not used together.
* #321: Fix link generation in the LaTeX builder.
Release 0.6.4 (Jan 12, 2010)
============================
* Improve the handling of non-Unicode strings in the configuration.
* #316: Catch OSErrors occurring when calling graphviz with
arguments it doesn't understand.
* Restore compatibility with Pygments >= 1.2.
* #295: Fix escaping of hyperref targets in LaTeX output.
* #302: Fix links generated by the ``:doc:`` role for LaTeX output.
* #286: collect todo nodes after the whole document has been read;
this allows placing substitution references in todo items.
* #294: do not ignore an explicit ``today`` config value in a
LaTeX build.
* The ``alt`` text of inheritance diagrams is now much cleaner.
* Ignore images in section titles when generating link captions.
* #310: support exception messages in the ``testoutput`` blocks of
the ``doctest`` extension.
* #293: line blocks are styled properly in HTML output.
* #285: make the ``locale_dirs`` config value work again.
* #303: ``html_context`` values given on the command line via ``-A``
should not override other values given in conf.py.
* Fix a bug preventing incremental rebuilds for the ``dirhtml``
builder.
* #299: Fix the mangling of quotes in some literal blocks.
* #292: Fix path to the search index for the ``dirhtml`` builder.
* Fix a Jython compatibility issue: make the dependence on the
``parser`` module optional.
* #238: In autodoc, catch all errors that occur on module import,
not just ``ImportError``.
* Fix the handling of non-data, but non-method descriptors in autodoc.
* When copying file times, ignore OSErrors raised by ``os.utime()``.
Release 0.6.3 (Sep 03, 2009)
============================
* Properly add C module filenames as dependencies in autodoc.
* #253: Ignore graphviz directives without content instead of
raising an unhandled exception.
* #241: Fix a crash building LaTeX output for documents that contain
a todolist directive.
* #252: Make it easier to change the build dir in the Makefiles
generated by quickstart.
* #220: Fix CSS so that displaymath really is centered.
* #222: Allow the "Footnotes" header to be translated.
* #225: Don't add whitespace in generated HTML after inline tags.
* #227: Make ``literalinclude`` work when the document's path
name contains non-ASCII characters.
* #229: Fix autodoc failures with members that raise errors
on ``getattr()``.
* #205: When copying files, don't copy full stat info, only
modification times.
* #232: Support non-ASCII metadata in Qt help builder.
* Properly format bullet lists nested in definition lists for LaTeX.
* Section titles are now allowed inside ``only`` directives.
* #201: Make ``centered`` directive work in LaTeX output.
* #206: Refuse to overwrite an existing master document in
sphinx-quickstart.
* #208: Use MS-sanctioned locale settings, determined by the
``language`` config option, in the HTML help builder.
* #210: Fix nesting of HTML tags for displayed math from pngmath
extension.
* #213: Fix centering of images in LaTeX output.
* #211: Fix compatibility with docutils 0.5.
Release 0.6.2 (Jun 16, 2009)
============================
* #130: Fix obscure IndexError in doctest extension.
* #167: Make glossary sorting case-independent.
* #196: Add a warning if an extension module doesn't have a
``setup()`` function.
* #158: Allow '..' in template names, and absolute template paths;
Jinja 2 by default disables both.
* When highlighting Python code, ignore extra indentation before
trying to parse it as Python.
* #191: Don't escape the tilde in URIs in LaTeX.
* Don't consider contents of source comments for the search index.
* Set the default encoding to ``utf-8-sig`` to handle files with a
UTF-8 BOM correctly.
* #178: apply ``add_function_parentheses`` config value to C
functions as promised.
* #173: Respect the docutils ``title`` directive.
* #172: The ``obj`` role now links to modules as promised.
* #19: Tables now can have a "longtable" class, in order to get
correctly broken into pages in LaTeX output.
* Look for Sphinx message catalogs in the system default path before
trying ``sphinx/locale``.
* Fix the search for methods via "classname.methodname".
* #155: Fix Python 2.4 compatibility: exceptions are old-style
classes there.
* #150: Fix display of the "sphinxdoc" theme on Internet Explorer
versions 6 and 7.
* #146: Don't fail to generate LaTeX when the user has an active
``.docutils`` configuration.
* #29: Don't generate visible "-{-}" in option lists in LaTeX.
* Fix cross-reference roles when put into substitutions.
* Don't put image "alt" text into table-of-contents entries.
* In the LaTeX writer, do not raise an exception on too many section
levels, just use the "subparagraph" level for all of them.
* #145: Fix autodoc problem with automatic members that refuse to be
getattr()'d from their parent.
* If specific filenames to build are given on the command line,
check that they are within the source directory.
* Fix autodoc crash for objects without a ``__name__``.
* Fix intersphinx for installations without urllib2.HTTPSHandler.
* #134: Fix pending_xref leftover nodes when using the todolist
directive from the todo extension.
Release 0.6.1 (Mar 26, 2009)
============================
* #135: Fix problems with LaTeX output and the graphviz extension.
* #132: Include the autosummary "module" template in the distribution.
Release 0.6 (Mar 24, 2009)
==========================
New features added
------------------
* Incompatible changes:
- Templating now requires the Jinja2 library, which is an enhanced
version of the old Jinja1 engine. Since the syntax and semantic
is largely the same, very few fixes should be necessary in
custom templates.
- The "document" div tag has been moved out of the ``layout.html``
template's "document" block, because the closing tag was already
outside. If you overwrite this block, you need to remove your
"document" div tag as well.
- The ``autodoc_skip_member`` event now also gets to decide
whether to skip members whose name starts with underscores.
Previously, these members were always automatically skipped.
Therefore, if you handle this event, add something like this
to your event handler to restore the old behavior::
if name.startswith('_'):
return True
* Theming support, see the new section in the documentation.
* Markup:
- Due to popular demand, added a ``:doc:`` role which directly
links to another document without the need of creating a
label to which a ``:ref:`` could link to.
- #4: Added a ``:download:`` role that marks a non-document file
for inclusion into the HTML output and links to it.
- Added an ``only`` directive that can selectively include text
based on enabled "tags". Tags can be given on the command
line. Also, the current builder output format (e.g. "html" or
"latex") is always a defined tag.
- #10: Added HTML section numbers, enabled by giving a
``:numbered:`` flag to the ``toctree`` directive.
- #114: Added an ``abbr`` role to markup abbreviations and
acronyms.
- The ``literalinclude`` directive now supports several more
options, to include only parts of a file.
- The ``toctree`` directive now supports a ``:hidden:`` flag,
which will prevent links from being generated in place of
the directive -- this allows you to define your document
structure, but place the links yourself.
- #123: The ``glossary`` directive now supports a ``:sorted:``
flag that sorts glossary entries alphabetically.
- Paths to images, literal include files and download files
can now be absolute (like ``/images/foo.png``). They are
treated as relative to the top source directory.
- #52: There is now a ``hlist`` directive, creating a compact
list by placing distributing items into multiple columns.
- #77: If a description environment with info field list only
contains one ``:param:`` entry, no bullet list is generated.
- #6: Don't generate redundant ``
`` for top-level TOC tree
items, which leads to a visual separation of TOC entries.
- #23: Added a ``classmethod`` directive along with ``method``
and ``staticmethod``.
- Scaled images now get a link to the unscaled version.
- SVG images are now supported in HTML (via ``