NBT-API

NBT-API

98.9k Downloads

Update to support 1.16.4

SlimeDog opened this issue ยท 14 comments

commented

Please update to support 1.16.4.

[07:12:22] [Server thread/WARN]: [NBTAPI] Wasn't able to find NMS Support! Some functions may not work!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'GetterSetterTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'TypeTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'RemovingKeys' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'ListTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'SubCompoundsTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'MergeTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'ForEachTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'StreamTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'EqualsTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'IteratorTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'ItemConvertionTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'EmptyItemTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'ItemMergingTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'DirectApplyTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'EntityTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'EntityCustomNbtPersistentTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'NBTFileTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'WorldDataTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] Error during 'GameprofileTest' test!
[07:12:38] [Server thread/WARN]: [NBTAPI] WARNING! This version of NBT-API seems to be broken with your Spigot version! Plugins that don't check properly may throw Exeptions, crash or have unexpected behaviors!
commented

1.16.4 release is scheduled for today, just haven't come around yet because of lectures.

commented

Thanks. School comes first.

commented

Great. Thanks.

commented

Uni but yea. Just started and running into some "fun" issues. Mojang removed all convenience setters from compounds (no setString etc) so it will be some more work than I expected. More updates on the discord.

commented

I keep making that mistake with Europeans. "School" in the US includes university. Studies come first.

commented

Update from discord:
Also removed the getType method, now you only can ask hasKeyOfType("key", typeid) ?!?
I guess I can fix all of that, but I might start work on nbtapi 3.0 soon cause this is slowly starting to become a clusterfuck to support 1.7.10-1.16.4^^

commented

Why support them all? Previous builds support previous Spigot versions.

commented

Because that's the original intent of the API. If you develop a custom Enchantments plugin it should work from 1.7-1.16. and with the public-facing API of the nbtapi changing over time, just using old versions wouldn't really work. (Also it's kinda an interesting challenge, and I have a lot planned for a 3.0 version)

commented

Understood, but (for example) current release works fine with Spigot 1.16.3, but not with Spigot 1.16.4. New version doesn't need to work with 1.16.3 -- if I want to run that, I just use the appropriate version of NBTAPI. Same for every other Spigot version.

commented

Yea but for example I add a "getOrCreateCompound" method with the 1.16.4 release of the api, if you use it, and someone has a 1.16.3 server with the then older version of the nbtapi, he will get an exception for that missing method. That's why one release has to support all of the versions.

commented

I would argue that if someone wants getOrCreateCompound, they should upgrade.

commented

Well, he would have to upgrade his minecraft Server from for example 1.8 to 1.16 just so one plugin works that uses an api that is intended to make the version irrelevant. Do you see the issue? At that point, you could just develop against nms and if you want a more up to date version of the plugin, update your server. So not an option. Also somehow it just started working after adding 1.16.4 to the version logic, now I'll check why it didn't fall back correctly to the 1.16.4 logic.

commented

Sure.

commented

Ok found a bug in the Reflection handler that prevented it from just using 1.16.3 mappings since 1.16.4 > 1.16.3. Without that bug it would have just worked with the 2.5 release ๐Ÿ™„. Going to fix it, add 1.16.4, and release it.