async 1.25.1 → 1.25.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 70efaa49b29fd36596f22f7796c475610955cc63836725b00775f6c1025aa976
4
- data.tar.gz: d5e7987bcb581c20b3ac17fba0ef803a61f154ec107b55ad01220c16ae2a32e6
3
+ metadata.gz: 81b7571d3f6ac5ce2ade98ca74b0440581178c8cb74503553d5a6dc70956a6fb
4
+ data.tar.gz: f5aeea0f0a482f52e98c5064bd9678aed1f9b8e4868ad2d5bf7a79c009f53275
5
5
  SHA512:
6
- metadata.gz: d47987f2b355ab4dff7e06443787190dc8567abe30391b3a0a2dde55efb4592c14af94b42f52cf2b7f6e35d9868bb1f2cfbdd23cb9abddb4c1ba34a97cf0dab9
7
- data.tar.gz: 014fa5e68d7fb509f6120cbce6e07f75d6c17c86b8d5dcc93278555c4e11ea27a2a8883ba8193359aeed1ab3d5303d92e30b053cf840aa31c0b4f9b002d7c5d4
6
+ metadata.gz: 9a513e4b8f4efb35cd0438801c2e0dc6896b9f11f911e8cc547a15c22043d28adeb257d47de2d326513095cf813ab88fd9c1aec8c7c7daffef85a8c7238da7f9
7
+ data.tar.gz: 84e46d9e07977de42c79297f0c1decf62957497ed6688bdc65b687fee21b26127c7e553c64d09d5e4dcf405dcc46d468b22e689bfb6e69dfac4c541b9608459f
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  Async is a modern concurrency framework for Ruby. It implements the
11
11
  reactor pattern, providing both non-blocking I/O and timer events.
12
12
  EOF
13
- spec.summary = "Async is an concurrency framework based for Ruby."
13
+ spec.summary = "Async is a concurrency framework for Ruby."
14
14
  spec.homepage = "https://github.com/socketry/async"
15
15
  spec.license = "MIT"
16
16
 
@@ -72,8 +72,7 @@ module Async
72
72
  end
73
73
 
74
74
  item.head = nil
75
- # Don't do this, because it will break enumeration.
76
- # item.tail = nil
75
+ item.tail = nil
77
76
 
78
77
  @size -= 1
79
78
 
@@ -85,8 +84,10 @@ module Async
85
84
 
86
85
  item = @head
87
86
  while item
87
+ # We store the tail pointer so we can remove the current item from the linked list:
88
+ tail = item.tail
88
89
  yield item
89
- item = item.tail
90
+ item = tail
90
91
  end
91
92
  end
92
93
 
@@ -21,5 +21,5 @@
21
21
  # THE SOFTWARE.
22
22
 
23
23
  module Async
24
- VERSION = "1.25.1"
24
+ VERSION = "1.25.2"
25
25
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: async
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.25.1
4
+ version: 1.25.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Williams
@@ -220,7 +220,7 @@ requirements: []
220
220
  rubygems_version: 3.1.2
221
221
  signing_key:
222
222
  specification_version: 4
223
- summary: Async is an concurrency framework based for Ruby.
223
+ summary: Async is a concurrency framework for Ruby.
224
224
  test_files:
225
225
  - spec/async/barrier_spec.rb
226
226
  - spec/async/chainable_async_examples.rb