# do not edit -- automatically generated by arch changelog
# arch-tag: automatic-ChangeLog--jdavid@itaapy.com--public/itools--main--0.7
#

2005-03-22 08:01:27 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-59

    Summary:
      documentation, fix makefile
    Revision:
      itools--main--0.7--patch-59


    modified files:
     Changelog doc/Makefile


2005-03-21 22:04:41 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-58

    Summary:
      get ready to release 0.7.4
    Revision:
      itools--main--0.7--patch-58


    modified files:
     CHANGES.txt Changelog README.txt setup.py


2005-03-18 20:07:33 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-57

    Summary:
      handlers, add comment to remember an issue with transactions
    Revision:
      itools--main--0.7--patch-57


    modified files:
     Changelog handlers/Handler.py xml/Schema.py


2005-03-18 15:30:23 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-56

    Summary:
      catalog, fix skeletons (rename "__version__" to "class_version")
    Revision:
      itools--main--0.7--patch-56


    modified files:
     Changelog catalog/IIndex.py catalog/IO.py


2005-03-18 08:54:11 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-55

    Summary:
      catalog, improve docstrings, coding style corrections
    Revision:
      itools--main--0.7--patch-55


    modified files:
     Changelog catalog/IIndex.py catalog/prof.py


2005-03-17 19:53:22 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-54

    Summary:
      catalog, optimize the text analyser
    Revision:
      itools--main--0.7--patch-54


    modified files:
     Changelog catalog/Analysers.py


2005-03-17 19:31:08 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-53

    Summary:
      catalog, optimize indexing, reduce write access to the resource
    Revision:
      itools--main--0.7--patch-53


    modified files:
     Changelog catalog/IIndex.py


2005-03-16 18:06:02 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-52

    Summary:
      catalog, lazy load the indexes
    Revision:
      itools--main--0.7--patch-52

    Now the data from the indexes is loaded as late as possible (lazy).

    modified files:
     Changelog catalog/IIndex.py


2005-03-16 14:44:07 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-51

    Summary:
      catalog, optimize index load
    Revision:
      itools--main--0.7--patch-51

    Index loading has been optimized again. Now we read the full "tree"
    resource data into memory, instead of accessing the resource for
    every slot.

    modified files:
     Changelog catalog/IIndex.py


2005-03-16 14:37:27 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-50

    Summary:
      catalog, optimize index load
    Revision:
      itools--main--0.7--patch-50

    Now the loading an index is faster. Indexes are stored in two
    resources, "tree" and "documents". Before both were loaded at
    the first access, now only the first one. Documents are loaded
    when needed (lazy load).

    modified files:
     Changelog catalog/IIndex.py


2005-03-14 15:51:19 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-49

    Summary:
      handlers, now "abspath" is "/" for the root instead of "" (#13)
    Revision:
      itools--main--0.7--patch-49

    This way the root handler can be indexed by the "abspath" attribute.
    Fixes bug #13.

    modified files:
     Changelog handlers/Handler.py


2005-03-13 19:49:56 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-48

    Summary:
      get ready to release 0.7.3
    Revision:
      itools--main--0.7--patch-48


    modified files:
     CHANGES.txt Changelog setup.py


2005-03-13 19:19:55 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-47

    Summary:
      catalog, fix unindex
    Revision:
      itools--main--0.7--patch-47

    There was an error in the unindex algorithm where it would
    uncorrectly perform the operation when two consecutive
    documents were unindexed.

    modified files:
     Changelog catalog/IIndex.py


2005-03-11 19:19:08 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-46

    Summary:
      catalog, add serialization methods to indexed documents
    Revision:
      itools--main--0.7--patch-46


    modified files:
     Changelog catalog/IDocument.py


2005-03-11 13:29:07 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-45

    Summary:
      fix changes file
    Revision:
      itools--main--0.7--patch-45


    modified files:
     CHANGES.txt Changelog


2005-03-11 12:48:36 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-44

    Summary:
      get ready to release 0.7.2
    Revision:
      itools--main--0.7--patch-44


    modified files:
     CHANGES.txt Changelog setup.py


2005-03-09 14:07:29 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-43

    Summary:
      merge folder fix from 0.8
    Revision:
      itools--main--0.7--patch-43


    modified files:
     Changelog catalog/Catalog.py handlers/Folder.py

    new patches:
     jdavid@itaapy.com--public/itools--main--0.8--patch-13


2005-03-08 10:55:27 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-42

    Summary:
      handlers, add is_virtual variable, fix traverse2
    Revision:
      itools--main--0.7--patch-42

    Fix 'traverse2': set 'context.skip' to false for file handlers.
    
    Add the variable 'is_virtual' to distinct between handlers
    accessed through the physical path ('_get_handler') and virtual
    handlers ('_get_virtual_handler').
    
    Also, always set 'parent', 'name' and 'is_virtual' each time
    the handler is reached with 'get_handler'. This way the handler
    returned by 'get_handler' always has these variable correctly
    set.
    
    However, there is still a bug, if you load the same handler twice
    through different paths, the 'parent', 'name' and 'is_virtual'
    attributes will be those of the last load. This may produce
    subtle, hard to find errors.

    modified files:
     Changelog handlers/File.py handlers/Folder.py
     handlers/Handler.py


2005-03-07 15:00:58 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-41

    Summary:
      handlers, add "traverse2" method to folders
    Revision:
      itools--main--0.7--patch-41


    modified files:
     Changelog handlers/Folder.py


2005-03-07 14:44:45 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-40

    Summary:
      xml, remove obsolete 'walk' method
    Revision:
      itools--main--0.7--patch-40


    modified files:
     Changelog xml/STL.py xml/XML.py


2005-03-07 10:24:52 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-39

    Summary:
      packaging, fix setup.py, use relative paths (by Herve)
    Revision:
      itools--main--0.7--patch-39

    Using relative paths solves the problem found by Herve when building
    Debian packages.
    
    Note that there is a much better solution for Python 2.4 that should
    be adopted once support for Python 2.3 is dropped, see:
    
      http://arch.oursours.net/zoom/herve@oursours.net--public/
        itools--herve--0.7--patch-6/setup.py
    
    This change integrates the patchs #6, half of #8, #11, #12 and #13.
    They have not been applied directly because the patch #8 was mixed
    with another non related change and produced conflicts.

    modified files:
     Changelog setup.py


2005-03-07 09:28:34 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-38

    Summary:
      catalog, optimize load, decode each slot in one step
    Revision:
      itools--main--0.7--patch-38

    Now each slot is loaded in one step, hence with only one access to the
    resource.
    
    The meseaured performance improvement when the resource layer is zope2
    is of 300%. With other resource layers the improvement is likely to be
    much lower.

    modified files:
     Changelog catalog/IIndex.py catalog/IO.py


2005-03-06 18:39:17 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-37

    Summary:
      catalog, use iterative algorithm to load the iindex
    Revision:
      itools--main--0.7--patch-37

    Instead of a recursive one. While this does not seem to change anything
    from the performance point of view, I expect this change to simplify
    further profiling.

    modified files:
     Changelog catalog/IIndex.py


2005-03-05 20:37:02 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-36

    Summary:
      resources, fix the modification time of Zope 2 resources
    Revision:
      itools--main--0.7--patch-36

    Zope 2 resources should use "bobobase_modification_time()", so if a
    resource is modified through the ZMI (for example) the resource is
    reloaded the next time.
    
    But unfortunately we can't use it.
    
    Because the "bobobase_modification_time" is set with the ZODB transaction
    commit, which happens always at the end, after the handler timestamp has
    been set. This means that the resource modification time is always newer
    than the handler's timestamp; so the resource always would be reloaded
    after a modification, what is unacceptable.
    
    This is the reason we keep ourselves the modification time, within the
    persistent variable 'mtime'. When the resource is loaded for the first
    time the on memory variable "bobo_time" is initialized; the modification
    time of a resource is defined as the newer of the "object.mtime" and
    "resource.bobo_time" variables.

    modified files:
     Changelog resources/zope2.py


2005-03-05 10:48:29 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-35

    Summary:
      xml, ignore unknown entity references, instead of failing
    Revision:
      itools--main--0.7--patch-35


    modified files:
     Changelog xml/XML.py


2005-03-04 12:56:36 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-34

    Summary:
      catalog, fix profile and benchmark script
    Revision:
      itools--main--0.7--patch-34


    modified files:
     Changelog catalog/prof.py


2005-03-03 13:29:26 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-33

    Summary:
      get ready to release 0.7.1
    Revision:
      itools--main--0.7--patch-33


    modified files:
     CHANGES.txt Changelog setup.py


2005-03-03 13:23:25 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-32

    Summary:
      backport fixes and performance improvements from 0.8 branch
    Revision:
      itools--main--0.7--patch-32

    Patches applied:
    
     * jdavid@itaapy.com--public/itools--main--0.8--base-0
       tag of jdavid@itaapy.com--public/itools--main--0.7--patch-30
    
     * jdavid@itaapy.com--public/itools--main--0.8--patch-1
       resources, initialization is more robust now
    
     * jdavid@itaapy.com--public/itools--main--0.8--patch-2
       resources, fix zope2 resources
    
     * jdavid@itaapy.com--public/itools--main--0.8--patch-3
       resources, implement get_ctime and get_atime for Zope 2
    
     * jdavid@itaapy.com--public/itools--main--0.8--patch-4
       resources, implement __setitem__ (Zope 2 file resources)
    
     * jdavid@itaapy.com--public/itools--main--0.8--patch-6
       catalog, now the method "search" is a generator
    
     * jdavid@itaapy.com--public/itools--main--0.8--patch-7
       catalog, optimize search (cache documents)
    

    modified files:
     Changelog catalog/Catalog.py catalog/IDocument.py
     resources/base.py resources/zope2.py

    new patches:
     jdavid@itaapy.com--public/itools--main--0.8--base-0
     jdavid@itaapy.com--public/itools--main--0.8--patch-1
     jdavid@itaapy.com--public/itools--main--0.8--patch-2
     jdavid@itaapy.com--public/itools--main--0.8--patch-3
     jdavid@itaapy.com--public/itools--main--0.8--patch-4
     jdavid@itaapy.com--public/itools--main--0.8--patch-6
     jdavid@itaapy.com--public/itools--main--0.8--patch-7


2005-02-24 18:22:06 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-31

    Summary:
      uri, don't fail with malformed email addresses ("mailto" scheme)
    Revision:
      itools--main--0.7--patch-31


    modified files:
     Changelog uri.py


2005-02-23 14:40:32 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-30

    Summary:
      resources, signal bug in "get_mimetype"
    Revision:
      itools--main--0.7--patch-30

    It should be reported in bugzilla instead (but we don't have
    bugzilla yet).

    modified files:
     Changelog resources/base.py


2005-02-23 13:55:28 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-29

    Summary:
      get ready to release 0.7.0
    Revision:
      itools--main--0.7--patch-29


    modified files:
     CHANGES.txt Changelog setup.py


2005-02-22 19:16:19 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-28

    Summary:
      catalog, don't use hasattr (it hides exceptions)
    Revision:
      itools--main--0.7--patch-28

    The method "hasattr" calls "getattr", and catches the exceptions it
    may produce, hence it is a source of confusing errors.
    
    Now "Catalog.index_document" does not use it anymore. I think it is
    better to avoid using "hasattr".

    modified files:
     Changelog catalog/Catalog.py


2005-02-22 18:05:18 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-27

    Summary:
      catalog, make search more robust
    Revision:
      itools--main--0.7--patch-27

    Don't fail if stored field is missing.

    modified files:
     Changelog catalog/Catalog.py


2005-02-22 17:53:28 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-26

    Summary:
      merge catalog optimization from the 0.6 branch
    Revision:
      itools--main--0.7--patch-26

    Patches applied:
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-65
       catalog, optimize search
    

    modified files:
     Changelog catalog/Catalog.py catalog/IDocument.py

    new patches:
     jdavid@itaapy.com--public/itools--main--0.6--patch-65


2005-02-22 13:10:22 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-25

    Summary:
      handlers, add method "copy_handler" to the API
    Revision:
      itools--main--0.7--patch-25


    modified files:
     Changelog handlers/File.py handlers/Folder.py


2005-02-21 20:11:14 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-24

    Summary:
      handlers, add new handler class MO (gettext)
    Revision:
      itools--main--0.7--patch-24


    new files:
     handlers/.arch-ids/MO.py.id handlers/MO.py

    modified files:
     Changelog handlers/PO.py handlers/__init__.py


2005-02-21 20:08:39 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-23

    Summary:
      resources, add file like interface (read)
    Revision:
      itools--main--0.7--patch-23


    modified files:
     Changelog resources/base.py


2005-02-21 17:03:36 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-22

    Summary:
      simplify Luis patch, use get_abspath
    Revision:
      itools--main--0.7--patch-22


    modified files:
     Changelog __init__.py


2005-02-21 16:56:56 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-21

    Summary:
      merge from Luis branch (itools.__arch_revision__)
    Revision:
      itools--main--0.7--patch-21

    Patches applied:
    
     * luis@itaapy.com--private/itools--luis--0.7--patch-6
       Allow to ask for the __arch_revision__ to the itools instance.
    

    modified files:
     Changelog __init__.py

    new patches:
     luis@itaapy.com--private/itools--luis--0.7--patch-6


2005-02-21 08:37:43 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-20

    Summary:
      merge from Luis branch (use distutils better)
    Revision:
      itools--main--0.7--patch-20

    Patches applied:
    
     * luis@itaapy.com--private/itools--luis--0.7--base-0
       tag of jdavid@itaapy.com--public/itools--main--0.7--patch-16
    
     * luis@itaapy.com--private/itools--luis--0.7--patch-1
       Add a commented line to allow a documentation with less pages
    
     * luis@itaapy.com--private/itools--luis--0.7--patch-2
       add a Changelog file in the source tree
    
     * luis@itaapy.com--private/itools--luis--0.7--patch-3
       Add the Changelog file in the './site-paquages/itools' Folder
    
     * luis@itaapy.com--private/itools--luis--0.7--patch-4
       Add documentation to setup.py and do clean reindent
    
     * luis@itaapy.com--private/itools--luis--0.7--patch-5
       Improve the MANIFEST.in (no more warnings in 'python setup.py sdist') 
    

    new files:
     .arch-ids/Changelog.id Changelog

    modified files:
     MANIFEST.in doc/itools.tex setup.py

    new patches:
     luis@itaapy.com--private/itools--luis--0.7--base-0
     luis@itaapy.com--private/itools--luis--0.7--patch-1
     luis@itaapy.com--private/itools--luis--0.7--patch-2
     luis@itaapy.com--private/itools--luis--0.7--patch-3
     luis@itaapy.com--private/itools--luis--0.7--patch-4
     luis@itaapy.com--private/itools--luis--0.7--patch-5


2005-02-20 18:00:35 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-19

    Summary:
      documentation, update the example of the chapter about STL
    Revision:
      itools--main--0.7--patch-19

    Now the STL chapter builds up on the task tracker from the chapter
    about writing file handler classes.

    new files:
     doc/.arch-ids/task_tracker.eps.id
     doc/examples/chapter8/.arch-ids/TaskTracker.py.id
     doc/examples/chapter8/.arch-ids/TaskTracker_view.xml.id
     doc/examples/chapter8/.arch-ids/itools.tt.id
     doc/examples/chapter8/TaskTracker.py
     doc/examples/chapter8/TaskTracker_view.xml
     doc/examples/chapter8/itools.tt doc/task_tracker.eps

    removed files:
     doc/examples/chapter8/.arch-ids/addressbook.py.id
     doc/examples/chapter8/.arch-ids/addressbook_view.xml.id
     doc/examples/chapter8/addressbook.py
     doc/examples/chapter8/addressbook_view.xml

    modified files:
     doc/examples/chapter5/TaskTracker.py doc/files2.tex
     doc/stl.tex


2005-02-20 16:43:48 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-18

    Summary:
      documentation, clean examples, orthograph corrections
    Revision:
      itools--main--0.7--patch-18


    removed files:
     doc/examples/chapter7/.arch-ids/=id
     doc/examples/chapter7/.arch-ids/addressbook.py.id
     doc/examples/chapter7/.arch-ids/addressbook.xml.id
     doc/examples/chapter7/addressbook.py
     doc/examples/chapter7/addressbook.xml

    modified files:
     doc/files2.tex doc/stl.tex

    renamed files:
     doc/examples/chapter6/.arch-ids/=id
       ==> doc/examples/chapter8/.arch-ids/=id
     doc/examples/chapter6/.arch-ids/addressbook.py.id
       ==> doc/examples/chapter8/.arch-ids/addressbook.py.id
     doc/examples/chapter6/.arch-ids/addressbook_view.xml.id
       ==> doc/examples/chapter8/.arch-ids/addressbook_view.xml.id
     doc/examples/chapter6/.arch-ids/template.xml.id
       ==> doc/examples/chapter8/.arch-ids/template.xml.id

    new directories:
     doc/examples/chapter8/.arch-ids

    removed directories:
     doc/examples/chapter6/.arch-ids doc/examples/chapter7
     doc/examples/chapter7/.arch-ids

    renamed directories:
     doc/examples/chapter6
       ==> doc/examples/chapter8


2005-02-19 18:54:24 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-17

    Summary:
      add event "after_commit", fix "set_handler" semantics
    Revision:
      itools--main--0.7--patch-17

    Now the "set_handler" method makes a copy of the given handler and
    then sets its parent and name attributes. This way we preserve the
    semantics, hence not breaking code.
    
    Addded a new event, "after_commit".

    modified files:
     catalog/Catalog.py catalog/IIndex.py handlers/File.py
     handlers/Folder.py handlers/Handler.py


2005-02-17 18:59:32 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-16

    Summary:
      handlers, test wether the resource still exists before to save
    Revision:
      itools--main--0.7--patch-16


    modified files:
     handlers/Handler.py


2005-02-17 17:56:31 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-15

    Summary:
      merge from the 0.6 branch
    Revision:
      itools--main--0.7--patch-15

    Patches applied:
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-58
       update the changelog
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-59
       xml, fix XHTML and HTML serialization, correctly set the encoding
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-60
       handlers, now the encoding default is UTF-8 (for "to_unicode")
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-61
       fix paths for Windows
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-62
       get ready to release 0.6.4
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-63
       catalog, fix "IO.decode_vint" and "IO.encode_byte"
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-64
       catalog, add unit test for "IO"
    

    new files:
     catalog/.arch-ids/test_io.py.id catalog/test_io.py

    removed files:
     .arch-ids/Changelog.id Changelog

    modified files:
     CHANGES.txt __init__.py catalog/IO.py doc/files.tex
     doc/files2.tex handlers/Text.py resources/__init__.py setup.py
     xml/HTML.py xml/XHTML.py xml/XML.py

    new patches:
     jdavid@itaapy.com--public/itools--main--0.6--patch-58
     jdavid@itaapy.com--public/itools--main--0.6--patch-59
     jdavid@itaapy.com--public/itools--main--0.6--patch-60
     jdavid@itaapy.com--public/itools--main--0.6--patch-61
     jdavid@itaapy.com--public/itools--main--0.6--patch-62
     jdavid@itaapy.com--public/itools--main--0.6--patch-63
     jdavid@itaapy.com--public/itools--main--0.6--patch-64


2005-02-13 20:02:50 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-14

    Summary:
      handlers, fix "_set_handler"
    Revision:
      itools--main--0.7--patch-14

    Now, when trying to effectively add a handler to a folder (see
    Folder._set_handler), it is saved first if it is not up-to-date.
    
    Also, fix the timestamp in several places, from "now()" to the
    resources modification time.

    modified files:
     Changelog catalog/IDocument.py handlers/Folder.py
     handlers/Handler.py


2005-02-13 19:25:10 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-13

    Summary:
      handlers, fixing transaction bugs
    Revision:
      itools--main--0.7--patch-13

    Two bugs have been fixed. First "Folder.set_handler" correctly sets the
    container being modified as changed, instead of "self".
    
    Second, "commit_transaction" has been changed so if the transaction is
    modified through the loop it does not break.

    modified files:
     Changelog handlers/Folder.py handlers/Handler.py


2005-02-12 18:07:26 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-12

    Summary:
      handlers, implement transactions
    Revision:
      itools--main--0.7--patch-12

    Now handler classes provide an API to work with transactions:
    
     - set_changed
     - commit_transaction
     - rollback_transaction

    modified files:
     Changelog catalog/Catalog.py handlers/Folder.py
     handlers/Handler.py handlers/PO.py zope/Context.py


2005-02-12 16:20:47 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-11

    Summary:
      handlers, the timestamp is initialized with its resource mtime
    Revision:
      itools--main--0.7--patch-11

    Now the handler timestamp is initialized with its resource's timestamp,
    instead of with the current time. So now we are able to know wether a
    handler has changed, i.e. the resource is outdated.
    
    The method "has_changed" has been added to the API.
    
    This change will allow performance improvements.

    modified files:
     Changelog handlers/Handler.py


2005-02-12 15:58:31 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-10

    Summary:
      handlers, folder's state keeps resource names (in the cache)
    Revision:
      itools--main--0.7--patch-10

    With this patch when folder handler is loaded its cache initialized
    with the resource names. This is to say, the handler state are the
    the names of the resources it contains.
    
    This change prevents to access the folder's resource on read operations,
    hence improving the performance. How much depends on the speed of the
    underlying resource layer.

    modified files:
     Changelog handlers/Folder.py


2005-02-10 10:23:41 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-9

    Summary:
      update changelog
    Revision:
      itools--main--0.7--patch-9


    new files:
     .arch-ids/Changelog.id Changelog

    removed files:
     .arch-ids/Changelog.id Changelog


2005-02-09 20:07:56 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-8

    Summary:
      handlers, call "on_del_handler" before the handler is deleted
    Revision:
      itools--main--0.7--patch-8


    modified files:
     handlers/Folder.py


2005-02-09 19:54:54 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-7

    Summary:
      handlers, fixing folders (load/save)
    Revision:
      itools--main--0.7--patch-7


    modified files:
     catalog/Catalog.py handlers/Folder.py


2005-02-09 18:46:26 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-6

    Summary:
      merge from 0.6 branch
    Revision:
      itools--main--0.7--patch-6

    Patches applied:
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-57
       catalog, search by keywords checks if the field exists
    

    modified files:
     catalog/Catalog.py

    new patches:
     jdavid@itaapy.com--public/itools--main--0.6--patch-57


2005-02-07 21:20:32 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-5

    Summary:
      handlers, now folders follow the load/save model
    Revision:
      itools--main--0.7--patch-5


    modified files:
     catalog/Catalog.py catalog/IIndex.py catalog/test.py
     handlers/Folder.py


2005-02-06 17:33:22 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-4

    Summary:
      merge from 0.6 branch
    Revision:
      itools--main--0.7--patch-4

    Patches applied:
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-50
       documentation, start chapter about writing file handler classes
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-51
       documentation, finish the new chapter about writing file handlers
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-52
       get ready to release 0.6.2
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-53
       zope, fix checkid, return always string, not unicode
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-54
       xml, now ComplexType.encode returns string instead of unicode
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-55
       get ready to release 0.6.3
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-56
       xml, load the "lang" attribute (Schema) as an string
    

    new files:
     doc/.arch-ids/files2.tex.id
     doc/examples/chapter5/.arch-ids/=id
     doc/examples/chapter5/.arch-ids/TaskTracker.py.id
     doc/examples/chapter5/.arch-ids/itools.tt.id
     doc/examples/chapter5/TaskTracker.py
     doc/examples/chapter5/itools.tt doc/files2.tex

    removed files:
     doc/.arch-ids/chandlers.tex.id doc/chandlers.tex

    modified files:
     CHANGES.txt doc/Makefile doc/files.tex doc/itools.tex setup.py
     xml/Schema.py zope/utils.py

    new directories:
     doc/examples/chapter5 doc/examples/chapter5/.arch-ids

    new patches:
     jdavid@itaapy.com--public/itools--main--0.6--patch-50
     jdavid@itaapy.com--public/itools--main--0.6--patch-51
     jdavid@itaapy.com--public/itools--main--0.6--patch-52
     jdavid@itaapy.com--public/itools--main--0.6--patch-53
     jdavid@itaapy.com--public/itools--main--0.6--patch-54
     jdavid@itaapy.com--public/itools--main--0.6--patch-55
     jdavid@itaapy.com--public/itools--main--0.6--patch-56


2005-01-26 19:24:24 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-3

    Summary:
      merge catalog fixes from the 0.6 branch
    Revision:
      itools--main--0.7--patch-3

    Patches applied:
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-46
       catalog, now keyword fields accept lists
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-47
       catalog, use at least 8 characters to name document resources
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-48
       catalog, fix the save operation
    
     * jdavid@itaapy.com--public/itools--main--0.6--patch-49
       catalog, add new method "how_many"
    

    modified files:
     catalog/Analysers.py catalog/Catalog.py catalog/IIndex.py

    new patches:
     jdavid@itaapy.com--public/itools--main--0.6--patch-46
     jdavid@itaapy.com--public/itools--main--0.6--patch-47
     jdavid@itaapy.com--public/itools--main--0.6--patch-48
     jdavid@itaapy.com--public/itools--main--0.6--patch-49


2005-01-23 21:09:00 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-2

    Summary:
      resources, fix zope2 resources
    Revision:
      itools--main--0.7--patch-2

    Now we get the Zope's root through the request object, what is more
    robus than to call "Zope.app", because it does not open a dabase
    connection.

    modified files:
     resources/zope2.py


2005-01-23 20:17:58 GMT	J. David Ibanez <jdavid@itaapy.com>	patch-1

    Summary:
      resources, started resource classes for Zope 2
    Revision:
      itools--main--0.7--patch-1


    new files:
     resources/.arch-ids/zope2.py.id resources/zope2.py


2005-01-23 18:20:17 GMT	J. David Ibanez <jdavid@itaapy.com>	base-0

    Summary:
      tag of jdavid@itaapy.com--public/itools--main--0.6--patch-45
    Revision:
      itools--main--0.7--base-0

    (automatically generated log message)

    new patches:
     herve@oursours.net--public/itools--herve--0.5--base-0
     herve@oursours.net--public/itools--herve--0.5--patch-1
     herve@oursours.net--public/itools--herve--0.5--patch-2
     herve@oursours.net--public/itools--herve--0.5--patch-3
     herve@oursours.net--public/itools--herve--0.5--patch-4
     herve@oursours.net--public/itools--herve--0.5--patch-5
     herve@oursours.net--public/itools--herve--0.5--patch-6
     herve@oursours.net--public/itools--herve--0.5--patch-7
     jdavid@itaapy.com--public/itools--main--0.4--base-0
     jdavid@itaapy.com--public/itools--main--0.4--patch-1
     jdavid@itaapy.com--public/itools--main--0.4--patch-2
     jdavid@itaapy.com--public/itools--main--0.4--patch-3
     jdavid@itaapy.com--public/itools--main--0.4--patch-4
     jdavid@itaapy.com--public/itools--main--0.4--patch-5
     jdavid@itaapy.com--public/itools--main--0.4--patch-6
     jdavid@itaapy.com--public/itools--main--0.4--patch-7
     jdavid@itaapy.com--public/itools--main--0.4--patch-8
     jdavid@itaapy.com--public/itools--main--0.4--patch-9
     jdavid@itaapy.com--public/itools--main--0.4--patch-10
     jdavid@itaapy.com--public/itools--main--0.4--patch-11
     jdavid@itaapy.com--public/itools--main--0.4--patch-12
     jdavid@itaapy.com--public/itools--main--0.4--patch-13
     jdavid@itaapy.com--public/itools--main--0.4--patch-14
     jdavid@itaapy.com--public/itools--main--0.4--patch-15
     jdavid@itaapy.com--public/itools--main--0.4--patch-16
     jdavid@itaapy.com--public/itools--main--0.4--patch-17
     jdavid@itaapy.com--public/itools--main--0.4--patch-18
     jdavid@itaapy.com--public/itools--main--0.4--patch-19
     jdavid@itaapy.com--public/itools--main--0.4--patch-20
     jdavid@itaapy.com--public/itools--main--0.4--patch-21
     jdavid@itaapy.com--public/itools--main--0.4--patch-22
     jdavid@itaapy.com--public/itools--main--0.4--patch-23
     jdavid@itaapy.com--public/itools--main--0.4--patch-24
     jdavid@itaapy.com--public/itools--main--0.4--patch-25
     jdavid@itaapy.com--public/itools--main--0.4--patch-26
     jdavid@itaapy.com--public/itools--main--0.4--patch-27
     jdavid@itaapy.com--public/itools--main--0.4--patch-28
     jdavid@itaapy.com--public/itools--main--0.4--patch-29
     jdavid@itaapy.com--public/itools--main--0.4--patch-30
     jdavid@itaapy.com--public/itools--main--0.4--patch-31
     jdavid@itaapy.com--public/itools--main--0.4--patch-32
     jdavid@itaapy.com--public/itools--main--0.4--patch-33
     jdavid@itaapy.com--public/itools--main--0.4--patch-34
     jdavid@itaapy.com--public/itools--main--0.4--patch-35
     jdavid@itaapy.com--public/itools--main--0.4--patch-36
     jdavid@itaapy.com--public/itools--main--0.4--patch-37
     jdavid@itaapy.com--public/itools--main--0.4--patch-38
     jdavid@itaapy.com--public/itools--main--0.4--patch-39
     jdavid@itaapy.com--public/itools--main--0.4--patch-40
     jdavid@itaapy.com--public/itools--main--0.4--patch-41
     jdavid@itaapy.com--public/itools--main--0.4--patch-42
     jdavid@itaapy.com--public/itools--main--0.4--patch-43
     jdavid@itaapy.com--public/itools--main--0.4--patch-44
     jdavid@itaapy.com--public/itools--main--0.4--patch-45
     jdavid@itaapy.com--public/itools--main--0.4--patch-46
     jdavid@itaapy.com--public/itools--main--0.4--patch-47
     jdavid@itaapy.com--public/itools--main--0.4--patch-48
     jdavid@itaapy.com--public/itools--main--0.4--patch-49
     jdavid@itaapy.com--public/itools--main--0.4--patch-50
     jdavid@itaapy.com--public/itools--main--0.4--patch-51
     jdavid@itaapy.com--public/itools--main--0.4--patch-52
     jdavid@itaapy.com--public/itools--main--0.4--patch-53
     jdavid@itaapy.com--public/itools--main--0.4--patch-54
     jdavid@itaapy.com--public/itools--main--0.4--patch-55
     jdavid@itaapy.com--public/itools--main--0.4--patch-56
     jdavid@itaapy.com--public/itools--main--0.4--patch-57
     jdavid@itaapy.com--public/itools--main--0.4--patch-58
     jdavid@itaapy.com--public/itools--main--0.4--patch-59
     jdavid@itaapy.com--public/itools--main--0.4--patch-60
     jdavid@itaapy.com--public/itools--main--0.4--patch-61
     jdavid@itaapy.com--public/itools--main--0.4--patch-62
     jdavid@itaapy.com--public/itools--main--0.4--patch-63
     jdavid@itaapy.com--public/itools--main--0.4--patch-64
     jdavid@itaapy.com--public/itools--main--0.4--patch-65
     jdavid@itaapy.com--public/itools--main--0.4--patch-66
     jdavid@itaapy.com--public/itools--main--0.4--patch-67
     jdavid@itaapy.com--public/itools--main--0.4--patch-68
     jdavid@itaapy.com--public/itools--main--0.4--patch-69
     jdavid@itaapy.com--public/itools--main--0.4--patch-70
     jdavid@itaapy.com--public/itools--main--0.4--patch-71
     jdavid@itaapy.com--public/itools--main--0.4--patch-72
     jdavid@itaapy.com--public/itools--main--0.4--patch-73
     jdavid@itaapy.com--public/itools--main--0.4--patch-74
     jdavid@itaapy.com--public/itools--main--0.4--patch-75
     jdavid@itaapy.com--public/itools--main--0.4--patch-76
     jdavid@itaapy.com--public/itools--main--0.4--patch-77
     jdavid@itaapy.com--public/itools--main--0.4--patch-78
     jdavid@itaapy.com--public/itools--main--0.4--patch-79
     jdavid@itaapy.com--public/itools--main--0.4--patch-80
     jdavid@itaapy.com--public/itools--main--0.4--patch-81
     jdavid@itaapy.com--public/itools--main--0.4--patch-82
     jdavid@itaapy.com--public/itools--main--0.4--patch-83
     jdavid@itaapy.com--public/itools--main--0.4--patch-84
     jdavid@itaapy.com--public/itools--main--0.4--patch-85
     jdavid@itaapy.com--public/itools--main--0.4--patch-86
     jdavid@itaapy.com--public/itools--main--0.4--patch-87
     jdavid@itaapy.com--public/itools--main--0.5--base-0
     jdavid@itaapy.com--public/itools--main--0.5--patch-1
     jdavid@itaapy.com--public/itools--main--0.5--patch-2
     jdavid@itaapy.com--public/itools--main--0.5--patch-3
     jdavid@itaapy.com--public/itools--main--0.5--patch-4
     jdavid@itaapy.com--public/itools--main--0.5--patch-5
     jdavid@itaapy.com--public/itools--main--0.5--patch-6
     jdavid@itaapy.com--public/itools--main--0.5--patch-7
     jdavid@itaapy.com--public/itools--main--0.5--patch-8
     jdavid@itaapy.com--public/itools--main--0.5--patch-9
     jdavid@itaapy.com--public/itools--main--0.5--patch-10
     jdavid@itaapy.com--public/itools--main--0.5--patch-11
     jdavid@itaapy.com--public/itools--main--0.5--patch-12
     jdavid@itaapy.com--public/itools--main--0.5--patch-13
     jdavid@itaapy.com--public/itools--main--0.5--patch-14
     jdavid@itaapy.com--public/itools--main--0.5--patch-15
     jdavid@itaapy.com--public/itools--main--0.5--patch-16
     jdavid@itaapy.com--public/itools--main--0.5--patch-17
     jdavid@itaapy.com--public/itools--main--0.5--patch-18
     jdavid@itaapy.com--public/itools--main--0.5--patch-19
     jdavid@itaapy.com--public/itools--main--0.5--patch-20
     jdavid@itaapy.com--public/itools--main--0.5--patch-21
     jdavid@itaapy.com--public/itools--main--0.5--patch-22
     jdavid@itaapy.com--public/itools--main--0.5--patch-23
     jdavid@itaapy.com--public/itools--main--0.5--patch-24
     jdavid@itaapy.com--public/itools--main--0.5--patch-25
     jdavid@itaapy.com--public/itools--main--0.5--patch-26
     jdavid@itaapy.com--public/itools--main--0.5--patch-27
     jdavid@itaapy.com--public/itools--main--0.5--patch-28
     jdavid@itaapy.com--public/itools--main--0.5--patch-29
     jdavid@itaapy.com--public/itools--main--0.5--patch-30
     jdavid@itaapy.com--public/itools--main--0.5--patch-31
     jdavid@itaapy.com--public/itools--main--0.5--patch-32
     jdavid@itaapy.com--public/itools--main--0.5--patch-33
     jdavid@itaapy.com--public/itools--main--0.5--patch-34
     jdavid@itaapy.com--public/itools--main--0.5--patch-35
     jdavid@itaapy.com--public/itools--main--0.5--patch-36
     jdavid@itaapy.com--public/itools--main--0.5--patch-37
     jdavid@itaapy.com--public/itools--main--0.5--patch-38
     jdavid@itaapy.com--public/itools--main--0.5--patch-39
     jdavid@itaapy.com--public/itools--main--0.5--patch-40
     jdavid@itaapy.com--public/itools--main--0.5--patch-41
     jdavid@itaapy.com--public/itools--main--0.6--base-0
     jdavid@itaapy.com--public/itools--main--0.6--patch-1
     jdavid@itaapy.com--public/itools--main--0.6--patch-2
     jdavid@itaapy.com--public/itools--main--0.6--patch-3
     jdavid@itaapy.com--public/itools--main--0.6--patch-4
     jdavid@itaapy.com--public/itools--main--0.6--patch-5
     jdavid@itaapy.com--public/itools--main--0.6--patch-6
     jdavid@itaapy.com--public/itools--main--0.6--patch-7
     jdavid@itaapy.com--public/itools--main--0.6--patch-8
     jdavid@itaapy.com--public/itools--main--0.6--patch-9
     jdavid@itaapy.com--public/itools--main--0.6--patch-10
     jdavid@itaapy.com--public/itools--main--0.6--patch-11
     jdavid@itaapy.com--public/itools--main--0.6--patch-12
     jdavid@itaapy.com--public/itools--main--0.6--patch-13
     jdavid@itaapy.com--public/itools--main--0.6--patch-14
     jdavid@itaapy.com--public/itools--main--0.6--patch-15
     jdavid@itaapy.com--public/itools--main--0.6--patch-16
     jdavid@itaapy.com--public/itools--main--0.6--patch-17
     jdavid@itaapy.com--public/itools--main--0.6--patch-18
     jdavid@itaapy.com--public/itools--main--0.6--patch-19
     jdavid@itaapy.com--public/itools--main--0.6--patch-20
     jdavid@itaapy.com--public/itools--main--0.6--patch-21
     jdavid@itaapy.com--public/itools--main--0.6--patch-22
     jdavid@itaapy.com--public/itools--main--0.6--patch-23
     jdavid@itaapy.com--public/itools--main--0.6--patch-24
     jdavid@itaapy.com--public/itools--main--0.6--patch-25
     jdavid@itaapy.com--public/itools--main--0.6--patch-26
     jdavid@itaapy.com--public/itools--main--0.6--patch-27
     jdavid@itaapy.com--public/itools--main--0.6--patch-28
     jdavid@itaapy.com--public/itools--main--0.6--patch-29
     jdavid@itaapy.com--public/itools--main--0.6--patch-30
     jdavid@itaapy.com--public/itools--main--0.6--patch-31
     jdavid@itaapy.com--public/itools--main--0.6--patch-32
     jdavid@itaapy.com--public/itools--main--0.6--patch-33
     jdavid@itaapy.com--public/itools--main--0.6--patch-34
     jdavid@itaapy.com--public/itools--main--0.6--patch-35
     jdavid@itaapy.com--public/itools--main--0.6--patch-36
     jdavid@itaapy.com--public/itools--main--0.6--patch-37
     jdavid@itaapy.com--public/itools--main--0.6--patch-38
     jdavid@itaapy.com--public/itools--main--0.6--patch-39
     jdavid@itaapy.com--public/itools--main--0.6--patch-40
     jdavid@itaapy.com--public/itools--main--0.6--patch-41
     jdavid@itaapy.com--public/itools--main--0.6--patch-42
     jdavid@itaapy.com--public/itools--main--0.6--patch-43
     jdavid@itaapy.com--public/itools--main--0.6--patch-44
     jdavid@itaapy.com--public/itools--main--0.6--patch-45


