Commit Graph

43 Commits

Author SHA1 Message Date
Dylan K. Taylor
6da3935abc Splash some URLs on the console at the end of startup
Maybe this will be useful for people whose first encounter with PM is on a server host.
2025-10-07 18:34:20 +01:00
Dylan K. Taylor
e1af2a4af1 Update language dependency 2025-05-24 16:19:48 +01:00
Dries C
91ac64783f Bedrock 1.21.60 (#6627)
Co-authored-by: Dylan K. Taylor <dktapps@pmmp.io>
2025-02-16 20:51:53 +00:00
Dylan T.
61560ec375 Support for collecting timings from threads, and implement async task timings (#6333)
The following callbacks can now be registered in timings, to allow threads to be notified of these events:
- Turning on/off (`TimingsHandler::getToggleCallbacks()->add(...)`)
- Reset (`TimingsHandler::getReloadCallbacks()->add(...)`)
- Collect (`TimingsHandler::getCollectCallbacks()->add(...)`)

Collect callbacks must return `list<Promise>`. The promises must be `resolve()`d with `list<string>` of printed timings records, as returned by `TimingsHandler::printCurrentThreadRecords()`. It's recommended to use 1 promise per thread.

A timings report will be produced once all promises have been resolved.

This system is used internally to collect timings for async tasks (closes #6166).

For timings viewer developers:
Timings format version has been bumped to 3 to accommodate this change. Timings groups should now include a `ThreadId`  at the end of timings group names to ensure that their record IDs are segregated correctly, as they could otherwise conflict between threads. The main thread is not required to specify a thread ID. See pmmp/timings@13cefa6279 for implementation examples.

New PHPStan error is caused by phpstan/phpstan#10924
2024-12-01 14:49:27 +00:00
Dylan K. Taylor
2d9cee3d62 Update Language dependency 2024-11-14 23:14:23 +00:00
Dylan K. Taylor
52ea4feac0 Updated pocketmine/locale-data 2023-03-19 16:53:02 +00:00
Dylan K. Taylor
96c32d24ba Update composer dependencies 2023-01-30 13:23:40 +00:00
Dylan K. Taylor
a9f06fc5f4 Replaced hardcoded record.nowPlaying with KnownTranslationKeys 2023-01-13 17:27:57 +00:00
Dylan K. Taylor
4df1f7f502 Updated composer dependencies (next-minor) 2023-01-12 19:03:55 +00:00
Dylan K. Taylor
641d35a30f Updated pocketmine/locale-data to get new translations 2022-11-25 14:59:58 +00:00
Dylan K. Taylor
cca22046ab Updated pocketmine/locale-data 2022-11-15 20:21:39 +00:00
Dylan K. Taylor
6da467b142 Updated composer dependencies 2022-10-31 15:27:56 +00:00
Dylan K. Taylor
38d6284671 Use PHP-CS-Fixer to enforce file header presence 2022-06-04 17:34:49 +01:00
Dylan K. Taylor
3b7e274c34 Server: localize 'forcing server shutdown' message 2022-05-11 14:54:29 +01:00
Dylan K. Taylor
212c94ce98 PluginManager: Log an error message when a plugin disables itself during enabling 2022-05-11 13:07:45 +01:00
Dylan K. Taylor
3353a00641 List command aliases in /help <commandName> 2022-04-10 21:32:46 +01:00
Dylan K. Taylor
ac3a6033b9 PluginManager: account for possible abstract main classes
idk why anyone does this, but it shouldn't cause a core crash ...
2022-04-01 23:42:37 +01:00
Dylan K. Taylor
0d595e4324 Update Language dependency 2022-01-04 00:47:04 +00:00
Dylan K. Taylor
57e1509c3a Updated translation APIs 2021-12-15 03:24:13 +00:00
Dylan K. Taylor
c334e6dec7 Updated locale-data dependency 2021-12-14 00:31:44 +00:00
Dylan K. Taylor
ede07c4314 Mark KnownTranslationKeys and KnownTranslationFactory as @internal 2021-12-11 21:24:18 +00:00
Dylan K. Taylor
6b316dc29a PluginManager: Make declaration of duplicate permissions a load error 2021-11-06 17:05:37 +00:00
Dylan K. Taylor
7e4be29fc4 Gracefully force-shutdown on failure to start RakLib
this now won't generate a crashdump.
2021-11-02 13:51:01 +00:00
Dylan K. Taylor
aa408c9a97 Fixed 9646128d01 2021-10-20 21:54:57 +01:00
Dylan K. Taylor
34f54750c8 Added support for creation-time validation of generator options, closes #2717 2021-10-11 17:37:47 +01:00
Dylan K. Taylor
e1ee320c8d PluginManager: Localize plugin loading error messages 2021-10-11 00:58:33 +01:00
Dylan K. Taylor
ccc881ee58 Switch to custom permission denied message
closes #4494
2021-10-09 00:57:15 +01:00
Dylan K. Taylor
a101d1cdf9 Drop pocketmine.plugin.fileError in favour of pocketmine.plugin.loadError
fileError was unnecessarily noisy, putting the directory path on the console twice. This conveys just as much information but with less wasted space.
2021-10-05 23:31:00 +01:00
Dylan K. Taylor
e25c03eec1 Gracefully handle errors loading plugin manifest
this isn't perfect, but it covers the common cases.
Now, the server won't spam crashdumps just because some plugin declared nested permissions.
2021-10-05 20:28:43 +01:00
Dylan K. Taylor
2db79cf58d Fix build 2021-10-05 18:41:47 +01:00
Dylan K. Taylor
7d06b76aaf PluginManager: account for possible invalid format of API version
we're seeing a lot of crashes because of this.
2021-10-05 18:36:00 +01:00
Dylan K. Taylor
fb570970a8 Localize gamemode command errors 2021-10-02 21:22:54 +01:00
Dylan K. Taylor
30e10c38b6 Localize /help 2021-10-02 20:59:36 +01:00
Dylan K. Taylor
05dc675d5b Replace commands.generic.notFound with a custom PM version
this also fixes #4379.
2021-10-02 20:42:59 +01:00
Dylan K. Taylor
d63b9d1648 WorldManager: localize strings for world loading, generation and conversion 2021-10-02 20:33:32 +01:00
Dylan K. Taylor
273aa8ab42 Drop useless usage translation strings for commands with no parameters 2021-09-11 17:06:26 +01:00
Dylan K. Taylor
aa5a9f6d12 Enchantment: use Translatable instead of hardcoded translation keys 2021-09-03 20:52:05 +01:00
Dylan K. Taylor
e140614a63 Localize /gc 2021-08-26 15:06:43 +01:00
Dylan K. Taylor
47120022c2 Localize messages for /op and /deop 2021-08-26 13:31:19 +01:00
Dylan K. Taylor
60ac76a3bc Remove more usages of hardcoded translation keys 2021-08-15 19:22:40 +01:00
Dylan K. Taylor
f42c9bb6d6 Removed unused translation 2021-08-10 19:48:30 +01:00
Dylan K. Taylor
2cdd6e634f New /version format 2021-08-10 19:32:28 +01:00
Dylan K. Taylor
94e16f416d Added KnownTranslationKeys (generated) and start using it 2021-06-29 22:46:04 +01:00