adding license, making native code support conditional on the architecture as
in other OCaml packages and adding PLIST_VARS support.
Changelog (excluding bugfixes and changes to deal with new versions of other
packages):
- 1.2.1: Revised documentation
Addition: Pxp_event.unwrap_document
Addition: Pxp_dtd.Entity.lookup
Addition: node method entity_id
Addition: Pxp_event.close_entities
Removed: Pxp_core_types_type, Pxp_type_anchor. Pxp_core_types has now three
submodules A, S, I taking over the roles
Removed: E_pinstr_member. Instead, E_pinstr events are emitted
Renaming, and addition: `Entry_content has been renamed to
`Entry_element_content. A new `Entry_content with different semantics has
been added, now conforming to a standard production.
Improvement: The parser also accepts a BOM as UTF-8 sequence. Also, the
autodetection of the encoding for UTF-16 has been enhanced
- 1.2.0test*: New ~minimization option for the [write] and [display] methods
(user wish).
Improvement: better control what is printed as DTD for document#write and
#display
- 1.1.95: Addition of ulex lexing.
Revised namespace handling: There are now namespace_scope objects keeping
the scoping structure of the namespaces. The namespace_info stuff has been
removed. The "display" methods can print XML while respecting the scoping
structure.
New exceptions Namespace_not_managed, Namespace_prefix_not_managed,
Namespace_not_in_scope (all replacing Not_found). Methods of
namespace_manager may raise these exceptions.
The event-based representation of XML is now symmetrical to the tree-based
representation, such that it is possible to convert one representation into
the other without loss. The type of events had to be changed to achieve
this effect.
The new module Pxp_event contains functions for the event-based
representation.
Addition of pxp-pp, the PXP preprocessor.
- 1.1.94: The Pxp_reader module has been completely rewritten. This fixes some
problems with relative URLs. - Pxp_yacc has been split up into four modules:
Pxp_tree_parser contains now the parser API returning object trees,
Pxp_dtd_parser is the parser API returning DTDs, Pxp_ev_parser is the
event-based API, and Pxp_core_parser is the core of the parser. Pxp_yacc is
still available as compatibility API. As part of the module redesign,
Pxp_types includes now parts of its interface from Pxp_core_types_type. I
hope this style of programming is comprehensible. - The event-based parser
can now preprocess namespaces.
Furthermore, there are normalization filters.
- 1.1.92: The whole lexing stuff has been restructured. There is a new tool,
lexpp, that generates the lexers from only five files. Furthermore, much
more 8 bit character sets are now supported as internal encodings. In
previous versions of PXP, the internal representation of the XML trees was
restricted to either UTF-8 or ISO-8859-1. Now, a number of additional
encodings are supported, including the whole ISO-8859 series.
- 1.1.91: The curly braces can now even be used inside attributes, and escape
from normal XML parsing.
There is a new entry point Entry_expr for event-based parsing that expects
either a single element, a single processing instruction, or a single
comment, or whitespace. This allows more fine-grained control of what is
parsed.
There is now a "pull parser". In contrast to the "push parser" introduced in
1.1.90, the calling order of parser and parser user have been inverted, i.e.
the user calls the parser to get ("pull") the next event instead of letting
the parser call back a user function ("push"). An interesting application is
that O'Caml's lazy streams can be used to analyze events. An example can be
found in examles/pullparser.
- 1.1.90: This version introduces a new event-based interface in Pxp_yacc. For
start tags, end tags, data strings, and several other things that are found
in the XML source so-called events are generated, and a user function is
called for every event. See the directory examples/eventparser for examples.
Another innovation is support for curly braces as escape characters. Inside
elements, the left curly brace escapes from XML parsing and starts a foreign
parser until the matching right curly brace is found:
<element> ... { foreign syntax } ... </element>
The curly braces are borrowed from the XQuery draft standard. They cannot
yet be used inside attribute values. Curly braces are mostly useful in
conjunction with event-based parsing, because it is not yet possible to
include the "value" of the curly brace expression into XML trees.
It is even possible to call the XML parser from the foreign parser as
subparser. However, there not yet enough entry points for the event-based
parser (e.g. you cannot parse just the following processing instruction,
only misc* element misc* or whole documents are possible).
[Changes for 1.21 - 2012-09-20]
* Tests all green on CPAN Testers. releasing to public.
[Changes for 1.21_01 - 2012-06-22]
* Synchronize JSON::Syck with YAML::Syck version number
* Add DumpInto functions (YAML+Syck) which dump into
a provided scalar instead of a newly allocated one
* Modify DumpFile functions to output directly to the
specified file/filehandle instead of buffering all
output in memory.
* Avoid modifying numbers into strings when emitting
2.0007 Wed 17 Oct 18:38:37 IST 2012
- Fix for build failures on Windows with Microsoft Visual C++.
- https://rt.cpan.org/Ticket/Display.html?id=80229
- Thanks to Desmond Daignault for the report and an initial patch.
- Patch modified by Shlomi Fish
2.0006 Sat 13 Oct 22:27:54 IST 2012
- When xml2-config returns several paths, the configuration failed.
Fixed that.
- https://rt.cpan.org/Public/Bug/Display.html?id=80167
- Thanks to VOVKASM for the report and fix.
2.0005 Sat 13 Oct 13:18:48 IST 2012
- Added t/style-trailing-space.t and removed trailing space.
- Add a check for the existence of included C headers (*.h) files
in Makefile.PL to avoid failed compilations.
- Using Devel::CheckLib.
- Thanks to its maintainers!
2.0004 Tue 7 Aug 23:04:55 IDT 2012
- Add a way to specify a different compiler to be used in the
"Makefile" by calling Makefile.PL with the CC environment variable
set to the path to the alternate compiler.
- This way we can use
in order to compile faster.
- LibXML.pm (_clone): Fix typo in line_numbers handling.
- Thanks to Bernhard Reutner-Fischer for the report and fix.
2.0003 Fri 27 Jul 17:11:21 IDT 2012
- Patch to a potential NULL dereference in xpath.c.
- Thanks to Ville Skytt
- Fix NodeList::item() calling a 1-indxed array reference.
- See:
- https://bitbucket.org/shlomif/perl-xml-libxml/pull-request/18
- Thanks to Tim Brody
- Add the scripts/tag-release.pl script to tag a release using
Mercurial.
2.0002 Sun Jul 8 18:09:13 IDT 2012
- Applied spelling fixes correction patch by
Ville Skytt
- Thanks, Ville!
Mark as python3-ready.
3.0.1 (2012-10-14)
==================
Bugs fixed
----------
* LP#1065924: Element proxies could disappear during garbage collection
in PyPy without proper cleanup.
* GH#71: Failure to work with libxml2 2.6.x.
* LP#1065139: static MacOS-X build failed in Py3.
3.0 (2012-10-08)
================
Bugs fixed
----------
* End-of-file handling was incorrect in iterparse() when reading from
a low-level C file stream and failed in libxml2 2.9.0 due to its
improved consistency checks.
Other changes
-------------
* The build no longer uses Cython by default unless the generated C files
are missing. To use Cython, pass the option "--with-cython". To ignore
the fatal build error when Cython is required but not available (e.g. to
run special setup.py commands that do not actually run a build), pass
"--without-cython".
3.0beta1 (2012-09-26)
=====================
Features added
--------------
* Python level access to (optional) libxml2 memory debugging features
to simplify debugging of memory leaks etc.
Bugs fixed
----------
* Fix a memory leak in XPath by switching to Cython 0.17.1.
* Some tests were adapted to work with PyPy.
Other changes
-------------
* The code was adapted to work with the upcoming libxml2 2.9.0 release.
3.0alpha2 (2012-08-23)
======================
Features added
--------------
* The ``.iter()`` method of elements now accepts ``tag`` arguments like
``"{*}name"`` to search for elements with a given local name in any
namespace. With this addition, all combinations of wildcards now work
as expected:
``"{ns}name"``, ``"{}name"``, ``"{*}name"``, ``"{ns}*"``, ``"{}*"``
and ``"{*}*"``. Note that ``"name"`` is equivalent to ``"{}name"``,
but ``"*"`` is ``"{*}*"``.
The same change applies to the ``.getiterator()``, ``.itersiblings()``,
``.iterancestors()``, ``.iterdescendants()``, ``.iterchildren()``
and ``.itertext()`` methods;the ``strip_attributes()``,
``strip_elements()`` and ``strip_tags()`` functions as well as the
``iterparse()`` class.
* C14N allows specifying the inclusive prefixes to be promoted
to top-level during exclusive serialisation.
Bugs fixed
----------
* Passing long Unicode strings into the ``feed()`` parser interface
failed to read the entire string.
3.0alpha1 (2012-07-31)
======================
Features added
--------------
* Initial support for building in PyPy (through cpyext).
* DTD objects gained an API that allows read access to their
declarations.
* ``xpathgrep.py`` gained support for parsing line-by-line (e.g.
from grep output) and for surrounding the output with a new root
tag.
* ``E-factory`` in ``lxml.builder`` accepts subtypes of known data
types (such as string subtypes) when building elements around them.
* Tree iteration and ``iterparse()`` with a selective ``tag``
argument supports passing a set of tags. Tree nodes will be
returned by the iterators if they match any of the tags.
Bugs fixed
----------
* The ``.find*()`` methods in ``lxml.objectify`` no longer use XPath
internally, which makes them faster in many cases (especially when
short circuiting after a single or couple of elements) and fixes
some behavioural differences compared to ``lxml.etree``. Note that
this means that they no longer support arbitrary XPath expressions
but only the subset that the ``ElementPath`` language supports.
The previous implementation was also redundant with the normal
XPath support, which can be used as a replacement.
* ``el.find('*')`` could accidentally return a comment or processing
instruction that happened to be in the wrong spot. (Same for the
other ``.find*()`` methods.)
* The error logging is less intrusive and avoids a global setup where
possible.
* Fixed undefined names in html5lib parser.
* ``xpathgrep.py`` did not work in Python 3.
* ``Element.attrib.update()`` did not accept an ``attrib`` of
another Element as parameter.
* For subtypes of ``ElementBase`` that make the ``.text`` or ``.tail``
properties immutable (as in objectify, for example), inserting text
when creating Elements through the E-Factory feature of the class
constructor would fail with an exception, stating that the text
cannot be modified.
Other changes
--------------
* The code base was overhauled to properly use 'const' where the API
of libxml2 and libxslt requests it. This also has an impact on the
public C-API of lxml itself, as defined in ``etreepublic.pxd``, as
well as the provided declarations in the ``lxml/includes/`` directory.
Code that uses these declarations may have to be adapted. On the
plus side, this fixes several C compiler warnings, also for user
code, thus making it easier to spot real problems again.
* The functionality of "lxml.cssselect" was moved into a separate PyPI
package called "cssselect". To continue using it, you must install
that package separately. The "lxml.cssselect" module is still
available and provides the same interface, provided the "cssselect"
package can be imported at runtime.
* Element attributes passed in as an ``attrib`` dict or as keyword
arguments are now sorted by (namespaced) name before being created
to make their order predictable for serialisation and iteration.
Note that adding or deleting attributes afterwards does not take
that order into account, i.e. setting a new attribute appends it
after the existing ones.
* Several classes that are for internal use only were removed
from the ``lxml.etree`` module dict:
``_InputDocument, _ResolverRegistry, _ResolverContext, _BaseContext,
_ExsltRegExp, _IterparseContext, _TempStore, _ExceptionContext,
__ContentOnlyElement, _AttribIterator, _NamespaceRegistry,
_ClassNamespaceRegistry, _FunctionNamespaceRegistry,
_XPathFunctionNamespaceRegistry, _ParserDictionaryContext,
_FileReaderContext, _ParserContext, _PythonSaxParserTarget,
_TargetParserContext, _ReadOnlyProxy, _ReadOnlyPIProxy,
_ReadOnlyEntityProxy, _ReadOnlyElementProxy, _OpaqueNodeWrapper,
_OpaqueDocumentWrapper, _ModifyContentOnlyProxy,
_ModifyContentOnlyPIProxy, _ModifyContentOnlyEntityProxy,
_AppendOnlyElementProxy, _SaxParserContext, _FilelikeWriter,
_ParserSchemaValidationContext, _XPathContext,
_XSLTResolverContext, _XSLTContext, _XSLTQuotedStringParam``
* Several internal classes can no longer be inherited from:
``_InputDocument, _ResolverRegistry, _ExsltRegExp, _ElementUnicodeResult,
_IterparseContext, _TempStore, _AttribIterator, _ClassNamespaceRegistry,
_XPathFunctionNamespaceRegistry, _ParserDictionaryContext,
_FileReaderContext, _PythonSaxParserTarget, _TargetParserContext,
_ReadOnlyPIProxy, _ReadOnlyEntityProxy, _OpaqueDocumentWrapper,
_ModifyContentOnlyPIProxy, _ModifyContentOnlyEntityProxy,
_AppendOnlyElementProxy, _FilelikeWriter, _ParserSchemaValidationContext,
_XPathContext, _XSLTResolverContext, _XSLTContext, _XSLTQuotedStringParam,
_XSLTResultTree, _XSLTProcessingInstruction``
2.3.6 (2012-09-28)
==================
Bugs fixed
----------
* Passing long Unicode strings into the ``feed()`` parser interface
failed to read the entire string.
2.3.5 (2012-07-31)
==================
Bugs fixed
----------
* Crash when merging text nodes in ``element.remove()``.
* Crash in sax/target parser when reporting empty doctype.
2.3.4 (2012-03-26)
==================
Bugs fixed
----------
* Crash when building an nsmap (Element property) with empty
namespace URIs.
* Crash due to race condition when errors (or user messages) occur
during threaded XSLT processing.
* XSLT stylesheet compilation could ignore compilation errors.
2.3.3 (2012-01-04)
==================
Features added
--------------
* ``lxml.html.tostring()`` gained new serialisation options
``with_tail`` and ``doctype``.
Bugs fixed
----------
* Fixed a crash when using ``iterparse()`` for HTML parsing and
requesting start events.
* Fixed parsing of more selectors in cssselect. Whitespace before
pseudo-elements and pseudo-classes is significant as it is a
descendant combinator.
"E :pseudo" should parse the same as "E \*:pseudo", not "E:pseudo".
Patch by Simon Sapin.
* lxml.html.diff no longer raises an exception when hitting
'img' tags without 'src' attribute.
JSON-C implements a reference counting object model that allows
you to easily construct JSON objects in C, output them as JSON
formatted strings and parse JSON formatted strings back into the
C representation of JSON objects.
Based on PR #46593 submitted by Wen Heping(myself)
Upstream changes:
v1.0.5 - 2012-09-03
made automatic protocol links more strict: Only whitespace before and at the end are allowed.
Bugfix: Don't allow ftp:/broken (Only one slash) to be a link.
v1.0.4
html2rest: Handle double link/image substitution and raise better error messages
Bugfix in unittests (include test README file in python package). Thanks to Wen Heping for reporting this.
v1.0.3
Bugfix: AttributeError: 'module' object has no attribute 'interesting_cdata' from HTMLParser patch. Thanks to Wen Heping for reporting this.
Fix a bug in get_long_description() ReSt test for Py3k and his unittests.
Use Travis CI, too.
v1.0.2
Fix "AttributeError: 'NoneType' object has no attribute 'parent'" in html2creole.
v1.0.1
Fix "TypeError: expected string or buffer" in rest2html.
Bugfix in exception handling.
v1.0.0
Change API: Replace 'parser_kwargs' and 'emitter_kwargs' with separate arguments. (More information on API Wiki Page)
v0.9.2
Turn zip_safe in setup.py on and change unittests API.
v0.9.1
Many Bugfixes, tested with CPython 2.6, 2.7, 3.2 and PyPy v1.6
v0.9.0
Add Python v3 support (like http://python3porting.com/noconv.html strategy)
move unittests into creole/tests/
Tested with Python 2.7.1, 3.2 and PyPy v1.6.1 15798ab8cf48 jit
v0.8.5
Bugfix in html2creole: ignore links without href
v0.8.4
Bugfix in html parser if list tag has attributes: https://code.google.com/p/python-creole/issues/detail?id=19#c4
v0.8.3
Better error message if given string is not unicode: https://code.google.com/p/python-creole/issues/detail?id=19
v0.8.2
Bugfix in get_long_description() error handling (local variable 'long_description_origin' referenced before assignment)
v0.8.1
Bugfix for installation under python 2.5
Note: setup helper changed: rename GetLongDescription(...) to get_long_description(...)
v0.8
New GetLongDescription() helper for setup.py, see: https://code.google.com/p/python-creole/wiki/UseInSetup
v0.7.3
Bugfix in html2rest:
table without <th> header
new line after table
create reference hyperlinks in table cells intead of embedded urls.
Don't always use raise_unknown_node()
Add child content to raise_unknown_node()
v0.7.2
Activate ---- to <hr> in html2rest
Update demo.py
v0.7.1
Bugfix if docutils are not installed
API change: rest2html is now here: from creole.rest2html.clean_writer import rest2html
v0.7.0
NEW: Add a html2reStructuredText converter (only a subset of reSt supported)
v0.6.1
Bugfix: separate lines with one space in "wiki style line breaks" mode
v0.6
NEW: html2textile converter
some API changed!
v0.5
API changed:
Html2CreoleEmitter optional argument 'unknown_emit' takes now a callable for handle unknown html tags.
No macros used as default in creole2html converting.
We remove the support for callable macros. Only dict and modules are allowed.
remove unknown html tags is default behaviour in html2creole converting.
restructure and cleanup sourcecode files.
v0.4
only emit children of empty tags like div and span (contributed by Eric O'Connell)
remove inter wiki links and doesn't check the protocol
v0.3.3
Use when {{{ ... }}} is inline and not <pre>, see: PyLucid Forum Thread
Bugfix in html2creole: insert newline before new list. TODO: apply to all block tags: issues 16
v0.3.2
Bugfix for spaces after Headline: issues 15
v0.3.1
Make argument 'block_rules' in Parser() optional
v0.3.0
creole2html() has the optional parameter 'blog_line_breaks' to switch from default blog to wiki line breaks
v0.2.8
bugfix in setup.py
v0.2.7
handle obsolete non-closed <br> tag
v0.2.6
bugfix in setup.py
Cleanup DocStrings
add unittests
Upstream changes:
Release 0.9.1 (2012-06-17)
==========================
* docutils/setup.py
- Fix [ 3527842 ]. Under Python3, converted tests and tools were
installed in the PYTHONPATH. Converted tests are now
stored in ``test3/``, tools no longer need conversion.
If you installed one of Docutils versions 0.7 ... 0.9 with
``setup.py install`` under Python3, remove the spurious
``test/`` and ``tools/`` directories in the site library root.
* docutils/test/
- Make tests independent from the location of the ``test/`` directory.
- Use converted sources (from the ``build/`` directory) for tests under
Python3.
* docutils/tools/
- Make tools compatible with both, Python 2 and 3 without 2to3-conversion.
* docutils/io.py
- Fix writing binary data to sys.stdout under Python3 (allows
``rst2odt.py`` to be used with output redirection).
* docutils/parsers/rst/directives/misc.py
- Fix [ 3525847 ]. Catch and report UnicodeEncodeError with
``locale == C`` and 8-bit char in path argument of `include` directive.
* docutils/test/alltests.py
- class `Tee`: catch UnicodeError when writing to "ascii" stream or
file under Python3.
Xapian-core 1.2.12 (2012-06-27):
build system:
* 1.2.11 had its library version information incorrectly set. This resulted in
the shared library having an incorrect SONAME - e.g. on Linux,
libxapian.so.21 instead of libxapian.so.22. This release has been made to
fix this problem.
documentation:
* AUTHORS: Add the GSoC students.
Xapian-core 1.2.11 (2012-06-26):
API:
* Add new QueryParser::STEM_ALL_Z stemming strategy, which stems all terms and
adds a Z prefix. (Patch from Sehaj Singh Kalra, fixes ticket#562)
* Add TermGenerator::set_stemming_strategy() method, with strategies which
correspond to those of QueryParser. Based on patch from Sehaj Singh Kalra,
with some tweaks for adding term positions in more cases. (Fixes ticket#563)
* Correct "BM25Weight" to "TradWeight" in exception message from TradWeight.
* We were failing to call init() for user-defined Weight objects providing the
term-independent weight. These now get called with init(0.0).
* Xapian::Auto::open_stub() now throws a Xapian::DatabaseOpeningError exception
if the stub file can't be opened. Previously we failed to check for this
condition, which resulted in us treating the file as empty.
testsuite:
* When the testsuite is using valgrind, we used to run remote servers under
valgrind too (but with --tool=none) to get consistent behaviour as valgrind's
emulation of x87 excess precision isn't exact. Now we only do this if x87 FP
instructions are actually in use (which means x86 architecture and configure
run with --disable-sse).
* Make sure XAPIAN_MAX_CHANGESETS gets unset after replication testcases which
set it, so further testcases don't waste time generating changesets.
* Improved test coverage (including more tests for closed databases -
ticket#337).
brass backend:
* After closing the database, methods which try to use the termlist would throw
FeatureUnavailableError with message "Database has no termlist", assuming
that the termlist table not being open meant it wasn't present. Fix to check
if the postlist_table is open to determine which case we're in.
chert backend:
* After closing the database, methods which try to use the termlist would throw
FeatureUnavailableError with message "Database has no termlist", assuming
that the termlist table not being open meant it wasn't present. Fix to check
if the postlist_table is open to determine which case we're in.
inmemory backend:
* Check if the database is closed in metadata_keys_begin() for InMemory
Databases.
build system:
* xapian-config: Don't interpret a missing .la file as meaning that we only
have static libraries.
documentation:
* Fix API documentation for Query constructors - both XOR and ELITE_SET can
take any number of subqueries, not only exactly two.
* Backport missing API documentation comments for operator++ and operator*
methods or PositionIterator, PostingIterator and TermGenerator.
* docs/replication.rst: Update documentation - since 1.2.5, the value of
XAPIAN_MAX_CHANGESETS determines how many changesets we keep.
* docs/admin_notes.rst: Correction - we don't "create a lock file", we "lock a
file".
* Fix API documentation for TradWeight constructor - "k1" should be "k".
portability:
* configure: Overhaul handling of compilers which pretend to be GCC. Clang
is now detected, and we only pass it warning flags it actually understands.
And we now check for symbol visibility support with Intel's compiler.
* configure: Solaris automatically pulls in library dependencies, so set
link_all_deplibs_CXX=no there.
* configure: We now check -Bsymbolic-functions for all compilers.
* configure: Enable -Wdouble-promotion for GCC >= 4.6.
* Pass -ldl last when compiling zlib-vg.so, as that seems to be needed on
Ubuntu 12.04.
* Fix incorrect use of "delete" which should be "delete []". This is
undefined behaviour in C++, though the type is POD, so in practice this
probably worked OK on many platforms.
* In BM25Weight when k1 or b is zero (not the default), we used to multiply
an uninitialised double by zero, which is undefined behaviour, but in
practice will often give zero, leading to the desired results.
* xapian.h: Add check for Qt 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).
Xapian-core 1.2.10 (2012-05-09):
API:
testsuite:
* apitest: Extend tradweight1 to test that TradWeight(0) means that wdf and
document length don't affect the weight of a term.
* termgentest: Check that TermGenerator discards words > 64 bytes.
matcher:
* Don't count unweighted subqueries of MultiAndPostList in percentage
calculations, as OP_FILTER maps to MultiAndPostList now. (ticket#590)
brass backend:
* When compacting, if the output database is empty, don't write out a metainfo
tag. Take care not to divide by zero when computing the percentage size
change for a table.
chert backend:
* When compacting, if the output database is empty, don't write out a metainfo
tag. Take care not to divide by zero when computing the percentage size
change for a table.
documentation:
* API documentation:
+ Note version when Database::close() was added.
+ Fix switched lower and upper in API documentation for Weight methods
get_doclength_lower_bound() and get_doclength_upper_bound(). Correct
maximum to minimum in get_doclength_lower_bound() comment and note that this
excludes zero length documents. Fix "An lower" to "A lower".
* docs/admin_notes.html: Mention that postlist and termlist tables also hold
value info for chert. Mention that xapian-chert-update was removed in 1.3.0.
Mention that you need to use copydatabase from 1.2.x to convert flint to
chert.
* HACKING: Update section on patches to mention git (git diff and git
format-patch), and using "-r" with normal diff, and also that ptardiff offers
a nice way to diff against an unpacked tarball.
debug code:
* Fix use of AssertEq() on NULL, which doesn't compile, at least with recent
GCC.
Xapian-core 1.2.9 (2012-03-08):
API:
* QueryParser: Fix FLAG_AUTO_SYNONYMS not to enable auto multi-word synonyms
too (but in a different way to trunk so as to not break the ABI).
matcher:
* Fix issue with running AND, OR and XOR queries against a database with no
documents in it - this was leading to a divide by zero, which led to
MSet::get_matches_estimated() reporting 2147483648 on i386.
build system:
* Remove configure's --with-stlport and --with-stlport-compiler options, as
they don't allow you to actually specify what you need to (at least to use
the Debian STLport package), and instead document what to pass to configure
to enable building with STLport (though it seems to no longer be actively
maintained, and the debug mode (which is probably the most interesting
feature now) doesn't seem to work on Debian stable).
documentation:
* Document that OP_ELITE_SET with non-term subqueries might pick subqueries
which don't match anything. Closes ticket#49.
* Document that you can define a static operator delete method in your subclass
if deallocation needs to be handled specially. (Closes ticket#554)
* Assorted minor documentation improvements.
portability:
* Address new warnings from GCC 4.6.
* Fix argument order when linking xapian-check to fix mingw build.
(ticket#567)
* Add some missing explicit header includes to fix build with STLport.
The textproc/cabocha package has been failing on i386 DragonFly for
months. This was caused by segaults in two utilities provided by yamcha:
pkemine and mktrie.
Google brought up some pastebin sniplets indicating others had run into
the same issue, confirming the fixes. With the revised yamcha utilities,
textproc/cabocha builds nicely on DragonFly.