Commit Graph

305 Commits

Author SHA1 Message Date
Bukkit/Spigot 017a3c55d7 SPIGOT-4439: Allow minecraft:brand channel for use by plugins.
By: md_5 <git@md-5.net>
2018-10-25 20:38:53 +11:00
Bukkit/Spigot 88399f1f47 Include the plugin channel name in the exception message
By: Phoenix616 <mail@moep.tv>
2018-09-13 21:24:09 +01:00
Bukkit/Spigot a5e572dd9e Let JavaPlugins use their own Logger implementation by overriding getLogger
By: Senmori <thesenmori@gmail.com>
2018-08-28 22:22:21 -04:00
Bukkit/Spigot f3f25a351f Include class path in legacy conversion errors.
By: md_5 <git@md-5.net>
2018-07-30 09:18:55 +10:00
Bukkit/Spigot 246fed61ca Throw CNFE if we have an error processing plugin classes
By: md_5 <git@md-5.net>
2018-07-29 22:05:16 +10:00
Bukkit/Spigot 335202751d Remove redundant try/catch loading api-version
By: md_5 <git@md-5.net>
2018-07-15 22:38:15 +10:00
Bukkit/Spigot 767e4f6ccf Update to Minecraft 1.13-pre7
By: md_5 <git@md-5.net>
2018-07-15 10:00:00 +10:00
Bukkit/Spigot 0bea165ff0 SPIGOT-3988: Error on manually constructed PluginDescriptionFile
By: md_5 <git@md-5.net>
2018-07-07 09:21:17 +10:00
Bukkit/Spigot 70727107ce Fix some additional documentation typos
Thanks mrfloris

By: md_5 <git@md-5.net>
2018-01-15 12:53:01 +11:00
Bukkit/Spigot a598aa855b Be more resilient to asynchronous package loads like URLClassLoader
By: md_5 <git@md-5.net>
2018-01-03 15:43:47 +11:00
Bukkit/Spigot 020876f38e SPIGOT-3723: Delegate PluginClassLoader back to parent
By: md_5 <git@md-5.net>
2017-12-30 07:00:16 +11:00
Bukkit/Spigot 6c92a5d111 Throw ClassNotFoundException without delegation
By: md_5 <git@md-5.net>
2017-12-29 14:06:56 +11:00
Bukkit/Spigot a36a08cdd0 SPIGOT-3721: Plugins without manifests no longer load
By: md_5 <git@md-5.net>
2017-12-28 20:29:58 +11:00
Bukkit/Spigot 1e918108e3 Backport some PluginClassLoader changes for soak testing.
By: md_5 <git@md-5.net>
2017-12-28 14:49:21 +11:00
Bukkit/Spigot 5f4b9e502d Catch exceptions per plugin in PluginMessage handling
By: md_5 <git@md-5.net>
2017-11-10 10:47:12 +11:00
Bukkit/Spigot 417599c2ab Some minor improvements from static analysis
By: md_5 <git@md-5.net>
2017-11-07 17:28:28 +11:00
Bukkit/Spigot e3d4acc303 Assorted whitespace fixes
By: md_5 <git@md-5.net>
2017-08-06 09:08:05 +10:00
Bukkit/Spigot 46c820e747 SPIGOT-3409: Improve performance of registering stupid amounts of permissions in plugin.yml
By: md_5 <git@md-5.net>
2017-07-10 21:05:39 +10:00
Bukkit/Spigot 331d059798 Remove outdated Javadoc / examples concerning database support
By: md_5 <git@md-5.net>
2017-05-15 21:42:28 +10:00
Bukkit/Spigot 05d2efaa86 Remove ability to load plugins with spaces in their name.
By: md_5 <git@md-5.net>
2017-05-14 12:00:00 +10:00
Bukkit/Spigot 158afaffeb Remove Ebean ORM
By: md_5 <git@md-5.net>
2017-05-14 12:00:00 +10:00
Bukkit/Spigot 816701f233 Warn about removal of ability to load plugins with spaces in Minecraft 1.12
By: md_5 <git@md-5.net>
2017-04-21 17:23:49 +10:00
Bukkit/Spigot 72f65b2488 SPIGOT-2988: Update JavaDoc in Plugin#saveDefaultConfig
By: md_5 <git@md-5.net>
2017-01-05 09:39:23 +11:00
Bukkit/Spigot bfcdae7381 Add deprecation notice regarding EBean
By: md_5 <git@md-5.net>
2016-12-29 13:13:08 +11:00
Bukkit/Spigot f1fb3d9462 Update to Minecraft 1.11
By: md_5 <git@md-5.net>
2016-11-17 12:40:59 +11:00
Bukkit/Spigot a037aff506 SPIGOT-2645: Better PluginClassLoader safety
By: md_5 <git@md-5.net>
2016-09-01 09:07:32 +10:00
Bukkit/Spigot 4be07ca07a SPIGOT-2629: Better thread safety for plugin class loading
By: md_5 <git@md-5.net>
2016-08-26 15:37:26 +10:00
Bukkit/Spigot 7f7f1608e8 BUILDTOOLS-251: Make much of Bukkit locale independent
By: md_5 <git@md-5.net>
2016-06-26 19:31:59 +10:00
Bukkit/Spigot a7e0658387 SPIGOT-1889: Fail fast when plugin attempts to use database when not enabled.
By: md_5 <git@md-5.net>
2016-03-12 10:50:42 +11:00
Bukkit/Spigot 9cd422d56a Use UTF-8 as default encoding
Since March 2014 Bukkit has been converting and preparing plugins for UTF-8 compliance. With this change in place, all plugins will now load their configuration files as UTF-8, which is a supported encoding on any valid JVM implementation. This should pose no issues on any server which has run Bukkit after 2014, and the only possible breaking path is when an embedded file is of a non UTF-8 compatible encoding (which it should not be anyway).

By: Matt <mattbdev@outlook.com>
2016-03-01 08:30:03 +11:00
Bukkit/Spigot ef91dacfe8 Speed up permission recalculation.
Based on ideas in PR #102, but rewritten for correctness.

By: md_5 <git@md-5.net>
2015-09-18 10:33:56 +10:00
Bukkit/Spigot ac203b1dbf [SPIGOT-950] Make handlerList requirement really obvious.
By: md_5 <git@md-5.net>
2015-06-01 16:43:22 +10:00
Bukkit/Spigot 745401c988 SPIGOT-893: Fix bridge method registering generic listeners twice
By: Jonas Konrad <me@yawk.at>
2015-05-18 11:14:47 +02:00
Bukkit/Spigot a5d9aa56d8 SPIGOT-547: Increase the max plugin message channel name to 20
This matches up with the protocol

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2015-02-12 14:19:34 +00:00
Bukkit/Spigot b2d54f59bb Clean up the javadoc to pass java 8's doclint
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-30 21:09:01 +00:00
Bukkit/Spigot 8344aacc6e Update to Minecraft 1.8
For more information please see http://www.spigotmc.org/

By: md_5 <git@md-5.net>
2014-11-26 08:15:59 +11:00
Bukkit/Spigot 300e61658e Change YamlConfiguration encoding styles.
On JVMs with UTF-8 default encoding, this commit has no change in behavior.

On JVMs with ascii default encoding (like some minimal linux installa-
tions), this commit now uses UTF-8 for YamlConfiguration operations.
Because all ascii is valid UTF-8, there is no feature degradation or data
loss during the transition.

On JVMs with any non-unicode but ascii-compliant encoding, this commit now
forces YamlConfiguration to escape special characters when writing to
files, effectively rendering the encoding to be plain ascii. Any affected
file will now be able to migrate to UTF-8 in the future without data-loss
or explicit conversion. When reading files, YamlConfiguration will use the
system default encoding to handle any incoming non-utf8 data, with the
expectation that any newly written file is still compliant with the
system's default encoding.

On JVMs with any non-unicode, but ascii-incompliant encoding (this may be
the case for some Eastern character sets on Windows systems), this change
is breaking, but is justified in claim that these systems would otherwise
be unable to read YamlConfiguration for implementation dependent settings
or from plugins themselves. For these systems, all uses of the encoding
will be forced to use UTF-8 in all cases, and is effectively treated as if
it was configured to be UTF-8 by default.

On JVMs with unicode encoding of UTF-16 or UTF-32, the ability to load any
configurations from almost any source prior to this change would have been
unfeasible, if not impossible. As of this change, however, these systems
now behave as expected when writing or reading files. However, when
reading from any plugin jar, UTF-8 will be used, matching a super-majority
of plugin developer base and requirements for the plugin.yml.

Plugin developers may now mark their plugin as UTF-8 compliant, as
documented in the PluginDescriptionFile class. This change will cause the
appropriate APIs in JavaPlugin to ignore any system default encoding,
instead using a Reader with the UTF-8 encoding, effectively rendering the
jar system independent. This does not affect the aformentioned JVM
settings for reading and writing files.

To coincide with these changes, YamlConfiguration methods that utilize a
stream are now deprecated to encourage use of a more strict denotation.
File methods carry system-specific behaviors to prevent unncessary data
loss during the transitional phase, while Reader methods are now provided
that have a very well-defined encoder behavior. For the transition from
InputStream methods to Reader methods, an API has been added to JavaPlugin
to provide a Reader that matches the previous behavior as well as
compliance to the UTF-8 flag in the PluginDescriptionFile.

Addresses BUKKIT-314, BUKKIT-1466, BUKKIT-3377

By: Wesley Wolfe <wesley.d.wolfe+git@gmail.com>
2014-03-25 00:05:21 -05:00
Bukkit/Spigot 181110e567 Update data folder migration for spaces in plugin names. Fixes BUKKIT-5417
This change drops the previous plugin data folder migration based on the
plugin's file name, and adapts the migration to now instead consider
plugins that have spaces in their original name.

By: Wesley Wolfe <weswolf@aol.com>
2014-02-15 12:05:20 -06:00
Bukkit/Spigot bc562b3f5b Provide warnings for spaces in plugin names. Addresses BUKKIT-5419
By: Wesley Wolfe <weswolf@aol.com>
2014-02-15 11:37:33 -06:00
Bukkit/Spigot edd5dc6155 Fix loadbefore, soft, and normal dependencies with spaces. Fixes BUKKIT-5418
This change makes the lists of loadbefore, softdependency, and dependency
replace the spaces in the names with underscored to reflect the behavior
used with names.

By: Wesley Wolfe <weswolf@aol.com>
2014-02-15 11:17:14 -06:00
Bukkit/Spigot aecd846814 [Bleeding] Fix getCommand for conflicting plugin commands.
By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-02-09 12:27:08 -05:00
Bukkit/Spigot 2c68d4b554 [Bleeding] Also blacklist ":" in plugin command aliases.
By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-02-08 15:50:30 -05:00
Bukkit/Spigot 04d5aec52c Pulling all pending Bukkit-JavaDoc changes
By: Wesley Wolfe <weswolf@aol.com>
2014-02-08 06:05:41 -05:00
Bukkit/Spigot e833c88a72 [Bleeding] Blacklist certain plugin names
By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-02-07 20:30:34 -05:00
Bukkit/Spigot 038c99a7f4 Fix some messages
Addresses BUKKIT-5272, BUKKIT-5282, and BUKKIT-5283

By: Wesley Wolfe <weswolf@aol.com>
2014-01-06 14:08:05 -06:00
Bukkit/Spigot 216df9a3d5 Add method to get plugin by its class. Adds BUKKIT-5240
Currently, the only way to get a plugin is by name or using a static
variable. This adds two methods to get a plugin based on its classes,
utilizing the plugin classloader.

By: Wesley Wolfe <weswolf@aol.com>
2013-12-24 22:20:20 -06:00
Bukkit/Spigot ea7c13e03d [BREAKING] Shift plugin initialization; Addresses BUKKIT-1788
This reverts commit ae4f1c05d825e232d7fc0483639ba65ad54d2db4, restoring
commit 27cb5e7c9c6b2cfc5419262df75d89bc6bfe7879 (mostly).

Shared class loading was removed as an explicit feature in the plugin.yml,
as all plugins implicitly share class loaders already.

Some deprecated, internal functionality is now (package) private, namely
some sections pointed out in 203de4180b40f069d2c175d763476bd4ce338c76.

By: Wesley Wolfe <weswolf@aol.com>
2013-12-10 18:50:58 -06:00
Bukkit/Spigot bb50f1a774 Pulling all pending Bukkit-JavaDoc changes
A special thanks goes to @aerouk for almost all of the changes found here.

By: Wesley Wolfe <weswolf@aol.com>
2013-12-15 01:07:43 -05:00
Bukkit/Spigot d8cfc3fa42 [BREAKING] Use event class instead of event for timings. Fixes BUKKIT-4664
TimedRegisteredListener uses a reference to the first event fired. This
causes a memory leak in the server for any references that event has. This
changes TimedRegisteredListener to only store a reference to the class of
the event.

This change is intentionally a breaking change, as it is an obscure part
of the API. A non-breaking change would require the leak to be maintained
or an immediate update for any plugins using the method, as it would be an
indirect break.

A unit test is also included to check behavior of shared superclass
functionality.

By: Score_Under <seejay.11@gmail.com>
2012-07-05 23:51:12 +01:00
Bukkit/Spigot 599ec05858 Pulling all pending Bukkit-JavaDoc changes
By: Edmond Poon <sagaciouszzzz@gmail.com>
2013-08-03 21:46:30 -04:00