multiprotocol_thrift_rack_app 0.1.2 → 0.2.0

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: 35c30a64c3997fd22ed21a97e5fdc81c48055587657e8c366e3ea7ba10a274b9
4
- data.tar.gz: d51987bd983a27176886c4cc53e379a737a6381487eda0e15c641269a0026e5a
3
+ metadata.gz: c6d05a82a598adf3076dd966fe8ab54919ebf370cf0399ebc59ed29f74e6613e
4
+ data.tar.gz: e649f6e88db153717b63986de45ce5298a250dbb7733101dc8cb8564ee9adfe0
5
5
  SHA512:
6
- metadata.gz: a834dce0808da1b7cdc1a76416bb972c8f1199a009c6e5a712fce636f0ed5d1bd90fdcc5013e1962c4f6a86c39970dfc15e52e3477f7f0a832820dd52344a65e
7
- data.tar.gz: b2f42faad34872c3cdd74ba7d5f1cc32541aa2d19b33b0f5b90b5231355c2f1d1c1cfe5b47f95857227e98e4591eea077d44ae5fc499cea3e8fa22f8a09b3055
6
+ metadata.gz: 7b7cca4a6a20af819cc6246b20aad5fc0998b188338ce36c2d735a5fa9ce6b1d07b0dccd85c5003ef03fdb8f0b08e1a0cad9445254476bb32ac3a1cc0e26e775
7
+ data.tar.gz: 25c5b80a1f4350d63b311549618f5d39318e7c9e7de61bd3e9f4c3899219a6256ce893eee45f802444671efb401f999b69dd4918c9e97da46d008601afc82759
data/.gitlab-ci.yml CHANGED
@@ -1,3 +1,7 @@
1
+ stages:
2
+ - test
3
+ - publish
4
+
1
5
  .test_shared: &test_shared
2
6
  before_script:
3
7
  - apk add --update
@@ -6,8 +10,10 @@
6
10
  build-base
7
11
 
8
12
  - gem update --system
9
- - gem install bundler --version 2.0.1
10
- - bundler install --jobs $(nproc) --path vendor/
13
+ - gem install bundler --version $(cat BUNDLER_VERSION)
14
+
15
+ - export BUNDLE_PATH=vendor/
16
+ - bundler install --jobs $(nproc)
11
17
  - bundler update
12
18
 
13
19
  - ruby --version
@@ -52,3 +58,32 @@ test/2.6:
52
58
  cache:
53
59
  paths:
54
60
  - vendor/ruby/2.6.0
61
+
62
+ test/2.7:
63
+ <<: *test_shared
64
+ stage: test
65
+ image: ruby:2.7-alpine
66
+
67
+ cache:
68
+ paths:
69
+ - vendor/ruby/2.7.0
70
+
71
+ publish:
72
+ stage: publish
73
+ image: ruby:2.7-alpine
74
+ only:
75
+ refs:
76
+ - /^v\d+\.\d+\.\d+$/
77
+ script:
78
+ - apk add --update git
79
+
80
+ - export SOURCE_GEM_VERSION=$(cat VERSION)
81
+ - test ${CI_COMMIT_TAG} == v${SOURCE_GEM_VERSION}
82
+
83
+ - export GEM_FILE_NAME="multiprotocol_thrift_rack_app-${CI_COMMIT_TAG}.gem"
84
+ - export GEM_FILE_PATH="pkg/${GEM_FILE_NAME}"
85
+
86
+ - mkdir -p pkg/
87
+
88
+ - gem build --output ${GEM_FILE_PATH}
89
+ - gem push ${GEM_FILE_PATH}
data/.rubocop.yml CHANGED
@@ -14,6 +14,15 @@ Style/TrailingCommaInArrayLiteral:
14
14
  Style/TrailingCommaInHashLiteral:
15
15
  EnforcedStyleForMultiline: comma
16
16
 
17
+ Style/HashEachMethods:
18
+ Enabled: true
19
+
20
+ Style/HashTransformKeys:
21
+ Enabled: true
22
+
23
+ Style/HashTransformValues:
24
+ Enabled: true
25
+
17
26
  Metrics/BlockLength:
18
27
  Exclude:
19
28
  - spec/**/*
data/BUNDLER_VERSION ADDED
@@ -0,0 +1 @@
1
+ 2.1.4
data/README.md CHANGED
@@ -7,7 +7,7 @@ This library allows you to create a Thrift RPC server from a Rack application, w
7
7
  Add this line to your application's Gemfile:
8
8
 
9
9
  ```ruby
10
- gem 'multiprotocol_thrift_rack_app
10
+ gem 'multiprotocol_thrift_rack_app'
11
11
  ```
12
12
 
13
13
  And then execute:
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.2
1
+ 0.2.0
@@ -20,6 +20,13 @@ class MultiprotocolThriftRackApp
20
20
 
21
21
  def call(env)
22
22
  request = Rack::Request.new(env)
23
+ respone = build_response(request)
24
+ respone.finish
25
+ end
26
+
27
+ private
28
+
29
+ def build_response(request)
23
30
  return failure_response('Not POST method') unless request.post?
24
31
 
25
32
  protocol_factory, content_type = find_protocol_factory(request)
@@ -28,8 +35,6 @@ class MultiprotocolThriftRackApp
28
35
  successful_response(request.body, protocol_factory, content_type)
29
36
  end
30
37
 
31
- private
32
-
33
38
  CONTENT_TYPE_ENV = 'CONTENT_TYPE'
34
39
 
35
40
  def default_logger
@@ -22,14 +22,14 @@ Gem::Specification.new do |spec|
22
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
23
  spec.require_paths = ['lib']
24
24
 
25
- spec.add_dependency 'rack'
25
+ spec.add_dependency 'rack', '~> 2.0'
26
26
  spec.add_dependency 'thrift', '~> 0.9'
27
27
 
28
- spec.add_development_dependency 'bundler', '~> 2.0'
29
- spec.add_development_dependency 'rake', '~> 10.0'
28
+ spec.add_development_dependency 'bundler', File.read('BUNDLER_VERSION').strip
29
+ spec.add_development_dependency 'rake', '~> 13.0'
30
30
  spec.add_development_dependency 'reek', '~> 5.4'
31
31
  spec.add_development_dependency 'rspec', '~> 3.0'
32
- spec.add_development_dependency 'rubocop', '~> 0.68.1'
33
- spec.add_development_dependency 'rubocop-performance', '~> 1.1.0'
34
- spec.add_development_dependency 'rubocop-rspec', '~> 1.32.0'
32
+ spec.add_development_dependency 'rubocop', '~> 0.80.1'
33
+ spec.add_development_dependency 'rubocop-performance', '~> 1.5.2'
34
+ spec.add_development_dependency 'rubocop-rspec', '~> 1.38.1'
35
35
  end
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: multiprotocol_thrift_rack_app
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dmitrij Fedorenko
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-05-03 00:00:00.000000000 Z
11
+ date: 2020-03-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rack
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: '2.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: '2.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: thrift
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -42,30 +42,30 @@ dependencies:
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - '='
46
46
  - !ruby/object:Gem::Version
47
- version: '2.0'
47
+ version: 2.1.4
48
48
  type: :development
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: '2.0'
54
+ version: 2.1.4
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '10.0'
61
+ version: '13.0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '10.0'
68
+ version: '13.0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: reek
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -100,42 +100,42 @@ dependencies:
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: 0.68.1
103
+ version: 0.80.1
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 0.68.1
110
+ version: 0.80.1
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: rubocop-performance
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: 1.1.0
117
+ version: 1.5.2
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: 1.1.0
124
+ version: 1.5.2
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: rubocop-rspec
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: 1.32.0
131
+ version: 1.38.1
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: 1.32.0
138
+ version: 1.38.1
139
139
  description: Ruby HTTP Thrif server with support muptiple protocols (JSON, Binary
140
140
  and etc.)
141
141
  email:
@@ -150,6 +150,7 @@ files:
150
150
  - ".rspec"
151
151
  - ".rubocop.yml"
152
152
  - ".travis.yml"
153
+ - BUNDLER_VERSION
153
154
  - Gemfile
154
155
  - LICENSE.txt
155
156
  - README.md
@@ -178,7 +179,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
178
179
  - !ruby/object:Gem::Version
179
180
  version: '0'
180
181
  requirements: []
181
- rubygems_version: 3.0.3
182
+ rubygems_version: 3.1.2
182
183
  signing_key:
183
184
  specification_version: 4
184
185
  summary: Multiprotocol Thrift Rack app server