1139 Commits

Author SHA1 Message Date
Dylan K. Taylor
d03f36ebee First look at splitting up AsyncPool and ServerScheduler
This commit contains quite a few breaking changes with respect to how AsyncTasks are handled. This is necessary to allow separation of the ServerScheduler and the AsyncPool, because in the future the ServerScheduler may be removed and instead there will be isolated per-plugin sync-task schedulers - but we cannot have every plugin with its own worker pool for memory usage reasons if nothing else.

The following things have changed:
- ServerScheduler: scheduleAsyncTask(), scheduleAsyncTaskToWorker(), getAsyncTaskPoolSize(), increaseAsyncTaskPoolSize() and similar methods have all been removed. Additionally the static \$WORKERS field has been removed.
- Server: added API method getAsyncPool(). This grants you direct access to the server's AsyncPool. Calls to getScheduler()->scheduleAsyncTask() and scheduleAsyncTaskToWorker() should be replaced with getAsyncPool()->submitTask() and submitTaskToWorker() respectively.
2018-05-30 12:20:10 +01:00
Dylan K. Taylor
b7ca045c51 updated TesterPlugin submodule 2018-05-29 20:11:29 +01:00
Dylan K. Taylor
5138bdc4bd Updated DevTools submodule 2018-04-13 17:38:51 +01:00
Dylan K. Taylor
a30a157d8c API bump to 3.0.0-ALPHA12
Yes, I am not happy about this either. new-versioning has issues, and there hasn't been enough development and testing on it.
I didn't want to delay release to cram in a half-baked new versioning system, and it's ended up delayed anyway and new-versioning is still half-baked.
we're overdue a new release, so here it is.
2018-04-13 13:31:15 +01:00
Dylan K. Taylor
5f52e00213 Fixed plugin loaders trying to load plugins they aren't able to load
closes #2125

This is an API break for things implementing the PluginLoader interface.
2018-04-09 15:54:20 +01:00
Dylan K. Taylor
24c5d7557e Updated PreProcessor submodule 2018-03-19 12:44:54 +00:00
Dylan K. Taylor
af2435f199 Removed redundant checks from ItemFactory::init() and BlockFactory::init()
These are never called accidentally, or at least it's highly unlikely to do so. It might be reasonable to throw exceptions for this, but for the meantime they are redundant - extra indentation for no good reason.

This also removes the $force parameter from BlockFactory::init().
2018-02-15 17:42:03 +00:00
Dylan K. Taylor
6e7a693355 Tests: Make lint.sh a little more useful 2018-02-12 11:34:51 +00:00
Dylan K. Taylor
07bf1c9e22 Bump API version for release 2018-02-04 18:06:02 +00:00
Dylan K. Taylor
db095f9705 Updated PreProcessor submodule 2018-01-01 12:54:18 +00:00
Dylan K. Taylor
a67f7e3930 Add header includes and preprocessor checks 2017-12-30 14:56:29 +00:00
Dylan K. Taylor
63edcb8934 Updated PreProcessor submodule 2017-12-30 14:15:33 +00:00
Dylan K. Taylor
0ee78d2416 Update DevTools submodule, fix build 2017-12-17 15:01:05 +00:00
Dylan K. Taylor
c301788864 API bump 2017-12-02 17:22:05 +00:00
Dylan K. Taylor
23bc97e098 Updated PocketMine-DevTools submodule 2017-11-07 09:36:58 +00:00
Dylan K. Taylor
4ed1a39638 Updated DevTools submodule 2017-10-30 17:06:33 +00:00
Dylan K. Taylor
93d60a9beb Updated DevTools submodule 2017-10-24 16:23:04 +01:00
Dylan K. Taylor
e6cecabf3f New skin API, add support for custom capes & custom geometry (#1416)
* Added support for changing skins ingame, custom capes & geometry
* Use PlayerSkinPacket for setting Human skin instead of PlayerList hack
2017-09-29 14:09:00 +01:00
Dylan K. Taylor
65e908a403 Move Travis Test server files into a separate directory
this is for convenience locally running Travis Test so my existing data doesn't interfere
2017-09-21 17:16:27 +01:00
Dylan K. Taylor
194278d986 Updated TesterPlugin submodule 2017-09-21 16:56:27 +01:00
Dylan K. Taylor
0e51820dfb Merge remote-tracking branch 'origin/master' into mcpe-1.2 2017-09-15 15:54:30 +01:00
Dylan K. Taylor
8c9d9626ab Merge branch 'new-pack-codes' 2017-09-14 19:53:07 +01:00
Dylan K. Taylor
6b34c47c96 Merge branch 'master' into mcpe-1.2 2017-09-14 18:16:45 +01:00
Dylan K. Taylor
77241e14ce Bumped to ALPHA8 to account for AsyncTask API changes 2017-09-14 17:49:12 +01:00
Dylan K. Taylor
4d1daecd91 oops! 2017-09-14 11:01:47 +01:00
Dylan K. Taylor
53e5db5142 Updated PreProcessor submodule 2017-09-14 10:58:46 +01:00
Dylan K. Taylor
1d31958ce6 Updated preprocessor submodule 2017-09-12 09:12:38 +01:00
Dylan K. Taylor
130a60f2b2 Fixed ItemFactory::isRegistered() returns false for blocks 2017-09-11 18:23:26 +01:00
Dylan K. Taylor
aaa3b6e59a Added explicit AsyncTask->storeLocal(), removed AsyncTask->__construct() object storage (#1322)
Far too often I see people using IDEs which generate the constructors for them and then accidentally unintentionally store things in the object store. This parent constructor behaviour is unexpected. If a developer wants to store something, they should now do so explicitly by calling storeLocal().
2017-09-10 20:31:28 +01:00
Dylan K. Taylor
25adac8859 Added support for Composer (#323) 2017-09-10 19:23:34 +01:00
Dylan K. Taylor
f1ccee505b Submodule update (this is getting annoying) 2017-09-09 00:51:20 +01:00
Dylan K. Taylor
cae1a3bb4b Updated DevTools submodule 2017-09-08 21:38:14 +01:00
Dylan K. Taylor
38293913ee Updated DevTools submodule 2017-09-08 20:36:32 +01:00
Dylan K. Taylor
9b7868238c Improved Travis Test, capture error output from console, test phar 2017-09-07 20:03:58 +01:00
Dylan K. Taylor
953c1ef4ec Fixed formatting issues in Travis test script 2017-09-07 20:03:54 +01:00
Dylan K. Taylor
69514c5763 Submodule update: Fixes little-endian longs being written in the wrong order, closes #1358 2017-09-06 17:54:38 +01:00
Dylan K. Taylor
2f614c5dc2 don't break the preprocessor 2017-09-02 19:04:10 +01:00
Dylan K. Taylor
876659cc73 Item factory refactor and added capability to register custom items 2017-08-21 17:49:26 +01:00
Dylan K. Taylor
02f42eba48 Move block registration to its own class 2017-08-20 18:05:01 +01:00
Dylan K. Taylor
be4f48a119 Updating submodules 2017-08-17 18:26:06 +01:00
Dylan K. Taylor
83f29e5639 Fixed tests failing since 83af4dcd 2017-08-17 17:02:13 +01:00
Dylan K. Taylor
0ad4a59d5a Added test for light filter levels (must always be >= 1) 2017-08-05 23:03:13 +01:00
Dylan K. Taylor
b912b9173c Changed how blocks are registered, add API to allow registering custom blocks 2017-08-03 16:46:48 +01:00
Dylan K. Taylor
24bdf330d5 Merge branch 'moar-typehints' 2017-07-15 09:43:43 +01:00
Dylan K. Taylor
b28128f835 Submodule updates 2017-07-15 09:43:33 +01:00
Dylan K. Taylor
fb5587350d Solved issue of builds hanging when TesterPlugin fails to load (for example incompatible API version) 2017-07-14 16:48:42 +01:00
Dylan K. Taylor
2018ad6376 Merge master 2017-07-14 12:12:35 +01:00
Dylan K. Taylor
b5790d19bf Cleaned up MainLogger registration and declared a typehint
Remove null hint from MainLogger::getLogger() so static analysis doesn't complain everywhere
just make sure you register the logger before trying to use MainLogger::getLogger() on a different thread!
2017-07-14 11:39:04 +01:00
Dylan K. Taylor
c3b8be3f60 and more typehints 2017-07-14 10:56:51 +01:00
Dylan K. Taylor
7f99d9019a API bump and submodule updates 2017-07-14 08:52:27 +01:00