28bfe9fbb4
emit_performance_warnings(): Log a warning when using a PHP debug build
2021-08-11 20:14:03 +01:00
13f114f30e
bootstrap: report loaded php.ini in error, as well as php binary path
...
in some cases extension loading issues are caused by incorrect php.ini path, which should be easy to spot if the path is given.
2021-07-17 21:50:30 +01:00
bd5f379c4c
apparently opcache_get_status() may return false?
2021-07-17 21:11:12 +01:00
2588895ab0
bootstrap: add a giant yellow warning about JIT
2021-07-17 19:00:19 +01:00
c7868a810d
Move PHP minimum to 7.4
...
7.3 isn't actively tested anymore, and since 7.4 has been out for so long already, it doesn't make sense to keep pandering to users who can't be bothered to update their PHP binaries.
In most cases, these users are also experiencing problems caused by older versions of pthreads that were long since fixed.
In addition, pthreads is no longer tested or supported on 7.3, so users can't get newer bug fixes even if they wanted to.
2021-06-13 15:34:24 +01:00
094102fe92
fopen() might return FALSE if permission was denied to read/write the file
2021-02-12 16:16:36 +00:00
ec9b39862b
bootstrap: commit suicide if composer dependencies are not in sync
2020-12-29 17:47:32 +00:00
5920b0ba40
Remove _PHPSTAN_ANALYSIS constant
...
we don't need this anymore since PHPStan is able to intelligently decide whether to autoload a file or not.
2020-12-27 19:10:40 +00:00
0604dfc9e5
phpstan 0.12.63
2020-12-18 00:32:55 +00:00
0682c93f5a
Drop bcmath dependency
...
we haven't used bcmath since the days of 32-bit.
2020-12-14 20:59:07 +00:00
df76c02e7a
Explicitly release server.lock file when shutdown the server. ( #3619 )
...
Previously, this relied on PHP itself to release locks during the resource destructor phase during process exit, but sometimes it doesn't for god knows what reason. This change makes the lock file get explicitly released before the process dies.
2020-06-26 11:41:39 +01:00
8e1b3edd2c
Merge branch 'stable' into next-minor
2020-04-25 12:06:52 +01:00
e6f64c609e
bootstrap: avoid making COMPOSER_AUTOLOADER_PATH having a possible false type
2020-04-25 11:04:09 +01:00
70a4f73d73
Drop PHP 7.2 support
2020-04-19 12:49:25 +01:00
20d1a048dd
fixup imports
2020-02-10 12:21:56 +00:00
f08e411cad
Merge branch 'stable' into next-minor
2020-02-10 11:40:08 +00:00
e689fd545b
PocketMine.php: avoid use of short ternary
2020-02-05 20:48:54 +00:00
fe5620f097
ThreadManager: Lazy-init during getInstance()
2020-02-05 20:36:44 +00:00
651ef500a3
Make pocketmine\PATH and pocketmine\RESOURCE_PATH always available
...
these are non-dependent on environment, so they can be determined with no external input.
This fixes 2 PHPStan issues, fixes some code that couldn't run outside of PM, and makes it easier to write code that depends on PM.
2020-01-13 10:55:54 +00:00
64b5db4bf2
bootstrap: add some @return annotations for phpstan
2020-01-09 20:13:53 +00:00
1192b8bdf1
bootstrap: add PhpDoc to critical_error to make phpstan happy
...
it wants phpdoc or typehints, and we can't provide typehints because bootstrap needs to be compatible with old PHP versions.
2020-01-09 20:09:33 +00:00
ee08286eca
moved git hash detection code to its own unit
2020-01-02 21:01:31 +00:00
0b3c4ee496
bootstrap: don't choke on paths that have spaces in them
2019-12-30 11:58:44 +00:00
54de518634
bootstrap: fixed incorrect git hash detection when cwd is not the repo root
2019-12-30 09:09:47 +00:00
494660102e
Replace empty() usages with count()
2019-12-18 11:23:24 +00:00
4cfceeeb8e
bootstrap: fix merge error introduced by cb76f8a5df
...
this error is harmless since it points to a deprecated function, but it showed up as conflicted in master merge.
2019-11-29 12:03:07 +00:00
cb76f8a5df
Merge branch 'stable' into next-minor
2019-11-21 23:21:16 +08:00
932418b951
fixing some PHPStan complaints about bootstrap
...
this isn't an ideal fix, but it'll do.
2019-11-07 18:22:37 +00:00
4cb0b319c0
load some non-class constants with composer
...
this makes PHPStan happy and also makes working with PM code externally less of a pain in the ass.
2019-11-05 11:16:22 +00:00
0840ba8067
PocketMine.php: reduce unnecessary pocketmine\NAME dependencies
2019-10-26 21:37:15 +01:00
274cf58ccf
PocketMine.php: remove useless ini_set() (this is a PHP_INI_SYSTEM directive which can't be changed at runtime)
2019-10-25 21:38:47 +01:00
1bce5d0bc2
PocketMine.php: move BaseClassLoader creation to where it's actually used
2019-10-25 21:26:22 +01:00
48080b7f90
PocketMine.php: define INT32_MASK earlier
...
this is non-dependent on any of the PM crap.
2019-10-24 09:23:37 +01:00
b216fb8910
PocketMine.php: set INI entries as early as possible
2019-10-24 09:18:50 +01:00
d3171d6a8e
backport a53f698d38
: PocketMine.php: remove useless set_time_limit() call
...
this is hardcoded to zero in the PHP core anyway.
2019-10-24 09:14:18 +01:00
c063a4da29
backport 5c1f1f00cb
: move assert.exception to PocketMine.php with the other stuff
2019-10-24 09:12:05 +01:00
cc79dfa64c
backport 8b40a8f217
: PocketMine.php: move INI entry setting to a separate function
2019-10-24 09:09:53 +01:00
d6b9950901
backport fdfbaf4e95
: make startup performance warnings a little more coherent
2019-10-24 09:06:28 +01:00
1815fe5b46
backport 647f86a5b8
: PocketMine.php: remove redundant ini_set()
...
this is overridden later on by MemoryManager.
2019-10-24 09:02:37 +01:00
3e993250d8
backport 0c31b8731f
: PocketMine.php: use main logger to emit force-kill debug
2019-10-24 08:57:31 +01:00
1163ac1d7a
backport 0c31b8731f
: PocketMine.php: get rid of redundant LOCK_FILE_PATH constant
2019-10-24 08:55:28 +01:00
9a51ba697a
PocketMine.php: move some mission-critical stuff earlier in boot sequence
...
fixes #3161
2019-10-24 08:50:13 +01:00
bb048fb361
Merge branch 'stable' into next-minor
2019-07-26 19:50:17 +01:00
95dfff727e
Wrap PocketMine.php body inside a function
...
this isolates variables from the global scope and also prevents doxygen documenting these variables.
2019-07-26 19:47:03 +01:00
5a08a10448
update dependency requirements
2019-07-22 17:15:18 +01:00
4635b93f4d
backport 23071d257
+ deprecations: Extract process-related functions from Utils into a separate Process class
2019-06-16 14:40:51 +01:00
862c844759
Write PID into lock file
2019-06-13 15:11:59 +01:00
c2c210e25a
Fixed --enable-ansi and --disable-ansi not being respected on threads
...
this causes some breakage to the behaviour of Terminal, and for that reason this is going on 4.0.
Terminal::hasFormattingCodes() will no longer auto-detect whether colour codes are supported.
2019-04-26 12:30:24 +01:00
f28a0740a0
Move version info to its own file for easier third party tooling
2019-04-23 16:07:25 +01:00
98ca28d96e
add a warning when chunkutils is missing
2019-04-21 17:36:38 +01:00