Trace:
Differences ¶
This shows you the differences between two versions of the page.
Next revision | Previous revisionNext revisionBoth sides next revision | ||
en:changelog:1.0beta3 [2007/09/28 14:51] – created laurent | en:changelog:1.0beta3 [2007/09/28 15:29] – laurent | ||
---|---|---|---|
Line 5: | Line 5: | ||
===== Main improvements ===== | ===== Main improvements ===== | ||
- | ===== Change details ===== | + | |
+ | * **Full implementation of jForms**, the form system of Jelix: automatic checking of the datas, server side and client side; | ||
+ | * **Generic controller for ?? | ||
+ | * **support of drivers in jAcl** | ||
+ | * Automatic control of configuration parameter, basePath. | ||
+ | * **new junittests module** to facilitate the creation of unit tests | ||
+ | * possibility to have **templates specific to languages** | ||
+ | * **Reorganization of plugins directories**: | ||
+ | * Official distribution of **Jelix 1.0beta3 is not compatible any more with PHP 5.0**, but it is **only designed for PHP versions higher than 5.1**. (However | ||
+ | * better support of HTTP headers in the responses | ||
+ | * better automatic control of the language of the navigator in the plugin autolocale | ||
+ | |||
+ | ===== To update since jelix 1.0 beta 2/2.1 ===== | ||
+ | |||
+ | Because of some modifications in Jelix 1.0beta3, here what you must do to update Jelix and your application: | ||
+ | |||
+ | * remove the directories lib/jelix and lib/ | ||
+ | * remove the directory lib/ | ||
+ | * remove the contents of the directory temp of your application | ||
+ | * install the new directory lib/jelix, lib/ | ||
+ | * modify the configuration file of your application, | ||
+ | * If you created plugins of coordinator: | ||
+ | - place them in under directory coord/in your directory of plugins (example: your-appli/ | ||
+ | - rename your plugin files : exemple.plugin.php to exemple.coord.php | ||
+ | - in your plugin files, change the name of the interface jIPlugin to jICoordPlugin | ||
+ | * If you created your own drivers of authentification, | ||
+ | * if you created plugins of templates | ||
+ | - move your directories //common//, //html// etc in a sub-directory tpl/ of your directory plugins (in your-appli/ | ||
+ | - in the configuration files of your application, | ||
+ | - modify the function names of your plugins, by following the pattern " | ||
+ | * In your DAO files: | ||
+ | * change the attribute names selectmotif, | ||
+ | * in your methods in PHP, change the call to $this-> | ||
+ | * In your PHP files, if you use jDatetime, change the names of the constant BD_* into DB_* (but it is not an urgency, the old names are still recognized in the beta3) | ||
+ | * if you use JSON class (lib/JSON/) directly, replace the call by the use of the new class jJson. | ||
+ | * There were many modifications in the format of the jForms files. Refer to the documentation to know the new XML grammar. | ||
+ | * Change | ||
+ | * Use of the requests jsonrpc and xmlrpc: received parameters RPC are now in a single parameter jelix “params”. | ||
+ | |||
+ | ===== Details of the changes | ||
==== API changes ==== | ==== API changes ==== | ||
+ | |||
+ | |||
+ | * jDao: the attributes selectmotif, | ||
+ | * jException: the method getMessage turns over the message located rather than the key of the message. There are no more the properties localizedMessage, | ||
+ | * Reorganization of the site of the plugins coordinators, | ||
+ | * Maintaining the repertories indicated by the parameter pluginsPath of the configuration contain all these plugins, classified in distinct sub-directories. | ||
+ | * the naming of the names of classes and the files of the plugins for the coordinator was modified following the reorganization of the repertories of plugins. The names of the files become foo.coord.php, | ||
+ | * The naming of the classes and the files of the drivers for the authentification, | ||
+ | * jDateTime: the constant BD_* were re-elected in DB_*. The old names are nevertheless valid to version 1.0. | ||
+ | * Modifications in the format of the files jForms. | ||
+ | * Modifications in the files of configurations: | ||
+ | * jAcl: | ||
+ | * jAclManager becomes jAclDbManager | ||
+ | * jAclUserGroup becomes jAclDbUserGroup | ||
+ | * jAcl:: isMemberOfGroup () moved in jAclDbUserGroup | ||
+ | * jAcl:: getDbProfil () moved in jAclDb (new class) and re-elected in getProfil () | ||
==== Improvements, | ==== Improvements, | ||
- | + | ||
+ | |||
+ | * Configuration: | ||
+ | * The parameter of configuration basePath is now detected automatically when its value is with vacuum in the configuration. However, for the applications which have several entrance points in repertories different, it should all the same be indicated to the hand. | ||
+ | * New parameter jelixWWWPath, | ||
+ | * Improvement of the automatic control of language in the plugin autolocale | ||
+ | * jForms: complete implementation, | ||
+ | | ||
+ | * plugins of templates to generate a form HTML corresponding to an object form jForms, also including the automatic generation of the validation Javascript with dimensions customer, the posting of the errors detected with dimensions waiter | ||
+ | * new methods saveFile and saveAllFile, | ||
+ | * jReponse: | ||
+ | * new method clearHttpHeaders () | ||
+ | * a code HTTP 500 is sent when there are errors | ||
+ | * jResponseHtml: | ||
+ | * jResponseJson and jResponseJsonRpc: | ||
+ | * jTpl: | ||
+ | * one can have templates specific to a language, by putting them in sub-directories having for name the code of a language (as for the repertory local) | ||
+ | * one can force the type of template (HTML, text etc.), at the time of the call to the method fetch (useful when one wants to use a template to generate the contents of an email for example, independently of the type of the response of the action) | ||
+ | * New types of plugins of templates, cfunction and cmodifier: they are plugins called during the compilation of the template rather than to posting, which makes it possible to improve the performances. | ||
+ | * new modifier “count” to recover the number of element of a table | ||
+ | * one can indicate if the template that one uses is of confidence or not (3rd parameter with the methods display, fetch…) | ||
+ | * new modifier eschtml (identical to escxml) | ||
+ | * the arguments of the modifiers can now separated by commas (ticket #129) | ||
+ | * Addition of variables of templates per defect: j_datenow, j_timenow, j_basepath, j_jelixwww | ||
+ | * jDateTime: (ticket #176) | ||
+ | * new method now () | ||
+ | * modification on the methods add () and sub (): they always accept a jDateTime object in parameter, but there is now a new alternative. They can now accept the parameters year month day hour minute second. | ||
+ | * the constant BD_* were re-elected in DB_* but remain usable (obsolete) | ||
+ | * jDao: | ||
+ | * new methods jDaoRecordBase:: | ||
+ | * new type of property: text | ||
+ | * jAuth: | ||
+ | * assumption of responsibility of the persistent authentification (ticket #229) | ||
+ | * the name of the variable of session containing information of a connected user, is now skeletal, and thus makes it possible to use several type of authentification in the same application | ||
+ | * new method jAuth:: getRandomPassword () | ||
+ | * possibility of indicating a name of profile for driver dB | ||
+ | * jAcl is based now on a system of driver, allowing for choice of the source of the data on the rights. The implementation of jAcl was thus moved towards a driver “dB”. The drivers must implement the new interface jIAclDriver. | ||
+ | * jUrl: | ||
+ | * for the significant engine: several urls significant can now point towards the same action, provided that they have static parameters which differentiate them | ||
+ | * New class jJson and jCrypt. | ||
+ | * New controller, jControllerDaoCrud, | ||
+ | * New module junittests to be able to easily make unit tests in the modules. | ||
+ | * Improvements on the script of checking of installation | ||
+ | * Addition of a script to create a whole interface CRUD starting from one only table | ||
+ | * Activation of the detection of typical mistakes E_STRICT | ||
+ | * Improvement of documentation the API one in jAuth, jDao, jUrls, plugins of templates | ||
+ | |||
+ | |||
==== Bug fixes ==== | ==== Bug fixes ==== | ||
+ | |||
+ | * jDb, driver pdo: the driver pdo returned a table instead of an object during the use of the resultSet as a iterator (because of a bug in PDO). (ticket #180) | ||
+ | * jDao: | ||
+ | * an attribute “been worth” vacuum was not authorized (ticket #191) | ||
+ | * bad formatting for the method.limit.forbidden error | ||
+ | * removal of a “note” in jDaoRecordBase:: | ||
+ | * bad generation of the conditions on the level of operators IN/NOT IN (bug #203). | ||
+ | * the names of the tables and the fields between quotes in the request are now generated, in order to be able to correctly use these names in Postgresql and mysql. (bug #98) | ||
+ | * for the optional properties, the methods did not check if the corresponding dynamic values were null, and if thus a IS NULL had to be generated or not during their use in clauses WHERE. (ticket #228) | ||
+ | * correction of bugs on the properties of the type autoincrement | ||
+ | * jTpl: | ||
+ | * (regression) the use of the key words true, false and null was not possible any more bus php sees them like constants | ||
+ | * certain operators were usable in the tags of posting. They are not it any more. | ||
+ | * the same compiled file of template was used during the use of the template in answers of the different type (bug #225) | ||
+ | * it was possible to include tags PHP in a template, which is a potential hole of safety for the templates which are not “confidences” (uploadé by one to use by ex). | ||
+ | * It was not possible to put in comment tags jtpl (bug #106) | ||
+ | * answers: | ||
+ | * headings HTTP were not well managed in certain answers: one could not modify them (ticket #198). | ||
+ | * jResponseBinary: | ||
+ | * jResponseXmlRpc and jXmlRpc: bug during the analysis of the data of the type struct (ticket #190 et#192) and to the level of the name of the method (ticket #245 and #243). | ||
+ | * rss and atom: the code language was badly generated (ticket #247) | ||
+ | * jUrl, engine of significant URL: in the file xml, parameter of the type dates, the days “10” and “20” were not recognized (ticket #204) | ||
+ | * jAuth: bad operator in jauth.listener.php (bug #221). | ||
+ | * jControllerCmdLine: | ||
+ | * Problem of encoding with class JSON included in Jelix: update of this class (bug #321) | ||
+ | * Problem of encoding at the time of the sending of the emails | ||
===== Other versions ===== | ===== Other versions ===== | ||
+ | |||
+ | |||