0.3.0 - 2007-03-27
- Made the provided metadata not threadlocal. This could break things for you
  in some rare case. Please see the (newly created) FAQ file for details about
  this.
- Added support for autoloading/reflecting databases with
  has_and_belongs_to_many relationships. The tablename argument is now
  optional, but still recommended, otherwise you'll have to use the same exact
  name for your intermediary table than the one generated. You also _have to_
  specify at least one of either local_side or remote_side argument.
- Added support for the "version_id_col" option on entities. This option adds 
  a column to the table which will be used to prevent concurrent modifications
  on any row of the entity's table (i.e. it will raise an error if it happens).
- Made the colname argument optional for belongs_to relationships in
  autoloaded entities. It is only required to specify it if you have several
  belongs_to relationships between two entities/tables.
- Applied patch from "Wavy" so that columns of a table are in the same order
  as they were declared (this only works for the has_field statement).
- Applied patch from Isaac Csandl to add an "ondelete" argument to
  belongs_to relationships. The content of that argument is forwarded to the
  foreign key constraint.
- Foreign key names generated by belongs_to relationships use column names 
  instead of relation names in case we have a relation with the same name
  defined in several entities inheriting from the same entity using single-
  table inheritance (and we set a custom column name in one of them to avoid
  a column-name conflict).
- Using invalid options on entities will now raise an exception
- Added __version__
- Use an explicit metaclass for entities, so that people can define their own
  base class.
- Changed the approach to reflecting/autoloading belongs_to relationships.
  This shouldn't change anything to how it's used but allowed me to factor
  some code with has_and_belongs_to_many relationships.
- The tablename option can now be given a callable so that people can provide
  their own function to get the table name for an entity. The tablename option
  can now also be set globally (using the options_defaults dictionary). Of
  course, this only makes sense for the callable usecase.

- Fixed bug preventing having entities without any statement.
- Fixed documentation for belongs_to relationships (the arguemnt is "required",
  not "nullable").
- Fixed typo which broke the use_alter argument on belongs_to relationships.
- Fixed inheritance unit test to pass SQLAlchemy type check on relations
  (introduced in SA 0.3.6)
- Fixed wrong field length in autoload test (it was not noticeable with sqlite).
- Actually make the code python 2.3 compatible (Robin's patch was based on
  0.1.0 while I had introduced more decorators in the trunk in the mean time).

- Made some PEP8 tweaks in many places. Used the pep8 script provided with 
  Cheesecake.
- Some cleanup/useless code removal

0.2.0 - 2007-02-28
- Applied patch from Robin Munn to make the code python 2.3 compatible
- Per a suggestion on the mailing list, look at the calling stack frame to
  ensure that we apply statements to the proper class.  We now attach the
  statement list to the class itself, rather than attaching it to a global
  list that is neither threadsafe, nor safe when doing nested class 
  definition.  Also added a test to validate that this works.
- implemented singletable non-polymorphic inheritance
- added support to pass non-keyword arguments to tables. You just pass
  them to the using_table_options statement and they will be forwarded to the
  table along with the keyword arguments. This can be used to set table 
  constraints.
- added support for deferred columns (use the "deferred" keyword argument on
  fields)
- added a "required" keyword argument on fields and BelongsTo
  relationships. This is the opposite of the "nullable" SA argument.
- added a "column_kwargs" keyword argument to BelongsTo relationships 
  to forward any keyword argument directly to the SA Column.
- added support for the use_alter and constraint_kwargs kwargs on BelongsTo
  relationships (forwarded to SA ForeignKeyConstraint).
    -> removed the systematic use_alter on BelongsTo relations since it
       can now be specified only when needed.
    -> removed it from HasAndBelongsToMany relations, since I think a
       circular foreign key dependency can't happen with those relations.
- fixed foreign key names on MySQL (and possibly other) databases by 
  making sure the generated name is unique for the whole database, and not
  only for the table on which it applies.
- corrected some docstrings

0.1.0 - 2007-02-12
initial release

