Cédric Krier
f4a7c8d395
Do not try to save reverse field of One2Many
...
Even if the record is already created, the _save_values should not process the
reverse field otherwise it creates an infinite loop.
issue8742
2019-11-16 15:49:50 +01:00
Cédric Krier
ec24fc7727
Fill the reverse field in the One2Many setter
...
issue8742
review262301002
2019-11-16 14:34:29 +01:00
Sergi Almacellas Abellana
bc0c6f13f9
Drop support for skiptest attribute on xml files
...
issue8735
review270351002
2019-11-15 20:43:33 +01:00
Nicolas Évrard
5f49ca09a7
Remove implicit field names in ModelStorage.search_read
...
issue8569
review285801003
2019-11-15 11:58:43 +01:00
Cédric Krier
b8af68cf59
Do not check timestamp when it is None
...
issue8779
review268321002
2019-11-05 10:33:25 +01:00
Cédric Krier
34678d2be6
Backed out changeset f08b9ce07a7b
2019-11-04 16:05:28 +01:00
Cédric Krier
65650004c9
Update release number
2019-11-04 16:01:28 +01:00
Cédric Krier
c15cc1aacd
Increase version number
2019-11-04 12:45:29 +01:00
Cédric Krier
657f3c844a
Added tag 5.4.0 for changeset 32170ff46339
2019-11-04 12:45:10 +01:00
Cédric Krier
b5516b2119
Prepare release 5.4.0
2019-11-04 12:45:10 +01:00
Cédric Krier
0b5dc3e389
Compare timestamps as Char for inequality
...
Databases are too random about rounding when casting epoch into numerical
value. So it is better to check against inequality of the string.
issue8779
review254571002
2019-11-03 17:49:03 +01:00
Cédric Krier
24407bddf8
Update translations
2019-11-02 18:07:45 +01:00
Cédric Krier
801a9fd10f
Add Indonesian
...
issue8184
review285461002
2019-11-01 23:35:00 +01:00
Cédric Krier
7729badb30
Cast timestamp epoch into FLOAT to avoid rounding
...
On PostgreSQL-12, the epoch FLOAT is now 6 digits but rounded to 5 digits when
cast into NUMERIC.
issue8779
review264501002
2019-11-01 23:04:50 +01:00
Cédric Krier
d0e95329a3
Replace __unicode__ by __str__
...
The unicode method is no supported by Python3. There is only __str__.
issue8769
review262341002
2019-10-30 14:09:20 +01:00
Cédric Krier
442fa2a1da
Display decoding error in HTML editor
...
If the bytes can not be decoded in UTF-8, we should display a nice error
message instead of failing with a 500.
Also if the text is not a string, we must return a 400 as it is a wrong
request.
issue8577
review264451002
2019-10-30 13:26:38 +01:00
Cédric Krier
43dc061406
Test translation in fields_get
...
issue8744
review254491002
2019-10-25 23:06:19 +02:00
Cédric Krier
7e291e13e1
Use proper key to compare with get_sources arguments
...
The wrong key values was introduced in rev bfc90c50b591.
issue8744
review254491002
2019-10-25 23:05:38 +02:00
Sergi Almacellas Abellana
6cc160318c
Add missing skiptest attribute on xml validation
...
issue8735
review274091002
2019-10-22 10:07:59 +02:00
Cédric Krier
ccfd866021
Always use search method on translations
...
This ensure to have always the same order when selecting the record out of many
duplicates (which can happen as there is no unique constraint
since r 426276806f60).
issue8705
review260271002
2019-10-16 21:31:25 +02:00
Cédric Krier
af5b9fd1cb
Improve tests on depends
...
Add check for _parent_ when depends on Many2One. If the Many2One has a reverse
One2Many, there should be also _parent_ depend in case the record is edited
from the One2Many.
Ensure depends are existing field.
issue8712
review258221002
2019-10-16 21:24:06 +02:00
Cédric Krier
c4e96016d8
Add permission groups on export
...
By default an export is only available for his creator and administrators.
We add a list of groups that are allowed to read and a second subset of groups
that are allowed to modify it.
issue8695
review252331002
2019-10-14 00:09:32 +02:00
Cédric Krier
66a283613f
Do not log as failure rollbacked tasks
...
A task that was added to the transaction may no more exist if the transaction
was rollbacked at some point.
issue8686
review249991002
2019-10-08 19:06:18 +02:00
Cédric Krier
81248e82dc
Order calendar as target by index
...
issue8689
review268001002
2019-10-08 19:03:20 +02:00
Cédric Krier
6fe44efeac
Retry cron job on DatabaseOperationalError
...
issue8685
review258151002
2019-10-08 19:02:00 +02:00
Cédric Krier
df2092e6a0
Add test if field is readonly when no write access on it
...
issue8692
review276071002
2019-10-08 18:11:35 +02:00
Cédric Krier
1ef4a01585
Correctly test field access to set readonly attribute
...
Since r 1094d993d89c, field variable is the field instance and no more the
field name.
issue8692
review276071002
2019-10-08 18:10:23 +02:00
Sergi Almacellas Abellana
5f8639a982
Add missing end dot on translatable strings
...
issue8670
review252211037
2019-09-30 09:40:36 +02:00
Cédric Krier
4802ee5611
Add expand on tree view
...
and unify layout of form view.
issue8644
review262131002
2019-09-28 23:59:10 +02:00
Cédric Krier
970ebc4097
Add visual context on tree view
...
issue8562
review261951002
2019-09-20 11:47:15 +02:00
Cédric Krier
507a8e26fe
Add start value to PYSON Date and DateTime
...
This enable the customization of the starting point for delta operations.
issue8561
review264041002
2019-09-20 11:36:05 +02:00
Cédric Krier
def268915a
Add MultiSelection field
...
issue7851
review249911002
2019-09-20 11:32:56 +02:00
Sergi Almacellas Abellana
058a816879
Support dot notation on PYSON Eval
...
issue8528
review287841003
2019-09-19 14:11:17 +02:00
Sebastien Marie
afd08618f0
Import zero value as non null value
...
issue8658
review282121004
2019-09-17 23:12:51 +02:00
Cédric Krier
d782949f5a
Add tests for translation in ModelSQL
...
issue8632
review280081002
2019-09-17 00:05:09 +02:00
Sergi Almacellas Abellana
b60b01c569
Ensure view arch is defined on test_view
...
issue8603
review270141003
2019-09-12 18:54:25 +02:00
Cédric Krier
5e68f7c0ab
Test _changed_values with rec_name
...
issue8637
review280081004
2019-09-11 23:50:20 +02:00
Cédric Krier
be8ffa6f0c
Use new related API for _changed_values
...
The rev 596528aa0139 introduced a new API for related values. The rec_name set
by ModelView._changed_values must follow this new API to be used as cache by
the clients.
issue8637
review280081004
2019-09-11 23:49:34 +02:00
Cédric Krier
d9b4d71a11
Ensure context is correctly set when initializing Model
...
We make the assignation twice if any field has a context defined. This ensures
that the context will be evaluated with all initialized values when
the target records will be instantiated.
issue8586
review282041002
2019-09-09 22:41:54 +02:00
Cédric Krier
262f81979d
Do not call _changed_values on non ModelView instance
...
When the target is not a ModelView, we can not compute the changed values.
2019-09-08 22:11:31 +02:00
Cédric Krier
4154b93a01
Prevent assign unknown attributes on Model
...
by adding __slots__ on PoolMeta
issue8567
review254091002
2019-09-07 23:45:08 +02:00
Cédric Krier
845eee5ea1
Add test to use stored value for One2Many changed without initial value
...
issue8605
review265901016
2019-09-07 23:34:55 +02:00
Cédric Krier
d2bc591d18
Use stored value for One2Many changed without initial value
...
If the client does not send the value for the One2Many (it happens when it is
not modified), we must assume that it has the stored value unchanged. Otherwise
the current records are considered as to be added but with only their changed
values.
issue8605
review265901016
2019-09-07 23:34:20 +02:00
Cédric Krier
dd1626e5cf
Replace child_of target only if it is not a related field
...
issue8609
review285911002
2019-09-02 18:34:55 +02:00
Daniel Möller
38bbe4d820
Pass app and request to wsgi error handlers
...
issue8548
review271931002
2019-09-02 18:25:12 +02:00
Cédric Krier
c2bcf9368a
Return message id if pool does not have yet ir.message
...
When pool is initialized the ir.message may not yet be registered.
issue8631
review262061002
2019-09-02 18:21:41 +02:00
Cédric Krier
2b78f07a98
Use MagicMock for message when testing sendmail
...
Since issue8596, sendmail test message contains Date header so message must
implement the magic method.
2019-08-30 11:32:32 +02:00
Luciano Rossi (lukio)
8c1aa49492
Add missing Date header on email sent
...
issue8596
review272091002
2019-08-30 09:08:32 +02:00
Cédric Krier
340cb2f630
Loop over all expression of the relation domain to valid
...
When the field is a relation, the field name can not be used to inverse the
domain because the record evaluated it the Relation. So we inverse the domain
with all the field in the domain until find one invalid. If we find any then we
raise a generic error.
issue8597
review270141002
2019-08-28 22:31:22 +02:00
Cédric Krier
54e2d31843
Ensure to convert to string LazyString of selection
2019-08-25 20:51:31 +02:00