Before we were only showing lnk fields in VIEW, and lnk+remote in EDIT (excluding some fields, see below).
Now by default (as this is customizable in VIEW mode) we have the same !
Rules to choose fields are moved from \UILinksWidget::__construct to :
* \MetaModel::GetZListAttDefsFilteredForIndirectRemoteClass
* \MetaModel::GetZListAttDefsFilteredForIndirectLinkClass
- Compute any type of expression on server side
- Recompute friendly name and obsolescence flag on server side (DBOBject)
- Bonus : compute dependency for external keys
First log implementation (75730ee) was creating EventIssue objects, and was rollbacking transaction if it exists
The new one has some benefits :
* always log one line by default in log/error.log, but details must be activated though config (channels `Deadlock-WaitTimeout` and `Deadlock-Found`)
* detailed logs are in a dedicated file (log/deadlock.log) :
- easier for our clients to get and share
- has rotation by default
- looking at the file size is a direct way to know if error happened
- more compliant to industry standards !
* the transaction stays untouched, so that the consumer can do whatever it prefers
- The code now uses the standard extension method (using interfaces)
- the metamodel can now filter on iModuleExtension in order to leverage extensions modularity (see MetaModel::EnumPlugins second param)
- during the setup, there is no pawsord policy control
- there is now a default policy
- new (more precie) translation reflecting the default policy
- fix CI?
* case insensitive SQL data type comparison
* some options have also case differences (example 'int(11) unsigned')
* DEFAULT 'NULL' added by MariaDB on all nullable fields
* default values are always surrounded with single quotes on MariaDB
This is a Combodo implementation of PR #91
This code is a drop in replacement based on an abstract counter based on an abstract keyValue store.
The counter can be
- class based (in this case the counter is initialized on max(id) + 1
- key based (in this case the counter starts at 0)
Important: on both cases the counter is no more kept aligned with the primary key.
This lead to a MySQL8 compatible implementation.