[ZODB-Dev] Release: IndexedCatalog 0.3
Christian Reis
kiko@async.com.br
Wed, 9 Oct 2002 12:59:26 -0300
ANNOUNCE: Released IndexedCatalog 0.3
Async Open Source releases today the third public version of
IndexedCatalog. IndexedCatalog is an extension to the Zope Object
Database (ZODB) that makes object retrieval easier and faster, by
indexing all fields by type (string/integer/float) and providing a
simple query language.
http://www.async.com.br/projects/IndexedCatalog/
The next version will implement a real query language and parser; we got
tired of hacking on the current version and we need some extra
functionality that just couldn't be cut. The new version will be cooking
in CVS hopefully by tomorrow morning, and we'll be testing it through
the week. The next version will accompany some real documentation, too.
* Changes
- Support for creating objects outside of the catalog was added; it
is no longer required to use catalog.new().
- catalog.insert() was added.
- Boolean operations now work as they should.
- Many new tests were added in the test suite.
- Many random bugfixes were made.
- Case insensitive substring searching (largely untested :-)
A blurb about IndexedCatalog follows.
--- blurb -------------------------------------------------------------
* Overview
IndexedCatalog is an extension to the Zope Object Database (ZODB)
developed by Johan Dahlin at Async Open Source
(http://www.async.com.br/) that provides indexing and allows queries
for objects based on attributes. This is accomplished by indexing all
fields by type (string/integer/float) and by implementing a simple
query language.
IndexedCatalog is licensed under the Lesser GNU Public License (LGPL).
* Features
- Provides a Catalog class that stores objects and offers a query
interface.
- Provides Indexes for Strings, Floats, Integers and Instances.
- Requires very little change to objects for catalogs and indexes to
work: basically, add some special attributes to the Classes, and use
catalog.insert() to add the instances to the catalogs.
- Supports composite objects, initializing and indexing sub-objects
automatically.
- Supports queries by type, and allows querying sub-object or
referenced object attribute values.
- Allows ordering query results by field, both ascending and
descending.
- Is 100% pure python, and by using Distutils requires miminal effort
to install.
* Feedback
We really would appreciate feedback on a few things:
- Object lifecycle (Class() and catalog.insert() vs. Catalog.new())
- The efficiency of the indexing and query algorithms
- The query language
- All flam^Wcomments are appreciated; don't hesitate to post your
opinion.
* Download
You can download IndexedCatalog from
http://www.async.com.br/projects/IndexedCatalog/
* Installing
Using standard python distutils:
python setup.py install
Or just set PYTHONPATH to the directory you unpacked IndexedCatalog
in.
* Reporting bugs
Report bugs, feature requests and all other things related to
IndexedCatalog at
http://bugs.async.com.br/enter_bug.cgi?product=IndexedCatalog
* Contact
Johan Dahlin <jdahlin@telia.com>, Christian Reis <kiko@async.com.br>
* About Async
Async Open Source is a company devoted to developing custom
applications based on open source software, and providing support for
other existing open source products. We are active in the OSS
community, supporting (and employing) project maintainers, encouraging
release of software as open source, and promoting reuse of existing
open source products.
Async is located in São Carlos, SP, Brazil, and online at
http://www.async.com.br/
Take care,
--
Christian Reis, Senior Engineer, Async Open Source, Brazil.
http://async.com.br/~kiko/ | [+55 16] 261 2331 | NMFL
Take care,