Products.GenericSetup Changelog
===============================

1.4.4 (2009-05-15)
------------------

- Make sure that 'manage_createSnapshot' returns something to the browser
  when it's done, preventing an apparent hang.
  (http://dev.plone.org/plone/ticket/8452, 
   https://bugs.launchpad.net/zope-cmf/+bug/161730)

- Fixed invalid XML for the "Import' tab so it doesn't break when rendered
  with Chameleon.

1.4.3 (2009-04-22)
------------------

- Recognize acquisition-wrapped components as being of the right underlying
  type when testing for replacement during import.  
  (https://bugs.launchpad.net/zope-cmf/+bug/365202)

- Don't fail when a sub-item cannot be adapted after creation when
  importing a folder.  (https://bugs.launchpad.net/zope-cmf/+bug/300315)

- Avoid even an explicit purge of the rolemap if no XML file is present
  in a given context.  (https://bugs.launchpad.net/zope-cmf/+bug/279294)

- Changed upgrade logic to set the current version after an upgrade to the
  of the last step, instead of the current profile version.

1.4.2.2 (2008-09-22)
--------------------

- Packaging update:  version of 1.4.2.1 said '1.4.2'.

1.4.2.1 (2008-09-22)
--------------------

- Packaging update:  version of 1.4.2 said '1.4.2dev'.

1.4.2 (2008-09-22)
------------------

- Add 'IChunkedImportContext' interface, allowing RAM-efficient chunked
  reads of large files, and implement for 'DirectoryImportContext'.
  (https://bugs.launchpad.net/zope-cmf/+bug/259233)

- Add 'IChunkedExportContext' interface, allowing RAM-efficient chunked
  writes of large files, and implement for 'DirectoryExportContext'.
  (https://bugs.launchpad.net/zope-cmf/+bug/257365)

- Update local component registry importer to prevent it from overwriting
  existing utilities if they are already of the correct type

- Property import/export tests: Fix and test for non-ASCII properties.
  (https://bugs.launchpad.net/zope-cmf/+bug/202356)
  (https://bugs.launchpad.net/zope-cmf/+bug/242588)

- Provide default for dependencies when processing metadata.xml, to
  avoid a KeyError.
  (https://bugs.launchpad.net/zope-cmf/+bug/255301)

- Update PropertyManagerHelpers to make it possible to remove elements from a
  property by adding a remove="True" attribute to the element. This can
  also be used to reorder elements since new elements are always added
  at the end of the list.


1.4.1 (2008-05-27)
------------------

- When loading multiple profiles reload the list of steps to use after
  each import. https://bugs.launchpad.net/zope-cmf/+bug/213905


1.4.0 (2008-03-23)
------------------

- Make getProfileImportDate handle situations where one object's id
  is a prefix of another id.


1.4.0-beta (2008-02-07)
-----------------------

- During object manager imports do not throw an error when
  trying to remove an object that was already removed.

- utils: Added MarkerInterfaceHelpers.

- Added default values to the registerProfile ZCML directive.

- Add a ZMI interface to find and remove invalid steps from the
  persistent registries.

- All GenericSetup import and export steps are now registered globally.

- Remove duplicated test (https://bugs.launchpad.net/zope-cmf/+bug/174910)

- Don't create empty 'import_steps.xml' and 'export_steps.xml' files.

- Fix relative paths for profile dependencies.

- Add support for context dependencies in profiles.

- Deprecate the version field for import steps.

- Deprecate reading of version.txt to get the version for a profile.

- Fire events before and after importing.

- Use zcml to register import and export steps.


1.3.3 (2007-12-29)
------------------

- Be more careful in checking context id validity.

- tool: Fixed toolset import handler not to initialize tools again, when
  they already exist in the site.


1.3.2 (2007-09-11)
------------------

- Ignore import and export step handlers that we can not resolve.

- Restore the import context after running steps from a profile
  so we do not break on nested calls.

- components: Provide log output when purging utilities or adapters.

- components: Fixed an undefined variable name in a log message.


1.3.1 (2007-08-08)
------------------

- components: correct the object path for the site root to be the
  empty string.

- components: Made output more diff friendly.

- utils: Added warnings to old code.
  ImportConfiguratorBase and ExportConfiguratorBase will become deprecated
  as soon as GenericSetup itself no longer uses them. HandlerBase is now
  deprecated.

- components: Added 'components_xmlconfig.html' form.
  This view allows to inspect and edit component registrations. It is also
  available under the ZMI tab 'manage_components'.


1.3 (2007-07-26)
----------------

- components: Removed non-functional support for registering objects in
  nested folders. We only support objects available in the component
  registry's parent now. The component registry needs to be either
  acquisition wrapped or have a __parent__ pointer to get to the parent.


1.3-beta (2007-07-12)
---------------------

- Guard against situations where encoded text may be compared by the
  differ.
  (http://www.zope.org/Collectors/CMF/471)

- Extend the ZCatalog import/export mechanism to allow removal of 
  metadata columns in addition to adding them.
  (http://www.zope.org/Collectors/CMF/483)

- Made sure we register Acquisition free objects as utilities in the
  components handler.

- Profiles now support version numbers; setup tool tracks profile
  versions during upgrades.

- Added support for nested 'upgradeStep' directives; expanded upgrade
  step registry into a real registry object and not just a dictionary.

- Added support for 'metadata.xml' in the profile (read during
  profile registration) to register profile description, version,
  and dependencies.

- Deprecated runImportStep and runAllImportSteps in favor of
  runImportStepFromProfile and runAllImportStepsFromProfile.

- Merged CPS's upgradeStep ZCML directive, w/ corresponding tool support.

- Added a "last imported" date to the list of extension profiles,
  and to the baseline profile.

- Renamed the "Properties" tab to "Profiles".

- Removed the 'create_report' decoy in the ZMI view methods:  there was
  never any UI for passing any value other than the default, anyway, and
  the report objects are too useful to omit.

- Refactored the "Properties" tab to separate baseline profiles from
  extension profiles, marking the option to reset the baseline as
  potentially dangerous for sites which already have one.  Allow
  importing one or more extension profiles directly (all steps) from the 
  "Properties" tab.

- No longer read the toolset xml and update the toolset regustry on
  import context change.  Doing this only during the toolset step import
  should be sufficient.

- testing: The test base classes no longer set up any ZCML.
  This change is not backwards compatible. If you are using these base
  classes for testing custom handlers, you have to add the necessary ZCML
  setup and tear down. Using test layers is recommended.

- Added support for importing-exporting Zope 3 component registries
  by folding in Hanno Schlichting's GSLocalAddons product.


1.2-beta (2006-09-20)
---------------------

- tool:  Added support for uploading a tarball on the "Import" tab
  (i.e., one produced on the export tab).

- docs: Added SampleSite demo product.

- ProfileRegistry: Added 'registerProfile' ZCML directive.
  Using the old registerProfile method in initialize() is now deprecated.
  See doc/profiles.txt for details.

- ProfileRegistry: 'product' should now be the module name.
  For backwards compatibility 'product' is still first looked up in
  Products before searching the default module search path.

- ZCTextIndex handler: Fixed 'indexed_attr' import.
  (http://www.zope.org/Collectors/CMF/436)

- docs: Added 'Registering Profiles' section to profiles.txt.

- Added support for PageTemplate import/export, modeled closely after
  existing PythonScript support

- The dependency sorting was highly reliant on steps being added in the
  right order to work. If import step A depends on import step B which 
  depends on step C, and step C gets processed early, and they were 
  processed in the order A, C, B, then the dependency order would be 
  incorrect. This is now fixed by keeping tack of steps with unresolved
  dependencies, and trying again after inserting everything else.


1.1 (2006-04-16)
----------------

- ZCatalog handler: Implemented the 'remove' directive for indexes.
  This allows to write extension profiles that remove or replace indexes.

- getExportStepRegistry had the wrong security declaration


1.1-beta2 (2006-03-26)
----------------------

- No changes - tag created to coincide with CMF 2.0.0-beta2


1.1-beta (2006-03-08)
---------------------

- Allowed subclasses of DAVAwareFileAdapter to override the filename
  in which the file is stored.

- Added a doc directory including some basic documentation.

- Made GenericSetup a standalone package independent of the CMF

- Added ``for_`` argument to profile registry operations.
  A profile may be registered and queried as appropriate to a specific
  site interface;  the default value, 'None', indicates that the profile
  is relevant to any site.  Note that this is essentially an adapter
  lookup;  perhaps we should reimplement it so.

- Forward ported changes from GenericSetup 0.11 and 0.12 (which were
  created in a separate repository).

- A sequence property with the purge="False" attribute will not be
  purged, but merged (the sequences are treated as sets, which means
  that duplicates are removed). This is useful in extension profiles.

- Don't export or purge read-only properties. Correctly purge
  non-deletable int/float properties.

- Correctly quote XML on export.


1.0 (2005-09-23)
----------------

- CVS tag:  GenericSetup-1_0

- Forward-ported i18n support from CMF 1.5 branch.

- Forward ported BBB for old instances that stored properties as
  lists from CMFSetup.

- Forward ported fix for tools with non unique IDs from CMFSetup.


0.12 (2005-08-29)
-----------------

- CVS tag:  GenericSetup-0_12

- Import requests now create reports (by default) which record any
  status messages generated by the profile's steps.


0.11 (2005-08-23)
-----------------

- CVS tag:  GenericSetup-0_11

- Added report of messages generated by import to the "Import" tab.

- Consolidated ISetupContext implementation into base class,
  'SetupContextBase'.

- Added 'note', 'listNotes', and 'clearNotes'  methods to ISetupContext,
  to allow plugins to record information about the state of the operation.


0.10 (2005-08-11)
-----------------

- CVS tag:  GenericSetup-0_10

- Added TarballImportContext, including full test suite.


0.9 (2005-08-08)
----------------
- CVS tag:  GenericSetup-0_9

- Initial version, cut down from CMFSetup-1.5.3

