erp5:b1321eb4f8bb85438b107d4fa154b646ddfd18b0 commitshttps://lab.nexedi.com/nexedi/erp5/-/commits/b1321eb4f8bb85438b107d4fa154b646ddfd18b02019-10-31T09:07:19+01:00https://lab.nexedi.com/nexedi/erp5/-/commit/b1321eb4f8bb85438b107d4fa154b646ddfd18b0test_result: support templated URL for test results2019-10-31T09:07:19+01:00Jérome Perrinjerome@nexedi.com
The previous way of using portal.ERP5Site_absoluteUrl() +
test_result.getRelativeUrl() could not work with ERP5JS URLs.
To be compatible with this and also maybe erp5_web-style URLs if we want
to link to public tests results, we should have more flexibility in how
we generate URLs.
Introduce a "test result url template" property on gitlab connector, see
unit test for a renderjs ui compatible usage.https://lab.nexedi.com/nexedi/erp5/-/commit/49e78bec65ee7487a75cfdaa4979f7611c1a4801test_result: Support repositories or user ids with .2019-10-31T09:05:17+01:00Jérome Perrinjerome@nexedi.com
Because gitlab way of passing project ID as user/project URL-encoded
does not support dots (it would needs to be encoded as %2E) and that
requests rewrites %2F from URL to . (which is probably correct, that's
the RFC), we cannot use encoded paths for when they contain a dot.
To workaround this, when user or repo as a dot, make another API call to
get the numerical project ID and use that instead.
We only do that for projects with a dot because that's an extra request
we'd like to avoid.
/reviewed-on <a href="https://lab.nexedi.com/nexedi/erp5/merge_requests/962" data-original="https://lab.nexedi.com/nexedi/erp5/merge_requests/962" data-link="false" data-link-reference="true" data-project="1" data-merge-request="3332" data-project-path="nexedi/erp5" data-iid="962" data-mr-title="test_result: Support repositories or user ids with ." data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">nexedi/erp5!962</a>https://lab.nexedi.com/nexedi/erp5/-/commit/0024e8ac7a73ce6d0abfba1a0f6f3573bd4360d1fixes for TestResult_getTestSuiteData2019-10-31T09:01:26+01:00Jérome Perrinjerome@nexedi.com
While deploying <a href="https://lab.nexedi.com/nexedi/erp5/merge_requests/924" data-original="https://lab.nexedi.com/nexedi/erp5/merge_requests/924" data-link="false" data-link-reference="true" data-project="1" data-merge-request="3218" data-project-path="nexedi/erp5" data-iid="924" data-mr-title="Connector to annotate commits with test results status on gitlab" data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">nexedi/erp5!924</a> we found out that this script was not working in these cases:
* when buildout section id contains `-repository` there's a convention that this is stripped and does not appear in test result reference ( implemented [here](<a href="https://lab.nexedi.com/nexedi/erp5/blob/31804f683fd36322fb38aeb9654bee70cebe4fdb/erp5/util/testnode/NodeTestSuite.py#L95">https://lab.nexedi.com/nexedi/erp5/blob/31804f683fd36322fb38aeb9654bee70cebe4fdb/erp5/util/testnode/NodeTestSuite.py#L95</a>) )
* when buildout section id contains `-` this script crash
* when there's no buildout section id and there's no fix for that, because buildout section id is a required property. If we encounter this failure, we fix the data by putting a buildout section id on test suite repository.
/reviewed-on <a href="https://lab.nexedi.com/nexedi/erp5/merge_requests/961" data-original="https://lab.nexedi.com/nexedi/erp5/merge_requests/961" data-link="false" data-link-reference="true" data-project="1" data-merge-request="3331" data-project-path="nexedi/erp5" data-iid="961" data-mr-title="fixes for TestResult_getTestSuiteData" data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">nexedi/erp5!961</a>https://lab.nexedi.com/nexedi/erp5/-/commit/954f86ccbe1fcbeae6cbadfa8a85f7ab4ff678a2Add missing import of xmlrpclib.Fault following moving of code in fb9a0d60.2019-10-31T14:26:18+09:00Arnaud Fontainearnaud.fontaine@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/399c411406121f93cc8b710d82f8e8940d72c976erp5_administration: Add profiling scripts.2019-10-31T11:45:45+09:00Vincent Pelletiervincent@nexedi.com
Guarded with Manager role, as they allow exporting entire source files & scripts.https://lab.nexedi.com/nexedi/erp5/-/commit/16b7eb0d53330f7de57441186689604e482c50f4ZODB Components: Make 'Origin' field read-only as this is set during migratio...2019-10-31T05:46:44+09:00Arnaud Fontainearnaud.fontaine@nexedi.comZODB Components: Make 'Origin' field read-only as this is set during migration and should not be modified later on (<a href="/gabriel/erp5/-/commit/cf632afbaf9cd57087a47f76778c2810f5a6866b" data-original="cf632afb" data-link="false" data-link-reference="false" data-project="145" data-commit="cf632afbaf9cd57087a47f76778c2810f5a6866b" data-reference-type="commit" data-container="body" data-placement="top" data-html="true" title="ZODB Components: Add 'Origin' (source_reference) field showing from which FS..." class="gfm gfm-commit has-tooltip">cf632afb</a>).
https://lab.nexedi.com/nexedi/erp5/-/commit/21c8f6c5fe2d5460d507d010f98bfef4bb191ec1ZODB Components: Revert "Also, allow developer to call validate action from...2019-10-31T05:26:36+09:00Arnaud Fontainearnaud.fontaine@nexedi.comZODB Components: Revert "Also, allow developer to call validate action from 'modified' state to handle import use case" (part of <a href="/gabriel/erp5/-/commit/1cb2dc4c71dd77df10191cbc76886835462c19f9" data-original="1cb2dc4c" data-link="false" data-link-reference="false" data-project="145" data-commit="1cb2dc4c71dd77df10191cbc76886835462c19f9" data-reference-type="commit" data-container="body" data-placement="top" data-html="true" title="ZODB Components: Enable checking of imports with pylint." class="gfm gfm-commit has-tooltip">1cb2dc4c</a>).
This was badly implemented as it didn't handle the following use cases:
* {draft,invalidated} => validated.
* clearRecordedPropertyDict() was not called on re-validate.
For now, re-validate through modifying {text_content,reference,version}.
https://lab.nexedi.com/nexedi/erp5/-/commit/bf625f3a2457782b4e4ab46376d90dd75a7dfd52erp5.util: Release erp5.util (0.4.65)2019-10-30T12:47:57+02:00Ivan Tyagovivan@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/d9d117319ea3c31651b84f0803d594f26af487cdofficejs: enable title on plotly graphs2019-10-30T10:53:06+01:00Sebastien Robinseb@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/969c3e23462d27383c9b36606d358594e7ed4695ZODB Components: checkPythonSourceCode(): AST object of temp file was never G...2019-10-30T07:23:02+09:00Arnaud Fontainearnaud.fontaine@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/1cb2dc4c71dd77df10191cbc76886835462c19f9ZODB Components: Enable checking of imports with pylint.2019-10-30T07:23:01+09:00Arnaud Fontainearnaud.fontaine@nexedi.com
Until now it was disabled which means that if Component A imports Component B
and the latter is not in {validated,modified} state, Component A could be
validated without raising any error and failed at execution time.
As this relies on Pylint transform/hook and avoiding monkey patch as much
as possible, make Products.ERP5Type.patches.pylint available for Python3 (not
actually tested with ERP5 but no AttributeError nor ImportError with Python3
with this code).
Also, allow developer to call validate action from 'modified' state to handle
import use case:
1. Edit A which raises an error stating that B.
2. Fix B and validate it.
3. Validate again A without requiring a modification of {reference,version,text_content}.https://lab.nexedi.com/nexedi/erp5/-/commit/88a035328d2733884bf7ede9a40ead56cdf47d75ZODB Components: Source code was checked even when setting...2019-10-30T07:23:01+09:00Arnaud Fontainearnaud.fontaine@nexedi.comZODB Components: Source code was checked even when setting text_content_{error,warning}_message_list properties.
So only check source code and validate when _set{TextContent,Reference,Version}
are called and remove wildcards.
https://lab.nexedi.com/nexedi/erp5/-/commit/e29d0d919fa7653d00e64037786b35bf7b345eb0fixup! Allow scalability runner to test existing instance and with existing f...2019-10-25T09:31:58+02:00Jérome Perrinjerome@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/85968de171bd014edefa062506c8aac939b92c19dms_conversion_catalog: use proper activity queue2019-10-25T09:29:46+02:00Jérome Perrinjerome@nexedi.com
Because this is using SQLDict, when we had multiple conversion
activities for the same path with different conversion parameters, only
one was executed.
We don't want this here, as the recent failures on
testDmsWithPreConversion.TestDocumentWithPreConversion are showing, when
the same image is referenced with different conversion parameters we
want to pre-convert for all conversion parameters.
Use SQLQueue, which allows calling the same method more than once.
/reviewed-on <a href="https://lab.nexedi.com/nexedi/erp5/merge_requests/971" data-original="https://lab.nexedi.com/nexedi/erp5/merge_requests/971" data-link="false" data-link-reference="true" data-project="1" data-merge-request="3364" data-project-path="nexedi/erp5" data-iid="971" data-mr-title="dms_conversion_catalog: use proper activity queue" data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">nexedi/erp5!971</a>https://lab.nexedi.com/nexedi/erp5/-/commit/a10b6f0973586c53547e8434fb3ef09dedf44796testXHTML: retry connections to validator.erp5.net2019-10-25T04:14:36+02:00Jérome Perrinjerome@nexedi.com
Sometimes validator.erp5.net replies with error code 502 and this cause
ERP5 tests to fail. While this is a bit like ignoring problems, problems
with validator.erp5.net should not impact ERP5 tests results.
/reviewed-on <a href="https://lab.nexedi.com/nexedi/erp5/merge_requests/968" data-original="https://lab.nexedi.com/nexedi/erp5/merge_requests/968" data-link="false" data-link-reference="true" data-project="1" data-merge-request="3344" data-project-path="nexedi/erp5" data-iid="968" data-mr-title="testXHTML: retry connections to validator.erp5.net" data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">nexedi/erp5!968</a>https://lab.nexedi.com/nexedi/erp5/-/commit/be2399e86d6ef3b090aa78a98aa04f0c1e566987[erp5_officejs_afs_directory] Moved github repository2019-10-24T14:30:23+02:00Sven Francksven.franck@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/cafbebe6dce73e48d908c0336f896b92a2ce46a4fixup! erp5_ci_slideshow: support unobtainable creation dates (= None)2019-10-24T12:46:24+02:00Bryton Lacquementbryton.lacquement@nexedi.com
This is a fixup for commit <a href="/lukas.niegsch/erp5/-/commit/1519d81a4b94828a7d2748aebd00e0782e405804" data-original="1519d81a4b94828a7d2748aebd00e0782e405804" data-link="false" data-link-reference="false" data-project="1513" data-commit="1519d81a4b94828a7d2748aebd00e0782e405804" data-reference-type="commit" data-container="body" data-placement="top" data-html="true" title="erp5_ci_slideshow: support unobtainable creation dates (= None)" class="gfm gfm-commit has-tooltip">1519d81a</a>.
There was a typo.https://lab.nexedi.com/nexedi/erp5/-/commit/3076a47b4370f9e9a050f493099677fa1cdde734Always check only validated Test Suites.2019-10-24T13:12:02+03:00Ivan Tyagovivan@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/c09f11f51113f5788b044f7815d83505bc9a4fa4web_renderjs_ui_test: fix flaky testFormViewHistoricalRevisionLink2019-10-24T07:01:23+02:00Jérome Perrinjerome@nexedi.com
This test was using a blind `pause` instead of an explicit waitFor*, so
it was failing when machine was not fast enough.
Also refactor the test a bit to simplify the assertion by first
selecting the iframe we are going to inspect and make the test
compatible with both chrome and firefox - they behave differently when
interpreting new lines in selenium test tables.
/reviewed-on <a href="https://lab.nexedi.com/nexedi/erp5/merge_requests/967" data-original="https://lab.nexedi.com/nexedi/erp5/merge_requests/967" data-link="false" data-link-reference="true" data-project="1" data-merge-request="3343" data-project-path="nexedi/erp5" data-iid="967" data-mr-title="web_renderjs_ui_test: fix flaky testFormViewHistoricalRevisionLink" data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">!967</a>https://lab.nexedi.com/nexedi/erp5/-/commit/d02fa029c703a21d069d4789fdd7d24619c16e19test_result: sort test results lines2019-10-24T07:01:15+02:00Jérome Perrinjerome@nexedi.com
We want to have FAILED test results before PASSED, to easily see the
failed tests.
Apparently this was a local change on nexedi ERP5 for some time but the
change got lost in last update. Let's commit it to make this
permanent.
/reviewed-on <a href="https://lab.nexedi.com/nexedi/erp5/merge_requests/960" data-original="https://lab.nexedi.com/nexedi/erp5/merge_requests/960" data-link="false" data-link-reference="true" data-project="1" data-merge-request="3330" data-project-path="nexedi/erp5" data-iid="960" data-mr-title="test_result: sort test results lines" data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">nexedi/erp5!960</a>https://lab.nexedi.com/nexedi/erp5/-/commit/23a8c97209df7d4f84e8f87715304ff3d542b329testTaskDistribution: fix random failures with test_04c_startTestSuiteOrderWi...2019-10-24T07:01:12+02:00Jérome Perrinjerome@nexedi.com
test_04c_startTestSuiteOrderWithManyTestNodes is using same test results
names ("test suite 1", "test suite 2", ...) as some previous tests (
test_04b_startTestSuiteOrder ) so it's safer to start the test by
cancelling all previous test runs and renaming them.
/reviewed-on <a href="https://lab.nexedi.com/nexedi/erp5/merge_requests/959" data-original="https://lab.nexedi.com/nexedi/erp5/merge_requests/959" data-link="false" data-link-reference="true" data-project="1" data-merge-request="3328" data-project-path="nexedi/erp5" data-iid="959" data-mr-title="testTaskDistribution: fix random failures with test_04c_startTestSuiteOrderWithManyTestNodes" data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">nexedi/erp5!959</a>https://lab.nexedi.com/nexedi/erp5/-/commit/1519d81a4b94828a7d2748aebd00e0782e405804erp5_ci_slideshow: support unobtainable creation dates (= None)2019-10-23T17:14:48+02:00Bryton Lacquementbryton.lacquement@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/83af33d7b09aba79d2c52bed27a57dd443c895cberp5_corporate_identity: support unobtainable creation dates (= None)2019-10-23T17:14:48+02:00Bryton Lacquementbryton.lacquement@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/68a48fa22245d1be81260dde8bc71dff464bbe03[erp5_officejs_afs_directory] Update appcache2019-10-23T15:23:45+02:00Romain Courteaudromain@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/c2be90a28ea6c2954e96232dcdffd7fc925c9761[erp5_officejs_afs_directory] Add financial data2019-10-23T14:49:52+02:00Sven Francksven.franck@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/1418705cadb450869fe2c036aa5aa60a573cf4aaAllow scalability runner to test existing instance and with existing frontend.2019-10-23T13:19:23+03:00Ivan Tyagovivan@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/bae290a4afb13b01b85e0a44d51f53e0a809ab60erp5_trade_ja: New bt5 for wkhtmltopdf printout for 'Sale Invoice' with...2019-10-23T10:46:51+09:00Arnaud Fontainearnaud.fontaine@nexedi.comerp5_trade_ja: New bt5 for wkhtmltopdf printout for 'Sale Invoice' with >2019/10/01 new Japanese VAT ratio support.
Based on the following ODT Templates (erp5_invoicing):
* Invoice_viewAsODT.oot.
* Invoice_viewAsODTStyles_l10n_ja.oot.
wkhtmltopdf template is based on work from slapos_accounting bt5:
* SaleInvoiceTransaction_viewSlapOSPrintout.zpt.
* SaleInvoiceTransaction_getSlapOSPrintout.css.zpt.
https://lab.nexedi.com/nexedi/erp5/-/commit/fb9a0d60c86108de0f903c79925e58e4da451e66Introduce HTML to PDF Transform through Conversion Server (currently using wk...2019-10-23T10:46:44+09:00Arnaud Fontainearnaud.fontaine@nexedi.com
Conversion Server code is no longer bound to OOo, as emphasized by:
* Renaming of Preference Properties ooodoc_server* to document_conversion_server*.
* Conversion Server exceptions are already defined in Document.py.
* Conversion Server also handles video/audio/... conversions.
Thus, refactor the code to connect to Conversion Server by moving it from
Products.ERP5OOo.Document to Products.ERP5.Document.Document (while keeping
backward compatibility):
* Renamed:
+ OOoServerProxy => DocumentConversionServerProxy
+ OOO_SERVER_PROXY_TIMEOUT => DOCUMENT_CONVERSION_SERVER_PROXY_TIMEOUT
+ OOO_SERVER_RETRY => DOCUMENT_CONVERSION_SERVER_RETRY
* Moved:
+ enc
+ dec
+ global_server_proxy_uri_failure_time
Also, Introduced erp5.module.TransformLib (in erp5_core as currently all Transforms
are there even though it should probably not be so) to define DocumentConversionServerTransform
and which will hold libtransforms content when this will be moved to ZODB Components.
Note: Ideally, OOOdCommandTransform should inherit from DocumentConversionServerTransform
but wkhtmltopdf Handler on Cloudooo side is a hack only implemented in Manager.convertFile()
whereas OOOdCommandTransform still uses legacy Manager.run_generate(), so leave it as it is
to avoid breaking things (this will be addressed in a separate MR).
/reviewed-on <a href="https://lab.nexedi.com/nexedi/erp5/merge_requests/955" data-original="https://lab.nexedi.com/nexedi/erp5/merge_requests/955" data-link="false" data-link-reference="true" data-project="1" data-merge-request="3317" data-project-path="nexedi/erp5" data-iid="955" data-mr-title="WIP: Refactoring of Conversion Server for wkhtmltopdf support" data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">nexedi/erp5!955</a>https://lab.nexedi.com/nexedi/erp5/-/commit/4c25f63808fc1f1fd3fda81cda0cde61ab82c548erp5_officejs: refactoring to speed up page loading2019-10-18T16:06:40+02:00Roque Porchettoroque.porchetto@nexedi.com
/reviewed-on <a href="https://lab.nexedi.com/nexedi/erp5/merge_requests/965" data-original="https://lab.nexedi.com/nexedi/erp5/merge_requests/965" data-link="false" data-link-reference="true" data-project="1" data-merge-request="3341" data-project-path="nexedi/erp5" data-iid="965" data-mr-title="erp5_officejs: refactoring to speed up page loading" data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">nexedi/erp5!965</a>https://lab.nexedi.com/nexedi/erp5/-/commit/cf632afbaf9cd57087a47f76778c2810f5a6866bZODB Components: Add 'Origin' (source_reference) field showing from which FS...2019-10-17T18:38:35+09:00Arnaud Fontainearnaud.fontaine@nexedi.comZODB Components: Add 'Origin' (source_reference) field showing from which FS module it was imported.
https://lab.nexedi.com/nexedi/erp5/-/commit/799da311fc159d3dda314828d408889a9e6c1454ZODB Components: Do not validate nor check {consistency,source code} after im...2019-10-17T18:37:55+09:00Arnaud Fontainearnaud.fontaine@nexedi.com
* pylint may return a false positive error which have to be disabled and
failing to import it because of that requires to edit on the FS and try
again so it is not practical for a whole Product. Instead it is easier
to import it and not validate
* Validation was done only for 'Test Component' and 'Extension Component',
but all imported Components had their consistency and source code checked
and this is not consistent to not validate but do these checks.
* importFromFilesystem() was checking consistency and source code, and this
was done again when validating.
So leave the imported ZODB Components as draft and let the developer fixes
issues upon validation before committing.https://lab.nexedi.com/nexedi/erp5/-/commit/f20d2689b876928bf5206dea244d014f934155cctest_result: tolerate buildout section ids with -2019-10-17T08:59:11+02:00Jérome Perrinjerome@nexedi.com
parsing of reference in TestResult_getTestSuiteData did not handle
properly buildout section ids with -, this was causing
File "Script (Python)", line 30, in TestResult_getTestSuiteData
buildout_section_id_and_commits_count, revision = repository_string.split('-')
ValueError: too many values to unpackhttps://lab.nexedi.com/nexedi/erp5/-/commit/e0679d32847b732e87c4c44583a026189107ef51test_result: support test suite repositories named .*-repository2019-10-17T08:59:10+02:00Jérome Perrinjerome@nexedi.com
Their reference will not have the -repository prefix, so
TestResult_getTestSuiteData should do similar processing to find the
corresponding test suite repositories from reference.https://lab.nexedi.com/nexedi/erp5/-/commit/f675c0fbbdcd9d295c915145d013b4f140c6f850ZODB Components: List of migratable 'Module Components' in Products.XXX.*...2019-10-16T20:22:01+09:00Arnaud Fontainearnaud.fontaine@nexedi.comZODB Components: List of migratable 'Module Components' in Products.XXX.* should include any kind of objects and not only modules.
This fixes Products.ERP5VCS.Git module not being displayed because
Products.ERP5VCS.__init__ only imports one of its class and not the whole
module (and the module was not imported anywhere else too) so it was not in
Products.ERP5VCS.__dict__.
https://lab.nexedi.com/nexedi/erp5/-/commit/bd14f3a6cf2f95c1ea235305b8709d43dee0b655PortalTransforms: subprocesstransform: Make sure that the NamedTemporaryFile ...2019-10-15T17:18:47+09:00Arnaud Fontainearnaud.fontaine@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/225fc8197682f51170ef51d12fe0df3275f664f4PortalTransforms: Fix typo in useStdin 'if' condition in subprocesstransform.2019-10-15T17:18:46+09:00Arnaud Fontainearnaud.fontaine@nexedi.com
useStdin=False => temporary file was not created.
useStdin=True => temporary file was created.https://lab.nexedi.com/nexedi/erp5/-/commit/e1d1aa7be69a265dd3a93469a52af8bbee4bb4c4When multiple repositories exists and two of them contain scalability_test...2019-10-14T09:57:56+03:00Ivan Tyagovivan@nexedi.comWhen multiple repositories exists and two of them contain scalability_test package be wiser and really check if neeeded Test Suite class exists before trying to load it.
https://lab.nexedi.com/nexedi/erp5/-/commit/659ea62d602f4eae419a1589846b7b0900e8ad62erp5_officejs: fix in storage sync when user not logged in2019-10-11T13:36:49+00:00Roque Porchettoroque.porchetto@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/b2a607f005bb94b13b510d60e9aad662ce4be1e5erp5_xhtml_style: Add Base_renderMessage for compatibility with erp5_hal_json...2019-10-11T17:17:20+09:00Yusei Taharayusei@nexedi.comhttps://lab.nexedi.com/nexedi/erp5/-/commit/12e464cf2fe7465ec9488c6cbfa452e7b9c03cd1[erp5_core/erp5_web_rjs_ui] jIO 3.41.12019-10-10T14:09:43+02:00Klaus Woelfelklaus@nexedi.com