veye 0.0.9 → 0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (98) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +80 -29
  3. data/Makefile +6 -0
  4. data/README.md +12 -224
  5. data/bin/veye +13 -22
  6. data/changelogs.md +95 -0
  7. data/lib/veye/api/base_resource.rb +8 -9
  8. data/lib/veye/api/github.rb +77 -0
  9. data/lib/veye/api/json_response.rb +21 -25
  10. data/lib/veye/api/package.rb +98 -0
  11. data/lib/veye/api/project.rb +107 -0
  12. data/lib/veye/api/resource.rb +9 -8
  13. data/lib/veye/api/service.rb +15 -0
  14. data/lib/veye/api/user.rb +32 -0
  15. data/lib/veye/api.rb +22 -2
  16. data/lib/veye/base_executor.rb +13 -9
  17. data/lib/veye/github/delete.rb +10 -20
  18. data/lib/veye/github/import.rb +7 -14
  19. data/lib/veye/github/info.rb +6 -12
  20. data/lib/veye/github/list.rb +9 -19
  21. data/lib/veye/github/search.rb +9 -17
  22. data/lib/veye/github/sync.rb +9 -18
  23. data/lib/veye/github.rb +1 -1
  24. data/lib/veye/helpers/format_helpers.rb +15 -5
  25. data/lib/veye/package/follow.rb +24 -47
  26. data/lib/veye/package/info.rb +8 -25
  27. data/lib/veye/package/references.rb +9 -36
  28. data/lib/veye/package/search.rb +14 -24
  29. data/lib/veye/package.rb +14 -6
  30. data/lib/veye/pagination.rb +2 -0
  31. data/lib/veye/project/check.rb +39 -117
  32. data/lib/veye/project/license.rb +23 -0
  33. data/lib/veye/project.rb +4 -3
  34. data/lib/veye/service.rb +13 -17
  35. data/lib/veye/user/me.rb +11 -30
  36. data/lib/veye/user.rb +2 -1
  37. data/lib/veye/version.rb +1 -1
  38. data/lib/veye/views/github/info_csv.rb +3 -3
  39. data/lib/veye/views/github/info_json.rb +4 -0
  40. data/lib/veye/views/github/list_csv.rb +5 -3
  41. data/lib/veye/views/github/list_pretty.rb +2 -2
  42. data/lib/veye/views/github/list_table.rb +3 -2
  43. data/lib/veye/views/package/info_pretty.rb +1 -1
  44. data/lib/veye/views/package/search_csv.rb +2 -3
  45. data/lib/veye/views/package/search_table.rb +1 -3
  46. data/lib/veye/views/package.rb +1 -1
  47. data/lib/veye/views/project/licence_csv.rb +3 -3
  48. data/lib/veye/views/project/licence_json.rb +1 -1
  49. data/lib/veye/views/project/licence_pretty.rb +1 -1
  50. data/lib/veye/views/project/licence_table.rb +3 -3
  51. data/lib/veye/views/user/profile_table.rb +4 -1
  52. data/lib/veye/views/user.rb +3 -1
  53. data/lib/veye.rb +29 -61
  54. data/test/api/github_test.rb +84 -0
  55. data/test/api/package_test.rb +80 -0
  56. data/test/api/project_test.rb +118 -0
  57. data/test/api/service_test.rb +15 -0
  58. data/test/api/user_test.rb +30 -0
  59. data/test/fixtures/vcr_cassettes/github_delete.yml +48 -0
  60. data/test/fixtures/vcr_cassettes/github_import.yml +53 -0
  61. data/test/fixtures/vcr_cassettes/github_info.yml +49 -0
  62. data/test/fixtures/vcr_cassettes/github_list.yml +80 -0
  63. data/test/fixtures/vcr_cassettes/github_sync.yml +48 -0
  64. data/test/fixtures/vcr_cassettes/package_follow.yml +52 -0
  65. data/test/fixtures/vcr_cassettes/package_follow_status.yml +48 -0
  66. data/test/fixtures/vcr_cassettes/package_info.yml +56 -0
  67. data/test/fixtures/vcr_cassettes/package_reference.yml +46 -0
  68. data/test/fixtures/vcr_cassettes/package_search.yml +46 -0
  69. data/test/fixtures/vcr_cassettes/package_unfollow.yml +48 -0
  70. data/test/fixtures/vcr_cassettes/project_delete.yml +48 -0
  71. data/test/fixtures/vcr_cassettes/project_get.yml +49 -0
  72. data/test/fixtures/vcr_cassettes/project_license.yml +49 -0
  73. data/test/fixtures/vcr_cassettes/project_list.yml +48 -0
  74. data/test/fixtures/vcr_cassettes/project_update.yml +105 -0
  75. data/test/fixtures/vcr_cassettes/project_upload.yml +104 -0
  76. data/test/fixtures/vcr_cassettes/services_ping.yml +46 -0
  77. data/test/fixtures/vcr_cassettes/user_get_favorites.yml +48 -0
  78. data/test/fixtures/vcr_cassettes/user_get_profile.yml +48 -0
  79. data/test/github_delete_test.rb +31 -0
  80. data/test/github_import_test.rb +94 -0
  81. data/test/github_info_test.rb +73 -0
  82. data/test/github_list_test.rb +84 -0
  83. data/test/github_sync_test.rb +20 -0
  84. data/test/package_follow_test.rb +38 -0
  85. data/test/package_info_test.rb +73 -0
  86. data/test/package_reference_test.rb +67 -0
  87. data/test/package_search_test.rb +66 -0
  88. data/test/project_check_test.rb +326 -0
  89. data/test/project_license_test.rb +72 -0
  90. data/test/service_test.rb +29 -0
  91. data/test/test_helper.rb +29 -4
  92. data/test/user_me_test.rb +126 -0
  93. data/veye.gemspec +45 -0
  94. metadata +163 -37
  95. data/DEPENDENCIES.md +0 -25
  96. data/lib/veye/helpers/repo_helpers.rb +0 -5
  97. data/lib/veye/project/licence.rb +0 -38
  98. data/test/default_test.rb +0 -14
@@ -0,0 +1,80 @@
1
+ require_relative '../test_helper'
2
+
3
+ class PackageTest < Minitest::Test
4
+ def setup
5
+ init_environment
6
+ @api_key = "ba7d93beb5de7820764e"
7
+ end
8
+
9
+ def test_info_api_call
10
+ VCR.use_cassette('package_info') do
11
+ res = Veye::API::Package::get_package('veye', 'ruby')
12
+
13
+ assert_equal 200, res.code
14
+ assert_equal true, res.success
15
+ assert_equal "veye", res.data["name"]
16
+ assert_equal "ruby", res.data["language"]
17
+ assert_equal "veye", res.data["prod_key"]
18
+ end
19
+ end
20
+
21
+ def test_search_api_call
22
+ VCR.use_cassette('package_search') do
23
+ res = Veye::API::Package.search('veye')
24
+ refute_nil res
25
+ assert_equal true, res.success
26
+ assert_equal 200, res.code
27
+ refute_nil res.data["results"], "Search results are empty"
28
+ dt = res.data["results"].first
29
+ assert_equal "veye", dt["name"]
30
+ assert_equal "ruby", dt["language"]
31
+ assert_equal "veye", dt["prod_key"]
32
+ assert_equal "RubyGem", dt["prod_type"]
33
+ end
34
+ end
35
+
36
+ def test_get_follow_status_api_call
37
+ VCR.use_cassette('package_follow_status') do
38
+ res = Veye::API::Package.get_follow_status(@api_key, 'ruby', 'ruby')
39
+ refute_nil res
40
+ assert_equal 200, res.code
41
+ assert_equal true, res.success
42
+ assert_equal "ruby", res.data["prod_key"]
43
+ assert_equal false, res.data["follows"]
44
+ end
45
+ end
46
+
47
+ def test_follow_api_call
48
+ VCR.use_cassette('package_follow') do
49
+ res = Veye::API::Package.follow(@api_key, 'ruby', 'ruby')
50
+ refute_nil res
51
+ assert_equal 201, res.code
52
+ assert_equal true, res.success
53
+ assert_equal "ruby", res.data["prod_key"]
54
+ assert_equal true, res.data["follows"]
55
+ end
56
+ end
57
+
58
+ def test_unfollow_api_call
59
+ VCR.use_cassette('package_unfollow') do
60
+ res = Veye::API::Package.unfollow(@api_key, 'ruby', 'ruby')
61
+ refute_nil res
62
+ assert_equal 200, res.code
63
+ assert_equal true, res.success
64
+ assert_equal "ruby", res.data["prod_key"]
65
+ assert_equal false, res.data["follows"]
66
+ end
67
+ end
68
+
69
+ def test_reference_api_call
70
+ VCR.use_cassette('package_reference') do
71
+ res = Veye::API::Package.get_references('ruby', 'ruby')
72
+ refute_nil res
73
+ assert_equal 200, res.code
74
+ assert_equal true, res.success
75
+ assert_equal "acts_as_dasherize_vanity", res.data['results'].first.fetch("name", nil)
76
+ end
77
+ end
78
+
79
+
80
+ end
@@ -0,0 +1,118 @@
1
+ require 'test_helper'
2
+
3
+ class ProjectTest < Minitest::Test
4
+ def setup
5
+ init_environment
6
+ @api_key = 'ba7d93beb5de7820764e'
7
+ @test_file = "test/files/maven-1.0.1.pom.xml"
8
+ @project_key = "maven2_openejb_maven_plugins_1"
9
+ end
10
+
11
+ def test_get_list_api_call
12
+ VCR.use_cassette('project_list') do
13
+ res = Veye::API::Project.get_list(@api_key)
14
+
15
+ assert_equal 200, res.code
16
+ assert_equal true, res.success
17
+
18
+ proj = res.data.first
19
+ assert_equal "bugtraqer", proj["name"]
20
+ assert_equal "lein_project_clj_1", proj["project_key"]
21
+ assert_equal "Lein", proj["project_type"]
22
+ assert_equal false, proj["public"]
23
+ assert_equal "upload", proj["source"]
24
+ end
25
+ end
26
+
27
+ def test_check_file
28
+ assert_match(
29
+ /.*veye\/test\/files\/maven-1\.0\.1\.pom\.xml$/,
30
+ Veye::API::Project.check_file(@test_file)
31
+ )
32
+
33
+ assert_nil(Veye::API::Project.check_file("files/nO_such_file.exe"))
34
+ end
35
+
36
+ def test_upload_api_call_when_file_doesnt_exists
37
+ assert_nil Veye::API::Project.upload(@api_key, "files/nofile.erb")
38
+ end
39
+
40
+ def test_upload_api_call_when_file_exists
41
+ VCR.use_cassette('project_upload') do
42
+ res = Veye::API::Project.upload(@api_key, @test_file)
43
+ refute_nil res
44
+ assert_equal 201, res.code
45
+ assert_equal true, res.success
46
+ assert_equal "maven2_openejb_maven_plugins_1", res.data["project_key"]
47
+ assert_equal "OpenEJB :: Maven Plugins", res.data["name"]
48
+ assert_equal "Maven2", res.data["project_type"]
49
+ assert_equal true, res.data["public"]
50
+ assert_equal "API", res.data["source"]
51
+ end
52
+ end
53
+
54
+ def test_update_api_call
55
+ VCR.use_cassette('project_update') do
56
+ res = Veye::API::Project.update(@api_key, @project_key, @test_file)
57
+ refute_nil res
58
+ assert_equal 201, res.code
59
+ assert_equal true, res.success
60
+ proj = res.data
61
+ assert_equal @project_key, proj["project_key"]
62
+ assert_equal "OpenEJB :: Maven Plugins", proj["name"]
63
+ assert_equal "Maven2", proj["project_type"]
64
+ assert_equal true, proj["public"]
65
+ assert_equal "API", proj["source"]
66
+ assert_equal 11, proj["dependencies"].count
67
+ end
68
+ end
69
+
70
+ def test_get_project_api_call
71
+ VCR.use_cassette("project_get") do
72
+ res = Veye::API::Project.get_project(@api_key, @project_key)
73
+ refute_nil res
74
+ assert_equal true, res.success
75
+ assert_equal 200, res.code
76
+
77
+ proj = res.data
78
+ assert_equal @project_key, proj["project_key"]
79
+ assert_equal "OpenEJB :: Maven Plugins", proj["name"]
80
+ assert_equal "Maven2", proj["project_type"]
81
+ assert_equal true, proj["public"]
82
+ assert_equal "API", proj["source"]
83
+ assert_equal 11, proj["dependencies"].count
84
+ end
85
+ end
86
+
87
+ def test_delete_project_api_call
88
+ VCR.use_cassette("project_delete") do
89
+ res = Veye::API::Project.delete_project(@api_key, @project_key)
90
+ refute_nil res
91
+ assert_equal 200, res.code
92
+ assert_equal true, res.success
93
+ assert_equal(
94
+ {"success"=>true, "message"=>"Project deleted successfully."},
95
+ res.data
96
+ )
97
+ end
98
+ end
99
+
100
+ def test_get_licenses_api_call
101
+ VCR.use_cassette('project_license') do
102
+ res = Veye::API::Project.get_licenses(@api_key, 'rubygem_gemfile_lock_1')
103
+ assert_equal 200, res.code
104
+ assert_equal true, res.success
105
+ assert_equal true, res.data["success"]
106
+
107
+ licenses = res.data["licenses"]
108
+ unknown_license = licenses["unknown"].first
109
+ assert_equal({"name" => "gli" , "prod_key" => "gli" }, unknown_license)
110
+
111
+ ruby_license = licenses["Ruby"].first
112
+ assert_equal({ "name" => "json" , "prod_key" => "json"}, ruby_license)
113
+ end
114
+ end
115
+
116
+
117
+
118
+ end
@@ -0,0 +1,15 @@
1
+ require 'test_helper'
2
+
3
+ class ServiceTest < Minitest::Test
4
+ def setup
5
+ init_environment
6
+ end
7
+
8
+ def test_ping_api_call
9
+ VCR.use_cassette('services_ping') do
10
+ resp = Veye::API::Service.ping
11
+ assert_equal 200, resp.code
12
+ assert_equal 'pong', resp.data['message']
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,30 @@
1
+ require 'test_helper'
2
+
3
+ class UserTest < Minitest::Test
4
+ def setup
5
+ init_environment
6
+ @api_key = "ba7d93beb5de7820764e"
7
+ end
8
+
9
+ def test_get_profile_api_call
10
+ VCR.use_cassette('user_get_profile') do
11
+ res = Veye::API::User.get_profile(@api_key)
12
+ refute_nil res
13
+ assert_equal 200, res.code
14
+ assert_equal true, res.success
15
+ assert_equal "timgluz", res.data["username"]
16
+ assert_equal "timgluz@gmail.com", res.data["email"]
17
+ end
18
+ end
19
+
20
+ def test_get_favorites_api_call
21
+ VCR.use_cassette("user_get_favorites") do
22
+ res = Veye::API::User.get_favorites(@api_key)
23
+ refute_nil res
24
+ assert_equal 200, res.code
25
+ assert_equal true, res.success
26
+ assert_equal "h2", res.data['favorites'].first["name"]
27
+ end
28
+ end
29
+
30
+ end
@@ -0,0 +1,48 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: delete
5
+ uri: https://www.versioneye.com/api/v2/github/versioneye:veye?api_key=ba7d93beb5de7820764e&branch=master
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - "*/*; q=0.5, application/xml"
12
+ Accept-Encoding:
13
+ - gzip, deflate
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx/1.4.6 (Ubuntu)
23
+ Date:
24
+ - Fri, 14 Aug 2015 17:18:24 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Content-Length:
28
+ - '16'
29
+ Connection:
30
+ - keep-alive
31
+ Strict-Transport-Security:
32
+ - max-age=31536000
33
+ Set-Cookie:
34
+ - api_key=ba7d93beb5de7820764e; secure
35
+ Etag:
36
+ - W/"7363e85fe9edee6f053a4b319588c086"
37
+ Cache-Control:
38
+ - max-age=0, private, must-revalidate
39
+ X-Request-Id:
40
+ - ada5986b-de47-4f47-9a78-32ad6620bd6d
41
+ X-Runtime:
42
+ - '0.173011'
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"success":true}'
46
+ http_version:
47
+ recorded_at: Fri, 14 Aug 2015 17:18:15 GMT
48
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,53 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://www.versioneye.com/api/v2/github/versioneye:veye
6
+ body:
7
+ encoding: US-ASCII
8
+ string: api_key=ba7d93beb5de7820764e&branch=master&file=Gemfile.lock
9
+ headers:
10
+ Accept:
11
+ - "*/*; q=0.5, application/xml"
12
+ Accept-Encoding:
13
+ - gzip, deflate
14
+ Content-Length:
15
+ - '60'
16
+ Content-Type:
17
+ - application/x-www-form-urlencoded
18
+ User-Agent:
19
+ - Ruby
20
+ response:
21
+ status:
22
+ code: 201
23
+ message: Created
24
+ headers:
25
+ Server:
26
+ - nginx/1.4.6 (Ubuntu)
27
+ Date:
28
+ - Fri, 14 Aug 2015 15:13:33 GMT
29
+ Content-Type:
30
+ - application/json
31
+ Content-Length:
32
+ - '821'
33
+ Connection:
34
+ - keep-alive
35
+ Strict-Transport-Security:
36
+ - max-age=31536000
37
+ Set-Cookie:
38
+ - api_key=ba7d93beb5de7820764e; secure
39
+ Etag:
40
+ - W/"2f06df5540d8ed9db0699f432ca1c462"
41
+ Cache-Control:
42
+ - max-age=0, private, must-revalidate
43
+ X-Request-Id:
44
+ - 982539e7-0de1-4454-aa63-5ee5e4aaf49b
45
+ X-Runtime:
46
+ - '5.444198'
47
+ body:
48
+ encoding: UTF-8
49
+ string: '{"repo":{"name":"veye","fullname":"versioneye/veye","language":"ruby","owner_login":"versioneye","owner_type":"organization","description":"VersionEye
50
+ command line tool ","private":false,"fork":false,"branches":null,"git_url":"git://github.com/versioneye/veye.git","html_url":"https://github.com/versioneye/veye","created_at":"2012-12-27T11:15:03.000+00:00","cached_at":"2015-08-13T10:42:23.754+00:00","size":706,"homepage":null},"imported_projects":[{"id":"55ce0593cb3745000b00369d","project_key":"rubygem_versioneye_veye_1","name":"versioneye/veye","project_type":"RubyGem","public":true,"private_scm":false,"period":"daily","source":"github","dep_number":37,"out_number":7,"licenses_red":0,"licenses_unknown":3,"created_at":"2015-08-14T15:13:23.112Z","updated_at":"2015-08-14T15:13:24.471Z","license_whitelist":null}]}'
51
+ http_version:
52
+ recorded_at: Fri, 14 Aug 2015 15:13:24 GMT
53
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,49 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://www.versioneye.com/api/v2/github/versioneye:veye?api_key=ba7d93beb5de7820764e
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - "*/*; q=0.5, application/xml"
12
+ Accept-Encoding:
13
+ - gzip, deflate
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx/1.4.6 (Ubuntu)
23
+ Date:
24
+ - Sun, 09 Aug 2015 08:24:50 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Content-Length:
28
+ - '472'
29
+ Connection:
30
+ - keep-alive
31
+ Strict-Transport-Security:
32
+ - max-age=31536000
33
+ Set-Cookie:
34
+ - api_key=ba7d93beb5de7820764e; secure
35
+ Etag:
36
+ - W/"406a9cdb2b9d8e681a09871e01c96a18"
37
+ Cache-Control:
38
+ - max-age=0, private, must-revalidate
39
+ X-Request-Id:
40
+ - 2b7a1b05-fc6c-4cf6-97c8-104abf967792
41
+ X-Runtime:
42
+ - '0.045445'
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"repo":{"name":"veye","fullname":"versioneye/veye","language":"ruby","owner_login":"versioneye","owner_type":"organization","description":"VersionEye
46
+ command line tool ","private":false,"fork":false,"branches":["master","references"],"git_url":"git://github.com/versioneye/veye.git","html_url":"https://github.com/versioneye/veye","created_at":"2012-12-27T11:15:03.000+00:00","cached_at":"2015-07-26T19:11:37.810+00:00","size":706,"homepage":null},"imported_projects":[]}'
47
+ http_version:
48
+ recorded_at: Sun, 09 Aug 2015 08:22:18 GMT
49
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,80 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://www.versioneye.com/api/v2/github?api_key=ba7d93beb5de7820764e&page=1&private=false
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - "*/*; q=0.5, application/xml"
12
+ Accept-Encoding:
13
+ - gzip, deflate
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx/1.4.6 (Ubuntu)
23
+ Date:
24
+ - Mon, 27 Jul 2015 18:19:35 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Content-Length:
28
+ - '7244'
29
+ Connection:
30
+ - keep-alive
31
+ Strict-Transport-Security:
32
+ - max-age=31536000
33
+ Set-Cookie:
34
+ - api_key=ba7d93beb5de7820764e; secure
35
+ Etag:
36
+ - W/"abb355b3a177210b07044e8c618a58e7"
37
+ Cache-Control:
38
+ - max-age=0, private, must-revalidate
39
+ X-Request-Id:
40
+ - 34cc6040-bcd7-4cfc-a1b8-ed7c8f384576
41
+ X-Runtime:
42
+ - '0.132016'
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"repos":[{"name":"versioneye_update","fullname":"versioneye/versioneye_update","language":"shell","owner_login":"versioneye","owner_type":"organization","description":"Update
46
+ an existing project at VersionEye via the API with CURL","private":false,"fork":false,"branches":null},{"name":"versioneye_license_check","fullname":"versioneye/versioneye_license_check","language":"shell","owner_login":"versioneye","owner_type":"organization","description":"Shell
47
+ script for checking licenses quickly","private":false,"fork":false,"branches":null},{"name":"docker_web_ui","fullname":"versioneye/docker_web_ui","language":"ruby","owner_login":"versioneye","owner_type":"organization","description":"Web
48
+ Interface for the Docker Remote API","private":false,"fork":false,"branches":null},{"name":"versioneye-enterprise","fullname":"versioneye/versioneye-enterprise","language":"","owner_login":"versioneye","owner_type":"organization","description":"Ticket
49
+ System for VersionEye Enterprise","private":false,"fork":false,"branches":null},{"name":"Chart.js","fullname":"versioneye/Chart.js","language":"javascript","owner_login":"versioneye","owner_type":"organization","description":"Simple
50
+ HTML5 Charts using the \u003ccanvas\u003e tag","private":false,"fork":true,"branches":null},{"name":"jquery","fullname":"versioneye/jquery","language":"javascript","owner_login":"versioneye","owner_type":"organization","description":"jQuery
51
+ JavaScript Library","private":false,"fork":true,"branches":null},{"name":"backbone","fullname":"versioneye/backbone","language":"javascript","owner_login":"versioneye","owner_type":"organization","description":"Give
52
+ your JS App some Backbone with Models, Views, Collections, and Events","private":false,"fork":true,"branches":null},{"name":"versioneye_maven_plugin","fullname":"versioneye/versioneye_maven_plugin","language":"java","owner_login":"versioneye","owner_type":"organization","description":"Maven
53
+ Plugin for VersionEye","private":false,"fork":false,"branches":null},{"name":"naturalsorter","fullname":"versioneye/naturalsorter","language":"ruby","owner_login":"versioneye","owner_type":"organization","description":"Sorting
54
+ an array in a natural way","private":false,"fork":false,"branches":null},{"name":"dependency_wheel","fullname":"versioneye/dependency_wheel","language":"javascript","owner_login":"versioneye","owner_type":"organization","description":"JS
55
+ Lib to visualize recursive dependencies for software libraries. ","private":false,"fork":false,"branches":null},{"name":"veye","fullname":"versioneye/veye","language":"ruby","owner_login":"versioneye","owner_type":"organization","description":"VersionEye
56
+ command line tool ","private":false,"fork":false,"branches":null},{"name":"versioneye_issues","fullname":"versioneye/versioneye_issues","language":"","owner_login":"versioneye","owner_type":"organization","description":"open
57
+ tickets system for http://www.versioneye.com","private":false,"fork":false,"branches":null},{"name":"GoCast","fullname":"timoh/GoCast","language":"python","owner_login":"timoh","owner_type":"team","description":"","private":false,"fork":false,"branches":null},{"name":"tsp","fullname":"timgluz/tsp","language":"clojure","owner_login":"timgluz","owner_type":"user","description":"Expertiments
58
+ for Travelling Salesman problem in Clojure; currently just SimulatedAnnealing
59
+ and SVG visualization;","private":false,"fork":false,"branches":null},{"name":"timbre","fullname":"timgluz/timbre","language":"clojure","owner_login":"timgluz","owner_type":"user","description":"Clojure
60
+ logging \u0026 profiling library","private":false,"fork":true,"branches":null},{"name":"tikkba","fullname":"timgluz/tikkba","language":"clojure","owner_login":"timgluz","owner_type":"user","description":"Tikkba
61
+ is a Clojure library for the creation and the dynamic modification of SVG
62
+ documents.","private":false,"fork":true,"branches":null},{"name":"starter-cljmml","fullname":"timgluz/starter-cljmml","language":"clojure","owner_login":"timgluz","owner_type":"user","description":"Example
63
+ project to start MyMediaLite library via ClojureCLR","private":false,"fork":false,"branches":null},{"name":"sneakers","fullname":"timgluz/sneakers","language":"ruby","owner_login":"timgluz","owner_type":"user","description":"A
64
+ fast background processing framework for Ruby and RabbitMQ","private":false,"fork":true,"branches":null},{"name":"ShareFest","fullname":"timgluz/ShareFest","language":"javascript","owner_login":"timgluz","owner_type":"user","description":"Web
65
+ based p2p file sharing built on WebRTC Data Channels API","private":false,"fork":true,"branches":null},{"name":"shaman-movielens","fullname":"timgluz/shaman-movielens","language":"clojure","owner_login":"timgluz","owner_type":"user","description":"simple
66
+ example to demo shaman library;","private":false,"fork":false,"branches":null},{"name":"shaman","fullname":"timgluz/shaman","language":"clojure","owner_login":"timgluz","owner_type":"user","description":"clojure
67
+ client for Prediction.IO","private":false,"fork":false,"branches":null},{"name":"reagent-cursor","fullname":"timgluz/reagent-cursor","language":"clojure","owner_login":"timgluz","owner_type":"user","description":"Optional
68
+ cursors library for Reagent","private":false,"fork":true,"branches":null},{"name":"PredictionIO-Docs","fullname":"timgluz/PredictionIO-Docs","language":"css","owner_login":"timgluz","owner_type":"user","description":"PredictionIO
69
+ Documentation Project","private":false,"fork":true,"branches":null},{"name":"mongoid","fullname":"timgluz/mongoid","language":"ruby","owner_login":"timgluz","owner_type":"user","description":"Ruby
70
+ ODM framework for MongoDB","private":false,"fork":true,"branches":null},{"name":"monger.docs","fullname":"timgluz/monger.docs","language":"css","owner_login":"timgluz","owner_type":"user","description":"Documentation
71
+ site for Monger","private":false,"fork":true,"branches":null},{"name":"monger","fullname":"timgluz/monger","language":"clojure","owner_login":"timgluz","owner_type":"user","description":"Monger
72
+ is an idiomatic Clojure MongoDB driver for a more civilized age: with sane
73
+ defaults, batteries included, well documented, very fast","private":false,"fork":true,"branches":null},{"name":"mallet-lda","fullname":"timgluz/mallet-lda","language":"clojure","owner_login":"timgluz","owner_type":"user","description":"a
74
+ Clojure wrapper over the LDA topic modeling implementation in MALLET","private":false,"fork":true,"branches":null},{"name":"lein-simpleton","fullname":"timgluz/lein-simpleton","language":"clojure","owner_login":"timgluz","owner_type":"user","description":"A
75
+ Leiningen plugin to serve files out of a local directory -- very similar to
76
+ Python''s SimpleHTTPServer","private":false,"fork":true,"branches":null},{"name":"jubatus","fullname":"timgluz/jubatus","language":"c++","owner_login":"timgluz","owner_type":"user","description":"Framework
77
+ and Library for Distributed Online Machine Learning","private":false,"fork":true,"branches":null},{"name":"instaparse","fullname":"timgluz/instaparse","language":"clojure","owner_login":"timgluz","owner_type":"user","description":"","private":false,"fork":true,"branches":null}],"paging":{"current_page":1,"per_page":30,"total_pages":3,"total_entries":69}}'
78
+ http_version:
79
+ recorded_at: Mon, 27 Jul 2015 18:17:09 GMT
80
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,48 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://www.versioneye.com/api/v2/github/sync?api_key=ba7d93beb5de7820764e&force=false
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - "*/*; q=0.5, application/xml"
12
+ Accept-Encoding:
13
+ - gzip, deflate
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx/1.4.6 (Ubuntu)
23
+ Date:
24
+ - Mon, 27 Jul 2015 17:58:00 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Content-Length:
28
+ - '20'
29
+ Connection:
30
+ - keep-alive
31
+ Strict-Transport-Security:
32
+ - max-age=31536000
33
+ Set-Cookie:
34
+ - api_key=ba7d93beb5de7820764e; secure
35
+ Etag:
36
+ - W/"8fa085613a894ef3df0d3b493671a171"
37
+ Cache-Control:
38
+ - max-age=0, private, must-revalidate
39
+ X-Request-Id:
40
+ - bf003b7a-3dc3-4d31-9a03-6abbb3ca5b7c
41
+ X-Runtime:
42
+ - '0.108083'
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"status":"running"}'
46
+ http_version:
47
+ recorded_at: Mon, 27 Jul 2015 17:55:34 GMT
48
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,52 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://www.versioneye.com/api/v2/products/ruby/ruby/follow.json
6
+ body:
7
+ encoding: US-ASCII
8
+ string: api_key=ba7d93beb5de7820764e
9
+ headers:
10
+ Accept:
11
+ - "*/*; q=0.5, application/xml"
12
+ Accept-Encoding:
13
+ - gzip, deflate
14
+ Content-Length:
15
+ - '28'
16
+ Content-Type:
17
+ - application/x-www-form-urlencoded
18
+ User-Agent:
19
+ - Ruby
20
+ response:
21
+ status:
22
+ code: 201
23
+ message: Created
24
+ headers:
25
+ Server:
26
+ - nginx/1.4.6 (Ubuntu)
27
+ Date:
28
+ - Sat, 15 Aug 2015 10:46:17 GMT
29
+ Content-Type:
30
+ - application/json
31
+ Content-Length:
32
+ - '55'
33
+ Connection:
34
+ - keep-alive
35
+ Strict-Transport-Security:
36
+ - max-age=31536000
37
+ Set-Cookie:
38
+ - api_key=ba7d93beb5de7820764e; secure
39
+ Etag:
40
+ - W/"9d6323eb43938b708cb2b4b1d86ed307"
41
+ Cache-Control:
42
+ - max-age=0, private, must-revalidate
43
+ X-Request-Id:
44
+ - 8a09f4e7-b74d-4da4-abfd-f08f421adb8c
45
+ X-Runtime:
46
+ - '0.030867'
47
+ body:
48
+ encoding: UTF-8
49
+ string: '{"username":"timgluz","prod_key":"ruby","follows":true}'
50
+ http_version:
51
+ recorded_at: Sat, 15 Aug 2015 10:46:07 GMT
52
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,48 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://www.versioneye.com/api/v2/products/ruby/ruby/follow.json?api_key=ba7d93beb5de7820764e
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - "*/*; q=0.5, application/xml"
12
+ Accept-Encoding:
13
+ - gzip, deflate
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx/1.4.6 (Ubuntu)
23
+ Date:
24
+ - Sat, 15 Aug 2015 10:46:16 GMT
25
+ Content-Type:
26
+ - application/json
27
+ Content-Length:
28
+ - '56'
29
+ Connection:
30
+ - keep-alive
31
+ Strict-Transport-Security:
32
+ - max-age=31536000
33
+ Set-Cookie:
34
+ - api_key=ba7d93beb5de7820764e; secure
35
+ Etag:
36
+ - W/"8ab7070f3b063b2378ca199ebe369d32"
37
+ Cache-Control:
38
+ - max-age=0, private, must-revalidate
39
+ X-Request-Id:
40
+ - b8df0aa6-b70d-4a6c-a4d3-929c05bea125
41
+ X-Runtime:
42
+ - '0.017819'
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"username":"timgluz","prod_key":"ruby","follows":false}'
46
+ http_version:
47
+ recorded_at: Sat, 15 Aug 2015 10:46:06 GMT
48
+ recorded_with: VCR 2.9.3