Skip to main content

Indices for using with catalog like text, field, etc.

Project description

Overview

The zope.index package provides several indices for the Zope catalog. These include:

  • a field index (for indexing orderable values),

  • a keyword index,

  • a topic index,

  • a text index (with support for lexicon, splitter, normalizer, etc.)

Changes

3.6.0 (2009-08-03)

  • Improved test readability and reached 100% test coverage.

  • Fixed a broken optimization in okascore.c: it was passing a Python float to the PyInt_AS_LONG() macro. This resulted in wrong scores, especially on 64 bit platforms, where all scores typically ended up being zero.

  • Changed okascore.c to produce the same results as its Python equivalent, reducing the brittleness of the text index tests.

3.5.2 (2009-06-09)

  • Port okascore.c optimization used in okapiiindex from Zope2 catalog implementation. This module is compiled conditionally, based on whether your environment has a working C compiler.

  • Don’t use len(self._docweight) in okapiindex _search_wids method (obtaining the length of a BTree is very expensive at scale). Instead use self.documentCount(). Also a Zope2 port.

3.5.1 (2009-02-27)

  • The baseindex, okapiindex, and lexicon used plain counters for various lengths, which is unsuitable for production applications. Backport code from Zope2 indexes which opportunistically replaces the counters with BTree.Length objects.

  • Backport non-insane version of baseindex._del_wordinfo from Zope2 text index. This improves deletion performance by several orders of magnitude.

  • Don’t modify given query dictionary in the KeywordIndex.apply method.

  • Move FieldIndex’s sorting functionality to a mixin class so it can be reused by zc.catalog’s ValueIndex.

3.5.0 (2008-12-30)

  • Remove zope.testing from dependencies, as it’s not really needed.

  • Define IIndexSort interface for indexes that support sorting.

  • Implement sorting for FieldIndex (adapted from repoze.catalog/ZCatalog).

  • Add an apply method for KeywordIndex/TopicIndex, making them implement IIndexSearch that can be useful in catalog.

  • Optimize the search method of KeywordIndex/TopicIndex by using multiunion for the or operator and sorting before intersection for and.

  • IMPORTANT: KeywordIndex/TopicIndex now use IFSets instead of IISets. This makes it more compatible with other indexes (for example, when using in catalog). This change can lead to problems, if your code somehow depends on the II nature of sets, as it was before.

    Also, FilteredSets used to use IFSets as well, if you have any FilteredSets pickled in the database, you need to migrate them to IFSets yourself. You can do it like that:

    filter._ids = filter.family.IF.Set(filter._ids)

    Where filter is an instance of FilteredSet.

  • IMPORTANT: KeywordIndex are now non-normalizing. Because it can be useful for non-string keywords, where case-normalizing doesn’t make any sense. Instead, it provides the normalize method that can be overriden by subclasses to provide some normalization.

    The CaseInsensitiveKeywordIndex class is now provided that do case-normalization for string-based keywords. The old CaseSensitiveKeywordIndex is gone, applications should use KeywordIndex for that.

Looks like the KeywordIndex/TopicIndex was sort of abadonware and wasn’t used by application developers, so after some discussion we decided to refactor them to make them more usable, optimal and compatible with other indexes and catalog.

Porting application from old KeywordIndex/TopicIndex to new ones are rather easy and explained above, so we believe that it isn’t a problem. Please, use zope3-users@zope.org or zope-dev@zope.org mailing lists, if you have any problems with migration.

Thanks Chris McDonough of repoze for supporting and useful code.

3.4.1 (2007-09-28)

  • Fixed bug in package metadata (wrong homepage URL).

3.4.0 (2007-09-28)

No further changes since 3.4.0a1.

3.4.0a1 (2007-04-22)

Initial release as a separate project, corresponds to zope.index from Zope 3.4.0a1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zope.index-3.6.0.tar.gz (63.0 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

zope.index-3.6.0.win-amd64-py2.7.exe (325.3 kB view details)

Uploaded Source

zope.index-3.6.0.win-amd64-py2.6.exe (325.3 kB view details)

Uploaded Source

zope.index-3.6.0.win32-py2.7.exe (297.8 kB view details)

Uploaded Source

zope.index-3.6.0.win32-py2.6.exe (297.8 kB view details)

Uploaded Source

zope.index-3.6.0-py2.7-win-amd64.egg (204.1 kB view details)

Uploaded Egg

zope.index-3.6.0-py2.7-win32.egg (204.0 kB view details)

Uploaded Egg

zope.index-3.6.0-py2.6-win-amd64.egg (204.7 kB view details)

Uploaded Egg

zope.index-3.6.0-py2.6-win32.egg (204.6 kB view details)

Uploaded Egg

zope.index-3.6.0-py2.5-win32.egg (204.2 kB view details)

Uploaded Egg

zope.index-3.6.0-py2.4-win32.egg (206.1 kB view details)

Uploaded Egg

File details

Details for the file zope.index-3.6.0.tar.gz.

File metadata

  • Download URL: zope.index-3.6.0.tar.gz
  • Upload date:
  • Size: 63.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for zope.index-3.6.0.tar.gz
Algorithm Hash digest
SHA256 8d0249019d72575366e93097af7cee04e8cb83c202b52c448890893019cd2196
MD5 d0a1b93be1053b4c1402abcd856300fd
BLAKE2b-256 0067d5efe4abc5f8b2c3bf7d7a650310f98abf3bd177cfa4a8adffe17ffa5377

See more details on using hashes here.

File details

Details for the file zope.index-3.6.0.win-amd64-py2.7.exe.

File metadata

File hashes

Hashes for zope.index-3.6.0.win-amd64-py2.7.exe
Algorithm Hash digest
SHA256 543fe17d6651b37296a40273b3f71c2e223a3df79eec2da62f9eece9407652e4
MD5 3b6168a6481b0a13af88ddcac4387475
BLAKE2b-256 2e2a9673a755c7c5d9043d0fe2eb253ceef34eb1fe24c3b771723294b3fbc280

See more details on using hashes here.

File details

Details for the file zope.index-3.6.0.win-amd64-py2.6.exe.

File metadata

File hashes

Hashes for zope.index-3.6.0.win-amd64-py2.6.exe
Algorithm Hash digest
SHA256 a1386eb98dc40616b2020bf1a18b7456f60c299fe195a7f5a0f1816795ba63b7
MD5 403e48d40c0f5ba313811e90480a0304
BLAKE2b-256 6b662c6780f49a22885f399176be3644df4423a2bc4c32e3c007d0dc89619673

See more details on using hashes here.

File details

Details for the file zope.index-3.6.0.win32-py2.7.exe.

File metadata

File hashes

Hashes for zope.index-3.6.0.win32-py2.7.exe
Algorithm Hash digest
SHA256 2ed1d2f9c3dee84ba5ebc462282a3623a2fbfdf178c181ab535b7008d788c3d7
MD5 347cedb7f8341b166e52431b99c0cc70
BLAKE2b-256 cb01ec69065c27297a31d65631e2c258726aaa6dde8110d8ca492f169a590a1d

See more details on using hashes here.

File details

Details for the file zope.index-3.6.0.win32-py2.6.exe.

File metadata

File hashes

Hashes for zope.index-3.6.0.win32-py2.6.exe
Algorithm Hash digest
SHA256 25a70806f8ee6323fe38c36122ab6092367c978797d03a34fa691097317a4670
MD5 92f80959fd8acfdfaf92e11df248ae44
BLAKE2b-256 5365ad65d9765a3fc919d0e0c9e4dfde143e2d7b6d9b01649da62eaba62f9573

See more details on using hashes here.

File details

Details for the file zope.index-3.6.0-py2.7-win-amd64.egg.

File metadata

File hashes

Hashes for zope.index-3.6.0-py2.7-win-amd64.egg
Algorithm Hash digest
SHA256 1148a2b5937ff5f3f4e7b1752b86c55efef2c35dfe81f3af52025ed3774fa1e2
MD5 4aa54fafdd2b0e3999022db6e89e5cf0
BLAKE2b-256 6647d1bd915709be4d9d8670d6eac9b8f6af9a3234870cc1616d247d5a29d939

See more details on using hashes here.

File details

Details for the file zope.index-3.6.0-py2.7-win32.egg.

File metadata

File hashes

Hashes for zope.index-3.6.0-py2.7-win32.egg
Algorithm Hash digest
SHA256 17687b6cdd17f390ef5bb44b860e2021bcf9698b6fcef7f257df52aa62e1159c
MD5 62aef8691b77b659e5d1ea3ff212a3ab
BLAKE2b-256 ffad2cceab89f45a5b7a6049c4ab656d21cae68b3ec79cbafd388fc5590b6322

See more details on using hashes here.

File details

Details for the file zope.index-3.6.0-py2.6-win-amd64.egg.

File metadata

File hashes

Hashes for zope.index-3.6.0-py2.6-win-amd64.egg
Algorithm Hash digest
SHA256 eb6bc1a0cdc55496c9fda5b6883f4c5a92ae62d501e644d722d470e405263136
MD5 eebedbcf6768cac93fd17f38e8c4add2
BLAKE2b-256 4ff123f7001bf88de13699891b0fa78e8e978cf8834ad4cee81a958b2d4338da

See more details on using hashes here.

File details

Details for the file zope.index-3.6.0-py2.6-win32.egg.

File metadata

File hashes

Hashes for zope.index-3.6.0-py2.6-win32.egg
Algorithm Hash digest
SHA256 a2bcf05059159a569abc017752932e586ec3810ae025e13f24fb38938bac0172
MD5 9b8d476026cd1cb3b139375c25f3f176
BLAKE2b-256 15dedd6732561987348b0dd4e7aba3b5cde8f6553ead23da942b176a536f0aee

See more details on using hashes here.

File details

Details for the file zope.index-3.6.0-py2.5-win32.egg.

File metadata

File hashes

Hashes for zope.index-3.6.0-py2.5-win32.egg
Algorithm Hash digest
SHA256 2e19b9cdf897a04f6a20e9fcd0e5e708feed330a8d925eea3b81539686c534b5
MD5 5a0accb6cdd947a49fc6b367ec1bbfb7
BLAKE2b-256 1da7ecb3e4dcab777cf187fc0160205b27d3bc42b0a34981b72baae457fdc933

See more details on using hashes here.

File details

Details for the file zope.index-3.6.0-py2.4-win32.egg.

File metadata

File hashes

Hashes for zope.index-3.6.0-py2.4-win32.egg
Algorithm Hash digest
SHA256 aedcf27d62a47e588bf740ec222de2c03968c56ef60e3a1100bc5b7da56115bb
MD5 f551c666e060057c06380ac9e397cde0
BLAKE2b-256 503b723e4a42c8a10152245100b997497cfbbf8ab03adef465749531fc65db91

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page