d0d84d4c51
New rule: explode() limit parameter must be set
2025-03-04 20:44:01 +00:00
77be5f8e25
Update PHPStan
2025-02-17 17:51:39 +00:00
9402a20ee3
Update Utils::getOS() doc comment
...
closes #6628
2025-02-16 16:12:29 +00:00
794641c0f8
Utils: split some horrifying code across multiple lines
2025-01-07 22:35:19 +00:00
9633b7d8a7
Update to PHPStan 2.x
2025-01-07 22:34:43 +00:00
d69a887b0d
Utils: fix parameter doc for printableExceptionInfo()
2025-01-07 22:24:26 +00:00
0358b7dce4
utils: avoid weak comparisons
2025-01-06 22:53:35 +00:00
81e3730b99
Fixed crashes containing PHP internal stack frames being flagged as plugin-caused
2024-12-24 14:20:16 +00:00
269effcecf
Introduce Utils::getRandomFloat() ( #6532 )
...
Drop-in replacement for lcg_value() for PHP 8.4
2024-11-26 11:33:29 +00:00
a9787f0d99
Fix PHPStan error
2024-11-25 14:32:17 +00:00
5325ecee37
Deal with a whole lot of PHPStan suppressed key casting errors
...
closes #6534
2024-11-25 14:30:58 +00:00
e710b3750f
Adjust pretty name of closures on PHP 8.4 ( #6351 )
...
related to https://github.com/php/php-src/pull/13550
see analog symfony change: https://github.com/symfony/symfony/pull/54614
2024-11-19 17:05:21 +00:00
db894e3a4a
Fixed Utils::cloneObjectArray()
template signature ( #6255 )
2024-02-16 16:52:10 +00:00
82a5ea9ed3
Allow thread errors and their traces to be properly recorded in crashdumps ( #5910 )
...
until now, any thread crash would show as a generic crash since we aren't able to get the trace from the crashed thread directly. This uses some dirty tricks to export a partially serialized stack trace to the main thread, where it can be written into a crashdump.
This enables us to see proper crash information for async tasks in the crash archive (finally!!!) as well as being able to capture RakLib errors properly.
2023-07-26 16:26:03 +01:00
c2918709a3
Merge branch 'next-minor' into next-major
2023-01-06 01:59:04 +00:00
172ce659b8
Use str_starts_with, str_ends_with and str_contains instead of strpos ( #5485 )
2022-12-31 13:02:23 +00:00
0d31b25fba
Use str_starts_with and str_contains instead of strpos ( #5482 )
2022-12-30 21:41:30 +00:00
4d79aced07
Merge branch 'next-minor' into next-major
2022-12-15 19:50:27 +00:00
99996b62d6
Align PhpDoc @param tags according to PHP-CS-Fixer
2022-12-06 13:21:20 +00:00
fdb07cdbcd
Added more missing native types according to 8.0 standards
2022-11-23 14:21:38 +00:00
bfd1b2c635
PHPStan 1.9.1
2022-11-04 18:28:07 +00:00
66cd156d80
Utils: use static property for core count cache, instead of local static variable
2022-09-02 19:18:01 +01:00
1d253bc8c2
Utils: remove 32-bit specific code from javaStringHash()
...
this was necessary in the days of 32-bit, but for 64-bit, the 0xffffffff mask is sufficient and produces the exact same result.
2022-09-02 18:23:49 +01:00
7f175b47e6
Fix CS
2022-08-25 18:19:22 +01:00
0e73ffe555
CrashDump: Added JIT mode to data
...
this is necessary for identifying JIT-specific bugs, which, unfortunately, are very common.
2022-08-25 17:39:40 +01:00
1ffd38b37b
Utils: fixed currentTrace() when xdebug is loaded, but not in develop mode
...
this is really dumb... why does it register the functions at all if they aren't usable ???
2022-08-25 16:56:26 +01:00
38d6284671
Use PHP-CS-Fixer to enforce file header presence
2022-06-04 17:34:49 +01:00
9ff1bf6deb
Merge remote-tracking branch 'origin/stable' into next-minor
2022-05-11 13:12:45 +01:00
a913736235
fix CS
2022-05-10 14:13:01 +01:00
124edeacaf
fix build
2022-05-10 14:11:46 +01:00
a216f4d089
Utils: improve representation of int, float and null in stack trace parameters
2022-05-10 14:07:07 +01:00
17b0e0be84
Utils: use match to clean up stringifyValueForTrace()
2022-05-10 14:04:52 +01:00
81d8aed2e2
Utils: account for named variadic arguments in printableTrace()
2022-05-10 13:59:42 +01:00
6d7bf1c5d8
Utils: fixed missing property initializer
2022-04-28 14:52:21 +01:00
0e7e776862
Modernize property declarations in src/utils
2022-04-28 13:12:12 +01:00
f97ce6afef
Harden APIs which accept Vector3/Position/Location in event namespace
2022-03-09 22:22:37 +00:00
282b430b1f
Replace disallowed operators in src/utils/
2022-01-20 19:02:26 +00:00
ee6548aa50
Merge branch 'stable' into next-minor
2022-01-14 00:45:49 +00:00
0a5b146189
substr() returns an empty string instead of false in 8.0
...
an empty string will pass through preg_match_all() without any harmful effects, so we don't need to check for it.
2022-01-07 22:38:00 +00:00
c6466a6da9
Utils: added crutch assumeNotFalse()
...
this can be used to get PHPStan to shut up about stuff that will never return false in normal contexts.
It's more fine-grained than @phpstan-ignore-line and less hassle than ignoreErrors (and works in PhpStorm too).
In addition, it's easy to search for references.
2021-12-08 18:58:39 +00:00
b784a04e08
Utils: fixed parseDocComment() ignoring tags containing hyphens
2021-11-24 16:38:37 +00:00
269231c228
Ban foreach(arrayWithStringKeys as k => v)
...
this is not as good as phpstan/phpstan-src#769 (e.g. array_key_first()/array_key_last() aren't covered by this, nor is array_rand()) but it does eliminate the most infuriating cases where this usually crops up.
2021-11-15 22:52:05 +00:00
f827a555d5
Merge branch 'stable'
2021-11-01 18:13:24 +00:00
1d99cd329a
CS again
2021-10-26 00:50:43 +01:00
24d4daec90
Utils::testValidInstance() now accepts interfaces for the baseName
2021-10-26 00:32:32 +01:00
4178c81209
Utils: fixed testValidInstance() not accepting the same valid class for both className and baseName
...
this caused problems in PlayerCreationEvent because plugins set the base class and then set the player class to the same thing.
2021-10-26 00:31:30 +01:00
06e7338ff9
Move exception printing utilities from MainLogger to Utils
...
where they can be useful to other stuff apart from just the logger
2021-10-14 15:54:20 +01:00
912e612743
Utils: allow validateCallableSignature() to accept a manually constructed CallbackType instead of a closure
...
this allows more fine-grained control without PHPStan yelling at us.
2021-10-10 23:27:09 +01:00
cd9af7f9f6
Utils: be explicit about class existence checking in testValidInstance()
2021-08-21 15:57:57 +01:00
1aa541aefe
Utils: remove useless commented code
2021-08-15 19:38:55 +01:00