carrierwave-dropbox 1.2.1 → 2.0.0.rc1

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.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/.credentials.yml +1 -0
  3. data/.travis.yml +19 -0
  4. data/CHANGELOG.md +14 -0
  5. data/README.md +38 -28
  6. data/Rakefile +23 -3
  7. data/carrierwave-dropbox.gemspec +8 -10
  8. data/lib/carrierwave/dropbox.rb +0 -6
  9. data/lib/carrierwave/dropbox/version.rb +1 -1
  10. data/lib/carrierwave/storage/dropbox.rb +23 -21
  11. data/test/carrierwave_uploader_base_test.rb +17 -0
  12. data/test/dummy_app.rb +43 -0
  13. data/test/file_upload_test.rb +29 -0
  14. data/{spec → test}/fixtures/rails.png +0 -0
  15. data/{spec → test}/fixtures/ruby.png +0 -0
  16. data/test/test_helper.rb +30 -0
  17. metadata +43 -173
  18. data/.rspec +0 -1
  19. data/lib/carrierwave/dropbox/authorize.rake +0 -13
  20. data/lib/carrierwave/dropbox/railtie.rb +0 -9
  21. data/lib/carrierwave/dropbox/rake.rb +0 -41
  22. data/spec/carrierwave-uploader-base_spec.rb +0 -18
  23. data/spec/dummy/.gitignore +0 -16
  24. data/spec/dummy/Gemfile +0 -10
  25. data/spec/dummy/Rakefile +0 -6
  26. data/spec/dummy/app/controllers/application_controller.rb +0 -5
  27. data/spec/dummy/app/controllers/articles_controller.rb +0 -58
  28. data/spec/dummy/app/controllers/concerns/.keep +0 -0
  29. data/spec/dummy/app/helpers/application_helper.rb +0 -2
  30. data/spec/dummy/app/helpers/articles_helper.rb +0 -2
  31. data/spec/dummy/app/mailers/.keep +0 -0
  32. data/spec/dummy/app/models/.keep +0 -0
  33. data/spec/dummy/app/models/article.rb +0 -3
  34. data/spec/dummy/app/models/concerns/.keep +0 -0
  35. data/spec/dummy/app/uploaders/image_uploader.rb +0 -19
  36. data/spec/dummy/app/views/articles/_form.html.erb +0 -29
  37. data/spec/dummy/app/views/articles/edit.html.erb +0 -6
  38. data/spec/dummy/app/views/articles/index.html.erb +0 -31
  39. data/spec/dummy/app/views/articles/new.html.erb +0 -5
  40. data/spec/dummy/app/views/articles/show.html.erb +0 -1
  41. data/spec/dummy/app/views/layouts/application.html.erb +0 -12
  42. data/spec/dummy/bin/bundle +0 -3
  43. data/spec/dummy/bin/rails +0 -4
  44. data/spec/dummy/bin/rake +0 -4
  45. data/spec/dummy/config.ru +0 -4
  46. data/spec/dummy/config/application.rb +0 -23
  47. data/spec/dummy/config/boot.rb +0 -4
  48. data/spec/dummy/config/database.yml +0 -25
  49. data/spec/dummy/config/environment.rb +0 -5
  50. data/spec/dummy/config/environments/development.rb +0 -29
  51. data/spec/dummy/config/environments/production.rb +0 -80
  52. data/spec/dummy/config/environments/test.rb +0 -36
  53. data/spec/dummy/config/initializers/backtrace_silencers.rb +0 -7
  54. data/spec/dummy/config/initializers/carrierwave.rb +0 -8
  55. data/spec/dummy/config/initializers/filter_parameter_logging.rb +0 -4
  56. data/spec/dummy/config/initializers/inflections.rb +0 -16
  57. data/spec/dummy/config/initializers/mime_types.rb +0 -5
  58. data/spec/dummy/config/initializers/secret_token.rb +0 -12
  59. data/spec/dummy/config/initializers/session_store.rb +0 -3
  60. data/spec/dummy/config/initializers/wrap_parameters.rb +0 -14
  61. data/spec/dummy/config/locales/en.yml +0 -23
  62. data/spec/dummy/config/routes.rb +0 -58
  63. data/spec/dummy/db/migrate/20140224111953_create_articles.rb +0 -11
  64. data/spec/dummy/db/schema.rb +0 -24
  65. data/spec/dummy/db/seeds.rb +0 -7
  66. data/spec/dummy/public/404.html +0 -58
  67. data/spec/dummy/public/422.html +0 -58
  68. data/spec/dummy/public/500.html +0 -57
  69. data/spec/dummy/public/favicon.ico +0 -0
  70. data/spec/dummy/public/robots.txt +0 -5
  71. data/spec/features/upload_file_spec.rb +0 -46
  72. data/spec/spec_helper.rb +0 -16
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0835f1759b372c934414cdbf11ef78d97cca95ee
4
- data.tar.gz: baf25e47a90b474b476e0f09a07d9b0a9b3ffb93
3
+ metadata.gz: dc4b846c16c771138463642ee278c3805410f523
4
+ data.tar.gz: 309d167289d24c0b70ddfffbb8b0a9a16eedf08f
5
5
  SHA512:
6
- metadata.gz: dd47305f72dd338ea3e162ab97c4041a1223964b0a302f57e909cb928f949f20070809e4c55f493ad02d46788e0c988a5d0f6d4025560c7a670bee13e6bc6cb7
7
- data.tar.gz: 21544f444f4358673c070761c86bd988d9da48d72e5dc0fca6e15a41c05d776676cbfcdf5ff575886962d0b9f8b570d9efd99171abda698417c2995a9012e02f
6
+ metadata.gz: 4cc6baaf8f09b8005e9436ab7f0bba6be6a1ea3ef0bbb74b81dbba0a0640cd6182c862dd048f5b2e1ec91987c3c454f3648c88f5d26ad09a14d61ffe0d986e72
7
+ data.tar.gz: 07b3c1b93dc14dbafaeca324ace22025af8f896cba6418ee60dd0eb2819ca4bfb1bc51f7a2e1077a70516765a09f16632f683f23410b355e6220f6c64308684c
@@ -0,0 +1 @@
1
+ access_token: ""
@@ -0,0 +1,19 @@
1
+ language: ruby
2
+
3
+ rvm:
4
+ - 2.2
5
+ - 2.3
6
+ - 2.4
7
+ - 2.5
8
+ - rbx-3.91
9
+
10
+ before_install:
11
+ - gem install bundler
12
+
13
+ matrix:
14
+ allow_failures:
15
+ - rvm: rbx-3.91
16
+
17
+ env:
18
+ global:
19
+ secure: "KZEG8GjN1P3pHyK8QjOfNF4jZk+GfUonGIJdVplSTJJGE/RywtTCWtPGRmjB3BnLvCrlfLkrhNXwM5ZWN07iDELDJhh4Xlg8mSZ+snsGsezUM7lSHsyHebl2uN2tcRrJQD2Eh55tQDa/BGABRwva6mc6E1gEzgy9UHXVFhT8d30="
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.0.0
4
+
5
+ * Only test against Ruby 2.2+ and Rails 5.1+. This gem might work
6
+ with previous versions of Ruby and Rails but it's not guaranteed.
7
+
8
+ * Use file IDs instead of file name to retrieve files.
9
+
10
+ This allows people to move files around and still get these files
11
+ without changing the URL.
12
+
13
+ *mful*
14
+
15
+ * Use version 2 of the Dropbox API (*Steve Bell*)
16
+
3
17
  ## 1.2.1 (February 24, 2014)
4
18
 
5
19
  * Use the uploader's store_path instead of the root
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Carrierwave uploads on Dropbox
2
2
 
3
3
  This gem allows you to easily upload your medias on Dropbox using the awesome
4
- [Carrierwave](https://github.com/carrierwaveuploader/carrierwave) gem.
4
+ [CarrierWave](https://github.com/carrierwaveuploader/carrierwave) gem.
5
5
 
6
6
  ## Installation
7
7
 
@@ -16,41 +16,21 @@ Then, add this line to your application's Gemfile:
16
16
  gem 'carrierwave-dropbox'
17
17
  ~~~
18
18
 
19
- And make sure that it get installed running the `bundle` command. Then, you have
20
- to run the `rake authorize` command to authorize your application to access to
21
- your Dropbox.
19
+ Then run `bundle` to install the gem.
22
20
 
23
- If you are using Rails, the Rake task is automatically loaded. Otherwise, if you
24
- aren't running a Rails application, first load the task in your `Rakefile`:
25
-
26
- ~~~ruby
27
- load "carrierwave/dropbox/authorize.rake"
28
- ~~~
29
-
30
- Then you have to run this task:
31
-
32
- ~~~bash
33
- rake dropbox:authorize APP_KEY=app_key APP_SECRET=app_secret ACCESS_TYPE=dropbox|app_folder
34
- ~~~
35
-
36
- Finally, you will get your credentials. Config CarrierWave to make it work with
37
- your Dropbox:
21
+ To make a Dropbox app and generate a token, go [here](https://www.dropbox.com/developers/apps).
22
+ Then, specify the token in your configuration (in an initializer for instance)
23
+ like this:
38
24
 
39
25
  ~~~ruby
40
26
  CarrierWave.configure do |config|
41
- config.dropbox_app_key = ENV["APP_KEY"]
42
- config.dropbox_app_secret = ENV["APP_SECRET"]
43
- config.dropbox_access_token = ENV["ACCESS_TOKEN"]
44
- config.dropbox_access_token_secret = ENV["ACCESS_TOKEN_SECRET"]
45
- config.dropbox_user_id = ENV["USER_ID"]
46
- config.dropbox_access_type = "dropbox"
27
+ config.dropbox_access_token = Rails.application.dropbox_access_token
47
28
  end
48
29
  ~~~
49
30
 
50
31
  **Note**: It's advisable not to directly store the credentials in your files
51
- especially if you are using a SCM (e.g. git). You should store these values in
52
- [environment variables for instance](https://gist.github.com/canton7/1423106)
53
- like in the above example.
32
+ especially if you are using a SCM (e.g. Git). You should rather rely on Rails'
33
+ `secrets` feature.
54
34
 
55
35
  Then you can either specify in your uploader files the storage or define it
56
36
  globally through `CarrierWave.configure`:
@@ -61,6 +41,36 @@ class ImageUploader < CarrierWave::Uploader::Base
61
41
  end
62
42
  ~~~
63
43
 
44
+ ## Notable differences from other storage engines
45
+
46
+ Unlike typical CarrierWave storage engines, we do not assume an uploaded file
47
+ will always be at the same path, as Dropbox UI users may move files around. As
48
+ such, this gem relies on the file id. There are two significant implications to
49
+ this approach:
50
+
51
+ 1. The `#store_path` and `#store_dir` methods are not guaranteed to be accurate
52
+ after the initial file upload. We do not overwrite these methods as the end user
53
+ will often overwrite these methods to specify where the file should initially
54
+ be stored.
55
+ 2. The default `#filename` method is not accurate, as we are storing the Dropbox
56
+ id, rather than the name of the file. It's recommended that end users overwrite
57
+ the `#filename` method to delegate to the `CarrierWave::Storage::Dropbox::File`
58
+ interface. For example:
59
+
60
+ ~~~ruby
61
+ class MyUploader < CarrierWave::Uploader::Base
62
+ storage :dropbox
63
+
64
+ def filename
65
+ if original_filename
66
+ # Perform any file name manipulation on initial upload
67
+ elsif file
68
+ file.filename
69
+ end
70
+ end
71
+ end
72
+ ~~~
73
+
64
74
  ## Special thanks
65
75
 
66
76
  This project is highly based on these two gems:
data/Rakefile CHANGED
@@ -1,6 +1,26 @@
1
1
  require "bundler/gem_tasks"
2
- require "rspec/core/rake_task"
2
+ require "rake/testtask"
3
3
 
4
- RSpec::Core::RakeTask.new(:spec)
4
+ Rake::TestTask.new("test_unit") do |t|
5
+ t.libs << "test"
6
+ t.pattern = 'test/**/*_test.rb'
7
+ t.verbose = true
8
+ t.warning = false
9
+ t.description = "Run the unit tests without loading .credentials.yml"
10
+ end
5
11
 
6
- task :default => :spec
12
+ task :load_credentials do
13
+ require 'yaml'
14
+
15
+ path = File.expand_path("../.credentials.yml", __FILE__)
16
+ hash = YAML.load(File.read(path))
17
+
18
+ hash.each do |key, value|
19
+ ENV[key.upcase] ||= value
20
+ end
21
+ end
22
+
23
+ desc "Run the unit tests"
24
+ task test: [:load_credentials, :test_unit]
25
+
26
+ task default: :test
@@ -18,15 +18,13 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_dependency "carrierwave", "~> 0.9"
22
- spec.add_dependency "dropbox-sdk", "~> 1.6"
21
+ spec.add_dependency "carrierwave", "~> 1.2"
22
+ spec.add_dependency "dropbox-sdk-v2", "~> 0.0.3"
23
23
 
24
- spec.add_development_dependency "bundler", "~> 1.3"
25
- spec.add_development_dependency "rake"
26
- spec.add_development_dependency "capybara", "~> 2.2"
27
- spec.add_development_dependency "rspec", "~> 2.14"
28
- spec.add_development_dependency "sqlite3"
29
- spec.add_development_dependency "mini_magick"
30
- spec.add_development_dependency "capybara-webkit", "~> 1.0"
31
- spec.add_development_dependency "rails", ">= 3.2.14", "< 5.0"
24
+ spec.add_development_dependency "bundler", "~> 1.16"
25
+ spec.add_development_dependency "rake", "~> 12.3"
26
+ spec.add_development_dependency "rack-test", "~> 0.8"
27
+ spec.add_development_dependency "sqlite3", "~> 1.3"
28
+ spec.add_development_dependency "sinatra", "~> 2.0"
29
+ spec.add_development_dependency "activerecord", "~> 5.1"
32
30
  end
@@ -2,15 +2,9 @@ require 'carrierwave'
2
2
  require 'carrierwave/storage/dropbox'
3
3
 
4
4
  require 'carrierwave/dropbox/version'
5
- require 'carrierwave/dropbox/railtie' if defined?(Rails)
6
5
 
7
6
  class CarrierWave::Uploader::Base
8
- add_config :dropbox_app_key
9
- add_config :dropbox_app_secret
10
7
  add_config :dropbox_access_token
11
- add_config :dropbox_access_token_secret
12
- add_config :dropbox_user_id
13
- add_config :dropbox_access_type
14
8
 
15
9
  configure do |config|
16
10
  config.storage_engines[:dropbox] = 'CarrierWave::Storage::Dropbox'
@@ -1,5 +1,5 @@
1
1
  module CarrierWave
2
2
  module Dropbox
3
- VERSION = "1.2.1"
3
+ VERSION = "2.0.0.rc1"
4
4
  end
5
5
  end
@@ -1,5 +1,5 @@
1
1
  # encoding: utf-8
2
- require 'dropbox_sdk'
2
+ require 'dropbox'
3
3
 
4
4
  module CarrierWave
5
5
  module Storage
@@ -10,20 +10,21 @@ module CarrierWave
10
10
 
11
11
  # Store a single file
12
12
  def store!(file)
13
- location = (config[:access_type] == "dropbox") ? "/#{uploader.store_path}" : uploader.store_path
14
- dropbox_client.put_file(location, file.to_file)
13
+ location = "/#{uploader.store_path}"
14
+ res = dropbox_client.upload(location, file.to_file)
15
+ uploader.model.update_column uploader.mounted_as, res.id
15
16
  end
16
17
 
17
18
  # Retrieve a single file
18
- def retrieve!(file)
19
- CarrierWave::Storage::Dropbox::File.new(uploader, config, uploader.store_path(file), dropbox_client)
19
+ def retrieve!(file_id)
20
+ # allow for use of either path or ID as the file identifier
21
+ id = file_id.match(/^id:/) ? file_id : "/#{uploader.store_path file_id}"
22
+ CarrierWave::Storage::Dropbox::File.new(uploader, config, id, dropbox_client)
20
23
  end
21
24
 
22
25
  def dropbox_client
23
26
  @dropbox_client ||= begin
24
- session = DropboxSession.new(config[:app_key], config[:app_secret])
25
- session.set_access_token(config[:access_token], config[:access_token_secret])
26
- DropboxClient.new(session, config[:access_type])
27
+ ::Dropbox::Client.new(config[:access_token])
27
28
  end
28
29
  end
29
30
 
@@ -32,34 +33,35 @@ module CarrierWave
32
33
  def config
33
34
  @config ||= {}
34
35
 
35
- @config[:app_key] ||= uploader.dropbox_app_key
36
- @config[:app_secret] ||= uploader.dropbox_app_secret
37
36
  @config[:access_token] ||= uploader.dropbox_access_token
38
- @config[:access_token_secret] ||= uploader.dropbox_access_token_secret
39
- @config[:access_type] ||= uploader.dropbox_access_type || "dropbox"
40
- @config[:user_id] ||= uploader.dropbox_user_id
41
37
 
42
38
  @config
43
39
  end
44
40
 
45
41
  class File
46
42
  include CarrierWave::Utilities::Uri
47
- attr_reader :path
43
+ attr_reader :file_id
48
44
 
49
- def initialize(uploader, config, path, client)
50
- @uploader, @config, @path, @client = uploader, config, path, client
45
+ def initialize(uploader, config, file_id, client)
46
+ @uploader, @config, @file_id, @client = uploader, config, file_id, client
47
+ end
48
+
49
+ def file_data
50
+ @file_data ||= @client.get_temporary_link(@file_id)
51
+ end
52
+
53
+ def filename
54
+ file_data[0].name
51
55
  end
52
56
 
53
57
  def url
54
- @client.media(@path)["url"]
58
+ file_data[1]
55
59
  end
56
60
 
57
61
  def delete
58
- path = @path
59
- path = "/#{path}" if @config[:access_type] == "dropbox"
60
62
  begin
61
- @client.file_delete(path)
62
- rescue DropboxError
63
+ @client.delete @file_id
64
+ rescue ::Dropbox::ApiError
63
65
  end
64
66
  end
65
67
  end
@@ -0,0 +1,17 @@
1
+ require 'test_helper'
2
+
3
+ class CarrierWaveUploaderBaseTest < Minitest::Test
4
+ def setup
5
+ @object = CarrierWave::Uploader::Base
6
+ end
7
+
8
+ def test_dropbox_storage
9
+ @object.configure do |c|
10
+ assert c.storage_engines.key?(:dropbox)
11
+ end
12
+ end
13
+
14
+ def test_respond_to_configuration_methods
15
+ assert @object.respond_to?(:dropbox_access_token)
16
+ end
17
+ end
@@ -0,0 +1,43 @@
1
+ require 'sinatra'
2
+
3
+ require 'active_record'
4
+ require 'carrierwave'
5
+ require 'carrierwave/dropbox'
6
+ require 'carrierwave/orm/activerecord'
7
+
8
+ ActiveRecord::Base.establish_connection(
9
+ adapter: 'sqlite3',
10
+ database: ':memory:'
11
+ )
12
+
13
+ ActiveRecord::Schema.define do
14
+ create_table :images do |t|
15
+ t.string :attachment
16
+ end
17
+ end
18
+
19
+ CarrierWave.configure do |config|
20
+ config.dropbox_access_token = ENV["ACCESS_TOKEN"]
21
+ end
22
+
23
+ class ImageUploader < CarrierWave::Uploader::Base
24
+ storage :dropbox
25
+
26
+ def store_dir
27
+ "test/images/#{model.id}"
28
+ end
29
+ end
30
+
31
+ class Image < ActiveRecord::Base
32
+ mount_uploader :attachment, ImageUploader
33
+ end
34
+
35
+ class DummyApplication < Sinatra::Application
36
+ post '/image/upload' do
37
+ Image.create!(attachment: params[:attachment])
38
+ end
39
+
40
+ put '/image/edit/:id' do |id|
41
+ Image.find(id).update(attachment: params[:attachment])
42
+ end
43
+ end
@@ -0,0 +1,29 @@
1
+ require 'test_helper'
2
+ require 'net/http'
3
+
4
+ class FileUploadTest < Minitest::Test
5
+ def test_uploading_a_simple_file
6
+ original_count = Image.count
7
+
8
+ post "/image/upload", attachment: file_upload('rails.png')
9
+
10
+ assert last_response.ok?
11
+ assert_equal 1, (Image.count - original_count)
12
+ refute Image.last.attachment.url.empty?
13
+ end
14
+
15
+
16
+ def test_upload_image_editing
17
+ post "/image/upload", attachment: file_upload('ruby.png')
18
+ image = Image.last
19
+
20
+ uploaded_image = Net::HTTP.get(URI image.attachment.url)
21
+ assert_match md5_data(File.read(File.expand_path("../fixtures/ruby.png", __FILE__))), md5_data(uploaded_image)
22
+
23
+ put "/image/edit/#{image.id}", attachment: file_upload('rails.png')
24
+
25
+ new_image = Net::HTTP.get(URI Image.last.attachment.url)
26
+ assert last_response.ok?
27
+ assert_match md5_data(File.read(File.expand_path("../fixtures/rails.png", __FILE__))), md5_data(new_image)
28
+ end
29
+ end
File without changes
File without changes
@@ -0,0 +1,30 @@
1
+ ENV["RACK_ENV"] = "test"
2
+
3
+ require 'rack/test'
4
+
5
+ require 'dummy_app'
6
+ require 'minitest/autorun'
7
+ require 'fileutils'
8
+
9
+ class Minitest::Test
10
+ include Rack::Test::Methods
11
+
12
+ def teardown
13
+ FileUtils.rm_rf(File.expand_path("../public", __FILE__))
14
+ end
15
+
16
+ def app
17
+ DummyApplication
18
+ end
19
+
20
+ def file_upload(image)
21
+ path = File.expand_path("../fixtures/#{image}", __FILE__)
22
+ Rack::Test::UploadedFile.new(path, "image/png")
23
+ end
24
+
25
+ def md5_data(data)
26
+ md5 = Digest::MD5.new
27
+ md5 << data
28
+ md5.to_s
29
+ end
30
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: carrierwave-dropbox
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 2.0.0.rc1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robin Dupret
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-24 00:00:00.000000000 Z
11
+ date: 2018-01-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: carrierwave
@@ -16,146 +16,112 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.9'
19
+ version: '1.2'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.9'
26
+ version: '1.2'
27
27
  - !ruby/object:Gem::Dependency
28
- name: dropbox-sdk
28
+ name: dropbox-sdk-v2
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.6'
33
+ version: 0.0.3
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.6'
40
+ version: 0.0.3
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '1.3'
47
+ version: '1.16'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '1.3'
54
+ version: '1.16'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rake
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: capybara
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
59
  - - "~>"
74
60
  - !ruby/object:Gem::Version
75
- version: '2.2'
61
+ version: '12.3'
76
62
  type: :development
77
63
  prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
66
  - - "~>"
81
67
  - !ruby/object:Gem::Version
82
- version: '2.2'
68
+ version: '12.3'
83
69
  - !ruby/object:Gem::Dependency
84
- name: rspec
70
+ name: rack-test
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
73
  - - "~>"
88
74
  - !ruby/object:Gem::Version
89
- version: '2.14'
75
+ version: '0.8'
90
76
  type: :development
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
80
  - - "~>"
95
81
  - !ruby/object:Gem::Version
96
- version: '2.14'
82
+ version: '0.8'
97
83
  - !ruby/object:Gem::Dependency
98
84
  name: sqlite3
99
85
  requirement: !ruby/object:Gem::Requirement
100
86
  requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
- - !ruby/object:Gem::Dependency
112
- name: mini_magick
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
87
+ - - "~>"
116
88
  - !ruby/object:Gem::Version
117
- version: '0'
89
+ version: '1.3'
118
90
  type: :development
119
91
  prerelease: false
120
92
  version_requirements: !ruby/object:Gem::Requirement
121
93
  requirements:
122
- - - ">="
94
+ - - "~>"
123
95
  - !ruby/object:Gem::Version
124
- version: '0'
96
+ version: '1.3'
125
97
  - !ruby/object:Gem::Dependency
126
- name: capybara-webkit
98
+ name: sinatra
127
99
  requirement: !ruby/object:Gem::Requirement
128
100
  requirements:
129
101
  - - "~>"
130
102
  - !ruby/object:Gem::Version
131
- version: '1.0'
103
+ version: '2.0'
132
104
  type: :development
133
105
  prerelease: false
134
106
  version_requirements: !ruby/object:Gem::Requirement
135
107
  requirements:
136
108
  - - "~>"
137
109
  - !ruby/object:Gem::Version
138
- version: '1.0'
110
+ version: '2.0'
139
111
  - !ruby/object:Gem::Dependency
140
- name: rails
112
+ name: activerecord
141
113
  requirement: !ruby/object:Gem::Requirement
142
114
  requirements:
143
- - - ">="
144
- - !ruby/object:Gem::Version
145
- version: 3.2.14
146
- - - "<"
115
+ - - "~>"
147
116
  - !ruby/object:Gem::Version
148
- version: '5.0'
117
+ version: '5.1'
149
118
  type: :development
150
119
  prerelease: false
151
120
  version_requirements: !ruby/object:Gem::Requirement
152
121
  requirements:
153
- - - ">="
154
- - !ruby/object:Gem::Version
155
- version: 3.2.14
156
- - - "<"
122
+ - - "~>"
157
123
  - !ruby/object:Gem::Version
158
- version: '5.0'
124
+ version: '5.1'
159
125
  description: CarrierWave storage for Dropbox
160
126
  email:
161
127
  - robin.dupret@gmail.com
@@ -163,8 +129,9 @@ executables: []
163
129
  extensions: []
164
130
  extra_rdoc_files: []
165
131
  files:
132
+ - ".credentials.yml"
166
133
  - ".gitignore"
167
- - ".rspec"
134
+ - ".travis.yml"
168
135
  - CHANGELOG.md
169
136
  - Gemfile
170
137
  - LICENSE
@@ -172,64 +139,14 @@ files:
172
139
  - Rakefile
173
140
  - carrierwave-dropbox.gemspec
174
141
  - lib/carrierwave/dropbox.rb
175
- - lib/carrierwave/dropbox/authorize.rake
176
- - lib/carrierwave/dropbox/railtie.rb
177
- - lib/carrierwave/dropbox/rake.rb
178
142
  - lib/carrierwave/dropbox/version.rb
179
143
  - lib/carrierwave/storage/dropbox.rb
180
- - spec/carrierwave-uploader-base_spec.rb
181
- - spec/dummy/.gitignore
182
- - spec/dummy/Gemfile
183
- - spec/dummy/Rakefile
184
- - spec/dummy/app/controllers/application_controller.rb
185
- - spec/dummy/app/controllers/articles_controller.rb
186
- - spec/dummy/app/controllers/concerns/.keep
187
- - spec/dummy/app/helpers/application_helper.rb
188
- - spec/dummy/app/helpers/articles_helper.rb
189
- - spec/dummy/app/mailers/.keep
190
- - spec/dummy/app/models/.keep
191
- - spec/dummy/app/models/article.rb
192
- - spec/dummy/app/models/concerns/.keep
193
- - spec/dummy/app/uploaders/image_uploader.rb
194
- - spec/dummy/app/views/articles/_form.html.erb
195
- - spec/dummy/app/views/articles/edit.html.erb
196
- - spec/dummy/app/views/articles/index.html.erb
197
- - spec/dummy/app/views/articles/new.html.erb
198
- - spec/dummy/app/views/articles/show.html.erb
199
- - spec/dummy/app/views/layouts/application.html.erb
200
- - spec/dummy/bin/bundle
201
- - spec/dummy/bin/rails
202
- - spec/dummy/bin/rake
203
- - spec/dummy/config.ru
204
- - spec/dummy/config/application.rb
205
- - spec/dummy/config/boot.rb
206
- - spec/dummy/config/database.yml
207
- - spec/dummy/config/environment.rb
208
- - spec/dummy/config/environments/development.rb
209
- - spec/dummy/config/environments/production.rb
210
- - spec/dummy/config/environments/test.rb
211
- - spec/dummy/config/initializers/backtrace_silencers.rb
212
- - spec/dummy/config/initializers/carrierwave.rb
213
- - spec/dummy/config/initializers/filter_parameter_logging.rb
214
- - spec/dummy/config/initializers/inflections.rb
215
- - spec/dummy/config/initializers/mime_types.rb
216
- - spec/dummy/config/initializers/secret_token.rb
217
- - spec/dummy/config/initializers/session_store.rb
218
- - spec/dummy/config/initializers/wrap_parameters.rb
219
- - spec/dummy/config/locales/en.yml
220
- - spec/dummy/config/routes.rb
221
- - spec/dummy/db/migrate/20140224111953_create_articles.rb
222
- - spec/dummy/db/schema.rb
223
- - spec/dummy/db/seeds.rb
224
- - spec/dummy/public/404.html
225
- - spec/dummy/public/422.html
226
- - spec/dummy/public/500.html
227
- - spec/dummy/public/favicon.ico
228
- - spec/dummy/public/robots.txt
229
- - spec/features/upload_file_spec.rb
230
- - spec/fixtures/rails.png
231
- - spec/fixtures/ruby.png
232
- - spec/spec_helper.rb
144
+ - test/carrierwave_uploader_base_test.rb
145
+ - test/dummy_app.rb
146
+ - test/file_upload_test.rb
147
+ - test/fixtures/rails.png
148
+ - test/fixtures/ruby.png
149
+ - test/test_helper.rb
233
150
  homepage: https://github.com/robin850/carrierwave-dropbox
234
151
  licenses:
235
152
  - MIT
@@ -245,66 +162,19 @@ required_ruby_version: !ruby/object:Gem::Requirement
245
162
  version: '0'
246
163
  required_rubygems_version: !ruby/object:Gem::Requirement
247
164
  requirements:
248
- - - ">="
165
+ - - ">"
249
166
  - !ruby/object:Gem::Version
250
- version: '0'
167
+ version: 1.3.1
251
168
  requirements: []
252
169
  rubyforge_project:
253
- rubygems_version: 2.2.1
170
+ rubygems_version: 2.6.12
254
171
  signing_key:
255
172
  specification_version: 4
256
173
  summary: Dropbox integration for CarrierWave
257
174
  test_files:
258
- - spec/carrierwave-uploader-base_spec.rb
259
- - spec/dummy/.gitignore
260
- - spec/dummy/Gemfile
261
- - spec/dummy/Rakefile
262
- - spec/dummy/app/controllers/application_controller.rb
263
- - spec/dummy/app/controllers/articles_controller.rb
264
- - spec/dummy/app/controllers/concerns/.keep
265
- - spec/dummy/app/helpers/application_helper.rb
266
- - spec/dummy/app/helpers/articles_helper.rb
267
- - spec/dummy/app/mailers/.keep
268
- - spec/dummy/app/models/.keep
269
- - spec/dummy/app/models/article.rb
270
- - spec/dummy/app/models/concerns/.keep
271
- - spec/dummy/app/uploaders/image_uploader.rb
272
- - spec/dummy/app/views/articles/_form.html.erb
273
- - spec/dummy/app/views/articles/edit.html.erb
274
- - spec/dummy/app/views/articles/index.html.erb
275
- - spec/dummy/app/views/articles/new.html.erb
276
- - spec/dummy/app/views/articles/show.html.erb
277
- - spec/dummy/app/views/layouts/application.html.erb
278
- - spec/dummy/bin/bundle
279
- - spec/dummy/bin/rails
280
- - spec/dummy/bin/rake
281
- - spec/dummy/config.ru
282
- - spec/dummy/config/application.rb
283
- - spec/dummy/config/boot.rb
284
- - spec/dummy/config/database.yml
285
- - spec/dummy/config/environment.rb
286
- - spec/dummy/config/environments/development.rb
287
- - spec/dummy/config/environments/production.rb
288
- - spec/dummy/config/environments/test.rb
289
- - spec/dummy/config/initializers/backtrace_silencers.rb
290
- - spec/dummy/config/initializers/carrierwave.rb
291
- - spec/dummy/config/initializers/filter_parameter_logging.rb
292
- - spec/dummy/config/initializers/inflections.rb
293
- - spec/dummy/config/initializers/mime_types.rb
294
- - spec/dummy/config/initializers/secret_token.rb
295
- - spec/dummy/config/initializers/session_store.rb
296
- - spec/dummy/config/initializers/wrap_parameters.rb
297
- - spec/dummy/config/locales/en.yml
298
- - spec/dummy/config/routes.rb
299
- - spec/dummy/db/migrate/20140224111953_create_articles.rb
300
- - spec/dummy/db/schema.rb
301
- - spec/dummy/db/seeds.rb
302
- - spec/dummy/public/404.html
303
- - spec/dummy/public/422.html
304
- - spec/dummy/public/500.html
305
- - spec/dummy/public/favicon.ico
306
- - spec/dummy/public/robots.txt
307
- - spec/features/upload_file_spec.rb
308
- - spec/fixtures/rails.png
309
- - spec/fixtures/ruby.png
310
- - spec/spec_helper.rb
175
+ - test/carrierwave_uploader_base_test.rb
176
+ - test/dummy_app.rb
177
+ - test/file_upload_test.rb
178
+ - test/fixtures/rails.png
179
+ - test/fixtures/ruby.png
180
+ - test/test_helper.rb