Skip to content

Releases: devnatan/inventory-framework

v3.0.0-rc.1 (08-07-2023)

07 Aug 23:22

Choose a tag to compare

πŸ› Bug fixes

  • Fix relocation warn being sent even in the wrong conditions. Now we check if IF's main class is available in runtime and plugin "InventoryFramework" is enabled (#412)
  • Null getPlayer() in RenderContext (#414)
  • An error thrown when a empty pagination source is provided (#415)
  • Dynamically rendered items in pagination being positioned in the wrong place (#416)

πŸŽ‰ New Features

  • New ViewFrame.open(view, player, data) overload (#417)
  • New item.updateOnClick() to trigger context update on item click (#418)

🧩 API changes

  • initialState() is now mutable so its value can be changed (#413)

πŸ”§ Other changes

  • Bump junit from 5.9.3 to 5.10.0 (#406)

Full Changelog: v3.0.0-beta...v3.0.0-rc.1

v3.0.0-beta (08-04-2023)

05 Aug 00:16

Choose a tag to compare

Inventory Framework is now published to Maven Central!

This release introduces Shared Contexts (#409) preview also fixes with artifacts publication issues.

Full Changelog: v3.0.0-alpha...v3.0.0-beta

v3.0.0-alpha (08-01-2023)

02 Aug 00:18

Choose a tag to compare

πŸ› Bug fixes

  • Infer container size automatically when layout is present (#377)
  • JDK and PaperSpigot versions compatibility issues (#384)
  • Change layout component registration order to ensure it works with PaginationState (#399)

πŸŽ‰ New Features

  • Item render and update handler shortcuts (#274)
  • Simplified way to conditional item rendering with displayIf(BooleanSupplier) (#338)
  • Support more inventory types (#343)
  • Allow to change component position while rendering (#395)

πŸ“˜ Documentation

  • Added GIF to Counter code sample
  • Added Per-player Data Source topic to Pagination feature documentation

🧩 API changes

  • Internal data used in initialState is now available in Internal API which allows Features System to use it (#326)
  • New unsetSlot to create items with unset slots (#395)
  • New item click handler onClick(Runnable) overload (#400)

πŸ› οΈ Internal changes

  • Lombok removed (#391)
  • Immutable LayoutSlot and layout components renderization order (#399)

πŸ”§ Other changes

Full Changelog: v3.0.0-EAP...v3.0.0-alpha

v3.0.0-EAP (06-07-2023)

07 Jun 23:35
9e028b3

Choose a tag to compare

Version 3 Release Preview.
Please refer to Migrating to version 3 on Wiki and Installation for migration details.

This version is NOT production ready.

Full Changelog: 2.5.4-rc.1...v3.0.0-EAP

v2.5.4-rc.1 (10-09-2022)

11 Sep 00:23

Choose a tag to compare

πŸ› Bug fixes

  • Fixed context data inheritance (#219)
  • Fixed NullPointerException in context paginator (#224)
  • Fixed fallback navigation item retrieval compatibility (#228)
  • Fixed "Update job not started" error (#232)
  • Pagination context getSlot() returning index instead of current slot (#235)
  • Context getCurrentItem always returning null (#235)
  • Try to fix ConcurrentModificationException on open (#237)
  • Fixed page switch issues due to dynamic pagination source (#233, #238)
  • Fixed wrong update interval when using schedule update with Duration as parameter (#236)

πŸŽ‰ New Features

πŸ“˜ Documentation

  • Code preview on Wiki.

🧩 API changes

  • Provide unique element index for pagination (#239)

πŸ”§ Other changes

  • Bump com.diffplug.spotless from 6.9.1 to 6.10.0 (#214)
  • Update IF-specific bStats charts (#227)

πŸ› οΈ Internal changes

  • Now clear() supports immediate clear when context is on entity container (#235)

  • Bump com.diffplug.spotless from 6.9.1 to 6.10.0 (#214)

Full Changelog: 2.5.4-beta...v2.5.4-rc.1

v2.5.4-beta

23 Aug 22:25

Choose a tag to compare

πŸ› Bug fixes

  • Fixed pagination navigation (#196)
  • User-defined pattern render on paginated views (#196)
  • Optimize and fix some pagination issues like "At least one pagination must be set" (#201)
  • Provided/asynchronous source is now updated on container when view is updated (#201)
  • Close handler Bukkit player retrieval (#202)
  • Allow users to ignore navigation item factory (#205)
  • Allow users set navigation item slot by item.withSlot(...) (#206)
  • Fix "Slot conversion not supported" (#208)
  • Instantiate entity container properly, solve isOnEntityContainer checks (#211)

πŸŽ‰ New Features

  • Auto-slot-fill through availableSlot(...) and unified layout, use layout on regular and paginated views (#174)
  • Custom UnknownReferenceException to ref(String) and nullable ref refOrNull(String) (#210)
  • Allow slot clear on update, a slot can now be cleared with clear() (#209)

⚑Performance improvements

  • Removed nextTick from updateSlot call (#203)
  • Layouts are now resolved on view initialization not on render (#174)

🧩 API changes

  • Asynchronous pagination provider CompletableFuture value changed from List<T> to List<? extends T>
  • ItemWrapper asBukkitItem and isEmpty is now public (#201)
  • New AsyncPaginationDataState onSuccess(BiConsumer<..., List<? extends T>>) to get result on example
  • AbstractView#nextTick is now public
  • Shortcut to item.onRender with item.rendered(::createItem) and item.onUpdate with item.updated(::updatedItem)

πŸ“˜ Documentation

  • Version compatibility table updated on Wiki
  • Improved setSource(Function<...>) documentation with a real world example

πŸ› οΈ Internal changes

  • Pagination source now can only be set once (#201).

πŸ”§ Other changes

  • Added license scan report and status (#198)
  • Update mockito monorepo to v4.7.0 (#197)
  • Update plugin com.diffplug.spotless to v6.9.1 (#194)
  • Update dependency gradle to v7.5.1 (#189)
  • Pipeline interceptor tests (#199)

Full Changelog: 2.5.3...v2.5.4-beta

v2.5.3

29 Jul 18:28

Choose a tag to compare

πŸ› Bug fixes

  • Fix scheduled updates (#175)
  • UnsupportedOperationException when use getPlayer in PaginatedViewSlotContext (#183)
  • Skip layout render if signature is not checked (#185)
  • IllegalStateException when use setSource in PaginatedView (#172)

πŸ› οΈ Other changes

  • Test-only workflow (#154)
  • Update code formatter (#173)
  • Update plugin com.diffplug.spotless to v6.9.0 (#182)
  • Update junit5 monorepo to v5.9.0 (#179)
  • Update ASzc/change-string-case-action action to v2 (#168)
  • Update bug report issue template (#171)

Full Changelog: 2.5.2...2.5.3

v2.5.2

18 Jul 23:26

Choose a tag to compare

πŸ› Bug fixes

  • Nested view open by context ClassCastException (#164)
  • Lately fetch update job initiator (#163)
  • Context update implementation (#162)

πŸ”§ API changes

  • Change ViewItem click handler type (#161)

πŸ› οΈ Internal changes

  • Update gradle to v7.5 (#155)
  • Update gradle/gradle-build-action digest to cd3cedc (#157)
  • Create generate artifacts workflow (#165)

Full Changelog: 2.5.1...2.5.2

v2.5.1

11 Jul 16:02

Choose a tag to compare

πŸ› Bug fixes

  • Click handler doesn't work in onItemRender. Thanks to @Azodox (#142)
  • Random NPE when closing inventory. Thanks to @Azodox (#143)
  • ConcurrentModificationException in while opening view. Thanks to @luiz-otavio (#144)
  • Dynamic title update implementation (#146)
  • Handle close if mark is applied or item is close on click (#148)

Full Changelog: 2.5.1-rc.2...2.5.1

v2.5.1-rc.2

09 Jul 20:30

Choose a tag to compare

πŸ› Bug fixes

  • Fix container size normalization (#133)
  • Transfer open context data to regular context (#134)
  • Allow multiple ViewFrame instances on non-bundled library (#138)

πŸ₯‰ Third-Party

  • Update plugin com.diffplug.spotless to v6.8.0 (#125)
  • Update gradle/gradle-build-action digest to 2a7ffc9 (#128)
  • Update kotlin to v1.7.10 (#130)

πŸ› οΈ Internal changes

  • Enable bStats metrics on library level (#136)