opener-tree-tagger 3.0.3 → 3.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,15 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: cab721e2680cda7db23fbdfbd0c9906b9bcbe9c9
4
- data.tar.gz: 1a588fc17600dc745f7d61b0e04db5bf69889c09
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ YTc4NTA2YmQzYzVlZTZlMjhmNzk0NmFmZjI0NzBmZTU1MzU4YzNkMQ==
5
+ data.tar.gz: !binary |-
6
+ MDc0OTUzZTI3YjVmYjZlMjA1YzNjYTI2NjY0ZGJkMDVjY2YwOTdmZg==
5
7
  SHA512:
6
- metadata.gz: 2ab590a575f57a151c4c44107364146da81a85bf22efd833fa41573d245c542a3a233815454c5ad3f6333bbb9656586f5ea696cd0b3a2f2191dbe3c4453960f2
7
- data.tar.gz: 0fea7b465b5a9198974bbd1ad73f90ec44d2d570f29087b2ed5c06ab87dd798e93ef113cf15472064c04b9f56149ba077320778650b11e53de6d1f1a52b485e6
8
+ metadata.gz: !binary |-
9
+ NGNhNzhmOThhZWQ5N2FmNGU3YzQ1MzBlYTM4YTU0MDNjZGY0YTQ0NzZmMzZi
10
+ ZDdkN2I0NDFjODRjZjM3MTVmMTc4NGJmZTJiOTJhODIzMDI3MTFiODRhYTll
11
+ OTA5ZGE5M2NjMTBiMjc1NTkwNmIwOGIxMmE1MzU3YTRiMmU5NDE=
12
+ data.tar.gz: !binary |-
13
+ Mjc2M2NkMWZjNTg2ODZkYzA5MjljNmFlMjk4ZTVkMDkxMzFiMjhmNjE1M2Rk
14
+ ZGFhODVmYWVhZjY1ZDc4ZmU0YWY0NDAzMGQ0NTNjZDMwOTdhYzQ4MGNkNTQ4
15
+ MTgwOTNlYjQ4ZDY3NWNjZTAxN2Y3MzEwNDEzNWU1OWMzZDFjZGM=
data/README.md CHANGED
@@ -101,7 +101,7 @@ The component is a fat wrapper around the actual language technology core. You c
101
101
  Where to go from here
102
102
  ---------------------
103
103
 
104
- * [Check the project website](http://opener-project.github.io)
104
+ * [Check the project websitere](http://opener-project.github.io)
105
105
  * [Checkout the webservice](http://opener.olery.com/tree-tagger)
106
106
 
107
107
  Report problem/Get help
@@ -27,6 +27,15 @@ PRE_INSTALL_REQUIREMENTS = File.expand_path(
27
27
  __FILE__
28
28
  )
29
29
 
30
+ # Path to the vendor directory for C code.
31
+ VENDOR_DIRECTORY = File.expand_path('../../../core/vendor', __FILE__)
32
+
33
+ # Path to the directory to install vendored C code into.
34
+ VENDOR_BUILD_DIRECTORY = File.expand_path(
35
+ '../../../core/vendor/build',
36
+ __FILE__
37
+ )
38
+
30
39
  ##
31
40
  # Verifies the requirements to install thi Gem.
32
41
  #
@@ -36,3 +45,21 @@ def verify_requirements
36
45
  require_executable('pip')
37
46
  require_version('pip', pip_version, '1.3.1')
38
47
  end
48
+
49
+ def install_tree_tagger
50
+ #return if ENV['TREE_TAGGER_PATH']
51
+
52
+ build = VENDOR_BUILD_DIRECTORY
53
+ cd build do
54
+ sh "curl -o tree-tagger-linux-3.2.tar.gz http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/data/tree-tagger-linux-3.2.tar.gz"
55
+ sh "curl -o tagger-scripts.tar.gz http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/data/tagger-scripts.tar.gz"
56
+ sh "curl -o install-tagger.sh http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/data/install-tagger.sh"
57
+ sh "curl -o dutch-par-linux-3.2-utf8.bin.gz http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/data/dutch-par-linux-3.2-utf8.bin.gz"
58
+ sh "curl -o french-par-linux-3.2-utf8.bin.gz http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/data/french-par-linux-3.2-utf8.bin.gz"
59
+ sh "curl -o german-par-linux-3.2-utf8.bin.gz http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/data/german-par-linux-3.2-utf8.bin.gz"
60
+ sh "curl -o italian-par-linux-3.2-utf8.bin.gz http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/data/italian-par-linux-3.2-utf8.bin.gz"
61
+ sh "curl -o spanish-par-linux-3.2-utf8.bin.gz http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/data/spanish-par-linux-3.2-utf8.bin.gz"
62
+ sh "curl -o english-par-linux-3.2.bin.gz http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/data/english-par-linux-3.2.bin.gz"
63
+ sh "sh install-tagger.sh"
64
+ end
65
+ end
@@ -1,10 +1,8 @@
1
1
  require 'open3'
2
2
  require 'optparse'
3
- require 'nokogiri'
4
3
 
5
4
  require_relative 'tree_tagger/version'
6
5
  require_relative 'tree_tagger/cli'
7
- require_relative 'tree_tagger/error_layer'
8
6
 
9
7
  module Opener
10
8
  class TreeTagger
@@ -31,13 +29,15 @@ module Opener
31
29
  end
32
30
 
33
31
  def run(input)
34
- begin
35
- stdout, stderr, process = capture(input)
36
- raise stderr unless process.success?
37
- return stdout
38
- rescue Exception => error
39
- return ErrorLayer.new(input, error.message, self.class).add
40
- end
32
+ stdout, stderr, process = capture(input)
33
+
34
+ if process.success?
35
+ STDERR.puts(stderr) unless stderr.empty?
36
+ else
37
+ abort stderr
38
+ end
39
+
40
+ return stdout, stderr, process
41
41
  end
42
42
 
43
43
  def capture(input)
@@ -45,11 +45,19 @@ module Opener
45
45
  end
46
46
 
47
47
  def command
48
- return "#{adjust_python_path} python -E -OO #{kernel} #{args.join(' ')}"
48
+ c = "#{adjust_python_path} #{prepend_tree_tagger_path} python -E -OO #{kernel} #{args.join(' ')}"
49
+ puts c
50
+ c
49
51
  end
50
52
 
51
53
  protected
52
54
 
55
+ def prepend_tree_tagger_path
56
+ #unless ENV['TREE_TAGGER_PATH']
57
+ path = File.expand_path('../../../core/vendor/build', __FILE__)
58
+ return "TREE_TAGGER_PATH=#{path}"
59
+ end
60
+
53
61
  ##
54
62
  # @return [String]
55
63
  #
@@ -1,5 +1,5 @@
1
1
  module Opener
2
2
  class TreeTagger
3
- VERSION = "3.0.3"
3
+ VERSION = "3.2.0"
4
4
  end
5
5
  end
@@ -30,7 +30,6 @@ Gem::Specification.new do |gem|
30
30
  gem.add_dependency 'httpclient'
31
31
  gem.add_dependency 'puma'
32
32
  gem.add_dependency 'opener-webservice'
33
- gem.add_dependency 'nokogiri'
34
33
 
35
34
  gem.add_development_dependency 'rspec'
36
35
  gem.add_development_dependency 'cucumber'
metadata CHANGED
@@ -1,157 +1,143 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: opener-tree-tagger
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.3
4
+ version: 3.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - rubenIzquierdo
8
8
  - sparkboxx
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-06-12 00:00:00.000000000 Z
12
+ date: 2014-05-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: opener-daemons
16
- version_requirements: !ruby/object:Gem::Requirement
17
- requirements:
18
- - - '>='
19
- - !ruby/object:Gem::Version
20
- version: '0'
21
16
  requirement: !ruby/object:Gem::Requirement
22
17
  requirements:
23
- - - '>='
18
+ - - ! '>='
24
19
  - !ruby/object:Gem::Version
25
20
  version: '0'
26
- prerelease: false
27
21
  type: :runtime
28
- - !ruby/object:Gem::Dependency
29
- name: opener-build-tools
22
+ prerelease: false
30
23
  version_requirements: !ruby/object:Gem::Requirement
31
24
  requirements:
32
- - - '>='
25
+ - - ! '>='
33
26
  - !ruby/object:Gem::Version
34
- version: 0.2.7
27
+ version: '0'
28
+ - !ruby/object:Gem::Dependency
29
+ name: opener-build-tools
35
30
  requirement: !ruby/object:Gem::Requirement
36
31
  requirements:
37
- - - '>='
32
+ - - ! '>='
38
33
  - !ruby/object:Gem::Version
39
34
  version: 0.2.7
40
- prerelease: false
41
35
  type: :runtime
42
- - !ruby/object:Gem::Dependency
43
- name: rake
36
+ prerelease: false
44
37
  version_requirements: !ruby/object:Gem::Requirement
45
38
  requirements:
46
- - - '>='
39
+ - - ! '>='
47
40
  - !ruby/object:Gem::Version
48
- version: '0'
41
+ version: 0.2.7
42
+ - !ruby/object:Gem::Dependency
43
+ name: rake
49
44
  requirement: !ruby/object:Gem::Requirement
50
45
  requirements:
51
- - - '>='
46
+ - - ! '>='
52
47
  - !ruby/object:Gem::Version
53
48
  version: '0'
54
- prerelease: false
55
49
  type: :runtime
56
- - !ruby/object:Gem::Dependency
57
- name: sinatra
50
+ prerelease: false
58
51
  version_requirements: !ruby/object:Gem::Requirement
59
52
  requirements:
60
- - - '>='
53
+ - - ! '>='
61
54
  - !ruby/object:Gem::Version
62
55
  version: '0'
56
+ - !ruby/object:Gem::Dependency
57
+ name: sinatra
63
58
  requirement: !ruby/object:Gem::Requirement
64
59
  requirements:
65
- - - '>='
60
+ - - ! '>='
66
61
  - !ruby/object:Gem::Version
67
62
  version: '0'
68
- prerelease: false
69
63
  type: :runtime
70
- - !ruby/object:Gem::Dependency
71
- name: httpclient
64
+ prerelease: false
72
65
  version_requirements: !ruby/object:Gem::Requirement
73
66
  requirements:
74
- - - '>='
67
+ - - ! '>='
75
68
  - !ruby/object:Gem::Version
76
69
  version: '0'
70
+ - !ruby/object:Gem::Dependency
71
+ name: httpclient
77
72
  requirement: !ruby/object:Gem::Requirement
78
73
  requirements:
79
- - - '>='
74
+ - - ! '>='
80
75
  - !ruby/object:Gem::Version
81
76
  version: '0'
82
- prerelease: false
83
77
  type: :runtime
84
- - !ruby/object:Gem::Dependency
85
- name: puma
78
+ prerelease: false
86
79
  version_requirements: !ruby/object:Gem::Requirement
87
80
  requirements:
88
- - - '>='
81
+ - - ! '>='
89
82
  - !ruby/object:Gem::Version
90
83
  version: '0'
84
+ - !ruby/object:Gem::Dependency
85
+ name: puma
91
86
  requirement: !ruby/object:Gem::Requirement
92
87
  requirements:
93
- - - '>='
88
+ - - ! '>='
94
89
  - !ruby/object:Gem::Version
95
90
  version: '0'
96
- prerelease: false
97
91
  type: :runtime
98
- - !ruby/object:Gem::Dependency
99
- name: opener-webservice
92
+ prerelease: false
100
93
  version_requirements: !ruby/object:Gem::Requirement
101
94
  requirements:
102
- - - '>='
95
+ - - ! '>='
103
96
  - !ruby/object:Gem::Version
104
97
  version: '0'
98
+ - !ruby/object:Gem::Dependency
99
+ name: opener-webservice
105
100
  requirement: !ruby/object:Gem::Requirement
106
101
  requirements:
107
- - - '>='
102
+ - - ! '>='
108
103
  - !ruby/object:Gem::Version
109
104
  version: '0'
110
- prerelease: false
111
105
  type: :runtime
112
- - !ruby/object:Gem::Dependency
113
- name: nokogiri
106
+ prerelease: false
114
107
  version_requirements: !ruby/object:Gem::Requirement
115
108
  requirements:
116
- - - '>='
109
+ - - ! '>='
117
110
  - !ruby/object:Gem::Version
118
111
  version: '0'
112
+ - !ruby/object:Gem::Dependency
113
+ name: rspec
119
114
  requirement: !ruby/object:Gem::Requirement
120
115
  requirements:
121
- - - '>='
116
+ - - ! '>='
122
117
  - !ruby/object:Gem::Version
123
118
  version: '0'
119
+ type: :development
124
120
  prerelease: false
125
- type: :runtime
126
- - !ruby/object:Gem::Dependency
127
- name: rspec
128
121
  version_requirements: !ruby/object:Gem::Requirement
129
122
  requirements:
130
- - - '>='
123
+ - - ! '>='
131
124
  - !ruby/object:Gem::Version
132
125
  version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: cucumber
133
128
  requirement: !ruby/object:Gem::Requirement
134
129
  requirements:
135
- - - '>='
130
+ - - ! '>='
136
131
  - !ruby/object:Gem::Version
137
132
  version: '0'
138
- prerelease: false
139
133
  type: :development
140
- - !ruby/object:Gem::Dependency
141
- name: cucumber
134
+ prerelease: false
142
135
  version_requirements: !ruby/object:Gem::Requirement
143
136
  requirements:
144
- - - '>='
145
- - !ruby/object:Gem::Version
146
- version: '0'
147
- requirement: !ruby/object:Gem::Requirement
148
- requirements:
149
- - - '>='
137
+ - - ! '>='
150
138
  - !ruby/object:Gem::Version
151
139
  version: '0'
152
- prerelease: false
153
- type: :development
154
- description: 'Ruby wrapped KAF based Tree Tagger for 6 languages '
140
+ description: ! 'Ruby wrapped KAF based Tree Tagger for 6 languages '
155
141
  email:
156
142
  - ruben.izquierdobevia@vu.nl
157
143
  - wilco@olery.com
@@ -163,11 +149,6 @@ extensions:
163
149
  - ext/hack/Rakefile
164
150
  extra_rdoc_files: []
165
151
  files:
166
- - README.md
167
- - bin/tree-tagger
168
- - bin/tree-tagger-daemon
169
- - bin/tree-tagger-server
170
- - config.ru
171
152
  - core/dutch.map.treetagger.kaf.csv
172
153
  - core/english.map.treetagger.kaf.csv
173
154
  - core/french.map.treetagger.kaf.csv
@@ -179,37 +160,42 @@ files:
179
160
  - exec/tree-tagger.rb
180
161
  - ext/hack/Rakefile
181
162
  - ext/hack/support.rb
182
- - lib/opener/tree_tagger.rb
183
163
  - lib/opener/tree_tagger/cli.rb
184
- - lib/opener/tree_tagger/error_layer.rb
185
164
  - lib/opener/tree_tagger/public/markdown.css
186
165
  - lib/opener/tree_tagger/server.rb
187
166
  - lib/opener/tree_tagger/version.rb
188
167
  - lib/opener/tree_tagger/views/index.erb
189
168
  - lib/opener/tree_tagger/views/result.erb
169
+ - lib/opener/tree_tagger.rb
170
+ - config.ru
190
171
  - opener-tree-tagger.gemspec
191
172
  - pre_install_requirements.txt
173
+ - README.md
174
+ - bin/tree-tagger
175
+ - bin/tree-tagger-daemon
176
+ - bin/tree-tagger-server
192
177
  homepage: http://opener-project.github.com/
193
178
  licenses: []
194
179
  metadata: {}
195
- post_install_message:
180
+ post_install_message:
196
181
  rdoc_options: []
197
182
  require_paths:
198
183
  - lib
199
184
  required_ruby_version: !ruby/object:Gem::Requirement
200
185
  requirements:
201
- - - '>='
186
+ - - ! '>='
202
187
  - !ruby/object:Gem::Version
203
188
  version: '0'
204
189
  required_rubygems_version: !ruby/object:Gem::Requirement
205
190
  requirements:
206
- - - '>='
191
+ - - ! '>='
207
192
  - !ruby/object:Gem::Version
208
193
  version: '0'
209
194
  requirements: []
210
- rubyforge_project:
211
- rubygems_version: 2.2.2
212
- signing_key:
195
+ rubyforge_project:
196
+ rubygems_version: 2.1.11
197
+ signing_key:
213
198
  specification_version: 4
214
199
  summary: Ruby wrapped KAF based Tree Tagger for 6 languages
215
200
  test_files: []
201
+ has_rdoc:
@@ -1,89 +0,0 @@
1
- module Opener
2
- class TreeTagger
3
- ##
4
- # Add Error Layer to KAF file instead of throwing an error.
5
- #
6
- class ErrorLayer
7
- attr_accessor :input, :document, :error, :klass
8
-
9
- def initialize(input, error, klass)
10
- @input = input.to_s
11
- # Make sure there is always a document, even if it is empty.
12
- @document = Nokogiri::XML(input) rescue Nokogiri::XML(nil)
13
- @error = error
14
- @klass = klass
15
- end
16
-
17
- def add
18
- if is_xml?
19
- unless has_errors_layer?
20
- add_errors_layer
21
- end
22
- else
23
- add_root
24
- add_text
25
- add_errors_layer
26
- end
27
- add_error
28
-
29
- xml = !!document.encoding ? document.to_xml : document.to_xml(:encoding => "UTF-8")
30
-
31
- return xml
32
- end
33
-
34
- ##
35
- # Check if the document is a valid XML file.
36
- #
37
- def is_xml?
38
- !!document.root
39
- end
40
-
41
- ##
42
- # Add root element to the XML file.
43
- #
44
- def add_root
45
- root = Nokogiri::XML::Node.new "KAF", document
46
- document.add_child(root)
47
- end
48
-
49
- ##
50
- # Check if the document already has an errors layer.
51
- #
52
- def has_errors_layer?
53
- !!document.at('errors')
54
- end
55
-
56
- ##
57
- # Add errors element to the XML file.
58
- #
59
- def add_errors_layer
60
- node = Nokogiri::XML::Node.new "errors", document
61
- document.root.add_child(node)
62
- end
63
-
64
- ##
65
- # Add the text file incase it is not a valid XML document. More
66
- # info for debugging.
67
- #
68
- def add_text
69
- node = Nokogiri::XML::Node.new "raw", document
70
- node.inner_html = input
71
- document.root.add_child(node)
72
-
73
- end
74
-
75
- ##
76
- # Add the actual error to the errors layer.
77
- #
78
- def add_error
79
- node = document.at('errors')
80
- error_node = Nokogiri::XML::Node.new "error", node
81
- error_node['class'] = klass.to_s
82
- error_node['version'] = klass::VERSION
83
- error_node.inner_html = error
84
- node.add_child(error_node)
85
- end
86
-
87
- end # ErrorLayer
88
- end # TreeTagger
89
- end # Opener