Browse Source

Code improvements

pull/8925/merge
Aleksander Machniak 1 year ago
parent
commit
3a76c9b3b6
  1. 160
      phpstan-baseline.neon
  2. 4
      program/lib/Roundcube/cache/memcache.php
  3. 4
      program/lib/Roundcube/cache/memcached.php
  4. 2
      program/lib/Roundcube/cache/redis.php
  5. 12
      program/lib/Roundcube/rcube.php
  6. 17
      program/lib/Roundcube/rcube_session.php
  7. 2
      program/lib/Roundcube/session/memcache.php
  8. 2
      program/lib/Roundcube/session/memcached.php
  9. 10
      program/lib/Roundcube/session/php.php
  10. 3
      program/lib/Roundcube/session/redis.php
  11. 2
      tests/ActionTestCase.php

160
phpstan-baseline.neon

@ -610,41 +610,11 @@ parameters:
count: 1
path: program/lib/Roundcube/cache/db.php
-
message: "#^Negated boolean expression is always false\\.$#"
count: 3
path: program/lib/Roundcube/cache/memcache.php
-
message: "#^Offset non\\-falsy\\-string does not exist on array\\{\\}\\.$#"
count: 1
path: program/lib/Roundcube/cache/memcache.php
-
message: "#^Static property rcube_cache_memcache\\:\\:\\$memcache \\(Memcache\\) does not accept false\\.$#"
count: 2
path: program/lib/Roundcube/cache/memcache.php
-
message: "#^Method rcube_cache_memcached\\:\\:engine\\(\\) should return Memcache but returns Memcached\\.$#"
count: 1
path: program/lib/Roundcube/cache/memcached.php
-
message: "#^Method rcube_cache_memcached\\:\\:engine\\(\\) should return Memcache but returns Memcached\\|false\\.$#"
count: 1
path: program/lib/Roundcube/cache/memcached.php
-
message: "#^Negated boolean expression is always false\\.$#"
count: 3
path: program/lib/Roundcube/cache/memcached.php
-
message: "#^Static property rcube_cache_memcached\\:\\:\\$memcache \\(Memcached\\) does not accept false\\.$#"
count: 2
path: program/lib/Roundcube/cache/memcached.php
-
message: "#^Call to function method_exists\\(\\) with Redis and 'del' will always evaluate to true\\.$#"
count: 1
@ -760,11 +730,6 @@ parameters:
count: 1
path: program/lib/Roundcube/rcube.php
-
message: "#^Property rcube\\:\\:\\$memcached \\(Memcached\\|null\\) does not accept Memcache\\.$#"
count: 1
path: program/lib/Roundcube/rcube.php
-
message: "#^Property rcube\\:\\:\\$plugins \\(rcube_plugin_api\\) does not accept rcube_dummy_plugin_api\\.$#"
count: 1
@ -1630,131 +1595,6 @@ parameters:
count: 1
path: program/lib/Roundcube/rcube_washtml.php
-
message: "#^Parameter \\#1 \\$key \\(string\\) of method rcube_session_db\\:\\:save\\(\\) should be contravariant with parameter \\$key \\(mixed\\) of method rcube_session\\:\\:save\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/db.php
-
message: "#^Parameter \\#1 \\$key \\(string\\) of method rcube_session_db\\:\\:update\\(\\) should be contravariant with parameter \\$key \\(mixed\\) of method rcube_session\\:\\:update\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/db.php
-
message: "#^Parameter \\#2 \\$newvars \\(string\\) of method rcube_session_db\\:\\:update\\(\\) should be contravariant with parameter \\$newvars \\(mixed\\) of method rcube_session\\:\\:update\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/db.php
-
message: "#^Parameter \\#2 \\$vars \\(string\\) of method rcube_session_db\\:\\:save\\(\\) should be contravariant with parameter \\$vars \\(mixed\\) of method rcube_session\\:\\:save\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/db.php
-
message: "#^Parameter \\#3 \\$oldvars \\(string\\) of method rcube_session_db\\:\\:update\\(\\) should be contravariant with parameter \\$oldvars \\(mixed\\) of method rcube_session\\:\\:update\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/db.php
-
message: "#^Negated boolean expression is always false\\.$#"
count: 1
path: program/lib/Roundcube/session/memcache.php
-
message: "#^Parameter \\#1 \\$key \\(string\\) of method rcube_session_memcache\\:\\:save\\(\\) should be contravariant with parameter \\$key \\(mixed\\) of method rcube_session\\:\\:save\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/memcache.php
-
message: "#^Parameter \\#1 \\$key \\(string\\) of method rcube_session_memcache\\:\\:update\\(\\) should be contravariant with parameter \\$key \\(mixed\\) of method rcube_session\\:\\:update\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/memcache.php
-
message: "#^Parameter \\#2 \\$newvars \\(string\\) of method rcube_session_memcache\\:\\:update\\(\\) should be contravariant with parameter \\$newvars \\(mixed\\) of method rcube_session\\:\\:update\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/memcache.php
-
message: "#^Parameter \\#2 \\$vars \\(string\\) of method rcube_session_memcache\\:\\:save\\(\\) should be contravariant with parameter \\$vars \\(mixed\\) of method rcube_session\\:\\:save\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/memcache.php
-
message: "#^Parameter \\#3 \\$oldvars \\(string\\) of method rcube_session_memcache\\:\\:update\\(\\) should be contravariant with parameter \\$oldvars \\(mixed\\) of method rcube_session\\:\\:update\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/memcache.php
-
message: "#^Negated boolean expression is always false\\.$#"
count: 1
path: program/lib/Roundcube/session/memcached.php
-
message: "#^Parameter \\#1 \\$key \\(string\\) of method rcube_session_memcached\\:\\:save\\(\\) should be contravariant with parameter \\$key \\(mixed\\) of method rcube_session\\:\\:save\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/memcached.php
-
message: "#^Parameter \\#1 \\$key \\(string\\) of method rcube_session_memcached\\:\\:update\\(\\) should be contravariant with parameter \\$key \\(mixed\\) of method rcube_session\\:\\:update\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/memcached.php
-
message: "#^Parameter \\#2 \\$newvars \\(string\\) of method rcube_session_memcached\\:\\:update\\(\\) should be contravariant with parameter \\$newvars \\(mixed\\) of method rcube_session\\:\\:update\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/memcached.php
-
message: "#^Parameter \\#2 \\$vars \\(string\\) of method rcube_session_memcached\\:\\:save\\(\\) should be contravariant with parameter \\$vars \\(mixed\\) of method rcube_session\\:\\:save\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/memcached.php
-
message: "#^Parameter \\#3 \\$oldvars \\(string\\) of method rcube_session_memcached\\:\\:update\\(\\) should be contravariant with parameter \\$oldvars \\(mixed\\) of method rcube_session\\:\\:update\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/memcached.php
-
message: "#^Call to function method_exists\\(\\) with Redis and 'del' will always evaluate to true\\.$#"
count: 1
path: program/lib/Roundcube/session/redis.php
-
message: "#^Negated boolean expression is always false\\.$#"
count: 1
path: program/lib/Roundcube/session/redis.php
-
message: "#^Parameter \\#1 \\$key \\(string\\) of method rcube_session_redis\\:\\:save\\(\\) should be contravariant with parameter \\$key \\(mixed\\) of method rcube_session\\:\\:save\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/redis.php
-
message: "#^Parameter \\#1 \\$key \\(string\\) of method rcube_session_redis\\:\\:update\\(\\) should be contravariant with parameter \\$key \\(mixed\\) of method rcube_session\\:\\:update\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/redis.php
-
message: "#^Parameter \\#2 \\$newvars \\(string\\) of method rcube_session_redis\\:\\:update\\(\\) should be contravariant with parameter \\$newvars \\(mixed\\) of method rcube_session\\:\\:update\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/redis.php
-
message: "#^Parameter \\#2 \\$vars \\(array\\) of method rcube_session_redis\\:\\:save\\(\\) should be contravariant with parameter \\$vars \\(mixed\\) of method rcube_session\\:\\:save\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/redis.php
-
message: "#^Parameter \\#3 \\$oldvars \\(string\\) of method rcube_session_redis\\:\\:update\\(\\) should be contravariant with parameter \\$oldvars \\(mixed\\) of method rcube_session\\:\\:update\\(\\)$#"
count: 1
path: program/lib/Roundcube/session/redis.php
-
message: "#^Property rcube\\:\\:\\$storage \\(rcube_storage\\|null\\) does not accept StorageMock\\.$#"
count: 1
path: tests/ActionTestCase.php
-
message: "#^Parameter \\#1 \\$browser \\(Tests\\\\Browser\\\\Browser\\) of method Tests\\\\Browser\\\\Components\\\\App\\:\\:assert\\(\\) should be contravariant with parameter \\$browser \\(Laravel\\\\Dusk\\\\Browser\\) of method Laravel\\\\Dusk\\\\Component\\:\\:assert\\(\\)$#"
count: 1

4
program/lib/Roundcube/cache/memcache.php

@ -27,7 +27,7 @@ class rcube_cache_memcache extends rcube_cache
/**
* Instance of memcache handler
*
* @var Memcache
* @var Memcache|false|null
*/
protected static $memcache;
@ -44,7 +44,7 @@ class rcube_cache_memcache extends rcube_cache
/**
* Get global handle for memcache access
*
* @return Memcache
* @return Memcache|false
*/
public static function engine()
{

4
program/lib/Roundcube/cache/memcached.php

@ -27,7 +27,7 @@ class rcube_cache_memcached extends rcube_cache
/**
* Instance of memcached handler
*
* @var Memcached
* @var Memcached|false|null
*/
protected static $memcache;
@ -50,7 +50,7 @@ class rcube_cache_memcached extends rcube_cache
/**
* Get global handle for memcache access
*
* @return Memcache
* @return Memcached|false
*/
public static function engine()
{

2
program/lib/Roundcube/cache/redis.php

@ -46,7 +46,7 @@ class rcube_cache_redis extends rcube_cache
/**
* Get global handle for redis access
*
* @return Redis
* @return Redis|false
*/
public static function engine()
{

12
program/lib/Roundcube/rcube.php

@ -44,13 +44,13 @@ class rcube
/** @var ?rcube_db Instance of database class */
public $db;
/** @var ?Memcache Instance of Memcache class */
/** @var Memcache|false|null Instance of Memcache class */
public $memcache;
/** @var ?Memcached Instance of Memcached class */
/** @var Memcached|false|null Instance of Memcached class */
public $memcached;
/** @var ?Redis Instance of Redis class */
/** @var Redis|false|null Instance of Redis class */
public $redis;
/** @var ?rcube_session Instance of rcube_session class */
@ -166,7 +166,7 @@ class rcube
/**
* Get global handle for memcache access
*
* @return Memcache The memcache engine
* @return Memcache|false The memcache engine
*/
public function get_memcache()
{
@ -180,7 +180,7 @@ class rcube
/**
* Get global handle for memcached access
*
* @return Memcached The memcached engine
* @return Memcached|false The memcached engine
*/
public function get_memcached()
{
@ -194,7 +194,7 @@ class rcube
/**
* Get global handle for redis access
*
* @return Redis The redis engine
* @return Redis|false The redis engine
*/
public function get_redis()
{

17
program/lib/Roundcube/rcube_session.php

@ -142,8 +142,25 @@ abstract class rcube_session implements SessionHandlerInterface
#[ReturnTypeWillChange]
abstract public function read($key);
/**
* Write data to the session store
*
* @param string $key Session identifier
* @param string $vars Session data
*
* @return bool True on success, False on failure
*/
abstract protected function save($key, $vars);
/**
* Write data to the session store
*
* @param string $key Session identifier
* @param string $newvars New session data string
* @param string $oldvars Old session data string
*
* @return bool True on success, False on failure
*/
abstract protected function update($key, $newvars, $oldvars);
/**

2
program/lib/Roundcube/session/memcache.php

@ -25,7 +25,7 @@
*/
class rcube_session_memcache extends rcube_session
{
/** @var Memcache The memcache driver */
/** @var Memcache|false|null The memcache driver */
private $memcache;
/** @var bool Debug state */

2
program/lib/Roundcube/session/memcached.php

@ -25,7 +25,7 @@
*/
class rcube_session_memcached extends rcube_session
{
/** @var Memcached The memcache driver */
/** @var Memcached|false|null The memcache driver */
private $memcache;
/** @var bool Debug state */

10
program/lib/Roundcube/session/php.php

@ -49,9 +49,15 @@ class rcube_session_php extends rcube_session
return '';
}
protected function save($key, $vars) {}
protected function save($key, $vars)
{
return true;
}
protected function update($key, $newvars, $oldvars) {}
protected function update($key, $newvars, $oldvars)
{
return true;
}
/**
* Object constructor

3
program/lib/Roundcube/session/redis.php

@ -87,6 +87,7 @@ class rcube_session_redis extends rcube_session
{
if ($key) {
try {
// @phpstan-ignore-next-line
$result = method_exists($this->redis, 'del')
? $this->redis->del($key)
: $this->redis->delete($key);
@ -171,7 +172,7 @@ class rcube_session_redis extends rcube_session
* Write data to redis store
*
* @param string $key Session identifier
* @param array $vars Session data
* @param string $vars Session data
*
* @return bool True on success, False on failure
*/

2
tests/ActionTestCase.php

@ -146,7 +146,7 @@ class ActionTestCase extends TestCase
public static function mockStorage()
{
$rcmail = rcmail::get_instance();
$rcmail->storage = new StorageMock();
$rcmail->storage = new StorageMock(); // @phpstan-ignore-line
return $rcmail->storage;
}

Loading…
Cancel
Save