falcon-limiter 0.2.0 → 0.4.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 +2 -3
- data/lib/falcon/limiter/long_task.rb +6 -0
- data/lib/falcon/limiter/socket.rb +2 -2
- data/lib/falcon/limiter/version.rb +1 -1
- data/readme.md +8 -0
- data/releases.md +8 -0
- data.tar.gz.sig +0 -0
- metadata +4 -4
- 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: c04c3679d1562422a91fc38c90006c891199ae292a2452656bcef8d5f7d2b56b
|
|
4
|
+
data.tar.gz: 9b966859811d80f276405e1d2d7a2550ba978e23a433cf7bbef04b44520c1929
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3db14933d35669507a9fa818a56909f4e52dd6256cf169e1c1f0ce8f7c442314bb323265f8e0c9dcc74ee4b3d367d358abedcc1b36e0924d71c91100ba62b539
|
|
7
|
+
data.tar.gz: 5f495f30d22525a0068cb9b591769f469a61073829a23e1b9b9adf3ffb2e2ea498b854c05cca35cf51a3a1883f04186b86a5b3aca3d9ed698e4af79ecd80f08b
|
checksums.yaml.gz.sig
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
�1��U�������C�-l�dX�h�|(��0�_Cx�o'uΉ�I�J7g�����I�̍ڇ�
|
|
1
|
+
=�۰[b�%�5.����0�@M�'|�)�l����˝;3�5�z���չt�u��YGg9(�Jv��+�� ��
|
|
2
|
+
���A|�T�5Ơ�n��1_��Z�χQͤ �Z�
|
|
@@ -77,6 +77,12 @@ module Falcon
|
|
|
77
77
|
@token.acquired?
|
|
78
78
|
end
|
|
79
79
|
|
|
80
|
+
# Check if the long task is waiting to acquire the long task token.
|
|
81
|
+
# @returns [Boolean] If the long task has been scheduled but not yet acquired.
|
|
82
|
+
def pending?
|
|
83
|
+
@delayed_start_task != nil
|
|
84
|
+
end
|
|
85
|
+
|
|
80
86
|
# Start the long task, optionally with a delay to avoid overhead for short operations
|
|
81
87
|
def start(delay: @start_delay)
|
|
82
88
|
# If already started, nothing to do:
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
# Released under the MIT License.
|
|
4
|
-
# Copyright, 2025, by Samuel Williams.
|
|
4
|
+
# Copyright, 2025-2026, by Samuel Williams.
|
|
5
5
|
|
|
6
6
|
module Falcon
|
|
7
7
|
module Limiter
|
|
@@ -25,7 +25,7 @@ module Falcon
|
|
|
25
25
|
ensure
|
|
26
26
|
if token = @token
|
|
27
27
|
@token = nil
|
|
28
|
-
token.
|
|
28
|
+
token.close
|
|
29
29
|
end
|
|
30
30
|
end
|
|
31
31
|
|
data/readme.md
CHANGED
|
@@ -26,6 +26,14 @@ Please see the [project documentation](https://socketry.github.io/falcon-limiter
|
|
|
26
26
|
|
|
27
27
|
Please see the [project releases](https://socketry.github.io/falcon-limiter/releases/index) for all releases.
|
|
28
28
|
|
|
29
|
+
### v0.4.0
|
|
30
|
+
|
|
31
|
+
- Add `Falcon::Limiter::LongTask#pending?` for detecting delayed long tasks which have not acquired yet.
|
|
32
|
+
|
|
33
|
+
### v0.3.0
|
|
34
|
+
|
|
35
|
+
- Use `Async::Limiter::Token#close` when closing sockets so cached tokens cannot re-acquire after socket close.
|
|
36
|
+
|
|
29
37
|
### v0.2.0
|
|
30
38
|
|
|
31
39
|
- Use `async-limiter` v2.2 utilization metrics for connection and long task limiter telemetry.
|
data/releases.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Releases
|
|
2
2
|
|
|
3
|
+
## v0.4.0
|
|
4
|
+
|
|
5
|
+
- Add `Falcon::Limiter::LongTask#pending?` for detecting delayed long tasks which have not acquired yet.
|
|
6
|
+
|
|
7
|
+
## v0.3.0
|
|
8
|
+
|
|
9
|
+
- Use `Async::Limiter::Token#close` when closing sockets so cached tokens cannot re-acquire after socket close.
|
|
10
|
+
|
|
3
11
|
## v0.2.0
|
|
4
12
|
|
|
5
13
|
- Use `async-limiter` v2.2 utilization metrics for connection and long task limiter telemetry.
|
data.tar.gz.sig
CHANGED
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: falcon-limiter
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.4.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Samuel Williams
|
|
@@ -47,14 +47,14 @@ dependencies:
|
|
|
47
47
|
requirements:
|
|
48
48
|
- - "~>"
|
|
49
49
|
- !ruby/object:Gem::Version
|
|
50
|
-
version: '2.
|
|
50
|
+
version: '2.3'
|
|
51
51
|
type: :runtime
|
|
52
52
|
prerelease: false
|
|
53
53
|
version_requirements: !ruby/object:Gem::Requirement
|
|
54
54
|
requirements:
|
|
55
55
|
- - "~>"
|
|
56
56
|
- !ruby/object:Gem::Version
|
|
57
|
-
version: '2.
|
|
57
|
+
version: '2.3'
|
|
58
58
|
- !ruby/object:Gem::Dependency
|
|
59
59
|
name: async-utilization
|
|
60
60
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -107,7 +107,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
107
107
|
- !ruby/object:Gem::Version
|
|
108
108
|
version: '0'
|
|
109
109
|
requirements: []
|
|
110
|
-
rubygems_version: 4.0.
|
|
110
|
+
rubygems_version: 4.0.10
|
|
111
111
|
specification_version: 4
|
|
112
112
|
summary: Advanced concurrency control and resource limiting for Falcon web server.
|
|
113
113
|
test_files: []
|
metadata.gz.sig
CHANGED
|
Binary file
|