Download Latest Version v0.19.0 source code.tar.gz (156.0 kB)
Email in envelope

Get an email when there's a new version of DataStructures.jl

Home / v0.19.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2025-08-01 2.7 kB
v0.19.0 source code.tar.gz 2025-08-01 156.0 kB
v0.19.0 source code.zip 2025-08-01 205.2 kB
Totals: 3 Items   363.8 kB 0

DataStructures v0.19.0

Diff since v0.18.22

(breaking)

Added

  • New Queue and Stack as separate types with enhanced documentation
  • Add empty! method for heaps ([#932])
  • Support for recursive DefaultDict creation
  • Add find_prefixes method to Trie for finding all keys that are prefixes of a given string ([#933])
  • Improved constructors for CircularBuffer allowing initialization with an iterable and capacity
  • Add resize! method for CircularBuffer
  • Enhanced documentation with doctests and improved examples throughout ([#931])

Changed

  • Minimum Julia version requirement raised to 1.6 ([#874])
  • DisjointSets renamed to DisjointSet (singular form) ([#700])
  • IntDisjointSets renamed to IntDisjointSet (singular form) ([#700])
  • PriorityQueue API updated to use standard Julia interfaces:
  • enqueue!push!
  • dequeue!popfirst!
  • dequeue_pair!popfirst!
  • peekfirst
  • Renamed methods in sorted containers:
  • startoffirstindex
  • endoflastindex
  • insert!push_return_semitoken!
  • Accumulator constructor behavior changed to properly accumulate values when initialized with pairs
  • Documentation significantly expanded and reorganized
  • Performance improvements in heaps and various other data structures ([#907])

Deprecated

  • enqueue! and dequeue! methods (use push! and popfirst! instead)
  • peek for PriorityQueue (use first instead)
  • DisjointSets (use DisjointSet instead) ([#700])
  • IntDisjointSets (use IntDisjointSet instead) ([#700])
  • startof and endof (use firstindex and lastindex instead)

Fixed

  • Memory management improvements using Base._unsetindex! in several data structures ([#884])
  • Fixed append! behavior in MutableLinkedList to properly handle multiple arguments
  • Various bug fixes and correctness improvements

Removed

  • Dependency on Compat.jl
  • Dependency on InteractiveUtils.jl
  • Support for Julia versions < 1.6 ([#874])

Merged pull requests: - Define empty! for BinaryHeap and MutableBinaryHeap (#932) (@devmotion) - Avoid unnecessary hash lookups in trie.jl (#933) (@AzamatB) - Refactor not_iterator_of_pairs to stop using InteractiveUtils (#936) (@asinghvi17) - Remove outdated Iterators.reverse definition (#939) (@asinghvi17) - release v0.19 (#943) (@aviatesk)

Closed issues: - Add empty! for all Heaps (#866) - The hash value of ordered sets is order-dependent (#934) - Queue - release vs master (#935) - Trie contradicts its documentation (#940)

Source: README.md, updated 2025-08-01