1.3.2-final - 2005-03-05
========================

 * Made deprecation warnings less verbose. If someone wants them, switch 
   DEBUG in config.py to True.
   [yenzenz]

 * Added IntDisplayList to the public module
   [tiran]

 * Added Sidney's AttributeValidator to BaseObject. It's disabled for now
   because it might break third party software which relies on a broken
   behavior. You can enable it by setting ATTRIBUTE_SECURITY to True.
   [tiran]

1.3.2-rc1 - 2005-02-26
======================

 * Using registerType w/o a package name is deprecated. Explict is better
   than implicit!
   [tiran]

 * Fixed DisplayList for int keys. The warning module was missing *blush*
   [tiran]
   
 * Added IntDisplayList to utils.py. Also I've coded some nice doc tests for
   DisplayList and IntDisplayList.
   [tiran]

 * Fixed[ 1118780 ] Bad validation for required IntegerFields with value zero
   Also the default values for IntegerField and FloatField are None instead of
   0.
  [tiran]

 * Applied patch from [ 1076738 ] PrimaryFieldMarshaller: wrong length
   [dmaurer]
 
 * Changed the reference tab permission to modify or review according to
   [ 1087990 ] 'References' action visible for everyone.
   [tiran]

 * Fixed customizationpolicy.py not to break if CMFPlone isn't available.
   [tiran]

 * Updated the requirements to Zope 2.7.4+. It may work with older versions of
   Zope 2.7.4 but due some serious memory leaks and some important bug fixes
   you should really use Zope 2.7.4!
   [tiran]

 * Backported CMFTestCase/PloneTestCase based test suite from AT 1.4 branch to
   AT 1.3. The unit test suite of AT 1.3 was horrible. Yeah you are allowed to
   beat me up but in excuse I must say it was first try in using ZopeTestCase.
   I've learned my lessons. In order to run the unit tests you have to install
   either CMF 1.4.7 + CMFTestCase + ZopeTestCase or Plone 2.0.5 + PloneTestCase
   + ZopeTestCase. For now only the CVS versions from sf.net collective are
   working properly.
   To run the unit tests go into the root of your testing instance and run:
   ZOPE_HOME/bin/test.py -v -C etc/zope.conf --libdir Products/Archetypes/
   [tiran]

 * Fixed [ 1103955 ] ObjectManager raises (usually) AttributeError
   [dmaurer]

 * Fixed [ 1074236 ] DDocument and Fact are broken in 1.3.1 final
   [tiran]

 * Fixed [ 1093042 ] log warning for int keys in DisplayList
   [tiran]

 * Fixed [ 1067212 ] missing security declaration for BaseFolder.manage_addFolder
   [biza]

 * Fixed [ 1114892 ] should set to field, not fieldname in ObjectField.getRaw()
   [madduck]

 * More OrderedDict fixes... wasn't overriding 'pop' method from base class,
   causing keys list and data to get out of sync if it were ever called
   [rafrombrc]

 * Fixed broken implementation of moveObjectsByDelta in ordered base folder
   by copying my code from CMFPlone. I've fixed it in Plone over an year ago
   but I forgot to fix it in AT.
   [tiran]

 * Fixed [ 1114362 ] use format name instaed that mime type inside RichWidget.
   [dan_t]

 * Filtering schemata from showing up on base_edit unless user actually
   has edit privs to some of the fields
   [rafrombrc]

 * Fixed utils.OrderedDict problems:
   -  constructor was failing w/ non-empty argument
   -  infinite loop when copy() was called
   [rafrombrc]

 * Changed UI for Image/File widgets. Should be a lot better now.
   [_ender_]

 * BaseUnit backward compability on very old bad migrated Archetypes 1.0
   sites. Thanks to Brent M Hendricks <brentmh@rice.edu>.
   [yenzenz]

 * Commented out the View/Edit links for ordinary display - feel free to
   enable these in your site, but they should definitely not be there by
   default.
   [limi]

 * Added the last (and only) info that isn't being handled by AT for FTI:
   allow_discussion. Now you can define it at class level, as any other
   FTI property. The module level modify_fti method still exists for any
   advanced configuration.
   [dtremea]

 * Improved test for [ 1003868 ] to demonstrate the real problem:
   default_charset isn't respected. Now when db_encoding isn't defined,
   we give precedence to site_encoding and then fallback to utf-8.
   Bonus: there's no more need to mess with 'sys.getdefaultencoding()'
   to make tests run... ;-)
   [dtremea]

 * The subobject Wrapper class is now based on Acquisition.Explicit. And
   BaseObject's subobject works now.
   [panjunyong]

 * Applied ApeSupport changes needed for APE 1.0. Thx to Roch Compaan.
   Changed comment to doc-string.
   [yenzenz, zwork]

 * Added Italian translation. Thanks to Mirto Silvio Busico.
   [dtremea]

 * Change permission of OrderedBaseFolder's manage_renameObject to make
   FTP works.
   [panjunyong]

 * Fixedi [ 1053960 ] Cancel goes back to previous schemata page, thanks
   to Alec Mitchell.
   [yenzenz]

 * Fix redirect of ZMI constructor, fix ZMI base_add and base_edit.
   [__gotcha]

 * Fixed [ 1058669 ] Wrong i18n:translate in widgets/field.pt.
   [yenzenz]

 * Use method getFilename in at_download.pt instead of direct attribute access,
   which ignores BaseUnit.
   [yenzenz]

 * Fixed [ 1084278 ] In www/generateDebug.zpt error in *
   getTypeInfo(type['name']).
   [yenzenz]

 * Applied patch in [ 1076864 ] schemata links need css declaration, thanks to
   David Convent.
   [yenzenz]

 * Fixed [ 1067923 ] Field.py: ImageField.get_size does not work properly.
   [yenzenz]

 * Fixed bugs in the reference graph feature that was broken for me.
   [yenzenz]

 * Fixed [ 1066884 ] Field.py: getAvailableSizes 1.3.1-rc4. Thanks to Steve
   McMahon.
   [yenzenz]

 * Fixed path to kernel uuid pseudo file.
   [tiran]

 * Don't use the format selector from wysiwyg.
   [tiran]

 * Fixed __pkginfo__.py: use version.txt instead of coping a string to
   several places; changed license to the current license "BSD-like".
   [yenzenz]

 * Fixed reference cataloging when dealing with BTree folders.
   [brcwhit]

 * Fixed [ 948385 ] Allow wysiwyg editors to override RichWidget format
   pulldown.
   [duncanb, ender]

 * Fixed traversal/WebDAV for the nth time, now with tests.
   [dreamcatcher]

 * Fixed a possible problem when installing uid_catalog.
   [zopezen]

 * Added multi-field support to getFilename/setFilename and also
   getContentType/setContentType. Bonus: reformated ChangeLog... ;-)
   [dtremea]

 * Updated Catalan translation. Thanks to Albert Lombarte.
   [dtremea]

1.3.1-final - 2004-11-15
========================

 * Some visual fixes to RichWidget and Field code + removed stray comments.
   [limi]

 * Fixed field tests.
   [yenzenz]

1.3.1-rc4 - 2004-11-06
======================

 * reverted the patch from duncan because of too many bugs :(
   final decicion for 1.3.x: we keep the 1.3.0-final reference copy
   behaviour.
   [hazmat, geoffd, yenzenz]

 * fixed reference_slot, wasnt adapted to the new style reference engine
   [yenzenz]

1.3.1-rc3 - 2004-11-05
======================

 * There where lots of discussions about the behaviour of references while
   copying. it ends up in 1.3.0-final with the default behaviour to do not
   copy references if a object is copied. now this is for several use-cases
   a great problem, and it's also difficult to copy them afterwards.
   finally we decided to make it configureable per reference in 1.4.x. A
   solution for 1.3 is provided by the patch from duncan booth we applied
   here. its transparent to the 1.3.0-final behaviour. you now can set
   in archetypes tool the copying behaviour. it defaults to not copy
   references.
   [duncanb, yenzenz]

 * Changed boolean widget so that the checkbox is displayed before
   the label and not below the help text. Makes more sense UI wise.
   [_ender_]

 * Fix manage_delObjects of BaseFolderMixin that did not return anything
   [__gotcha]

 * Allow comma as dezimal delimiter in FixedPointField and convert it
   immediatly to a point-delimited-value. The whole process needs a rewrite
   in 1.4, this here is only a quick non-immersive usability enhancement.
   [yenzenz]

1.3.1-rc1 - 2004-10-17
======================

 * Fixed [ 1037265 ] Bug in ArchetypeTool:getWidgets(). Thanks to Tommy from
   IBAS for the catch.
   [dtremea]

 * Fixed a bug with TemplateMixin on folderish types: in navtree and on view
   tab the choosen template has been ignored, cause it felt back to an action
   folderlisting, which now is set to view instead.
   [yenzenz]

 * Applied patch contributed in [ 1038107 ] Problems with addable_types
   handling in ReferenceWidget. Thanks to Alec Mitchell for the patch.
   [yenzenz]

 * Added Archetypes Site customization policy.
   [tiran]

 * Changed it so that Title is not shown twice in view mode (once in the headline
   is fine, thank you ;)
   [limi]

 * Fixed [ 1042076 ] missing import in SQLMethod.py: atoi and time were missing.
   [tiran]

 * Fixed [ 1043114 ] WEBDAV folder creation broken.
   [tiran]

 * Updated quickref. Thanks to Jean Jordaan for his great work!
   [neaj, tiran]

 * Fixed [ 1037803 ] "AT Document Details" should be "Document Details" in edit
   Now Archetypes is using the portal type name by default instead of the
   archetype_name. You can change the new behavior by using a different
   type_name var in the templates.
   [tiran]

 * Added some ugly hacks to ship around [ 1040623 ] FTP upload broken. You may
   say it's fixed for AT 1.3 but for AT 1.4 we will have a much better
   implementation.
   [tiran]

 * Fixed [ 1038404 ] BaseFolder.mange_delObjects proteced by wrong permission.
   Now the method is protected by CMFCorePermissions.DeleteObjects instead of
   CMFCorePermissions.ModifyPortalContent which is exactly like Plone 2.x.
   [tiran]

 * Fixed [ 1038428 ] Unicode string in Subjects break base_metadata page.
   [tiran]

 * Partly fixed [ 1038450 ] Unauthorized due to BaseObject.__bobo_traverse__.
   Now __bobo_traverse__ is raising an AttributeError instead of returning None
   when the object can't be traversed.
   [dmauerer, tiran]

 * Added workaround for [ 1040514 ] AttributeError on some types after migration
   1.2.4rc5->1.3.0 to BaseUnit. Somehow and sometimes the binary attribute gets
   lost magically.
   [tiran]

 * Extensions/utils.py (install_additional_templates): Added a method to
   automagically register classes that inherit from TemplateMixin.
   [dtremea]

 * Added Catalan translation file. Thanks to Albert Lombarte.
   [dtremea]

 * Added viewableFields() and editableFields() to Schema. The methods are
   returning only those fields that the current user is allowed to see/edit in
   the current context.
   [tiran]

 * Archetypes edit form is raising unauthorized if no editable fields are
   available.
   [tiran]

 * BaseContent.PUT and BaseUnit.PUT is also trying to get the uploaded data from
   BODY if BODYFILE is empty.
   [tiran]

1.3.0 - 2004-09-30
==================

 * Fixed [ 1034649 ] Typo breaks catalog index creation: index_acessor ->
   index_accessor
   [ronnix]

1.3.0-rc4 - 2004-09-25
======================

 * Fixed [ 1032587 ] Error in field.Vocabulary. Thanks to Danny Bloemendaal
   for the catch.
   [dtremea]

 * Disabled two unit tests in test_marshaller because they were causing a memory
   fault in glibc. It's probably the cause of either wvWare or the test doc
   file.
   [tiran]

 * Added transaction_note to PloneCompat and use it instead of the one from
   Plone to keep backward comp. with CMF as requested on the mailing list.
   [tiran]

1.3.0-rc3 - 2004-09-18
======================

 * Fixed misc unit tests that where broken or relied on a broken behavior.
   [dreamcatcher]

 * Merged patch from [ 1026732 ] base_metadata can not use 'add $type' reference
   button.
   [tiran]

 * Fixed [ 1029648 ] getBestIcon needs to be better.
   [tiran]

 * Partly fixed [ 1024966 ] Reference migration problem: 1.3a2 --> 1.3rc2.
   References without a relationship name will get the relationship name
   EMPTY_RELATIONSHIP which is 'related' by default. That should be fine for all
   people.
   [tiran]

 * Added 'swallowResizeExceptions' attribute to ImageField. When the property is
   set to True all exceptions raised by PIL are captured and the specified scale
   isn't created.
   Note: Some scales might be created when PIL fails only for some sizes.
   [tiran]

 * Field.ReferenceField: Simplify code a bit. Fix a typo on exception name.
   [dreamcatcher]

 * Fixed [ 1023153 ] isEmpty validator must return empty string by using the new
   isEmptyNoError validator.
   [tiran]

 * Fixed [ 1029231 ] base_metadata doesn't use JS scripts properly, also cleaned
   up the base_metadata and added support for helper CSS.
   [tiran, kai]

 * Fixed [ 1025842 ] Missing i18n:translate in widgets/field.pt <label>
   [tiran]

 * Cleaned up and fixed ExtensibleMetadata class:
     o no more direct attribute access or attribute storage
     o rearranged some lines
     o use 'date is None and fallback or date' because testing for is None is
       much faster than testing a DateTime instance for not None.
   [tiran]

 * Added SQL* and VariableSchemaSupport to public.py. Please import only from
   public!
   [tiran]

 * Added class and id attributes to fields rendered in view-mode (field.pt).
   These had been accidentally left out.
   [elvix]

 * Fixed problem with BaseBTreeFolder losing references. It was calling
   CMFBTreeFolder manage_* methods which would end calling
   PortalFolder.manage_* methods (as they are not overriden in the class
   hierarchy) twice. The second type it would remove the references as
   there's a monkeypatch on Archetypes/patches.py which sets _v_cp_refs to
   None when calling CMFCatalogAware.manage_beforeDelete.
   [dreamcatcher]

 * Fixed copy problem with AggregatedStorage by added __getstate__ and
   __setstate__ methods. Before the chances copy.deepcopy was trying
   to copy a thread lock.
   [tiran]

 * Finally removed markCreationFlag which was a bad hack to achieve the same
   effect as portal_factory but w/o using portal_factory. I had a problem with
   it again and I don't want to have more headache!
   [tiran]

 * Changed BaseObject.initializeArchetype() to call edit() instead of update().
   edit() is an alias for update and it's also the standard method to edit a
   type in CMF. It makes customization like in ATContentTypes much easier.
   [tiran]

1.3.0-rc2 - 2004-09-04
======================

 * Removed class="error" from field.pt error message. It caused some ui
   glitches.
   [tiran]

 * Fixed [ 1011658 ] portal_skins/archetypes folder disappeared after AT
   reinstall. Under some circumstances the skins aren't properly registered.
   [tiran]

 * Fixed [ 1011533 ] AT CEILING date for expires will break DateIndex. Changed
   CEILING_DATE from year 9999 to year 2500.
   [tiran]

 * Fixed [ 1012238 ] Cannot set field using boolean widget under IE.
   [duncanb]

 * Changed TemplateMixin.getDefaultLayout(): It first checks for an attribute
   'default_view' then for 'immediate_view' from the FTI and at last it's using
   'base_view' as fallback.
   [runyan, tiran]

 * Removed warning when trying to apply an index on a reference field from
   install_indexes. Indexes on reference fields are fully supported again.
   [tiran]

 * Changed permission of BaseObject.getField() and getWrappedField() from
   ModifyPortalContent to View. All mutators on fields are secured and it won't
   make any harm to get a field. Besides it is currently possible getting a
   field over archetype_tool.
   [tiran]

 * Fixed [ 1012344 ] 'NoneType' not callable error on CMFMember prefs page. Also
   cleaned up the way how the value is calculated inside field.pt. Depending
   on widget.populate it's either assigning edit_accessor or accessor to a var
   and THEN it's calling the var (which is a method) when it's not None.
   Sounds complex? Well the former version was much complexer.
   [tiran]

 * Subclasses TemplateMixin from ExtensionClass.Base, set default_view to None
   in order to enable the immediate_view magic and made the getDefaultView()
   method a little bit more efficient.
   [tiran]

 * Added a test for unqualified references to Schema to prevent user errors. A
   relationship must be a non empty string. Also moved all field tests in Schema
   to a new method _validateOnAdd().
   [tiran]

 * Added Danish translation. Thx to stonor!
   [tiran]

 * Added 'de-de' as fallback to the German translation.
   [tiran]

 * Applied fix from [ 924832 ] Widget:isVisible always returns 'visible' for not
   DictType which is fixing a broken behavior for Widget.isVisible().
   [tiran]

 * Fixed [ 1012570 ] Widget.py ReferenceField is horribly inefficient.
   [runyan]

 * Temporary fix for [ 1012408 ] __getitem__ doesn't play nice which is backward
   compatible except of three broken behaviors:
   BaseObject.__getitem__ now throws an Unauthorized exception when trying to
   get an item starting with _ and it throws a KeyError when trying to access
   a nonexisting object. Also it's using explicit acquisition.
   [tiran]

 * Fixed unicodeTestIn.py: return False immediately when the list is None or empty.
   [tiran]

 * Widget.py: Changed some field.get(instance) calls to
   field.getEditAccessor(instance)() to get rid of some sort of infinite loop
   (in append_only code forTextAreaWidget).
   [rafrombrc]

 * Readded Extensions/utils.py:install_tools for backward compat.
   [dreamcatcher]

 * fixed edit view rendering of append_only textarea history in
   widgets/textarea.pt data so whitespace is correct.
   [rafrombrc]

 * Fix a misbehavior on __bobo_traverse__ now that Tiran changed the __getitem__
   behavior. Before that, __getitem__ was taking precedence and acquiring the
   object itself, so never getting this far:
   Nothing has been found. Though it's not written anywere, from deep ZPublisher
   inspection it seems like we *SHOULD NOT* raise a notFoundError, but instead,
   return None and leave acquisition do it's job.
   [dreamcatcher]

 * Fixed [ 1011111 ] mishandling of UID W.R.T layers.
   The reference engine is now using _getCopy() mark the copy of an object with
   a marker _v_is_cp so manage_afterAdd() can detect copies in order to reassign
   a new UUID and remove the reference annotations.
   [bcsaller, rochael]

 * Fixed Alan's fix for [ 1012570 ] brains has no relative_url.
   (note to myself: addable option on ReferenceField still needs lots of tests)
   [dtremea]

 * Fixed [ 1013265 ] last changes to Widget.py is highly inefficient.
   [dtremea]

 * Fixed LinesWidget according to [ 1013379 ] LinesField/widget broken.
   [tiran]

 * Fixed bug in VariableSchemaSupport.VarClassGen mentioned in the thread on the
   AT devel mailing list. See "Warning: avoid changing your AT class' meta_type
   when you have existing instances".
   [mitchel, dreamcatcher, tiran]

 * Corrected icon in ZMI; Added some utils for ZMI setup.
   [__gotcha]

 * Changed unit test to work with an unpatched version of getToolByName to get
   mimetyptes_registry and portal_transform.
   [tiran]

 * Fixed [ 1015956 ] getBestIcon can fail.
   [ctheuni]

 * Fixed [ 1015292 ] boolean widget error, [ 1015394 ] 1.3 branch field.pt sets
   value = None inappropriately and another problem with field.pt value.
   [tiran, alecacct]

 * Fixed [ 1018821 ] _processInput in Field.py should rewind.
   [batlogg]

 * Part fix [ 1013363 ] (renaming of folders nukes all references to AT
   objects inside them):
   It works now for AT folders, but renaming of non-AT folders stil breaks refs
   to their contained items so ATContentTypes based portals should be fine now
   (except you rename the portal itself).
   [zworkb]

 * Added monkey patch for CMFCatalogAware, PortalContent and PortalFolder to
   fix the second part of [ 1013363 ].
   [tiran]

 * Fixed [ 1019803 ] Bug in ArchetypeTool.py: getWidgets(), also renamed
   _is_fake_instance to _at_is_fake_instance.
   [johtha, tiran]

 * Fixed [ 1018300 ] schema defined indexes are not set anymore.
   [dtremea]

 * Added targetId index to reference_catalog. It was removed earlier to make
   the ref catalog more lightweight. However, it broke
   ReferenceCatalog._queryFor.
   [dpunktnpunkt]

 * Explictly reinstall MimetypesRegistry, PortalTransforms and Archetypes when
   running the migration. Before MTR and PT weren't reinstalled ever and AT
   under some circumstances which were leading to annoying bug reports.
   [tiran]

 * Added StdoutStringIO to migration.py which is printing the input to stdout,
   too. Also added some gimmicks to the migration: After 10 items a '.' is
   printed to stdout and after 250 items a '*' is printed to stdout so you can
   see how the migration is coming along.
   [tiran]

1.3.0-rc1 - 2004-08-16
======================

 * Try to use BaseUnit for schema migration to keep the mimetype and the
   filename of a BaseUnit based field. Without the changes the mimetype of
   TextField got lost.
   This should fix [ 1001446 ] Content type lost in migration from pre 1.3b4 to
   1.3b4
   [tiran]

 * Changed portal type of ComplexType to keep it compatible with AT 1.2
   [tiran]

 * Fixed typo in Field.Field.getContentType
   [tiran]

 * Fixed Field.ImageField.rescaleOriginal to always return a binary string. This
   fixes the problem with original_size: [ 1004323 ] "IOError: cannot identify
   image file" when uploading image
   [tiran]

 * Fixed [ 1004510 ] folderlisting or plone_utils.browserDefault by adding an action
   'folderlisting' to folderish content types.
   [tiran]

 * Use True and False in favor to 1 and 0 to make the code more readable.
   [tiran]

 * Raise an error when trying to use an index on a reference field unless we
   have a good solution to avoid catalog corruption.
   [tiran]

 * Use edit accessor instead of the accessor in Schema.BasicSchema.validate().
   [alecacct]

 * Added a index_method property to Field.Field which may be either _at_accessor,
   _at_edit_accessor or the name of a method which is used as accessor for the
   index.
   [alecacct]

 * Starting from NOW all attributes starting with '_at_' are reserved for
   internal usage. You MUST NEITHER add NOR access any attributes starting
   with '_at_' in your content types.
   [tiran]

 * Fixed  FTP/WebDAV's PUT in BaseObject:If a new object should be created with
   an id that can be acquired, then the existing object is silently overwritten
   rather than a new one created
   [dm]

 * Fixed with problem MKCOL/MKD used by FTP/WebDAV and
   BaseFolde.manage_addFolder. Now MKCOL/MKD are creating a sub folder with the
   type name of the current folder except when this behavior is overwritten
   by an attribute called _at_type_subfolder.
   [dm]

 * Fixed [ 1006559 ] addReference allows adding garbage references. addReference
   is raising a ReferenceException when an invalid source or target was applied.
   [duncanb, tiran]

 * Fixed [ 1006491 ] File widget makes useless str(value) conversion
   [tiran, lurker]

 * Fixed possible issue inside ArchetypeTool.getWidgets() by calling
   initializeArchetype() on the wrapped dummy instance.
   [tiran]

 * Update catalog on reference catalog has raised a KeyError when trying to
   access an object that was already removed. Now ReferenceResolver is fetching
   the KeyError in resolve_url() and returns None instead.
   [tiran]

 * Added getRaw() method to LinesField which is returning the output of get().
   Before this change the edit accessor was using the accessor which might be an
   overwritten accessor. Thx to Joel Burton who has figured out the problem.
   [tiran]

 * Raise an ReferenceException inside Field.ReferenceField._Vocabulary when the
   brain doesn't have a valid uid.
   [tiran]

 * Refresh the uid catalog and reference catalog after migration.
   [tiran]

 * Don't commit full transactions inside migration. This may lead to database
   corruption.
   [tiran]

 * General cleanup of imports and public.py. Also include Marshallers in public.
   [tiran]

 * Fixed [ 1007850 ] Cancel content creation fails with portal factory tool
   Archetypes is playing nice again with portal factory
   [tiran]

 * Raise SchemaException when trying to add two or more primary fields to one
   content type. Adding more than one primary field can lead to unexpected
   behaviors.
   [tiran]

 * Don't store mimetype item instances in BaseUnit. Now BaseUnit is storing the
   mimetype and the binary flag as ordinary strings. Old BaseUnits are auto-
   magically altered using __setstate__().
   Storing mimetype item objects in BaseUnit seemed to lead to memory leaks.
   [tiran]

 * Reenabled ints as DisplayList and Vocabulary keys.
   XXX: Add a comment to the documentation that users should take care when
   mixing strings and ints!
   [tiran]

 * Subclass InAndOutWidget from ReferenceWidget which adds the addable feature
   to InAndOutWidget.
   [ender]

 * Removed old and deprecated old_OrderedBaseFolder implementation from
   Archetypes.
   [tiran]

 * There is no need to subclass BaseFolder from Folder since SkinnedFolder is
   already subclasses from Folder (over PortalFolder).
   [tiran]

 * Store subobjects inside a volatile attribute instead of using SESSION which
   1) was broken by design 2) was a possible memory eater.
   [tiran]

 * Fixed [ 988948 ] Reference field: radio button "no reference" isn't checked
   [tiran]

 * Added properties for [ 1008670 ] Feature request: specify year interval for
   the Calendar Widget
   Right now these properties are useless because the plone templates can't
   handle it but I got word from limi that we are allowed to add these features
   to the templates
   [tiran]

 * Fixed [ 1005843 ] Stringfields should not default to '0' in search mode
   [tiran]

 * Moved addable feature of reference.pt to a seperate file and added addable to
   inandout.pt
   [ender]

 * Use manage_rebuildCatalog for refresh_references in installTypes()
   [tiran]

 * Fixed [ 905677 ] manage_afterClone is a bit of a mess
   [dreamcatcher]

 * Template cleanups
   [dreamcatcher]

 * ImageField: Fixed problem with empty image field and calls to getScale,
   getSize and tag()
   [tiran]

 * Cleaned up the Extensions/utils.py function which are installing AT and it's
   dependencies. Added a method setupArchetypes() which is setting up the internals.
   These fixes are fixing the problem that AT don't seemed to be installed when
   it's installed from an AT based product.
   [tiran]

 * Schema: fixed a bug, it wasnt allowed to override a primary field by another
   primary field with the same name.
   [jensens]

 * Added getWrappedField(key) to BaseObject which is returning the field
   instance explictly wrapped relative to the Archetype instance. This method is
   required for security reasons in order to allow Zope to find the acl_users.
   [tiran]

 * Fixed [ 1009894 ] CSS class on validation error messages. It's using Plone's
   'error' class.
   [tiran]

 * Fixed two bugs in ttw template registration. 1st the registration-tab was
   broken, and 2cd it can't deal with migrated ATCT.
   [jensens]

1.30beta5 - 2004-08-06
========================

 * Fixed forbidden access to schema methods when the schema was
   acccessed using archetype_tool.lookupType().
   [tiran]

 * Fixed typo in widgets/reference.pt
   [tiran]

 * Do not depend on plone's document_byline template which is
   not available in CMF.
   [ajung, tiran]

 * Applied patch from [ 997044 ] db_encoding parameter is lost
   in BaseSQLStorage.set
   [biza, tiran]

 * Updated complex type to make it work inside Plone again. It's very
   usefull to test fields and widgets.
   [tiran]

 * Applied [ 974846 ] Patch for bug #944343 inandout/picklist values
   not sticky to make picklist and inandout compatible with reference
   field again.
   [alecacct, tiran]

 * Reenabled Ben's reference graph tool by removing some stalled testing code
   [tiran]

 * Support unqualified references in reference graph tool
   [bcsaller]

 * Added a test for mimetypes registry before adapter call in BaseUnit.update()
   with a more verbose error in the case the user hasn't updated MTR properly.
   [tiran]

 * Fixed Find Objects of uid catalog and reference catalog: Use the relative
   path (relative to the portal) of the object as uid instead of the full
   physical path
   [tiran]

 * Added Rebuild Catalog tab to uid catalog and reference catalog to make the
   life easier
   [tiran]

 * Added context to the PortalTransform.convertTo() call in BaseUnit.transform()
   [tiran]

 * Don't fail to install a product which doesn't have any types
   [spamsch]

 * Catch Unauthorized exception in ExtensibleMetadata.allowDiscussion that could
   be raised by the discussion tool when the authenticated users hasn't
   ModifyPortalContent permissions.
   [tiran]

 * Added IUIDCatalog and IReferenceCatalog interface. Test for interfaces in
   the installation process of Archetypes to remove invalid catalogs.
   [tiran]

 * Added a check to Field._Vocabulary: A result from portal catalog must be a
   result from uid catalog, too.
   [ender]

 * FileField/ImageField: Make sure we always get a wrapped object in content_class
   [tiran]

 * ImageField: Fixed getScale/getSize methods, added tag() method
   [tiran]

 * session_save_form was using direct attr access in UT
   code you must use Schema accessor so schema has a
   security context
   REMEMBER: <BradB> "Free as in Free Iraq"
   [runyaga]

 * issue a warning if they register 2 classes with the
   same name in the same project.  this will happen on
   startup.
   [runyaga]

 * do not assume templates have title_or_id attribute
   [runyaga]

 * Added kernel_make_uuid which is using /proc/sys/kernel/random/uuids as source
   for unique ids. Thx to Ben for this cool idea. :)
   The kernel uuid generator is actually a tiny bit slower than our uuid
   generator but it should be safer if you are worried about the uniqueness of
   uuids.
   [bcsaller, tiran]

 * Fixed [ 1002481 ] Missing i18n: <any>, added at_search_any msgid.
   [tiran]

1.3.0-beta4 - 2004-07-09
========================

 * Fix bug on image deletion [clebeaupin]

 * Fixed [ 997899 ] 1.3b3 will ot startup on Zope 2.7, Windows.
   Removed api helper to avoid problem with windows [dreamcatcher, tiran]

 * Small improvements on migration (using aq_base() instead of attribute, using
   is None test instead of simple bool test)
   [tiran]

 * Get the first non None object instead of the first element of a list of
   brains to circumvent problems with stalled objects inside the uid catalog
   [tiran]

 * Don't raise AttributeError when no reference can be found
   [__gotcha]

 * Fixed a problem introduced by getRaw method on ReferenceField class.
   When using a field on 'hidden' mode, field.pt uses field.edit_acessor
   to get field value (and edit_accessor calls getRaw).
   The problem was related to ReferenceFields not multivalued where
   getRaw always returns a list, instead of the single UID.
   [dtremea]

 * Added a flag refresh_references to Archetypes.Extensions.utils.installTypes
   (default False). When enabled it's using ZopeFindAndApply to find all
   objects of the given types and refreshes their references. This is a
   workaround but not a real fix for bug 997840.
   [tiran]

 * Added a test for at_version information
   [tiran]

 * Support Pdata (possible large data from OFS.Image) as type for FileField.
   This is required to load large images and files based on OFS.Image into a
   FileField.
   [tiran]

 * Merged sid's security branch. DefaultLayer based classes (Field, Widget) and
   schema are now subclassed from ExtensionsClass.Base.
   [dreamcatcher, tiran]

 * Fixed [ 994511 ] Field.py: Vocabulary cannot handle 2-tuple list
   [tiran]

 * Fixed creation_date field to be metadata again
   [tiran]

 * Fixed [ 944440 ] getMsgID method of DisplayList should be used
   [tiran]

 * Fixed [ 972091 ] base widget doesn't support visble attribute for view
  [tiran]

 * Added better traceback information to fixAfterRenameType
   [tiran]

 * Fixed [ 988898 ] Don't swallow ConflictError (SQL missing)
   [tiran]
