chupa-text 1.2.4 → 1.2.5

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: 31b9d60aabd1c46f98936b2d0b9f78f48d5c868f4db9280f56b4b1d63501cfd7
4
- data.tar.gz: dfc84f009246bdb3ce6f48183febb5911340bddb2e6308d412294955b2b97586
3
+ metadata.gz: 6eed021988da255a580fd8749e9f023f5a661c7950baff1403918ea153d48073
4
+ data.tar.gz: 0aa05754add5afd4b2527ed7b2bc90f8061b558ee0910d74b32f19658c3d3f2e
5
5
  SHA512:
6
- metadata.gz: 688cc085c6cf205261b06283268a25d744440943fb9f972661d728d37fd24bbbc6caa9a0faabf9fa11e349a74d02dfec503dff8b4a0a32b82f2f27fbc7481b99
7
- data.tar.gz: 84bb203f19333a733ebce2569e21e3284d140b0055202bae77605a052222e47580c8e7e4b1f5d7c328d56ac4965db2b9a202aff9e22ed413e3a871a40cea4f37
6
+ metadata.gz: 826667ab8c067a9a09c2b1801bc90a76869e43c345d262efd29a564da80a37c67f6ae607645c91487fe264fae4f872dec7f7ac7324ba0ed755f0a7759686e992
7
+ data.tar.gz: 2696c77f826dc04c27da73b97a640f723afd2007e2310ce35a2d67d27a28c924afeb3dbc3ceb298f7e9befafe2619c782ad300ce9fb086a49466b664d27b9d80
data/doc/text/news.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # News
2
2
 
3
+ ## 1.2.5: 2019-05-20
4
+
5
+ ### Improvements
6
+
7
+ * `http-server`: Added support for changing the default URL at run-time.
8
+
3
9
  ## 1.2.4: 2019-03-29
4
10
 
5
11
  ### Fixes
@@ -38,16 +38,13 @@ module ChupaText
38
38
 
39
39
  def initialize(options)
40
40
  super
41
- @url = @options[:url] ||
42
- self.class.default_url ||
43
- ENV["CHUPA_TEXT_HTTP_SERVER_URL"]
41
+ @url = @options[:url]
44
42
  @url = URI(@url) if @url
45
43
  end
46
44
 
47
45
  def target?(data)
48
- return false unless @url
49
46
  return false if data.text_plain?
50
- true
47
+ @url or default_url
51
48
  end
52
49
 
53
50
  def target_score(data)
@@ -59,8 +56,9 @@ module ChupaText
59
56
  end
60
57
 
61
58
  def decompose(data, &block)
62
- http = Net::HTTP.new(@url.host, @url.port)
63
- http.use_ssl = true if @url.is_a?(URI::HTTPS)
59
+ url = @url || default_url
60
+ http = Net::HTTP.new(url.host, url.port)
61
+ http.use_ssl = true if url.is_a?(URI::HTTPS)
64
62
  if data.timeout.is_a?(Numeric)
65
63
  http.open_timeout = data.timeout * 1.5
66
64
  http.read_timeout = data.timeout * 1.5
@@ -70,13 +68,13 @@ module ChupaText
70
68
  end
71
69
  begin
72
70
  http.start do
73
- process_request(http, data, &block)
71
+ process_request(url, http, data, &block)
74
72
  end
75
73
  rescue SystemCallError => error
76
74
  error do
77
75
  message = "#{log_tag}[connection] "
78
76
  message << "Failed to process data in server: "
79
- message << "#{@url}: "
77
+ message << "#{url}: "
80
78
  message << "#{error.class}: #{error.message}\n"
81
79
  message << error.backtrace.join("\n")
82
80
  message
@@ -85,7 +83,7 @@ module ChupaText
85
83
  error do
86
84
  message = "#{log_tag}[timeout] "
87
85
  message << "Failed to process data in server: "
88
- message << "#{@url}: "
86
+ message << "#{url}: "
89
87
  message << "#{error.class}: #{error.message}\n"
90
88
  message << error.backtrace.join("\n")
91
89
  message
@@ -94,8 +92,14 @@ module ChupaText
94
92
  end
95
93
 
96
94
  private
97
- def process_request(http, data)
98
- request = Net::HTTP::Post.new(@url)
95
+ def default_url
96
+ url = self.class.default_url || ENV["CHUPA_TEXT_HTTP_SERVER_URL"]
97
+ return nil if url.nil?
98
+ URI(url)
99
+ end
100
+
101
+ def process_request(url, http, data)
102
+ request = Net::HTTP::Post.new(url)
99
103
  request["transfer-encoding"] = "chunked"
100
104
  data.open do |input|
101
105
  request.set_form(build_parameters(data, input),
@@ -115,7 +119,7 @@ module ChupaText
115
119
  else
116
120
  error do
117
121
  message = "#{log_tag} Failed to process data in server: "
118
- message << "#{@url}: "
122
+ message << "#{url}: "
119
123
  message << "#{response.code}: #{response.message.strip}\n"
120
124
  case response.content_type
121
125
  when "application/json"
@@ -15,5 +15,5 @@
15
15
  # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
16
 
17
17
  module ChupaText
18
- VERSION = "1.2.4"
18
+ VERSION = "1.2.5"
19
19
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chupa-text
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.4
4
+ version: 1.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kouhei Sutou
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-03-29 00:00:00.000000000 Z
11
+ date: 2019-05-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: archive-zip
@@ -126,8 +126,8 @@ description: ''
126
126
  email:
127
127
  - kou@clear-code.com
128
128
  executables:
129
- - chupa-text
130
129
  - chupa-text-generate-decomposer
130
+ - chupa-text
131
131
  extensions: []
132
132
  extra_rdoc_files: []
133
133
  files: