veye 0.0.2
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 +15 -0
- data/Gemfile +2 -0
- data/Gemfile.lock +51 -0
- data/README.md +271 -0
- data/README.rdoc +6 -0
- data/Rakefile +44 -0
- data/bin/veye +390 -0
- data/lib/veye/api/base_resource.rb +29 -0
- data/lib/veye/api/json_response.rb +56 -0
- data/lib/veye/api/resource.rb +22 -0
- data/lib/veye/api.rb +3 -0
- data/lib/veye/package/follow.rb +50 -0
- data/lib/veye/package/info.rb +50 -0
- data/lib/veye/package/info_csv.rb +18 -0
- data/lib/veye/package/info_json.rb +14 -0
- data/lib/veye/package/info_pretty.rb +27 -0
- data/lib/veye/package/info_table.rb +29 -0
- data/lib/veye/package/search.rb +46 -0
- data/lib/veye/package/search_csv.rb +33 -0
- data/lib/veye/package/search_json.rb +19 -0
- data/lib/veye/package/search_pretty.rb +35 -0
- data/lib/veye/package/search_table.rb +40 -0
- data/lib/veye/package.rb +23 -0
- data/lib/veye/pagination/pagination_csv.rb +17 -0
- data/lib/veye/pagination/pagination_json.rb +12 -0
- data/lib/veye/pagination/pagination_pretty.rb +22 -0
- data/lib/veye/pagination/pagination_table.rb +22 -0
- data/lib/veye/pagination/show.rb +26 -0
- data/lib/veye/pagination.rb +7 -0
- data/lib/veye/project/check.rb +147 -0
- data/lib/veye/project/licence.rb +48 -0
- data/lib/veye/project/project_csv.rb +28 -0
- data/lib/veye/project/project_dependency_csv.rb +25 -0
- data/lib/veye/project/project_dependency_json.rb +12 -0
- data/lib/veye/project/project_dependency_pretty.rb +30 -0
- data/lib/veye/project/project_dependency_table.rb +27 -0
- data/lib/veye/project/project_json.rb +13 -0
- data/lib/veye/project/project_licence_csv.rb +19 -0
- data/lib/veye/project/project_licence_json.rb +12 -0
- data/lib/veye/project/project_licence_pretty.rb +23 -0
- data/lib/veye/project/project_licence_table.rb +29 -0
- data/lib/veye/project/project_pretty.rb +28 -0
- data/lib/veye/project/project_table.rb +30 -0
- data/lib/veye/project.rb +11 -0
- data/lib/veye/service.rb +14 -0
- data/lib/veye/user/favorite_csv.rb +28 -0
- data/lib/veye/user/favorite_json.rb +14 -0
- data/lib/veye/user/favorite_pretty.rb +25 -0
- data/lib/veye/user/favorite_table.rb +28 -0
- data/lib/veye/user/me.rb +75 -0
- data/lib/veye/user/profile_csv.rb +21 -0
- data/lib/veye/user/profile_json.rb +14 -0
- data/lib/veye/user/profile_pretty.rb +31 -0
- data/lib/veye/user/profile_table.rb +34 -0
- data/lib/veye/user.rb +7 -0
- data/lib/veye/version.rb +13 -0
- data/lib/veye.rb +82 -0
- data/test/default_test.rb +14 -0
- data/test/files/Gemfile +20 -0
- data/test/files/maven-1.0.1.pom +128 -0
- data/test/test_helper.rb +9 -0
- data/veye.rdoc +5 -0
- metadata +229 -0
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
ZDYwMzRlOWM5ZTI0MDI5OTMyNTIzYTVjMDhmYjRlYWJhYjE0YzM3OA==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
N2QyYWE5NmZjMzgwODg1MDlkMjNjM2Q5YjgxZWE1ZjI0OTc4YjIwOQ==
|
7
|
+
SHA512:
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
YWI3ZmZlYWY4YmY0YzY1MTUzMzUxYjkwOWY1OTllODhhZjZjYTMzOTE1MDJl
|
10
|
+
NDRmOWQ2NjA3OWY1N2E5YWY5NzJjY2YyOTRhNjY4YmQyMTVkYmI3MTVhZmUx
|
11
|
+
NDdkNmUyMGE0MGI1YjBkMTNhMmM0Njk5MDE3MTA2ODk3ODhhYTc=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
YzZjYWVmZTIyMGU2ZjI4NGY4Y2JkNGFkZGQ1NzIzOTMyMWU2OTU5MDg4NGMy
|
14
|
+
NDRiNDNjYzkxNmUyYzNjZmMwM2FhMzc2ODg0ZTA3YzM0YWM5MjExMzRkMjk1
|
15
|
+
NTg3NWI2YTAwNjQ1YTEyYTM5YmQzZGE5ZTVlZmFlYWE2ZjM1MmM=
|
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,51 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
veye (0.0.2)
|
5
|
+
awesome_print (= 1.2.0)
|
6
|
+
gli (= 2.8.0)
|
7
|
+
rainbow
|
8
|
+
rest-client (= 1.6.7)
|
9
|
+
terminal-table (= 1.4.5)
|
10
|
+
|
11
|
+
GEM
|
12
|
+
remote: https://rubygems.org/
|
13
|
+
specs:
|
14
|
+
aruba (0.5.1)
|
15
|
+
childprocess (~> 0.3.6)
|
16
|
+
cucumber (>= 1.1.1)
|
17
|
+
rspec-expectations (>= 2.7.0)
|
18
|
+
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)
|
23
|
+
builder (>= 2.1.2)
|
24
|
+
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)
|
31
|
+
gli (2.8.0)
|
32
|
+
json (1.7.6)
|
33
|
+
mime-types (1.25)
|
34
|
+
rainbow (1.1.4)
|
35
|
+
rake (10.0.3)
|
36
|
+
rdoc (3.12)
|
37
|
+
json (~> 1.4)
|
38
|
+
rest-client (1.6.7)
|
39
|
+
mime-types (>= 1.16)
|
40
|
+
rspec-expectations (2.12.1)
|
41
|
+
diff-lcs (~> 1.1.3)
|
42
|
+
terminal-table (1.4.5)
|
43
|
+
|
44
|
+
PLATFORMS
|
45
|
+
ruby
|
46
|
+
|
47
|
+
DEPENDENCIES
|
48
|
+
aruba
|
49
|
+
rake
|
50
|
+
rdoc
|
51
|
+
veye!
|
data/README.md
ADDED
@@ -0,0 +1,271 @@
|
|
1
|
+
# Veye
|
2
|
+
|
3
|
+
[VersionEye](http://www.versioneye.com/) is a cross-platform search engine and crowdsourcing app for opensource software libraries.
|
4
|
+
|
5
|
+
* Take advantage of the extended search to find any library you look for.
|
6
|
+
* Follow and track your favorite software packages via RSS feed.
|
7
|
+
* Leave comments and add additional meta information to the libraries to improve the quality of the data.
|
8
|
+
* Contribute to this crowdsourcing project to make the world a better place for software developers.
|
9
|
+
|
10
|
+
|
11
|
+
**veye** is commandline tool to make all this available on command-line and manipulate results with awesome tools and scripts.
|
12
|
+
|
13
|
+
**PS:** Our _premium customers_ can also use offline search. Please send your email to `contact@versioneye.com` to get more information.
|
14
|
+
|
15
|
+
Most endpoints require the api-key, which you can get [here](https://www.versioneye.com/settings/api).
|
16
|
+
|
17
|
+

|
18
|
+
|
19
|
+
|
20
|
+
### Install
|
21
|
+
|
22
|
+
|
23
|
+
```
|
24
|
+
$> gem install veye
|
25
|
+
```
|
26
|
+
|
27
|
+
### Using dev-version
|
28
|
+
|
29
|
+
###### Download source
|
30
|
+
|
31
|
+
```bash
|
32
|
+
$> git clone https://github.com/versioneye/veye.git
|
33
|
+
$> cd veye
|
34
|
+
```
|
35
|
+
|
36
|
+
###### Run without installing
|
37
|
+
```
|
38
|
+
$> bundle
|
39
|
+
$> bundle exec bin/veye ping
|
40
|
+
```
|
41
|
+
|
42
|
+
###### Or build Gem file and install it as global command
|
43
|
+
|
44
|
+
```
|
45
|
+
$> gem build veye.gemspec
|
46
|
+
$> veye help
|
47
|
+
$> veye ping
|
48
|
+
```
|
49
|
+
|
50
|
+
### Initial configuration
|
51
|
+
|
52
|
+
The tool will raise exception when a configuration file is missing. The tool needs configuration file to keep user specific settings and authorization key.
|
53
|
+
|
54
|
+
|
55
|
+
```
|
56
|
+
$> veye initconfig
|
57
|
+
#it creates configuration file for VersionEye CLI
|
58
|
+
$> cat ~/.veye.rc
|
59
|
+
:api_key: <add your key>
|
60
|
+
:server: 127.0.0.1
|
61
|
+
:port: "3000"
|
62
|
+
....
|
63
|
+
```
|
64
|
+
|
65
|
+
# Basic usage
|
66
|
+
|
67
|
+
|
68
|
+
### Check service
|
69
|
+
You can use this service to check does the tool works and tests is our API accessible. This command doesnt need authorization.
|
70
|
+
|
71
|
+
```bash
|
72
|
+
$> veye ping
|
73
|
+
pong
|
74
|
+
```
|
75
|
+
|
76
|
+
### Search packages
|
77
|
+
|
78
|
+
This command opens window to magnificient world of software packages - VersionEye has ~ 200K software libraries and it's reachable via your commandline.
|
79
|
+
|
80
|
+
###### Get command help
|
81
|
+
|
82
|
+
```bash
|
83
|
+
$> veye search help
|
84
|
+
```
|
85
|
+
|
86
|
+
###### Basic package search with language filtering
|
87
|
+
|
88
|
+
```bash
|
89
|
+
$> veye search junit
|
90
|
+
$> veye search -l java
|
91
|
+
$> veye search --language java
|
92
|
+
$> veye search --language-name=java
|
93
|
+
|
94
|
+
#search packages for multiple languages
|
95
|
+
$> veye search --lang=nodejs,php
|
96
|
+
```
|
97
|
+
|
98
|
+
###### Use result paging
|
99
|
+
|
100
|
+
```
|
101
|
+
$> veye search junit --page 2
|
102
|
+
$> veye search junit --page-number=2
|
103
|
+
$> veye search json --lang=r,php --page=2
|
104
|
+
|
105
|
+
#you can cancel pagination with --no-pagination argument
|
106
|
+
$> veye search junit --page 3 --no-pagination
|
107
|
+
```
|
108
|
+
|
109
|
+
###### Use different output format
|
110
|
+
|
111
|
+
**pretty print** - human readable output
|
112
|
+
|
113
|
+
```bash
|
114
|
+
$> veye search json --format=pretty
|
115
|
+
```
|
116
|
+
|
117
|
+

|
118
|
+
|
119
|
+
**csv** - to pipeline output to [awk](http://www.gnu.org/software/gawk/manual/gawk.html)
|
120
|
+
|
121
|
+
```bash
|
122
|
+
$> veye search json --format=csv
|
123
|
+
```
|
124
|
+
|
125
|
+

|
126
|
+
|
127
|
+
**json** - for manipulating results with [jq](http://stedolan.github.com/jq/) .
|
128
|
+
Check out our jq recipes in [wiki](https://github.com/versioneye/veye/wiki/jq-recipes) .
|
129
|
+
|
130
|
+
|
131
|
+
```bash
|
132
|
+
$> veye search json --format=json
|
133
|
+
```
|
134
|
+
|
135
|
+

|
136
|
+
|
137
|
+
**table view**
|
138
|
+
|
139
|
+
```bash
|
140
|
+
$> veye search json --format=table
|
141
|
+
```
|
142
|
+

|
143
|
+
|
144
|
+
|
145
|
+
###### Empty response
|
146
|
+
|
147
|
+
There will be situation, when [VersionEye](http://versioneye.com) dont have information about your search, then you will see similar response on commandline:
|
148
|
+
|
149
|
+
```
|
150
|
+
No results for 'json' with given parameters:
|
151
|
+
{:q=>"json", :lang=>"python", :page=>1}
|
152
|
+
```
|
153
|
+
|
154
|
+
### Global options
|
155
|
+
|
156
|
+
You can override your default global options by adding proper keyword and value.
|
157
|
+
For example to override a number of port, when doing search:
|
158
|
+
|
159
|
+
```
|
160
|
+
$> veye --port=4567 search json --lang=php,nodejs
|
161
|
+
```
|
162
|
+
|
163
|
+
### Package information
|
164
|
+
|
165
|
+
Ok, thats most trickiest part of our tool. You need to prepend a language of package just before product's key. For example, if you have Java package with product key junit/junit, then you have to encode this value as: `java/junit/junit`.
|
166
|
+
|
167
|
+
|
168
|
+
It supports also `--format` flag with same values.
|
169
|
+
|
170
|
+
```
|
171
|
+
$> veye info java/junit/junit
|
172
|
+
Asking information about: junit/junit
|
173
|
+
```
|
174
|
+
|
175
|
+

|
176
|
+
|
177
|
+
|
178
|
+
### Products
|
179
|
+
|
180
|
+
This command has subcommands to control your personal connections with libraries.
|
181
|
+
|
182
|
+
```
|
183
|
+
;;follow some package to add it into your RSS feed
|
184
|
+
$> veye products follow clojure/ztellman/aleph
|
185
|
+
$> veye products unfollow clojure/ztellman/aleph
|
186
|
+
|
187
|
+
;; show the list of products in your's RSS feed
|
188
|
+
$> veye products
|
189
|
+
```
|
190
|
+
|
191
|
+
### Check
|
192
|
+
|
193
|
+
Use `check` command to upload your project file and check the state of dependencies. **NB!** it only shows information about dependencies, if you need also project info, then please use `veye project upload` command.
|
194
|
+
|
195
|
+
```
|
196
|
+
$> veye check test/files/Gemfile
|
197
|
+
```
|
198
|
+
|
199
|
+
### Project
|
200
|
+
|
201
|
+
The `project` command holds a multiple subcommands for working with our project files.
|
202
|
+
|
203
|
+
###### show existing projects
|
204
|
+
|
205
|
+
```
|
206
|
+
$> veye projects list
|
207
|
+
$> veye projects --format=table
|
208
|
+
```
|
209
|
+
|
210
|
+
###### show information of specific project
|
211
|
+
|
212
|
+
A `show` command expects a proper project_key, which you can from the list of already existing projects.
|
213
|
+
|
214
|
+
```
|
215
|
+
$> veye projects show rubygem_gemfile_1
|
216
|
+
$> veye projects show rubygem_gemfile_1 --format=table
|
217
|
+
```
|
218
|
+
|
219
|
+
###### upload project file
|
220
|
+
|
221
|
+
Use `upload` command to create new project. This command expects proper filepath to the file and the file is smaller than 500KB. VersionEye supports currently 8 different package managers(*Leiningen, Gem, Maven, NPM, Packagist, Pip, Setup.py, R*), Bower and Obj-C is already on pipeline.
|
222
|
+
|
223
|
+
```
|
224
|
+
$> veye projects upload test/files/Gemfile
|
225
|
+
$> veye projects upload test/files/maven.pom
|
226
|
+
```
|
227
|
+
|
228
|
+
###### re-upload project file for existing project
|
229
|
+
|
230
|
+
You can use `update` command to update the information of already existing project.
|
231
|
+
This command expects correct project_key and a path to file.
|
232
|
+
|
233
|
+
```
|
234
|
+
$> veye projects update rubygem_gemfile_1 test/files/Gemfile
|
235
|
+
$> veye projects update rubygem_gemfile_1 test/files/Gemfile --format=table
|
236
|
+
```
|
237
|
+
|
238
|
+
###### Delete project
|
239
|
+
|
240
|
+
This command removes the specified project from your project's list.
|
241
|
+
|
242
|
+
```
|
243
|
+
$> veye projects delete rubygem_gemfile_1
|
244
|
+
Deleted
|
245
|
+
```
|
246
|
+
|
247
|
+
###### Licences
|
248
|
+
|
249
|
+
`licence` command returns all licenses used in your project.
|
250
|
+
|
251
|
+
```
|
252
|
+
$> veye projects licences rubygem_gemfile_1 --format=table
|
253
|
+
```
|
254
|
+
|
255
|
+
|
256
|
+
### Me
|
257
|
+
|
258
|
+
`me` command returns short overview of your profile and your current payment plan.
|
259
|
+
|
260
|
+
```
|
261
|
+
$> veye me
|
262
|
+
```
|
263
|
+
|
264
|
+
####### Favorite packages
|
265
|
+
|
266
|
+
`me` command has a `favorite` command, which returns all packages you're currently following.
|
267
|
+
|
268
|
+
```
|
269
|
+
$> veye me favorites
|
270
|
+
$> veye me favorites --page=2
|
271
|
+
```
|
data/README.rdoc
ADDED
data/Rakefile
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
require 'rake/clean'
|
2
|
+
require 'rubygems'
|
3
|
+
require 'rubygems/package_task'
|
4
|
+
require 'rdoc/task'
|
5
|
+
require 'cucumber'
|
6
|
+
require 'cucumber/rake/task'
|
7
|
+
Rake::RDocTask.new do |rd|
|
8
|
+
rd.main = "README.rdoc"
|
9
|
+
rd.rdoc_files.include("README.rdoc","lib/**/*.rb","bin/**/*")
|
10
|
+
rd.title = 'VersionEye Commandline Tool'
|
11
|
+
end
|
12
|
+
|
13
|
+
spec = eval(File.read('veye.gemspec'))
|
14
|
+
|
15
|
+
Gem::PackageTask.new(spec) do |pkg|
|
16
|
+
end
|
17
|
+
CUKE_RESULTS = 'results.html'
|
18
|
+
CLEAN << CUKE_RESULTS
|
19
|
+
desc 'Run features'
|
20
|
+
Cucumber::Rake::Task.new(:features) do |t|
|
21
|
+
opts = "features --format html -o #{CUKE_RESULTS} --format progress -x"
|
22
|
+
opts += " --tags #{ENV['TAGS']}" if ENV['TAGS']
|
23
|
+
t.cucumber_opts = opts
|
24
|
+
t.fork = false
|
25
|
+
end
|
26
|
+
|
27
|
+
desc 'Run features tagged as work-in-progress (@wip)'
|
28
|
+
Cucumber::Rake::Task.new('features:wip') do |t|
|
29
|
+
tag_opts = ' --tags ~@pending'
|
30
|
+
tag_opts = ' --tags @wip'
|
31
|
+
t.cucumber_opts = "features --format html -o #{CUKE_RESULTS} --format pretty -x -s#{tag_opts}"
|
32
|
+
t.fork = false
|
33
|
+
end
|
34
|
+
|
35
|
+
task :cucumber => :features
|
36
|
+
task 'cucumber:wip' => 'features:wip'
|
37
|
+
task :wip => 'features:wip'
|
38
|
+
require 'rake/testtask'
|
39
|
+
Rake::TestTask.new do |t|
|
40
|
+
t.libs << "test"
|
41
|
+
t.test_files = FileList['test/*_test.rb']
|
42
|
+
end
|
43
|
+
|
44
|
+
task :default => [:test,:features]
|