root / elixir / trunk / CHANGES @ 126

Revision 126, 5.4 kB (checked in by ged, 6 years ago)

changelog that

Line 
10.4.0
2- Added ext sub-package for additional Elixir statements.
3- Added ext.associable for generating polymorphic associations with Elixir
4  Statements. (Many thanks to Mike Bayer for his support on writing this.)
5- Added default __init__ method on entities so that subclasses can override it
6  and still have the "set attribute by keyword" behavior by calling super()
7- Added .q property on the metaclass, so that you can get a query on an entity
8  by just using Entity.q, instead of using Entity.query()
9- Made EntityMeta public, so that people can actually define their own base
10  class.
11- Reworked/cleaned tests so that they don't leak stuff to other tests (both at
12  the method level and module level) anymore. Uses nosetest's module level
13  fixture.
14- Fixed relationships to tables using a schema (Patch by Neil Blakey-Milner)
15
160.3.0 - 2007-03-27
17- Made the provided metadata not threadlocal. This could break things for you
18  in some rare case. Please see the (newly created) FAQ file for details about
19  this.
20- Added support for autoloading/reflecting databases with
21  has_and_belongs_to_many relationships. The tablename argument is now
22  optional, but still recommended, otherwise you'll have to use the same exact
23  name for your intermediary table than the one generated. You also _have to_
24  specify at least one of either local_side or remote_side argument.
25- Added support for the "version_id_col" option on entities. This option adds
26  a column to the table which will be used to prevent concurrent modifications
27  on any row of the entity's table (i.e. it will raise an error if it happens).
28- Made the colname argument optional for belongs_to relationships in
29  autoloaded entities. It is only required to specify it if you have several
30  belongs_to relationships between two entities/tables.
31- Applied patch from "Wavy" so that columns of a table are in the same order
32  as they were declared (this only works for the has_field statement).
33- Applied patch from Isaac Csandl to add an "ondelete" argument to
34  belongs_to relationships. The content of that argument is forwarded to the
35  foreign key constraint.
36- Foreign key names generated by belongs_to relationships use column names
37  instead of relation names in case we have a relation with the same name
38  defined in several entities inheriting from the same entity using single-
39  table inheritance (and we set a custom column name in one of them to avoid
40  a column-name conflict).
41- Using invalid options on entities will now raise an exception
42- Added __version__
43- Use an explicit metaclass for entities, so that people can define their own
44  base class.
45- Changed the approach to reflecting/autoloading belongs_to relationships.
46  This shouldn't change anything to how it's used but allowed me to factor
47  some code with has_and_belongs_to_many relationships.
48- The tablename option can now be given a callable so that people can provide
49  their own function to get the table name for an entity. The tablename option
50  can now also be set globally (using the options_defaults dictionary). Of
51  course, this only makes sense for the callable usecase.
52
53- Fixed bug preventing having entities without any statement.
54- Fixed documentation for belongs_to relationships (the arguemnt is "required",
55  not "nullable").
56- Fixed typo which broke the use_alter argument on belongs_to relationships.
57- Fixed inheritance unit test to pass SQLAlchemy type check on relations
58  (introduced in SA 0.3.6)
59- Fixed wrong field length in autoload test (it was not noticeable with sqlite).
60- Actually make the code python 2.3 compatible (Robin's patch was based on
61  0.1.0 while I had introduced more decorators in the trunk in the mean time).
62
63- Made some PEP8 tweaks in many places. Used the pep8 script provided with
64  Cheesecake.
65- Some cleanup/useless code removal
66
670.2.0 - 2007-02-28
68- Applied patch from Robin Munn to make the code python 2.3 compatible
69- Per a suggestion on the mailing list, look at the calling stack frame to
70  ensure that we apply statements to the proper class.  We now attach the
71  statement list to the class itself, rather than attaching it to a global
72  list that is neither threadsafe, nor safe when doing nested class
73  definition.  Also added a test to validate that this works.
74- implemented singletable non-polymorphic inheritance
75- added support to pass non-keyword arguments to tables. You just pass
76  them to the using_table_options statement and they will be forwarded to the
77  table along with the keyword arguments. This can be used to set table
78  constraints.
79- added support for deferred columns (use the "deferred" keyword argument on
80  fields)
81- added a "required" keyword argument on fields and BelongsTo
82  relationships. This is the opposite of the "nullable" SA argument.
83- added a "column_kwargs" keyword argument to BelongsTo relationships
84  to forward any keyword argument directly to the SA Column.
85- added support for the use_alter and constraint_kwargs kwargs on BelongsTo
86  relationships (forwarded to SA ForeignKeyConstraint).
87    -> removed the systematic use_alter on BelongsTo relations since it
88       can now be specified only when needed.
89    -> removed it from HasAndBelongsToMany relations, since I think a
90       circular foreign key dependency can't happen with those relations.
91- fixed foreign key names on MySQL (and possibly other) databases by
92  making sure the generated name is unique for the whole database, and not
93  only for the table on which it applies.
94- corrected some docstrings
95
960.1.0 - 2007-02-12
97initial release
Note: See TracBrowser for help on using the browser.