mrjoy-bundler-audit 0.3.3 → 0.3.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (121) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -2
  3. data/.travis.yml +2 -0
  4. data/ChangeLog.md +10 -0
  5. data/Gemfile +1 -1
  6. data/Rakefile +12 -10
  7. data/lib/bundler/audit/cli.rb +3 -0
  8. data/lib/bundler/audit/database.rb +57 -24
  9. data/lib/bundler/audit/version.rb +1 -1
  10. data/mrjoy-bundler-audit.gemspec +0 -7
  11. data/spec/advisory_spec.rb +8 -3
  12. data/spec/bundle/insecure_sources/Gemfile.lock +98 -0
  13. data/spec/bundle/secure/Gemfile.lock +90 -0
  14. data/spec/bundle/unpatched_gems/Gemfile.lock +92 -0
  15. data/spec/bundle/wrapper.rb +36 -0
  16. data/spec/database_spec.rb +62 -42
  17. data/{data/ruby-advisory-db/gems/actionpack → spec/fixtures}/OSVDB-84243.yml +0 -0
  18. data/spec/integration_spec.rb +52 -14
  19. data/spec/spec_helper.rb +5 -45
  20. metadata +7 -104
  21. data/.gitmodules +0 -3
  22. data/data/ruby-advisory-db.ts +0 -1
  23. data/data/ruby-advisory-db/.gitignore +0 -1
  24. data/data/ruby-advisory-db/.rspec +0 -1
  25. data/data/ruby-advisory-db/CONTRIBUTING.md +0 -6
  26. data/data/ruby-advisory-db/CONTRIBUTORS.md +0 -24
  27. data/data/ruby-advisory-db/Gemfile +0 -3
  28. data/data/ruby-advisory-db/LICENSE.txt +0 -5
  29. data/data/ruby-advisory-db/README.md +0 -82
  30. data/data/ruby-advisory-db/Rakefile +0 -27
  31. data/data/ruby-advisory-db/gems/actionmailer/OSVDB-98629.yml +0 -17
  32. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100524.yml +0 -20
  33. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100525.yml +0 -21
  34. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100526.yml +0 -27
  35. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100527.yml +0 -24
  36. data/data/ruby-advisory-db/gems/actionpack/OSVDB-100528.yml +0 -22
  37. data/data/ruby-advisory-db/gems/actionpack/OSVDB-103439.yml +0 -24
  38. data/data/ruby-advisory-db/gems/actionpack/OSVDB-103440.yml +0 -22
  39. data/data/ruby-advisory-db/gems/actionpack/OSVDB-79727.yml +0 -26
  40. data/data/ruby-advisory-db/gems/actionpack/OSVDB-84513.yml +0 -23
  41. data/data/ruby-advisory-db/gems/actionpack/OSVDB-84515.yml +0 -26
  42. data/data/ruby-advisory-db/gems/actionpack/OSVDB-89026.yml +0 -24
  43. data/data/ruby-advisory-db/gems/actionpack/OSVDB-91452.yml +0 -20
  44. data/data/ruby-advisory-db/gems/actionpack/OSVDB-91454.yml +0 -23
  45. data/data/ruby-advisory-db/gems/activerecord/OSVDB-103438.yml +0 -23
  46. data/data/ruby-advisory-db/gems/activerecord/OSVDB-82403.yml +0 -25
  47. data/data/ruby-advisory-db/gems/activerecord/OSVDB-82610.yml +0 -24
  48. data/data/ruby-advisory-db/gems/activerecord/OSVDB-89025.yml +0 -24
  49. data/data/ruby-advisory-db/gems/activerecord/OSVDB-90072.yml +0 -21
  50. data/data/ruby-advisory-db/gems/activerecord/OSVDB-90073.yml +0 -23
  51. data/data/ruby-advisory-db/gems/activerecord/OSVDB-91453.yml +0 -26
  52. data/data/ruby-advisory-db/gems/activesupport/OSVDB-79726.yml +0 -26
  53. data/data/ruby-advisory-db/gems/activesupport/OSVDB-84516.yml +0 -23
  54. data/data/ruby-advisory-db/gems/activesupport/OSVDB-89594.yml +0 -25
  55. data/data/ruby-advisory-db/gems/activesupport/OSVDB-91451.yml +0 -28
  56. data/data/ruby-advisory-db/gems/arabic-prawn/OSVDB-104365.yml +0 -15
  57. data/data/ruby-advisory-db/gems/cocaine/OSVDB-98835.yml +0 -15
  58. data/data/ruby-advisory-db/gems/command_wrap/OSVDB-91450.yml +0 -10
  59. data/data/ruby-advisory-db/gems/crack/OSVDB-90742.yml +0 -17
  60. data/data/ruby-advisory-db/gems/cremefraiche/OSVDB-93395.yml +0 -11
  61. data/data/ruby-advisory-db/gems/curl/OSVDB-91230.yml +0 -12
  62. data/data/ruby-advisory-db/gems/devise/OSVDB-89642.yml +0 -20
  63. data/data/ruby-advisory-db/gems/dragonfly/OSVDB-90647.yml +0 -19
  64. data/data/ruby-advisory-db/gems/echor/OSVDB-102129.yml +0 -11
  65. data/data/ruby-advisory-db/gems/echor/OSVDB-102130.yml +0 -10
  66. data/data/ruby-advisory-db/gems/enum_column3/OSVDB-94679.yml +0 -9
  67. data/data/ruby-advisory-db/gems/extlib/OSVDB-90740.yml +0 -18
  68. data/data/ruby-advisory-db/gems/fastreader/OSVDB-91232.yml +0 -12
  69. data/data/ruby-advisory-db/gems/fileutils/OSVDB-90715.yml +0 -10
  70. data/data/ruby-advisory-db/gems/fileutils/OSVDB-90716.yml +0 -10
  71. data/data/ruby-advisory-db/gems/fileutils/OSVDB-90717.yml +0 -10
  72. data/data/ruby-advisory-db/gems/flash_tool/OSVDB-90829.yml +0 -9
  73. data/data/ruby-advisory-db/gems/fog-dragonfly/OSVDB-96798.yml +0 -13
  74. data/data/ruby-advisory-db/gems/ftpd/OSVDB-90784.yml +0 -18
  75. data/data/ruby-advisory-db/gems/gitlab-grit/OSVDB-99370.yml +0 -14
  76. data/data/ruby-advisory-db/gems/gtk2/OSVDB-40774.yml +0 -20
  77. data/data/ruby-advisory-db/gems/httparty/OSVDB-90741.yml +0 -14
  78. data/data/ruby-advisory-db/gems/i18n/OSVDB-100528.yml +0 -17
  79. data/data/ruby-advisory-db/gems/json/OSVDB-90074.yml +0 -23
  80. data/data/ruby-advisory-db/gems/karteek-docsplit/OSVDB-92117.yml +0 -10
  81. data/data/ruby-advisory-db/gems/kelredd-pruview/OSVDB-92228.yml +0 -10
  82. data/data/ruby-advisory-db/gems/ldoce/OSVDB-91870.yml +0 -10
  83. data/data/ruby-advisory-db/gems/loofah/OSVDB-90945.yml +0 -21
  84. data/data/ruby-advisory-db/gems/mail/OSVDB-70667.yml +0 -21
  85. data/data/ruby-advisory-db/gems/mail/OSVDB-81631.yml +0 -14
  86. data/data/ruby-advisory-db/gems/mail/OSVDB-81632.yml +0 -16
  87. data/data/ruby-advisory-db/gems/md2pdf/OSVDB-92290.yml +0 -10
  88. data/data/ruby-advisory-db/gems/mini_magick/OSVDB-91231.yml +0 -15
  89. data/data/ruby-advisory-db/gems/multi_xml/OSVDB-89148.yml +0 -16
  90. data/data/ruby-advisory-db/gems/newrelic_rpm/OSVDB-90189.yml +0 -17
  91. data/data/ruby-advisory-db/gems/nokogiri/OSVDB-101179.yml +0 -12
  92. data/data/ruby-advisory-db/gems/nokogiri/OSVDB-101458.yml +0 -15
  93. data/data/ruby-advisory-db/gems/nori/OSVDB-90196.yml +0 -19
  94. data/data/ruby-advisory-db/gems/omniauth-facebook/OSVDB-99693.yml +0 -22
  95. data/data/ruby-advisory-db/gems/omniauth-facebook/OSVDB-99888.yml +0 -17
  96. data/data/ruby-advisory-db/gems/omniauth-oauth2/OSVDB-90264.yml +0 -16
  97. data/data/ruby-advisory-db/gems/paperclip/OSVDB-103151.yml +0 -13
  98. data/data/ruby-advisory-db/gems/paratrooper-newrelic/OSVDB-101839.yml +0 -12
  99. data/data/ruby-advisory-db/gems/paratrooper-pingdom/OSVDB-101847.yml +0 -13
  100. data/data/ruby-advisory-db/gems/pdfkit/OSVDB-90867.yml +0 -11
  101. data/data/ruby-advisory-db/gems/rack-cache/OSVDB-83077.yml +0 -18
  102. data/data/ruby-advisory-db/gems/rack/OSVDB-89939.yml +0 -23
  103. data/data/ruby-advisory-db/gems/rbovirt/OSVDB-104080.yml +0 -20
  104. data/data/ruby-advisory-db/gems/rdoc/OSVDB-90004.yml +0 -27
  105. data/data/ruby-advisory-db/gems/redis-namespace/OSVDB-96425.yml +0 -16
  106. data/data/ruby-advisory-db/gems/rgpg/OSVDB-95948.yml +0 -14
  107. data/data/ruby-advisory-db/gems/ruby_parser/OSVDB-90561.yml +0 -11
  108. data/data/ruby-advisory-db/gems/sounder/OSVDB-96278.yml +0 -13
  109. data/data/ruby-advisory-db/gems/spree/OSVDB-91216.yml +0 -11
  110. data/data/ruby-advisory-db/gems/spree/OSVDB-91217.yml +0 -11
  111. data/data/ruby-advisory-db/gems/spree/OSVDB-91218.yml +0 -11
  112. data/data/ruby-advisory-db/gems/spree/OSVDB-91219.yml +0 -11
  113. data/data/ruby-advisory-db/gems/sprout/OSVDB-100598.yml +0 -14
  114. data/data/ruby-advisory-db/gems/thumbshooter/OSVDB-91839.yml +0 -10
  115. data/data/ruby-advisory-db/gems/webbynode/OSVDB-100920.yml +0 -11
  116. data/data/ruby-advisory-db/gems/wicked/OSVDB-98270.yml +0 -14
  117. data/data/ruby-advisory-db/gems/will_paginate/OSVDB-101138.yml +0 -15
  118. data/data/ruby-advisory-db/lib/scrape.rb +0 -87
  119. data/data/ruby-advisory-db/spec/advisory_example.rb +0 -165
  120. data/data/ruby-advisory-db/spec/gems_spec.rb +0 -7
  121. data/data/ruby-advisory-db/spec/spec_helper.rb +0 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 61f5df0b26d555b3c6090841a2e650dc5727dfc8
4
- data.tar.gz: 2b8d065557c8713ced0d20ece4733656def2c4e1
3
+ metadata.gz: d6b9ab49f8c28f5409240c762d440a51472ed981
4
+ data.tar.gz: e9befa665dd527051744e7edd7706cbece60d636
5
5
  SHA512:
6
- metadata.gz: 43deec103a419b873f440cffcab2e681a3dc2f7810588d57d78efb180ab46c902e9b31888aab6dd8793620a97a4bf5e3775b5f404a80d6cb535d74622538ec94
7
- data.tar.gz: dd7976caed4e730d05d6d45dc5db2c5b7c65b97930112c401a2e5eecf561549ae2ab677bf741cdae2a9f1b3dba694a87d0edd48967f3b416975220ee60ecc380
6
+ metadata.gz: d64dfbf30d2801b6c89be762b840cd9b676a26355883dc3eab09ed6b4d2721e0184457c8372407f50b4962b4f488690fe49d7a558fd6a8acb24e1ea8f5b7dd2f
7
+ data.tar.gz: c090e2cc9dc19c62564aa3d56a3aa2a7cac6a6606dca9440bfcef2b1f12a0d2507a5051b911382e31022ffc19ccaa2e69def3bf9223222717fdc3e2cebfee0c8
data/.gitignore CHANGED
@@ -1,9 +1,8 @@
1
- Gemfile.lock
1
+ /Gemfile.lock
2
2
  doc/
3
3
  coverage/
4
4
  .yardoc/
5
5
  pkg/
6
- spec/bundle/*/Gemfile.lock
7
6
  spec/bundle/*/.bundle/
8
7
  vendor/bundle/
9
8
  tmp/
data/.travis.yml CHANGED
@@ -5,3 +5,5 @@ rvm:
5
5
  - 2.0.0
6
6
  - 2.1.0
7
7
  - 2.1.1
8
+ - rbx-2.2.6
9
+ - jruby-1.7.11
data/ChangeLog.md CHANGED
@@ -1,3 +1,13 @@
1
+ ### mrjoy-0.3.4 / 2014-04-16
2
+
3
+ * Integrate upstream changes from `gut_vendored_db`. This eliminates the
4
+ internal copy of the database entirely and automatically downloads one if
5
+ needed.
6
+ * Fix several bugs in upstream branch, and make test cases more robust.
7
+ * Include integration test results in coverage analysis.
8
+ * Improve code coverage.
9
+ * Improve Travis integration.
10
+
1
11
  ### mrjoy-0.3.3 / 2014-04-15
2
12
 
3
13
  * Fix development-mode code loading issue.
data/Gemfile CHANGED
@@ -11,5 +11,5 @@ group :development do
11
11
  gem 'rubygems-tasks', '~> 0.2', :require => false
12
12
  gem 'rspec', '~> 2.4', :require => false
13
13
  gem 'yard', '~> 0.8', :require => false
14
- gem 'simplecov', '~> 0.7', :require => false
14
+ gem 'simplecov', '~> 0.7', :require => false, :platform => [:ruby_19, :ruby_20, :ruby_21]
15
15
  end
data/Rakefile CHANGED
@@ -3,21 +3,13 @@
3
3
  require 'rubygems'
4
4
 
5
5
  begin
6
- require 'bundler'
6
+ require 'bundler/setup'
7
7
  rescue LoadError => e
8
8
  warn e.message
9
9
  warn "Run `gem install bundler` to install Bundler."
10
10
  exit -1
11
11
  end
12
12
 
13
- begin
14
- Bundler.setup(:default, :development)
15
- rescue Bundler::BundlerError => e
16
- warn e.message
17
- warn "Run `bundle install` to install missing gems."
18
- exit e.status_code
19
- end
20
-
21
13
  require 'rake'
22
14
  require 'time'
23
15
 
@@ -50,8 +42,18 @@ namespace :spec do
50
42
  task :bundle do
51
43
  root = 'spec/bundle'
52
44
 
53
- %w[secure unpatched_gems insecure_sources].each do |bundle|
45
+ # Skip this test on any Ruby below 1.9.3.
46
+ version = RUBY_VERSION.split(/\./).map(&:to_i)
47
+ if((version[0] == 1 && version[1] >= 9 && version[2] >= 3) || (version[0] >= 2))
48
+ chdir(File.join(root,"secure")) do
49
+ FileUtils.rm("Gemfile.lock") if(File.exist?("Gemfile.lock"))
50
+ sh 'BUNDLE_BIN_PATH="" BUNDLE_GEMFILE="" RUBYOPT="" bundle install --path ../../../vendor/bundle'
51
+ end
52
+ end
53
+
54
+ %w[unpatched_gems insecure_sources].each do |bundle|
54
55
  chdir(File.join(root,bundle)) do
56
+ FileUtils.rm("Gemfile.lock") if(File.exist?("Gemfile.lock"))
55
57
  sh 'BUNDLE_BIN_PATH="" BUNDLE_GEMFILE="" RUBYOPT="" bundle install --path ../../../vendor/bundle'
56
58
  end
57
59
  end
@@ -39,6 +39,9 @@ module Bundler
39
39
  scanner = Scanner.new
40
40
  vulnerable = false
41
41
 
42
+ # attempt update the database before doing a scan
43
+ scanner.database.update!
44
+
42
45
  scanner.scan(:ignore => options.ignore) do |result|
43
46
  vulnerable = true
44
47
 
@@ -33,14 +33,8 @@ module Bundler
33
33
  # Git URL of the ruby-advisory-db
34
34
  URL = 'https://github.com/rubysec/ruby-advisory-db.git'
35
35
 
36
- # Default path to the ruby-advisory-db
37
- VENDORED_PATH = File.expand_path(File.join(File.dirname(__FILE__),'..','..','..','data','ruby-advisory-db'))
38
-
39
- # Timestamp for when the database was last updated
40
- VENDORED_TIMESTAMP = Time.parse(File.read("#{VENDORED_PATH}.ts")).utc
41
-
42
36
  # Path to the user's copy of the ruby-advisory-db
43
- USER_PATH = File.expand_path(File.join(ENV['HOME'],'.local','share','ruby-advisory-db'))
37
+ PATH = File.expand_path(File.join(ENV['HOME'],'.local','share','ruby-advisory-db'))
44
38
 
45
39
  # The path to the advisory database
46
40
  attr_reader :path
@@ -66,23 +60,54 @@ module Bundler
66
60
  # The default path for the database.
67
61
  #
68
62
  # @return [String]
69
- # The path to the database directory.
63
+ # The path to the database directory. Defaults to {PATH}.
70
64
  #
71
65
  def self.path
72
- if File.directory?(USER_PATH)
73
- t1 = Dir.chdir(USER_PATH) { Time.parse(`git log --pretty="%cd" -1`) }
74
- t2 = VENDORED_TIMESTAMP
66
+ @@path ||= PATH
67
+ end
75
68
 
76
- if t1 >= t2 then USER_PATH
77
- else VENDORED_PATH
78
- end
69
+ #
70
+ # Sets the default path for the database.
71
+ #
72
+ # @return [String]
73
+ # The new default path for the database.
74
+ #
75
+ def self.path=(new_path)
76
+ @@path = new_path
77
+ end
78
+
79
+ #
80
+ # Downloads the database.
81
+ #
82
+ # @return [Boolean]
83
+ # Specifies whether the download was successful.
84
+ #
85
+ # @since 0.4.0
86
+ #
87
+ def self.install!
88
+ system 'git', 'clone', URL, path
89
+ end
90
+
91
+ #
92
+ # Updates the user's ruby-advisory-db.
93
+ #
94
+ # @return [Boolean]
95
+ # Specifies whether the update was successful.
96
+ #
97
+ # @see #update!
98
+ #
99
+ # @since 0.3.0
100
+ #
101
+ def self.update!
102
+ if File.directory?(File.join(path, '.git'))
103
+ new(path).update!
79
104
  else
80
- VENDORED_PATH
105
+ install!
81
106
  end
82
107
  end
83
108
 
84
109
  #
85
- # Updates the ruby-advisory-db.
110
+ # Updates the database.
86
111
  #
87
112
  # @return [Boolean]
88
113
  # Specifies whether the update was successful.
@@ -90,18 +115,26 @@ module Bundler
90
115
  # @note
91
116
  # Requires network access.
92
117
  #
93
- # @since 0.3.0
118
+ # @see 0.4.0
94
119
  #
95
- def self.update!
96
- if File.directory?(USER_PATH)
97
- Dir.chdir(USER_PATH) do
98
- system 'git', 'pull', 'origin', 'master'
99
- end
100
- else
101
- system 'git', 'clone', URL, USER_PATH
120
+ def update!
121
+ Dir.chdir(@path) do
122
+ system 'git', 'pull', 'origin', 'master'
102
123
  end
103
124
  end
104
125
 
126
+ #
127
+ # Determines when the database was last updated.
128
+ #
129
+ # @return [Time]
130
+ # The time of the last update.
131
+ #
132
+ # @since 0.4.0
133
+ #
134
+ def last_updated
135
+ Dir.chdir(@path) { Time.parse(`git log -1 --format=%ad`) }
136
+ end
137
+
105
138
  #
106
139
  # Enumerates over every advisory in the database.
107
140
  #
@@ -20,6 +20,6 @@
20
20
  module Bundler
21
21
  module Audit
22
22
  # bundler-audit version
23
- VERSION = '0.3.3'
23
+ VERSION = '0.3.4'
24
24
  end
25
25
  end
@@ -26,13 +26,6 @@ Gem::Specification.new do |gem|
26
26
  gem.files = `git ls-files`.split($/)
27
27
  gem.files = glob[gemspec['files']] if gemspec['files']
28
28
 
29
- # add paths from data/ruby-advisory-db/
30
- gem.files += Dir.chdir('data/ruby-advisory-db') do
31
- `git ls-files`.split($/).map do |sub_path|
32
- File.join('data','ruby-advisory-db',sub_path)
33
- end
34
- end
35
-
36
29
  gem.executables = gemspec.fetch('executables') do
37
30
  glob['bin/*'].map { |path| File.basename(path) }
38
31
  end
@@ -2,11 +2,16 @@ require 'spec_helper'
2
2
  require 'bundler/audit/database'
3
3
  require 'bundler/audit/advisory'
4
4
 
5
- describe Bundler::Audit::Advisory do
6
- let(:root) { Bundler::Audit::Database::VENDORED_PATH }
5
+ describe Advisory do
6
+ before(:suite) do
7
+ Database.update!
8
+ end
9
+
10
+ let(:root) { "spec/fixtures" }
7
11
  let(:gem) { 'actionpack' }
8
12
  let(:id) { 'OSVDB-84243' }
9
- let(:path) { File.join(root,'gems',gem,"#{id}.yml") }
13
+ let(:path) { File.join(root,"#{id}.yml") }
14
+
10
15
  let(:an_unaffected_version) do
11
16
  Bundler::Audit::Advisory.load(path).unaffected_versions.map { |version_rule|
12
17
  # For all the rules, get the individual constraints out and see if we
@@ -0,0 +1,98 @@
1
+ GIT
2
+ remote: git://github.com/rails/jquery-rails.git
3
+ revision: c7c8365987f65953f62e2d207083021bf616a6fc
4
+ tag: v2.2.1
5
+ specs:
6
+ jquery-rails (2.2.1)
7
+ railties (>= 3.0, < 5.0)
8
+ thor (>= 0.14, < 2.0)
9
+
10
+ GEM
11
+ remote: http://rubygems.org/
12
+ specs:
13
+ actionmailer (3.2.12)
14
+ actionpack (= 3.2.12)
15
+ mail (~> 2.4.4)
16
+ actionpack (3.2.12)
17
+ activemodel (= 3.2.12)
18
+ activesupport (= 3.2.12)
19
+ builder (~> 3.0.0)
20
+ erubis (~> 2.7.0)
21
+ journey (~> 1.0.4)
22
+ rack (~> 1.4.5)
23
+ rack-cache (~> 1.2)
24
+ rack-test (~> 0.6.1)
25
+ sprockets (~> 2.2.1)
26
+ activemodel (3.2.12)
27
+ activesupport (= 3.2.12)
28
+ builder (~> 3.0.0)
29
+ activerecord (3.2.12)
30
+ activemodel (= 3.2.12)
31
+ activesupport (= 3.2.12)
32
+ arel (~> 3.0.2)
33
+ tzinfo (~> 0.3.29)
34
+ activeresource (3.2.12)
35
+ activemodel (= 3.2.12)
36
+ activesupport (= 3.2.12)
37
+ activesupport (3.2.12)
38
+ i18n (~> 0.6)
39
+ multi_json (~> 1.0)
40
+ arel (3.0.3)
41
+ builder (3.0.4)
42
+ erubis (2.7.0)
43
+ hike (1.2.3)
44
+ i18n (0.6.9)
45
+ journey (1.0.4)
46
+ json (1.8.1)
47
+ mail (2.4.4)
48
+ i18n (>= 0.4.0)
49
+ mime-types (~> 1.16)
50
+ treetop (~> 1.4.8)
51
+ mime-types (1.25.1)
52
+ multi_json (1.9.2)
53
+ polyglot (0.3.4)
54
+ rack (1.4.5)
55
+ rack-cache (1.2)
56
+ rack (>= 0.4)
57
+ rack-ssl (1.3.4)
58
+ rack
59
+ rack-test (0.6.2)
60
+ rack (>= 1.0)
61
+ rails (3.2.12)
62
+ actionmailer (= 3.2.12)
63
+ actionpack (= 3.2.12)
64
+ activerecord (= 3.2.12)
65
+ activeresource (= 3.2.12)
66
+ activesupport (= 3.2.12)
67
+ bundler (~> 1.0)
68
+ railties (= 3.2.12)
69
+ railties (3.2.12)
70
+ actionpack (= 3.2.12)
71
+ activesupport (= 3.2.12)
72
+ rack-ssl (~> 1.3.2)
73
+ rake (>= 0.8.7)
74
+ rdoc (~> 3.4)
75
+ thor (>= 0.14.6, < 2.0)
76
+ rake (10.3.0)
77
+ rdoc (3.12.2)
78
+ json (~> 1.4)
79
+ sprockets (2.2.2)
80
+ hike (~> 1.2)
81
+ multi_json (~> 1.0)
82
+ rack (~> 1.0)
83
+ tilt (~> 1.1, != 1.3.0)
84
+ sqlite3 (1.3.9)
85
+ thor (0.19.1)
86
+ tilt (1.4.1)
87
+ treetop (1.4.15)
88
+ polyglot
89
+ polyglot (>= 0.3.1)
90
+ tzinfo (0.3.39)
91
+
92
+ PLATFORMS
93
+ ruby
94
+
95
+ DEPENDENCIES
96
+ jquery-rails!
97
+ rails (= 3.2.12)
98
+ sqlite3
@@ -0,0 +1,90 @@
1
+ GEM
2
+ remote: https://rubygems.org/
3
+ specs:
4
+ actionmailer (4.1.0)
5
+ actionpack (= 4.1.0)
6
+ actionview (= 4.1.0)
7
+ mail (~> 2.5.4)
8
+ actionpack (4.1.0)
9
+ actionview (= 4.1.0)
10
+ activesupport (= 4.1.0)
11
+ rack (~> 1.5.2)
12
+ rack-test (~> 0.6.2)
13
+ actionview (4.1.0)
14
+ activesupport (= 4.1.0)
15
+ builder (~> 3.1)
16
+ erubis (~> 2.7.0)
17
+ activemodel (4.1.0)
18
+ activesupport (= 4.1.0)
19
+ builder (~> 3.1)
20
+ activerecord (4.1.0)
21
+ activemodel (= 4.1.0)
22
+ activesupport (= 4.1.0)
23
+ arel (~> 5.0.0)
24
+ activesupport (4.1.0)
25
+ i18n (~> 0.6, >= 0.6.9)
26
+ json (~> 1.7, >= 1.7.7)
27
+ minitest (~> 5.1)
28
+ thread_safe (~> 0.1)
29
+ tzinfo (~> 1.1)
30
+ arel (5.0.1.20140414130214)
31
+ builder (3.2.2)
32
+ erubis (2.7.0)
33
+ hike (1.2.3)
34
+ i18n (0.6.9)
35
+ jquery-rails (3.1.0)
36
+ railties (>= 3.0, < 5.0)
37
+ thor (>= 0.14, < 2.0)
38
+ json (1.8.1)
39
+ mail (2.5.4)
40
+ mime-types (~> 1.16)
41
+ treetop (~> 1.4.8)
42
+ mime-types (1.25.1)
43
+ minitest (5.3.3)
44
+ multi_json (1.9.2)
45
+ polyglot (0.3.4)
46
+ rack (1.5.2)
47
+ rack-test (0.6.2)
48
+ rack (>= 1.0)
49
+ rails (4.1.0)
50
+ actionmailer (= 4.1.0)
51
+ actionpack (= 4.1.0)
52
+ actionview (= 4.1.0)
53
+ activemodel (= 4.1.0)
54
+ activerecord (= 4.1.0)
55
+ activesupport (= 4.1.0)
56
+ bundler (>= 1.3.0, < 2.0)
57
+ railties (= 4.1.0)
58
+ sprockets-rails (~> 2.0)
59
+ railties (4.1.0)
60
+ actionpack (= 4.1.0)
61
+ activesupport (= 4.1.0)
62
+ rake (>= 0.8.7)
63
+ thor (>= 0.18.1, < 2.0)
64
+ rake (10.3.0)
65
+ sprockets (2.12.1)
66
+ hike (~> 1.2)
67
+ multi_json (~> 1.0)
68
+ rack (~> 1.0)
69
+ tilt (~> 1.1, != 1.3.0)
70
+ sprockets-rails (2.1.3)
71
+ actionpack (>= 3.0)
72
+ activesupport (>= 3.0)
73
+ sprockets (~> 2.8)
74
+ sqlite3 (1.3.9)
75
+ thor (0.19.1)
76
+ thread_safe (0.3.3)
77
+ tilt (1.4.1)
78
+ treetop (1.4.15)
79
+ polyglot
80
+ polyglot (>= 0.3.1)
81
+ tzinfo (1.1.0)
82
+ thread_safe (~> 0.1)
83
+
84
+ PLATFORMS
85
+ ruby
86
+
87
+ DEPENDENCIES
88
+ jquery-rails
89
+ rails (~> 4.1.0)
90
+ sqlite3