Commit Graph

446 Commits

Author SHA1 Message Date
Luck
72b3bdf676
#3077: Fix regression preventing child classloaders delegating to a PluginClassloader
Bug was introduced in 425dd45109
2021-05-01 08:32:51 +10:00
md_5
830ee8f27d
#3061: Continue to fallback to underlying URLClassLoader 2021-04-10 07:30:17 +10:00
md_5
425dd45109
Override classloader close method for completeness 2021-04-09 15:38:21 +10:00
md_5
6a039de8db
Add preview of automatic library support
Example plugin.yml usage:
```
    libraries:
      - com.squareup.okhttp3:okhttp:4.9.0
```

Libraries will only be accessible to plugins and their transitive depends, allowing for multiple versions of the same library to be used by different plugins.

This is a preview feature. Feedback is welcome so that it may be refined before being made widely available.
2021-04-09 13:13:55 +10:00
Janmm14
4f23b49fef
#3037: Update ProxiedPlayer#setDisplayName javadoc to current behaviour 2021-02-14 09:37:07 +11:00
md_5
e95da11115
Bump Netty/SnakeYAML/MySQL versions 2021-01-24 08:56:07 +11:00
md_5
9f6a798ea6
Bump version to 1.16-R0.5-SNAPSHOT 2021-01-15 10:19:24 +11:00
md_5
36c8df4d2f
Release 1.16-R0.4 2021-01-15 09:49:36 +11:00
mciolkosz
4199b0ca64
#2977: Added availability to set custom permission messages on commands. 2020-10-17 18:12:01 +11:00
md_5
6973e099fd
Misc dependency updates 2020-10-17 18:04:25 +11:00
Gerrygames
8fffa206e4
#2978: Allow sending messages from specific UUIDs 2020-10-17 17:46:01 +11:00
md_5
a0f9333a13
Bump version to 1.16-R0.4-SNAPSHOT 2020-07-18 17:36:11 +10:00
md_5
287e28a722
Release 1.16-R0.3 2020-07-18 17:31:21 +10:00
md_5
94c4fcbad7
Bump version to 1.16-R0.3-SNAPSHOT 2020-07-13 08:45:48 +10:00
md_5
a99f62f693
Release 1.16-R0.2 2020-07-13 08:23:55 +10:00
md_5
4786c0986b
Bump version to 1.16-R0.2-SNAPSHOT 2020-06-25 08:36:25 +10:00
md_5
a7180850e0
Release 1.16-R0.1 2020-06-25 08:36:03 +10:00
md_5
d0fd673b60
Minecraft 1.16 support + RGB ChatColor preview 2020-06-24 07:00:00 +10:00
Mystiflow
f1c32f84f4 #2379: Add ServerSwitchEvent getFrom API 2020-03-25 18:20:37 +11:00
md_5
8ea25a8fc7 #2775: Fix LinkageError loading plugin dependency classes 2020-02-21 08:22:16 +11:00
MrIvanPlays
c46b14b92c #2688: Protect the plugin manager from 3rd party modifications 2020-02-20 12:24:01 +11:00
md_5
f41b1fc821 Do not allow plugins to make multiple instances of their main class.
Prevents foot shooting, eg #2772
2020-02-20 12:24:01 +11:00
md_5
9e8ab747e4 Add JsonConfiguration support to bungeecord-config
Thanks @FelixKlauke for the idea in #2364, however this implementation was designed to mirror as much of the existing YamlConfiguration as possible and have Gson as an optional depend.
2020-02-03 13:25:47 +11:00
Mystiflow
cdacc0b1be #2498: Add ServerConnectRequest accessor in ServerConnectEvent.
- Make the timeout and retry status mutable so plugins can modify these values directly within the ServerConnectEvent.
2020-02-03 10:36:33 +11:00
markusmarkusz
b4b998b2e5 #2761: Add ClientConnectEvent 2020-02-02 10:48:22 +11:00
md_5
cf72c3a788 Show slow event times in milliseconds 2020-01-27 17:01:57 +11:00
Mystiflow
0a4b9b4984 #2752: Configurable connect and ping timeouts 2020-01-25 11:12:40 +11:00
Mystiflow
636c020772 #2753: Add configurable remote ping caching 2020-01-24 10:48:50 +11:00
md_5
4bb0fb67a8 Fix Javadoc in ServerInfo.getSocketAddress 2020-01-20 16:05:23 +11:00
md_5
b70cb01413 Add beta support for binding bungee to unix socket addresses 2020-01-16 10:36:13 +11:00
md_5
2f547f73f7 Fix some javadoc warnings 2020-01-05 11:17:11 +11:00
md_5
4cccf53775 Minecraft 1.15 support 2019-12-11 08:00:00 +11:00
md_5
af10f82d14 Apply and enforce import ordering rules 2019-04-23 15:23:40 +10:00
md_5
3f01748d75 Minecraft 1.14-pre5 support 2019-04-23 12:00:00 +10:00
md_5
771f1735e5 Clearer message for illegal IP addresses 2019-03-18 13:26:10 +11:00
md_5
e2bc7ed797 Misc formatting fixes 2019-02-26 13:11:05 +11:00
Simon Chuu
3889f8683d #2578: Add easy way to get proxy command iff it is enabled for that sender 2019-01-20 20:00:26 +11:00
md_5
712a60ffd2 Remove improperly exposed getters from AsyncEvent 2019-01-09 10:19:31 +11:00
Virizion
8b5a89bf12 #2576: Allow plugins to register multiple intents for async events 2019-01-09 10:19:31 +11:00
md_5
4fa1d82b81 #2572: Add additional APIs regarding server restriction 2019-01-03 16:35:32 +11:00
md_5
a12bb4cead Clarify boolean of connect callback 2018-12-29 13:01:53 +11:00
md_5
a47b803385 #2568: Check permissions for inject_commands 2018-12-21 09:50:54 +11:00
md_5
02a65e34cf #2479: Allow injection of BungeeCord commands to 1.13 with inject_commands option 2018-12-20 10:41:18 +11:00
NayXegp
6c44ccd597 #2527: Minor cosmetic cleanups to imports etc
Please see https://github.com/SpigotMC/BungeeCord/pull/2527
2018-11-02 18:06:56 +11:00
md_5
ed6b03d24a Always use root locale for case conversions 2018-10-28 12:10:34 +11:00
NayXegp
27f926cfc7 #2539: Optimize dash free UUID parse 2018-10-28 12:05:50 +11:00
NayXegp
cb4108c1b4 #2539: Regex free command split 2018-10-27 18:19:58 +11:00
NayXegp
9886021428 #2521: Using replace instead of replaceAll 2018-09-05 07:51:23 +10:00
Mystiflow
4c47549253 #2497: Incorrect defaults in ServerConnectRequest 2018-08-12 09:43:57 +10:00
Mystiflow
715ec07a28 #2447: Add API for fluent server connect requests
API allows for more control over callback to see why the callback was performed whilst maintaining backwards compatibility
2018-07-30 12:37:34 +10:00
md_5
c9f22868b3 Revert "#2447: Add API for fluent server connect requests"
This reverts commit 7ce9ae50e7.
2018-07-22 20:13:30 +10:00
Mystiflow
7ce9ae50e7 #2447: Add API for fluent server connect requests
API allows for more control over callback to see why the callback was performed whilst maintaining backwards compatibility
2018-07-22 18:04:43 +10:00
md_5
b1cc72e212 Minecraft 1.13-pre7 support 2018-07-15 10:00:00 +10:00
md_5
c416c44f43 Deprecate not API ProxyServer.start method 2018-07-09 09:59:33 +10:00
Rincewind34
ff42394bdb #2427: [Trivial] Fix small mistake in Title documentation 2018-07-08 17:55:45 +10:00
md_5
730715e68b #2437: Behave more like underlying servers and don't send no permission messages during tab completion 2018-06-21 12:52:03 +10:00
md_5
cbfdf64a15 Add missing javadoc from previous commit 2018-04-02 12:49:47 +10:00
Mystiflow
7241eb37c9 #2376 Add ServerConnectEvent Reason API 2018-04-01 09:34:27 +10:00
games647
272258cf5a #2372: Add SettingsChangedEvent for client-side settings 2018-03-15 20:47:08 +11:00
Senmori
a3b44aa612 #2342: Add score and selector components to chat API 2018-02-19 11:48:22 +11:00
md_5
6b88b63941 #2335: Clarify JavaDoc for methods in PendingConnection 2018-01-28 10:20:03 +11:00
Foorack
dbf20957a9 Expand API to get all player sent settings 2017-08-09 16:38:03 +10:00
Mystiflow
2ae8ba0afc Various scoreboard improvements. (#2204)
- Correctly remove objectives that use heart type.
- Also sends remove score packets on server switch.
- Players are only removed if Team packet mode is 4.
2017-08-04 16:10:10 +10:00
md_5
daac8d85e2 Add support for PROXY protocol 2017-07-01 09:38:27 +10:00
md_5
16d261553c Minecraft 1.12-pre2 Support 2017-05-14 12:00:00 +10:00
Gabscap
ea6680281f Allow cancelling LoginEvents with component reasons.
Ultimately this PR was selected as it better matched the existing code in terms of using lombok and not adding incomplete interfacing.
If for some reason a common interface is required, this can be implemented later.

Thanks to yawkat also for the PR in #1336 -- it was difficult for the merger to compromise between this and #1957
2016-12-01 10:12:54 +11:00
md_5
9ecdde2292 Add support for Minecraft 1.11
Improve QueryHandler session handling as suggested by IchBinJoe
2016-11-15 02:40:46 +11:00
md_5
1ad81564ad Fix Javadoc in Plugin#init 2016-11-06 11:51:52 +11:00
md_5
d6772cf1e4 #1933: Exclude favicon from ServerPing#toString 2016-08-13 14:24:50 +10:00
Cory Ory
b5121db886 Exclude data from PluginMessageEvent.toString 2016-07-18 13:33:48 +10:00
md_5
e3869fea18 #1893: Alter definition of slow event 2016-06-20 20:05:07 +10:00
md_5
6f6cb58d8b Make warning message better... 2016-06-20 09:25:29 +10:00
PunKeel
3fe72154a3 Fix slow event detection
Time moves forward, so the second call to nanoTime returns a bigger number than
the first one, giving a negative elapsed time … defeating the whole purpose of
this code. :-(
2016-06-20 08:46:53 +10:00
md_5
e4cf010bda Update to Minecraft 1.10 2016-06-09 11:44:06 +10:00
md_5
80b3135a93 Fix formatting 2016-04-24 22:31:04 +10:00
md_5
f53e66e2c0 Check all plugins have a name and main. 2016-03-12 12:00:56 +11:00
Joshua Küpper
0294fc5f20 Manually add the setDescriptionComponent(BaseComponent)
Lombok won't generate because of the overloading of setDescription(String).
2016-03-02 16:06:49 +00:00
Thinkofdeath
7926230682 #1765: Fix ServerInfo.ping to handle chat components. 2016-03-01 12:38:19 +11:00
md_5
05de455a9c Update to Minecraft 1.9 2016-03-01 09:31:12 +11:00
md_5
219819b738 Replace default/fallback servers with a server priority list. 2016-03-01 09:31:12 +11:00
md_5
e556fd7150 Add Connection.isConnected()Z API.
Idea from kamcio96 in #1693
2016-02-05 10:09:47 +11:00
md_5
1182affa09 Rewrite host parsing to account for IPv6. 2016-01-14 09:52:16 +11:00
xxyy
ba448b5670 Add configurable proxy command logging.
This commit adds a config switch that allows users to turn off
 the logging of proxy commands. It is set to off by default to
 prevent unwanted log spam and keep current behaviour.
Log proxy commands

This commit changes the PluginManager to print a message to
console and the log when a proxy command is executed.
This may assist with debugging and miscellaneous
investigations.
2015-10-26 20:59:53 +11:00
md_5
7ec1a1aa4e Fix / clarify behaviour of matchPlayer. 2015-09-05 13:42:33 +10:00
Marc Baloup
a3a31fd2dd Correct handling of command's parameters for tab completion
Hi :)

There is some problem with TabExecutor and I think I found the problem.

Exemple :
/send <playerName|all|current> <targetServer>
When I write "/send " (with trailing space) and press Tab, I don't have any suggestion. But when I wrote the first character of an online player, it suggest all players which start with this same character (expected behavior)

The problem is the same when I wrote "/send marcbal " (with trailing space). When I press Tab key, I have "marcbal" suggested instead of servers suggestion. (the result is "/send marcbal marcbal"). But when i wrote the first character of a server name, it suggest all servers which start with this same character (expected behavior)

other exemple : there is 2 players online in the same server : me (marcbal) and marcbaleeee (for exemple)
when I wrote "/send marcbal " (with trailing space) and I press Tab key, I have the suggestion of the 2 player names.

I deduced that the onTabComplete() don't care about the trailing space of the command string (exemple : "/send marcbal ") and probably a problem when splitting (removing last trailing empty args), so, the onTabComplete method try to complete the first argument "marcbal" instead of the second empty argument.

To split the command line, you use the method Pattern.split(CharSequence) that remove trailing empty strings http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html#split(java.lang.CharSequence)
So, we should use the other split() method, with a second argument which has to be a negative integer value. (see Javadoc)

PS : Sorry for my bad english x)
2015-07-10 12:28:26 +10:00
minecraftshamrock
9cf57ca929 Fix AsyncEvent callback triggering.
Before this, two concurrent postCall() and completeIntent() calls might
cause the callback to be called more than once.
2015-05-18 20:22:32 +10:00
portalBlock
3973c511f5 Show the no permission message even if the command is a TabExecutor but the command was not dispatched by the tab completer. 2015-03-22 13:54:05 +11:00
Thinkofdeath
bd2eaf6879 Add missing scoreboard positions (Fixes #1397) 2015-03-12 16:42:01 +00:00
md_5
61cee2d27c Fix formatting in a bunch of files. 2015-02-14 18:36:58 +11:00
md_5
2055c98ebe Add reason for stopping and extra arguments. 2015-02-14 18:33:49 +11:00
Joshua Rodriguez
415d5860e4 Allow setting a connections uuid when in offline mode 2015-02-14 18:33:28 +11:00
md_5
cf722de1d2 #1130: Add scheduler unit tests and make more robust. 2015-01-18 12:09:38 +11:00
Daniel Naylor
28496e0471 Add API for getting whether the user is a Forge user.
For Minecraft+Forge 1.8 we can detect whether the user is a Forge user before we get the mod list, due to the changes to the initial (not FML|HS) handshake that are now made (which is for vanilla client support). Bungee can exploit this to detect FML clients from the off, but it still does not tell us what the mod list is. Thus, creating this API method for users who simply need to know whether the user is connected via FML is no longer a duplication of the getModList api method.
2015-01-12 19:23:07 +11:00
xxyy
5091515f0b Add TabCompleteResponseEvent 2015-01-12 11:53:28 +11:00
md_5
52b75cd18b Don't nuke command on tab complete if no args specified. 2015-01-12 11:07:43 +11:00
Minecrell
f19cc7fe4f Add chat position API. 2014-11-22 09:17:37 +11:00
Minecrell
772c8d7f2b Improve legacy client ping support. 2014-11-15 10:18:40 +00:00
elmo92
c21275b877 Don't send no permission message on tab completion.
Instead returns the empty completions.
2014-11-08 10:08:42 +11:00
Daniel Naylor
cfad2c65d4 Implement Support for MinecraftForge / FML 1.7.10
Additional implementation help provided by @jk-5 and @bloodmc.
2014-09-27 19:38:28 +10:00
md_5
cbb190cfd3 Fix a few import ordering issues. 2014-09-26 10:11:16 +10:00