Quick links: Content - sections - sub sections
The page corresponding to the latest stable release can be seen in the Jelix 1.7 Manual

Main improvements provided by the version 1.6 are:

  • defaultconfig.ini.php is renamed to mainconfig.ini.php. defaultconfig.ini.php is still supported but is now deprecated. (Olivier Demah)
  • a new localconfig.ini.php to store configuration specific to an environment (dev, prod...)
  • New jApp::mainConfigFile() method to retrieve the path of the main configuration file
  • Plugins for templates provided by your application are now the priority over those provided by the framework. So you can "override" existing template plugins now.
  • jDb/jDao:
    • Full support of OCI in the oci driver for jDb (Philippe Villiers)
    • jDbTools for Oracle: use comment on columns to get form labels (Philippe Villiers)
    • jDao: Add pattern in jDaoConditions, like in the (select|insert|update)pattern attributes (Philippe Villiers).
    • new method jDbConnection::disconnect()
  • New methods addJSLinkModule() or addCSSLinkModule on the html response object, to add easily links to JS and CSS files stored in modules. (Eric D.)
  • jForms:
    • better display of data of a form (with ctrl_value or formdatafull plugins)
      • labels are displayed like in the edition mode
      • ctrl_label doesn't display anymore "required" indicator
      • display of choice and group widgets is better
      • added a boolean in parameters of \jelix\forms\Builder\BuilderBase::outputControlLabel()
      • added a boolean in parameters of \jelix\forms\HtmlWidget\WidgetInterface::outputLabel()
      • the formdatafull template plugin accepts now a builder type and some builder options
    • possibility to have a specific label when the value of a control is empty (emptyvaluelabel)
    • new attributes minvalue and maxvalue on <input> of type "integer" or "decimal"
    • The plugin formdata accepts now a builder type and some builder options
    • It is possible to indicates label for each possible value of a checkbox ex: <oncheckvalue label="yes" /> and <onuncheckvalue label="no" />
    • plugin ctrl_label : we can indicate a string format as second parameter for sprintf
  • jEvent objects have now setters/getters: it is possible to do $event->something instead of $event->getParam('something').
  • jDateTime::toString() accepts now a formated string as parameter, compatible with mktime().
  • new property jResponseJSON::$options which contains options for json_encode (Couac)
  • New class jSoapObject
  • Internal: new method jFile::parseJelixPath() to translate shortcut jelix path to real path (Brice)
  • Significant urls: we can have a character ":" in your custom url.
  • TCPDF update
  • jQuery update

Note also that there isn't anymore Gold edition of the framework (with the binary PHP extension).

Improvements provided by 1.6.1 and 1.6.2:

  • Support of busytimeout and sqlite extensions in the sqlite3 jDb plugin
  • jForms: choice items (li elements) have now an id and a class (jforms-selected and jforms-notselected)
  • jForms: group control can now have a checkbox
  • Use the latest PHPUnit version from Composer.
  • For contributors: a vagrant configuration is provided in the source code repository to allow to launch tests without configuration on the developer's machine.

Improvements provided by 1.6.6:

  • jForms: support of "class" data sources for dynamic changes into menulist and listbox (criteriafrom attribute)
  • jDb: Allow to use a PostgreSQL service for connection instead of host/login/password

Improvements provided by 1.6.7:

  • jLog: syslog plugin has been modified to use the syslog function. Previous behavior is available in a new plugin legacysyslog
  • jCache: new plugin for Redis
  • Because the mcrypt PHP extension is deprecated, the jCrypt class is now deprecated and will be removed in future release (1.7+). You should use instead openssl functions or the lib https://github.com/defuse/php-encryption for example.
  • The legacy builder of jForms (jFormsBuilderHtml) is now deprecated too. It will disappear in the next release (1.7).

Improvements provided by 1.6.8:

  • jAcl2: new driver dbcache. It is like the db driver, but it also stores results in a cache via jCache to improve performance.
  • jCache: allows char '/.-:' in keys. Modify cache file storage.
  • For file driver of jCache, the tree structure of cache files has changed to have smaller path. file_name_prefix is now used as directory name, not prefix filename.
  • Redis plugin for jCache: support key prefixes with the new key_prefix option
  • Redis plugin for jCache: support db indexes with the new db option
  • Redis jKvDb driver: support of db index and key prefixes options
  • new method jInstallerEntryPoint::getEpConfigIni()

Improvements provided by 1.6.9:

  • jForms, HtmlBuilder: possibility to redefine the display of errors with the ouputError() method, in child classes.
  • Possibility to declare the path of a single module (outside from a modules group), with the <module>.path parameter of the section modules.

Improvements provided by 1.6.11:

  • jAuth: support of an action for errors in Ajax requests, with the on_ajax_error_action parameters (see default configuration of the "jauth" plugin).
  • jDb, mysqli : support of SSL connections.

Improvements provided by 1.6.14:

  • Plugins "redis" for jCache and jKvdb have been renamed "redis_php"
  • new Redis plugins, named “redis_ext”, for jCache and jKvDb, using the API of the Redis extension.
  • New experimental jDb driver, sqlsrv, for SQLServer, using the sqlsrv PHP API.
  • jForms: the captcha control is now configurable, so you can implement your own Captcha. See the Captcha page.
  • New catcha plugin: Recaptcha

Improvements provided by 1.6.16:

  • jDao: the groupby attribute on <method> is deprecated because its SQL implementation is not compatible with recent version of Mysql, and is unpredicatble (and not implemented for other database than mysql). It will be removed in 1.7. An "E_USER_DEPRECATED" error is generated when it is used. The method jDaoConditions::addItemGroup() is also deprecated for the same reason.
  • A new feature that prevent to leak sensitive data into log
  • Full support of Postgresql, sqlite3 and Mysql in jDbSchema
  • Basic url engine: modules can have a custom name in urls
  • UI of rights management (jAcl2): it is not possible anymore to remove rights about rights management from an administrator, if he is the only one user having these rights.
  • new soapfile logger for SOAP logs
  • PHP 7.2 support.

Improvements provided by 1.6.17:

  • New AuthChangePassword event when jAuth::changePassword() is called
  • jInstaller: better error messages about bad version number
  • jResponseHtml: new properties for IE mode, viewport and metas
  • jResponseHtml: new method addMeta() and outputMetaTag()
  • jRequest: new method isPostMethod()
  • jDaoConditions: add support of BETWEEN operator
  • jForms: support of placeholder default value in ctrl_control
  • jForms: possibility to redefine the html of the help on the form builder
  • jForms: possibility to configure a default error decorator for all forms
  • jForms: improved http errors when retrieving data for dynamic lists
  • jMailer: new debug mode, allowing to specify receivers and sender for every mails
  • jMailer: possibility to store SMTP credentials into profiles.ini.php
  • jInstallerBase::insertDaoData(): allowing to use data from an other module
  • Master_admin: check unchanged password for every users
  • Add support of http_method variable into format of error messages

Improvements provided by 1.6.18:

  • Support of a new configuration file liveconfig.ini.php, to store parameters modified during the live of the application.

Improvements provided by 1.6.19:

  • support of a script install_1_6.php for modules that should have an installer compatible with Jelix 1.7 and 1.6.
  • support of a upgrade.php in modules to execute upgrade code at each new version of the module.
  • jForms: support of capture and accept attributes on <upload>
  • jForms: improvements on properties of HtmlBuilder and WidgetBase to ease the creation of new builders and widgets
  • new plugins for templates: dumptolog, vardump, ifctrl_value, json_encode, jurlpattern

Improvements provided by 1.6.20:

  • New jelix script inifile.php. It allows to modifie an ini file from the commande line
  • CRUD controller: inject the record into the view template. It allows to access to some properties that are not into the form.
  • List of jQuery/jQueryUI files is entirely configurable. There is not anymore jquery.js filename or other jQueryUI filenames hardcoded into jforms plugins or other files. Path to these files are now indicated into the configuration, in a new jquery section.
  • Datepicker: add locales for jforms

Main contributors of Jelix 1.6: Olivier Demah, Philippe Villiers, Eric D., JulienI, Couac, Brice Tence, Khena, René-luc D'hont.