Commit Graph

128 Commits

Author SHA1 Message Date
Aleksander Machniak
f0d63004d6 Localization update 2025-11-29 13:57:20 +01:00
Aleksander Machniak
1e55383302 Use symfony/polyfill-php85 for array_first() and array_last() 2025-10-03 14:27:05 +02:00
Michael Voříšek
026eb8c801
Enforce leading backslash for non-namespaced non-Roundcube uses (#9935) 2025-08-15 10:27:00 +02:00
Aleksander Machniak
55000023ce Localization: Remove non-working links to Transifex 2025-07-20 13:40:08 +02:00
Aleksander Machniak
d3f86b1235 Update localization from Transifex 2025-07-20 13:28:43 +02:00
Aleksander Machniak
247b5c37d1 Update localizations 2024-07-02 19:07:54 +02:00
Michael Voříšek
f4272804d6
Rename test files for PHPUnit 10+ (#9477) 2024-06-05 07:46:51 +02:00
Michael Voříšek
6a5f9ee7ce
Add override method attributes (#9272) 2024-06-02 15:57:56 +02:00
Michael Voříšek
1e360999b2
Use composer autoloader for bundled plugins testing (#9412)
* use fixed "roundcube/plugin-installer"

* Use composer autoloader for plugins testing

* cherrypick remaining from 9241 related with testing

* minor legacy autoload improvements
2024-04-11 18:28:46 +02:00
Michael Voříšek
52d8172b0f
Allow composer autoloading (to coexist) (#9407)
* Replace custom loader in favor of composer native

* Load plugins using composer

* finish debug_logger plugin

* finish markasjunk plugin

* finish password plugin

* finish enigma plugin

* finish managesieve plugin

* fix ExtensionInstaller run on first install

* fix phpstan "Implicit array creation" in plugin config files

* simplify composer.json

* keep non-composer autoloading relying on include_path set in plugins

* update minimal "roundcube/plugin-installer" version

* "plugins.roundcube.net" root-only package repo is not needed

* REVERT ALL

* fix phpstan "Implicit array creation" in plugin config files

* update minimal "roundcube/plugin-installer" version

* reland composer.json changes

* fix ExtensionInstaller run on first install

* Roundcube (non plugin) tests are fine to rely on composer autoload

* fix CS of master

* not needed until strict composer autoloading

* improve comment

* revert rcmail_oauth change - fixed in plugin installer

* require fixed plugin installer
2024-04-10 12:27:43 +02:00
Michael Voříšek
b5a3fd646b
Fix "Implicit array creation" in plugin config files (#9406)
* fix phpstan "Implicit array creation" in plugin config files
* update minimal "roundcube/plugin-installer" version
2024-04-07 12:00:03 +02:00
Michael Voříšek
736795326c
Fix plugins composer.json format (#9405)
* 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
2024-04-05 17:55:46 +02:00
Aleksander Machniak
49a40ea126 Code improvements 2024-03-23 13:48:51 +01:00
Michael Voříšek
332c165d28
Fix some basic JS CS (#9328)
* fix "nonblock-statement-body-position" (fixed already)

* fix "comma-dangle"

* fix "no-regex-spaces"

* fix "new-parens"

* fix "object-curly-newline"

* fix "object-property-newline"

* fix "spaced-comment" semimanually

* fix "no-constant-condition" manually

* fix "unicorn/no-hex-escape"

* fix "unicorn/escape-case"

* fix "quote-props"

* fix "no-whitespace-before-property" - fix bug/typo

* fix "unicorn/empty-brace-spaces"

* fix "keyword-spacing"

* fix "dot-notation"

* fix "no-return-assign" manually

* fix "padding-line-between-statements"

* fix "key-spacing"

* fix "no-else-return" semimanually

* fix some "no-undef"

* fix case cs

* Revert "fix "padding-line-between-statements""

* improve switch/case format I.

* improve switch/case format II.

regex: (^ *(break|return).*)\n *(\n)

* fix safe "eqeqeq"

* fix "radix"

* fix v3.49.0 CS (static providers)

* fix "string_implicit_backslashes" in php files

* fix comments align

* fix test static providers

* fix stan

* disable "final_internal_class" rule
2024-02-06 08:28:19 +01:00
Michael Voříšek
d18406a8bd
Fix binary operator spaces CS (#9330)
* 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
2024-02-02 07:53:34 +01:00
Michael Voříšek
ecd2796622
Fix JS whitespace CS (#9327)
* fix "no-extra-semi"

* fix "object-curly-spacing"

* fix "block-spacing"

* fix "padded-blocks"

* fix "space-before-blocks"

* fix "space-before-function-paren"

* fix "operator-linebreak"

* fix "space-unary-ops"

* fix "space-infix-ops"

* fix most "brace-style"

* fix "curly"

* fix most "brace-style" II

* fix "no-multi-spaces"

* search regex: (?<=\n)( +)(?! ).*\n(?!\1)( +)(&&|\|\||\()

* search regex: (?<=\n)( +)(?! |\*/).*(?<!;)\n(?!\1)( +)(?! |\}|\]|\)|\.)

* fix mostly "brace-style" /w allowSingleLine: false

* fix cs

* search regex: (//|/\*).*\n\s+\{
2024-01-30 07:50:02 +01:00
Aleksander Machniak
a73a53c8ef Replace deprecated methods use 2024-01-27 09:58:01 +01:00
Michael Voříšek
4ee79b9e84
fix "explicit_string_variable" (#9315) 2024-01-22 08:05:59 +01:00
Michael Voříšek
54f4aa33f9
Fix CS - imports (#9316)
* fix Tests\Browser\TestCase imports

* fix remaining imports

* fix PHPUnit\Framework\TestCase imports

* import GuzzleHttp\Client

* fix remaining

* "php_unit_method_casing" is not todo

* fix "single_line_comment_spacing"

* fix 2nd commit done using older fixer
2024-01-21 19:13:31 +01:00
Michael Voříšek
6a53a1d853
Fix CS (whitespace, visibility) (#9297)
* Fix "method_argument_space"

* Fix "control_structure_continuation_position"

* Fix "new_with_parentheses"

* Fix "blank_line_before_statement"

* Fix "visibility_required"

* Fix some "array_indentation"

* Fix some "array_indentation" - unify all "rcube::raise_error" calls

* rm useless eslint ignores and add rules counts

* sort eslint ignores

* fix eslint ignores grammar

* Revert "Fix "blank_line_before_statement""

* fix CS 3.46.0
2024-01-04 14:26:35 +01:00
Michael Voříšek
2643be3eaa
Fix single quotes CS (#9283)
* Fix "single_quote"

* fix "escape_implicit_backslashes"

* fix typo from f363481c

* fix single quotes in JS

* fix some minor JS CS

* fix CS v3.45.0
2023-12-31 16:36:55 +01:00
Michael Voříšek
740267fac0
Lint JS files using eslint and normalize JS indentation (#9280)
* Lint JS using eslint

* Fix "comma-spacing"

* Fix "semi"

* Fix indent to unified 4 spaces as for PHP

* ignore symlinked public_html/* files
2023-12-23 17:08:32 +01:00
Michael Voříšek
28c778b7a0
Modernize more CS III (#9270)
* fix "single_trait_insert_per_statement"

* fix "empty_loop_condition"

* fix "backtick_to_shell_exec"

* fix "phpdoc_to_comment"

* fix "no_empty_statement"

* fix "heredoc_to_nowdoc"

* fix "class_reference_name_casing"

* fix "align_multiline_comment"

* fix "heredoc_indentation"

* fix "constant_case"

* fix "single_line_comment_style"

* fix "no_null_property_initialization"

* fix "standardize_increment"

* fix "no_unneeded_control_parentheses"

* fix missing NL after "<?php"

* fix php in *.sh files too

* fix trailing spaces from all text files

* fix "explicit_indirect_variable"

* Revert "fix "align_multiline_comment""

This reverts commit 42e584f8e3.

* fix "align_multiline_comment" properly

* Revert "fix trailing spaces from all text files" - diff files only

* Revert "Revert "fix trailing spaces from all text files" - diff files only"

This reverts commit 2101c2a3a3.

* rm useless "setup-php" config
2023-12-18 07:46:51 +01:00
Michael Voříšek
e7d7e62146
Modernize more basic CS II (#9254)
* fix "integer_literal_case"

* fix "phpdoc_separation"

* fix "phpdoc_var_without_name"

* fix "operator_linebreak"

* fix "no_alias_language_construct_call"

* fix "list_syntax"

* fix "concat_space"

* fix "array_syntax"

* fix "binary_operator_spaces"

* fix "binary_operator_spaces" relaxed

* fix "phpdoc_types_order"

* fix "phpdoc_trim"

* fix "native_type_declaration_casing"

* fix "method_chaining_indentation"

* fix "phpdoc_no_package"

* fix "elseif"

* fix PHP CS Fixer config itself too

* fix "native_type_declaration_casing"
2023-12-17 13:14:45 +01:00
Michael Voříšek
a8707ae220
Fix and assert basic CS using CI (#9246)
* Assert CS using CI

* fix "single_blank_line_at_eof"

* fix "statement_indentation"

* fix "switch_case_semicolon_to_colon"

* fix "control_structure_braces"

* fix "statement_indentation"

* fix "no_whitespace_in_blank_line"

* fix "no_trailing_whitespace_in_comment"

* fix "no_trailing_whitespace"

* fix "single_space_around_construct"

* fix "spaces_inside_parentheses"

* fix "ternary_operator_spaces"

* fix "trim_array_spaces"

* fix "whitespace_after_comma_in_array"

* fix "cast_spaces"

* fix "unary_operator_spaces"

* fix "no_trailing_comma_in_singleline"

* fix "ordered_imports"

* fix "no_unused_imports"

* Check composer.json format

* fix CI job name

* file header comments are not phpdoc

* fix "phpdoc_indent"

* fix "braces_position"

* fix "phpdoc_types"

* fix "no_blank_lines_after_class_opening"

* fix "no_multiple_statements_per_line"

* fix "multiline_comment_opening_closing"

* fix "single_line_empty_body"

* fix "non_printable_character"

* fix "phpdoc_trim_consecutive_blank_line_separation"

* fix "include"

* fix "no_mixed_echo_print"

---------

Co-authored-by: Aleksander Machniak <alec@alec.pl>
2023-12-16 15:37:43 +01:00
Michael Voříšek
5425d1a84a
Fix invalid phpdocs (#9252)
* fix missing return type in phpdoc
* fix "phpdoc_scalar"
* Fix phpdoc variable names typos
* fix wrong phpdoc tags
2023-12-10 16:20:50 +01:00
Aleksander Machniak
2d5f7aa9f5 Update localization 2023-04-09 18:30:38 +02:00
Asterios "Aster" Bandis
9c2b459b8c
Update Greek localization (from Transifex) (#8937)
* Pull new Greek translations from Transifex

* Pull new Greek translations from Transifex

Replace the "Greeklish" folder name with Greek characters
2023-03-04 09:26:25 +01:00
Aleksander Machniak
863e5f848f Add Uyghur localization, update localization 2023-02-04 09:48:49 +01:00
Aleksander Machniak
80404a8674 Store uploads metadata in a separate sql database table instead of a session (#8415) 2022-10-09 11:35:14 +02:00
Aleksander Machniak
2d87443efc Update localization 2022-07-10 09:22:10 +02:00
Aleksander Machniak
ba1a93ec5b Fix PHP8 warnings 2022-07-09 18:29:07 +02:00
Aleksander Machniak
2e5a12b0ff Update localization 2022-04-25 08:00:50 +02:00
Aleksander Machniak
b6e0d6263c Moved the Larry skin to its own repository (#8271) 2021-11-27 14:08:47 +01:00
Aleksander Machniak
aa772c6270 Remove redundant Classic-specific code 2021-11-14 11:36:29 +01:00
Aleksander Machniak
27f5fccaa7 Moved the Classic skin to its own repository (#8271)
https://github.com/roundcube/classic
2021-11-14 10:17:23 +01:00
Aleksander Machniak
92880251f4 Update localization 2021-10-29 10:20:14 +02:00
Aleksander Machniak
7a269a2b84 Replace get_input_value() with get_input_string() where appropriate 2021-09-13 19:31:49 +02:00
Aleksander Machniak
89e54718ca Migration to PHPUnit v9 2021-07-25 11:07:56 +02:00
Aleksander Machniak
9e2bc40213 Dropped support for PHP < 7.3 (#7976) 2021-07-25 09:16:33 +02:00
Aleksander Machniak
5ae7e22002 Update localization 2021-07-25 09:01:51 +02:00
Aleksander Machniak
fca2a8b826 Update localization 2021-06-06 09:21:55 +02:00
Aleksander Machniak
9e735cb544 Vcard_attachments: Improve handling of multiple contacts (#7027) 2021-05-16 11:04:35 +02:00
Aleksander Machniak
ae19d16a80 Update localization 2021-05-10 19:08:05 +02:00
Aleksander Machniak
ac8e067ae6 Use official GPL-3.0-or-later license identifier (#7901) 2021-02-24 15:39:36 +01:00
Aleksander Machniak
cdd65d91c0 Update localization 2021-02-09 09:47:15 +01:00
Aleksander Machniak
13e1455cd2 Bump PHP version requirement also for plugins
[skip ci]
2021-02-07 10:02:11 +01:00
Aleksander Machniak
3bbb01fe13 PHP8 fixes, regression fixes 2020-12-13 12:14:15 +01:00
Aleksander Machniak
ed146b68db PHP8 fixes, CS fixes, short array syntax, tests 2020-12-10 20:27:32 +01:00
Aleksander Machniak
545a1569f1
Steps -> Actions refactoring (#7688)
* Move action handling code to rcmail class
* Add rcmail_action class
* Add action aliases
* Get rid of $OUTPUT global
* Move some methods from rcmail to rcmail_action
* PHP8 compat. fixes
* Add framework for testing actions
* Fix obvious code mistakes
2020-11-01 11:25:38 +01:00