Skip to content

Commit 0b3c7ed

Browse files
committed
Bump minor version.
1 parent ebe6554 commit 0b3c7ed

File tree

3 files changed

+14
-7
lines changed

3 files changed

+14
-7
lines changed

lib/io/event/version.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,6 @@
77
class IO
88
# @namespace
99
module Event
10-
VERSION = "1.13.0"
10+
VERSION = "1.14.0"
1111
end
1212
end

readme.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,10 @@ Please see the [project documentation](https://socketry.github.io/io-event/) for
1818

1919
Please see the [project releases](https://socketry.github.io/io-event/releases/index) for all releases.
2020

21+
### v1.14.0
22+
23+
- [Enhanced `IO::Event::PriorityHeap` with deletion and bulk insertion methods](https://socketry.github.io/io-event/releases/index#enhanced-io::event::priorityheap-with-deletion-and-bulk-insertion-methods)
24+
2125
### v1.11.2
2226

2327
- Fix Windows build.

releases.md

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
# Releases
22

3-
## Unreleased
3+
## v1.14.0
44

55
### Enhanced `IO::Event::PriorityHeap` with deletion and bulk insertion methods
66

77
The {ruby IO::Event::PriorityHeap} now supports efficient element removal and bulk insertion:
88

9-
- **`delete(element)`**: Remove a specific element from the heap in O(n) time
10-
- **`delete_if(&block)`**: Remove elements matching a condition with O(n) amortized bulk deletion
11-
- **`concat(elements)`**: Add multiple elements efficiently in O(n) time
9+
- **`delete(element)`**: Remove a specific element from the heap in O(n) time
10+
- **`delete_if(&block)`**: Remove elements matching a condition with O(n) amortized bulk deletion
11+
- **`concat(elements)`**: Add multiple elements efficiently in O(n) time
12+
13+
<!-- end list -->
1214

1315
``` ruby
1416
heap = IO::Event::PriorityHeap.new
@@ -24,8 +26,9 @@ count = heap.delete_if { |x| x.even? } # Removes 2, 8 efficiently
2426
```
2527

2628
The `delete_if` and `concat` methods are particularly efficient for bulk operations, using bottom-up heapification to maintain the heap property in O(n) time. This provides significant performance improvements:
27-
- **Bulk insertion**: O(n log n) → O(n) for adding multiple elements
28-
- **Bulk deletion**: O(k×n) → O(n) for removing k elements
29+
30+
- **Bulk insertion**: O(n log n) → O(n) for adding multiple elements
31+
- **Bulk deletion**: O(k×n) → O(n) for removing k elements
2932

3033
Both methods maintain the heap invariant and include comprehensive test coverage with edge case validation.
3134

0 commit comments

Comments
 (0)