Skip to content

Commit ec3c870

Browse files
committed
Bump minor version.
1 parent 8e6d1ab commit ec3c870

3 files changed

Lines changed: 29 additions & 12 deletions

File tree

lib/async/version.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,5 @@
44
# Copyright, 2017-2025, by Samuel Williams.
55

66
module Async
7-
VERSION = "2.25.0"
7+
VERSION = "2.26.0"
88
end

readme.md

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,17 @@ Please see the [project documentation](https://socketry.github.io/async/) for mo
3535

3636
Please see the [project releases](https://socketry.github.io/async/releases/index) for all releases.
3737

38+
### v2.26.0
39+
40+
- `Async::Notification#signal` now returns `true` if a task was signaled, `false` otherwise, providing better feedback for notification operations.
41+
- `require "async/limited_queue"` is required to use `Async::LimitedQueue` without a deprecation warning. `Async::LimitedQueue` is not deprecated, but it's usage via `async/queue` is deprecated.
42+
- `Async::Task#sleep` is deprecated with no replacement.
43+
- `Async::Task.yield` is deprecated with no replacement.
44+
- `Async::Scheduler#async` is deprecated, use `Async{}`, `Sync{}` or `Async::Task#async` instead.
45+
- Agent context is now available, via the [`agent-context` gem](https://github.com/ioquatix/agent-context).
46+
- [`Async::Barrier` Improvements](https://socketry.github.io/async/releases/index#async::barrier-improvements)
47+
- [Introduce `Async::Queue#close`](https://socketry.github.io/async/releases/index#introduce-async::queue#close)
48+
3849
### v2.25.0
3950

4051
- Added support for `io_select` hook in the fiber scheduler, allowing non-blocking `IO.select` operations. This enables better integration with code that uses `IO.select` for multiplexing IO operations.
@@ -62,7 +73,7 @@ Please see the [project releases](https://socketry.github.io/async/releases/inde
6273

6374
### v2.19.0
6475

65-
- [Async::Scheduler Debugging](https://socketry.github.io/async/releases/index#async::scheduler-debugging)
76+
- [`Async::Scheduler` Debugging](https://socketry.github.io/async/releases/index#async::scheduler-debugging)
6677
- [Console Shims](https://socketry.github.io/async/releases/index#console-shims)
6778

6879
### v2.18.0

releases.md

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

3-
## Unreleased
3+
## v2.26.0
44

55
- `Async::Notification#signal` now returns `true` if a task was signaled, `false` otherwise, providing better feedback for notification operations.
66
- `require "async/limited_queue"` is required to use `Async::LimitedQueue` without a deprecation warning. `Async::LimitedQueue` is not deprecated, but it's usage via `async/queue` is deprecated.
@@ -13,10 +13,12 @@
1313

1414
`Async::Barrier` now provides more flexible and predictable behavior for waiting on task completion:
1515

16-
- **Completion-order waiting**: `barrier.wait` now processes tasks in the order they complete rather than the order they were created. This provides more predictable behavior when tasks have different execution times.
17-
- **Block-based waiting**: `barrier.wait` now accepts an optional block that yields each task as it completes, allowing for custom handling of individual tasks:
16+
- **Completion-order waiting**: `barrier.wait` now processes tasks in the order they complete rather than the order they were created. This provides more predictable behavior when tasks have different execution times.
17+
- **Block-based waiting**: `barrier.wait` now accepts an optional block that yields each task as it completes, allowing for custom handling of individual tasks:
1818

19-
```ruby
19+
<!-- end list -->
20+
21+
``` ruby
2022
barrier = Async::Barrier.new
2123

2224
# Start several tasks
@@ -34,9 +36,11 @@ barrier.wait do |task|
3436
end
3537
```
3638

37-
- **Partial completion support**: The new block-based interface allows you to wait for only the first N tasks to complete:
39+
- **Partial completion support**: The new block-based interface allows you to wait for only the first N tasks to complete:
40+
41+
<!-- end list -->
3842

39-
```ruby
43+
``` ruby
4044
# Wait for only the first 3 tasks to complete
4145
count = 0
4246
barrier.wait do |task|
@@ -52,11 +56,13 @@ This makes `Async::Barrier` a superset of `Async::Waiter` functionality, providi
5256

5357
`Async::Queue` and `Async::LimitedQueue` can now be closed, which provides better resource management and error handling:
5458

55-
- **New `close` method**: Both queue types now have a `close` method that prevents further items from being added and signals any waiting tasks.
56-
- **Consistent error handling**: All queue modification methods (`push`, `enqueue`, `<<`) now raise `Async::Queue::ClosedError` when called on a closed queue.
57-
- **Waiting task signaling**: When a queue is closed, any tasks waiting on `dequeue` (for regular queues) or `enqueue` (for limited queues) are properly signaled and can complete.
59+
- **New `close` method**: Both queue types now have a `close` method that prevents further items from being added and signals any waiting tasks.
60+
- **Consistent error handling**: All queue modification methods (`push`, `enqueue`, `<<`) now raise `Async::Queue::ClosedError` when called on a closed queue.
61+
- **Waiting task signaling**: When a queue is closed, any tasks waiting on `dequeue` (for regular queues) or `enqueue` (for limited queues) are properly signaled and can complete.
62+
63+
<!-- end list -->
5864

59-
```ruby
65+
``` ruby
6066
queue = Async::Queue.new
6167

6268
# Start a task waiting for items:

0 commit comments

Comments
 (0)