Skip to content

v3.5.0

Compare
Choose a tag to compare
@dvdoug dvdoug released this 26 Jan 17:23
· 441 commits to master since this release

Added

  • Added a new interface LimitedSupplyBox extends Box for situations where there are restrictions on the number of a box type available for packing Items into. The interface contains 1 additional method getQuantityAvailable().
  • Added new exception NoBoxesAvailableException which is thrown when an item cannot be packed due to suitable boxes not being available (e.g. when the new functionality is used and the quantity available is insufficient). The existing ItemTooLargeException which is thrown when an item is too large to fit into any of the supplied box types at all (regardless of quantity) still exists, and now extends from NoBoxesAvailableException as a special case

Changed

  • Improved efficiency in packing and weight distribution
  • The ItemList passed to VolumePacker's constructor is now cloned before usage, leaving the passed-in object unaffected. Previously this was used as a working dataset. The new behaviour aligns with the existing behaviour of Packer

Fixed

  • Fixed issue where internal sort consistency wasn't always correct
  • Some debug-level logging wasn't logging correctly