io-event 1.21.1 → 1.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/lib/io/event/timers.rb +4 -0
- data/lib/io/event/version.rb +1 -1
- data/readme.md +4 -4
- data/releases.md +4 -0
- data.tar.gz.sig +0 -0
- metadata +1 -1
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9f41abe7e66f2a71d150116a4da4196a07fd247140c64c2850e130cf430da1f3
|
|
4
|
+
data.tar.gz: 1722ecdf3d215d95fb8019686ae6c00790529a14df9513666867719a2841262d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a7bd80686939ad0e4df60f7113ea0825de36e82eace8a734f19ea6fc3134b1f9853ba9c797c8d7275839d8ea916f0b6f7d8f7b3587ad1477ce81b1f96d1ff0f0
|
|
7
|
+
data.tar.gz: 2add34ba036026c83dc395bf8b727b999c3a6df5c2f387da71ce26110d8ed1fe34d8c6ad04cb328aa3419c6b3ec64e71349f06a570f0d7d79bc4dd7127d8b407
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
data/lib/io/event/timers.rb
CHANGED
|
@@ -97,6 +97,10 @@ class IO
|
|
|
97
97
|
# @parameter time [Float] The time at which the block should be called, relative to {#now}.
|
|
98
98
|
# @parameter block [Proc] The block to call.
|
|
99
99
|
def schedule(time, block)
|
|
100
|
+
unless time.finite?
|
|
101
|
+
raise ArgumentError, "Timer time must be finite: #{time.inspect}"
|
|
102
|
+
end
|
|
103
|
+
|
|
100
104
|
handle = Handle.new(time, block)
|
|
101
105
|
|
|
102
106
|
@scheduled << handle
|
data/lib/io/event/version.rb
CHANGED
data/readme.md
CHANGED
|
@@ -18,6 +18,10 @@ Please see the [project documentation](https://socketry.github.io/io-event/) for
|
|
|
18
18
|
|
|
19
19
|
Please see the [project releases](https://socketry.github.io/io-event/releases/index) for all releases.
|
|
20
20
|
|
|
21
|
+
### v1.22.0
|
|
22
|
+
|
|
23
|
+
- Reject non-finite timer times (`NaN` and positive or negative infinity), preventing invalid heap ordering and permanently retained timer handles.
|
|
24
|
+
|
|
21
25
|
### v1.21.1
|
|
22
26
|
|
|
23
27
|
- Fix the `URing` completion free-list empty check so its sole entry can be reused instead of unnecessarily allocating a new completion.
|
|
@@ -56,10 +60,6 @@ Please see the [project releases](https://socketry.github.io/io-event/releases/i
|
|
|
56
60
|
|
|
57
61
|
- **Fixed**: Avoid entering a blocking native selector wait when an interrupt is already pending for the current thread.
|
|
58
62
|
|
|
59
|
-
### v1.17.0
|
|
60
|
-
|
|
61
|
-
- Report inherited selector objects as closed after fork, and avoid closing descriptors they no longer own.
|
|
62
|
-
|
|
63
63
|
## Contributing
|
|
64
64
|
|
|
65
65
|
We welcome contributions to this project.
|
data/releases.md
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# Releases
|
|
2
2
|
|
|
3
|
+
## v1.22.0
|
|
4
|
+
|
|
5
|
+
- Reject non-finite timer times (`NaN` and positive or negative infinity), preventing invalid heap ordering and permanently retained timer handles.
|
|
6
|
+
|
|
3
7
|
## v1.21.1
|
|
4
8
|
|
|
5
9
|
- Fix the `URing` completion free-list empty check so its sole entry can be reused instead of unnecessarily allocating a new completion.
|
data.tar.gz.sig
CHANGED
|
Binary file
|
metadata
CHANGED
metadata.gz.sig
CHANGED
|
Binary file
|