Skip to content

Release v2.0.0

Compare
Choose a tag to compare
@TheNullicorn TheNullicorn released this 14 Jun 14:31
  • Introduced the filtering API, giving users more fine-grained control over streamed NBT data. Based on MongoDB projections.
    • Filters are essentially just lists of tag names. The filter's mode (INCLUDE or EXCLUDE) determines how tags with those names are treated in filtered objects.
      • Inclusion filters, when applied to streamed compounds, ensure that those compounds only include tags whose names are explicitly added to the filter.
      • Exclusion filters allow filtered compounds to retain all tags except those whose names are added to the filter.
    • Just like NBTCompound.get(...), tag names can be referenced via dot-notation.
  • Anywhere where tags are reference via dot-notation now allows tag names that literally have dots (.) in them to be escaped using backslashes.
    • For string literals, this means adding a double-backslash before any dots that are part of the tag's actual name (\\.).
  • Removed dependencies on Lombok and JetBrains annotations.
  • Fixed two bugs
    • Root compounds written via NBTOutputStream and NBTWriter didn't have END tags.
    • NBTReader and NBTWriter would automatically close streams that they didn't own.