[Modeling-users] [ModelingCore & ZModeling] Release 0.9-pre-7
Status: Abandoned
Brought to you by:
sbigaret
From: Sebastien B. <sbi...@us...> - 2003-05-06 17:03:00
|
Hi all, Time for a new release, until requirements for 0.9 are met --it's been too much time since the last one to wait for 0.9. =20=20 This release is made of fixes for various bugs discovered on the long road to v0.9, mainly: - possible failure when fetching in a multi-threaded environment (e.g. Zope), - objects declaring PKs as class properties did not get the PK's value right after insertion into the DB, - corrections for the python-code generation script A new script: mdl_compile_model.py generates a pickled version of a model to be loaded *much* faster than the xml-file at runtime; the python-code generation has been refactored and is now more flexible, plus it builds an __init__.py using the pickled model if available. Last, the models & ZModeler were changed to accept comments for the model's components. All these changes were announced/discussed in previous threads. As usual all changes since last public release (0.9pre4) are enclosed at the end of the mail. Cheers, -- S=E9bastien. ------------------------------------------------------------------------ 0.9-pre-7 (2003/05/06) --------- * Fixed DatabaseChannel.fetchObject(): it was not MT-safe wrt Database snapshots' caching in some circumstances (see comments in the code for further details) * Added scripts/mdl_compile_model.py and update the __init__.py generated= by mdl_generate_DB_schema.py so that it automatically tries to load the pickled model. Using the pickled model is *much* faster than loading the model from its xml description. * Fixed AbstractDBAPI2Adaptor.create/dropDatabaseWithAdmin.Conn.Dict.(): under some circumstances it was possible that createDB() fails when cal= led just after the drop, fails (see comments in the code for details) * Fixed mdl_generate_DB_schema: some options ('-t -p -s -f -F) were silen= tly ignored * Added a field 'comment' for Model, Entity, Attribute & Relationship, af= ter a suggestion by Yannick Gingras 0.9-pre-6 (2003/04/22) Project milestone -- no public release --------- * ModelMasons: added a new generation scheme. The existing one is named 'compact', the new one, 'base'. The latter generates two different modu= les for a given entity, in modules <className> (which is not overwritten wh= en re-generating) and <className>Base (which IS overwritten upon regeneration) * Refactored ModelMasons: ModelMason and PyModelMason are now clearer than they used to be. See PyModelMason for an example of use.=20 Fixed: bug #710817 Fixed Python_bricks/module.tmpl: do not generate e.g. setId() if 'id' i= s a primary key marked as a class property =20 * Fixed: name clash for invalidatesObjectsWhenFinalized in EditingContext Default behaviour is now set with EditingContext.invalidatesObjectsWhenFinalized_default * Fixed: an newly inserted object with a PK, say, 'id', marked as class property did not get its value after EditingContext.saveChanges(). [Details in: EditingContext.handleNotification()] Thanks to soif <Jer...@fi...> for identifying and reporting the pb. * Fixed SQLExpression.sqlStringForAttributeNamed(): now raises ValueError with an explicit message when it receives an invalid attribute's name 0.9-pre-5 (2003/03/17) Project milestone -- no public release --------- * Attribute: fixed defaultValueAsPythonStatement() and convertStringToAttributeType(): they were failing to operate properly under python2.2 (StringType.__name__ is 'string' for py2.1, 'str' for py2.2) * Fixed Entity.objectsPathForKeyPath(): under some circumstances it did n= ot raise ValueError as expected for an invalid keypath * scripts/mdl_validate_model.py fixed: ValueError could be raised when no messages were issued at the INFO level * Fixed ModelValidation.validateEntity_internals(): now iterates on all primary keys, and correctly report an error when a PK is set to be a cl= ass property but does not have a default value set to integer zero (this is now enforced since when the default value is None, we get an erroneous error message at EC.saveChanges(): the validation mechanism fails on validating the PK --thanks to Yannick Gingras for reporting the problem) * Fixed Attribute.initWithXMLDOMNode(): it was possible that the defaultValue was set prior to the attribute's type, hence it didn't get the right value (e.g. a default value being string '0' instead of integ= er 0 for a type=3D=3D'int') ------------------------------------------------------------------------ |