- 13 Jul, 2022 2 commits
-
-
Jérome Perrin authored
This is supposed to fix "Should not load state for ${oid of a skin} when the connection is closed" sometimes happening with live tests (especially when the test self.publish and the developer access the site while the test is suspended on a debugger breakpoint). The object accessed after the connection is closed was a skin (python script, sometimes page template or form) that was cached in SKINDATA. The mechanism to prune entries from the cache uses REQUEST.hold API which expects that REQUEST.close is called on request, but because requests were not closed at the end of the request, it happened that the cache was reused from another connection. This change to close the requests, like ERP5TypeTestCase is doing in tearDown (the actual close is done by Testing.ZopeTestCase.connections). By closing requests at the end of tests, we also have to change so that at the beginning of the test we initialize the request, by using the same setSite and setupCurrentSkin that are done in ERP5TypeTestCase.
-
Jérome Perrin authored
In xhtml_style, just after clicking next or previous page in the listbox buttons, the values selected in 'Section Category' and 'Section Category Strict' were not used, because they were used from request and not from as normal script parameters. This fixes only the xhtml_style version, ERP5JS has another problem that dialog fields values are reset when going to next page, so it would also need this problem to be fixed.
-
- 12 Jul, 2022 1 commit
-
-
Jérome Perrin authored
-
- 07 Jul, 2022 2 commits
-
-
Valentin Benozillo authored
-
Valentin Benozillo authored
-
- 01 Jul, 2022 1 commit
-
-
Romain Courteaud authored
-
- 27 Jun, 2022 1 commit
-
-
Xiaowu Zhang authored
-
- 24 Jun, 2022 1 commit
-
-
Xiaowu Zhang authored
-
- 23 Jun, 2022 2 commits
-
-
Xiaowu Zhang authored
-
Yusei Tahara authored
Use correct portal type.
-
- 22 Jun, 2022 3 commits
-
-
Kazuhiko Shiozaki authored
-
Kazuhiko Shiozaki authored
-
Kazuhiko Shiozaki authored
-
- 21 Jun, 2022 4 commits
-
-
Xiaowu Zhang authored
-
Xiaowu Zhang authored
-
Jérome Perrin authored
- Display the editor in ERP5 language, not browser language - Use PDF viewer for Drawing preview - Supports password protected PDFs - Others small changes See merge request nexedi/erp5!1639
-
Jérome Perrin authored
and several small fixes or changes to make this easier See merge request nexedi/erp5!1642
-
- 20 Jun, 2022 2 commits
-
-
Jérome Perrin authored
-
Jérome Perrin authored
This was a workaround for ChromeOS, but we realized it was not really good. Disable it for the same reasons as nexedi/slapos!1196 : - not everybody use ChromeOS - this breaks the ctrl+click shortcut to go to definition/follow link - it makes ERP5 monaco editor behaves differently from others monaco editor - ChromeOS users can use chrome://flags/#use-search-click-for-right-click
-
- 15 Jun, 2022 10 commits
-
-
Levin Zimmermann authored
When cleaning up Wendelin from restricted python pandas code (see https://lab.nexedi.com/levin.zimmermann/wendelin/tree/remove-redundant-pandas), it turned out that there was one line still missing in erp5. This missing line caused a failed test in wendelin functional tests: https://erp5js.nexedi.net/#/test_result_module/20220614-1B46817BD/6 Readding the line fixed the test.
-
Jérome Perrin authored
create_server returns either a BaseWSGIServer or a MultiSocketServer, but add_task only exists in BaseWSGIServer - and the implementation is simply [1]: def add_task(self, task): self.task_dispatcher.add_task(task) by using self.task_dispatcher.add_task directly, we are compatible with both cases. This is relevant when running timerserver with runUnitTest, where we create multiple sockets, one for http and one for web-dav. 1: https://github.com/Pylons/waitress/blob/v1.4.4/src/waitress/server.py#L290-L291
-
Jérome Perrin authored
The default TestCase.__call__ collects errors in a test result that was never retrieved, so errors were silently ignored. By using TestCase.debug , we let errors propagate. --- Minimal reproduction is running directly (ie. not with python -m unittest) a script like this: import unittest class T(unittest.TestCase): def method(self): print('ah ?') boom print('oh') t = T("method") t() # no error t.debug() # NameError: name 'boom' is not defined
-
Jérome Perrin authored
This helps debugging concurrency problems
-
Jérome Perrin authored
-
Jérome Perrin authored
This allows running tests using a timer server loop, that will invoke process timer on all subscribers. The need for this is to test a custom tool using timer server.
-
Jérome Perrin authored
It was enough for 2 nodes, but with 4 nodes I sometimes saw errors.
-
Jérome Perrin authored
This was a deprecated method that no longer exists since ZEO 4 https://github.com/zopefoundation/ZEO/commit/5423f110ddc1034ea0954495957894c60f6da78c
-
Jérome Perrin authored
_setUpDummyMailHost is also used to prevent accidentally sending "real" emails, so we also like to have it enabled for other nodes.
-
Roque authored
See merge request nexedi/erp5!1641
-
- 14 Jun, 2022 4 commits
-
-
Roque authored
-
Julien Muchembled authored
-
Jérome Perrin authored
This happens in project related task report dialog ( testProjectRelatedTaskReport from erp5_report_renderjs_ui_test:testFunctionalRJSReportLanguage )
-
Jérome Perrin authored
jslint complain about trailing commas
-
- 13 Jun, 2022 7 commits
-
-
Jérome Perrin authored
It does not make any sense to open PDF files from this gadget. Also remove duplicate line with documentProperties
-
Jérome Perrin authored
This is intended to store sensitive documents that users will only be able to view from ERP5, but not to easily print or download. To use this, some customization is needed. First, PDF needs to be saved with a password. Then, PDF_getContentPassword type based method needs to be customized to return the password. When using this, we use different password for each document, by deriving a password from a master key using document properties (such as document reference for example)
-
Jérome Perrin authored
A new option render option, "language" is passed to the gadget. It is a two letter code as used by Localier. Both CKEditor and pdf.js have support for translations and already include translations for many languages. Before this change, they were auto detecting the browser language and displaying in the browser language, ignoring the language that was selected in ERP5. With this change, they use the language selected in ERP5. For CKEditor, we need to set the language only it is actually supported, otherwise CKEditor crash. pdf.js does not this, but we had to call ourselves initialize - which is probably better, because it was a promise not awaited.
-
Jérome Perrin authored
I'm not sure what was the problem from this comment, but we render the gadget in an iframe so there's no need to change the DOM like this. Probably this was a problem in early versions when it was in the same page.
-
Jérome Perrin authored
also change the content type in so that they are exported as text in business template
-
Jérome Perrin authored
This is the URL to download, it currently does not support range requests, but it sets cache headers properly, unlike /getData which is an accessor
-
Jérome Perrin authored
For drawings the layout is usually important, but HTML preview do not preserve layout correctly. Use PDF instead, which keeps layout
-