* fix: Sanitize filename on download
* fix: filename encoding in the Content-Disposition header
This improves the handling of the filename* parameter in the Content-Disposition header. Now, the filename* parameter is only used when it differs from the fallback filename
* tests: Add test for the filename* parameter in Content-Disposition
This implements rendering mime-types with content-type 'text/markdown'
and 'text/x-markdown' into HTML in the preview and show views (if not
"dispositioned" as "attachment"), but not in the get view for attached
files (the one opening attachments in an external window.)
* Revert "Get rid of phpstan/phpstan-strict-rules"
This reverts commit ff59ade31a.
* drop phpstan baseline
* fix foreach phpstan issue
* adjust for rebase
* fix method call case
* ignore one phpstan error even after isset
* Install requited locale in container image
One of the IMAP tests curiuosly ran successfully on Github-runners, but
failed locally. This is the pre-condition for a fix.
* Explicitly require mandatory locale for test
This test works only if executed with LC_COLLATE=en_US
* Schedule to rebuild testrunner image each week
* vcard: Fix whitespace handling in line cont's
Previously, multiple whitespace characters at the start of a
continuation line would all be dropped, instead of only the first one.
Also,
- restrict line continuation characters to SPACE and TAB.
Note that, like before, this identifies the CR (`\r`) character with the
empty string, and thereby notably does not require a CRLF (`\r\n`)
sequence (which is mandated by RFCs 2426, 2425) for line termination
(i.e., `\n` suffices).
Fixes: Bug 1 of issue #9593.
* vcard: Add test for #9593/1
* Fix coding style
* use fixed "roundcube/plugin-installer"
* Use composer autoloader for plugins testing
* cherrypick remaining from 9241 related with testing
* minor legacy autoload improvements
* Check plugins composer.json using CI
* Add "require-dev" and "config.allow-plugins" to plugins
* fix composer.json format - rm invalid email
* fix composer.json format - fix ext require
* fix composer.json format - fix plugin name
* tmp
* Revert "tmp"
* fix ext in ext install
* disable plugin in plugin install until Roundcube is fully autoloadable
* fix composer.json format - fix non-canonical license name
* Revert "Add "require-dev" and "config.allow-plugins" to plugins"
* no composer install for plugins needed
* Revert "fix ext in ext install"
* add standard "Test" suffix to phpunit files
* rm unneeded "suffix" in phpunit config
* simplify phpunit config
* fix default "xhtml" doctype in unit testing
* fix test_format_date test to not rely on other tests
* even more phpunit config simplify
* stricter/unify phpunit params for E2E tests
* run E2E tests on maximal php version too with lowest deps
* "repositories" in bundled plugins are useless as for root package only
* add/unify missing plugin test
* align_single_space_minimal for assign
* assign operators grouping is not supported by PHP CS Fixer
* binary_operator_spaces = single_space
* fix anonymous function on single line
* align comments manually