veye 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
data/DEPENDENCIES.md ADDED
@@ -0,0 +1,25 @@
1
+ # Dependencies
2
+
3
+ index|name |prod_key |outdated|version_current|version_requested|stable|license
4
+ -----|------------------|------------------|--------|---------------|-----------------|------|------------------------
5
+ 1 |veye |veye | |0.0.5 |0.0.5 |stable|MIT
6
+ 2 |awesome_print |awesome_print | |1.2.0 |1.2.0 |stable|MIT
7
+ 3 |gli |gli | |2.8.0 |2.8.0 |stable|unknown
8
+ 4 |render-as-markdown|render-as-markdown| |0.0.3 |0.0.3 |stable|MIT
9
+ 5 |rest-client |rest-client | |1.6.7 |1.6.7 |stable|MIT
10
+ 6 |terminal-table |terminal-table | |1.4.5 |1.4.5 |stable|unknown
11
+ 7 |aruba |aruba | |0.5.3 |0.5.3 |stable|MIT
12
+ 8 |childprocess |childprocess | |0.3.9 |0.3.9 |stable|MIT
13
+ 9 |cucumber |cucumber | |1.3.8 |1.3.8 |stable|unknown
14
+ 10 |rspec-expectations|rspec-expectations| |2.14.3 |2.14.3 |stable|MIT
15
+ 11 |builder |builder | |3.2.2 |3.2.2 |stable|MIT
16
+ 12 |ffi |ffi | |1.9.0 |1.9.0 |stable|LGPL 3
17
+ 13 |diff-lcs |diff-lcs | |1.2.4 |1.2.4 |stable|MIT
18
+ 14 |gherkin |gherkin |outdated|3 |2.12.1 |stable|MIT
19
+ 15 |multi_json |multi_json | |1.8.1 |1.8.1 |stable|MIT
20
+ 16 |multi_test |multi_test | |0.0.2 |0.0.2 |stable|UNKNOWN
21
+ 17 |json |json | |1.8.0 |1.8.0 |stable|Ruby
22
+ 18 |mime-types |mime-types | |1.25 |1.25 |stable|MIT, Artistic 2.0, GPL-2
23
+ 19 |rainbow |rainbow |outdated|3.1 |1.1.4 |stable|MIT
24
+ 20 |rake |rake | |10.1.0 |10.1.0 |stable|MIT
25
+ 21 |rdoc |rdoc | |4.0.1 |4.0.1 |stable|GPL 2
data/Gemfile.lock CHANGED
@@ -1,44 +1,49 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- veye (0.0.4)
4
+ veye (0.0.6)
5
5
  awesome_print (= 1.2.0)
6
6
  gli (= 2.8.0)
7
7
  rainbow
8
+ render-as-markdown (~> 0.0.1)
8
9
  rest-client (= 1.6.7)
9
10
  terminal-table (= 1.4.5)
10
11
 
11
12
  GEM
12
13
  remote: https://rubygems.org/
13
14
  specs:
14
- aruba (0.5.1)
15
- childprocess (~> 0.3.6)
15
+ aruba (0.5.3)
16
+ childprocess (>= 0.3.6)
16
17
  cucumber (>= 1.1.1)
17
18
  rspec-expectations (>= 2.7.0)
18
19
  awesome_print (1.2.0)
19
- builder (3.1.4)
20
- childprocess (0.3.6)
21
- ffi (~> 1.0, >= 1.0.6)
22
- cucumber (1.2.1)
20
+ builder (3.2.2)
21
+ childprocess (0.3.9)
22
+ ffi (~> 1.0, >= 1.0.11)
23
+ cucumber (1.3.8)
23
24
  builder (>= 2.1.2)
24
25
  diff-lcs (>= 1.1.3)
25
- gherkin (~> 2.11.0)
26
- json (>= 1.4.6)
27
- diff-lcs (1.1.3)
28
- ffi (1.3.0)
29
- gherkin (2.11.5)
30
- json (>= 1.4.6)
26
+ gherkin (~> 2.12.1)
27
+ multi_json (>= 1.7.5, < 2.0)
28
+ multi_test (>= 0.0.2)
29
+ diff-lcs (1.2.4)
30
+ ffi (1.9.0)
31
+ gherkin (2.12.1)
32
+ multi_json (~> 1.3)
31
33
  gli (2.8.0)
32
- json (1.7.6)
34
+ json (1.8.0)
33
35
  mime-types (1.25)
36
+ multi_json (1.8.1)
37
+ multi_test (0.0.2)
34
38
  rainbow (1.1.4)
35
- rake (10.0.3)
36
- rdoc (3.12)
39
+ rake (10.1.0)
40
+ rdoc (4.0.1)
37
41
  json (~> 1.4)
42
+ render-as-markdown (0.0.3)
38
43
  rest-client (1.6.7)
39
44
  mime-types (>= 1.16)
40
- rspec-expectations (2.12.1)
41
- diff-lcs (~> 1.1.3)
45
+ rspec-expectations (2.14.3)
46
+ diff-lcs (>= 1.1.3, < 2.0)
42
47
  terminal-table (1.4.5)
43
48
 
44
49
  PLATFORMS
data/Makefile ADDED
@@ -0,0 +1,2 @@
1
+ dep-doc:
2
+ veye check Gemfile.lock --format=md > DEPENDENCIES.md
data/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # Veye
2
2
 
3
+ [![Dependency Status](https://www.versioneye.com/ruby/veye/0.0.5/badge.png)](https://www.versioneye.com/ruby/veye/0.0.5)
4
+
3
5
  [VersionEye](http://www.versioneye.com/) is a cross-platform search engine and crowdsourcing app for opensource software libraries.
4
6
 
5
7
  * Take advantage of the extended search to find any library you look for.
@@ -85,7 +87,7 @@ You can use this service to check does the tool works and tests is our API acces
85
87
 
86
88
  ### Search packages
87
89
 
88
- This command opens window to magnificient world of software packages - VersionEye has ~ 200K software libraries and it's reachable via your commandline.
90
+ This command opens window to magnificient world of software packages - VersionEye has ~ 250K software libraries and it's reachable via your commandline.
89
91
 
90
92
  ###### Get command help
91
93
 
@@ -116,9 +118,13 @@ This command opens window to magnificient world of software packages - VersionEy
116
118
  $> veye search junit --page 3 --no-pagination
117
119
  ```
118
120
 
119
- ###### Use different output format
121
+ ### Output formats
122
+
123
+ All commands support format-flag, that allows you change output format.
120
124
 
121
- **pretty print** - human readable output
125
+ ###### pretty print
126
+
127
+ Prettyprint is human readable output with colors. It's designed after other ruby command-line tools.
122
128
 
123
129
  ```bash
124
130
  $> veye search json --format=pretty
@@ -126,7 +132,8 @@ This command opens window to magnificient world of software packages - VersionEy
126
132
 
127
133
  ![Pretty format](https://s3-eu-west-1.amazonaws.com/veye/search_format_pretty.png)
128
134
 
129
- **csv** - to pipeline output to [awk](http://www.gnu.org/software/gawk/manual/gawk.html)
135
+ ###### CSV
136
+ CSV is good format for unix command line tools as [awk](http://www.gnu.org/software/gawk/manual/gawk.html)
130
137
 
131
138
  ```bash
132
139
  $> veye search json --format=csv
@@ -134,7 +141,9 @@ This command opens window to magnificient world of software packages - VersionEy
134
141
 
135
142
  ![CSV format](https://s3-eu-west-1.amazonaws.com/veye/search_format_csv.png)
136
143
 
137
- **json** - for manipulating results with [jq](http://stedolan.github.com/jq/) .
144
+ ###### JSON
145
+
146
+ It also supports JSON to manipulate results with [jq](http://stedolan.github.com/jq/) .
138
147
  Check out our jq recipes in [wiki](https://github.com/versioneye/veye/wiki/jq-recipes) .
139
148
 
140
149
 
@@ -144,14 +153,29 @@ This command opens window to magnificient world of software packages - VersionEy
144
153
 
145
154
  ![Json format](https://s3-eu-west-1.amazonaws.com/veye/search_format_json.png)
146
155
 
147
- **table view**
148
-
156
+ ###### Table view
157
+
158
+ A Tabular view for bigger screens. It's shows results as one Excel sheet - title and content.
159
+
149
160
  ```bash
150
161
  $> veye search json --format=table
151
162
  ```
152
163
  ![Table output](https://s3-eu-west-1.amazonaws.com/veye/search_format_table.png)
153
164
 
154
165
 
166
+ ###### Markdown
167
+
168
+ This flag formats your results in markdown.
169
+
170
+ Here's dependencies of demo project formatted as [markdown table](https://gist.github.com/timgluz/6857422).
171
+
172
+ ```
173
+
174
+ $> veye projects show rubygem_gemfile_lock_1 --format=md
175
+ $> veye projects show rubygem_gemfile_lock_1 --format=md > dependencies.md
176
+ ```
177
+
178
+
155
179
  ###### Empty response
156
180
 
157
181
  There will be situation, when [VersionEye](http://versioneye.com) dont have information about your search, then you will see similar response on commandline:
@@ -277,5 +301,5 @@ This command removes the specified project from your project's list.
277
301
 
278
302
  ```
279
303
  $> veye me favorites
280
- $> veye me favorites --page=2
304
+ $> veye me favorites --page=2 --format=table
281
305
  ```
data/bin/veye CHANGED
@@ -15,6 +15,8 @@ program_long_desc Veye::BIGEYE.foreground(:green)
15
15
  wrap_help_text :verbatim
16
16
  version Veye::VERSION
17
17
 
18
+ COMMANDS_WITHOUT_API_KEY = [:help, :ping, :search]
19
+
18
20
  config_file '.veye.rc'
19
21
 
20
22
  desc 'set api key'
@@ -33,16 +35,17 @@ desc 'set connection protocol'
33
35
  flag :protocol, :default_value => "http"
34
36
 
35
37
  desc 'set folder of veye_cert.pem'
36
- flag :ssl_path, :default_value => "~/.veye"
38
+ flag :ssl_path, :default_value => "~/.ssh"
37
39
 
38
40
  desc "don't use colors"
39
41
  switch 'color', :default_value => true, :negetable => true
40
42
 
41
- pre do |global_options, options, args|
43
+ pre do |global_options, command, args|
42
44
  check_config_file
43
45
  $global_options = init_environment
44
46
  $global_options.merge!(global_options)
45
- check_configs($global_options)
47
+ needs_api_key = ! COMMANDS_WITHOUT_API_KEY.member?(command.name)
48
+ check_configs($global_options, needs_api_key)
46
49
  $global_options[:url] = Veye::API::Resource.build_url($global_options)
47
50
  end
48
51
 
@@ -250,7 +253,7 @@ command :projects do |c|
250
253
 
251
254
  c.desc "show licences of subdependencies"
252
255
  c.arg_name "project_key"
253
- c.command :licences do |licences|
256
+ c.command :licenses do |licences|
254
257
  licences.action do |global_options, options, args|
255
258
  help_now!("Project's key is unspecified".foreground(:red)) if args.empty?
256
259
  proj_key = args.shift
@@ -12,12 +12,9 @@ module Veye
12
12
  ssl_path = File.expand_path($global_options[:ssl_path])
13
13
  @resource = RestClient::Resource.new(
14
14
  @full_path,
15
- :ssl_client_cert => OpenSSL::X509::Certificate.new(
16
- File.read("#{ssl_path}/veye_cert.pem")),
17
- :ssl_client_key => OpenSSL::PKey::RSA.new(
18
- File.read("#{ssl_path}/veye_key.pem"), "passphrase, if any"),
19
- :ssl_ca_file => "ca_certificate.pem",
20
- :verify_ssl => OpenSSL::SSL::VERIFY_PEER
15
+ :ssl_client_cert => OpenSSL::PKey::RSA.new(File.read("#{ssl_path}/veye_cert.pem")),
16
+ :ssl_client_key => OpenSSL::PKey::RSA.new(File.read("#{ssl_path}/veye_key.pem")),
17
+ :verify_ssl => OpenSSL::SSL::VERIFY_NONE
21
18
  )
22
19
  end
23
20
  end
@@ -0,0 +1,11 @@
1
+ module FormatHelpers
2
+ def supported_format?(output_formats, format)
3
+ unless output_formats.has_key?(format)
4
+ msg = "This command doesnt support output format: `#{format}`\n".foreground(:red)
5
+ msg += "Supported formats: #{output_formats.keys.join(', ')}\n"
6
+ exit_now! msg
7
+ end
8
+ true
9
+ end
10
+
11
+ end
@@ -1,7 +1,7 @@
1
1
  module Veye
2
2
  module Package
3
3
  class Follow
4
-
4
+
5
5
  def self.get_follow_status(prod_key, api_key)
6
6
  product_api = API::Resource.new(RESOURCE_PATH)
7
7
  response_data = nil
@@ -4,9 +4,10 @@ require_relative 'info_pretty.rb'
4
4
  require_relative 'info_table.rb'
5
5
 
6
6
  module Veye
7
- module Package
8
-
7
+ module Package
9
8
  class Info
9
+ extend FormatHelpers
10
+
10
11
  @@output_formats = {
11
12
  'csv' => InfoCSV.new,
12
13
  'json' => InfoJSON.new,
@@ -39,6 +40,8 @@ module Veye
39
40
  end
40
41
 
41
42
  def self.format(results, format = 'pretty')
43
+ self.supported_format?(@@output_formats, format)
44
+
42
45
  formatter = @@output_formats[format]
43
46
  formatter.before
44
47
  formatter.format(results)
@@ -7,6 +7,8 @@ module Veye
7
7
  module Package
8
8
 
9
9
  class Search
10
+ extend FormatHelpers
11
+
10
12
  @@output_formats = {
11
13
  'csv' => SearchCSV.new,
12
14
  'json' => SearchJSON.new,
@@ -33,7 +35,8 @@ module Veye
33
35
  end
34
36
 
35
37
  def self.format(search_results, format = 'pretty', paging = nil)
36
-
38
+ self.supported_format?(@@output_formats, format)
39
+
37
40
  formatter = @@output_formats[format]
38
41
  formatter.before
39
42
  formatter.format(search_results)
@@ -6,6 +6,8 @@ require_relative 'pagination_table.rb'
6
6
  module Veye
7
7
  module Pagination
8
8
  class Show
9
+ extend FormatHelpers
10
+
9
11
  @@pagination_formats = {
10
12
  'csv' => PaginationCSV.new,
11
13
  'json' => PaginationJSON.new,
@@ -14,8 +16,9 @@ module Veye
14
16
  }
15
17
 
16
18
  def self.format(paging, format = 'pretty')
17
- formatter = @@pagination_formats[format]
18
-
19
+ self.supported_format?(@@pagination_formats, format)
20
+
21
+ formatter = @@pagination_formats[format]
19
22
  formatter.before
20
23
  formatter.format paging
21
24
  formatter.after
@@ -4,27 +4,33 @@ require_relative 'project_csv.rb'
4
4
  require_relative 'project_json.rb'
5
5
  require_relative 'project_pretty.rb'
6
6
  require_relative 'project_table.rb'
7
+ require_relative 'project_markdown.rb'
7
8
 
8
9
  require_relative 'project_dependency_csv.rb'
9
10
  require_relative 'project_dependency_json.rb'
10
11
  require_relative 'project_dependency_pretty.rb'
11
12
  require_relative 'project_dependency_table.rb'
13
+ require_relative 'project_dependency_markdown.rb'
12
14
 
13
15
  module Veye
14
16
  module Project
15
17
  class Check
18
+ extend FormatHelpers
19
+
16
20
  @@output_formats = {
17
21
  "csv" => ProjectCSV.new,
18
22
  "json" => ProjectJSON.new,
19
23
  "pretty" => ProjectPretty.new,
20
- "table" => ProjectTable.new
24
+ "table" => ProjectTable.new,
25
+ "md" => ProjectMarkdown.new
21
26
  }
22
27
 
23
28
  @@dependency_output_formats = {
24
29
  "csv" => ProjectDependencyCSV.new,
25
30
  "json" => ProjectDependencyJSON.new,
26
31
  "pretty" => ProjectDependencyPretty.new,
27
- "table" => ProjectDependencyTable.new
32
+ "table" => ProjectDependencyTable.new,
33
+ "md" => ProjectDependencyMarkdown.new
28
34
  }
29
35
 
30
36
 
@@ -32,6 +38,7 @@ module Veye
32
38
  project_api = API::Resource.new(RESOURCE_PATH)
33
39
  qparams = {:params => {:api_key => api_key}}
34
40
 
41
+
35
42
  project_api.resource.get(qparams) do |response, request, result|
36
43
  response_data = API::JSONResponse.new(request, result, response)
37
44
  end
@@ -105,7 +112,7 @@ module Veye
105
112
  "Not valid project_key: `#{project_key}`")
106
113
  exit_now! error_msg
107
114
  end
108
-
115
+
109
116
  project_url = "/#{project_key}"
110
117
  qparams = {:params => {:api_key => api_key}}
111
118
  project_api.resource[project_url].get(qparams) do |response, request, result|
@@ -128,6 +135,8 @@ module Veye
128
135
  end
129
136
 
130
137
  def self.format(results, format = 'pretty')
138
+ self.supported_format?(@@output_formats, format)
139
+
131
140
  formatter = @@output_formats[format]
132
141
  formatter.before
133
142
  formatter.format results
@@ -135,12 +144,13 @@ module Veye
135
144
  end
136
145
 
137
146
  def self.format_dependencies(results, format = 'pretty')
147
+ self.supported_format?(@@dependency_output_formats, format)
148
+
138
149
  formatter = @@dependency_output_formats[format]
139
150
  formatter.before
140
151
  formatter.format results
141
152
  formatter.after
142
153
  end
143
-
144
154
  end
145
155
  end
146
156
  end
@@ -8,6 +8,8 @@ require_relative 'project_licence_table.rb'
8
8
  module Veye
9
9
  module Project
10
10
  class Licence
11
+ extend FormatHelpers
12
+
11
13
  @@output_formats = {
12
14
  "csv" => ProjectLicenceCSV.new,
13
15
  "json" => ProjectLicenceJSON.new,
@@ -36,6 +38,8 @@ module Veye
36
38
  end
37
39
 
38
40
  def self.format(results, format = 'pretty')
41
+ self.supported_format?(@@output_formats, format)
42
+
39
43
  formatter = @@output_formats[format]
40
44
  formatter.before
41
45
  formatter.format results
@@ -4,7 +4,9 @@ module Veye
4
4
  def before
5
5
  printf("nr,name,project_key,private,period,source,dep_number,out_number,created_at\n")
6
6
  end
7
- def after; end
7
+ def after
8
+ puts "\n"
9
+ end
8
10
 
9
11
  def format(results)
10
12
  results = [results] if results.is_a? Hash
@@ -1,8 +1,11 @@
1
1
  module Veye
2
2
  module Project
3
3
  class ProjectDependencyCSV
4
- def before
5
- printf("nr,name,prod_key,outdated,latest,current\n",nil)
4
+
5
+ @@columns = %w{nr name prod_key outdated version_current version_requested stable license}
6
+
7
+ def before
8
+ puts @@columns.join(',') << "\n"
6
9
  end
7
10
  def after; end
8
11
 
@@ -10,14 +13,16 @@ module Veye
10
13
  results = [results] if results.is_a?(Hash)
11
14
 
12
15
  results.each_with_index do |result, index|
13
- printf("%d,%s,%s,%s,%s,%s\n",
14
- index + 1,
15
- result["name"],
16
- result["prod_key"],
17
- result["outdated"],
18
- result["version_current"],
19
- result["version_requested"],
20
- )
16
+ printf("%d,%s,%s,%s,%s,%s,%s,%s\n",
17
+ index + 1,
18
+ result[@@columns[1]],
19
+ result[@@columns[2]],
20
+ result[@@columns[3]],
21
+ result[@@columns[4]],
22
+ result[@@columns[5]],
23
+ result[@@columns[6]],
24
+ result[@@columns[7]]
25
+ )
21
26
  end
22
27
  end
23
28
  end
@@ -5,7 +5,7 @@ module Veye
5
5
  def after; end
6
6
 
7
7
  def format(results)
8
- printf("%s\n", {"dependencies" => results}.to_json)
8
+ printf("%s\n", {"project" => results}.to_json)
9
9
  end
10
10
  end
11
11
  end
@@ -0,0 +1,47 @@
1
+ require 'render-as-markdown'
2
+
3
+ module Veye
4
+ module Project
5
+ class ProjectDependencyMarkdown
6
+
7
+ @@columns = %w{index name prod_key outdated version_current version_requested stable license}
8
+
9
+ def before; end
10
+
11
+ def format(results)
12
+ begin
13
+ markdown = "# Dependencies\n\n"
14
+
15
+ table = RenderAsMarkdown::Table.new @@columns
16
+
17
+ results = [results] if results.is_a?(Hash)
18
+
19
+ results.each_with_index do |result, index|
20
+ # make sure this array is exactly as long as @@columns
21
+ table << [
22
+ (index + 1).to_s,
23
+ result["name"],
24
+ result["prod_key"],
25
+ result["outdated"] ? "outdated" : "ok",
26
+ result["version_current"],
27
+ result["version_requested"],
28
+ result["stable"] ? "stable": "unstable",
29
+ result["license"]
30
+ ]
31
+ end
32
+
33
+ markdown << table.render
34
+ puts markdown
35
+
36
+ rescue => e
37
+ puts e
38
+ puts e.backtrace
39
+ end
40
+ end
41
+
42
+ def after; end
43
+
44
+ end
45
+ end
46
+ end
47
+
@@ -17,11 +17,12 @@ module Veye
17
17
  printf("\t%-15s: %s\n", "Outdated",
18
18
  "#{result['outdated']}".foreground(color))
19
19
 
20
- printf("\t%-15s: %s\n", "Latest version",
20
+ printf("\t%-15s: %s\n", "Current version",
21
21
  "#{result['version_current']}".foreground(color))
22
22
 
23
- printf("\t%-15s: %s\n", "Current version", result["version_requested"])
24
-
23
+ printf("\t%-15s: %s\n", "Requested version", result["version_requested"])
24
+ printf("\t%-15s: %s\n", "License", result["license"])
25
+
25
26
  end
26
27
  end
27
28
  end
@@ -3,9 +3,12 @@ require 'terminal-table'
3
3
  module Veye
4
4
  module Project
5
5
  class ProjectDependencyTable
6
+
7
+ @@columns = %w{index name prod_key outdated version_current version_requested stable license}
8
+
6
9
  def before
7
10
  @@table = Terminal::Table.new :title => "Version check",
8
- :headings => %w(index name prod_key version_current version_latest)
11
+ :headings => @@columns
9
12
  @@table.align_column(0, :right)
10
13
  end
11
14
 
@@ -17,8 +20,14 @@ module Veye
17
20
  results = [results] if results.is_a?(Hash)
18
21
 
19
22
  results.each_with_index do |result, index|
20
- row = [index + 1, result["name"], result["prod_key"],
21
- result["version_current"], result["version_requested"]]
23
+ row = [index + 1,
24
+ result["name"],
25
+ result["prod_key"],
26
+ result["version_current"],
27
+ result["version_requested"],
28
+ result["outdated"] ? "outdated":"",
29
+ result["stable"] ? "stable": "unstable",
30
+ result["license"]]
22
31
  @@table << row
23
32
  end
24
33
  end
@@ -4,9 +4,7 @@ module Veye
4
4
  def before; end
5
5
  def after; end
6
6
 
7
- def format(results)
8
- printf("%s\n", {"projects" => results}.to_json)
9
- end
7
+ def format(results);end
10
8
  end
11
9
  end
12
10
  end
@@ -0,0 +1,38 @@
1
+ require 'render-as-markdown'
2
+
3
+ module Veye
4
+ module Project
5
+ class ProjectMarkdown
6
+ @@columns = %w(index name project_key project_type private period source dependencies outdated created)
7
+
8
+ def before
9
+ @@markdown = "# Project's information\n\n"
10
+ @@table = RenderAsMarkdown::Table.new @@columns
11
+ end
12
+
13
+ def after
14
+ @@markdown << @@table.render
15
+ @@markdown << "\n\n"
16
+ puts @@markdown
17
+ end
18
+ def format(results)
19
+ results = [results] if results.is_a?(Hash) #required for `project show`
20
+
21
+ results.each_with_index do |result, index|
22
+ @@table << [
23
+ (index + 1).to_s,
24
+ result["name"],
25
+ result["project_key"],
26
+ result["project_type"],
27
+ result["private"].to_s,
28
+ result["period"],
29
+ result["source"],
30
+ result["dep_number"].to_s,
31
+ result["out_number"].to_s,
32
+ result["created_at"]
33
+ ]
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
data/lib/veye/user/me.rb CHANGED
@@ -11,6 +11,8 @@ require_relative 'favorite_table.rb'
11
11
  module Veye
12
12
  module User
13
13
  class Me
14
+ extend FormatHelpers
15
+
14
16
  @@profile_formats = {
15
17
  'csv' => ProfileCSV.new,
16
18
  'json' => ProfileJSON.new,
@@ -55,6 +57,7 @@ module Veye
55
57
  end
56
58
 
57
59
  def self.format_profile(results, format = 'pretty')
60
+ self.supported_format?(@@profile_formats, format)
58
61
  formatter = @@profile_formats[format]
59
62
  formatter.before
60
63
  formatter.format(results)
@@ -62,6 +65,7 @@ module Veye
62
65
  end
63
66
 
64
67
  def self.format_favorites(results, format = 'pretty')
68
+ self.supported_format?(@@favorite_formats, format)
65
69
  formatter = @@favorite_formats[format]
66
70
 
67
71
  formatter.before
data/lib/veye/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Veye
2
- VERSION = '0.0.5'
2
+ VERSION = '0.0.6'
3
3
  BIGEYE = %q{
4
4
 
5
5
  _ __ _ ______
data/lib/veye.rb CHANGED
@@ -1,5 +1,9 @@
1
1
  # Add requires for other files you add to your project here, so
2
2
  # you just need to require this one file in your bin file
3
+ require 'openssl'
4
+
5
+ require 'veye/helpers/format_helpers.rb'
6
+
3
7
  require 'veye/version.rb'
4
8
  require 'veye/service.rb'
5
9
  require 'veye/api.rb'
@@ -30,9 +34,9 @@ def check_config_file
30
34
  end
31
35
  end
32
36
 
33
- def self.check_configs(global_opts)
37
+ def self.check_configs(global_opts, needs_api_key)
34
38
  check_config_file
35
- check_api_key(global_opts)
39
+ check_api_key(global_opts) if needs_api_key
36
40
 
37
41
  unless ssl_key_exists?(global_opts)
38
42
  generate_ssl_keys(global_opts)
@@ -71,23 +75,25 @@ end
71
75
 
72
76
  def generate_ssl_keys(global_opts)
73
77
  result = false
74
- key_command = %Q[
75
- openssl req -x509 -newkey rsa:2048 -keyout veye_key.pem -out veye_cert.pem -nodes
76
- ]
77
78
 
78
79
  Dir.chdir(Dir.home)
79
80
  ssl_path = File.expand_path(global_opts[:ssl_path])
80
81
  unless Dir.exists?(ssl_path)
81
- p "Creating folder for ssl keys: `#{ssl_path}`"
82
+ print "Info: Creating folder for ssl keys: `#{ssl_path}`\n"
82
83
  Dir.mkdir(ssl_path)
83
84
  end
84
85
 
85
86
  Dir.chdir(ssl_path)
86
- if system(key_command)
87
- print "Key is generated.\n"
87
+
88
+ key = OpenSSL::PKey::RSA.new 2048
89
+ open 'veye_key.pem', 'w' do |io| io.write(key.to_pem) end
90
+ open 'veye_cert.pem', 'w' do |io| io.write(key.public_key.to_pem) end
91
+
92
+ if ssl_key_exists?(global_opts)
93
+ print "Success: SSL keys are generated.\n"
88
94
  result = true
89
95
  else
90
- print "Cant generate SSL keys. Do you have openssl installed?\n"
96
+ print "Error: Cant generate SSL keys. Do you have openssl installed?\n"
91
97
  end
92
98
 
93
99
  Dir.chdir(Dir.home)
metadata CHANGED
@@ -1,7 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: veye
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - VersionEye GMBH
@@ -10,11 +11,12 @@ authors:
10
11
  autorequire:
11
12
  bindir: bin
12
13
  cert_chain: []
13
- date: 2013-10-03 00:00:00.000000000 Z
14
+ date: 2013-10-07 00:00:00.000000000 Z
14
15
  dependencies:
15
16
  - !ruby/object:Gem::Dependency
16
17
  name: rake
17
18
  requirement: !ruby/object:Gem::Requirement
19
+ none: false
18
20
  requirements:
19
21
  - - ! '>='
20
22
  - !ruby/object:Gem::Version
@@ -22,6 +24,7 @@ dependencies:
22
24
  type: :development
23
25
  prerelease: false
24
26
  version_requirements: !ruby/object:Gem::Requirement
27
+ none: false
25
28
  requirements:
26
29
  - - ! '>='
27
30
  - !ruby/object:Gem::Version
@@ -29,6 +32,7 @@ dependencies:
29
32
  - !ruby/object:Gem::Dependency
30
33
  name: rdoc
31
34
  requirement: !ruby/object:Gem::Requirement
35
+ none: false
32
36
  requirements:
33
37
  - - ! '>='
34
38
  - !ruby/object:Gem::Version
@@ -36,6 +40,7 @@ dependencies:
36
40
  type: :development
37
41
  prerelease: false
38
42
  version_requirements: !ruby/object:Gem::Requirement
43
+ none: false
39
44
  requirements:
40
45
  - - ! '>='
41
46
  - !ruby/object:Gem::Version
@@ -43,6 +48,7 @@ dependencies:
43
48
  - !ruby/object:Gem::Dependency
44
49
  name: aruba
45
50
  requirement: !ruby/object:Gem::Requirement
51
+ none: false
46
52
  requirements:
47
53
  - - ! '>='
48
54
  - !ruby/object:Gem::Version
@@ -50,6 +56,7 @@ dependencies:
50
56
  type: :development
51
57
  prerelease: false
52
58
  version_requirements: !ruby/object:Gem::Requirement
59
+ none: false
53
60
  requirements:
54
61
  - - ! '>='
55
62
  - !ruby/object:Gem::Version
@@ -57,6 +64,7 @@ dependencies:
57
64
  - !ruby/object:Gem::Dependency
58
65
  name: gli
59
66
  requirement: !ruby/object:Gem::Requirement
67
+ none: false
60
68
  requirements:
61
69
  - - '='
62
70
  - !ruby/object:Gem::Version
@@ -64,6 +72,7 @@ dependencies:
64
72
  type: :runtime
65
73
  prerelease: false
66
74
  version_requirements: !ruby/object:Gem::Requirement
75
+ none: false
67
76
  requirements:
68
77
  - - '='
69
78
  - !ruby/object:Gem::Version
@@ -71,6 +80,7 @@ dependencies:
71
80
  - !ruby/object:Gem::Dependency
72
81
  name: rest-client
73
82
  requirement: !ruby/object:Gem::Requirement
83
+ none: false
74
84
  requirements:
75
85
  - - '='
76
86
  - !ruby/object:Gem::Version
@@ -78,6 +88,7 @@ dependencies:
78
88
  type: :runtime
79
89
  prerelease: false
80
90
  version_requirements: !ruby/object:Gem::Requirement
91
+ none: false
81
92
  requirements:
82
93
  - - '='
83
94
  - !ruby/object:Gem::Version
@@ -85,6 +96,7 @@ dependencies:
85
96
  - !ruby/object:Gem::Dependency
86
97
  name: awesome_print
87
98
  requirement: !ruby/object:Gem::Requirement
99
+ none: false
88
100
  requirements:
89
101
  - - '='
90
102
  - !ruby/object:Gem::Version
@@ -92,6 +104,7 @@ dependencies:
92
104
  type: :runtime
93
105
  prerelease: false
94
106
  version_requirements: !ruby/object:Gem::Requirement
107
+ none: false
95
108
  requirements:
96
109
  - - '='
97
110
  - !ruby/object:Gem::Version
@@ -99,6 +112,7 @@ dependencies:
99
112
  - !ruby/object:Gem::Dependency
100
113
  name: rainbow
101
114
  requirement: !ruby/object:Gem::Requirement
115
+ none: false
102
116
  requirements:
103
117
  - - ! '>='
104
118
  - !ruby/object:Gem::Version
@@ -106,6 +120,7 @@ dependencies:
106
120
  type: :runtime
107
121
  prerelease: false
108
122
  version_requirements: !ruby/object:Gem::Requirement
123
+ none: false
109
124
  requirements:
110
125
  - - ! '>='
111
126
  - !ruby/object:Gem::Version
@@ -113,6 +128,7 @@ dependencies:
113
128
  - !ruby/object:Gem::Dependency
114
129
  name: terminal-table
115
130
  requirement: !ruby/object:Gem::Requirement
131
+ none: false
116
132
  requirements:
117
133
  - - '='
118
134
  - !ruby/object:Gem::Version
@@ -120,11 +136,28 @@ dependencies:
120
136
  type: :runtime
121
137
  prerelease: false
122
138
  version_requirements: !ruby/object:Gem::Requirement
139
+ none: false
123
140
  requirements:
124
141
  - - '='
125
142
  - !ruby/object:Gem::Version
126
143
  version: 1.4.5
127
- description: ! "\n Veye is commandline tool like Heroku has own ToolBelt, \n and
144
+ - !ruby/object:Gem::Dependency
145
+ name: render-as-markdown
146
+ requirement: !ruby/object:Gem::Requirement
147
+ none: false
148
+ requirements:
149
+ - - ~>
150
+ - !ruby/object:Gem::Version
151
+ version: 0.0.1
152
+ type: :runtime
153
+ prerelease: false
154
+ version_requirements: !ruby/object:Gem::Requirement
155
+ none: false
156
+ requirements:
157
+ - - ~>
158
+ - !ruby/object:Gem::Version
159
+ version: 0.0.1
160
+ description: ! "\n Veye is commandline tool like Heroku has own ToolBelt,\n and
128
161
  purpose of this tool is to make developer's life even\n more simpler and keep
129
162
  you up-to-date with freshest packages.\n "
130
163
  email: contact@versioneye.com
@@ -140,6 +173,7 @@ files:
140
173
  - lib/veye/api/json_response.rb
141
174
  - lib/veye/api/resource.rb
142
175
  - lib/veye/api.rb
176
+ - lib/veye/helpers/format_helpers.rb
143
177
  - lib/veye/package/follow.rb
144
178
  - lib/veye/package/info.rb
145
179
  - lib/veye/package/info_csv.rb
@@ -163,6 +197,7 @@ files:
163
197
  - lib/veye/project/project_csv.rb
164
198
  - lib/veye/project/project_dependency_csv.rb
165
199
  - lib/veye/project/project_dependency_json.rb
200
+ - lib/veye/project/project_dependency_markdown.rb
166
201
  - lib/veye/project/project_dependency_pretty.rb
167
202
  - lib/veye/project/project_dependency_table.rb
168
203
  - lib/veye/project/project_json.rb
@@ -170,6 +205,7 @@ files:
170
205
  - lib/veye/project/project_licence_json.rb
171
206
  - lib/veye/project/project_licence_pretty.rb
172
207
  - lib/veye/project/project_licence_table.rb
208
+ - lib/veye/project/project_markdown.rb
173
209
  - lib/veye/project/project_pretty.rb
174
210
  - lib/veye/project/project_table.rb
175
211
  - lib/veye/project.rb
@@ -186,8 +222,10 @@ files:
186
222
  - lib/veye/user.rb
187
223
  - lib/veye/version.rb
188
224
  - bin/veye
225
+ - DEPENDENCIES.md
189
226
  - Gemfile
190
227
  - Gemfile.lock
228
+ - Makefile
191
229
  - README.md
192
230
  - README.rdoc
193
231
  - Rakefile
@@ -199,7 +237,6 @@ files:
199
237
  homepage: https://github.com/versioneye/veye
200
238
  licenses:
201
239
  - MIT
202
- metadata: {}
203
240
  post_install_message: ! 'Thanks for installing! To get more info, use: veye help'
204
241
  rdoc_options:
205
242
  - --title
@@ -211,19 +248,21 @@ require_paths:
211
248
  - lib
212
249
  - lib
213
250
  required_ruby_version: !ruby/object:Gem::Requirement
251
+ none: false
214
252
  requirements:
215
253
  - - ! '>='
216
254
  - !ruby/object:Gem::Version
217
255
  version: '0'
218
256
  required_rubygems_version: !ruby/object:Gem::Requirement
257
+ none: false
219
258
  requirements:
220
259
  - - ! '>='
221
260
  - !ruby/object:Gem::Version
222
261
  version: '0'
223
262
  requirements: []
224
263
  rubyforge_project:
225
- rubygems_version: 2.1.5
264
+ rubygems_version: 1.8.26
226
265
  signing_key:
227
- specification_version: 4
266
+ specification_version: 3
228
267
  summary: Commandline tool for VersionEye
229
268
  test_files: []
checksums.yaml DELETED
@@ -1,15 +0,0 @@
1
- ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- NjVhZDVmMTViZDZmNmJiYmE1NDViOTAzMDVlZDBkMDBiYjgzNTBlYg==
5
- data.tar.gz: !binary |-
6
- NTQxY2RmMmM0NGYxYmEwNDgyOWJmZTg5OWEwNjEwZTRhMTZjZGQxOA==
7
- SHA512:
8
- metadata.gz: !binary |-
9
- YWM2MzJjZWVlYjJlZmU2NzdlZTNhMDE3MzdlMjE2ZjU4YWQ2M2E5Y2VmN2Vl
10
- OTQzMTBhYTU4YWE5YTRiMWJhNjEzZDg4YTM1YjlkMjE4MTYzMDNlZWFlYjFi
11
- MTBiMjA5ODc0NjNiNmRlMGQ4MjhlNzU2MDc3YzFmOGE1MjJhYTE=
12
- data.tar.gz: !binary |-
13
- YWI4ZjE4OTI1NThmY2ZlZjA4ZjM4MWQwMWMzMDRkNjNlMWViZDUxMTgxZmZk
14
- NjcxZWRkM2RiOTJhYzBkZmU0MzhjY2VjYWMxZTFmNGUxNGMwZmI5YmU1ODhk
15
- ZTQ4OTMwOTUzNDc0OTdhYWIyMDJjYjBhYTBiZjY4NTIzYzkwNjA=