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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5d54f9ff9eb422db1f4e2ef717d17165d2ea1146771cec0a116a688b042e4a46
4
- data.tar.gz: 8f6e2916ae67ec1702caa6e167f4f6d3067dc611fb798953ceab984e9b1ba9b6
3
+ metadata.gz: c04c3679d1562422a91fc38c90006c891199ae292a2452656bcef8d5f7d2b56b
4
+ data.tar.gz: 9b966859811d80f276405e1d2d7a2550ba978e23a433cf7bbef04b44520c1929
5
5
  SHA512:
6
- metadata.gz: 7011b2b3955f38b618bbc33a05f0f9054e69e340c5a5c643536904f31896e28679951dcd8189373b82f1bfa4985c90f6f5702a34b7f5e1726ae0d3b0449a75b2
7
- data.tar.gz: e3498d4851804bfb770d54bb4a9ff96919bf95562cb35df3a621daf7515f65e54e6c84706d2e7c535d50ae6961a4f7748bb159c4a804b5a6debac39eecea5bca
6
+ metadata.gz: 3db14933d35669507a9fa818a56909f4e52dd6256cf169e1c1f0ce8f7c442314bb323265f8e0c9dcc74ee4b3d367d358abedcc1b36e0924d71c91100ba62b539
7
+ data.tar.gz: 5f495f30d22525a0068cb9b591769f469a61073829a23e1b9b9adf3ffb2e2ea498b854c05cca35cf51a3a1883f04186b86a5b3aca3d9ed698e4af79ecd80f08b
checksums.yaml.gz.sig CHANGED
@@ -1,3 +1,2 @@
1
- �<�۽��(���<WE�<���
2
- {*�$����&���h'8IbuQ۠Xr?���?E.�^�Y���\�S3
3
- �1��U�������C�-l�d X�h�|(��0�_Cx�o'uΉ�I�J7g�����I�̍ڇ�
1
+ =�۰[b�%�5.����0�@M�'|�)�l����˝;3�5�z���չt�u��YGg9(�Jv��+�� ��
2
+ ���A|�T5Ơ�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.release
28
+ token.close
29
29
  end
30
30
  end
31
31
 
@@ -5,6 +5,6 @@
5
5
 
6
6
  module Falcon
7
7
  module Limiter
8
- VERSION = "0.2.0"
8
+ VERSION = "0.4.0"
9
9
  end
10
10
  end
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.2.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.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.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.6
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