ProtocolLib

3M Downloads

TinyProtocol license

stonar96 opened this issue ยท 9 comments

commented

Make sure you're doing the following

  • You're using the latest build for your server version
  • This isn't an issue caused by another plugin
  • You've checked for duplicate issues
  • You didn't use /reload

Describe the question
Can you please release TinyProtocol under the MIT license? I can't add TinyProtocol to my MIT project.

API method(s) used
TinyProtocol API methods.

Expected behavior
TinyProtocol to be licensed under the MIT license.

Code
-

Additional context
-

commented

not really. it's hard to change a license since you need the approval of every single former contributor

commented

any reason to not just use standard ProtocolLib?

commented

I'm currently using standard ProtocolLib, personally I don't observe any problems with that. However, some users have asked me if I could replace or remove the dependency because they don't want to run ProtocolLib on their servers for some reason.

Besides that I think it would make sense to have TinyProtocol be released under a more permissive license since one has to include or shade it into the jar in contrast to ProtocolLib. (On a side note: Actually I can't use ProtocolLib in a MIT licensed project either, since that would require ProtocolLib to be released under LGPL for example. However, this seems to be a controversial topic and I also know that it would be impossible to relicense that.)

TinyProtocol has relatively few contributors. I think (provided that you are even fine with that) we could try to reach them out:

commented

yeah you've touched on some 10+ year drama in the MC community. arguably plugins should be GPL because of Bukkit, but they break their own license since CraftBukkit uses NMS. i don't think that was ever really properly resolved

commented

I personally don't mind a license change. However, as dmulloy2 has already said, plugin licensing is a rather complicated situation. Therefore, I am not sure if this is even possible.

commented

I definitely agree with changing to a more permissive license for TinyProtocol (and I was thinking about the same thing)

About the licensing - I know paper is licensed under gpl with an explicit exception that plugins can be published under MIT. Maybe Bukkit has similar things somewhere?

commented

Now only @aadnk's response is missing. @dmulloy2 do you have contact with him, or should I try to reach him?

Ofc I'm aware that this will probably need further investigation, even if all contributors have approved (e.g. to check if it's even legally possible etc.). However, getting the approval from all contributors seems to be the first step to be done.

commented

Changing the license of TinyProtocol to a more permissive license like MIT is fine by me. ๐Ÿ‘

Given that it's intended to be bundled with plugins, I should have licensed it under LGPL or MIT in the first place, but it slipped my mind. ๐Ÿ˜…

Of course, the license status of CraftBukkit is murky, to say the least. This murkiness might also extend to plugins that reference internals/APIs within CraftBukkit and the Minecraft server itself. However, given the outcome of Google LLC v. Oracle America, Inc, TinyProtocol's use of CraftBukkit/Minecraft APIs might arguably fall under fair use in the US โ€” though I am not a lawyer. And it is theoretically better to use ProtocolLib as an API rather than bundle TinyProtocol in terms of potential legal risk, though in both cases a plugin will still be reading/modifying internal network packets so it might not ultimately make much of a difference.

That said, developers may be on safer ground if they avoid contravening the EULA. Mojang has actually historically enforced this, as seen when the creator of the Minecraft Physics mod (Haubna) was required to release their mod for free because charging for mods/plugins is against the EULA.

@stonar96 : I wouldn't personally mind re-licensing the whole of ProtocolLib under LGPL (with TinyProtocol as MIT), but given the number of contributors this would mean a lot of work to contract them or rewrite their contributions. So this might not be worth the effort.

commented

First of all, thank you all for replying!

@dmulloy2 now that all former contributors have agreed to a license change, is there anything that would contradict doing it? My suggestion would be to add a MIT license file in the TinyProtocol folder.