Bug fixes:
* grep no longer mishandles patterns like [^^-~] in unibyte locales.
* grep -i in a multibyte, non-UTF8 locale could be up to 200 times slower
than in 2.16.
Changes from previous:
----------------------
4.005 2014-01-07 20:06:10-05:00 America/New_York
require a newer PerlMunger to deal with non-ASCII input
4.004 2014-01-04 13:55:59 America/New_York
fix the breakage of [PodWeaver] with weaver.ini
4.003 2014-01-04 08:17:17 America/New_York
allow config_plugin to be given more than once
4.002 2013-11-12 13:15:37 America/New_York
add weaver config to plugin config dump
4.001 2013-11-02 11:40:33 America/New_York
stable release of v4
4.000 2013-10-20 08:15:20 America/New_York (TRIAL RELEASE)
update to Pod::Weaver 4!
3.102000 2013-09-25 20:56:36 America/New_York
include the plugin configuration details in x_Dist_Zilla metadata
(thanks, Karen Etheridge!)
3.101642 2013-07-25 14:05:58 America/Los_Angeles
pass the DZ logger to Pod::Weaver along correctly if weaver.ini exists
document use of FileFinderUser and the finder attribute
remove unused module loading, defer other loading until runtime
Upstream changes:
2.021 2014-02-20
- Fixed numerous bugs in the string parsing code, including the
one reported in [RT #63918] by Frank Doepper.
- [RT #41049] Rewrote literal string parsing to prevent a stack
overflow due to an inefficient regex (reported by Sergei
Fetisov).
- [RT #91822] Fix compression of GIF images to ensure that output
codes don't exceed 12 bits (reported by Vadim Repin).
- The RunLengthDecode filter didn't actually work. Its code has
been rewritten and now passes basic encoding and decoding tests.
- Fix Code128 barcode switching from Code C to Code B in certain
cases (reported by Doru Petrescu).
Release 4.0.0 - 2014/02/09
--------------------------
* Bump version to 4.0.0!
Improvements
^^^^^^^^^^^^
* [normalizer] Supported to show "checks" which is used for calculating next character position.
Use WITH_CHECKS flag to enable this feature.
* [deb] Dropped Ubuntu 13.04 support.
Fixes
^^^^^
* Fixed a crash bug that an object in grn_expr is used after it is freed.
Normally Groonga server users aren't affected this bug. This bug mainly affects Rroonga users.
Because this bug is occured by specifying column name including pseudo column name -
such as '_key' - Rroonga users may use the usage.
* Fixed not to execute unexpected cascade delete which is introduced Groonga 3.0.8 release.
If source's range and index's domain are different, Groonga doesn't execute cascade delete.
[groonga-dev,02073] [Reported by yoku]
* Fixed not to publish grn_snip structure. Use grn_obj instead of grn_snip.
If you use grn_snip_close, please replace grn_snip_close to grn_obj_close.
* [snippet_html] Fixed a crash bug when --query is empty.
[groonga-dev,02097] [Reported by Naoya Murakami]
* [snippet_html] Fixed to suppress ALERT level message when contents of column is empty text.
[groonga-dev,02097] [Reported by Naoya Murakami]
* [groonga-httpd] Fixed a bug "off" is used as path name in groonga_query_log_path.
[groonga-dev,02113] [Reported by Ryoji Yamamoto]
Thanks
^^^^^^
* yoku
* Naoya Murakami
* Ryoji Yamamoto
- Bump the version to indicate compatibility with Xapian 1.2.17.
- t/symbol-test/Makefile.PL: Pass $CPPFLAGS and $CXXFLAGS from the
environment through to the sub-build, fixing symbol-test.t failure
when built with CPPFLAGS=-D_GLIBCXX_DEBUG. [Olly Betts]
documentation:
* docs/overview.html: Add Abiword as an example use of --filter, based on patch
from Frank J Bruzzaniti (fixes#383).
portability:
* Fix "no previous declaration" warning on platforms which don't have
mkdtemp().
indexers:
* omindex:
+ Fix off-by-one when finding documents to delete which would sometimes cause
omindex to fail to delete documents from the database when they weren't
refound during an index update.
+ Decode dates in xlsx files.
+ Ignore extensions 'adm', 'cur', and 'ico' by default.
+ Group-readable files which are owner-readable but not world-readable should
still get a "readable by owner" term added. Reported by Emmanuel Garette.
build system:
* Compress source tarballs with xz instead of gzip.
* configure: Sync compiler warning flag machinery against xapian-core. The
changes are special handling for clang, passing -fshow-column where
supported, and handling for new warning flags in GCC 4.6 and 4.7.
API:
* Enquire::set_sort_by_relevance_then_value() and
Enquire::set_sort_by_relevance_then_key(): Fix sense of reverse parameter.
Reported by "boomboo" on IRC.
* BM25Weight: Fix case where (k1 == 0 || b == 0) but k2 != 0. Reported by
"boomboo" on IRC.
* Unicode::tolower(): Fix to give correct results for U+01C5, U+01C8, U+01CB,
and U+01F2 (previously these were left unchanged).
* PositionIterator,PostingIterator,TermIterator,ValueIterator: Don't segfault
if skip_to() or check() is called on an iterator which is already at_end().
Reported by David Bremner.
* ValueCountMatchSpy: get_description() on a default-constructed
ValueCountMatchSpy object no longer fails when xapian-core is built with
--enable-log.
* ValueCountMatchSpy: get_total() on a default-constructed ValueCountMatchSpy
object now returns 0 rather than segfaulting.
testsuite:
* Automatically probe for and hook in eatmydata to the testsuite using the
wrapper script it now includes.
* Fix apitest to build when brass, chert or flint are disabled.
* If -v/--verbose is specified more than once to a test program, show the
diagnostic output for passing tests as well as failing/skipped ones.
* queryparsertest: Change qp_scale1 to time 5 repetitions of the large query to
help average out variations.
* queryparsertest: Add test coverage for explicit synonym of a term with a
prefix (e.g. ~foo:search).
* apitest: Remove code from registry* testcases which tries to test the
consequences of throwing an exception from a destructor - it's complex to
ensure we don't leak memory while doing this (it seems GCC doesn't release
the object in this case, but clang does), and it's generally frowned upon,
plus C++11 makes destructors noexcept by default.
* Fix "make check" to actually removed cached databases first, as is
intended.
brass backend:
* Fix handling of invalid block sizes passed to Xapian::Brass::open() - the
size gets fixed as documented, but the uncorrected size was passed to the
base file (and abort() was called if 0 was passed).
* Validate "dir_end" when reading a block. (fixes#592)
* When moving a cursor on a read-only table, check if the block we want is in
the internal cursor. We already do this for a writable table, as it is
necessary for correctness, but it's a cheap check and may avoid asking the
OS for a block we actually already have.
* Correctly report the database as closed rather than 'Bad file descriptor'
in certain cases.
* Reuse a cursor for reading values from valuestreams rather than creating
a new one each time. This can dramatically reduce the number of blocks
redundantly reread when sorting by value. The rereads will generally get
served from VM cache, but there's still an overhead to that.
chert backend:
* Fix handling of invalid block sizes passed to Xapian::Chert::open() - the
size gets fixed as documented, but the uncorrected size was passed to the
base file (and abort() was called if 0 was passed).
* Validate "dir_end" when reading a block. (fixes#592)
* When moving a cursor on a read-only table, check if the block we want is in
the internal cursor. We already do this for a writable table, as it is
necessary for correctness, but it's a cheap check and may avoid asking the
OS for a block we actually already have.
* Correctly report the database as closed rather than 'Bad file descriptor'
in certain cases.
* Reuse a cursor for reading values from valuestreams rather than creating
a new one each time. This can dramatically reduce the number of blocks
redundantly reread when sorting by value. The rereads will generally get
served from VM cache, but there's still an overhead to that.
flint backend:
* Fix handling of invalid block sizes passed to Xapian::Flint::open() - the
size gets fixed as documented, but the uncorrected size was passed to the
base file (and abort() was called if 0 was passed).
* Validate "dir_end" when reading a block. (fixes#592)
* When moving a cursor on a read-only table, check if the block we want is in
the internal cursor. We already do this for a writable table, as it is
necessary for correctness, but it's a cheap check and may avoid asking the
OS for a block we actually already have.
* Correctly report the database as closed rather than 'Bad file descriptor'
in certain cases.
build system:
* configure: Improve reporting of GCC version.
* Use -no-fast-install on platforms where -no-install causes libtool to emit a
warning.
* docs/Makefile.am: Fix handling of MAINTAINER_NO_DOCS.
* Include UnicodeData.txt and the script to generate the unicode tables from
it.
* Compress source tarballs with xz instead of gzip.
* Split XAPIAN_LIBS out of XAPIAN_LDFLAGS so that -l flags for libraries
configure detects are needed appear after -L flags specified by the user
that may be needed to find such libraries. (fixes#626)
* XO_LIB_XAPIAN now handles the user specifying a relative path in
XAPIAN_CONFIG, e.g.: "./configure XAPIAN_CONFIG=../xapian-core/xapian-config"
* Adjust XO_LIB_XAPIAN to strip _gitNNN suffix from snapshot versions.
* configure: Handle git snapshot naming when calculating REVISION.
* configure: Enable -fshow-column for GCC - things like vim's quickfix mode
will then jump to the appropriate column for a compiler error or warning, not
just the appropriate line.
* configure: Report GCC version in configure output.
documentation:
* postingsource.rst: Clarify a couple of points (reported by "vHanda" on IRC).
* The API documentation shipped with the release is now generated with
doxygen 1.8.5 instead of 1.5.9, which is most evident in the different
HTML styling newer doxygen uses.
* Document how Utf8Iterator handles invalid UTF-8 in API documentation.
* Improve how descriptions of deprecated features appear in the API
documentation.
* docs/remote_protocol.rst: Correct error in documentation of REPLY_DOCDATA
message.
* docs/overview.rst: Correct documentation for how to specify "prog" remote
databases in stub files.
* Direct users to git in preference to SVN - we'll be switching entirely in
the near future.
portability:
* Protect the ValueIterator::check() method against Mac OS X SDK headers
which define a check() macro.
* Fix warning from xlC compiler.
* Avoid use of grep -e in configure, as /usr/bin/grep on Solaris doesn't
support -e.
* Fix check for flags which might be needed for ANSI mode for compilers called
'cxx'.
* configure: Improve handling of Sun's C++ compiler - trick libtool into not
adding -library=Cstd, and prefer -library=stdcxx4 if supported. Explicitly
add -library=Crun which seems to be required, even though the documentation
suggests otherwise.
* configure: clang doesn't support -Wstrict-null-sentinel or -Wlogical-op, so
don't pass it these options.
* Fix build errors and warnings with mingw.
* Suppress "unused local typedef" warnings from GCC 4.8.
* If the compiler supports C++11, use static_assert to implement
CompileTimeAssert.
* tests/zlib-vg.c: Fix two warnings when compiled with clang.
* Fix failure when built with -D_GLIBCXX_DEBUG - we were modifying the top()
element of a heap before calling pop(), such that the heap comparison
operation (which is called when -D_GLIBCXX_DEBUG is on to verify the heap is
valid) would read off the end of the data. In a normal build, this issue
would likely never manifest.
* configure: When generating ABI compatibility checks in xapian/version.h, pass
$CXXFLAGS and $CPPFLAGS to $CXXCPP as they could contain options which affect
the ABI (such as -fabi-version for GCC). (Fixes#622)
* Microsoft GUIDs in binary form have reversed byte order in the first three
components compared to standard UUIDs, so the same database would report a
different UUID on Windows to on other platforms. We now swap the bytes to
match the standard order. With this fix, the UUIDs of existing databases
will appear to change on Windows (except in rare "palindronic" cases).
* Fix a couple of issues to get Xapian to build and work on AIX.
* common/safeuuid.h: Remove bogus take-address-of from uuid handling code for
NetBSD and OpenBSD.
* Under cygwin, use cygwin_conv_path() if using a new enough cygwin version,
rather than the now deprecated cygwin_conv_to_win32_path(). Reported by
"Haroogan" on the xapian-devel mailing list.
* common/safeuuid.h: Add missing '#include <cstdlib>' and qualify free with std.
* Fix 'unused label' warning when chert backend is disabled.
* xapian.h: Add check for Wt headers being included before us and defining
'slots' as a macro - if they are, give a clear error advising how to work
around this (previously compilation would fail with a confusing error).
tools:
* xapian-chert-update: Fix -b to work rather than always segfaulting (reported
in http://bugs.debian.org/716484).
* xapian-chert-update: The documented alias --blocksize for -b has never
actually been supported, so just drop mentions of it from --help and the man
page.
* xapian-check:
+ Fix chert database check that first docid in each doclength chunk is more
than the last docid in the previous chunk - previously this didn't actually
work.
+ Fix database check not to falsely report "position table: Junk after
position data" whenever there are 7 unused bits (7 is OK, *more* than 7
isn't).
+ Fix to report block numbers correctly for links within the B-tree.
+ If the METAINFO key is missing, only report it once per table.
+ Fix database consistency checking to always open all the tables at the same
revision - not doing this could lead to false errors being reported after a
commit interrupted by the process being killed or the machine crashing.
Reported by Joey Hess in http://bugs.debian.org/724610
examples:
* quest: Add --check-at-least option.
debug code:
* Fix assertion failure for when an OrPostList decays to an AndPostList - the
ordering of the subqueries by estimated termfreq may not be the same as it
was when the OrPostList was constructed, as the subqueries may themselves
have decayed. Reported by Michel Pelletier.
* Fix -Wcast-qual warning from GCC 4.7 when configured with --enable-log.
Mark as not ready for python-3.x.
GTK-Doc 1.20 (Feb 16 2014)
============
Important notice - starting with the next release these long deprecated
features will be removed, please write to gtk-doc-list@gnome.org and tell us
your concerns:
o gtkdoc-scanobj (only used for gtkobject)
o return values need to be documented using "Returns:". We will remove the
heuristic that turns a paragraph starting with "Returns " into return docs.
o gtkdoc-mktmpl - please move all the comments into the sources.
o generating html via sgml tools (jade/openjade), using xsltproc and
docbook-xslt is pretty common and preferred since version 1.6
Changes
o 605537 : Returns: listed among parameters
o 624001 : Support attribute-based method to deprecate symbols
o 662424 : Class hierarchy about interfaces not generated by default
o 665926 : should not have to document object structures
o 666509 : Specifying --enable-gtk-doc should not be required to build source packages
o 669417 : Duplicate IDs generated for unions registered as boxed types
o 671519 : Self-test relies on nonportable (GNU enhanced) 'date' command
o 692367 : gtkdocize should take a srcdir argument
o 696570 : style updates
o 697940 : Race condition between setup-build.stamp and scan-build.stamp
o 701259 : /bin/bash: -chmod: command not found
o 701638 : Support automake parallel test harness (fix error with GTKDOC_CHECK)
o 706404 : Minor bug in gtkdoc-mkdb
o 706438 : Empty lines added at the beginning and at the end of a programlisting
o 707426 : master is broken in picking up flavour from configure.ac
o 707717 : Support " Deprecated: X.Y "
o 708268 : New *-insensitive.png files are not distributes
o 710478 : gtkdoc-mkdb: Don't complain about annotations with hyphen
o 711111 : gtkdoc-mkdb: sort entries in the glossary
o 711598 : gtkdoc-scan doesn't ignore decorators containing parentheses
o 719644 : docs: make yelp usage conditional in manual
o 719645 : configure: emit message when looking for yelp
o 720061 : make: create subdirectories of the content_files to the builddir
o 721228 : configure: search for xml catalog in XDG_DATA_DIRS
o 722479 : cp -u is not portable
o 723118 : Mark |[ blocks as CDATA
o 723288 : Fix MarkDown support
o 723417 : New MarkDown parser
o 723696 : Add support for blockquote
o 723812 : Add support for reference links
o 723913 : List in markdown: < p > inside the last element of a < ul > list
o 723991 : Improve the display of the synopsis
o 724002 : gtkdoc-scan: Fix use of uninitialised value in trace logging
Contributors
Alban Browaeys
Alexander Kanavin
Carlos Garcia Campos
Christian Kirbach
Daniel Mustieles
David King
David Nečas
Dieter Verfaillie
Dimitris Spingos
Hib Eris
Matthias Clasen
Philip Chimento
Philip Withnall
Rafael Ferreira
Rico Tzschichholz
Ryan Lortie
Sebastian Rasmussen
Sébastien Wilmet
Stefan Sauer
Stef Walter
William Jon McCann
Zbigniew Jędrzejewski-Szmek
3.3.1 (2014-02-12)
==================
Features added
--------------
Bugs fixed
----------
* LP#1014290: HTML documents parsed with ``parser.feed()`` failed to find
elements during tag iteration.
* LP#1273709: Building in PyPy failed due to missing support for
``PyUnicode_Compare()`` and ``PyByteArray_*()`` in PyPy's C-API.
* LP#1274413: Compilation in MSVC failed due to missing "stdint.h" standard
header file.
* LP#1274118: iterparse() failed to parse BOM prefixed files.
anthony_mallet.
TinyXML parses an XML document, and builds from that a Document Object Model
(DOM) that can be read, modified, and saved.
TinyXML uses a Document Object Model (DOM), meaning the XML data is parsed into
a C++ objects that can be browsed and manipulated, and then written to disk or
another output stream. You can also construct an XML document from scratch with
C++ objects and write this to disk or another output stream.
TinyXML doesn't parse or use DTDs (Document Type Definitions) or XSLs
(eXtensible Stylesheet Language.) There are other parsers out there (check out
www.sourceforge.org, search for XML) that are much more fully featured. But
they are also much bigger, take longer to set up in your project, have a higher
learning curve, and often have a more restrictive license. If you are working
with browsers or have more complete XML needs, TinyXML is not the parser for
you.
Upstream changes:
3.1.1 2014-01-24 07:50:52+0900
[DOCUMENTS]
- Fix some typos (#102)
- Add an explanation of `validate()` (#101)
[BUG FIXES]
- Fix a race condition on making cache dirs (#103)
recent version from CPAN into devel/p5-Encode.
Upstream changes:
$Revision: 2.57 $ $Date: 2014/01/03 04:52:36 $
! encengine.c
Pulled: sun compiler (maybe others) doesn't like UTF-8 in the source
https://github.com/dankogai/p5-encode/pull/17
! bin/enc2xs
Merged RT#91763: POD errors
https://rt.cpan.org/Ticket/Display.html?id=91763
2.56 2013/12/22 13:40:00
! Encode.pm t/Encode.t
Merged RT#91569: [PATCH] decode_utf8 and non-PVs
https://rt.cpan.org/Ticket/Display.html?id=91569
2.55 2013/09/14 07:51:59
! Encode.pm
Makefile.PL
Unicode/Unicode.pm
lib/Encode/Alias.pm
lib/Encode/CN/HZ.pm
lib/Encode/Encoder.pm
lib/Encode/Encoding.pm
lib/Encode/GSM0338.pm
lib/Encode/Guess.pm
lib/Encode/JP/JIS7.pm
lib/Encode/KR/2022_KR.pm
lib/Encode/MIME/Header.pm
lib/Encode/MIME/Header/ISO_2022_JP.pm
lib/Encode/Unicode/UTF7.pm
t/Encoder.t
replaced 'use base' with 'use parent'
base.pm is an heavy module for what it is used for.
Fortunately it has a tiny replacement, parent.pm
that is on CPAN but also in perl core since 5.10.1.
https://github.com/dankogai/p5-encode/pull/15
Acora is 'fgrep' for Python, a fast multi-keyword text search engine.
Based on a set of keywords, it generates a search automaton (DFA) and runs it
over string input, either unicode or bytes.
It is based on the Aho-Corasick algorithm and an NFA-to-DFA powerset
construction.
Acora comes with both a pure Python implementation and a fast binary module
written in Cython. However, note that the current construction algorithm is not
suitable for really large sets of keywords (i.e. more than a couple of
thousand).
easy to author semantically-useful documents with special consideration
given to HTML5 output. Things like blog posts, wiki articles, and
documentation are meant to be easy to write using Nimble.
Changelog:
libodfgen 0.0.3
- handle more table properties
- more SVG path commands
- allow to define center of rotation for a textbox
- make linked text boxes more robust
- add support for generating presentations (using libetonyek)
- start on API documentation
as not buildable even if just one of their dependencies is not, because
otherwise the dependency resolving step doesn't finish and the build
is not started.
For this reason, re-add "PYTHON_VERSIONS_INCOMPATIBLE= 33 # py-gtk2 via py-pycha"
python33. Its dependencies are, but not the package itself. From CHANGELOG:
0.6.0 - 20130810
* Add support for Python 3
* Allow to pass only source to Template
Update DEPENDS
Upstream changes:
0.200001 2014-01-12 15:46:22-05:00 America/New_York
- there's now also a post_code_replacer, used to generate replacements
for Pod removed after the final bits of code, in case you were only
worried about affecting code line numbers
Upstream changes:
0.103000 2014-01-12 09:03:06-05:00 America/New_York
Pod::Elemental::Document only adds leading =pod or trailing =cut if
they are not already present
Release 3.1.2 - 2014/01/29
--------------------------
Improvements
^^^^^^^^^^^^
* [doc] Updated to caplitalized "Groonga" terms in documentation. [Patch by cosmo0920] [GitHub#136, #137, #138, #139, #140, #141, #142, #143, #144, #145, #146, #147, #148, #149, #150, #151]
* Supported to customize the value of lock timeout. See :doc:`/reference/api/global_configurations` about details.
[groonga-dev,02017] [Suggested by yoku]
* [doc] Added description about the value of lock timeout.
* Enabled ``GRN_JA_SKIP_SAME_VALUE_PUT`` by default. In the previous releases, the value of
this configuration is 'no'. This change affects reducing the size of Groonga database.
* Supported multiple indexes including a nested index and multiple keywords query.
This change improves missing search results isssue when narrowing down by multiple keywords query.
* Added API to customize normalizer for snippet.
Fixes
^^^^^
* Fixed not to use index for empty query. This change enables you to search even though empty query.
Note that this means that there is performance penalty if many empty records exist.
[groonga-dev,02052] [Reported by Naoya Murakami]
* Fixed the behaviour about return value of "X || Y" and "X && Y" for adjusting to ECMAScript.
In "X || Y" case, if either X or Y satisfy the condition, it returns X itself or Y itself instead of 1 or 0.
* In "X && Y" case, if X and Y satisfy the condition, it returns X itself instead of 1.
if X doesn't satisfy the condition, it returns false instead of 0.
* Fixed to return null when no snippet is found. This change enables you to set the default value
of :doc:`/reference/functions/snippet_html`. In such a purpose, use "snippet_html(XXX) || 'default value'".
Thanks
^^^^^^
* cosmo0920
* yoku
* Naoya Murakami
Release 1.2.1 (released Jan 19, 2014)
=====================================
Bugs fixed
----------
* #1335: Fix autosummary template overloading with exclamation prefix like
``{% extends "!autosummary/class.rst" %}`` cause infinite recursive function
call. This was caused by PR#181.
* #1337: Fix autodoc with ``autoclass_content="both"`` uses useless
``object.__init__`` docstring when class does not have ``__init__``.
This was caused by a change for #1138.
* #1340: Can't search alphabetical words on the HTML quick search generated
with language='ja'.
* #1319: Do not crash if the :confval:`html_logo` file does not exist.
* #603: Do not use the HTML-ized title for building the search index (that
resulted in "literal" being found on every page with a literal in the
title).
* #751: Allow production lists longer than a page in LaTeX by using longtable.
* #764: Always look for stopwords lowercased in JS search.
* #814: autodoc: Guard against strange type objects that don't have
``__bases__``.
* #932: autodoc: Do not crash if ``__doc__`` is not a string.
* #933: Do not crash if an :rst:role:`option` value is malformed (contains
spaces but no option name).
* #908: On Python 3, handle error messages from LaTeX correctly in the pngmath
extension.
* #943: In autosummary, recognize "first sentences" to pull from the docstring
if they contain uppercase letters.
* #923: Take the entire LaTeX document into account when caching
pngmath-generated images. This rebuilds them correctly when
:confval:`pngmath_latex_preamble` changes.
* #901: Emit a warning when using docutils' new "math" markup without a Sphinx
math extension active.
* #845: In code blocks, when the selected lexer fails, display line numbers
nevertheless if configured.
* #929: Support parsed-literal blocks in LaTeX output correctly.
* #949: Update the tabulary.sty packed with Sphinx.
* #1050: Add anonymous labels into ``objects.inv`` to be referenced via
:mod:`~sphinx.ext.intersphinx`.
* #1095: Fix print-media stylesheet being included always in the "scrolls"
theme.
* #1085: Fix current classname not getting set if class description has
``:noindex:`` set.
* #1181: Report option errors in autodoc directives more gracefully.
* #1155: Fix autodocumenting C-defined methods as attributes in Python 3.
* #1233: Allow finding both Python classes and exceptions with the "class" and
"exc" roles in intersphinx.
* #1198: Allow "image" for the "figwidth" option of the :rst:dir:`figure`
directive as documented by docutils.
* #1152: Fix pycode parsing errors of Python 3 code by including two grammar
versions for Python 2 and 3, and loading the appropriate version for the
running Python version.
* #1017: Be helpful and tell the user when the argument to :rst:dir:`option`
does not match the required format.
* #1345: Fix two bugs with :confval:`nitpick_ignore`; now you don't have to
remove the store environment for changes to have effect.
* #1072: In the JS search, fix issues searching for upper-cased words by
lowercasing words before stemming.
* #1299: Make behavior of the :rst:dir:`math` directive more consistent and
avoid producing empty environments in LaTeX output.
* #1308: Strip HTML tags from the content of "raw" nodes before feeding it
to the search indexer.
* #1249: Fix duplicate LaTeX page numbering for manual documents.
* #1292: In the linkchecker, retry HEAD requests when denied by HTTP 405.
Also make the redirect code apparent and tweak the output a bit to be
more obvious.
* #1285: Avoid name clashes between C domain objects and section titles.
* #848: Always take the newest code in incremental rebuilds with the
:mod:`sphinx.ext.viewcode` extension.
* #979, #1266: Fix exclude handling in ``sphinx-apidoc``.
* #1302: Fix regression in :mod:`sphinx.ext.inheritance_diagram` when
documenting classes that can't be pickled.
* #1316: Remove hard-coded ``font-face`` resources from epub theme.
* #1329: Fix traceback with empty translation msgstr in .po files.
* #1300: Fix references not working in translated documents in some instances.
* #1283: Fix a bug in the detection of changed files that would try to access
doctrees of deleted documents.
* #1330: Fix :confval:`exclude_patterns` behavior with subdirectories in the
:confval:`html_static_path`.
* #1323: Fix emitting empty ``<ul>`` tags in the HTML writer, which is not
valid HTML.
* #1147: Don't emit a sidebar search box in the "singlehtml" builder.
Documentation
-------------
* #1325: Added a "Intersphinx" tutorial section. (:file:`doc/tutorial.rst`)
3.3.0 (2014-01-26)
==================
Bugs fixed
----------
* The heuristic that distinguishes file paths from URLs was tightened
to produce less false negatives.
3.3.0beta5 (2014-01-18)
=======================
Features added
--------------
* The PEP 393 unicode parsing support gained a fallback for wchar strings
which might still be somewhat common on Windows systems.
Bugs fixed
----------
* Several error handling problems were fixed throughout the code base that
could previously lead to exceptions being silently swallowed or not
properly reported.
* The C-API function ``appendChild()`` is now deprecated as it does not
propagate exceptions (its return type is ``void``). The new function
``appendChildToElement()`` was added as a safe replacement.
* Passing a string into ``fromstringlist()`` raises an exception instead of
parsing the string character by character.
Other changes
-------------
* Document cleanup code was simplified using the new GC features in
Cython 0.20.
3.3.0beta4 (2014-01-12)
=======================
Bugs fixed
----------
* The (empty) value returned by the ``attrib`` property of Entity and Comment
objects was mutable.
* Element class lookup wasn't available for the new pull parsers or when using
a custom parser target.
* Setting Element attributes on instantiation with both the ``attrib`` argument
and keyword arguments could modify the mapping passed as ``attrib``.
* LP#1266171: DTDs instantiated from internal/external subsets (i.e. through
the docinfo property) lost their attribute declarations.
Other changes
-------------
* Built with Cython 0.20pre (gitrev 012ae82eb) to prepare support for
Python 3.4.
3.3.0beta3 (2014-01-02)
=======================
Features added
--------------
* Unicode string parsing was optimised for Python 3.3 (PEP 393).
Bugs fixed
----------
* HTML parsing of Unicode strings could misdecode the input on some platforms.
* Crash in xmlfile() when closing open elements out of order in an error case.
3.3.0beta2 (2013-12-20)
=======================
Features added
--------------
* ``iterparse()`` supports the ``recover`` option.
Bugs fixed
----------
* Crash in ``iterparse()`` for HTML parsing.
* Crash in target parsing with attributes.
Other changes
-------------
* The safety check in the read-only tree implementation (e.g. used by
``PythonElementClassLookup``) raises a more appropriate ``ReferenceError``
for illegal access after tree disposal instead of an ``AssertionError``.
This should only impact test code that specifically checks the original
behaviour.
3.3.0beta1 (2013-12-12)
=======================
Features added
--------------
* New option ``handle_failures`` in ``make_links_absolute()`` and
``resolve_base_href()`` (lxml.html) that enables ignoring or
discarding links that fail to parse as URLs.
* New parser classes ``XMLPullParser`` and ``HTMLPullParser`` for
incremental parsing, as implemented for ElementTree in Python 3.4.
* ``iterparse()`` enables recovery mode by default for HTML parsing
(``html=True``).
Bugs fixed
----------
* LP#1255132: crash when trying to run validation over non-Element (e.g.
comment or PI).
* Error messages in the log and in exception messages that originated
from libxml2 could accidentally be picked up from preceding warnings
instead of the actual error.
* The ``ElementMaker`` in lxml.objectify did not accept a dict as
argument for adding attributes to the element it's building. This
works as in lxml.builder now.
* LP#1228881: ``repr(XSLTAccessControl)`` failed in Python 3.
* Raise ``ValueError`` when trying to append an Element to itself or
to one of its own descendants, instead of running into an infinite
loop.
* LP#1206077: htmldiff discarded whitespace from the output.
* Compressed plain-text serialisation to file-like objects was broken.
* lxml.html.formfill: Fix textarea form filling.
The textarea used to be cleared before the new content was set,
which removed the name attribute.
Other changes
-------------
* Some basic API classes use freelists internally for faster
instantiation. This can speed up some ``iterparse()`` scenarios,
for example.
* ``iterparse()`` was rewritten to use the new ``*PullParser``
classes internally instead of being a parser itself.
3.2.5 (2014-01-02)
==================
Bugs fixed
----------
* Crash in xmlfile() when closing open elements out of order in an error case.
* Crash in target parsing with attributes.
* LP#1255132: crash when trying to run validation over non-Element (e.g.
comment or PI).
either because they themselves are not ready or because a
dependency isn't. This is annotated by
PYTHON_VERSIONS_INCOMPATIBLE= 33 # not yet ported as of x.y.z
or
PYTHON_VERSIONS_INCOMPATIBLE= 33 # py-foo, py-bar
respectively, please use the same style for other packages,
and check during updates.
Use versioned_dependencies.mk where applicable.
Use REPLACE_PYTHON instead of handcoded alternatives, where applicable.
Reorder Makefile sections into standard order, where applicable.
Remove PYTHON_VERSIONS_INCLUDE_3X lines since that will be default
with the next commit.
Whitespace cleanups and other nits corrected, where necessary.