Flexible high level search construction and execution for Zope (>= 4)
Project description
``AdvancedQuery`` is a Zope product extending Zope's search
engine ``ZCatalog`` with the following key features:
* flexible and intuitive construction of query objects
* support for arbitrary "and", "or" and "not" combinations of queries
* flexible multi-level sort support; incremental sorting
* ranking support
* new elementary searches (such as "glob" and "regexp" searches)
* support for incremental filtering
* functional and/or efficiency gains via Zope "(subscription) adapter"s
for indexes
* optional integration with
`dm.incrementalsearch`__,
a low level incremental search engine
aiming to reduce the number of ZODB loads for searching
__ https://pypi.org/project/dm.incrementalsearch
For more information, see ``AdvancedQuery.html`` in the ``doc`` subfolder.
Installation
============
The package can be ``pip`` installed.
The use of this package requires that its ``configure.zcml`` is
"executed" during startup (usually, this happens automatically).
In order to use this package in Plone, the companion package
``dm.plone.advancedquery`` must be installed and its ``configure.zcml``
"executed" during startup.
Partial history
===============
4.0
Python 3/Zope 4 compatibility
Drop support for Zope2 (due to significant differences
between the ``Products.ZCatalog`` versions for
Zope2 and Zope 4+, respectively).
Supports Plone 5.2+ via the companion package ``dm.plone.advancedquery`.
Integration of indexes and ``dm.incrementalsearch`` now customizable
via (subscription) adapters -- independence of ``Products.ManagableIndex``
and ``dm.incrementalsearch``.
3.0.4
Adapt to cosmetic modifications in ``Products.CMFCore==2.3.0``.
3.0.3
use the newer index sorting API (``documentToKeyMap``) if
the older API (``keyForDocument``) is missing or obviously broken.
The fix has been introduced for the ``nogopip`` index used in Plone 4.1.
Unfortunately, this index version not only defines a broken
``keyForDocument`` but in addition uses call frame inspection targeted
at ``ZCatalog`` sorting which fails when called by ``AdvancedQuery``,
see https://dev.plone.org/plone/ticket/11637.
Until this problem is resolved, you cannot use a ``nogopip`` index as
sort index for ``AdvancedQuery``.
3.0.2
Zope 2.13 compatibility
3.0.1
fix test suite for Zope 2.12 by dropping ``ZopeTestCase.framework`` support.
This implies that the test suite can now only be executed via the Zope
test runner.
engine ``ZCatalog`` with the following key features:
* flexible and intuitive construction of query objects
* support for arbitrary "and", "or" and "not" combinations of queries
* flexible multi-level sort support; incremental sorting
* ranking support
* new elementary searches (such as "glob" and "regexp" searches)
* support for incremental filtering
* functional and/or efficiency gains via Zope "(subscription) adapter"s
for indexes
* optional integration with
`dm.incrementalsearch`__,
a low level incremental search engine
aiming to reduce the number of ZODB loads for searching
__ https://pypi.org/project/dm.incrementalsearch
For more information, see ``AdvancedQuery.html`` in the ``doc`` subfolder.
Installation
============
The package can be ``pip`` installed.
The use of this package requires that its ``configure.zcml`` is
"executed" during startup (usually, this happens automatically).
In order to use this package in Plone, the companion package
``dm.plone.advancedquery`` must be installed and its ``configure.zcml``
"executed" during startup.
Partial history
===============
4.0
Python 3/Zope 4 compatibility
Drop support for Zope2 (due to significant differences
between the ``Products.ZCatalog`` versions for
Zope2 and Zope 4+, respectively).
Supports Plone 5.2+ via the companion package ``dm.plone.advancedquery`.
Integration of indexes and ``dm.incrementalsearch`` now customizable
via (subscription) adapters -- independence of ``Products.ManagableIndex``
and ``dm.incrementalsearch``.
3.0.4
Adapt to cosmetic modifications in ``Products.CMFCore==2.3.0``.
3.0.3
use the newer index sorting API (``documentToKeyMap``) if
the older API (``keyForDocument``) is missing or obviously broken.
The fix has been introduced for the ``nogopip`` index used in Plone 4.1.
Unfortunately, this index version not only defines a broken
``keyForDocument`` but in addition uses call frame inspection targeted
at ``ZCatalog`` sorting which fails when called by ``AdvancedQuery``,
see https://dev.plone.org/plone/ticket/11637.
Until this problem is resolved, you cannot use a ``nogopip`` index as
sort index for ``AdvancedQuery``.
3.0.2
Zope 2.13 compatibility
3.0.1
fix test suite for Zope 2.12 by dropping ``ZopeTestCase.framework`` support.
This implies that the test suite can now only be executed via the Zope
test runner.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Products.AdvancedQuery-4.0.tar.gz
(50.0 kB
view hashes)
Close
Hashes for Products.AdvancedQuery-4.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5f66a070502bf56a257b0908784735b9c335d0afe0cb5f29fae67b32b9aba953 |
|
MD5 | 5ee11ee0c967d038b102693b2e76e888 |
|
BLAKE2b-256 | eab31c15253092333fce6f9ab533b7ce041e43688b14aca7b5c092e2ed765c0c |