root/branches/1.2/generator/CHANGELOG

Revision 599, 7.0 kB (checked in by hans, 2 years ago)

Minor formatting change to CHANGELOG for release.

Line 
1
2   P R O P E L    C H A N G E S
3   ============================
4  
5  Mar 7, 2007 - 1.2.1
6  
7   ChangeLog for 1.2.1 at http://propel.phpdb.org/trac/query?status=closed&milestone=1.2.1&resolution=fixed&order=priority
8  
9  Aug 31, 2006 - 1.2.0
10
11   Breaking Changes:
12   *** New API for generic accessors and settors (see API docs).  The methods are
13   the same but the default indexing has changed.
14   *** New API for validators (see Wiki / docs).
15
16   Major Changes (for complete list see issue tracker at http://propel.phpdb.org):
17   - Propel now compatible w/ PHP >= 5.0.5 & 5.1.x
18   - New MySQLi driver for Propel (use 'mysqli' instead of 'mysql')
19   - Added propel-gen script to standard-installed versions of Propel also
20   - New XSD schema for validating the XML datamodel descriptions (schema.xml)
21   - Support for specifying vendor-specific info in the schema.xml
22   - Better support for sequences in reverse engineering PostgreSQL databases
23   - #146 Added 'size' attribute to <index-column> and <unique-column>
24   - New extensible OO builder classes for generating PHP5 classes and SQL DDL
25   - Identifier escaping in generated SQL (note: for Postgres this means columns
26     are case-sensitive)
27   - Numerous improvements to validation framework, including new, cleaner API
28   - Added doCountJoin*() methods to the generated Peer classes
29   - Obj->save() calls now return the number of affected rows (if supported by db)
30   - See http://propel.phpdb.org/trac/report/9 for complete list of closed tickets
31         by milestone.
32  
33  April 7, 2005 - 1.1.0
34
35   Big Changes:
36   *** Changed retrieveByPK() to return NULL instead of throw Exception if no row
37       was matched. (Dave Lawson)
38   *** New PHP runtime conf format has changed (must regenerate conf file).
39   *** Dropped support for deprecated ini-format runtime properties file. (Hans)
40   *** Cleanup of build properties files, removal of deprecated properties. (Hans)
41
42   New Features:
43   - Schema attributes are no longer case-sensitive.
44   - New <vendor> tag allows specifying vendor-specific attributes. (Pavel)
45   - MySQL identifiers escaping added to SQL generation templates. (Pavel)
46   - MySQL unique indexes SQL generation added. (Pavel)
47   - Added support for interface="" attribute of <table> tag; defaults to Persistent. (Hans)
48   - Added doSelectJoinAll() to generated peer classes. (Hans)
49   - Added doDeleteAll() method to remove all rows from specified table. (Hans)
50   - Added support for returning affected rows from update methods in peer classes. (Hans)
51   - Added PHPUnit2-based unit testing framework to replace old bookstore-test.php
52   - Added schema validation / error throwing to schema parser. (Pavel)
53   - Logging is now optional (no log section means no logger used).  (David Zülke)
54   - Added TIMESTAMP_BU, DATE_BU types for "before-unix" (pre 1970) dates. (Hans)
55
56   Bug Fixes:
57   - Fixed E_STRICT error in generated Peer doCount() method (Hans)
58   - Fixed bug when using doSelectJoin*() methods with tables that have lazyload columns. (Hans)
59   - Fixed logic bugs in doSelectJoinExcept*() method generation. (Hans)
60   - Fixed support for temporal (date/time) default values. (Hans)
61   - Fixed bug where setting only default values in object would result in no save. (Hans)
62   - Fixes to PropelSQLExecTask to handle non-typical queries (Dominik, Hans).
63   - Fixed bug in enumerated inheritance when using string coltype (Kaspars)
64   - Fixes to charset / encoding in schema creation. (Joe Cai, Pavel)
65   - Fixed nested external schema bug. (Pavel)
66   - Fixed unexpected results bug in NodePeer::buildFamilyCriteria(). (Dave Lawson)
67   - Fixed clearSelectColumns() to also clear $asColumns. (Fabien Potencier)
68
69   Oct. 24, 2004 - 1.0.0
70
71     Big Changes:
72   - Removed Transaction class, refactoring functionality into Creole
73     Connection classes (Dave Lawson)
74   - New NodePeer for handling hierarchies (Dave Lawson)
75   - Propel has a new default directory layout for projects.  All project
76       files are now located in one directory.
77
78     projects/
79          |- bookstore/
80          |   |- build/
81          |   |- schema.xml
82          |   |- runtime.properties  <-- deprecated
83          |   |- runtime-conf.xml    <-- new standard
84
85     - Added new default XML format for setting Propel's runtime properties.
86       (see dir layout above).
87
88     - Added new build.xml to wrap build-propel.xml.  New file is preferred
89       way to build projects, as it allows for inclusion of project-specific
90       build.properties files. Propel is finally fully multi-project friendly.
91
92   - Support for specifying "lazy-load" columns in schema XML.  Lazy load
93     columns will only be populated on demand.  This means that by default
94     object hyradtion will not include these columns (so smaller, faster
95     objects), but also that an additional query is executed when data is
96     needed.  (This is particularly useful for BLOB/CLOB columns.)
97
98     Minor Changes:
99     [Generated Classes]
100     - Peer::populateObject() method deprecated (will remove in Propel 1.1) in
101     favor of Object->hydrate()
102     - Removed Peer::buildCriteria() method in favor of Object->buildCriteria()
103     and Object->buildPkeyCriteria()
104     - Peer doSelect*() family of methods now [consistently] only takes
105     Criteria objects for parameter.
106     - No more support in generated Peer classes for using Criteria with
107     different DB name.
108     - Date/time setter methods now perform a strtotime() conversion on passed
109     data and throw a PropelException is such a conversion cannot be performed.
110   - New copy() method replaces non-working __clone() impl.  __clone() unused due
111     to desire to have a way to copy objects w/o necessarying copying rows.
112
113     [Default Properties]
114     - The schema include pattern changed to *schema.xml (instead of
115     *-schema.xml), for added flexibility in layout.
116
117   [SQL Generator]
118   - Updated model classes to recognize boolean values in case-insensitive
119     manner (allow "TRUE" & "true").
120   - Updated model classes to recognize Propel types in case-insensitive
121     manner (allow "integer" & "INTEGER").
122
123   June 8, 2003 - 1.0.0-beta1
124
125     Bug Fixes:
126     - Fixed 'creole' target to include database name in generated schema XML
127     - Fixed Propel to work correctly with tables that have pkey, but no
128     autoIncrement cols
129     - Fixed Criteria toString() method to work [for SELECT clauses only]
130     - TIMESTAMP defaults to DATETIME for MySQL
131     - Added support for COMMENT keyword (for descriptions from schema) in
132     MySQL table definitions
133     - Fixed Table->containsColumn() method in propel-generator
134     - Fixed insert-sql to work with multi-line & complex SQL statements (Dominik del Bondio)
135
136   May 2, 2004 - 1.0.0-alpha2
137
138   Bug Fixes:
139   - LONGVARCHAR no longer considered LOB column (HL)
140   - Added INDEX for MySQL/InnoDB foreign keys
141   - Removed old references to BOOLEANINT/BOOLEANCHAR from platform classes (HL)
142   - Allow missing autoIncrement column w/o requiring idMethod="none" (HL)
143   - Fixed parse errors in generated classes w/ multi-column primary key (HL)
144
145   New Features:
146   - Added column validator framework and validator suite (MA)
147   - Added doCount() method to generated peers (MA)
148
149
150 --$Id: CHANGELOG,v 1.11 2005/04/07 22:25:52 hlellelid Exp $
Note: See TracBrowser for help on using the browser.