- 28 May, 2019 13 commits
-
-
Romain Courteaud authored
-
Romain Courteaud authored
Prevent CDN cache inconsistency
-
Romain Courteaud authored
Use the CDN to publish the page if the backend is down
-
Romain Courteaud authored
This will allow the CDN to return content if backend is down
-
Romain Courteaud authored
This reverts commit b3ff3ec4.
-
Romain Courteaud authored
Fetch usage can be bypassed to do not use service worker when not needed. As appcache has been dropped on Firefox, this change will improve the speed on Firefox. No change is expected on Chrome/Safari.
-
Romain Courteaud authored
-
Romain Courteaud authored
Allow edition in the new UI
-
Romain Courteaud authored
This make everything slow as hell and prevent to quickly save.
-
Romain Courteaud authored
-
Romain Courteaud authored
-
Romain Courteaud authored
-
Romain Courteaud authored
Remove all globals to allow multiple live tests running on the same page. Stop reading the test output if the browser tab doesn't have the focus. Stop hardcoding the URL in the javascript. Stop hardcoding other fields path in the javascript (+ embed the textarea in the gadget). Propagate all parameters via formulator. It will allow to use this gadget from another context document. Run live test from the RJS UI
-
- 24 May, 2019 6 commits
-
-
Romain Courteaud authored
The pagination was not working when using the limit parameter, and when the total number of documents is equal to the pagination limit + 1.
-
Tatuya Kamada authored
Before: Float Equivalence Tester does not test the divergence even if Divergence Provider is ON After: Float Equivalence Tester test the divergence with the epsilon-span if Divergence Provider is ON Before, we needed the following condition to test the divergence at Float Equivalence Tester: "Divergence Provider is ON" AND ("Absolute Tolerance has some value" OR "Relative Tolerance has some value" ) However this default behavior was not consistent with other testers, and difficult to notice from the user interface. Thus test the divergence by default with the epsilon span which is defined in FloatEquivalenceTester class. The epsilon-span is the same amount that when we put 0.0 into the ranges. The 0.0 has been the configuration of erp5_configurator_standard_trade_template. /reviewed-on nexedi/erp5!865
-
Vincent Pelletier authored
-
Vincent Pelletier authored
-
Vincent Pelletier authored
When an object is being indexed, it get wrapped so it has magic properties, like security definitions as they will be accessed by indexation methods. One such property is used to trigger the insertion of rows in roles_and_users table. That property has the special feature that it is only produced on the first object needing a new set of rows added to roles_and_users, other objects will get a None value instead for that property so that no further lines are inserted. Then, SQCatalog iterates over that wrapper list to compute all indexation method parameters. It does so via a cache (LazyIndexationParameterList) so that unused parameters are not computed. The cache key is wrapped object's uid. All this together means that if an object is indexed multiple times in a single call (which happens at site creation, for example) and it needs a new set of rows added in roles_and_users, only one of produced wrappers will get the appropriate value. If that object is not the first on which that parameter is evaluated (which gets more likely with every copy of the same object being indexed), it will be cached as None and shared between all copies, causing no row to be added to roles_and_users. Full investigation done by by Yusei Tahara. wrappers will get the
-
Nicolas Wavrant authored
As we may reach database limits, and to avoid them to be logged.
-
- 22 May, 2019 11 commits
-
-
Thomas Gambier authored
For example, if property_sheet "prop" was moved from BT 1 to BT 2 and BT 1 doesn't exist anymore. Before this commit we have this order: 1. install BT 2 ("prop" exist and isn't touched) 2. remove BT 1 ("prop" is removed) => at the end "prop" doesn't exist anymore After this commit we have this order: 1. remove BT 1 ("prop" is removed) 2. install BT 2 ("prop" is readded) => at the end "prop" exists and is OK /reviewed-on nexedi/erp5!866
-
Thomas Gambier authored
old key was simply "id" so when a container is a VirtualFolder (like Web Site), container._getOb("id") can return any object with id "id" including an object outside the container. Change the key to contain PhysicalPath of the container to get only objects inside the container. This actually fixes installation of some business templates with Web Site inside. /reviewed-on nexedi/erp5!867
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
1.auto centre for image 2.table line is centered 3. image option is left-margin 3cm under image
-
Vincent Pelletier authored
Not all lock uses in this code fit context managers, but use them where it does.
-
Vincent Pelletier authored
Add 10 seconds timeouts on all blocking calls in this test method, which should be a thousand times more than required on a slow machine but avoids completely blocking tests.
-
Vincent Pelletier authored
Even though it should not raise, a stale lock would be a serious issue.
-
Vincent Pelletier authored
-
- 21 May, 2019 8 commits
-
-
Yusei Tahara authored
-
Vincent Pelletier authored
-
Vincent Pelletier authored
The intent is to be able to tell that an independently-defined group of activity nodes may execute given activity, and no other node. This allows more flexible parallelism control than serialization_tag.
-
Vincent Pelletier authored
-
Vincent Pelletier authored
Divide conflict hot-spot to improve write performance: now, conflict risk will not be proportional to the number of zope processes, but only to the number of threads within considered process (...because there is no stable thread name, if there is one day and conflict splitting is needed, it will be easy to implement: just concatenate that name to node name in FragmentedLength._map). Automatically migrate to FragmentedCount on containers larger than 1k objects (this threshold may evolve).
-
Vincent Pelletier authored
Provide a way to generate ids on specific documents when they make sense. Reduces the risk of conflicts that portal_ids's in-ZODB id generator creates. Reset generator state on any copy (both copy/pase and clone), but not on move (cut/paste and setId).
-
Vincent Pelletier authored
These two classes inherits from two classes implementing CopyContainer API: - ours, via low-priority bases - another one, via higher-priority bases, because these classes need some non-ERP5 methods to override ERP5 methods. So after defining these classes, resolve inheritance priority by binding all CopyContainer methods provided by their ERP5 base class, overriding the ones provided by their non-ERP5 bases while still allowing their ERP5 base class to override the CopyContainer method.
-
Vincent Pelletier authored
Allows for safe migration to another id generator, by preventing silent success of any piece of code still using the former generator, allowing its detection and resolution before duplicate ids are emitted. As a consequence, also allows on-demand and partial migration of id generators.
-
- 20 May, 2019 1 commit
-
-
Romain Courteaud authored
-
- 16 May, 2019 1 commit
-
-
Rafael Monnerat authored
-