Skip to content

Releases: vectrix-space/flare

Flare v2.0.1

22 Jan 22:47
Compare
Choose a tag to compare

Changes:

  • Remove call to missLocked() on put.
  • Improve custom map entry remove, setValue, and make add function.
  • Improved the EntryIterator by simplifying iteration advancement and remove forEachRemaining.
  • Cleaned up the compute and put methods.

Bug Fixes:

  • Fixed compute in the ExpungingValue to always consider the value updated even if the previous value is the same.
  • Fixed tryExpunge to return whether the value is expunged if the value is not null.

Flare v2.0.0

19 Oct 05:32
Compare
Choose a tag to compare

Changes:

  • Removed the AtomicReferenceFieldUpdater#get calls and instead access the field directly.
  • Removed the promotion factor property as it is not very useful.
  • Removed some code duplication.
  • Improved some method names in ExpungingEntry.
  • Updated benchmarks for the latest changes.

Bug Fixes:

  • Fixed inconsistent atomic mutations of SyncMap#compute, SyncMap#computeIfAbsent, SyncMap#computeIfPresent.
  • Fixed a bug where computing functions that return null will not remove the entry from the dirty map.

Additional Features:

  • Added more methods to ExpungingEntry to carry out atomic mutations for compute functions and more.
  • Added InsertionResult to provide the result of atomic mutations.

Flare v1.0.0

26 Sep 07:30
Compare
Choose a tag to compare

Changes:

  • Reworked buildscripts.
  • Improved licensing applied to primitive sync maps.
  • Minor clean up to sync map implementations.
  • Bumped fastutil to 8.5.6.
  • Bumped checker-qual to 3.18.0.
  • Bumped gradle wrapper to 7.2.
  • Bumped indra to 2.0.6.
  • Bumped jmh to 0.6.6.
  • Bumped junit to 5.8.1.
  • Bumped guava-testlib to 31.0-jre.

Flare v0.3.0

02 Jul 11:38
Compare
Choose a tag to compare

Changes:

  • Various formatting improvements to SyncMap.
  • Improved performance of SyncMap#isEmpty, by making it no longer traverse all of the map entries.
  • Bumped checker-qual version to 3.15.0.
  • Bumped gradle wrapper version to 7.0.2.
  • Bumped me.champeau.jmh version to 0.6.5.
  • Bumped jmh version to 1.32.

Bug Fixes:

  • Prevent SyncMap returning null values from Map.Entry by storing the entrys value scanned ahead in the Iterator.

Additional Features:

  • Added Short2ObjectSyncMap for fastutils SyncMap.
  • Added custom compute and bulk operation handling to SyncMap.
  • Added low contention benchmarks with an updated summary for SyncMap.

Flare v0.2.0

04 Jun 08:18
Compare
Choose a tag to compare

Changes:

  • Various improvements to the unit tests.
  • Various minor performance improvements in SyncMap implementation.
  • Changed SyncMap#of and SyncMap#setOf to use an IntFunction instead of a Function.
  • Bumped checker-qual dependency version to 3.14.0.
  • Bumped junit-jupiter version to 5.7.2.
  • Bumped indra dependency version 2.0.5.

Bug Fixes:

  • Promote the dirty map to the read map through other methods involving the dirty map, to avoid taking the slow path each time.

Additional Features:

  • Added fastutil versions of SyncMap.
  • Added benchmarks module, with a basic summary.

Flare v0.1.1

30 Apr 22:54
Compare
Choose a tag to compare

Changes:

  • Minor code clean-up.
  • Promote the dirty map before searching for existing values to sum for size().
  • Bumped gradle wrapper to 6.8.3.
  • Bumped checker-qual dependency version to 3.12.0.

Bug Fixes:

  • Make the remove(key, value) method not always return false when removing the value from the underlying read map.

Flare v0.1.0

18 Mar 10:00
Compare
Choose a tag to compare

Initial release, containing SyncMap.