Commit Graph
543 Commits
Author SHA1 Message Date
David Harper 6fec6444fc Add trigonometric functions to sqlite backend
issue9996
review333731002
2021-02-06 10:47:06 +00:00
Cédric Krier c6fc31ecee Test copy translation
issue9866
review353091002
2021-01-18 23:20:40 +01:00
Maxime Richez d64ae06e19 Add summary to line list
A function field summary is added which takes the first line of description
field. This is useful to identify line without product (only with description)
in the list.

issue9695
review292431002
2020-12-25 17:14:57 +01:00
Cédric Krier b16604550c Skip access check on ModelStorage instances
There is no need to enforce access right on instances because only internal
code can use them and the design is to only check on the external calls.

issue7765
review322581002
2020-12-18 00:09:03 +01:00
Cédric Krier e18501c644 Support other methods for button_change decorator
issue9871
review314871002
2020-12-05 12:09:27 +01:00
Cédric Krier 1618881692 Allow copying Python instances of Model
issue9869
review337071002
2020-12-05 11:58:41 +01:00
Cédric Krier 7822844f52 Store listener threads per process
This ensure that if the process is forked, the child process will start new
listeners for the Cache and the Bus.

issue9832
review329601002
2020-11-27 22:19:56 +01:00
Cédric Krier 1fd888b83e Test depends of depends are included
issue9828
review292751003
2020-11-23 23:35:03 +01:00
Cédric Krier 44682fb9cd Unify PYSON string format between all clients
issue9723
review328481002
2020-11-15 18:50:47 +01:00
Cédric Krier df207056eb Do not read/test value after aborted transaction
issue9796
review328831002
2020-11-12 21:45:48 +01:00
Cédric Krier a1671ab214 Forbid all white spaces except space in Char field
They can not be displayed by all clients (nor OS).
But also they can be trimmed automatically by web input which breaks comparison
against changes.

issue9248
review312681002
2020-11-05 23:58:15 +01:00
Cédric Krier 0a2cc7162d Construct recursively Tree search_rec_name with 'in' operators
Each value of the 'in' operators must be processed as a '=' clause.
The None values must be supported just in case it set in the 'in' values
because the mixin does not allow empty name.

issue9354
review304601002
2020-10-26 21:27:13 +01:00
Cédric Krier 26076d82f1 Fallback to stored values to compute changed xxx2Many
The client may not send the values for the xxx2Many if they have not been
loaded. So in order to provide proper changes to apply once the values are
loaded we must base those changes on the current data stored.

issue9719
review308391002
2020-10-21 23:27:13 +02:00
Cédric Krier 9d4875277c Test default value for missing depends field
issue9726
review314481004
2020-10-21 23:23:41 +02:00
Cédric Krier ab14e12f1f Restore English language on tear down
The translations tests change the default language on setup and commit the
change. So we must restore the initial state of the database at the end of the
test case.

issue9702
review312521002
2020-10-14 14:43:40 +02:00
Cédric Krier 001245bf60 Support timedelta in CSV import/export
issue9220
review297531002
2020-10-11 19:04:16 +02:00
Cédric Krier b8e2124a45 Add optional PYSON recipients to email template
issue9617
review306401002
2020-10-11 13:32:18 +02:00
Cédric Krier 1984f83bbf Display simpler and clearer error message for assertIn using dictionary 2020-10-09 21:21:33 +02:00
Cédric Krier cd7d40eb07 Add symbol widget
issue9059
review276871002
2020-10-09 19:09:06 +02:00
Cédric Krier 576b6265a6 Update ModelSingleton to use the custom cache class API
issue9641
review292321003
2020-10-08 21:26:20 +02:00
Sergi Almacellas Abellana 97194bc10b Add format_datetime to Report
issue7202
review45521002
2020-10-04 23:04:01 +02:00
Cédric Krier 05b53fa6c9 Allow overriding digits in Lang.currency and Report.format_currency
issue9588
review292221002
2020-09-24 22:49:09 +02:00
Cédric Krier ce88a10900 Update tests for new report name scheme
issue9509
2020-09-24 18:28:45 +02:00
Nicolas Évrard bfd07fffef Ensure that views are valid when replacing link by label
issue9548
review327881002
2020-09-23 10:06:49 +02:00
Nicolas Évrard 70b2c9b56c Manage deletable and writable state from ir.rule
issue9357
review290101002
2020-09-23 10:04:19 +02:00
Sergey Datsevich 9012c89428 Add DeactivableMixinTestCase to test suite
issue9624
review326141002
2020-09-22 10:16:52 +02:00
Cédric Krier c2e22d9d43 Add language attribute to data tag
issue9559
review302061002
2020-09-18 00:06:31 +02:00
Cédric Krier 82e64bf66a Send client email via server
issue9449
review292001002
2020-09-17 17:18:02 +02:00
Cédric Krier ab4bcc470c Test Lang.format
issue9585
review306331002
2020-09-16 23:26:09 +02:00
José Salvador 2a0fdf407e Disable explicitly CRITICAL logging level in test
The default value has been only added in Python 3.7.

issue9597
review326091002
2020-09-16 22:54:38 +02:00
Cédric Krier d1db3bba30 Queue trigger action only when there are records
issue9579
review315901002
2020-09-12 18:33:30 +02:00
Cédric Krier 54fc9d0805 Disable logging when running tests
issue9545
review294331002
2020-09-12 18:26:41 +02:00
Cédric Krier 2f19e94033 Register mixins to generic Report class
issue9531
review300261002
2020-09-12 18:25:14 +02:00
Cédric Krier be7edef2ef Support PYSON comparison of date and datetime
issue4879
review270061002
2020-09-05 22:59:38 +02:00
Cédric Krier f913df040c Add escape_wildcard in tools
issue9463
review306021002
2020-07-21 14:37:01 +02:00
Cédric Krier 46995607e2 Ensure values can be sorted
The values may contain None which is not orderable so we insert a third
argument before the value to prevent to compare None value against others.

issue9381
review303881005
2020-07-21 00:36:40 +02:00
Cédric Krier 060a9da6bf Add model, record and records attribute on Wizard
issue9421
review309861012
2020-07-07 23:56:10 +02:00
Cédric Krier 066b8f8491 Returns None when evaluating domain with None
We implement the same behavior as SQL with NULL which always returns NULL
except for IS operator. So the evaluation has the same result as the search.

issue8615
review290281002
2020-06-19 00:18:04 +02:00
Sergi Almacellas Abellana d3f7ea5889 Do not write to existing targets on xxx2Many add
issue9194
review313581011
2020-06-17 13:55:00 +02:00
Cédric Krier d02f8acae2 Do not rely on keyword arguments order in LRUDict update test
The insertion order in dictionary is only preserved since Python 3.7.

issue9413
2020-06-17 01:08:22 +02:00
Cédric Krier 4a1f2c938b Use different hash for records without id
In order to have store them efficiently in dictionary, we generate a different
hash for each unsaved record by using the instance id.

issue9240
review295421002
2020-06-17 00:30:53 +02:00
Cédric Krier 23bac3a173 Wait cache sync after clearing cache in test
The test relies on the cache being cleared before setting a value from the old
transaction. So we must wait for the synchronisation to happen when channel is
used.

issue9413
review327461011
2020-06-17 00:25:57 +02:00
Cédric Krier b3f8d125f9 Use custom class to store record data
By using a class with slots instead of standard dict, we can reduce a lot the
memory usage to store the record data in the caches and values.
Also we can rely on the data in the cache to exist only for real field which
can be used to create a fast path in ModelStorage.__getattr__.
As now storing data in the cache has no extra cost, we can store data from the
transactional cache in the local. This allow also to have a shorter path in
ModelStorage.__getattr__.
For more memory efficiency, we remove the record from the cache instead of
clearing them. It was better to clear a dict but a record is less expensive to
re-instantiate than clearing.

issue9369
issue9225
review297861002
2020-06-13 09:48:03 +02:00
Cédric Krier 386347e46f Add test for relation with PYSON domain
issue9383
review317531002
2020-06-12 12:37:50 +02:00
Cédric Krier cf1cdf1c98 Ignore link of action that user can not read
We must also prevent the client to read link action for which the user has not
read access.

issue9364
review305661002
2020-05-28 18:17:40 +02:00
Nicolas Évrard cfb307238e Add support for properties to fields.depends
issue9313
review319451002
2020-05-25 09:39:17 +02:00
David Harper 67acdddc3a Allow authentication methods to be combined
issue9303
review291621002
2020-05-21 09:06:10 +02:00
Cédric Krier 7521bfd8df Test icons of each module
This ensures that the path is valid.

issue9291
review315431002
2020-05-10 12:02:59 +02:00
Cédric Krier fc66c17eb0 Call getter function when accessing Function field
If the record is unsaved and the getter is based on on_change_with, we can call
the getter to compute the value.
This value must not be stored in the cache as it may change prior to saving.

issue4193
issue9263
review317291002
2020-05-03 14:34:44 +02:00
Nicolas Évrard 7bd5da6305 Add test for ir.note write's method
issue9245
review305371002
2020-04-21 14:10:46 +02:00