multiprotocol_thrift_rack_app 0.1.2 → 0.2.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: 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