Changes
=======

2.3 (2010/07/16)
----------------

- Update code to be compatible with Zope 2.12, replace ZCTextIndex
  with TextIndex.

2.2b1 (2010/01/25)
------------------

- Clean CMF compatibility code.

- Remove the usage of Products.Annotations. We now use regular
  zope.annotations.

- Service Metadata is registered as an utility, and is a service
  inheriting from silva.core.services.

- Catalog service from silva.core.services is now used. It used
  adapters instead of Products.ProxyIndex. This make possible to copy
  a metadata value in the catalog, to access it from the brain object
  without waking up the object itself.


1.2 (2008/09/30)
----------------

Features added:

- Add support in Bindings for rendering the edit views of elements
  with values from the request.

- Rewrite documentation as a clean ReST.

1.1
---

Features added:

- Add id suggestion for set naming convention to add ui.

Bugs fixed:

- Binding.setValuesFromRequest more cleanly 'fakes' a real HTTPRequest
  when calling ``form.validate_all``, so that referencelookupwindows
  can be used as metadata fields.

1.0.1
-----

Bugs fixed:

- The Zope 2.10 event system was causing importing .zexp which
  contained the metadata service to fail. Fixed this.

1.0
---

Features added:

- Made SilvaMetadata Zope-2.10 compliant, so that it works with Silva
  2.0.

0.17
----

Features added :

- 2007-03-15: The default access handler and the
  ``MetadataBindingAdapter`` now have a ``read_only`` parameter, False
  by default, that if set to true will cause all write actions to the
  binding to be silently ignored.

0.16
----

Bugs fixed:

- 2007-01-25: Added missing imports in MetadataTool.py.

0.15
----

Bugs fixed:

- MetadataTool.getMetadataValue did not work correctly for Ghosts and
  GhostFolders, it does now.

0.14
----

Features added:

- Added 'Export Metadata Set as XML' button to set overview screen.

- Changed the button value in Content Type Mappings from 'edit
  mappings' to 'save mappings'.

Bugs fixed:

- Bugfix for empty strings in aqcuirable metadata fields blocking
  acquisition. Many thanks to Nico Grubert for the bug report and
  proposed fix!

0.13
----

Features added:

- MetadataTool.getMetadataValue can now get just this objects
  metadata, not acquiring parent metadata

0.11
----

Features added:

- If an extension to Silva provides IAcquiredUpdater adapters for
  content objects, these will used. An IAcquiredUpdater adapter for
  an IContainer could for instance reindex any sub-objects.

- Use Zope 3 style interfaces. This means that Zope 2.8 is now
  required.

Bugs fixed:

- Stop using deprecated ``CMFCore.CMFCorePermissions`` module

- Even more fixes to the unit tests (issue 1381).

0.10
----

Bugs fixed:

- Fixed unit tests (issue 1380).

0.9
---

Features added:

- Metadata sets can have a 'category' property. This property can
  be used to define special purpose metadata sets.

- The ``minimal_role`` and category properties are exported and
  imported to/from the XML metadata set definitions.

Bugs fixed:

- setValuesFromRequest now uses Formulator to validate user input.
  This solves the infamous 'checkbox' problem.

- ``MetadataTool.setMetadataValues()`` has been removed.

- XML export/import now works with latest Formulator release
  (fixing issues with Formulator's i18n support).

- unit test have been updated to run with Silva.

- ``MetadataTool.getMetadataValue`` now supports object delegation.

0.8
---

Features added

- Metadata Sets now have a Minimal Role property, that can be used
  by Silva to restrict access to a Set.

0.7.6
-----

Bugs fixed

- Make getMetadataValue shortcut a bit more robust. Also some
  performance tweaks.

0.7.5
-----

Bugs fixed:

- XML import with unrecognized metadata sets now skips these sets
  silently.

- XML export for integers and floats should now work properly when
  Python 2.1 is used.

- Make SilvaMetadata field editing work with Formulator 1.6.0.

0.7.4
-----

Bugs fixed:

- XML import would fail with a NameError if a metadata set is imported
  that is not registered. Now it fails with a more informative
  error... What *should* be happening is that this unrecognized
  metadata is skipped, instead.

0.7.3
-----

Features added:

- icon for ``service_metadata``.

Bugs fixed:

- XML import of complex lists for items now works.

- Indexing with XML import now works.

0.7.2
-----

Bugs fixed:

- getMetadataValue was buggy and didn't really work. Fixed.

0.7.1
-----

Features added:

- Added Infrae standard release documentation.

Bugs fixed:

- Avoid quadratic behavior while indexing. Previously, for n
  elements that are indexed, for each element indexing the data for
  the n indexes was accessed, resulting in quadratic behavior while
  indexing (n * n values were accessed per object).

0.5
---

-  Initial public release of SilvaMetadata.
