├── .gitignore
├── SimpleHome
├── phpstan.neon
├── icon.png
├── composer.json
├── plugin.yml
├── resources
│ └── config.yml
├── README.md
├── src
│ └── czechpmdevs
│ │ └── simplehome
│ │ ├── event
│ │ └── PlayerHomeTeleportEvent.php
│ │ ├── commands
│ │ ├── SethomeCommand.php
│ │ ├── HomeCommand.php
│ │ └── RemovehomeCommand.php
│ │ ├── Home.php
│ │ └── SimpleHome.php
└── composer.lock
├── Snow
├── icon.png
├── README.md
├── plugin.yml
├── composer.json
├── src
│ └── czechpmdevs
│ │ └── snow
│ │ └── Snow.php
└── composer.lock
├── VoidTP
├── plugin.yml
└── src
│ └── VoidTP
│ └── Main.php
├── BankPlugin
├── plugin.yml
└── src
│ └── bank
│ └── BankPlugin.php
├── ServerTransfer
├── resources
│ └── config.yml
├── plugin.yml
└── src
│ └── ServerTransfer
│ ├── Main.php
│ └── EventListener.php
├── UnlimitedSlots
├── plugin.yml
└── src
│ └── UnlimitedSlots
│ └── Main.php
├── WelcomeMessage
├── plugin.yml
└── src
│ └── WelcomeMessage
│ └── Main.php
├── BlockInfo
├── plugin.yml
└── src
│ └── BlockInfo
│ └── Main.php
├── .poggit.yml
├── README.md
└── LICENSE
/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | vendor
--------------------------------------------------------------------------------
/SimpleHome/phpstan.neon:
--------------------------------------------------------------------------------
1 | parameters:
2 | level: 9
3 | paths:
4 | - src
--------------------------------------------------------------------------------
/Snow/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CzechPMDevs/SmallPlugins/HEAD/Snow/icon.png
--------------------------------------------------------------------------------
/SimpleHome/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CzechPMDevs/SmallPlugins/HEAD/SimpleHome/icon.png
--------------------------------------------------------------------------------
/Snow/README.md:
--------------------------------------------------------------------------------
1 | # Snow
2 |
3 |
4 |
5 | - Doesn't work in y < 80 (client side)
6 |
--------------------------------------------------------------------------------
/VoidTP/plugin.yml:
--------------------------------------------------------------------------------
1 | name: VoidTP
2 | api: [3.0.0-ALPHA7, 3.0.0-ALPHA8, 3.0.0-ALPHA9, 3.0.0-ALPHA10, 3.0.0-ALPHA11, 3.0.0-APLHA12]
3 | version: 1.0.1
4 | author: VixikHD
5 | main: VoidTP\Main
--------------------------------------------------------------------------------
/BankPlugin/plugin.yml:
--------------------------------------------------------------------------------
1 | name: BankPlugin
2 | api: [3.0.0-ALPHA9, 3.0.0-ALPHA10, 3.0.0-ALHPA11, 3.0.0-ALPHA12]
3 | version: 1.0.1
4 | main: bank\BankPlugin
5 | author: CzechPMDevs
6 | authors: [VixikCZ]
--------------------------------------------------------------------------------
/ServerTransfer/resources/config.yml:
--------------------------------------------------------------------------------
1 | ---
2 | #Plugin transfer all players to this server on server disable
3 | disable-server-ip: play.yourserveradress.com
4 | disable-server-port: 19132
5 | ...
6 |
--------------------------------------------------------------------------------
/Snow/plugin.yml:
--------------------------------------------------------------------------------
1 | name: Snow
2 | author: VixikCZ
3 | api: 4.0.0
4 | version: 1.1.0
5 | main: czechpmdevs\snow\Snow
6 | description: Plugin which adds falling snow to your PocketMine server
7 |
8 | mcpe-protocols:
9 | - 475
--------------------------------------------------------------------------------
/UnlimitedSlots/plugin.yml:
--------------------------------------------------------------------------------
1 | name: UnlimitedSlots
2 | api: [3.0.0-ALPHA5, 3.0.0-ALPHA6, 3.0.0-ALPHA7, 3.0.0-ALPHA8, 3.0.0-ALPHA9, 3.0.0-ALPHA10, 3.0.0-ALPHA11, 3.0.0-APLHA12]
3 | version: 1.0.1
4 | author: GamakCZ
5 | main: UnlimitedSlots\Main
6 |
--------------------------------------------------------------------------------
/WelcomeMessage/plugin.yml:
--------------------------------------------------------------------------------
1 | name: WelcomeMessage
2 | api: [3.0.0-ALPHA5, 3.0.0-ALPHA6, 3.0.0-ALPHA7, 3.0.0-ALPHA8, 3.0.0-ALPHA9, 3.0.0-ALPHA10, 3.0.0-ALPHA11, 3.0.0-APLHA12]
3 | version: 1.0.1
4 | author: GamakCZ
5 | main: WelcomeMessage\Main
6 |
--------------------------------------------------------------------------------
/BlockInfo/plugin.yml:
--------------------------------------------------------------------------------
1 | name: BlockInfo
2 | api: [3.0.0, 3.0.0-ALPHA5, 3.0.0-ALPHA6, 3.0.0-ALPHA7, 3.0.0-ALPHA8, 3.0.0-ALPHA9, 3.0.0-ALPHA10, 3.0.0-ALPHA11, 3.0.0-ALPHA12]
3 | author: GamakCZ
4 | version: 1.0.1
5 | main: BlockInfo\Main
6 |
7 | commands:
8 | bi:
9 | description: Informations about blocks
10 |
--------------------------------------------------------------------------------
/.poggit.yml:
--------------------------------------------------------------------------------
1 | --- # Poggit-CI Manifest. Open the CI at https://poggit.pmmp.io/ci/CzechPMDevs/SmallPlugins
2 | branches:
3 | - master
4 | projects:
5 | ServerTransfer:
6 | path: ServerTransfer/
7 | WelcomeMessage:
8 | path: WelcomeMessage/
9 | UnlimitedSlots:
10 | path: UnlimitedSlots/
11 | BlockInfo:
12 | path: BlockInfo/
13 | SimpleHome:
14 | path: SimpleHome/
15 | BankPlugin:
16 | path: BankPlugin/
17 | Snow:
18 | path: Snow/
19 | ...
20 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # SmallPlugins
2 | Repository for small pmmp plugins
3 |
4 | - ServerTransfer: https://poggit.pmmp.io/ci/CzechPMDevs/SmallPlugins/ServerTransfer
5 |
6 | - WelcomeMessage: https://poggit.pmmp.io/ci/CzechPMDevs/SmallPlugins/WelcomeMessage
7 |
8 | - UnlimitedSlots: https://poggit.pmmp.io/ci/CzechPMDevs/SmallPlugins/UnlimitedSlots
9 |
10 | - BlockInfo: https://poggit.pmmp.io/ci/CzechPMDevs/SmallPlugins/BlockInfo
11 |
12 | - SimpleHome: https://poggit.pmmp.io/ci/CzechPMDevs/SmallPlugins/SimpleHome
13 |
--------------------------------------------------------------------------------
/SimpleHome/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "czechpmdevs/simplehome",
3 | "description": "Simple plugin to manage in-game homes.",
4 | "minimum-stability": "dev",
5 | "license": "Apache-2.0",
6 | "require": {
7 | "php": "^8.0",
8 | "ext-yaml": "*",
9 | "ext-pthreads": "*",
10 | "ext-zlib": "*",
11 | "ext-json": "*",
12 | "pocketmine/pocketmine-mp": "4.0.0"
13 | },
14 | "require-dev": {
15 | "phpstan/phpstan": "1.2.0"
16 | },
17 | "autoload": {
18 | "psr-4": {
19 | "": ["src"]
20 | }
21 | }
22 | }
--------------------------------------------------------------------------------
/Snow/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "czechpmdevs/snow",
3 | "description": "Plugin which adds falling snow to your PocketMine server",
4 | "minimum-stability": "dev",
5 | "license": "Apache-2.0",
6 | "require": {
7 | "php": "^8.0",
8 | "ext-yaml": "*",
9 | "ext-pthreads": "*",
10 | "ext-zlib": "*",
11 | "ext-json": "*",
12 | "pocketmine/pocketmine-mp": "4.0.0"
13 | },
14 | "require-dev": {
15 | "phpstan/phpstan": "1.2.0"
16 | },
17 | "autoload": {
18 | "psr-4": {
19 | "": ["src"]
20 | }
21 | }
22 | }
--------------------------------------------------------------------------------
/UnlimitedSlots/src/UnlimitedSlots/Main.php:
--------------------------------------------------------------------------------
1 | getServer()->getPluginManager()->registerEvents($this,$this);
13 | }
14 |
15 | public function onQuery(QueryRegenerateEvent $event) {
16 | $event->setMaxPlayerCount(intval(count($this->getServer()->getOnlinePlayers())+1));
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/ServerTransfer/plugin.yml:
--------------------------------------------------------------------------------
1 | name: ServerTransfer
2 | api: [3.0.0-ALPHA7, 3.0.0-ALPHA8, 3.0.0-ALPHA9, 3.0.0-ALPHA10, 3.0.0-ALPHA11, 3.0.0-ALPHA12]
3 | version: 1.0.1
4 | author: GamakCZ
5 | main: ServerTransfer\Main
6 | description: Simple Transfer plugin
7 |
8 | commands:
9 | transfer:
10 | description: Transfer player to another server
11 | aliases:
12 | - servertransfer
13 |
14 | permissions:
15 | st.transfer:
16 | description: transfer to other servers
17 | default: op
18 | st.transfer.other:
19 | description: transferother players to other servers
20 | default: op
21 |
--------------------------------------------------------------------------------
/SimpleHome/plugin.yml:
--------------------------------------------------------------------------------
1 | name: SimpleHome
2 | api: [4.0.0]
3 | version: 1.1.0
4 | main: czechpmdevs\simplehome\SimpleHome
5 | author: CzechPMDevs
6 | authors: [VixikCZ]
7 | description: Simple home plugin
8 | website: https://github.com/CzechPMDevs/SmallPlugins/SimpleHome
9 |
10 | permissions:
11 | simplehome.limit:
12 | default: op
13 | description: Allows player to have unlimited count of homes
14 | simplehome.command.sethome:
15 | default: true
16 | description: Permission for /sethome
17 | simplehome.command.home:
18 | default: true
19 | description: Permission for /home
20 | simplehome.command.delhome:
21 | default: true
22 | description: Permission for /delhome
23 |
--------------------------------------------------------------------------------
/SimpleHome/resources/config.yml:
--------------------------------------------------------------------------------
1 | ---
2 | #
3 | # CzechPMDevs >>> SimpleHome
4 | # - Main configuration file
5 | #
6 |
7 | # Prefix
8 | prefix: '§3[SimpleHome]§e'
9 |
10 | # Limit of homes per player (-1 = no limit)
11 | limit: -1
12 |
13 | # Messages:
14 | sethome-message: '§aHome %1 has been successfully set.'
15 | sethome-usage: '§cUsage: §7/sethome '
16 | sethome-max: '§cHome %1 can be set. You have reached the maximum number of homes.'
17 | delhome-message: '§aHome %1 has been successfully deleted.'
18 | delhome-usage: '§cUsage: §7/delhome '
19 | home-message: '§aYou are successfully teleported to home %1.'
20 | home-notexists: '§cHome %1 does not exists!'
21 | home-list: '§bHomes (%1): §7%2'
22 | no-home: '§cYou have not homes'
23 | ...
--------------------------------------------------------------------------------
/VoidTP/src/VoidTP/Main.php:
--------------------------------------------------------------------------------
1 | getServer()->getPluginManager()->registerEvents($this, $this);
18 | }
19 |
20 | /**
21 | * @param EntityDamageEvent $event
22 | */
23 | public function onFall(EntityDamageEvent $event) {
24 | $entity = $event->getEntity();
25 | if($entity instanceof Player) {
26 | if($entity->getLevel()->getName() == $this->getServer()->getDefaultLevel()->getName()) {
27 | if($entity->getY() <= 0) {
28 | $entity->teleport($this->getServer()->getDefaultLevel()->getSpawnLocation());
29 | $event->setCancelled();
30 | }
31 | }
32 | }
33 | }
34 | }
--------------------------------------------------------------------------------
/WelcomeMessage/src/WelcomeMessage/Main.php:
--------------------------------------------------------------------------------
1 | getServer()->getPluginManager()->registerEvents($this,$this);
13 | if(!file_exists($this->getDataFolder())) {
14 | @mkdir($this->getDataFolder());
15 | $this->getConfig()->set("welcome-message", "Welcome @player on my server...{LINE}- plugin WelcomeMessage by CzechPMDevs");
16 | $this->getConfig()->save();
17 | }
18 |
19 | }
20 | public function onJoin(PlayerJoinEvent $event) {
21 | $player = $event->getPlayer();
22 | $event->setJoinMessage("");
23 | $msg = $this->getConfig()->get("welcome-message");
24 | $msg = str_replace("{LINE}", "\n", $msg);
25 | $msg = str_replace("@player", $player->getName(), $msg);
26 | $player->sendMessage($msg);
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/SimpleHome/README.md:
--------------------------------------------------------------------------------
1 | # SimpleHome
2 |
3 | _**The easiest plugin to create and edit virtual homes.**_
4 |
5 | ### Commands:
6 |
7 | - Sethome Command:
8 | - Create home
9 | - permission: sh.cmd.sethome (no-op)
10 | - usage: /sethome
11 | - Home Command:
12 | - Displays list of homes or teleport to home
13 | - permission: sh.cmd.home (no-op)
14 | - usage: /home or /home
15 | - Delhome Command:
16 | - Remove home
17 | - permission: sh.cmd.delhome (no-op)
18 | - usage: /delhome
19 |
20 | ### Permissions:
21 |
22 | - sh.cmd:
23 | - permission for all commands
24 | - default: TRUE
25 |
26 | ### API:
27 |
28 | - get SimpleHome instance
29 |
30 | `$simpleHome = SimpleHome::getInstance();`
31 |
32 |
33 | - get the player's home
34 |
35 | `$home = $simpleHome->getPlayerHome(Player $player, string $homeName);`
36 |
37 | - teleport player to his home
38 |
39 | `$home->teleport($player);`
40 |
41 | - create new home
42 |
43 | `$simpleHome->setPlayerHome($player, $newHome = new Home($player, [$x, $y, $z, $levelName], $homeName));`
44 |
45 | - delete home
46 |
47 | `$simpleHome->deleteHome($player, $newHome);`
48 |
49 | - get home list
50 |
51 | `$simpleHome->getHomeList();`
--------------------------------------------------------------------------------
/ServerTransfer/src/ServerTransfer/Main.php:
--------------------------------------------------------------------------------
1 | listener = new EventListener($this);
17 | $this->getServer()->getPluginManager()->registerEvents($this->listener, $this);
18 | if(!file_exists($this->getDataFolder())) {
19 | @mkdir($this->getDataFolder());
20 | }
21 | if(!is_file($this->getDataFolder()."/config.yml")) {
22 | $this->saveResource("/config.yml");
23 | }
24 | }
25 |
26 | public function transfer(Player $player, $ip, $port = 19132) {
27 | $pk = new TransferPacket();
28 | $pk->address = $ip;
29 | $pk->port = $port;
30 | $player->dataPacket($pk);
31 | }
32 |
33 | public function onDisable() {
34 | $players = Server::getInstance()->getOnlinePlayers();
35 | if ($this->getServer()->isRunning() == false) {
36 | foreach ($players as $p) {
37 | $this->transfer($p, $this->getConfig()->get("disable-server-ip"), intval($this->getConfig()->get("disable-server-port")));
38 | }
39 | }
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/BlockInfo/src/BlockInfo/Main.php:
--------------------------------------------------------------------------------
1 | getServer()->getPluginManager()->registerEvents($this,$this);
18 | }
19 |
20 | public function onCommand(CommandSender $s, Command $cmd, string $label, array $args):bool {
21 | if($s instanceof Player && $s->isOp()) {
22 | if($cmd->getName() == "bi" && $args[0] == "add") {
23 | $s->sendMessage("§aSuccessfully added to list.");
24 | $this->player[$s->getName()] = 1;
25 | }
26 | }
27 | else {
28 | $s->sendMessage("§cYou does not have permissions to use this command!");
29 | }
30 | }
31 |
32 | public function onTouch(PlayerInteractEvent $e) {
33 | if(isset($this->player[$e->getPlayer()->getName()])) {
34 | $e->getPlayer()->sendMessage("§5X: §6{$e->getBlock()->getX()}\n".
35 | "§5Y: §6{$e->getBlock()->getY()}\n".
36 | "§5Z: §6{$e->getBlock()->getZ()}\n".
37 | "§5ID: §6{$e->getBlock()->getId()}\n".
38 | "§5NAME: §6{$e->getBlock()->getName()}");
39 | }
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/SimpleHome/src/czechpmdevs/simplehome/event/PlayerHomeTeleportEvent.php:
--------------------------------------------------------------------------------
1 | owner = $owner;
37 | $this->home = $home;
38 | }
39 |
40 | /**
41 | * @return Player Returns owner of the home
42 | */
43 | public function getPlayer(): Player {
44 | return $this->owner;
45 | }
46 |
47 | /**
48 | * @return Home Returns Home player was teleported to
49 | */
50 | public function getHome(): Home {
51 | return $this->home;
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/ServerTransfer/src/ServerTransfer/EventListener.php:
--------------------------------------------------------------------------------
1 | plugin = $plugin;
15 | }
16 |
17 | public function onCommand(PlayerCommandPreprocessEvent $event) {
18 | $player = $event->getPlayer();
19 | $cmd = explode(" ", strtolower($event->getMessage()));
20 | if($cmd[0] == "/transfer" || $cmd[0] == "/transferserver") {
21 |
22 | if(isset($cmd[1]) && isset($cmd[2])) {
23 | if($player->hasPermission("st.transfer")) {
24 | $this->plugin->transfer($player,$cmd[1], $cmd[2]);
25 | $this->plugin->getServer()->broadcastMessage(str_replace(":19132","","[Transfer] Player {$player->getName()} is transfered to {$cmd[1]}:{$cmd[2]}"));
26 | }
27 | }
28 | elseif (isset($cmd[1]) && isset($cmd[2]) && isset($cmd[3])) {
29 | if($player->hasPermission("st.transfer.other")) {
30 | $pl = $this->plugin->getServer()->getPlayer($cmd[3]);
31 | if($pl->isOnline()) {
32 | $this->plugin->transfer($pl, $cmd[1], $cmd[2]);
33 | $this->plugin->getServer()->broadcastMessage(str_replace(":19132","","[Transfer] Player {$pl->getName()} is transfered to {$cmd[1]}:{$cmd[2]}"));
34 | }
35 | }
36 | else {
37 | $player->sendMessage("[Transfer] use /transfer (player)");
38 | }
39 | }
40 | else {
41 | $player->sendMessage("[Transfer] use /transfer (player)");
42 | }
43 | $event->setCancelled(true);
44 | }
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/SimpleHome/src/czechpmdevs/simplehome/commands/SethomeCommand.php:
--------------------------------------------------------------------------------
1 | setPermission("simplehome.command.sethome");
39 | $this->plugin = $plugin;
40 | }
41 |
42 | public function execute(CommandSender $sender, string $commandLabel, array $args) {
43 | if(!$sender instanceof Player) {
44 | $sender->sendMessage("This command can be used only in-game!");
45 | return false;
46 | }
47 | if(empty($args[0])) {
48 | $sender->sendMessage($this->plugin->getPrefix() . $this->plugin->messages["sethome-usage"]);
49 | return false;
50 | }
51 | $this->plugin->setPlayerHome($sender, Home::fromPosition($sender->getPosition(), $args[0], $sender));
52 | $sender->sendMessage($this->plugin->getPrefix() . str_replace("%1", $args[0], $this->plugin->messages["sethome-message"]));
53 | return false;
54 | }
55 |
56 | public function getOwningPlugin(): Plugin {
57 | return $this->plugin;
58 | }
59 | }
60 |
--------------------------------------------------------------------------------
/SimpleHome/src/czechpmdevs/simplehome/Home.php:
--------------------------------------------------------------------------------
1 | getServer()->getWorldManager()->isWorldLoaded((string)$data[3])) {
38 | $player->getServer()->getWorldManager()->loadWorld((string)$data[3]);
39 | }
40 | parent::__construct((int)$data[0], (int)$data[1], (int)$data[2], Server::getInstance()->getWorldManager()->getWorldByName((string)$data[3]));
41 | $this->owner = $player;
42 | $this->name = $name;
43 | }
44 |
45 | public static function fromPosition(Position $position, string $name, Player $player): Home {
46 | return new Home($player, [(int)$position->getX(), (int)$position->getY(), (int)$position->getZ(), $position->getWorld()->getFolderName()], $name);
47 |
48 | }
49 |
50 | public final function getName(): string {
51 | return $this->name;
52 | }
53 |
54 | public final function teleport(Player $player): void {
55 | $event = new PlayerHomeTeleportEvent($player, $this);
56 |
57 | $event->call();
58 |
59 | if(!$event->isCancelled()) {
60 | $player->teleport($this->asPosition());
61 | }
62 | }
63 |
64 | public final function getOwner(): Player {
65 | return $this->owner;
66 | }
67 | }
68 |
--------------------------------------------------------------------------------
/SimpleHome/src/czechpmdevs/simplehome/commands/HomeCommand.php:
--------------------------------------------------------------------------------
1 | setPermission("simplehome.command.home");
38 |
39 | $this->plugin = $plugin;
40 | }
41 |
42 | public function execute(CommandSender $sender, string $commandLabel, array $args) {
43 | if(!$sender instanceof Player) {
44 | $sender->sendMessage("This command can be used only in-game!");
45 | return false;
46 | }
47 | if(!isset($args[0])) {
48 | $sender->sendMessage($this->plugin->getPrefix() . $this->plugin->getDisplayHomeList($sender));
49 | return false;
50 | }
51 | if(!$this->plugin->getPlayerHome($sender, $args[0])) {
52 | $sender->sendMessage($this->plugin->getPrefix() . str_replace("%1", $args[0], $this->plugin->messages["home-notexists"]));
53 | return false;
54 | }
55 | $this->plugin->getPlayerHome($sender, $args[0])->teleport($sender);
56 | $sender->sendMessage($this->plugin->getPrefix() . str_replace("%1", $args[0], $this->plugin->messages["home-message"]));
57 | return false;
58 | }
59 |
60 | public function getOwningPlugin(): Plugin {
61 | return $this->plugin;
62 | }
63 | }
--------------------------------------------------------------------------------
/BankPlugin/src/bank/BankPlugin.php:
--------------------------------------------------------------------------------
1 | getLogger()->critical("EconomyAPI plugin does not found!");
32 | $this->getServer()->getPluginManager()->disablePlugin($this);
33 | return;
34 | }
35 | self::$instance = $this;
36 | $this->refreshTask = new class extends Task {
37 | public function onRun(int $currentTick){
38 | BankPlugin::$instance->check();
39 | }
40 | };
41 | $this->getServer()->getScheduler()->scheduleRepeatingTask($this->refreshTask, 20*10*60);
42 | $this->getServer()->getPluginManager()->registerEvents($this, $this);
43 | }
44 |
45 | /**
46 | * @param PlayerJoinEvent $event
47 | */
48 | public function onJoin(PlayerJoinEvent $event) {
49 | $this->players[$event->getPlayer()->getName()] = $event->getPlayer();
50 | }
51 |
52 | public function check() {
53 | foreach ($this->players as $name => $player) {
54 | if (!$player instanceof Player || !$player->isOnline()) {
55 | unset($this->players[$name]);
56 | return;
57 | }
58 | $this->addMoney($player, $this->getMoney($player) / 100);
59 | }
60 | }
61 |
62 | /**
63 | * @param Player $player
64 | * @param int $money
65 | */
66 | private function addMoney(Player $player, int $money) {
67 | return EconomyAPI::getInstance()->addMoney($player, $money);
68 | }
69 |
70 | /**
71 | * @param Player $player
72 | */
73 | private function getMoney(Player $player) {
74 | return EconomyAPI::getInstance()->myMoney($player);
75 | }
76 |
77 | }
--------------------------------------------------------------------------------
/SimpleHome/src/czechpmdevs/simplehome/commands/RemovehomeCommand.php:
--------------------------------------------------------------------------------
1 | setPermission("simplehome.command.delhome");
39 | $this->plugin = $plugin;
40 | }
41 |
42 | public function execute(CommandSender $sender, string $commandLabel, array $args) {
43 | if(!$sender instanceof Player) {
44 | $sender->sendMessage("This command can be used only in-game!");
45 | return false;
46 | }
47 | if(!isset($args[0])) {
48 | $sender->sendMessage($this->plugin->getPrefix() . $this->plugin->messages["delhome-usage"]);
49 | return false;
50 | }
51 | if(!in_array($args[0], $this->plugin->getHomeList($sender))) {
52 | $sender->sendMessage($this->plugin->getPrefix() . str_replace("%1", $args[0], $this->plugin->messages["home-notexists"]));
53 | return false;
54 | }
55 | $this->plugin->removeHome($sender, Home::fromPosition($sender->getPosition(), $args[0], $sender));
56 | $sender->sendMessage(str_replace("%1", $args[0], $this->plugin->getPrefix() . $this->plugin->messages["delhome-message"]));
57 | return false;
58 | }
59 |
60 | public function getOwningPlugin(): Plugin {
61 | return $this->plugin;
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/Snow/src/czechpmdevs/snow/Snow.php:
--------------------------------------------------------------------------------
1 | getServer()->getPluginManager()->registerEvents($this, $this);
30 |
31 | $compressedBiomeData = @file_get_contents($path = Path::join(BEDROCK_DATA_PATH, self::LOCAL_DEFINITIONS_PATH));
32 | if(!$compressedBiomeData) {
33 | throw new RuntimeException("Failed to read a file $path");
34 | }
35 |
36 | $nbt = (new NetworkNbtSerializer())->read($compressedBiomeData)->mustGetCompoundTag();
37 | foreach ($nbt->getValue() as $biomeName => $biomeCompound) {
38 | if(!$biomeCompound instanceof CompoundTag) {
39 | throw new AssumptionFailedError("Received invalid or corrupted biome data. Try looking for a new plugin version at poggit");
40 | }
41 |
42 | foreach ($biomeCompound as $index => $value) {
43 | if($index === "temperature") {
44 | $value = new FloatTag(-3 * lcg_value());
45 | }
46 |
47 | $biomeCompound->setTag($index, $value);
48 | }
49 |
50 | $nbt->setTag($biomeName, $biomeCompound);
51 | }
52 |
53 | try {
54 | StaticPacketCache::getInstance()->getBiomeDefs()->definitions = new CacheableNbt($nbt);
55 | } catch(Throwable) {
56 | throw new AssumptionFailedError("There were some changes in protocol library independent on protocol change. Try looking for a new plugin version at poggit");
57 | }
58 | }
59 |
60 | public function onJoin(PlayerJoinEvent $event): void {
61 | $event->getPlayer()->getNetworkSession()->sendDataPacket(LevelEventPacket::create(
62 | eventId: LevelEvent::START_RAIN,
63 | eventData: 100000, // Around 24 hours of snowing, hope player won't be afking that long time
64 | position: null
65 | ));
66 | }
67 | }
--------------------------------------------------------------------------------
/SimpleHome/src/czechpmdevs/simplehome/SimpleHome.php:
--------------------------------------------------------------------------------
1 | */
51 | public array $messages = [];
52 | /** @phpstan-var array> $homes */
53 | public array $homes = [];
54 | /** @var Command[] $commands */
55 | private array $commands = [];
56 |
57 | public function onEnable(): void {
58 | self::$instance = $this;
59 | $this->registerCommands();
60 | $this->loadData();
61 | }
62 |
63 | public function onDisable(): void {
64 | $this->saveData();
65 | }
66 |
67 | /**
68 | * @return string[]
69 | */
70 | public function getHomeList(Player $player): array {
71 | $list = [];
72 |
73 | if(!isset($this->homes[$player->getName()])) {
74 | $this->homes[$player->getName()] = [];
75 | }
76 |
77 | foreach($this->homes[$player->getName()] as $homeName => $homeData) {
78 | $list[] = $homeName;
79 | }
80 |
81 | return $list;
82 | }
83 |
84 | public function getDisplayHomeList(Player $player): string {
85 | $list = $this->getHomeList($player);
86 |
87 | if(count($list) == 0) {
88 | return $this->messages["no-home"];
89 | }
90 |
91 | return str_replace(
92 | ["%1", "%2"],
93 | [(string)count($list), implode(", ", $list)],
94 | $this->messages["home-list"]
95 | );
96 | }
97 |
98 | public function removeHome(Player $player, Home $home): void {
99 | unset($this->homes[$player->getName()][$home->getName()]);
100 | }
101 |
102 | public function setPlayerHome(Player $player, Home $home): void {
103 | if($this->messages["limit"] != -1 && !$player->hasPermission("simplehome.limit")) {
104 | if(count($this->getHomeList($player)) > $this->messages["limit"]) {
105 | $player->sendMessage(str_replace("%1", $home->getName(), $this->messages["sethome-max"]));
106 | return;
107 | }
108 | }
109 | $this->homes[$player->getName()][$home->getName()] = [$home->getX(), $home->getY(), $home->getZ(), $home->getWorld()->getFolderName()];
110 | }
111 |
112 | public function getPlayerHome(Player $player, string $home): ?Home {
113 | if(isset($this->homes[$player->getName()][$home])) {
114 | return new Home($player, $this->homes[$player->getName()][$home], $home);
115 | } else {
116 | return null;
117 | }
118 | }
119 |
120 | private function registerCommands(): void {
121 | $this->commands["delhome"] = new RemovehomeCommand($this);
122 | $this->commands["home"] = new HomeCommand($this);
123 | $this->commands["sethome"] = new SethomeCommand($this);
124 | foreach($this->commands as $command) {
125 | $this->getServer()->getCommandMap()->register("simplehome", $command);
126 | }
127 | }
128 |
129 |
130 | private function saveData(): void {
131 | foreach($this->homes as $name => $data) {
132 | $config = new Config($this->getDataFolder() . "players/$name.yml", Config::YAML);
133 | $config->set("homes", $data);
134 | $config->save();
135 | }
136 | }
137 |
138 | private function loadData(): void {
139 | if(!is_dir($this->getDataFolder())) {
140 | @mkdir($this->getDataFolder());
141 | }
142 | if(!is_dir($this->getDataFolder() . "players")) {
143 | @mkdir($this->getDataFolder() . "players");
144 | } else {
145 | $files = glob($this->getDataFolder() . "players/*.yml");
146 | if(!$files) {
147 | $files = [];
148 | }
149 | foreach($files as $file) {
150 | $config = yaml_parse_file($file);
151 | if(!is_array($config)) {
152 | continue;
153 | }
154 |
155 | $homes = $config["homes"] ?? [];
156 | $this->homes[basename($file, ".yml")] = array_map([$this, 'loadHome'], is_array($homes) ? $homes : []);
157 | }
158 | }
159 | if(!is_file($this->getDataFolder() . "/config.yml")) {
160 | $this->saveResource("/config.yml");
161 | }
162 |
163 | $messages = yaml_parse_file($this->getDataFolder() . "/config.yml");
164 | if(!is_array($messages)) {
165 | throw new AssumptionFailedError("Invalid or corrupted file with messages");
166 | }
167 |
168 | foreach(Utils::stringifyKeys($messages) as $key => $value) {
169 | $this->messages[$key] = $value;
170 | }
171 | }
172 |
173 | /**
174 | * @phpstan-return array{0: int, 1: int, 2: int, 3: string}
175 | */
176 | private function loadHome(mixed $configData): array {
177 | if(
178 | !is_array($configData) ||
179 | !isset($configData[0]) || !isset($configData[1]) || !isset($configData[2]) || !isset($configData[3]) ||
180 | !is_int($configData[0]) || !is_int($configData[1]) || !is_int($configData[2]) ||
181 | !is_string($configData[3])
182 | ) {
183 | throw new AssumptionFailedError("Invalid or corrupted data received");
184 | }
185 |
186 | return $configData;
187 | }
188 |
189 | public function getPrefix(): string {
190 | return $this->messages["prefix"] . " ";
191 | }
192 |
193 | public static function getInstance(): SimpleHome {
194 | return self::$instance;
195 | }
196 | }
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Apache License
2 | Version 2.0, January 2004
3 | http://www.apache.org/licenses/
4 |
5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6 |
7 | 1. Definitions.
8 |
9 | "License" shall mean the terms and conditions for use, reproduction,
10 | and distribution as defined by Sections 1 through 9 of this document.
11 |
12 | "Licensor" shall mean the copyright owner or entity authorized by
13 | the copyright owner that is granting the License.
14 |
15 | "Legal Entity" shall mean the union of the acting entity and all
16 | other entities that control, are controlled by, or are under common
17 | control with that entity. For the purposes of this definition,
18 | "control" means (i) the power, direct or indirect, to cause the
19 | direction or management of such entity, whether by contract or
20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the
21 | outstanding shares, or (iii) beneficial ownership of such entity.
22 |
23 | "You" (or "Your") shall mean an individual or Legal Entity
24 | exercising permissions granted by this License.
25 |
26 | "Source" form shall mean the preferred form for making modifications,
27 | including but not limited to software source code, documentation
28 | source, and configuration files.
29 |
30 | "Object" form shall mean any form resulting from mechanical
31 | transformation or translation of a Source form, including but
32 | not limited to compiled object code, generated documentation,
33 | and conversions to other media types.
34 |
35 | "Work" shall mean the work of authorship, whether in Source or
36 | Object form, made available under the License, as indicated by a
37 | copyright notice that is included in or attached to the work
38 | (an example is provided in the Appendix below).
39 |
40 | "Derivative Works" shall mean any work, whether in Source or Object
41 | form, that is based on (or derived from) the Work and for which the
42 | editorial revisions, annotations, elaborations, or other modifications
43 | represent, as a whole, an original work of authorship. For the purposes
44 | of this License, Derivative Works shall not include works that remain
45 | separable from, or merely link (or bind by name) to the interfaces of,
46 | the Work and Derivative Works thereof.
47 |
48 | "Contribution" shall mean any work of authorship, including
49 | the original version of the Work and any modifications or additions
50 | to that Work or Derivative Works thereof, that is intentionally
51 | submitted to Licensor for inclusion in the Work by the copyright owner
52 | or by an individual or Legal Entity authorized to submit on behalf of
53 | the copyright owner. For the purposes of this definition, "submitted"
54 | means any form of electronic, verbal, or written communication sent
55 | to the Licensor or its representatives, including but not limited to
56 | communication on electronic mailing lists, source code control systems,
57 | and issue tracking systems that are managed by, or on behalf of, the
58 | Licensor for the purpose of discussing and improving the Work, but
59 | excluding communication that is conspicuously marked or otherwise
60 | designated in writing by the copyright owner as "Not a Contribution."
61 |
62 | "Contributor" shall mean Licensor and any individual or Legal Entity
63 | on behalf of whom a Contribution has been received by Licensor and
64 | subsequently incorporated within the Work.
65 |
66 | 2. Grant of Copyright License. Subject to the terms and conditions of
67 | this License, each Contributor hereby grants to You a perpetual,
68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69 | copyright license to reproduce, prepare Derivative Works of,
70 | publicly display, publicly perform, sublicense, and distribute the
71 | Work and such Derivative Works in Source or Object form.
72 |
73 | 3. Grant of Patent License. Subject to the terms and conditions of
74 | this License, each Contributor hereby grants to You a perpetual,
75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76 | (except as stated in this section) patent license to make, have made,
77 | use, offer to sell, sell, import, and otherwise transfer the Work,
78 | where such license applies only to those patent claims licensable
79 | by such Contributor that are necessarily infringed by their
80 | Contribution(s) alone or by combination of their Contribution(s)
81 | with the Work to which such Contribution(s) was submitted. If You
82 | institute patent litigation against any entity (including a
83 | cross-claim or counterclaim in a lawsuit) alleging that the Work
84 | or a Contribution incorporated within the Work constitutes direct
85 | or contributory patent infringement, then any patent licenses
86 | granted to You under this License for that Work shall terminate
87 | as of the date such litigation is filed.
88 |
89 | 4. Redistribution. You may reproduce and distribute copies of the
90 | Work or Derivative Works thereof in any medium, with or without
91 | modifications, and in Source or Object form, provided that You
92 | meet the following conditions:
93 |
94 | (a) You must give any other recipients of the Work or
95 | Derivative Works a copy of this License; and
96 |
97 | (b) You must cause any modified files to carry prominent notices
98 | stating that You changed the files; and
99 |
100 | (c) You must retain, in the Source form of any Derivative Works
101 | that You distribute, all copyright, patent, trademark, and
102 | attribution notices from the Source form of the Work,
103 | excluding those notices that do not pertain to any part of
104 | the Derivative Works; and
105 |
106 | (d) If the Work includes a "NOTICE" text file as part of its
107 | distribution, then any Derivative Works that You distribute must
108 | include a readable copy of the attribution notices contained
109 | within such NOTICE file, excluding those notices that do not
110 | pertain to any part of the Derivative Works, in at least one
111 | of the following places: within a NOTICE text file distributed
112 | as part of the Derivative Works; within the Source form or
113 | documentation, if provided along with the Derivative Works; or,
114 | within a display generated by the Derivative Works, if and
115 | wherever such third-party notices normally appear. The contents
116 | of the NOTICE file are for informational purposes only and
117 | do not modify the License. You may add Your own attribution
118 | notices within Derivative Works that You distribute, alongside
119 | or as an addendum to the NOTICE text from the Work, provided
120 | that such additional attribution notices cannot be construed
121 | as modifying the License.
122 |
123 | You may add Your own copyright statement to Your modifications and
124 | may provide additional or different license terms and conditions
125 | for use, reproduction, or distribution of Your modifications, or
126 | for any such Derivative Works as a whole, provided Your use,
127 | reproduction, and distribution of the Work otherwise complies with
128 | the conditions stated in this License.
129 |
130 | 5. Submission of Contributions. Unless You explicitly state otherwise,
131 | any Contribution intentionally submitted for inclusion in the Work
132 | by You to the Licensor shall be under the terms and conditions of
133 | this License, without any additional terms or conditions.
134 | Notwithstanding the above, nothing herein shall supersede or modify
135 | the terms of any separate license agreement you may have executed
136 | with Licensor regarding such Contributions.
137 |
138 | 6. Trademarks. This License does not grant permission to use the trade
139 | names, trademarks, service marks, or product names of the Licensor,
140 | except as required for reasonable and customary use in describing the
141 | origin of the Work and reproducing the content of the NOTICE file.
142 |
143 | 7. Disclaimer of Warranty. Unless required by applicable law or
144 | agreed to in writing, Licensor provides the Work (and each
145 | Contributor provides its Contributions) on an "AS IS" BASIS,
146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147 | implied, including, without limitation, any warranties or conditions
148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149 | PARTICULAR PURPOSE. You are solely responsible for determining the
150 | appropriateness of using or redistributing the Work and assume any
151 | risks associated with Your exercise of permissions under this License.
152 |
153 | 8. Limitation of Liability. In no event and under no legal theory,
154 | whether in tort (including negligence), contract, or otherwise,
155 | unless required by applicable law (such as deliberate and grossly
156 | negligent acts) or agreed to in writing, shall any Contributor be
157 | liable to You for damages, including any direct, indirect, special,
158 | incidental, or consequential damages of any character arising as a
159 | result of this License or out of the use or inability to use the
160 | Work (including but not limited to damages for loss of goodwill,
161 | work stoppage, computer failure or malfunction, or any and all
162 | other commercial damages or losses), even if such Contributor
163 | has been advised of the possibility of such damages.
164 |
165 | 9. Accepting Warranty or Additional Liability. While redistributing
166 | the Work or Derivative Works thereof, You may choose to offer,
167 | and charge a fee for, acceptance of support, warranty, indemnity,
168 | or other liability obligations and/or rights consistent with this
169 | License. However, in accepting such obligations, You may act only
170 | on Your own behalf and on Your sole responsibility, not on behalf
171 | of any other Contributor, and only if You agree to indemnify,
172 | defend, and hold each Contributor harmless for any liability
173 | incurred by, or claims asserted against, such Contributor by reason
174 | of your accepting any such warranty or additional liability.
175 |
176 | END OF TERMS AND CONDITIONS
177 |
178 | APPENDIX: How to apply the Apache License to your work.
179 |
180 | To apply the Apache License to your work, attach the following
181 | boilerplate notice, with the fields enclosed by brackets "[]"
182 | replaced with your own identifying information. (Don't include
183 | the brackets!) The text should be enclosed in the appropriate
184 | comment syntax for the file format. We also recommend that a
185 | file or class name and description of purpose be included on the
186 | same "printed page" as the copyright notice for easier
187 | identification within third-party archives.
188 |
189 | Copyright [yyyy] [name of copyright owner]
190 |
191 | Licensed under the Apache License, Version 2.0 (the "License");
192 | you may not use this file except in compliance with the License.
193 | You may obtain a copy of the License at
194 |
195 | http://www.apache.org/licenses/LICENSE-2.0
196 |
197 | Unless required by applicable law or agreed to in writing, software
198 | distributed under the License is distributed on an "AS IS" BASIS,
199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
200 | See the License for the specific language governing permissions and
201 | limitations under the License.
202 |
--------------------------------------------------------------------------------
/SimpleHome/composer.lock:
--------------------------------------------------------------------------------
1 | {
2 | "_readme": [
3 | "This file locks the dependencies of your project to a known state",
4 | "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
5 | "This file is @generated automatically"
6 | ],
7 | "content-hash": "a60c95fce15be7ea9dfb46969e57ef60",
8 | "packages": [
9 | {
10 | "name": "adhocore/json-comment",
11 | "version": "1.1.2",
12 | "source": {
13 | "type": "git",
14 | "url": "https://github.com/adhocore/php-json-comment.git",
15 | "reference": "fc2f76979f0a44a5f5bc2a2b600d0762fe0e78e7"
16 | },
17 | "dist": {
18 | "type": "zip",
19 | "url": "https://api.github.com/repos/adhocore/php-json-comment/zipball/fc2f76979f0a44a5f5bc2a2b600d0762fe0e78e7",
20 | "reference": "fc2f76979f0a44a5f5bc2a2b600d0762fe0e78e7",
21 | "shasum": ""
22 | },
23 | "require": {
24 | "ext-ctype": "*",
25 | "php": ">=7.0"
26 | },
27 | "require-dev": {
28 | "phpunit/phpunit": "^6.5 || ^7.5 || ^8.5"
29 | },
30 | "type": "library",
31 | "autoload": {
32 | "psr-4": {
33 | "Ahc\\Json\\": "src/"
34 | }
35 | },
36 | "notification-url": "https://packagist.org/downloads/",
37 | "license": [
38 | "MIT"
39 | ],
40 | "authors": [
41 | {
42 | "name": "Jitendra Adhikari",
43 | "email": "jiten.adhikary@gmail.com"
44 | }
45 | ],
46 | "description": "Lightweight JSON comment stripper library for PHP",
47 | "keywords": [
48 | "comment",
49 | "json",
50 | "strip-comment"
51 | ],
52 | "support": {
53 | "issues": "https://github.com/adhocore/php-json-comment/issues",
54 | "source": "https://github.com/adhocore/php-json-comment/tree/1.1.2"
55 | },
56 | "funding": [
57 | {
58 | "url": "https://paypal.me/ji10",
59 | "type": "custom"
60 | }
61 | ],
62 | "time": "2021-04-09T03:06:06+00:00"
63 | },
64 | {
65 | "name": "brick/math",
66 | "version": "0.9.3",
67 | "source": {
68 | "type": "git",
69 | "url": "https://github.com/brick/math.git",
70 | "reference": "ca57d18f028f84f777b2168cd1911b0dee2343ae"
71 | },
72 | "dist": {
73 | "type": "zip",
74 | "url": "https://api.github.com/repos/brick/math/zipball/ca57d18f028f84f777b2168cd1911b0dee2343ae",
75 | "reference": "ca57d18f028f84f777b2168cd1911b0dee2343ae",
76 | "shasum": ""
77 | },
78 | "require": {
79 | "ext-json": "*",
80 | "php": "^7.1 || ^8.0"
81 | },
82 | "require-dev": {
83 | "php-coveralls/php-coveralls": "^2.2",
84 | "phpunit/phpunit": "^7.5.15 || ^8.5 || ^9.0",
85 | "vimeo/psalm": "4.9.2"
86 | },
87 | "type": "library",
88 | "autoload": {
89 | "psr-4": {
90 | "Brick\\Math\\": "src/"
91 | }
92 | },
93 | "notification-url": "https://packagist.org/downloads/",
94 | "license": [
95 | "MIT"
96 | ],
97 | "description": "Arbitrary-precision arithmetic library",
98 | "keywords": [
99 | "Arbitrary-precision",
100 | "BigInteger",
101 | "BigRational",
102 | "arithmetic",
103 | "bigdecimal",
104 | "bignum",
105 | "brick",
106 | "math"
107 | ],
108 | "support": {
109 | "issues": "https://github.com/brick/math/issues",
110 | "source": "https://github.com/brick/math/tree/0.9.3"
111 | },
112 | "funding": [
113 | {
114 | "url": "https://github.com/BenMorel",
115 | "type": "github"
116 | },
117 | {
118 | "url": "https://tidelift.com/funding/github/packagist/brick/math",
119 | "type": "tidelift"
120 | }
121 | ],
122 | "time": "2021-08-15T20:50:18+00:00"
123 | },
124 | {
125 | "name": "fgrosse/phpasn1",
126 | "version": "v2.3.0",
127 | "source": {
128 | "type": "git",
129 | "url": "https://github.com/fgrosse/PHPASN1.git",
130 | "reference": "20299033c35f4300eb656e7e8e88cf52d1d6694e"
131 | },
132 | "dist": {
133 | "type": "zip",
134 | "url": "https://api.github.com/repos/fgrosse/PHPASN1/zipball/20299033c35f4300eb656e7e8e88cf52d1d6694e",
135 | "reference": "20299033c35f4300eb656e7e8e88cf52d1d6694e",
136 | "shasum": ""
137 | },
138 | "require": {
139 | "php": ">=7.0.0"
140 | },
141 | "require-dev": {
142 | "phpunit/phpunit": "~6.3",
143 | "satooshi/php-coveralls": "~2.0"
144 | },
145 | "suggest": {
146 | "ext-bcmath": "BCmath is the fallback extension for big integer calculations",
147 | "ext-curl": "For loading OID information from the web if they have not bee defined statically",
148 | "ext-gmp": "GMP is the preferred extension for big integer calculations",
149 | "phpseclib/bcmath_compat": "BCmath polyfill for servers where neither GMP nor BCmath is available"
150 | },
151 | "type": "library",
152 | "extra": {
153 | "branch-alias": {
154 | "dev-master": "2.0.x-dev"
155 | }
156 | },
157 | "autoload": {
158 | "psr-4": {
159 | "FG\\": "lib/"
160 | }
161 | },
162 | "notification-url": "https://packagist.org/downloads/",
163 | "license": [
164 | "MIT"
165 | ],
166 | "authors": [
167 | {
168 | "name": "Friedrich Große",
169 | "email": "friedrich.grosse@gmail.com",
170 | "homepage": "https://github.com/FGrosse",
171 | "role": "Author"
172 | },
173 | {
174 | "name": "All contributors",
175 | "homepage": "https://github.com/FGrosse/PHPASN1/contributors"
176 | }
177 | ],
178 | "description": "A PHP Framework that allows you to encode and decode arbitrary ASN.1 structures using the ITU-T X.690 Encoding Rules.",
179 | "homepage": "https://github.com/FGrosse/PHPASN1",
180 | "keywords": [
181 | "DER",
182 | "asn.1",
183 | "asn1",
184 | "ber",
185 | "binary",
186 | "decoding",
187 | "encoding",
188 | "x.509",
189 | "x.690",
190 | "x509",
191 | "x690"
192 | ],
193 | "support": {
194 | "issues": "https://github.com/fgrosse/PHPASN1/issues",
195 | "source": "https://github.com/fgrosse/PHPASN1/tree/v2.3.0"
196 | },
197 | "time": "2021-04-24T19:01:55+00:00"
198 | },
199 | {
200 | "name": "netresearch/jsonmapper",
201 | "version": "v4.0.0",
202 | "source": {
203 | "type": "git",
204 | "url": "https://github.com/cweiske/jsonmapper.git",
205 | "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d"
206 | },
207 | "dist": {
208 | "type": "zip",
209 | "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d",
210 | "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d",
211 | "shasum": ""
212 | },
213 | "require": {
214 | "ext-json": "*",
215 | "ext-pcre": "*",
216 | "ext-reflection": "*",
217 | "ext-spl": "*",
218 | "php": ">=7.1"
219 | },
220 | "require-dev": {
221 | "phpunit/phpunit": "~7.5 || ~8.0 || ~9.0",
222 | "squizlabs/php_codesniffer": "~3.5"
223 | },
224 | "type": "library",
225 | "autoload": {
226 | "psr-0": {
227 | "JsonMapper": "src/"
228 | }
229 | },
230 | "notification-url": "https://packagist.org/downloads/",
231 | "license": [
232 | "OSL-3.0"
233 | ],
234 | "authors": [
235 | {
236 | "name": "Christian Weiske",
237 | "email": "cweiske@cweiske.de",
238 | "homepage": "http://github.com/cweiske/jsonmapper/",
239 | "role": "Developer"
240 | }
241 | ],
242 | "description": "Map nested JSON structures onto PHP classes",
243 | "support": {
244 | "email": "cweiske@cweiske.de",
245 | "issues": "https://github.com/cweiske/jsonmapper/issues",
246 | "source": "https://github.com/cweiske/jsonmapper/tree/v4.0.0"
247 | },
248 | "time": "2020-12-01T19:48:11+00:00"
249 | },
250 | {
251 | "name": "pocketmine/bedrock-data",
252 | "version": "1.5.0+bedrock-1.18.0",
253 | "source": {
254 | "type": "git",
255 | "url": "https://github.com/pmmp/BedrockData.git",
256 | "reference": "482c679aa5ed0b81c088c2b1ff0b8110a94c8a6c"
257 | },
258 | "dist": {
259 | "type": "zip",
260 | "url": "https://api.github.com/repos/pmmp/BedrockData/zipball/482c679aa5ed0b81c088c2b1ff0b8110a94c8a6c",
261 | "reference": "482c679aa5ed0b81c088c2b1ff0b8110a94c8a6c",
262 | "shasum": ""
263 | },
264 | "type": "library",
265 | "notification-url": "https://packagist.org/downloads/",
266 | "license": [
267 | "LGPL-3.0"
268 | ],
269 | "description": "Blobs of data generated from Minecraft: Bedrock Edition, used by PocketMine-MP",
270 | "support": {
271 | "issues": "https://github.com/pmmp/BedrockData/issues",
272 | "source": "https://github.com/pmmp/BedrockData/tree/bedrock-1.18.0"
273 | },
274 | "time": "2021-11-30T18:30:46+00:00"
275 | },
276 | {
277 | "name": "pocketmine/bedrock-protocol",
278 | "version": "7.0.0+bedrock-1.18.0",
279 | "source": {
280 | "type": "git",
281 | "url": "https://github.com/pmmp/BedrockProtocol.git",
282 | "reference": "040a883a4abb8c9b93114d5278cb5fecc635da82"
283 | },
284 | "dist": {
285 | "type": "zip",
286 | "url": "https://api.github.com/repos/pmmp/BedrockProtocol/zipball/040a883a4abb8c9b93114d5278cb5fecc635da82",
287 | "reference": "040a883a4abb8c9b93114d5278cb5fecc635da82",
288 | "shasum": ""
289 | },
290 | "require": {
291 | "ext-json": "*",
292 | "netresearch/jsonmapper": "^4.0",
293 | "php": "^8.0",
294 | "pocketmine/binaryutils": "^0.2.0",
295 | "pocketmine/color": "^0.2.0",
296 | "pocketmine/math": "^0.3.0 || ^0.4.0",
297 | "pocketmine/nbt": "^0.3.0",
298 | "ramsey/uuid": "^4.1"
299 | },
300 | "require-dev": {
301 | "phpstan/phpstan": "1.2.0",
302 | "phpstan/phpstan-phpunit": "^1.0.0",
303 | "phpstan/phpstan-strict-rules": "^1.0.0",
304 | "phpunit/phpunit": "^9.5"
305 | },
306 | "type": "library",
307 | "autoload": {
308 | "psr-4": {
309 | "pocketmine\\network\\mcpe\\protocol\\": "src/"
310 | }
311 | },
312 | "notification-url": "https://packagist.org/downloads/",
313 | "license": [
314 | "LGPL-3.0"
315 | ],
316 | "description": "An implementation of the Minecraft: Bedrock Edition protocol in PHP",
317 | "support": {
318 | "issues": "https://github.com/pmmp/BedrockProtocol/issues",
319 | "source": "https://github.com/pmmp/BedrockProtocol/tree/7.0.0+bedrock-1.18.0"
320 | },
321 | "time": "2021-11-30T19:02:41+00:00"
322 | },
323 | {
324 | "name": "pocketmine/binaryutils",
325 | "version": "0.2.2",
326 | "source": {
327 | "type": "git",
328 | "url": "https://github.com/pmmp/BinaryUtils.git",
329 | "reference": "f883e1cf9099ed6a757a10a2f75b3333eeb2cdf9"
330 | },
331 | "dist": {
332 | "type": "zip",
333 | "url": "https://api.github.com/repos/pmmp/BinaryUtils/zipball/f883e1cf9099ed6a757a10a2f75b3333eeb2cdf9",
334 | "reference": "f883e1cf9099ed6a757a10a2f75b3333eeb2cdf9",
335 | "shasum": ""
336 | },
337 | "require": {
338 | "php": "^7.4 || ^8.0",
339 | "php-64bit": "*"
340 | },
341 | "require-dev": {
342 | "phpstan/extension-installer": "^1.0",
343 | "phpstan/phpstan": "0.12.99",
344 | "phpstan/phpstan-strict-rules": "^0.12.4"
345 | },
346 | "type": "library",
347 | "autoload": {
348 | "psr-4": {
349 | "pocketmine\\utils\\": "src/"
350 | }
351 | },
352 | "notification-url": "https://packagist.org/downloads/",
353 | "license": [
354 | "LGPL-3.0"
355 | ],
356 | "description": "Classes and methods for conveniently handling binary data",
357 | "support": {
358 | "issues": "https://github.com/pmmp/BinaryUtils/issues",
359 | "source": "https://github.com/pmmp/BinaryUtils/tree/0.2.2"
360 | },
361 | "time": "2021-10-22T19:54:16+00:00"
362 | },
363 | {
364 | "name": "pocketmine/callback-validator",
365 | "version": "1.0.3",
366 | "source": {
367 | "type": "git",
368 | "url": "https://github.com/pmmp/CallbackValidator.git",
369 | "reference": "64787469766bcaa7e5885242e85c23c25e8c55a2"
370 | },
371 | "dist": {
372 | "type": "zip",
373 | "url": "https://api.github.com/repos/pmmp/CallbackValidator/zipball/64787469766bcaa7e5885242e85c23c25e8c55a2",
374 | "reference": "64787469766bcaa7e5885242e85c23c25e8c55a2",
375 | "shasum": ""
376 | },
377 | "require": {
378 | "ext-reflection": "*",
379 | "php": "^7.1 || ^8.0"
380 | },
381 | "replace": {
382 | "daverandom/callback-validator": "*"
383 | },
384 | "require-dev": {
385 | "phpstan/extension-installer": "^1.0",
386 | "phpstan/phpstan": "0.12.59",
387 | "phpstan/phpstan-strict-rules": "^0.12.4",
388 | "phpunit/phpunit": "^7.5 || ^8.5 || ^9.0"
389 | },
390 | "type": "library",
391 | "autoload": {
392 | "psr-4": {
393 | "DaveRandom\\CallbackValidator\\": "src/"
394 | }
395 | },
396 | "notification-url": "https://packagist.org/downloads/",
397 | "license": [
398 | "MIT"
399 | ],
400 | "authors": [
401 | {
402 | "name": "Chris Wright",
403 | "email": "cw@daverandom.com"
404 | }
405 | ],
406 | "description": "Fork of daverandom/callback-validator - Tools for validating callback signatures",
407 | "support": {
408 | "issues": "https://github.com/pmmp/CallbackValidator/issues",
409 | "source": "https://github.com/pmmp/CallbackValidator/tree/1.0.3"
410 | },
411 | "time": "2020-12-11T01:45:37+00:00"
412 | },
413 | {
414 | "name": "pocketmine/classloader",
415 | "version": "0.2.0",
416 | "source": {
417 | "type": "git",
418 | "url": "https://github.com/pmmp/ClassLoader.git",
419 | "reference": "49ea303993efdfb39cd302e2156d50aa78209e78"
420 | },
421 | "dist": {
422 | "type": "zip",
423 | "url": "https://api.github.com/repos/pmmp/ClassLoader/zipball/49ea303993efdfb39cd302e2156d50aa78209e78",
424 | "reference": "49ea303993efdfb39cd302e2156d50aa78209e78",
425 | "shasum": ""
426 | },
427 | "require": {
428 | "ext-pthreads": "~3.2.0 || ^4.0",
429 | "ext-reflection": "*",
430 | "php": "^8.0"
431 | },
432 | "conflict": {
433 | "pocketmine/spl": "<0.4"
434 | },
435 | "require-dev": {
436 | "phpstan/extension-installer": "^1.0",
437 | "phpstan/phpstan": "0.12.99",
438 | "phpstan/phpstan-strict-rules": "^0.12.4",
439 | "phpunit/phpunit": "^9.5"
440 | },
441 | "type": "library",
442 | "autoload": {
443 | "classmap": [
444 | "./src"
445 | ]
446 | },
447 | "notification-url": "https://packagist.org/downloads/",
448 | "license": [
449 | "LGPL-3.0"
450 | ],
451 | "description": "Ad-hoc autoloading components used by PocketMine-MP",
452 | "support": {
453 | "issues": "https://github.com/pmmp/ClassLoader/issues",
454 | "source": "https://github.com/pmmp/ClassLoader/tree/0.2.0"
455 | },
456 | "time": "2021-11-01T20:17:27+00:00"
457 | },
458 | {
459 | "name": "pocketmine/color",
460 | "version": "0.2.0",
461 | "source": {
462 | "type": "git",
463 | "url": "https://github.com/pmmp/Color.git",
464 | "reference": "09be6ea6d76f2e33d6813c39d29c22c46c17e1d2"
465 | },
466 | "dist": {
467 | "type": "zip",
468 | "url": "https://api.github.com/repos/pmmp/Color/zipball/09be6ea6d76f2e33d6813c39d29c22c46c17e1d2",
469 | "reference": "09be6ea6d76f2e33d6813c39d29c22c46c17e1d2",
470 | "shasum": ""
471 | },
472 | "require": {
473 | "php": "^7.2 || ^8.0"
474 | },
475 | "require-dev": {
476 | "phpstan/phpstan": "0.12.59",
477 | "phpstan/phpstan-strict-rules": "^0.12.2"
478 | },
479 | "type": "library",
480 | "autoload": {
481 | "psr-4": {
482 | "pocketmine\\color\\": "src/"
483 | }
484 | },
485 | "notification-url": "https://packagist.org/downloads/",
486 | "license": [
487 | "LGPL-3.0"
488 | ],
489 | "description": "Color handling library used by PocketMine-MP and related projects",
490 | "support": {
491 | "issues": "https://github.com/pmmp/Color/issues",
492 | "source": "https://github.com/pmmp/Color/tree/0.2.0"
493 | },
494 | "time": "2020-12-11T01:24:32+00:00"
495 | },
496 | {
497 | "name": "pocketmine/errorhandler",
498 | "version": "0.3.0",
499 | "source": {
500 | "type": "git",
501 | "url": "https://github.com/pmmp/ErrorHandler.git",
502 | "reference": "ec742b209e8056bbe855069c4eff94c9734ea19b"
503 | },
504 | "dist": {
505 | "type": "zip",
506 | "url": "https://api.github.com/repos/pmmp/ErrorHandler/zipball/ec742b209e8056bbe855069c4eff94c9734ea19b",
507 | "reference": "ec742b209e8056bbe855069c4eff94c9734ea19b",
508 | "shasum": ""
509 | },
510 | "require": {
511 | "php": "^7.2 || ^8.0"
512 | },
513 | "require-dev": {
514 | "phpstan/phpstan": "0.12.75",
515 | "phpstan/phpstan-strict-rules": "^0.12.2"
516 | },
517 | "type": "library",
518 | "autoload": {
519 | "psr-4": {
520 | "pocketmine\\errorhandler\\": "src/"
521 | }
522 | },
523 | "notification-url": "https://packagist.org/downloads/",
524 | "license": [
525 | "LGPL-3.0"
526 | ],
527 | "description": "Utilities to handle nasty PHP E_* errors in a usable way",
528 | "support": {
529 | "issues": "https://github.com/pmmp/ErrorHandler/issues",
530 | "source": "https://github.com/pmmp/ErrorHandler/tree/0.3.0"
531 | },
532 | "time": "2021-02-12T18:56:22+00:00"
533 | },
534 | {
535 | "name": "pocketmine/locale-data",
536 | "version": "2.0.21",
537 | "source": {
538 | "type": "git",
539 | "url": "https://github.com/pmmp/Language.git",
540 | "reference": "0331388b72690261e1aec0f90c88f405da98a402"
541 | },
542 | "dist": {
543 | "type": "zip",
544 | "url": "https://api.github.com/repos/pmmp/Language/zipball/0331388b72690261e1aec0f90c88f405da98a402",
545 | "reference": "0331388b72690261e1aec0f90c88f405da98a402",
546 | "shasum": ""
547 | },
548 | "type": "library",
549 | "notification-url": "https://packagist.org/downloads/",
550 | "description": "Language resources used by PocketMine-MP",
551 | "support": {
552 | "issues": "https://github.com/pmmp/Language/issues",
553 | "source": "https://github.com/pmmp/Language/tree/2.0.21"
554 | },
555 | "time": "2021-12-03T20:25:13+00:00"
556 | },
557 | {
558 | "name": "pocketmine/log",
559 | "version": "0.4.0",
560 | "source": {
561 | "type": "git",
562 | "url": "https://github.com/pmmp/Log.git",
563 | "reference": "e6c912c0f9055c81d23108ec2d179b96f404c043"
564 | },
565 | "dist": {
566 | "type": "zip",
567 | "url": "https://api.github.com/repos/pmmp/Log/zipball/e6c912c0f9055c81d23108ec2d179b96f404c043",
568 | "reference": "e6c912c0f9055c81d23108ec2d179b96f404c043",
569 | "shasum": ""
570 | },
571 | "require": {
572 | "php": "^7.4 || ^8.0"
573 | },
574 | "conflict": {
575 | "pocketmine/spl": "<0.4"
576 | },
577 | "require-dev": {
578 | "phpstan/phpstan": "0.12.88",
579 | "phpstan/phpstan-strict-rules": "^0.12.2"
580 | },
581 | "type": "library",
582 | "autoload": {
583 | "classmap": [
584 | "./src"
585 | ]
586 | },
587 | "notification-url": "https://packagist.org/downloads/",
588 | "license": [
589 | "LGPL-3.0"
590 | ],
591 | "description": "Logging components used by PocketMine-MP and related projects",
592 | "support": {
593 | "issues": "https://github.com/pmmp/Log/issues",
594 | "source": "https://github.com/pmmp/Log/tree/0.4.0"
595 | },
596 | "time": "2021-06-18T19:08:09+00:00"
597 | },
598 | {
599 | "name": "pocketmine/log-pthreads",
600 | "version": "0.4.0",
601 | "source": {
602 | "type": "git",
603 | "url": "https://github.com/pmmp/LogPthreads.git",
604 | "reference": "61f709e8cf36bcc24e4efe02acded680a1ce23cd"
605 | },
606 | "dist": {
607 | "type": "zip",
608 | "url": "https://api.github.com/repos/pmmp/LogPthreads/zipball/61f709e8cf36bcc24e4efe02acded680a1ce23cd",
609 | "reference": "61f709e8cf36bcc24e4efe02acded680a1ce23cd",
610 | "shasum": ""
611 | },
612 | "require": {
613 | "ext-pthreads": "~3.2.0 || ^4.0",
614 | "php": "^7.4 || ^8.0",
615 | "pocketmine/log": "^0.4.0"
616 | },
617 | "conflict": {
618 | "pocketmine/spl": "<0.4"
619 | },
620 | "require-dev": {
621 | "phpstan/extension-installer": "^1.0",
622 | "phpstan/phpstan": "0.12.88",
623 | "phpstan/phpstan-strict-rules": "^0.12.4"
624 | },
625 | "type": "library",
626 | "autoload": {
627 | "classmap": [
628 | "./src"
629 | ]
630 | },
631 | "notification-url": "https://packagist.org/downloads/",
632 | "license": [
633 | "LGPL-3.0"
634 | ],
635 | "description": "Logging components specialized for pthreads used by PocketMine-MP and related projects",
636 | "support": {
637 | "issues": "https://github.com/pmmp/LogPthreads/issues",
638 | "source": "https://github.com/pmmp/LogPthreads/tree/0.4.0"
639 | },
640 | "time": "2021-11-01T21:42:09+00:00"
641 | },
642 | {
643 | "name": "pocketmine/math",
644 | "version": "0.4.1",
645 | "source": {
646 | "type": "git",
647 | "url": "https://github.com/pmmp/Math.git",
648 | "reference": "9504957e90415ee1b33cbc13e622c6c5be88e5ac"
649 | },
650 | "dist": {
651 | "type": "zip",
652 | "url": "https://api.github.com/repos/pmmp/Math/zipball/9504957e90415ee1b33cbc13e622c6c5be88e5ac",
653 | "reference": "9504957e90415ee1b33cbc13e622c6c5be88e5ac",
654 | "shasum": ""
655 | },
656 | "require": {
657 | "php": "^8.0",
658 | "php-64bit": "*"
659 | },
660 | "require-dev": {
661 | "phpstan/extension-installer": "^1.0",
662 | "phpstan/phpstan": "1.2.0",
663 | "phpstan/phpstan-strict-rules": "^1.0",
664 | "phpunit/phpunit": "^8.5 || ^9.5"
665 | },
666 | "type": "library",
667 | "autoload": {
668 | "psr-4": {
669 | "pocketmine\\math\\": "src/"
670 | }
671 | },
672 | "notification-url": "https://packagist.org/downloads/",
673 | "license": [
674 | "LGPL-3.0"
675 | ],
676 | "description": "PHP library containing math related code used in PocketMine-MP",
677 | "support": {
678 | "issues": "https://github.com/pmmp/Math/issues",
679 | "source": "https://github.com/pmmp/Math/tree/0.4.1"
680 | },
681 | "time": "2021-12-03T14:28:34+00:00"
682 | },
683 | {
684 | "name": "pocketmine/nbt",
685 | "version": "0.3.0",
686 | "source": {
687 | "type": "git",
688 | "url": "https://github.com/pmmp/NBT.git",
689 | "reference": "98c4a04b55a915e18f83d3b0c9beb24a71abcd31"
690 | },
691 | "dist": {
692 | "type": "zip",
693 | "url": "https://api.github.com/repos/pmmp/NBT/zipball/98c4a04b55a915e18f83d3b0c9beb24a71abcd31",
694 | "reference": "98c4a04b55a915e18f83d3b0c9beb24a71abcd31",
695 | "shasum": ""
696 | },
697 | "require": {
698 | "php": "^7.4 || ^8.0",
699 | "php-64bit": "*",
700 | "pocketmine/binaryutils": "^0.2.0"
701 | },
702 | "require-dev": {
703 | "irstea/phpunit-shim": "^9.5",
704 | "phpstan/extension-installer": "^1.0",
705 | "phpstan/phpstan": "0.12.85",
706 | "phpstan/phpstan-strict-rules": "^0.12.4"
707 | },
708 | "type": "library",
709 | "autoload": {
710 | "psr-4": {
711 | "pocketmine\\nbt\\": "src/"
712 | }
713 | },
714 | "notification-url": "https://packagist.org/downloads/",
715 | "license": [
716 | "LGPL-3.0"
717 | ],
718 | "description": "PHP library for working with Named Binary Tags",
719 | "support": {
720 | "issues": "https://github.com/pmmp/NBT/issues",
721 | "source": "https://github.com/pmmp/NBT/tree/0.3.0"
722 | },
723 | "time": "2021-05-18T15:46:33+00:00"
724 | },
725 | {
726 | "name": "pocketmine/pocketmine-mp",
727 | "version": "4.0.0",
728 | "source": {
729 | "type": "git",
730 | "url": "https://github.com/pmmp/PocketMine-MP.git",
731 | "reference": "468faa464b2bc5c97f23fafbb71ea61035f6f218"
732 | },
733 | "dist": {
734 | "type": "zip",
735 | "url": "https://api.github.com/repos/pmmp/PocketMine-MP/zipball/468faa464b2bc5c97f23fafbb71ea61035f6f218",
736 | "reference": "468faa464b2bc5c97f23fafbb71ea61035f6f218",
737 | "shasum": ""
738 | },
739 | "require": {
740 | "adhocore/json-comment": "^1.1",
741 | "composer-runtime-api": "^2.0",
742 | "ext-chunkutils2": "^0.3.1",
743 | "ext-crypto": "^0.3.1",
744 | "ext-ctype": "*",
745 | "ext-curl": "*",
746 | "ext-date": "*",
747 | "ext-gmp": "*",
748 | "ext-hash": "*",
749 | "ext-igbinary": "^3.0.1",
750 | "ext-json": "*",
751 | "ext-leveldb": "^0.2.1 || ^0.3.0",
752 | "ext-mbstring": "*",
753 | "ext-morton": "^0.1.0",
754 | "ext-openssl": "*",
755 | "ext-pcre": "*",
756 | "ext-phar": "*",
757 | "ext-pthreads": "^4.0",
758 | "ext-reflection": "*",
759 | "ext-simplexml": "*",
760 | "ext-sockets": "*",
761 | "ext-spl": "*",
762 | "ext-yaml": ">=2.0.0",
763 | "ext-zip": "*",
764 | "ext-zlib": ">=1.2.11",
765 | "fgrosse/phpasn1": "^2.3",
766 | "netresearch/jsonmapper": "^4.0",
767 | "php": "^8.0",
768 | "php-64bit": "*",
769 | "pocketmine/bedrock-data": "^1.5.0+bedrock-1.18.0",
770 | "pocketmine/bedrock-protocol": "^7.0.0+bedrock-1.18.0",
771 | "pocketmine/binaryutils": "^0.2.1",
772 | "pocketmine/callback-validator": "^1.0.2",
773 | "pocketmine/classloader": "^0.2.0",
774 | "pocketmine/color": "^0.2.0",
775 | "pocketmine/errorhandler": "^0.3.0",
776 | "pocketmine/locale-data": "^2.0.16",
777 | "pocketmine/log": "^0.4.0",
778 | "pocketmine/log-pthreads": "^0.4.0",
779 | "pocketmine/math": "^0.4.0",
780 | "pocketmine/nbt": "^0.3.0",
781 | "pocketmine/raklib": "^0.14.2",
782 | "pocketmine/raklib-ipc": "^0.1.0",
783 | "pocketmine/snooze": "^0.3.0",
784 | "ramsey/uuid": "^4.1",
785 | "webmozart/path-util": "^2.3"
786 | },
787 | "require-dev": {
788 | "phpstan/phpstan": "1.2.0",
789 | "phpstan/phpstan-phpunit": "^1.0.0",
790 | "phpstan/phpstan-strict-rules": "^1.0.0",
791 | "phpunit/phpunit": "^9.2"
792 | },
793 | "type": "project",
794 | "autoload": {
795 | "psr-4": {
796 | "pocketmine\\": "src/"
797 | },
798 | "files": [
799 | "src/CoreConstants.php"
800 | ]
801 | },
802 | "notification-url": "https://packagist.org/downloads/",
803 | "license": [
804 | "LGPL-3.0"
805 | ],
806 | "description": "A server software for Minecraft: Bedrock Edition written in PHP",
807 | "homepage": "https://pmmp.io",
808 | "support": {
809 | "issues": "https://github.com/pmmp/PocketMine-MP/issues",
810 | "source": "https://github.com/pmmp/PocketMine-MP/tree/4.0.0"
811 | },
812 | "funding": [
813 | {
814 | "url": "https://github.com/pmmp/PocketMine-MP#donate",
815 | "type": "custom"
816 | },
817 | {
818 | "url": "https://www.patreon.com/pocketminemp",
819 | "type": "patreon"
820 | }
821 | ],
822 | "time": "2021-12-01T22:33:52+00:00"
823 | },
824 | {
825 | "name": "pocketmine/raklib",
826 | "version": "0.14.2",
827 | "source": {
828 | "type": "git",
829 | "url": "https://github.com/pmmp/RakLib.git",
830 | "reference": "e3a861187470e1facc6625040128f447ebbcbaec"
831 | },
832 | "dist": {
833 | "type": "zip",
834 | "url": "https://api.github.com/repos/pmmp/RakLib/zipball/e3a861187470e1facc6625040128f447ebbcbaec",
835 | "reference": "e3a861187470e1facc6625040128f447ebbcbaec",
836 | "shasum": ""
837 | },
838 | "require": {
839 | "ext-sockets": "*",
840 | "php": "^8.0",
841 | "php-64bit": "*",
842 | "php-ipv6": "*",
843 | "pocketmine/binaryutils": "^0.2.0",
844 | "pocketmine/log": "^0.3.0 || ^0.4.0"
845 | },
846 | "require-dev": {
847 | "phpstan/phpstan": "0.12.99",
848 | "phpstan/phpstan-strict-rules": "^0.12.2"
849 | },
850 | "type": "library",
851 | "autoload": {
852 | "psr-4": {
853 | "raklib\\": "src/"
854 | }
855 | },
856 | "notification-url": "https://packagist.org/downloads/",
857 | "license": [
858 | "GPL-3.0"
859 | ],
860 | "description": "A RakNet server implementation written in PHP",
861 | "support": {
862 | "issues": "https://github.com/pmmp/RakLib/issues",
863 | "source": "https://github.com/pmmp/RakLib/tree/0.14.2"
864 | },
865 | "time": "2021-10-04T20:39:11+00:00"
866 | },
867 | {
868 | "name": "pocketmine/raklib-ipc",
869 | "version": "0.1.1",
870 | "source": {
871 | "type": "git",
872 | "url": "https://github.com/pmmp/RakLibIpc.git",
873 | "reference": "922a6444b0c6c7daaa5aa5a832107e1ec4738aed"
874 | },
875 | "dist": {
876 | "type": "zip",
877 | "url": "https://api.github.com/repos/pmmp/RakLibIpc/zipball/922a6444b0c6c7daaa5aa5a832107e1ec4738aed",
878 | "reference": "922a6444b0c6c7daaa5aa5a832107e1ec4738aed",
879 | "shasum": ""
880 | },
881 | "require": {
882 | "php": "^7.4 || ^8.0",
883 | "php-64bit": "*",
884 | "pocketmine/binaryutils": "^0.2.0",
885 | "pocketmine/raklib": "^0.13.1 || ^0.14.0"
886 | },
887 | "require-dev": {
888 | "phpstan/phpstan": "0.12.81",
889 | "phpstan/phpstan-strict-rules": "^0.12.2"
890 | },
891 | "type": "library",
892 | "autoload": {
893 | "psr-4": {
894 | "raklib\\server\\ipc\\": "src/"
895 | }
896 | },
897 | "notification-url": "https://packagist.org/downloads/",
898 | "license": [
899 | "GPL-3.0"
900 | ],
901 | "description": "Channel-based protocols for inter-thread/inter-process communication with RakLib",
902 | "support": {
903 | "issues": "https://github.com/pmmp/RakLibIpc/issues",
904 | "source": "https://github.com/pmmp/RakLibIpc/tree/0.1.1"
905 | },
906 | "time": "2021-09-22T17:01:12+00:00"
907 | },
908 | {
909 | "name": "pocketmine/snooze",
910 | "version": "0.3.1",
911 | "source": {
912 | "type": "git",
913 | "url": "https://github.com/pmmp/Snooze.git",
914 | "reference": "0ac8fc2a781c419a1f64ebca4d5835028f59e29b"
915 | },
916 | "dist": {
917 | "type": "zip",
918 | "url": "https://api.github.com/repos/pmmp/Snooze/zipball/0ac8fc2a781c419a1f64ebca4d5835028f59e29b",
919 | "reference": "0ac8fc2a781c419a1f64ebca4d5835028f59e29b",
920 | "shasum": ""
921 | },
922 | "require": {
923 | "ext-pthreads": "~3.2.0 || ^4.0",
924 | "php-64bit": "^7.3 || ^8.0"
925 | },
926 | "require-dev": {
927 | "phpstan/extension-installer": "^1.0",
928 | "phpstan/phpstan": "0.12.99",
929 | "phpstan/phpstan-strict-rules": "^0.12.4"
930 | },
931 | "type": "library",
932 | "autoload": {
933 | "psr-4": {
934 | "pocketmine\\snooze\\": "src/"
935 | }
936 | },
937 | "notification-url": "https://packagist.org/downloads/",
938 | "license": [
939 | "LGPL-3.0"
940 | ],
941 | "description": "Thread notification management library for code using the pthreads extension",
942 | "support": {
943 | "issues": "https://github.com/pmmp/Snooze/issues",
944 | "source": "https://github.com/pmmp/Snooze/tree/0.3.1"
945 | },
946 | "time": "2021-11-01T20:50:08+00:00"
947 | },
948 | {
949 | "name": "ramsey/collection",
950 | "version": "1.2.2",
951 | "source": {
952 | "type": "git",
953 | "url": "https://github.com/ramsey/collection.git",
954 | "reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a"
955 | },
956 | "dist": {
957 | "type": "zip",
958 | "url": "https://api.github.com/repos/ramsey/collection/zipball/cccc74ee5e328031b15640b51056ee8d3bb66c0a",
959 | "reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a",
960 | "shasum": ""
961 | },
962 | "require": {
963 | "php": "^7.3 || ^8",
964 | "symfony/polyfill-php81": "^1.23"
965 | },
966 | "require-dev": {
967 | "captainhook/captainhook": "^5.3",
968 | "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0",
969 | "ergebnis/composer-normalize": "^2.6",
970 | "fakerphp/faker": "^1.5",
971 | "hamcrest/hamcrest-php": "^2",
972 | "jangregor/phpstan-prophecy": "^0.8",
973 | "mockery/mockery": "^1.3",
974 | "phpspec/prophecy-phpunit": "^2.0",
975 | "phpstan/extension-installer": "^1",
976 | "phpstan/phpstan": "^0.12.32",
977 | "phpstan/phpstan-mockery": "^0.12.5",
978 | "phpstan/phpstan-phpunit": "^0.12.11",
979 | "phpunit/phpunit": "^8.5 || ^9",
980 | "psy/psysh": "^0.10.4",
981 | "slevomat/coding-standard": "^6.3",
982 | "squizlabs/php_codesniffer": "^3.5",
983 | "vimeo/psalm": "^4.4"
984 | },
985 | "type": "library",
986 | "autoload": {
987 | "psr-4": {
988 | "Ramsey\\Collection\\": "src/"
989 | }
990 | },
991 | "notification-url": "https://packagist.org/downloads/",
992 | "license": [
993 | "MIT"
994 | ],
995 | "authors": [
996 | {
997 | "name": "Ben Ramsey",
998 | "email": "ben@benramsey.com",
999 | "homepage": "https://benramsey.com"
1000 | }
1001 | ],
1002 | "description": "A PHP library for representing and manipulating collections.",
1003 | "keywords": [
1004 | "array",
1005 | "collection",
1006 | "hash",
1007 | "map",
1008 | "queue",
1009 | "set"
1010 | ],
1011 | "support": {
1012 | "issues": "https://github.com/ramsey/collection/issues",
1013 | "source": "https://github.com/ramsey/collection/tree/1.2.2"
1014 | },
1015 | "funding": [
1016 | {
1017 | "url": "https://github.com/ramsey",
1018 | "type": "github"
1019 | },
1020 | {
1021 | "url": "https://tidelift.com/funding/github/packagist/ramsey/collection",
1022 | "type": "tidelift"
1023 | }
1024 | ],
1025 | "time": "2021-10-10T03:01:02+00:00"
1026 | },
1027 | {
1028 | "name": "ramsey/uuid",
1029 | "version": "dev-main",
1030 | "source": {
1031 | "type": "git",
1032 | "url": "https://github.com/ramsey/uuid.git",
1033 | "reference": "cd372a7b47a54734cbd491df40b5a48614d8d374"
1034 | },
1035 | "dist": {
1036 | "type": "zip",
1037 | "url": "https://api.github.com/repos/ramsey/uuid/zipball/cd372a7b47a54734cbd491df40b5a48614d8d374",
1038 | "reference": "cd372a7b47a54734cbd491df40b5a48614d8d374",
1039 | "shasum": ""
1040 | },
1041 | "require": {
1042 | "brick/math": "^0.8 || ^0.9",
1043 | "ext-json": "*",
1044 | "php": "^7.2 || ^8.0",
1045 | "ramsey/collection": "^1.0",
1046 | "symfony/polyfill-ctype": "^1.8",
1047 | "symfony/polyfill-php80": "^1.14"
1048 | },
1049 | "replace": {
1050 | "rhumsaa/uuid": "self.version"
1051 | },
1052 | "require-dev": {
1053 | "captainhook/captainhook": "^5.10",
1054 | "captainhook/plugin-composer": "^5.3",
1055 | "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0",
1056 | "doctrine/annotations": "^1.8",
1057 | "ergebnis/composer-normalize": "^2.15",
1058 | "mockery/mockery": "^1.3",
1059 | "moontoast/math": "^1.1",
1060 | "paragonie/random-lib": "^2",
1061 | "php-mock/php-mock": "^2.2",
1062 | "php-mock/php-mock-mockery": "^1.3",
1063 | "php-parallel-lint/php-parallel-lint": "^1.1",
1064 | "phpbench/phpbench": "^1.0",
1065 | "phpstan/extension-installer": "^1.0",
1066 | "phpstan/phpstan": "^0.12",
1067 | "phpstan/phpstan-mockery": "^0.12",
1068 | "phpstan/phpstan-phpunit": "^0.12",
1069 | "phpunit/phpunit": "^8.5 || ^9",
1070 | "slevomat/coding-standard": "^7.0",
1071 | "squizlabs/php_codesniffer": "^3.5",
1072 | "vimeo/psalm": "^4.9"
1073 | },
1074 | "suggest": {
1075 | "ext-bcmath": "Enables faster math with arbitrary-precision integers using BCMath.",
1076 | "ext-ctype": "Enables faster processing of character classification using ctype functions.",
1077 | "ext-gmp": "Enables faster math with arbitrary-precision integers using GMP.",
1078 | "ext-uuid": "Enables the use of PeclUuidTimeGenerator and PeclUuidRandomGenerator.",
1079 | "paragonie/random-lib": "Provides RandomLib for use with the RandomLibAdapter",
1080 | "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type."
1081 | },
1082 | "default-branch": true,
1083 | "type": "library",
1084 | "extra": {
1085 | "branch-alias": {
1086 | "dev-main": "4.x-dev"
1087 | },
1088 | "captainhook": {
1089 | "force-install": true
1090 | }
1091 | },
1092 | "autoload": {
1093 | "psr-4": {
1094 | "Ramsey\\Uuid\\": "src/"
1095 | },
1096 | "files": [
1097 | "src/functions.php"
1098 | ]
1099 | },
1100 | "notification-url": "https://packagist.org/downloads/",
1101 | "license": [
1102 | "MIT"
1103 | ],
1104 | "description": "A PHP library for generating and working with universally unique identifiers (UUIDs).",
1105 | "keywords": [
1106 | "guid",
1107 | "identifier",
1108 | "uuid"
1109 | ],
1110 | "support": {
1111 | "issues": "https://github.com/ramsey/uuid/issues",
1112 | "source": "https://github.com/ramsey/uuid/tree/main"
1113 | },
1114 | "funding": [
1115 | {
1116 | "url": "https://github.com/ramsey",
1117 | "type": "github"
1118 | },
1119 | {
1120 | "url": "https://tidelift.com/funding/github/packagist/ramsey/uuid",
1121 | "type": "tidelift"
1122 | }
1123 | ],
1124 | "time": "2021-10-13T18:44:27+00:00"
1125 | },
1126 | {
1127 | "name": "symfony/polyfill-ctype",
1128 | "version": "dev-main",
1129 | "source": {
1130 | "type": "git",
1131 | "url": "https://github.com/symfony/polyfill-ctype.git",
1132 | "reference": "30885182c981ab175d4d034db0f6f469898070ab"
1133 | },
1134 | "dist": {
1135 | "type": "zip",
1136 | "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/30885182c981ab175d4d034db0f6f469898070ab",
1137 | "reference": "30885182c981ab175d4d034db0f6f469898070ab",
1138 | "shasum": ""
1139 | },
1140 | "require": {
1141 | "php": ">=7.1"
1142 | },
1143 | "provide": {
1144 | "ext-ctype": "*"
1145 | },
1146 | "suggest": {
1147 | "ext-ctype": "For best performance"
1148 | },
1149 | "default-branch": true,
1150 | "type": "library",
1151 | "extra": {
1152 | "branch-alias": {
1153 | "dev-main": "1.23-dev"
1154 | },
1155 | "thanks": {
1156 | "name": "symfony/polyfill",
1157 | "url": "https://github.com/symfony/polyfill"
1158 | }
1159 | },
1160 | "autoload": {
1161 | "psr-4": {
1162 | "Symfony\\Polyfill\\Ctype\\": ""
1163 | },
1164 | "files": [
1165 | "bootstrap.php"
1166 | ]
1167 | },
1168 | "notification-url": "https://packagist.org/downloads/",
1169 | "license": [
1170 | "MIT"
1171 | ],
1172 | "authors": [
1173 | {
1174 | "name": "Gert de Pagter",
1175 | "email": "BackEndTea@gmail.com"
1176 | },
1177 | {
1178 | "name": "Symfony Community",
1179 | "homepage": "https://symfony.com/contributors"
1180 | }
1181 | ],
1182 | "description": "Symfony polyfill for ctype functions",
1183 | "homepage": "https://symfony.com",
1184 | "keywords": [
1185 | "compatibility",
1186 | "ctype",
1187 | "polyfill",
1188 | "portable"
1189 | ],
1190 | "support": {
1191 | "source": "https://github.com/symfony/polyfill-ctype/tree/main"
1192 | },
1193 | "funding": [
1194 | {
1195 | "url": "https://symfony.com/sponsor",
1196 | "type": "custom"
1197 | },
1198 | {
1199 | "url": "https://github.com/fabpot",
1200 | "type": "github"
1201 | },
1202 | {
1203 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
1204 | "type": "tidelift"
1205 | }
1206 | ],
1207 | "time": "2021-10-20T20:35:02+00:00"
1208 | },
1209 | {
1210 | "name": "symfony/polyfill-php80",
1211 | "version": "dev-main",
1212 | "source": {
1213 | "type": "git",
1214 | "url": "https://github.com/symfony/polyfill-php80.git",
1215 | "reference": "57b712b08eddb97c762a8caa32c84e037892d2e9"
1216 | },
1217 | "dist": {
1218 | "type": "zip",
1219 | "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/57b712b08eddb97c762a8caa32c84e037892d2e9",
1220 | "reference": "57b712b08eddb97c762a8caa32c84e037892d2e9",
1221 | "shasum": ""
1222 | },
1223 | "require": {
1224 | "php": ">=7.1"
1225 | },
1226 | "default-branch": true,
1227 | "type": "library",
1228 | "extra": {
1229 | "branch-alias": {
1230 | "dev-main": "1.23-dev"
1231 | },
1232 | "thanks": {
1233 | "name": "symfony/polyfill",
1234 | "url": "https://github.com/symfony/polyfill"
1235 | }
1236 | },
1237 | "autoload": {
1238 | "psr-4": {
1239 | "Symfony\\Polyfill\\Php80\\": ""
1240 | },
1241 | "files": [
1242 | "bootstrap.php"
1243 | ],
1244 | "classmap": [
1245 | "Resources/stubs"
1246 | ]
1247 | },
1248 | "notification-url": "https://packagist.org/downloads/",
1249 | "license": [
1250 | "MIT"
1251 | ],
1252 | "authors": [
1253 | {
1254 | "name": "Ion Bazan",
1255 | "email": "ion.bazan@gmail.com"
1256 | },
1257 | {
1258 | "name": "Nicolas Grekas",
1259 | "email": "p@tchwork.com"
1260 | },
1261 | {
1262 | "name": "Symfony Community",
1263 | "homepage": "https://symfony.com/contributors"
1264 | }
1265 | ],
1266 | "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
1267 | "homepage": "https://symfony.com",
1268 | "keywords": [
1269 | "compatibility",
1270 | "polyfill",
1271 | "portable",
1272 | "shim"
1273 | ],
1274 | "support": {
1275 | "source": "https://github.com/symfony/polyfill-php80/tree/main"
1276 | },
1277 | "funding": [
1278 | {
1279 | "url": "https://symfony.com/sponsor",
1280 | "type": "custom"
1281 | },
1282 | {
1283 | "url": "https://github.com/fabpot",
1284 | "type": "github"
1285 | },
1286 | {
1287 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
1288 | "type": "tidelift"
1289 | }
1290 | ],
1291 | "time": "2021-09-13T13:58:33+00:00"
1292 | },
1293 | {
1294 | "name": "symfony/polyfill-php81",
1295 | "version": "dev-main",
1296 | "source": {
1297 | "type": "git",
1298 | "url": "https://github.com/symfony/polyfill-php81.git",
1299 | "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f"
1300 | },
1301 | "dist": {
1302 | "type": "zip",
1303 | "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/5de4ba2d41b15f9bd0e19b2ab9674135813ec98f",
1304 | "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f",
1305 | "shasum": ""
1306 | },
1307 | "require": {
1308 | "php": ">=7.1"
1309 | },
1310 | "default-branch": true,
1311 | "type": "library",
1312 | "extra": {
1313 | "branch-alias": {
1314 | "dev-main": "1.23-dev"
1315 | },
1316 | "thanks": {
1317 | "name": "symfony/polyfill",
1318 | "url": "https://github.com/symfony/polyfill"
1319 | }
1320 | },
1321 | "autoload": {
1322 | "psr-4": {
1323 | "Symfony\\Polyfill\\Php81\\": ""
1324 | },
1325 | "files": [
1326 | "bootstrap.php"
1327 | ],
1328 | "classmap": [
1329 | "Resources/stubs"
1330 | ]
1331 | },
1332 | "notification-url": "https://packagist.org/downloads/",
1333 | "license": [
1334 | "MIT"
1335 | ],
1336 | "authors": [
1337 | {
1338 | "name": "Nicolas Grekas",
1339 | "email": "p@tchwork.com"
1340 | },
1341 | {
1342 | "name": "Symfony Community",
1343 | "homepage": "https://symfony.com/contributors"
1344 | }
1345 | ],
1346 | "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions",
1347 | "homepage": "https://symfony.com",
1348 | "keywords": [
1349 | "compatibility",
1350 | "polyfill",
1351 | "portable",
1352 | "shim"
1353 | ],
1354 | "support": {
1355 | "source": "https://github.com/symfony/polyfill-php81/tree/main"
1356 | },
1357 | "funding": [
1358 | {
1359 | "url": "https://symfony.com/sponsor",
1360 | "type": "custom"
1361 | },
1362 | {
1363 | "url": "https://github.com/fabpot",
1364 | "type": "github"
1365 | },
1366 | {
1367 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
1368 | "type": "tidelift"
1369 | }
1370 | ],
1371 | "time": "2021-09-13T13:58:11+00:00"
1372 | },
1373 | {
1374 | "name": "webmozart/assert",
1375 | "version": "dev-master",
1376 | "source": {
1377 | "type": "git",
1378 | "url": "https://github.com/webmozarts/assert.git",
1379 | "reference": "b419d648592b0b8911cbbe10d450fe314f4fd262"
1380 | },
1381 | "dist": {
1382 | "type": "zip",
1383 | "url": "https://api.github.com/repos/webmozarts/assert/zipball/b419d648592b0b8911cbbe10d450fe314f4fd262",
1384 | "reference": "b419d648592b0b8911cbbe10d450fe314f4fd262",
1385 | "shasum": ""
1386 | },
1387 | "require": {
1388 | "php": "^7.2 || ^8.0",
1389 | "symfony/polyfill-ctype": "^1.8"
1390 | },
1391 | "conflict": {
1392 | "phpstan/phpstan": "<0.12.20",
1393 | "vimeo/psalm": "<4.6.1 || 4.6.2"
1394 | },
1395 | "require-dev": {
1396 | "phpunit/phpunit": "^8.5.13"
1397 | },
1398 | "default-branch": true,
1399 | "type": "library",
1400 | "extra": {
1401 | "branch-alias": {
1402 | "dev-master": "1.10-dev"
1403 | }
1404 | },
1405 | "autoload": {
1406 | "psr-4": {
1407 | "Webmozart\\Assert\\": "src/"
1408 | }
1409 | },
1410 | "notification-url": "https://packagist.org/downloads/",
1411 | "license": [
1412 | "MIT"
1413 | ],
1414 | "authors": [
1415 | {
1416 | "name": "Bernhard Schussek",
1417 | "email": "bschussek@gmail.com"
1418 | }
1419 | ],
1420 | "description": "Assertions to validate method input/output with nice error messages.",
1421 | "keywords": [
1422 | "assert",
1423 | "check",
1424 | "validate"
1425 | ],
1426 | "support": {
1427 | "issues": "https://github.com/webmozarts/assert/issues",
1428 | "source": "https://github.com/webmozarts/assert/tree/master"
1429 | },
1430 | "time": "2021-06-19T13:45:26+00:00"
1431 | },
1432 | {
1433 | "name": "webmozart/path-util",
1434 | "version": "2.3.0",
1435 | "source": {
1436 | "type": "git",
1437 | "url": "https://github.com/webmozart/path-util.git",
1438 | "reference": "d939f7edc24c9a1bb9c0dee5cb05d8e859490725"
1439 | },
1440 | "dist": {
1441 | "type": "zip",
1442 | "url": "https://api.github.com/repos/webmozart/path-util/zipball/d939f7edc24c9a1bb9c0dee5cb05d8e859490725",
1443 | "reference": "d939f7edc24c9a1bb9c0dee5cb05d8e859490725",
1444 | "shasum": ""
1445 | },
1446 | "require": {
1447 | "php": ">=5.3.3",
1448 | "webmozart/assert": "~1.0"
1449 | },
1450 | "require-dev": {
1451 | "phpunit/phpunit": "^4.6",
1452 | "sebastian/version": "^1.0.1"
1453 | },
1454 | "type": "library",
1455 | "extra": {
1456 | "branch-alias": {
1457 | "dev-master": "2.3-dev"
1458 | }
1459 | },
1460 | "autoload": {
1461 | "psr-4": {
1462 | "Webmozart\\PathUtil\\": "src/"
1463 | }
1464 | },
1465 | "notification-url": "https://packagist.org/downloads/",
1466 | "license": [
1467 | "MIT"
1468 | ],
1469 | "authors": [
1470 | {
1471 | "name": "Bernhard Schussek",
1472 | "email": "bschussek@gmail.com"
1473 | }
1474 | ],
1475 | "description": "A robust cross-platform utility for normalizing, comparing and modifying file paths.",
1476 | "support": {
1477 | "issues": "https://github.com/webmozart/path-util/issues",
1478 | "source": "https://github.com/webmozart/path-util/tree/2.3.0"
1479 | },
1480 | "abandoned": "symfony/filesystem",
1481 | "time": "2015-12-17T08:42:14+00:00"
1482 | }
1483 | ],
1484 | "packages-dev": [
1485 | {
1486 | "name": "phpstan/phpstan",
1487 | "version": "1.2.0",
1488 | "source": {
1489 | "type": "git",
1490 | "url": "https://github.com/phpstan/phpstan.git",
1491 | "reference": "cbe085f9fdead5b6d62e4c022ca52dc9427a10ee"
1492 | },
1493 | "dist": {
1494 | "type": "zip",
1495 | "url": "https://api.github.com/repos/phpstan/phpstan/zipball/cbe085f9fdead5b6d62e4c022ca52dc9427a10ee",
1496 | "reference": "cbe085f9fdead5b6d62e4c022ca52dc9427a10ee",
1497 | "shasum": ""
1498 | },
1499 | "require": {
1500 | "php": "^7.1|^8.0"
1501 | },
1502 | "conflict": {
1503 | "phpstan/phpstan-shim": "*"
1504 | },
1505 | "bin": [
1506 | "phpstan",
1507 | "phpstan.phar"
1508 | ],
1509 | "type": "library",
1510 | "extra": {
1511 | "branch-alias": {
1512 | "dev-master": "1.2-dev"
1513 | }
1514 | },
1515 | "autoload": {
1516 | "files": [
1517 | "bootstrap.php"
1518 | ]
1519 | },
1520 | "notification-url": "https://packagist.org/downloads/",
1521 | "license": [
1522 | "MIT"
1523 | ],
1524 | "description": "PHPStan - PHP Static Analysis Tool",
1525 | "support": {
1526 | "issues": "https://github.com/phpstan/phpstan/issues",
1527 | "source": "https://github.com/phpstan/phpstan/tree/1.2.0"
1528 | },
1529 | "funding": [
1530 | {
1531 | "url": "https://github.com/ondrejmirtes",
1532 | "type": "github"
1533 | },
1534 | {
1535 | "url": "https://github.com/phpstan",
1536 | "type": "github"
1537 | },
1538 | {
1539 | "url": "https://www.patreon.com/phpstan",
1540 | "type": "patreon"
1541 | },
1542 | {
1543 | "url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan",
1544 | "type": "tidelift"
1545 | }
1546 | ],
1547 | "time": "2021-11-18T14:09:01+00:00"
1548 | }
1549 | ],
1550 | "aliases": [],
1551 | "minimum-stability": "dev",
1552 | "stability-flags": [],
1553 | "prefer-stable": false,
1554 | "prefer-lowest": false,
1555 | "platform": {
1556 | "php": "^8.0",
1557 | "ext-yaml": "*",
1558 | "ext-pthreads": "*",
1559 | "ext-zlib": "*",
1560 | "ext-json": "*"
1561 | },
1562 | "platform-dev": [],
1563 | "plugin-api-version": "2.1.0"
1564 | }
1565 |
--------------------------------------------------------------------------------
/Snow/composer.lock:
--------------------------------------------------------------------------------
1 | {
2 | "_readme": [
3 | "This file locks the dependencies of your project to a known state",
4 | "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
5 | "This file is @generated automatically"
6 | ],
7 | "content-hash": "75d9f2630156e18a497a03f3b1daf1b3",
8 | "packages": [
9 | {
10 | "name": "adhocore/json-comment",
11 | "version": "1.1.2",
12 | "source": {
13 | "type": "git",
14 | "url": "https://github.com/adhocore/php-json-comment.git",
15 | "reference": "fc2f76979f0a44a5f5bc2a2b600d0762fe0e78e7"
16 | },
17 | "dist": {
18 | "type": "zip",
19 | "url": "https://api.github.com/repos/adhocore/php-json-comment/zipball/fc2f76979f0a44a5f5bc2a2b600d0762fe0e78e7",
20 | "reference": "fc2f76979f0a44a5f5bc2a2b600d0762fe0e78e7",
21 | "shasum": ""
22 | },
23 | "require": {
24 | "ext-ctype": "*",
25 | "php": ">=7.0"
26 | },
27 | "require-dev": {
28 | "phpunit/phpunit": "^6.5 || ^7.5 || ^8.5"
29 | },
30 | "type": "library",
31 | "autoload": {
32 | "psr-4": {
33 | "Ahc\\Json\\": "src/"
34 | }
35 | },
36 | "notification-url": "https://packagist.org/downloads/",
37 | "license": [
38 | "MIT"
39 | ],
40 | "authors": [
41 | {
42 | "name": "Jitendra Adhikari",
43 | "email": "jiten.adhikary@gmail.com"
44 | }
45 | ],
46 | "description": "Lightweight JSON comment stripper library for PHP",
47 | "keywords": [
48 | "comment",
49 | "json",
50 | "strip-comment"
51 | ],
52 | "support": {
53 | "issues": "https://github.com/adhocore/php-json-comment/issues",
54 | "source": "https://github.com/adhocore/php-json-comment/tree/1.1.2"
55 | },
56 | "funding": [
57 | {
58 | "url": "https://paypal.me/ji10",
59 | "type": "custom"
60 | }
61 | ],
62 | "time": "2021-04-09T03:06:06+00:00"
63 | },
64 | {
65 | "name": "brick/math",
66 | "version": "0.9.3",
67 | "source": {
68 | "type": "git",
69 | "url": "https://github.com/brick/math.git",
70 | "reference": "ca57d18f028f84f777b2168cd1911b0dee2343ae"
71 | },
72 | "dist": {
73 | "type": "zip",
74 | "url": "https://api.github.com/repos/brick/math/zipball/ca57d18f028f84f777b2168cd1911b0dee2343ae",
75 | "reference": "ca57d18f028f84f777b2168cd1911b0dee2343ae",
76 | "shasum": ""
77 | },
78 | "require": {
79 | "ext-json": "*",
80 | "php": "^7.1 || ^8.0"
81 | },
82 | "require-dev": {
83 | "php-coveralls/php-coveralls": "^2.2",
84 | "phpunit/phpunit": "^7.5.15 || ^8.5 || ^9.0",
85 | "vimeo/psalm": "4.9.2"
86 | },
87 | "type": "library",
88 | "autoload": {
89 | "psr-4": {
90 | "Brick\\Math\\": "src/"
91 | }
92 | },
93 | "notification-url": "https://packagist.org/downloads/",
94 | "license": [
95 | "MIT"
96 | ],
97 | "description": "Arbitrary-precision arithmetic library",
98 | "keywords": [
99 | "Arbitrary-precision",
100 | "BigInteger",
101 | "BigRational",
102 | "arithmetic",
103 | "bigdecimal",
104 | "bignum",
105 | "brick",
106 | "math"
107 | ],
108 | "support": {
109 | "issues": "https://github.com/brick/math/issues",
110 | "source": "https://github.com/brick/math/tree/0.9.3"
111 | },
112 | "funding": [
113 | {
114 | "url": "https://github.com/BenMorel",
115 | "type": "github"
116 | },
117 | {
118 | "url": "https://tidelift.com/funding/github/packagist/brick/math",
119 | "type": "tidelift"
120 | }
121 | ],
122 | "time": "2021-08-15T20:50:18+00:00"
123 | },
124 | {
125 | "name": "fgrosse/phpasn1",
126 | "version": "v2.3.0",
127 | "source": {
128 | "type": "git",
129 | "url": "https://github.com/fgrosse/PHPASN1.git",
130 | "reference": "20299033c35f4300eb656e7e8e88cf52d1d6694e"
131 | },
132 | "dist": {
133 | "type": "zip",
134 | "url": "https://api.github.com/repos/fgrosse/PHPASN1/zipball/20299033c35f4300eb656e7e8e88cf52d1d6694e",
135 | "reference": "20299033c35f4300eb656e7e8e88cf52d1d6694e",
136 | "shasum": ""
137 | },
138 | "require": {
139 | "php": ">=7.0.0"
140 | },
141 | "require-dev": {
142 | "phpunit/phpunit": "~6.3",
143 | "satooshi/php-coveralls": "~2.0"
144 | },
145 | "suggest": {
146 | "ext-bcmath": "BCmath is the fallback extension for big integer calculations",
147 | "ext-curl": "For loading OID information from the web if they have not bee defined statically",
148 | "ext-gmp": "GMP is the preferred extension for big integer calculations",
149 | "phpseclib/bcmath_compat": "BCmath polyfill for servers where neither GMP nor BCmath is available"
150 | },
151 | "type": "library",
152 | "extra": {
153 | "branch-alias": {
154 | "dev-master": "2.0.x-dev"
155 | }
156 | },
157 | "autoload": {
158 | "psr-4": {
159 | "FG\\": "lib/"
160 | }
161 | },
162 | "notification-url": "https://packagist.org/downloads/",
163 | "license": [
164 | "MIT"
165 | ],
166 | "authors": [
167 | {
168 | "name": "Friedrich Große",
169 | "email": "friedrich.grosse@gmail.com",
170 | "homepage": "https://github.com/FGrosse",
171 | "role": "Author"
172 | },
173 | {
174 | "name": "All contributors",
175 | "homepage": "https://github.com/FGrosse/PHPASN1/contributors"
176 | }
177 | ],
178 | "description": "A PHP Framework that allows you to encode and decode arbitrary ASN.1 structures using the ITU-T X.690 Encoding Rules.",
179 | "homepage": "https://github.com/FGrosse/PHPASN1",
180 | "keywords": [
181 | "DER",
182 | "asn.1",
183 | "asn1",
184 | "ber",
185 | "binary",
186 | "decoding",
187 | "encoding",
188 | "x.509",
189 | "x.690",
190 | "x509",
191 | "x690"
192 | ],
193 | "support": {
194 | "issues": "https://github.com/fgrosse/PHPASN1/issues",
195 | "source": "https://github.com/fgrosse/PHPASN1/tree/v2.3.0"
196 | },
197 | "time": "2021-04-24T19:01:55+00:00"
198 | },
199 | {
200 | "name": "netresearch/jsonmapper",
201 | "version": "v4.0.0",
202 | "source": {
203 | "type": "git",
204 | "url": "https://github.com/cweiske/jsonmapper.git",
205 | "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d"
206 | },
207 | "dist": {
208 | "type": "zip",
209 | "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d",
210 | "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d",
211 | "shasum": ""
212 | },
213 | "require": {
214 | "ext-json": "*",
215 | "ext-pcre": "*",
216 | "ext-reflection": "*",
217 | "ext-spl": "*",
218 | "php": ">=7.1"
219 | },
220 | "require-dev": {
221 | "phpunit/phpunit": "~7.5 || ~8.0 || ~9.0",
222 | "squizlabs/php_codesniffer": "~3.5"
223 | },
224 | "type": "library",
225 | "autoload": {
226 | "psr-0": {
227 | "JsonMapper": "src/"
228 | }
229 | },
230 | "notification-url": "https://packagist.org/downloads/",
231 | "license": [
232 | "OSL-3.0"
233 | ],
234 | "authors": [
235 | {
236 | "name": "Christian Weiske",
237 | "email": "cweiske@cweiske.de",
238 | "homepage": "http://github.com/cweiske/jsonmapper/",
239 | "role": "Developer"
240 | }
241 | ],
242 | "description": "Map nested JSON structures onto PHP classes",
243 | "support": {
244 | "email": "cweiske@cweiske.de",
245 | "issues": "https://github.com/cweiske/jsonmapper/issues",
246 | "source": "https://github.com/cweiske/jsonmapper/tree/v4.0.0"
247 | },
248 | "time": "2020-12-01T19:48:11+00:00"
249 | },
250 | {
251 | "name": "pocketmine/bedrock-data",
252 | "version": "1.5.0+bedrock-1.18.0",
253 | "source": {
254 | "type": "git",
255 | "url": "https://github.com/pmmp/BedrockData.git",
256 | "reference": "482c679aa5ed0b81c088c2b1ff0b8110a94c8a6c"
257 | },
258 | "dist": {
259 | "type": "zip",
260 | "url": "https://api.github.com/repos/pmmp/BedrockData/zipball/482c679aa5ed0b81c088c2b1ff0b8110a94c8a6c",
261 | "reference": "482c679aa5ed0b81c088c2b1ff0b8110a94c8a6c",
262 | "shasum": ""
263 | },
264 | "type": "library",
265 | "notification-url": "https://packagist.org/downloads/",
266 | "license": [
267 | "LGPL-3.0"
268 | ],
269 | "description": "Blobs of data generated from Minecraft: Bedrock Edition, used by PocketMine-MP",
270 | "support": {
271 | "issues": "https://github.com/pmmp/BedrockData/issues",
272 | "source": "https://github.com/pmmp/BedrockData/tree/bedrock-1.18.0"
273 | },
274 | "time": "2021-11-30T18:30:46+00:00"
275 | },
276 | {
277 | "name": "pocketmine/bedrock-protocol",
278 | "version": "7.0.0+bedrock-1.18.0",
279 | "source": {
280 | "type": "git",
281 | "url": "https://github.com/pmmp/BedrockProtocol.git",
282 | "reference": "040a883a4abb8c9b93114d5278cb5fecc635da82"
283 | },
284 | "dist": {
285 | "type": "zip",
286 | "url": "https://api.github.com/repos/pmmp/BedrockProtocol/zipball/040a883a4abb8c9b93114d5278cb5fecc635da82",
287 | "reference": "040a883a4abb8c9b93114d5278cb5fecc635da82",
288 | "shasum": ""
289 | },
290 | "require": {
291 | "ext-json": "*",
292 | "netresearch/jsonmapper": "^4.0",
293 | "php": "^8.0",
294 | "pocketmine/binaryutils": "^0.2.0",
295 | "pocketmine/color": "^0.2.0",
296 | "pocketmine/math": "^0.3.0 || ^0.4.0",
297 | "pocketmine/nbt": "^0.3.0",
298 | "ramsey/uuid": "^4.1"
299 | },
300 | "require-dev": {
301 | "phpstan/phpstan": "1.2.0",
302 | "phpstan/phpstan-phpunit": "^1.0.0",
303 | "phpstan/phpstan-strict-rules": "^1.0.0",
304 | "phpunit/phpunit": "^9.5"
305 | },
306 | "type": "library",
307 | "autoload": {
308 | "psr-4": {
309 | "pocketmine\\network\\mcpe\\protocol\\": "src/"
310 | }
311 | },
312 | "notification-url": "https://packagist.org/downloads/",
313 | "license": [
314 | "LGPL-3.0"
315 | ],
316 | "description": "An implementation of the Minecraft: Bedrock Edition protocol in PHP",
317 | "support": {
318 | "issues": "https://github.com/pmmp/BedrockProtocol/issues",
319 | "source": "https://github.com/pmmp/BedrockProtocol/tree/7.0.0+bedrock-1.18.0"
320 | },
321 | "time": "2021-11-30T19:02:41+00:00"
322 | },
323 | {
324 | "name": "pocketmine/binaryutils",
325 | "version": "0.2.3",
326 | "source": {
327 | "type": "git",
328 | "url": "https://github.com/pmmp/BinaryUtils.git",
329 | "reference": "dc94786fc6c30012b1892f548dbb8a8c9c0a8cd9"
330 | },
331 | "dist": {
332 | "type": "zip",
333 | "url": "https://api.github.com/repos/pmmp/BinaryUtils/zipball/dc94786fc6c30012b1892f548dbb8a8c9c0a8cd9",
334 | "reference": "dc94786fc6c30012b1892f548dbb8a8c9c0a8cd9",
335 | "shasum": ""
336 | },
337 | "require": {
338 | "php": "^7.4 || ^8.0",
339 | "php-64bit": "*"
340 | },
341 | "require-dev": {
342 | "phpstan/extension-installer": "^1.0",
343 | "phpstan/phpstan": "1.2.0",
344 | "phpstan/phpstan-phpunit": "^1.0",
345 | "phpstan/phpstan-strict-rules": "^1.0.0",
346 | "phpunit/phpunit": "^9.5"
347 | },
348 | "type": "library",
349 | "autoload": {
350 | "psr-4": {
351 | "pocketmine\\utils\\": "src/"
352 | }
353 | },
354 | "notification-url": "https://packagist.org/downloads/",
355 | "license": [
356 | "LGPL-3.0"
357 | ],
358 | "description": "Classes and methods for conveniently handling binary data",
359 | "support": {
360 | "issues": "https://github.com/pmmp/BinaryUtils/issues",
361 | "source": "https://github.com/pmmp/BinaryUtils/tree/0.2.3"
362 | },
363 | "time": "2021-12-04T20:56:05+00:00"
364 | },
365 | {
366 | "name": "pocketmine/callback-validator",
367 | "version": "1.0.3",
368 | "source": {
369 | "type": "git",
370 | "url": "https://github.com/pmmp/CallbackValidator.git",
371 | "reference": "64787469766bcaa7e5885242e85c23c25e8c55a2"
372 | },
373 | "dist": {
374 | "type": "zip",
375 | "url": "https://api.github.com/repos/pmmp/CallbackValidator/zipball/64787469766bcaa7e5885242e85c23c25e8c55a2",
376 | "reference": "64787469766bcaa7e5885242e85c23c25e8c55a2",
377 | "shasum": ""
378 | },
379 | "require": {
380 | "ext-reflection": "*",
381 | "php": "^7.1 || ^8.0"
382 | },
383 | "replace": {
384 | "daverandom/callback-validator": "*"
385 | },
386 | "require-dev": {
387 | "phpstan/extension-installer": "^1.0",
388 | "phpstan/phpstan": "0.12.59",
389 | "phpstan/phpstan-strict-rules": "^0.12.4",
390 | "phpunit/phpunit": "^7.5 || ^8.5 || ^9.0"
391 | },
392 | "type": "library",
393 | "autoload": {
394 | "psr-4": {
395 | "DaveRandom\\CallbackValidator\\": "src/"
396 | }
397 | },
398 | "notification-url": "https://packagist.org/downloads/",
399 | "license": [
400 | "MIT"
401 | ],
402 | "authors": [
403 | {
404 | "name": "Chris Wright",
405 | "email": "cw@daverandom.com"
406 | }
407 | ],
408 | "description": "Fork of daverandom/callback-validator - Tools for validating callback signatures",
409 | "support": {
410 | "issues": "https://github.com/pmmp/CallbackValidator/issues",
411 | "source": "https://github.com/pmmp/CallbackValidator/tree/1.0.3"
412 | },
413 | "time": "2020-12-11T01:45:37+00:00"
414 | },
415 | {
416 | "name": "pocketmine/classloader",
417 | "version": "0.2.0",
418 | "source": {
419 | "type": "git",
420 | "url": "https://github.com/pmmp/ClassLoader.git",
421 | "reference": "49ea303993efdfb39cd302e2156d50aa78209e78"
422 | },
423 | "dist": {
424 | "type": "zip",
425 | "url": "https://api.github.com/repos/pmmp/ClassLoader/zipball/49ea303993efdfb39cd302e2156d50aa78209e78",
426 | "reference": "49ea303993efdfb39cd302e2156d50aa78209e78",
427 | "shasum": ""
428 | },
429 | "require": {
430 | "ext-pthreads": "~3.2.0 || ^4.0",
431 | "ext-reflection": "*",
432 | "php": "^8.0"
433 | },
434 | "conflict": {
435 | "pocketmine/spl": "<0.4"
436 | },
437 | "require-dev": {
438 | "phpstan/extension-installer": "^1.0",
439 | "phpstan/phpstan": "0.12.99",
440 | "phpstan/phpstan-strict-rules": "^0.12.4",
441 | "phpunit/phpunit": "^9.5"
442 | },
443 | "type": "library",
444 | "autoload": {
445 | "classmap": [
446 | "./src"
447 | ]
448 | },
449 | "notification-url": "https://packagist.org/downloads/",
450 | "license": [
451 | "LGPL-3.0"
452 | ],
453 | "description": "Ad-hoc autoloading components used by PocketMine-MP",
454 | "support": {
455 | "issues": "https://github.com/pmmp/ClassLoader/issues",
456 | "source": "https://github.com/pmmp/ClassLoader/tree/0.2.0"
457 | },
458 | "time": "2021-11-01T20:17:27+00:00"
459 | },
460 | {
461 | "name": "pocketmine/color",
462 | "version": "0.2.0",
463 | "source": {
464 | "type": "git",
465 | "url": "https://github.com/pmmp/Color.git",
466 | "reference": "09be6ea6d76f2e33d6813c39d29c22c46c17e1d2"
467 | },
468 | "dist": {
469 | "type": "zip",
470 | "url": "https://api.github.com/repos/pmmp/Color/zipball/09be6ea6d76f2e33d6813c39d29c22c46c17e1d2",
471 | "reference": "09be6ea6d76f2e33d6813c39d29c22c46c17e1d2",
472 | "shasum": ""
473 | },
474 | "require": {
475 | "php": "^7.2 || ^8.0"
476 | },
477 | "require-dev": {
478 | "phpstan/phpstan": "0.12.59",
479 | "phpstan/phpstan-strict-rules": "^0.12.2"
480 | },
481 | "type": "library",
482 | "autoload": {
483 | "psr-4": {
484 | "pocketmine\\color\\": "src/"
485 | }
486 | },
487 | "notification-url": "https://packagist.org/downloads/",
488 | "license": [
489 | "LGPL-3.0"
490 | ],
491 | "description": "Color handling library used by PocketMine-MP and related projects",
492 | "support": {
493 | "issues": "https://github.com/pmmp/Color/issues",
494 | "source": "https://github.com/pmmp/Color/tree/0.2.0"
495 | },
496 | "time": "2020-12-11T01:24:32+00:00"
497 | },
498 | {
499 | "name": "pocketmine/errorhandler",
500 | "version": "0.3.0",
501 | "source": {
502 | "type": "git",
503 | "url": "https://github.com/pmmp/ErrorHandler.git",
504 | "reference": "ec742b209e8056bbe855069c4eff94c9734ea19b"
505 | },
506 | "dist": {
507 | "type": "zip",
508 | "url": "https://api.github.com/repos/pmmp/ErrorHandler/zipball/ec742b209e8056bbe855069c4eff94c9734ea19b",
509 | "reference": "ec742b209e8056bbe855069c4eff94c9734ea19b",
510 | "shasum": ""
511 | },
512 | "require": {
513 | "php": "^7.2 || ^8.0"
514 | },
515 | "require-dev": {
516 | "phpstan/phpstan": "0.12.75",
517 | "phpstan/phpstan-strict-rules": "^0.12.2"
518 | },
519 | "type": "library",
520 | "autoload": {
521 | "psr-4": {
522 | "pocketmine\\errorhandler\\": "src/"
523 | }
524 | },
525 | "notification-url": "https://packagist.org/downloads/",
526 | "license": [
527 | "LGPL-3.0"
528 | ],
529 | "description": "Utilities to handle nasty PHP E_* errors in a usable way",
530 | "support": {
531 | "issues": "https://github.com/pmmp/ErrorHandler/issues",
532 | "source": "https://github.com/pmmp/ErrorHandler/tree/0.3.0"
533 | },
534 | "time": "2021-02-12T18:56:22+00:00"
535 | },
536 | {
537 | "name": "pocketmine/locale-data",
538 | "version": "2.0.22",
539 | "source": {
540 | "type": "git",
541 | "url": "https://github.com/pmmp/Language.git",
542 | "reference": "181eb9d42653296e65d55a1bbba10e0dd76bbd61"
543 | },
544 | "dist": {
545 | "type": "zip",
546 | "url": "https://api.github.com/repos/pmmp/Language/zipball/181eb9d42653296e65d55a1bbba10e0dd76bbd61",
547 | "reference": "181eb9d42653296e65d55a1bbba10e0dd76bbd61",
548 | "shasum": ""
549 | },
550 | "type": "library",
551 | "notification-url": "https://packagist.org/downloads/",
552 | "description": "Language resources used by PocketMine-MP",
553 | "support": {
554 | "issues": "https://github.com/pmmp/Language/issues",
555 | "source": "https://github.com/pmmp/Language/tree/2.0.22"
556 | },
557 | "time": "2021-12-04T22:37:10+00:00"
558 | },
559 | {
560 | "name": "pocketmine/log",
561 | "version": "0.4.0",
562 | "source": {
563 | "type": "git",
564 | "url": "https://github.com/pmmp/Log.git",
565 | "reference": "e6c912c0f9055c81d23108ec2d179b96f404c043"
566 | },
567 | "dist": {
568 | "type": "zip",
569 | "url": "https://api.github.com/repos/pmmp/Log/zipball/e6c912c0f9055c81d23108ec2d179b96f404c043",
570 | "reference": "e6c912c0f9055c81d23108ec2d179b96f404c043",
571 | "shasum": ""
572 | },
573 | "require": {
574 | "php": "^7.4 || ^8.0"
575 | },
576 | "conflict": {
577 | "pocketmine/spl": "<0.4"
578 | },
579 | "require-dev": {
580 | "phpstan/phpstan": "0.12.88",
581 | "phpstan/phpstan-strict-rules": "^0.12.2"
582 | },
583 | "type": "library",
584 | "autoload": {
585 | "classmap": [
586 | "./src"
587 | ]
588 | },
589 | "notification-url": "https://packagist.org/downloads/",
590 | "license": [
591 | "LGPL-3.0"
592 | ],
593 | "description": "Logging components used by PocketMine-MP and related projects",
594 | "support": {
595 | "issues": "https://github.com/pmmp/Log/issues",
596 | "source": "https://github.com/pmmp/Log/tree/0.4.0"
597 | },
598 | "time": "2021-06-18T19:08:09+00:00"
599 | },
600 | {
601 | "name": "pocketmine/log-pthreads",
602 | "version": "0.4.0",
603 | "source": {
604 | "type": "git",
605 | "url": "https://github.com/pmmp/LogPthreads.git",
606 | "reference": "61f709e8cf36bcc24e4efe02acded680a1ce23cd"
607 | },
608 | "dist": {
609 | "type": "zip",
610 | "url": "https://api.github.com/repos/pmmp/LogPthreads/zipball/61f709e8cf36bcc24e4efe02acded680a1ce23cd",
611 | "reference": "61f709e8cf36bcc24e4efe02acded680a1ce23cd",
612 | "shasum": ""
613 | },
614 | "require": {
615 | "ext-pthreads": "~3.2.0 || ^4.0",
616 | "php": "^7.4 || ^8.0",
617 | "pocketmine/log": "^0.4.0"
618 | },
619 | "conflict": {
620 | "pocketmine/spl": "<0.4"
621 | },
622 | "require-dev": {
623 | "phpstan/extension-installer": "^1.0",
624 | "phpstan/phpstan": "0.12.88",
625 | "phpstan/phpstan-strict-rules": "^0.12.4"
626 | },
627 | "type": "library",
628 | "autoload": {
629 | "classmap": [
630 | "./src"
631 | ]
632 | },
633 | "notification-url": "https://packagist.org/downloads/",
634 | "license": [
635 | "LGPL-3.0"
636 | ],
637 | "description": "Logging components specialized for pthreads used by PocketMine-MP and related projects",
638 | "support": {
639 | "issues": "https://github.com/pmmp/LogPthreads/issues",
640 | "source": "https://github.com/pmmp/LogPthreads/tree/0.4.0"
641 | },
642 | "time": "2021-11-01T21:42:09+00:00"
643 | },
644 | {
645 | "name": "pocketmine/math",
646 | "version": "0.4.1",
647 | "source": {
648 | "type": "git",
649 | "url": "https://github.com/pmmp/Math.git",
650 | "reference": "9504957e90415ee1b33cbc13e622c6c5be88e5ac"
651 | },
652 | "dist": {
653 | "type": "zip",
654 | "url": "https://api.github.com/repos/pmmp/Math/zipball/9504957e90415ee1b33cbc13e622c6c5be88e5ac",
655 | "reference": "9504957e90415ee1b33cbc13e622c6c5be88e5ac",
656 | "shasum": ""
657 | },
658 | "require": {
659 | "php": "^8.0",
660 | "php-64bit": "*"
661 | },
662 | "require-dev": {
663 | "phpstan/extension-installer": "^1.0",
664 | "phpstan/phpstan": "1.2.0",
665 | "phpstan/phpstan-strict-rules": "^1.0",
666 | "phpunit/phpunit": "^8.5 || ^9.5"
667 | },
668 | "type": "library",
669 | "autoload": {
670 | "psr-4": {
671 | "pocketmine\\math\\": "src/"
672 | }
673 | },
674 | "notification-url": "https://packagist.org/downloads/",
675 | "license": [
676 | "LGPL-3.0"
677 | ],
678 | "description": "PHP library containing math related code used in PocketMine-MP",
679 | "support": {
680 | "issues": "https://github.com/pmmp/Math/issues",
681 | "source": "https://github.com/pmmp/Math/tree/0.4.1"
682 | },
683 | "time": "2021-12-03T14:28:34+00:00"
684 | },
685 | {
686 | "name": "pocketmine/nbt",
687 | "version": "0.3.0",
688 | "source": {
689 | "type": "git",
690 | "url": "https://github.com/pmmp/NBT.git",
691 | "reference": "98c4a04b55a915e18f83d3b0c9beb24a71abcd31"
692 | },
693 | "dist": {
694 | "type": "zip",
695 | "url": "https://api.github.com/repos/pmmp/NBT/zipball/98c4a04b55a915e18f83d3b0c9beb24a71abcd31",
696 | "reference": "98c4a04b55a915e18f83d3b0c9beb24a71abcd31",
697 | "shasum": ""
698 | },
699 | "require": {
700 | "php": "^7.4 || ^8.0",
701 | "php-64bit": "*",
702 | "pocketmine/binaryutils": "^0.2.0"
703 | },
704 | "require-dev": {
705 | "irstea/phpunit-shim": "^9.5",
706 | "phpstan/extension-installer": "^1.0",
707 | "phpstan/phpstan": "0.12.85",
708 | "phpstan/phpstan-strict-rules": "^0.12.4"
709 | },
710 | "type": "library",
711 | "autoload": {
712 | "psr-4": {
713 | "pocketmine\\nbt\\": "src/"
714 | }
715 | },
716 | "notification-url": "https://packagist.org/downloads/",
717 | "license": [
718 | "LGPL-3.0"
719 | ],
720 | "description": "PHP library for working with Named Binary Tags",
721 | "support": {
722 | "issues": "https://github.com/pmmp/NBT/issues",
723 | "source": "https://github.com/pmmp/NBT/tree/0.3.0"
724 | },
725 | "time": "2021-05-18T15:46:33+00:00"
726 | },
727 | {
728 | "name": "pocketmine/pocketmine-mp",
729 | "version": "4.0.0",
730 | "source": {
731 | "type": "git",
732 | "url": "https://github.com/pmmp/PocketMine-MP.git",
733 | "reference": "468faa464b2bc5c97f23fafbb71ea61035f6f218"
734 | },
735 | "dist": {
736 | "type": "zip",
737 | "url": "https://api.github.com/repos/pmmp/PocketMine-MP/zipball/468faa464b2bc5c97f23fafbb71ea61035f6f218",
738 | "reference": "468faa464b2bc5c97f23fafbb71ea61035f6f218",
739 | "shasum": ""
740 | },
741 | "require": {
742 | "adhocore/json-comment": "^1.1",
743 | "composer-runtime-api": "^2.0",
744 | "ext-chunkutils2": "^0.3.1",
745 | "ext-crypto": "^0.3.1",
746 | "ext-ctype": "*",
747 | "ext-curl": "*",
748 | "ext-date": "*",
749 | "ext-gmp": "*",
750 | "ext-hash": "*",
751 | "ext-igbinary": "^3.0.1",
752 | "ext-json": "*",
753 | "ext-leveldb": "^0.2.1 || ^0.3.0",
754 | "ext-mbstring": "*",
755 | "ext-morton": "^0.1.0",
756 | "ext-openssl": "*",
757 | "ext-pcre": "*",
758 | "ext-phar": "*",
759 | "ext-pthreads": "^4.0",
760 | "ext-reflection": "*",
761 | "ext-simplexml": "*",
762 | "ext-sockets": "*",
763 | "ext-spl": "*",
764 | "ext-yaml": ">=2.0.0",
765 | "ext-zip": "*",
766 | "ext-zlib": ">=1.2.11",
767 | "fgrosse/phpasn1": "^2.3",
768 | "netresearch/jsonmapper": "^4.0",
769 | "php": "^8.0",
770 | "php-64bit": "*",
771 | "pocketmine/bedrock-data": "^1.5.0+bedrock-1.18.0",
772 | "pocketmine/bedrock-protocol": "^7.0.0+bedrock-1.18.0",
773 | "pocketmine/binaryutils": "^0.2.1",
774 | "pocketmine/callback-validator": "^1.0.2",
775 | "pocketmine/classloader": "^0.2.0",
776 | "pocketmine/color": "^0.2.0",
777 | "pocketmine/errorhandler": "^0.3.0",
778 | "pocketmine/locale-data": "^2.0.16",
779 | "pocketmine/log": "^0.4.0",
780 | "pocketmine/log-pthreads": "^0.4.0",
781 | "pocketmine/math": "^0.4.0",
782 | "pocketmine/nbt": "^0.3.0",
783 | "pocketmine/raklib": "^0.14.2",
784 | "pocketmine/raklib-ipc": "^0.1.0",
785 | "pocketmine/snooze": "^0.3.0",
786 | "ramsey/uuid": "^4.1",
787 | "webmozart/path-util": "^2.3"
788 | },
789 | "require-dev": {
790 | "phpstan/phpstan": "1.2.0",
791 | "phpstan/phpstan-phpunit": "^1.0.0",
792 | "phpstan/phpstan-strict-rules": "^1.0.0",
793 | "phpunit/phpunit": "^9.2"
794 | },
795 | "type": "project",
796 | "autoload": {
797 | "psr-4": {
798 | "pocketmine\\": "src/"
799 | },
800 | "files": [
801 | "src/CoreConstants.php"
802 | ]
803 | },
804 | "notification-url": "https://packagist.org/downloads/",
805 | "license": [
806 | "LGPL-3.0"
807 | ],
808 | "description": "A server software for Minecraft: Bedrock Edition written in PHP",
809 | "homepage": "https://pmmp.io",
810 | "support": {
811 | "issues": "https://github.com/pmmp/PocketMine-MP/issues",
812 | "source": "https://github.com/pmmp/PocketMine-MP/tree/4.0.0"
813 | },
814 | "funding": [
815 | {
816 | "url": "https://github.com/pmmp/PocketMine-MP#donate",
817 | "type": "custom"
818 | },
819 | {
820 | "url": "https://www.patreon.com/pocketminemp",
821 | "type": "patreon"
822 | }
823 | ],
824 | "time": "2021-12-01T22:33:52+00:00"
825 | },
826 | {
827 | "name": "pocketmine/raklib",
828 | "version": "0.14.2",
829 | "source": {
830 | "type": "git",
831 | "url": "https://github.com/pmmp/RakLib.git",
832 | "reference": "e3a861187470e1facc6625040128f447ebbcbaec"
833 | },
834 | "dist": {
835 | "type": "zip",
836 | "url": "https://api.github.com/repos/pmmp/RakLib/zipball/e3a861187470e1facc6625040128f447ebbcbaec",
837 | "reference": "e3a861187470e1facc6625040128f447ebbcbaec",
838 | "shasum": ""
839 | },
840 | "require": {
841 | "ext-sockets": "*",
842 | "php": "^8.0",
843 | "php-64bit": "*",
844 | "php-ipv6": "*",
845 | "pocketmine/binaryutils": "^0.2.0",
846 | "pocketmine/log": "^0.3.0 || ^0.4.0"
847 | },
848 | "require-dev": {
849 | "phpstan/phpstan": "0.12.99",
850 | "phpstan/phpstan-strict-rules": "^0.12.2"
851 | },
852 | "type": "library",
853 | "autoload": {
854 | "psr-4": {
855 | "raklib\\": "src/"
856 | }
857 | },
858 | "notification-url": "https://packagist.org/downloads/",
859 | "license": [
860 | "GPL-3.0"
861 | ],
862 | "description": "A RakNet server implementation written in PHP",
863 | "support": {
864 | "issues": "https://github.com/pmmp/RakLib/issues",
865 | "source": "https://github.com/pmmp/RakLib/tree/0.14.2"
866 | },
867 | "time": "2021-10-04T20:39:11+00:00"
868 | },
869 | {
870 | "name": "pocketmine/raklib-ipc",
871 | "version": "0.1.1",
872 | "source": {
873 | "type": "git",
874 | "url": "https://github.com/pmmp/RakLibIpc.git",
875 | "reference": "922a6444b0c6c7daaa5aa5a832107e1ec4738aed"
876 | },
877 | "dist": {
878 | "type": "zip",
879 | "url": "https://api.github.com/repos/pmmp/RakLibIpc/zipball/922a6444b0c6c7daaa5aa5a832107e1ec4738aed",
880 | "reference": "922a6444b0c6c7daaa5aa5a832107e1ec4738aed",
881 | "shasum": ""
882 | },
883 | "require": {
884 | "php": "^7.4 || ^8.0",
885 | "php-64bit": "*",
886 | "pocketmine/binaryutils": "^0.2.0",
887 | "pocketmine/raklib": "^0.13.1 || ^0.14.0"
888 | },
889 | "require-dev": {
890 | "phpstan/phpstan": "0.12.81",
891 | "phpstan/phpstan-strict-rules": "^0.12.2"
892 | },
893 | "type": "library",
894 | "autoload": {
895 | "psr-4": {
896 | "raklib\\server\\ipc\\": "src/"
897 | }
898 | },
899 | "notification-url": "https://packagist.org/downloads/",
900 | "license": [
901 | "GPL-3.0"
902 | ],
903 | "description": "Channel-based protocols for inter-thread/inter-process communication with RakLib",
904 | "support": {
905 | "issues": "https://github.com/pmmp/RakLibIpc/issues",
906 | "source": "https://github.com/pmmp/RakLibIpc/tree/0.1.1"
907 | },
908 | "time": "2021-09-22T17:01:12+00:00"
909 | },
910 | {
911 | "name": "pocketmine/snooze",
912 | "version": "0.3.1",
913 | "source": {
914 | "type": "git",
915 | "url": "https://github.com/pmmp/Snooze.git",
916 | "reference": "0ac8fc2a781c419a1f64ebca4d5835028f59e29b"
917 | },
918 | "dist": {
919 | "type": "zip",
920 | "url": "https://api.github.com/repos/pmmp/Snooze/zipball/0ac8fc2a781c419a1f64ebca4d5835028f59e29b",
921 | "reference": "0ac8fc2a781c419a1f64ebca4d5835028f59e29b",
922 | "shasum": ""
923 | },
924 | "require": {
925 | "ext-pthreads": "~3.2.0 || ^4.0",
926 | "php-64bit": "^7.3 || ^8.0"
927 | },
928 | "require-dev": {
929 | "phpstan/extension-installer": "^1.0",
930 | "phpstan/phpstan": "0.12.99",
931 | "phpstan/phpstan-strict-rules": "^0.12.4"
932 | },
933 | "type": "library",
934 | "autoload": {
935 | "psr-4": {
936 | "pocketmine\\snooze\\": "src/"
937 | }
938 | },
939 | "notification-url": "https://packagist.org/downloads/",
940 | "license": [
941 | "LGPL-3.0"
942 | ],
943 | "description": "Thread notification management library for code using the pthreads extension",
944 | "support": {
945 | "issues": "https://github.com/pmmp/Snooze/issues",
946 | "source": "https://github.com/pmmp/Snooze/tree/0.3.1"
947 | },
948 | "time": "2021-11-01T20:50:08+00:00"
949 | },
950 | {
951 | "name": "ramsey/collection",
952 | "version": "1.2.2",
953 | "source": {
954 | "type": "git",
955 | "url": "https://github.com/ramsey/collection.git",
956 | "reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a"
957 | },
958 | "dist": {
959 | "type": "zip",
960 | "url": "https://api.github.com/repos/ramsey/collection/zipball/cccc74ee5e328031b15640b51056ee8d3bb66c0a",
961 | "reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a",
962 | "shasum": ""
963 | },
964 | "require": {
965 | "php": "^7.3 || ^8",
966 | "symfony/polyfill-php81": "^1.23"
967 | },
968 | "require-dev": {
969 | "captainhook/captainhook": "^5.3",
970 | "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0",
971 | "ergebnis/composer-normalize": "^2.6",
972 | "fakerphp/faker": "^1.5",
973 | "hamcrest/hamcrest-php": "^2",
974 | "jangregor/phpstan-prophecy": "^0.8",
975 | "mockery/mockery": "^1.3",
976 | "phpspec/prophecy-phpunit": "^2.0",
977 | "phpstan/extension-installer": "^1",
978 | "phpstan/phpstan": "^0.12.32",
979 | "phpstan/phpstan-mockery": "^0.12.5",
980 | "phpstan/phpstan-phpunit": "^0.12.11",
981 | "phpunit/phpunit": "^8.5 || ^9",
982 | "psy/psysh": "^0.10.4",
983 | "slevomat/coding-standard": "^6.3",
984 | "squizlabs/php_codesniffer": "^3.5",
985 | "vimeo/psalm": "^4.4"
986 | },
987 | "type": "library",
988 | "autoload": {
989 | "psr-4": {
990 | "Ramsey\\Collection\\": "src/"
991 | }
992 | },
993 | "notification-url": "https://packagist.org/downloads/",
994 | "license": [
995 | "MIT"
996 | ],
997 | "authors": [
998 | {
999 | "name": "Ben Ramsey",
1000 | "email": "ben@benramsey.com",
1001 | "homepage": "https://benramsey.com"
1002 | }
1003 | ],
1004 | "description": "A PHP library for representing and manipulating collections.",
1005 | "keywords": [
1006 | "array",
1007 | "collection",
1008 | "hash",
1009 | "map",
1010 | "queue",
1011 | "set"
1012 | ],
1013 | "support": {
1014 | "issues": "https://github.com/ramsey/collection/issues",
1015 | "source": "https://github.com/ramsey/collection/tree/1.2.2"
1016 | },
1017 | "funding": [
1018 | {
1019 | "url": "https://github.com/ramsey",
1020 | "type": "github"
1021 | },
1022 | {
1023 | "url": "https://tidelift.com/funding/github/packagist/ramsey/collection",
1024 | "type": "tidelift"
1025 | }
1026 | ],
1027 | "time": "2021-10-10T03:01:02+00:00"
1028 | },
1029 | {
1030 | "name": "ramsey/uuid",
1031 | "version": "dev-main",
1032 | "source": {
1033 | "type": "git",
1034 | "url": "https://github.com/ramsey/uuid.git",
1035 | "reference": "cd372a7b47a54734cbd491df40b5a48614d8d374"
1036 | },
1037 | "dist": {
1038 | "type": "zip",
1039 | "url": "https://api.github.com/repos/ramsey/uuid/zipball/cd372a7b47a54734cbd491df40b5a48614d8d374",
1040 | "reference": "cd372a7b47a54734cbd491df40b5a48614d8d374",
1041 | "shasum": ""
1042 | },
1043 | "require": {
1044 | "brick/math": "^0.8 || ^0.9",
1045 | "ext-json": "*",
1046 | "php": "^7.2 || ^8.0",
1047 | "ramsey/collection": "^1.0",
1048 | "symfony/polyfill-ctype": "^1.8",
1049 | "symfony/polyfill-php80": "^1.14"
1050 | },
1051 | "replace": {
1052 | "rhumsaa/uuid": "self.version"
1053 | },
1054 | "require-dev": {
1055 | "captainhook/captainhook": "^5.10",
1056 | "captainhook/plugin-composer": "^5.3",
1057 | "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0",
1058 | "doctrine/annotations": "^1.8",
1059 | "ergebnis/composer-normalize": "^2.15",
1060 | "mockery/mockery": "^1.3",
1061 | "moontoast/math": "^1.1",
1062 | "paragonie/random-lib": "^2",
1063 | "php-mock/php-mock": "^2.2",
1064 | "php-mock/php-mock-mockery": "^1.3",
1065 | "php-parallel-lint/php-parallel-lint": "^1.1",
1066 | "phpbench/phpbench": "^1.0",
1067 | "phpstan/extension-installer": "^1.0",
1068 | "phpstan/phpstan": "^0.12",
1069 | "phpstan/phpstan-mockery": "^0.12",
1070 | "phpstan/phpstan-phpunit": "^0.12",
1071 | "phpunit/phpunit": "^8.5 || ^9",
1072 | "slevomat/coding-standard": "^7.0",
1073 | "squizlabs/php_codesniffer": "^3.5",
1074 | "vimeo/psalm": "^4.9"
1075 | },
1076 | "suggest": {
1077 | "ext-bcmath": "Enables faster math with arbitrary-precision integers using BCMath.",
1078 | "ext-ctype": "Enables faster processing of character classification using ctype functions.",
1079 | "ext-gmp": "Enables faster math with arbitrary-precision integers using GMP.",
1080 | "ext-uuid": "Enables the use of PeclUuidTimeGenerator and PeclUuidRandomGenerator.",
1081 | "paragonie/random-lib": "Provides RandomLib for use with the RandomLibAdapter",
1082 | "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type."
1083 | },
1084 | "default-branch": true,
1085 | "type": "library",
1086 | "extra": {
1087 | "branch-alias": {
1088 | "dev-main": "4.x-dev"
1089 | },
1090 | "captainhook": {
1091 | "force-install": true
1092 | }
1093 | },
1094 | "autoload": {
1095 | "psr-4": {
1096 | "Ramsey\\Uuid\\": "src/"
1097 | },
1098 | "files": [
1099 | "src/functions.php"
1100 | ]
1101 | },
1102 | "notification-url": "https://packagist.org/downloads/",
1103 | "license": [
1104 | "MIT"
1105 | ],
1106 | "description": "A PHP library for generating and working with universally unique identifiers (UUIDs).",
1107 | "keywords": [
1108 | "guid",
1109 | "identifier",
1110 | "uuid"
1111 | ],
1112 | "support": {
1113 | "issues": "https://github.com/ramsey/uuid/issues",
1114 | "source": "https://github.com/ramsey/uuid/tree/main"
1115 | },
1116 | "funding": [
1117 | {
1118 | "url": "https://github.com/ramsey",
1119 | "type": "github"
1120 | },
1121 | {
1122 | "url": "https://tidelift.com/funding/github/packagist/ramsey/uuid",
1123 | "type": "tidelift"
1124 | }
1125 | ],
1126 | "time": "2021-10-13T18:44:27+00:00"
1127 | },
1128 | {
1129 | "name": "symfony/polyfill-ctype",
1130 | "version": "dev-main",
1131 | "source": {
1132 | "type": "git",
1133 | "url": "https://github.com/symfony/polyfill-ctype.git",
1134 | "reference": "30885182c981ab175d4d034db0f6f469898070ab"
1135 | },
1136 | "dist": {
1137 | "type": "zip",
1138 | "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/30885182c981ab175d4d034db0f6f469898070ab",
1139 | "reference": "30885182c981ab175d4d034db0f6f469898070ab",
1140 | "shasum": ""
1141 | },
1142 | "require": {
1143 | "php": ">=7.1"
1144 | },
1145 | "provide": {
1146 | "ext-ctype": "*"
1147 | },
1148 | "suggest": {
1149 | "ext-ctype": "For best performance"
1150 | },
1151 | "default-branch": true,
1152 | "type": "library",
1153 | "extra": {
1154 | "branch-alias": {
1155 | "dev-main": "1.23-dev"
1156 | },
1157 | "thanks": {
1158 | "name": "symfony/polyfill",
1159 | "url": "https://github.com/symfony/polyfill"
1160 | }
1161 | },
1162 | "autoload": {
1163 | "psr-4": {
1164 | "Symfony\\Polyfill\\Ctype\\": ""
1165 | },
1166 | "files": [
1167 | "bootstrap.php"
1168 | ]
1169 | },
1170 | "notification-url": "https://packagist.org/downloads/",
1171 | "license": [
1172 | "MIT"
1173 | ],
1174 | "authors": [
1175 | {
1176 | "name": "Gert de Pagter",
1177 | "email": "BackEndTea@gmail.com"
1178 | },
1179 | {
1180 | "name": "Symfony Community",
1181 | "homepage": "https://symfony.com/contributors"
1182 | }
1183 | ],
1184 | "description": "Symfony polyfill for ctype functions",
1185 | "homepage": "https://symfony.com",
1186 | "keywords": [
1187 | "compatibility",
1188 | "ctype",
1189 | "polyfill",
1190 | "portable"
1191 | ],
1192 | "support": {
1193 | "source": "https://github.com/symfony/polyfill-ctype/tree/main"
1194 | },
1195 | "funding": [
1196 | {
1197 | "url": "https://symfony.com/sponsor",
1198 | "type": "custom"
1199 | },
1200 | {
1201 | "url": "https://github.com/fabpot",
1202 | "type": "github"
1203 | },
1204 | {
1205 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
1206 | "type": "tidelift"
1207 | }
1208 | ],
1209 | "time": "2021-10-20T20:35:02+00:00"
1210 | },
1211 | {
1212 | "name": "symfony/polyfill-php80",
1213 | "version": "dev-main",
1214 | "source": {
1215 | "type": "git",
1216 | "url": "https://github.com/symfony/polyfill-php80.git",
1217 | "reference": "57b712b08eddb97c762a8caa32c84e037892d2e9"
1218 | },
1219 | "dist": {
1220 | "type": "zip",
1221 | "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/57b712b08eddb97c762a8caa32c84e037892d2e9",
1222 | "reference": "57b712b08eddb97c762a8caa32c84e037892d2e9",
1223 | "shasum": ""
1224 | },
1225 | "require": {
1226 | "php": ">=7.1"
1227 | },
1228 | "default-branch": true,
1229 | "type": "library",
1230 | "extra": {
1231 | "branch-alias": {
1232 | "dev-main": "1.23-dev"
1233 | },
1234 | "thanks": {
1235 | "name": "symfony/polyfill",
1236 | "url": "https://github.com/symfony/polyfill"
1237 | }
1238 | },
1239 | "autoload": {
1240 | "psr-4": {
1241 | "Symfony\\Polyfill\\Php80\\": ""
1242 | },
1243 | "files": [
1244 | "bootstrap.php"
1245 | ],
1246 | "classmap": [
1247 | "Resources/stubs"
1248 | ]
1249 | },
1250 | "notification-url": "https://packagist.org/downloads/",
1251 | "license": [
1252 | "MIT"
1253 | ],
1254 | "authors": [
1255 | {
1256 | "name": "Ion Bazan",
1257 | "email": "ion.bazan@gmail.com"
1258 | },
1259 | {
1260 | "name": "Nicolas Grekas",
1261 | "email": "p@tchwork.com"
1262 | },
1263 | {
1264 | "name": "Symfony Community",
1265 | "homepage": "https://symfony.com/contributors"
1266 | }
1267 | ],
1268 | "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
1269 | "homepage": "https://symfony.com",
1270 | "keywords": [
1271 | "compatibility",
1272 | "polyfill",
1273 | "portable",
1274 | "shim"
1275 | ],
1276 | "support": {
1277 | "source": "https://github.com/symfony/polyfill-php80/tree/main"
1278 | },
1279 | "funding": [
1280 | {
1281 | "url": "https://symfony.com/sponsor",
1282 | "type": "custom"
1283 | },
1284 | {
1285 | "url": "https://github.com/fabpot",
1286 | "type": "github"
1287 | },
1288 | {
1289 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
1290 | "type": "tidelift"
1291 | }
1292 | ],
1293 | "time": "2021-09-13T13:58:33+00:00"
1294 | },
1295 | {
1296 | "name": "symfony/polyfill-php81",
1297 | "version": "dev-main",
1298 | "source": {
1299 | "type": "git",
1300 | "url": "https://github.com/symfony/polyfill-php81.git",
1301 | "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f"
1302 | },
1303 | "dist": {
1304 | "type": "zip",
1305 | "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/5de4ba2d41b15f9bd0e19b2ab9674135813ec98f",
1306 | "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f",
1307 | "shasum": ""
1308 | },
1309 | "require": {
1310 | "php": ">=7.1"
1311 | },
1312 | "default-branch": true,
1313 | "type": "library",
1314 | "extra": {
1315 | "branch-alias": {
1316 | "dev-main": "1.23-dev"
1317 | },
1318 | "thanks": {
1319 | "name": "symfony/polyfill",
1320 | "url": "https://github.com/symfony/polyfill"
1321 | }
1322 | },
1323 | "autoload": {
1324 | "psr-4": {
1325 | "Symfony\\Polyfill\\Php81\\": ""
1326 | },
1327 | "files": [
1328 | "bootstrap.php"
1329 | ],
1330 | "classmap": [
1331 | "Resources/stubs"
1332 | ]
1333 | },
1334 | "notification-url": "https://packagist.org/downloads/",
1335 | "license": [
1336 | "MIT"
1337 | ],
1338 | "authors": [
1339 | {
1340 | "name": "Nicolas Grekas",
1341 | "email": "p@tchwork.com"
1342 | },
1343 | {
1344 | "name": "Symfony Community",
1345 | "homepage": "https://symfony.com/contributors"
1346 | }
1347 | ],
1348 | "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions",
1349 | "homepage": "https://symfony.com",
1350 | "keywords": [
1351 | "compatibility",
1352 | "polyfill",
1353 | "portable",
1354 | "shim"
1355 | ],
1356 | "support": {
1357 | "source": "https://github.com/symfony/polyfill-php81/tree/main"
1358 | },
1359 | "funding": [
1360 | {
1361 | "url": "https://symfony.com/sponsor",
1362 | "type": "custom"
1363 | },
1364 | {
1365 | "url": "https://github.com/fabpot",
1366 | "type": "github"
1367 | },
1368 | {
1369 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
1370 | "type": "tidelift"
1371 | }
1372 | ],
1373 | "time": "2021-09-13T13:58:11+00:00"
1374 | },
1375 | {
1376 | "name": "webmozart/assert",
1377 | "version": "dev-master",
1378 | "source": {
1379 | "type": "git",
1380 | "url": "https://github.com/webmozarts/assert.git",
1381 | "reference": "b419d648592b0b8911cbbe10d450fe314f4fd262"
1382 | },
1383 | "dist": {
1384 | "type": "zip",
1385 | "url": "https://api.github.com/repos/webmozarts/assert/zipball/b419d648592b0b8911cbbe10d450fe314f4fd262",
1386 | "reference": "b419d648592b0b8911cbbe10d450fe314f4fd262",
1387 | "shasum": ""
1388 | },
1389 | "require": {
1390 | "php": "^7.2 || ^8.0",
1391 | "symfony/polyfill-ctype": "^1.8"
1392 | },
1393 | "conflict": {
1394 | "phpstan/phpstan": "<0.12.20",
1395 | "vimeo/psalm": "<4.6.1 || 4.6.2"
1396 | },
1397 | "require-dev": {
1398 | "phpunit/phpunit": "^8.5.13"
1399 | },
1400 | "default-branch": true,
1401 | "type": "library",
1402 | "extra": {
1403 | "branch-alias": {
1404 | "dev-master": "1.10-dev"
1405 | }
1406 | },
1407 | "autoload": {
1408 | "psr-4": {
1409 | "Webmozart\\Assert\\": "src/"
1410 | }
1411 | },
1412 | "notification-url": "https://packagist.org/downloads/",
1413 | "license": [
1414 | "MIT"
1415 | ],
1416 | "authors": [
1417 | {
1418 | "name": "Bernhard Schussek",
1419 | "email": "bschussek@gmail.com"
1420 | }
1421 | ],
1422 | "description": "Assertions to validate method input/output with nice error messages.",
1423 | "keywords": [
1424 | "assert",
1425 | "check",
1426 | "validate"
1427 | ],
1428 | "support": {
1429 | "issues": "https://github.com/webmozarts/assert/issues",
1430 | "source": "https://github.com/webmozarts/assert/tree/master"
1431 | },
1432 | "time": "2021-06-19T13:45:26+00:00"
1433 | },
1434 | {
1435 | "name": "webmozart/path-util",
1436 | "version": "2.3.0",
1437 | "source": {
1438 | "type": "git",
1439 | "url": "https://github.com/webmozart/path-util.git",
1440 | "reference": "d939f7edc24c9a1bb9c0dee5cb05d8e859490725"
1441 | },
1442 | "dist": {
1443 | "type": "zip",
1444 | "url": "https://api.github.com/repos/webmozart/path-util/zipball/d939f7edc24c9a1bb9c0dee5cb05d8e859490725",
1445 | "reference": "d939f7edc24c9a1bb9c0dee5cb05d8e859490725",
1446 | "shasum": ""
1447 | },
1448 | "require": {
1449 | "php": ">=5.3.3",
1450 | "webmozart/assert": "~1.0"
1451 | },
1452 | "require-dev": {
1453 | "phpunit/phpunit": "^4.6",
1454 | "sebastian/version": "^1.0.1"
1455 | },
1456 | "type": "library",
1457 | "extra": {
1458 | "branch-alias": {
1459 | "dev-master": "2.3-dev"
1460 | }
1461 | },
1462 | "autoload": {
1463 | "psr-4": {
1464 | "Webmozart\\PathUtil\\": "src/"
1465 | }
1466 | },
1467 | "notification-url": "https://packagist.org/downloads/",
1468 | "license": [
1469 | "MIT"
1470 | ],
1471 | "authors": [
1472 | {
1473 | "name": "Bernhard Schussek",
1474 | "email": "bschussek@gmail.com"
1475 | }
1476 | ],
1477 | "description": "A robust cross-platform utility for normalizing, comparing and modifying file paths.",
1478 | "support": {
1479 | "issues": "https://github.com/webmozart/path-util/issues",
1480 | "source": "https://github.com/webmozart/path-util/tree/2.3.0"
1481 | },
1482 | "abandoned": "symfony/filesystem",
1483 | "time": "2015-12-17T08:42:14+00:00"
1484 | }
1485 | ],
1486 | "packages-dev": [
1487 | {
1488 | "name": "phpstan/phpstan",
1489 | "version": "1.2.0",
1490 | "source": {
1491 | "type": "git",
1492 | "url": "https://github.com/phpstan/phpstan.git",
1493 | "reference": "cbe085f9fdead5b6d62e4c022ca52dc9427a10ee"
1494 | },
1495 | "dist": {
1496 | "type": "zip",
1497 | "url": "https://api.github.com/repos/phpstan/phpstan/zipball/cbe085f9fdead5b6d62e4c022ca52dc9427a10ee",
1498 | "reference": "cbe085f9fdead5b6d62e4c022ca52dc9427a10ee",
1499 | "shasum": ""
1500 | },
1501 | "require": {
1502 | "php": "^7.1|^8.0"
1503 | },
1504 | "conflict": {
1505 | "phpstan/phpstan-shim": "*"
1506 | },
1507 | "bin": [
1508 | "phpstan",
1509 | "phpstan.phar"
1510 | ],
1511 | "type": "library",
1512 | "extra": {
1513 | "branch-alias": {
1514 | "dev-master": "1.2-dev"
1515 | }
1516 | },
1517 | "autoload": {
1518 | "files": [
1519 | "bootstrap.php"
1520 | ]
1521 | },
1522 | "notification-url": "https://packagist.org/downloads/",
1523 | "license": [
1524 | "MIT"
1525 | ],
1526 | "description": "PHPStan - PHP Static Analysis Tool",
1527 | "support": {
1528 | "issues": "https://github.com/phpstan/phpstan/issues",
1529 | "source": "https://github.com/phpstan/phpstan/tree/1.2.0"
1530 | },
1531 | "funding": [
1532 | {
1533 | "url": "https://github.com/ondrejmirtes",
1534 | "type": "github"
1535 | },
1536 | {
1537 | "url": "https://github.com/phpstan",
1538 | "type": "github"
1539 | },
1540 | {
1541 | "url": "https://www.patreon.com/phpstan",
1542 | "type": "patreon"
1543 | },
1544 | {
1545 | "url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan",
1546 | "type": "tidelift"
1547 | }
1548 | ],
1549 | "time": "2021-11-18T14:09:01+00:00"
1550 | }
1551 | ],
1552 | "aliases": [],
1553 | "minimum-stability": "dev",
1554 | "stability-flags": [],
1555 | "prefer-stable": false,
1556 | "prefer-lowest": false,
1557 | "platform": {
1558 | "php": "^8.0",
1559 | "ext-yaml": "*",
1560 | "ext-pthreads": "*",
1561 | "ext-zlib": "*",
1562 | "ext-json": "*"
1563 | },
1564 | "platform-dev": [],
1565 | "plugin-api-version": "2.1.0"
1566 | }
1567 |
--------------------------------------------------------------------------------