falcon 0.34.4 → 0.34.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +2 -0
- data/examples/memory/allocations.rb +38 -0
- data/examples/memory/config.ru +13 -0
- data/examples/sinatra/Gemfile.lock +1 -1
- data/falcon.gemspec +1 -1
- data/lib/falcon/version.rb +1 -1
- metadata +7 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2f640e30a68a5dd3b923da93eafd29efde45370c6bad1c3cf92d0a43e11dd016
|
4
|
+
data.tar.gz: 23cc00d9299c5d0ae67f9fa12746fc263c003f300b9d598048b46faf6064476c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 97e38f0048e75ca73ceb06c18a5bc80d66f8d9624216cd76a7fe7fac65444758f17dbffb28e10581d8c7b90a9e0c12ad6a17538efa4d994904699c135868c191
|
7
|
+
data.tar.gz: 0da2a193a2f63ea1f48b7d328ae51b5745777fb688799347caf4697dfea233b6c5a09fa42207464d326c4bf052336eb932ac051d1016c49fa64efbccf4e794a4
|
data/README.md
CHANGED
@@ -8,6 +8,7 @@ Falcon is a multi-process, multi-fiber rack-compatible HTTP server built on top
|
|
8
8
|
[![Code Climate](https://codeclimate.com/github/socketry/falcon.svg)](https://codeclimate.com/github/socketry/falcon)
|
9
9
|
[![Coverage Status](https://coveralls.io/repos/socketry/falcon/badge.svg)](https://coveralls.io/r/socketry/falcon)
|
10
10
|
[![Gitter](https://badges.gitter.im/join.svg)](https://gitter.im/socketry/falcon)
|
11
|
+
[![Open Source Helpers](https://www.codetriage.com/socketry/falcon/badges/users.svg)](https://www.codetriage.com/socketry/falcon)
|
11
12
|
|
12
13
|
[async]: https://github.com/socketry/async
|
13
14
|
[async-io]: https://github.com/socketry/async-io
|
@@ -309,6 +310,7 @@ We take the security of our systems seriously, and we value input from the secur
|
|
309
310
|
Websites below are listed in alphabetical order.
|
310
311
|
|
311
312
|
- iCook - [https://icook.tw](https://icook.tw)
|
313
|
+
- RubyAPI - [https://rubyapi.org](https://rubyapi.org)
|
312
314
|
|
313
315
|
You're welcome to file a PR if you want to add your sites here.
|
314
316
|
|
@@ -0,0 +1,38 @@
|
|
1
|
+
|
2
|
+
class Allocations
|
3
|
+
def initialize(app)
|
4
|
+
@app = app
|
5
|
+
end
|
6
|
+
|
7
|
+
def allocations
|
8
|
+
counts = Hash.new{|h,k| h[k] = 0}
|
9
|
+
|
10
|
+
ObjectSpace.each_object do |object|
|
11
|
+
counts[object.class] += 1
|
12
|
+
end
|
13
|
+
|
14
|
+
return counts
|
15
|
+
end
|
16
|
+
|
17
|
+
def print_allocations(minimum = 100)
|
18
|
+
buffer = StringIO.new
|
19
|
+
|
20
|
+
total = allocations.values.sum
|
21
|
+
|
22
|
+
allocations.select{|k,v| v >= minimum}.sort_by{|k,v| -v}.each do |key, value|
|
23
|
+
buffer.puts "#{key}: #{value} allocations"
|
24
|
+
end
|
25
|
+
|
26
|
+
buffer.puts "** Total: #{total} allocations."
|
27
|
+
|
28
|
+
return buffer.string
|
29
|
+
end
|
30
|
+
|
31
|
+
def call(env)
|
32
|
+
if env["PATH_INFO"] == "/allocations"
|
33
|
+
return [200, [], [print_allocations]]
|
34
|
+
else
|
35
|
+
return @app.call(env)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
|
2
|
+
require_relative 'allocations'
|
3
|
+
|
4
|
+
use Allocations
|
5
|
+
|
6
|
+
run lambda{|env| [404, [], []]}
|
7
|
+
|
8
|
+
# % curl --insecure https://localhost:9292/allocations
|
9
|
+
# String: 32179 allocations
|
10
|
+
# Array: 10228 allocations
|
11
|
+
# Hash: 1299 allocations
|
12
|
+
# Class: 1118 allocations
|
13
|
+
# ** Total: 50162 allocations.
|
data/falcon.gemspec
CHANGED
@@ -21,7 +21,7 @@ Gem::Specification.new do |spec|
|
|
21
21
|
|
22
22
|
spec.add_dependency "async", "~> 1.13"
|
23
23
|
spec.add_dependency "async-io", "~> 1.22"
|
24
|
-
spec.add_dependency "async-http", "~> 0.
|
24
|
+
spec.add_dependency "async-http", "~> 0.50.0"
|
25
25
|
spec.add_dependency "async-container", "~> 0.14.0"
|
26
26
|
|
27
27
|
spec.add_dependency "rack", ">= 1.0"
|
data/lib/falcon/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: falcon
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.34.
|
4
|
+
version: 0.34.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Samuel Williams
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-01-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: async
|
@@ -44,14 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.
|
47
|
+
version: 0.50.0
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.
|
54
|
+
version: 0.50.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: async-container
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -248,6 +248,8 @@ files:
|
|
248
248
|
- examples/hello/config.ru
|
249
249
|
- examples/hello/falcon.rb
|
250
250
|
- examples/internet/config.ru
|
251
|
+
- examples/memory/allocations.rb
|
252
|
+
- examples/memory/config.ru
|
251
253
|
- examples/push/client.rb
|
252
254
|
- examples/push/config.ru
|
253
255
|
- examples/push/index.html
|
@@ -317,7 +319,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
317
319
|
- !ruby/object:Gem::Version
|
318
320
|
version: '0'
|
319
321
|
requirements: []
|
320
|
-
rubygems_version: 3.
|
322
|
+
rubygems_version: 3.1.2
|
321
323
|
signing_key:
|
322
324
|
specification_version: 4
|
323
325
|
summary: A fast, asynchronous, rack-compatible web server.
|