========== Sphinx 0.5 ========== Release 0.5.2 (Mar 24, 2009) ============================ * Properly escape ``|`` in LaTeX output. * #71: If a decoding error occurs in source files, print a warning and replace the characters by "?". * Fix a problem in the HTML search if the index takes too long to load. * Don't output system messages while resolving, because they would stay in the doctrees even if keep_warnings is false. * #82: Determine the correct path for dependencies noted by docutils. This fixes behavior where a source with dependent files was always reported as changed. * Recognize toctree directives that are not on section toplevel, but within block items, such as tables. * Use a new RFC base URL, since rfc.org seems down. * Fix a crash in the todolist directive when no todo items are defined. * Don't call LaTeX or dvipng over and over again if it was not found once, and use text-only latex as a substitute in that case. * Fix problems with footnotes in the LaTeX output. * Prevent double hyphens becoming en-dashes in literal code in the LaTeX output. * Open literalinclude files in universal newline mode to allow arbitrary newline conventions. * Actually make the ``-Q`` option work. * #86: Fix explicit document titles in toctrees. * #81: Write environment and search index in a manner that is safe from exceptions that occur during dumping. * #80: Fix UnicodeErrors when a locale is set with setlocale(). Release 0.5.1 (Dec 15, 2008) ============================ * #67: Output warnings about failed doctests in the doctest extension even when running in quiet mode. * #72: In pngmath, make it possible to give a full path to LaTeX and dvipng on Windows. For that to work, the ``pngmath_latex`` and ``pngmath_dvipng`` options are no longer split into command and additional arguments; use ``pngmath_latex_args`` and ``pngmath_dvipng_args`` to give additional arguments. * Don't crash on failing doctests with non-ASCII characters. * Don't crash on writing status messages and warnings containing unencodable characters. * Warn if a doctest extension block doesn't contain any code. * Fix the handling of ``:param:`` and ``:type:`` doc fields when they contain markup (especially cross-referencing roles). * #65: Fix storage of depth information for PNGs generated by the pngmath extension. * Fix autodoc crash when automethod is used outside a class context. * #68: Fix LaTeX writer output for images with specified height. * #60: Fix wrong generated image path when including images in sources in subdirectories. * Fix the JavaScript search when html_copy_source is off. * Fix an indentation problem in autodoc when documenting classes with the option ``autoclass_content = "both"`` set. * Don't crash on empty index entries, only emit a warning. * Fix a typo in the search JavaScript code, leading to unusable search function in some setups. Release 0.5 (Nov 23, 2008) -- Birthday release! =============================================== New features added ------------------ * Markup features: - Citations are now global: all citation defined in any file can be referenced from any file. Citations are collected in a bibliography for LaTeX output. - Footnotes are now properly handled in the LaTeX builder: they appear at the location of the footnote reference in text, not at the end of a section. Thanks to Andrew McNamara for the initial patch. - "System Message" warnings are now automatically removed from the built documentation, and only written to stderr. If you want the old behavior, set the new config value ``keep_warnings`` to ``True``. - Glossary entries are now automatically added to the index. - Figures with captions can now be referred to like section titles, using the ``:ref:`` role without an explicit link text. - Added ``cmember`` role for consistency. - Lists enumerated by letters or roman numerals are now handled like in standard reST. - The ``seealso`` directive can now also be given arguments, as a short form. - You can now document several programs and their options with the new ``program`` directive. * HTML output and templates: - Incompatible change: The "root" relation link (top left in the relbar) now points to the ``master_doc`` by default, no longer to a document called "index". The old behavior, while useful in some situations, was somewhat unexpected. Override the "rootrellink" block in the template to customize where it refers to. - The JavaScript search now searches for objects before searching in the full text. - TOC tree entries now have CSS classes that make it possible to style them depending on their depth. - Highlighted code blocks now have CSS classes that make it possible to style them depending on their language. - HTML ```` tags via the Docutils :dudir:`meta` directive are now supported. - ``SerializingHTMLBuilder`` was added as new abstract builder that can be subclassed to serialize build HTML in a specific format. The ``PickleHTMLBuilder`` is a concrete subclass of it that uses pickle as serialization implementation. - ``JSONHTMLBuilder`` was added as another ``SerializingHTMLBuilder`` subclass that dumps the generated HTML into JSON files for further processing. - The ``rellinks`` block in the layout template is now called ``linktags`` to avoid confusion with the relbar links. - The HTML builders have two additional attributes now that can be used to disable the anchor-link creation after headlines and definition links. - Only generate a module index if there are some modules in the documentation. * New and changed config values: - Added support for internationalization in generated text with the ``language`` and ``locale_dirs`` config values. Many thanks to language contributors: * Horst Gutmann -- German * Pavel Kosina -- Czech * David Larlet -- French * MichaƂ Kandulski -- Polish * Yasushi Masuda -- Japanese * Guillem Borrell -- Spanish * Luc Saffre and Peter Bertels -- Dutch * Fred Lin -- Traditional Chinese * Roger Demetrescu -- Brazilian Portuguese * Rok Garbas -- Slovenian - The new config value ``highlight_language`` set a global default for highlighting. When ``'python3'`` is selected, console output blocks are recognized like for ``'python'``. - Exposed Pygments' lexer guessing as a highlight "language" ``guess``. - The new config value ``latex_elements`` allows to override all LaTeX snippets that Sphinx puts into the generated .tex file by default. - Added ``exclude_dirnames`` config value that can be used to exclude e.g. CVS directories from source file search. - Added ``source_encoding`` config value to select input encoding. * Extensions: - The new extensions ``sphinx.ext.jsmath`` and ``sphinx.ext.pngmath`` provide math support for both HTML and LaTeX builders. - The new extension ``sphinx.ext.intersphinx`` half-automatically creates links to Sphinx documentation of Python objects in other projects. - The new extension ``sphinx.ext.todo`` allows the insertion of "To do" directives whose visibility in the output can be toggled. It also adds a directive to compile a list of all todo items. - sphinx.ext.autodoc has a new event ``autodoc-process-signature`` that allows tuning function signature introspection. - sphinx.ext.autodoc has a new event ``autodoc-skip-member`` that allows tuning which members are included in the generated content. - Respect ``__all__`` when autodocumenting module members. - The ``automodule`` directive now supports the ``synopsis``, ``deprecated`` and ``platform`` options. * Extension API: - ``Sphinx.add_node()`` now takes optional visitor methods for the HTML, LaTeX and text translators; this prevents having to manually patch the classes. - Added ``Sphinx.add_javascript()`` that adds scripts to load in the default HTML template. - Added new events: ``source-read``, ``env-updated``, ``env-purge-doc``, ``missing-reference``, ``build-finished``. * Other changes: - Added a command-line switch ``-Q``: it will suppress warnings. - Added a command-line switch ``-A``: it can be used to supply additional values into the HTML templates. - Added a command-line switch ``-C``: if it is given, no configuration file ``conf.py`` is required. - Added a distutils command ``build_sphinx``: When Sphinx is installed, you can call ``python setup.py build_sphinx`` for projects that have Sphinx documentation, which will build the docs and place them in the standard distutils build directory. - In quickstart, if the selected root path already contains a Sphinx project, complain and abort. Bugs fixed ---------- * #51: Escape configuration values placed in HTML templates. * #44: Fix small problems in HTML help index generation. * Fix LaTeX output for line blocks in tables. * #38: Fix "illegal unit" error when using pixel image widths/heights. * Support table captions in LaTeX output. * #39: Work around a bug in Jinja that caused "" to be emitted in HTML output. * Fix a problem with module links not being generated in LaTeX output. * Fix the handling of images in different directories. * #29: Support option lists in the text writer. Make sure that dashes introducing long option names are not contracted to en-dashes. * Support the "scale" option for images in HTML output. * #25: Properly escape quotes in HTML help attribute values. * Fix LaTeX build for some description environments with ``:noindex:``. * #24: Don't crash on uncommon casing of role names (like ``:Class:``). * Only output ANSI colors on color terminals. * Update to newest fncychap.sty, to fix problems with non-ASCII characters at the start of chapter titles. * Fix a problem with index generation in LaTeX output, caused by hyperref not being included last. * Don't disregard return annotations for functions without any parameters. * Don't throw away labels for code blocks.