Skip to content

Releases: DevNatan/inventory-framework

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

11 Sep 00:23
Compare
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
Compare
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
Compare
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
Compare
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
Compare
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
Compare
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)

v2.5.1-rc.1

30 Jun 17:10
Compare
Choose a tag to compare

In this release the entire internal code has been completely rewritten, new code is abstracted correctly to adapt possible implementations for other platforms in the new future and to make life easier for new contributors when they touch the code (#89).

πŸŽ‰ New Features

  • Added support for more inventory types (#58)
  • Lazy pagination source (#72)
  • Asynchronous Opening (#76)
  • Item References (#80)
  • Slot context item patch (#112)
  • Asynchronous Pagination (#113)
  • Now onItemHold, onItemRelease and onMoveOut can be applied per-item
  • Allow user defined layout (custom character) in context scope

πŸ› Bug fixes

  • Fixed context cancellation based on interceptors call order
  • Fixed a bug where when the paginated view was updated with empty source the items from the previous pagination were not cleared
  • View update job error (#106)
  • Fixed error that causes context to be cleared randomly by the Garbage Collector (#107)
  • An exception will be thrown if the user does not define any paging data
  • Fixed a bug that pagination data of multiple contexts in the same view conflicts with each other

πŸ”§ API changes

  • More fluent ViewFrame API with chain accessors
  • Removed pollution of overridable methods in View that shouldn't be overridden
  • onClickOutside and onHotbarInteract handlers now deprecated
  • Paginated view offset and limit now deprecated
  • Page switch methods returns a boolean to let user know if page switch was successful
  • User-defined layout pattern method signature changed
  • Pagination navigation item methods override now deprecated

πŸ› οΈ Internal changes

  • Prohibit pagination item rendering function use (#104)
  • An exception will be thrown if the user does not define any pagination data source
  • An exception will be thrown if the user changes the state of the view after it has been rendered
  • Bukkit platform implementation now have bStats

πŸ“˜ Documentation

InventoryFramework has been moved from repository readme to Wiki.

v2.5-CC

21 May 02:30
Compare
Choose a tag to compare

πŸ› Bug Fixes

  • Fixed StackOverflowError if context is invalidated while context inventory's is being opened to the player (thanks to @devwckd)

v2.5

26 Apr 16:25
Compare
Choose a tag to compare

This version of IF comes with some significant performance changes related to paging inventory and regarding defining items in the same, it is now possible for you to define more than one item for the same slot which will be rendered according to the rendering priority.

πŸŽ‰ New Features

  • Inheritable context data (#65)
  • User-defined paginated view layout pattern (#70)
  • Custom "on click outside" inventory handler (#55)

πŸ› Bug Fixes

  • Pagination item overrides already set item on re-render (#81)
  • Now errors are propagated by default if they occur inside a handler (#83)

πŸ”§ API changes

  • View not longer implements Closeable (#82)

πŸ“˜ Documentation

  • Replaced 'BLAZE_ROW' to 'BLAZE_ROD' in readme (thanks to @mattnicee7) (#75)

πŸ₯‡ New Contributors

v2.4.3

10 Apr 19:39
Compare
Choose a tag to compare

Bug Fixes

  • Error handling now works properly onOpen and onRender (#51).

API changes

  • onHotbarInteract(...) is now stable;
  • Possibility to get the pagination source from ViewContext (#62);
  • Allow getting current title from context inventory (#56);
  • New PaginatedView(rows) constructor (#49).

Internal changes

  • An exception is thrown when trying to manipulate or access the context inventory before opening it (#63);
  • The inventory will not be displayed to the player if the initial rendering is cancelled. (#60).

Documentation

  • View options details on readme (#66).