Commit Graph
438 Commits
Author SHA1 Message Date
Cédric Krier 7e6d840dd9 Add base64 converter to URL map
issue7920
review45751002
2019-03-30 17:33:20 +01:00
Cédric Krier ce0e68a287 Add HTML editor
issue8004
review54481002
2019-03-30 16:04:45 +01:00
Sergi Almacellas Abellana 74547c4251 Add day view on calendar
issue7774
review66441002
2019-03-28 12:26:36 +01:00
Cédric Krier af791d5beb Typo on Procedure in RPC documentation 2019-03-26 16:03:20 +01:00
Cédric Krier 6d16b629f2 Add CSV exports to print toolbar
issue8130
review54571002
2019-03-22 17:21:21 +01:00
Cédric Krier 2752490423 Improve note button
* Add resources method to ModelStorage
* Support badge on icon
* Display unread and total of notes
* Add two extra colors for icon

issue8122
review70561002
2019-03-22 12:16:36 +01:00
Cédric Krier fb59d8c9b4 Update documentation of the return of ModelStorage.import_data 2019-03-21 17:50:39 +01:00
Cédric Krier 10e31bc311 Add Model.__names__ to retrieve model and field names
issue8159
review72431002
2019-03-15 12:27:44 +01:00
Cédric Krier b76e85be2e Add size attribute to image tag
issue8146
review49781002
2019-03-09 17:10:34 +01:00
Cédric Krier e5e92ac81a Allow to use channel to synchronize Cache
When the clear timeout of the cache is zero, we launch a thread to synchronize
caches if the back-end support channels.
The thread is started on the first call to sync for the database.
The channel is also used to clear the cache of the process initiating the
clearing. This allows to test the mechanism is working with a single process.
So there will be a small delay even on single instance.

issue8027
review68431002
2019-03-09 17:03:38 +01:00
Cédric Krier c4ddbb064a Prevent filling cache with data from old transaction
Once the cache has been cleared, we must ensure that transaction started
before the clearing cannot fill the global cache.

issue8019
review56541002
2019-03-02 23:11:14 +01:00
Cédric Krier 98bb26a386 Move field definition from Model to Field
issue8037
review74441002
2019-02-13 10:37:40 +01:00
Cédric Krier ddf9e44dbe Use number of verbose flag as log level
It decouples the logging level from the development mode.

issue8026
review66521002
2019-02-05 19:27:10 +01:00
Cédric Krier 0d15afb90e Add coroutine concurrency option
issue8010
review53501002
2019-02-05 19:09:53 +01:00
Cédric Krier b34cac78d5 Allow to lock records for update
issue8012
review45901002
2019-01-30 09:45:59 +01:00
Cédric Krier da24071467 Make Cache transactional
We implement sync, commit and rollback to follow transaction semantic.
When a transaction clears a cache, the global cache is cleared only when the
transaction is committed meanwhile the transaction will use a cache for itself
only.
We remove _nocache option because the sync, commit and rollback operate only
for the transaction.

issue7975
review53521002
2019-01-18 11:57:11 +01:00
Cédric Krier 889b1cc9f8 Allow to search and order on Dict key value
issue7905
review62391002
2019-01-18 11:32:47 +01:00
Cédric Krier cef6ffead0 Allow to redirect bus request
issue7943
review48691003
2019-01-18 11:01:22 +01:00
Cédric Krier 1738a4ec35 Add ir.message and use custom exceptions
issue3672
review35291002
2018-12-29 14:19:08 +01:00
Cédric Krier f430589b56 Add warning in the documentation about static filter
issue7902
review58451002
2018-12-21 23:48:05 +01:00
Cédric Krier d1bb790cb8 New API to read related fields
issue7888
review58431002
2018-12-21 23:41:56 +01:00
Albert Cervera i Areny b2b66251f1 Fix typo: One2MOne.filter should be One2One.filter
issue7901
review52541002
2018-12-18 23:44:54 +01:00
Cédric Krier fcb16273c5 Improve the access right documentation
issue7898
review58441002
2018-12-17 23:23:00 +01:00
Cédric Krier 131bb3b216 Fix reference to wizard topic in documentation 2018-11-30 16:23:29 +01:00
Cédric Krier c7f5c54a83 Remove implicit fields names in ModelStorage.read
It is a bad practice to not explicit the fields to read. So we should not
support it.

issue7830
review54421002
2018-11-28 10:05:01 +01:00
Cédric Krier 84a19b2672 Fix references in documentation 2018-11-23 16:01:36 +01:00
Cédric Krier 208fe62130 Better explanation of _order_name
issue7811
review58401002
2018-10-26 22:21:01 +02:00
Cédric Krier 48d894b08c Increase version number 2018-10-01 12:31:00 +02:00
Cédric Krier 472a1e0fff Prepare release 5.0.0 2018-10-01 12:30:45 +02:00
Cédric Krier f41cb86e69 Allow to disable Bus
issue7737
review60381002
2018-09-26 23:03:15 +02:00
Udo Spallek 75be7e9683 Clean install requirements
ipaddress and mock are part of stdlib in Python 3.4 at least.

issue7709
review48611002
2018-09-21 10:56:53 +02:00
Sergi Almacellas Abellana 615e50e080 Update documentation to use "activate-dependencies" instead of "install-dependencies"
issue7343
review52481002
2018-09-17 09:40:18 +02:00
Cédric Krier 5fadcc6c39 Add missing bus documentation in index and fix build warning 2018-09-01 14:29:51 +02:00
Cédric Krier d221e36653 Improve ModelStorage.copy
* Allow callable in copy default
* Support dotted notation in copy default
* Use setdefault in copy
* Copy default when needed
* Do not set default state in copy
* Use callable and dotted notation in copy default

issue5576
issue7648
review72291002
2018-09-01 01:02:04 +02:00
Nicolas Évrard eb04b82822 Add bus management
issue7537
review66341002
2018-08-30 11:15:01 +02:00
Cédric Krier e4a1a7fc8b Allow to set any default configuration value from environment
issue7620
review74301002
2018-08-27 22:32:45 +02:00
Cédric Krier 5a7aca31ea Manage session with max_age and timeout
and clear session when password is changed.

The sessions are checked using on a fix maximum age of 30 days using the
create_date value. The write_date is updated as long as the delay of the last
update is not bigger than the session timeout.
RPC can request a fresh session. A fresh session is a session that was updated
last time before the session timeout. If it is not the case, the session is
deleted and a request to create a new session is sent to the client.
All the sessions of the users for which the password has been changed are also
deleted in order to ensure that stolen session can no more be used.
We use this new feature for set_preferences of user instead of duplicate the
login mechanism.

issue7568
review53331002
2018-08-26 18:04:05 +02:00
Cédric Krier fac1c92bef Use passlib
issue4161
review51461002
2018-08-25 13:06:05 +02:00
Cédric Krier ae06a8bca2 Add transactional queue and workers
issue7406
review45461002
2018-07-27 09:32:28 +02:00
Cédric Krier 7a2ce7905a Add __table_handler__ to ModelSQL
issue7581
review48531002
2018-07-24 22:01:08 +02:00
Cédric Krier 1e70b97140 Add missing documentation for ModelSQL.__table_history__ 2018-07-19 19:23:10 +02:00
Cédric Krier bc768136d0 Add documentation about RPC.unique
issue7567
review52411002
2018-07-16 14:49:34 +02:00
Cédric Krier 78b2811fff Prevent Cache to start too much new transactions
resets starts a transaction only if there is something to store.
clean is run at best every 5 minutes by default.

issue7533
review64261002
2018-07-10 17:03:49 +02:00
Nicolas Évrard d9ff752284 Add domain to dictionary schema
issue7199
review51401002
2018-07-09 12:41:40 +02:00
Cédric Krier 686123bd73 Stop transaction if Cache.clean failed during start
Otherwise the already created connection is never put back to the pool.

issue7532
review49481002
2018-07-02 23:18:40 +02:00
Cédric Krier 08d57b436d Remove cdecimal dependency
It is no more needed as it is standard under Python3
2018-06-27 10:42:15 +02:00
Cédric Krier 06ac0aa064 Keep Python2 compatibility for the documentation
readthedocs.org build with a Python2 environment.
2018-06-26 23:04:21 +02:00
Cédric Krier d2a461390a Remove support for Python 2.7
issue7497
review53261002
2018-06-26 19:11:19 +02:00
Cédric Krier 0d07dea2ac Return new records from copy following the input order
issue7512
review58291002
2018-06-24 16:48:27 +02:00
Cédric Krier 58f2725049 Allow to define view id in switch client action
issue7364
review36181002
2018-06-20 10:18:33 +02:00