- 20 Nov, 2023 1 commit
-
-
Jérome Perrin authored
Instead of using UnrestrictedMethod for the whole duration of discoverMetadata, revert to the original user permissions for the last part where we merge revision or change state, because we want this to fail when user is not allowed. This adjusts also the high level Base_contribute script to catch these errors and report them nicely to the user and while doing this some other problems were discovered and are also fixed. Some problems in ContributionTool.newContent were fixed, this was already trying to detect that a document is going to be merged and synchronously checked that this existing document can be replaced, to display an error to the user, but this part has two issues: - first it was using getMatchedFilenamePatternDict to find the document coordinates, but this method only supports preferred_document_filename_regular_expression capturing reference, but not the combination of node_reference and local_reference, so this was changed to use getPropertyDictFromFilename, which is what is actually used to compute the reference. - The second problem here was that this check was done with a standard restricted catalog search, but later mergeRevision uses an unrestricted search, so this was changed to use unrestricted catalog search to match mergeRevision The testing also revealed that the PDFDocument._setFile hack to clear the _content_information was only for _setFile, but not for _setData, so this was extended to _setData as well, so that a case where the PDF content is updated by setData also update content information.
-
- 15 Nov, 2023 1 commit
-
-
Jérome Perrin authored
-
- 13 Nov, 2023 2 commits
-
-
Jérome Perrin authored
Introduce another assertImageMatchSnapshot which stops on failure, following the behavior of other selenium assertions. Also output more details when the dimensions are different.
-
Jérome Perrin authored
See merge request nexedi/erp5!1838
-
- 10 Nov, 2023 2 commits
-
-
Roque authored
See merge request nexedi/erp5!1833
-
Roque authored
-
- 08 Nov, 2023 8 commits
-
-
Titouan Soulard authored
-
Jérome Perrin authored
This would catch potential problems only occuring when the location has been granted.
-
Jérome Perrin authored
Without this field, sync does not work when location was granted.
-
Jérome Perrin authored
Fixes error in console: Refused to load manifest from <URL> because it violates the following Content Security Policy directive: "default-src 'none'". Note that 'manifest-src' was not explicitly set, so 'default-src' is used as a fallback.
-
Jérome Perrin authored
-
Jérome Perrin authored
Use the new KeyboardEvent instead of deprecated KeyEvent and initKeyEvent, see https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/initKeyEvent#specifications and nexedi/slapos!800 (comment 115488) In old firefox dispatching a fake keydown event with keycode 13 (enter) on an input field was enough to submit the corresponding form, like in a real browser and like in webdriver, but in modern browsers this no longer submits the form. Adjust the logic to submit the form to mimic real browser behavior. Co-authored-by: Romain Courteaud <romain@nexedi.com>
-
Jérome Perrin authored
When I run this test on chrome, the div has two classes, spreadsheet and jexcel_tab, this fixes a failure that the element is not found in erp5_officejs_ui_test:testFunctionalOfficeJSWebTable
-
Jérome Perrin authored
We were setting the value to a string with seconds like `2010-01-01T00:00:00` and all the tests were testing that the value of the input element was exactly the same (ie. with seconds), but [the spec] mentions that value is: - A valid date string representing the date. - A U+0054 LATIN CAPITAL LETTER T character (T). - A valid time string representing the time, expressed as the shortest possible string for the given time (e.g. omitting the seconds component entirely if the given time is zero seconds past the minute). The test works fine when running on firefox 68 (the one from testnodes), because this version does not implements datetime-local and such field behave like text inputs, but when running with a modern browser implementing the spec, the test fails because the value from the fields `.value` does not have seconds. While the change to rjs_gadget_erp5_datetimefield_js is not strictly necessary, because when setting the value on a datetime-local the value will be normalized and having 00 seconds or omitting the seconds is same, this is done to keep the test passing on old browsers without support for datetime-local fields. [the spec]: https://html.spec.whatwg.org/multipage/common-microsyntaxes.html#concept-datetime-local
-
- 07 Nov, 2023 3 commits
-
-
Jérome Perrin authored
so that we can see them on testnode.
-
Jérome Perrin authored
Because they depend on the browser version, the window size, the available fonts and maybe other things, snapshot tests basically only work when running on testnode and fail when we run the tests from our browsers locally. With this option, the difference of snapshot are not considered a failure. Also adjust snapshots, because this adds a checkbox in the upper frame, the viewport of the test frame is now a little bit taller.
-
Jérome Perrin authored
nexedi/erp5@3ea8d425 (comment 193284) See merge request nexedi/erp5!1837
-
- 02 Nov, 2023 2 commits
-
-
Jérome Perrin authored
-
Jérome Perrin authored
This fixes a regression from 3ea8d425 (core: don't show list of items in initial business template install, 2023-10-10), this dialog was also used for business template update and it was never showing the list of item.
-
- 27 Oct, 2023 4 commits
-
-
Jérome Perrin authored
This code seems to have been pushed accidentally as part of 6e5e8e8c (fixup! test: follow recent ImageMagick spec., 2023-10-11)
-
Jérome Perrin authored
This reverts commit 14831fae. As discussed in nexedi/erp5@14831fae (comment 188678) this change breaks test and it seems more natural to implement this with listbox's sort parameter. This change will be pushed again, probably as part of nexedi/erp5!1305
-
Jérome Perrin authored
This is what browsers do when user selects a file.
-
Jérome Perrin authored
testnode uses ProcessManager.killall to terminate all processes from a path. To determine if a process is from a path, it looks at the command line. This does not work for processes using setproctitle to change their command line. We can see in ps: $ ps -edf | grep nginx slapuse+ 115059 45574 0 16:14 ? 00:00:00 nginx: master process /srv/slapgrid/slappart46/t/cvt/i/0/tmp/shared/nginx/6d79cb0e7d81dce1be97eec8a5712f08/sbin/nginx -c /srv/slapgrid/slappart46/t/cvt/i/0/tmp/inst/T-0/etc/nginx-master-introspection.conf slapuse+ 115090 115059 0 16:14 ? 00:00:00 nginx: worker process or by looking at cmdline, which is what psutil.Process.cmdline is using: $ cat /proc/115090/cmdline nginx: worker process and that's why sometimes when cancelling a software release test while it is running tests from a software using nginx, some processes are leaked, they keep using the port and next test running on this testnode fail. In that case, killall is called with /srv/slapgrid/slappart46/t/cvt , we can not find such process with cmdline, but we can extend this heuristic to use the current working directory: $ ls -al /proc/115090/cwd lrwxrwxrwx 1 slapuser46 slapuser46 0 Oct 19 16:16 /proc/115090/cwd -> /srv/slapgrid/slappart46/t/cvt/i/0/tmp/inst/T-0 This also applies an optimization of only considering processes of the current unix user.
-
- 20 Oct, 2023 3 commits
-
-
Vincent Pelletier authored
Products.ERP5Types.patches.CMFCoreSkinnable: Only add portal_callables to skin selection when tool exists Avoids a noisy log: WARNING Products.ERP5Type.patches.CMFCoreSkinnable Skin folder portal_callables is in selection list but does not exist.
-
Vincent Pelletier authored
As already documented in this code, unrestrictedTraverse provides a flat dict as "request" argument. PAS plugins cannot work with such fake request, so such _extractUserIds call will not succeed in authenticating the user, and instead produces (suppressed) exceptions within PAS. As a result, neither codepaths can be followed: - PAS cannot find any user, hence "if len(user_list) > 0:" is false - the "else" codepath starts with "request._auth", which obviously raises when request is a dict So, reorder the code so that the nature of the request is checked before either codepath is entered, skipping the bulk of this code and avoiding calling into PAS.
-
Vincent Pelletier authored
-
- 19 Oct, 2023 2 commits
-
-
Levin Zimmermann authored
The default soft limit of open file descriptors is usually set to 1024 in order to avoid breaking old software which still uses select. In many projects we may need a higher limit: particularly in Wendelin based projects we easily reach this limit. Before this patch it was therefore necessary to either patch ERP5 in the project specific SR or to manually increase the limit of the zope processes (or the parent supervisor) with a tool like prlimit [1]. With this patch it becomes possible to increase the soft limit to the hard limit with a command line argument of the zopewsgi bin. This simplifies setting the soft limit for any Wendelin project. [1] https://man7.org/linux/man-pages/man1/prlimit.1.html /reviewed-by @vpelletier, @jerome /reviewed-on nexedi/erp5!1827
-
Jérome Perrin authored
test_suite and tests_require are for the deprecated `setup.py test` command that we no longer use.
-
- 18 Oct, 2023 3 commits
-
-
Jérome Perrin authored
During initial install in most cases we just want to install everything, showing the listbox to choose install options is not necessary. The problem is that this listbox is really big when installing multiple business templates. This introduces a "detailed install" checkbox, that is unchecked by default, to make it possible to show the list to choose from anyway.
-
Jérome Perrin authored
so that we can view in inline with firefox for Zelenium tests This was applied manually on http://www.erp5.org/dists/snapshot/test_bt5
-
Léo-Paul Géneau authored
-
- 17 Oct, 2023 4 commits
-
-
Roque authored
See merge request nexedi/erp5!1830
-
Roque authored
-
Roque authored
See merge request nexedi/erp5!1826
-
Roque authored
- randomize flag scores and weights - limit drone message size - new rule: extra score point for drones that returned to base - refactor x-y-z / lat-lon-alt method/properies to be consistent - update api doc
-
- 13 Oct, 2023 2 commits
-
-
Jérome Perrin authored
A typical problem which prevents grouping is that the line is used in an internal invoice and while all the conditions for grouping seems OK for one side, they are not OK for the other side, because the accounts are different from the mirror side. By showing the mirror account it should be a bit easier for users to figure out what is wrong.
-
Jérome Perrin authored
-
- 11 Oct, 2023 3 commits
-
-
Jérome Perrin authored
FCK Editor is old name https://ckeditor.com/old/forums/CKEditor-3.x/Should-FCKeditor-change-its-name
-
Kazuhiko Shiozaki authored
-
Jérome Perrin authored
This linter is too old and no longer relevant
-