* 40: Fix ``safe_repr`` function to decode bytestrings with non-ASCII
characters correctly.
* 37: Allow configuring sphinx-apidoc via ``SPHINX_APIDOC_OPTIONS``.
* 34: Restore Python 2.4 compatibility.
* 36: Make the "bibliography to TOC" fix in LaTeX output specific to
the document class.
* 695: When the highlight language "python" is specified explicitly,
do not try to parse the code to recognize non-Python snippets.
* 859: Fix exception under certain circumstances when not finding
appropriate objects to link to.
* 860: Do not crash when encountering invalid doctest examples, just
emit a warning.
* 864: Fix crash with some settings of :confval:`modindex_common_prefix`.
* 862: Fix handling of ``-D`` and ``-A`` options on Python 3.
* 851: Recognize and warn about circular toctrees, instead of running
into recursion errors.
* 853: Restore compatibility with docutils trunk.
* 852: Fix HtmlHelp index entry links again.
* 854: Fix inheritance_diagram raising attribute errors on builtins.
* 832: Fix crashes when putting comments or lone terms in a glossary.
* 834, 818: Fix HTML help language/encoding mapping for all Sphinx
supported languages.
* 844: Fix crashes when dealing with Unicode output in doctest extension.
* 831: Provide ``--project`` flag in setup_command as advertised.
* 875: Fix reading config files under Python 3.
* 876: Fix quickstart test under Python 3.
* 870: Fix spurious KeyErrors when removing documents.
* 892: Fix single-HTML builder misbehaving with the master document in a
subdirectory.
* 873: Fix assertion errors with empty ``only`` directives.
* 816: Fix encoding issues in the Qt help builder.
Remove devel/py-ctypes (only needed by and supporting python24).
Remove PYTHON_VERSIONS_ACCEPTED and PYTHON_VERSIONS_INCOMPATIBLE
lines that just mirror defaults now.
Miscellaneous cleanup while editing all these files.
* 809: Include custom fixers in the source distribution.
Changes 1.1.1:
* 791: Fix QtHelp, DevHelp and HtmlHelp index entry links.
* 792: Include "sphinx-apidoc" in the source distribution.
* 797: Don't crash on a misformatted glossary.
* 801: Make intersphinx work properly without SSL support.
* 805: Make the ``Sphinx.add_index_to_domain`` method work correctly.
* 780: Fix Python 2.5 compatibility.
While here,
* fixes egg-info `requires' information for python>2.6, with bump dependency on
py-docutils with egg-info.
Release 1.0.8 (Sep 23, 2011)
============================
* #627: Fix tracebacks for AttributeErrors in autosummary generation.
* Fix the ``abbr`` role when the abbreviation has newlines in it.
* #727: Fix the links to search results with custom object types.
* #648: Fix line numbers reported in warnings about undefined
references.
* #696, #666: Fix C++ array definitions and template arguments
that are not type names.
* #633: Allow footnotes in section headers in LaTeX output.
* #616: Allow keywords to be linked via intersphinx.
* #613: Allow Unicode characters in production list token names.
* #720: Add dummy visitors for graphviz nodes for text and man.
* #704: Fix image file duplication bug.
* #677: Fix parsing of multiple signatures in C++ domain.
* #637: Ignore Emacs lock files when looking for source files.
* #544: Allow .pyw extension for importable modules in autodoc.
* #700: Use ``$(MAKE)`` in quickstart-generated Makefiles.
* #734: Make sidebar search box width consistent in browsers.
* #644: Fix spacing of centered figures in HTML output.
* #767: Safely encode SphinxError messages when printing them to
sys.stderr.
* #611: Fix LaTeX output error with a document with no sections but
a link target.
* Correctly treat built-in method descriptors as methods in autodoc.
* #706: Stop monkeypatching the Python textwrap module.
* #657: viewcode now works correctly with source files that have
non-ASCII encoding.
* #669: Respect the ``noindex`` flag option in py:module directives.
* #675: Fix IndexErrors when including nonexisting lines with
:rst:dir:`literalinclude`.
* #676: Respect custom function/method parameter separator strings.
* #682: Fix JS incompatibility with jQuery >= 1.5.
* #693: Fix double encoding done when writing HTMLHelp .hhk files.
* #647: Do not apply SmartyPants in parsed-literal blocks.
* C++ domain now supports array definitions.
* Fix wrong generation of directives of static methods in autosummary.
* Import PIL as ``from PIL import Image``.
* Fix longtables with captions in LaTeX output.
* Make token references work as hyperlinks again in LaTeX output.
* Show warnings by default when reference labels cannot be found.
* Include line number when complaining about missing reference
targets in nitpicky mode.
* Fix inline display of graphviz diagrams in LaTeX output.
* Build using app.build() in setup command.
* Fix a bug in the inheritance diagram exception that caused base
classes to be skipped if one of them is a builtin.
* Fix general index links for C++ domain objects.
* Make admonition boundaries in LaTeX output visible.
* Fix KeyErrors occurring on rebuild after removing a file.
* Fix a traceback when removing files with globbed toctrees.
* If an autodoc object cannot be imported, always re-read the
document containing the directive on next build.
* If an autodoc object cannot be imported, show the full traceback
of the import error.
* Fix a bug where the removal of download files and images wasn't
noticed.
* Implement ``~`` cross-reference prefix for the C domain.
* Fix regression of LaTeX output.
* Fix lookup of class attribute documentation on descriptors
so that comment documentation now works.
* Fix traceback with ``only`` directives preceded by targets.
* Fix tracebacks occurring for duplicate C++ domain objects.
* Fix JavaScript domain links to objects with ``$`` in their name.
* Open intersphinx inventories in binary mode on Windows,
since version 2 contains zlib-compressed data.
* Allow giving non-local URIs for JavaScript files, e.g.
in the JSMath extension.
* Fix traceback when ``intersphinx_mapping`` is empty.
Changes 1.0.3:
* Fix internal vs. external link distinction for links coming
from a docutils table-of-contents.
* Fix the ``maxdepth`` option for the ``toctree()`` template
callable when used with ``collapse=True``.
* Fix crash parsing Python argument lists containing brackets
in string literals.
* Fix regression when building LaTeX docs with figures that
don't have captions.
* Fix inheritance diagrams for classes that are not picklable.
* Introduce separate background color for the sidebar collapse
button, making it easier to see.
* Fix small layout bugs in several builtin themes.
* 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.
* New builders:
- Added a builder for the Epub format.
- Added a builder for manual pages.
- Added a single-file HTML builder.
* 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`.
* Incompatible changes:
- Templating now requires the Jinja2 library
- The "document" div tag has been moved out of the ``layout.html``
template's "document" block
- The ``autodoc_skip_member`` event now also gets to decide
whether to skip members whose name starts with underscores.
* Theming support
* 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.
- 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".
- Added HTML section numbers, enabled by giving a
``:numbered:`` flag to the ``toctree`` directive.
- Scaled images now get a link to the unscaled version.
- SVG images are now supported in HTML (via ``<object>`` and
``<embed>`` tags).
* Builders:
- New builder for Qt help collections, by Antonio Valentino.
- The new ``DirectoryHTMLBuilder`` (short name ``dirhtml``) creates
a separate directory for every page, and places the page there
in a file called ``index.html``.
* New translations:
* Bug Fixes.
Sphinx is a tool that makes it easy to create intelligent and beautiful
documentation for Python projects (or other documents consisting of multiple
reStructuredText sources), written by Georg Brandl. It was originally
created to translate the new Python documentation, but has now been cleaned
up in the hope that it will be useful to many other projects.
Sphinx uses reStructuredText as its markup language, and many of its
strengths come from the power and straightforwardness of reStructuredText
and its parsing and translating suite, the Docutils.
Although it is still under constant development, the following features are
already present, work fine and can be seen "in action" in the Python docs:
* Output formats: HTML (including Windows HTML Help), plain text and LaTeX,
for printable PDF versions
* Extensive cross-references: semantic markup and automatic links for
functions, classes, glossary terms and similar pieces of information
* Hierarchical structure: easy definition of a document tree, with automatic
links to siblings, parents and children
* Automatic indices: general index as well as a module index
* Code handling: automatic highlighting using the Pygments highlighter
* Various extensions are available, e.g. for automatic testing of snippets
and inclusion of appropriately formatted docstrings.