groonga-client-cli 1.0.1 → 1.0.2

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
  SHA1:
3
- metadata.gz: 1f6b53e1dfe99a482a13537a085c3401281f453b
4
- data.tar.gz: 0c86154bfd649729b9626dbf79d39ecd397b36dc
3
+ metadata.gz: 1db474cd35e6959f4ed20f3fc7e2a4c507ce6d84
4
+ data.tar.gz: 547eae2da424c2a1ee1cb6aa33609cf461006c8f
5
5
  SHA512:
6
- metadata.gz: 55d2867d94b9fe7c5574bc9267cc6be955c50e9bf8d5f7862902078663eeb4964a0ae08095c647a4c52f81a2aa5718f6c94dbff54f28f730f0c7b6356ef835ba
7
- data.tar.gz: 1198a6e963cc5ae90e12abd663bacdae46ef80c45913d4195b14919bfc18625f833ab704eb1ed73f498cb8c692ced5c011be3d96e6938d33e3ee3b80104c7cfe
6
+ metadata.gz: eaa9f3cbf276885a41a32ddc7a5f84b5162d21560332d6d9af25c7addaaae45f5a0c0d3f57136720762689416d124e62950ebf529cd57ad80fa48aa5e1af5023
7
+ data.tar.gz: 2a4d4278ccdbea02affc3b6f1b5fc8284b0b5a6222f441784cf5406d9b4add62c74044959ffa26c3e598f9e33069744493717d98f629c27457627feac35acd00
data/doc/text/news.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # NEWS
2
2
 
3
+ ## 1.0.2 - 2016-03-16
4
+
5
+ ### Improvements
6
+
7
+ * Accepted file that doesn't have newline at the end.
8
+ * Added `--generate-request-id` option that sets automatically
9
+ generated request ID to each command.
10
+
3
11
  ## 1.0.1 - 2015-06-10
4
12
 
5
13
  ### Improvements
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2015 Kouhei Sutou <kou@clear-code.com>
1
+ # Copyright (C) 2015-2016 Kouhei Sutou <kou@clear-code.com>
2
2
  #
3
3
  # This library is free software; you can redistribute it and/or
4
4
  # modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,7 @@
17
17
  require "ostruct"
18
18
  require "optparse"
19
19
  require "json"
20
+ require "securerandom"
20
21
 
21
22
  require "groonga/command/parser"
22
23
 
@@ -35,6 +36,7 @@ module GroongaClientCLI
35
36
 
36
37
  @runner_options = {
37
38
  :split_load_chunk_size => 10000,
39
+ :generate_request_id => false,
38
40
  }
39
41
  end
40
42
 
@@ -55,12 +57,18 @@ module GroongaClientCLI
55
57
  else
56
58
  command_file_paths.each do |command_file_path|
57
59
  File.open(command_file_path) do |command_file|
60
+ last_line = nil
58
61
  command_file.each_line do |line|
62
+ last_line = line
59
63
  runner << line
60
64
  end
65
+ if last_line and !last_line.end_with?("\n")
66
+ runner << "\n"
67
+ end
61
68
  end
62
69
  end
63
70
  end
71
+ runner.finish
64
72
 
65
73
  true
66
74
  end
@@ -110,6 +118,12 @@ module GroongaClientCLI
110
118
  @runner_options[:split_load_chunk_size] = size
111
119
  end
112
120
 
121
+ parser.on("--[no-]generate-request-id",
122
+ "Add auto generated request ID to all commands.",
123
+ "(#{@runner_options[:generate_request_id]})") do |boolean|
124
+ @runner_options[:generate_request_id] = boolean
125
+ end
126
+
113
127
  command_file_paths = parser.parse(argv)
114
128
 
115
129
  @port ||= default_port(@protocol)
@@ -130,6 +144,7 @@ module GroongaClientCLI
130
144
  def initialize(client, options={})
131
145
  @client = client
132
146
  @split_load_chunk_size = options[:split_load_chunk_size] || 10000
147
+ @generate_request_id = options[:generate_request_id]
133
148
  @load_values = []
134
149
  @parser = create_command_parser
135
150
  end
@@ -138,6 +153,10 @@ module GroongaClientCLI
138
153
  @parser << line
139
154
  end
140
155
 
156
+ def finish
157
+ @parser.finish
158
+ end
159
+
141
160
  private
142
161
  def create_command_parser
143
162
  parser = Groonga::Command::Parser.new
@@ -181,6 +200,7 @@ module GroongaClientCLI
181
200
  end
182
201
 
183
202
  def run_command(command)
203
+ command[:request_id] ||= SecureRandom.uuid if @generate_request_id
184
204
  response = @client.execute(command)
185
205
  case command.output_type
186
206
  when :json
@@ -15,5 +15,5 @@
15
15
  # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
16
 
17
17
  module GroongaClientCLI
18
- VERSION = "1.0.1"
18
+ VERSION = "1.0.2"
19
19
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: groonga-client-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kouhei Sutou
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-06-10 00:00:00.000000000 Z
11
+ date: 2016-03-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: groonga-client
@@ -133,7 +133,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
133
133
  version: '0'
134
134
  requirements: []
135
135
  rubyforge_project:
136
- rubygems_version: 2.2.2
136
+ rubygems_version: 2.5.1
137
137
  signing_key:
138
138
  specification_version: 4
139
139
  summary: Groonga-client-cli provides command line Groonga clients.