carrierwave-mongoid 0.4.0 → 0.5.0

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.
data/.gitignore CHANGED
@@ -4,5 +4,6 @@ pkg/*
4
4
  .bundle
5
5
  spec/public
6
6
  .rvmrc
7
+ .ruby-version
7
8
  Gemfile.lock
8
9
  log/*
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # CarrierWave for Mongoid [![Build Status](https://travis-ci.org/jnicklas/carrierwave-mongoid.png?branch=master)](http://travis-ci.org/jnicklas/carrierwave-mongoid)
1
+ # CarrierWave for Mongoid [![Gem Version](https://badge.fury.io/rb/carrierwave-mongoid.png)](http://badge.fury.io/rb/carrierwave-mongoid) [![Build Status](https://travis-ci.org/jnicklas/carrierwave-mongoid.png?branch=master)](http://travis-ci.org/jnicklas/carrierwave-mongoid)
2
2
 
3
3
  This gem adds support for Mongoid and MongoDB's GridFS to
4
4
  [CarrierWave](https://github.com/jnicklas/carrierwave/)
@@ -72,23 +72,27 @@ end
72
72
 
73
73
  ## Version differences
74
74
 
75
- ### 0.3.x
75
+ | Version | Notes |
76
+ |----------|---------------------------------------------------------------------------------|
77
+ | ~> 0.4.0 | ([compare][compare-0.4], [dependencies][deps-0.4]) |
78
+ | ~> 0.3.0 | ([compare][compare-0.3], [dependencies][deps-0.3]) Mongoid >= 3.0 |
79
+ | ~> 0.2.0 | ([compare][compare-0.2], [dependencies][deps-0.2]) Rails >= 3.2, Mongoid ~> 2.0 |
80
+ | ~> 0.1.0 | ([compare][compare-0.1], [dependencies][deps-0.1]) Rails <= 3.1 |
76
81
 
77
- carrierwave-mongoid ~> 0.3.0 is only compatible with Mongoid 3.0 or higher.
82
+ [compare-0.4]: https://github.com/jnicklas/carrierwave-mongoid/compare/v0.3.1...v0.4.0
83
+ [compare-0.3]: https://github.com/jnicklas/carrierwave-mongoid/compare/v0.2.1...v0.3.1
84
+ [compare-0.2]: https://github.com/jnicklas/carrierwave-mongoid/compare/v0.1.7...v0.2.2
85
+ [compare-0.1]: https://github.com/jnicklas/carrierwave-mongoid/compare/v0.1.1...v0.1.7
78
86
 
79
- ### 0.2.x
80
-
81
- carrierwave-mongoid ~> 0.2.0 is only compatible with Rails 3.2 or higher.
82
-
83
- ### 0.1.x
84
-
85
- carrierwave-mongoid ~> 0.1.1 depends on carrierwave ~> 0.5.7. This version of
86
- carrierwave is only compatible with Rails 3.1 or earlier.
87
+ [deps-0.4]: https://rubygems.org/gems/carrierwave-mongoid/versions/0.4.0
88
+ [deps-0.3]: https://rubygems.org/gems/carrierwave-mongoid/versions/0.3.1
89
+ [deps-0.2]: https://rubygems.org/gems/carrierwave-mongoid/versions/0.2.2
90
+ [deps-0.1]: https://rubygems.org/gems/carrierwave-mongoid/versions/0.1.7
87
91
 
88
92
  ### Changes from earlier versions of CarrierWave <= 0.5.6
89
93
 
90
94
  CarrierWave used to have built-in Mongoid support. This gem replaces that
91
- support and only only supports Mongoid ~> 2.1
95
+ support and only supports Mongoid ~> 2.1
92
96
 
93
97
  You can use `upload_identifier` to retrieve the original name of the uploaded file.
94
98
 
@@ -11,6 +11,7 @@ Gem::Specification.new do |s|
11
11
  s.homepage = "https://github.com/jnicklas/carrierwave-mongoid"
12
12
  s.summary = %q{Mongoid support for CarrierWave}
13
13
  s.description = %q{Mongoid support for CarrierWave}
14
+ s.license = "MIT"
14
15
 
15
16
  s.rubyforge_project = "carrierwave-mongoid"
16
17
 
@@ -39,6 +39,10 @@ module CarrierWave
39
39
  super
40
40
  end
41
41
 
42
+ def remove_#{column}!
43
+ super unless paranoid? && flagged_for_destroy?
44
+ end
45
+
42
46
  # Overrides Mongoid's default dirty behavior to instead work more like
43
47
  # ActiveRecord's. Mongoid doesn't deem an attribute as changed unless
44
48
  # the new value is different than the original. Given that CarrierWave
@@ -1,5 +1,5 @@
1
1
  module Carrierwave
2
2
  module Mongoid
3
- VERSION = "0.4.0"
3
+ VERSION = "0.5.0"
4
4
  end
5
5
  end
@@ -75,7 +75,7 @@ module CarrierWave
75
75
  def grid
76
76
  self.class.grid
77
77
  end
78
- end
78
+ end # File
79
79
 
80
80
  ##
81
81
  # Store the file in MongoDB's GridFS GridStore
@@ -109,6 +109,6 @@ module CarrierWave
109
109
  CarrierWave::Storage::GridFS::File.new(uploader, uploader.store_path(identifier))
110
110
  end
111
111
 
112
- end # File
112
+ end # GridFS
113
113
  end # Storage
114
114
  end # CarrierWave
data/spec/mongoid_spec.rb CHANGED
@@ -766,6 +766,33 @@ describe CarrierWave::Mongoid do
766
766
  end
767
767
  end
768
768
 
769
+ describe "with paranoia enabled" do
770
+ before do
771
+ @class = reset_mongo_class
772
+ @class.collection.drop
773
+ @class.class_eval do
774
+ include Mongoid::Paranoia
775
+ end
776
+
777
+ @doc = @class.new(image: stub_file("old.jpeg"))
778
+ @doc.save.should be_true
779
+ end
780
+
781
+ it "should not remove underlying image after #destroy" do
782
+ @doc.destroy.should be_true
783
+ @class.count.should eql(0)
784
+ @class.deleted.count.should eql(1)
785
+ File.exist?(public_path('uploads/old.jpeg')).should be_true
786
+ end
787
+
788
+ it "should remove underlying image after #destroy!" do
789
+ @doc.destroy!.should be_true
790
+ @class.count.should eql(0)
791
+ @class.deleted.count.should eql(0)
792
+ File.exist?(public_path('uploads/old.jpeg')).should be_false
793
+ end
794
+ end
795
+
769
796
  context "JSON serialization with multiple uploaders" do
770
797
  before do
771
798
  @class = reset_mongo_class
metadata CHANGED
@@ -1,8 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: carrierwave-mongoid
3
3
  version: !ruby/object:Gem::Version
4
+ version: 0.5.0
4
5
  prerelease:
5
- version: 0.4.0
6
6
  platform: ruby
7
7
  authors:
8
8
  - Jonas Nicklas
@@ -10,120 +10,120 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2013-01-18 00:00:00.000000000 Z
13
+ date: 2013-02-18 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
- type: :runtime
17
- version_requirements: !ruby/object:Gem::Requirement
18
- none: false
19
- requirements:
20
- - - ~>
21
- - !ruby/object:Gem::Version
22
- version: 0.8.0
23
16
  name: carrierwave
24
- prerelease: false
25
17
  requirement: !ruby/object:Gem::Requirement
26
18
  none: false
27
19
  requirements:
28
20
  - - ~>
29
21
  - !ruby/object:Gem::Version
30
22
  version: 0.8.0
31
- - !ruby/object:Gem::Dependency
32
23
  type: :runtime
24
+ prerelease: false
33
25
  version_requirements: !ruby/object:Gem::Requirement
34
26
  none: false
35
27
  requirements:
36
28
  - - ~>
37
29
  - !ruby/object:Gem::Version
38
- version: '3.0'
30
+ version: 0.8.0
31
+ - !ruby/object:Gem::Dependency
39
32
  name: mongoid
40
- prerelease: false
41
33
  requirement: !ruby/object:Gem::Requirement
42
34
  none: false
43
35
  requirements:
44
36
  - - ~>
45
37
  - !ruby/object:Gem::Version
46
38
  version: '3.0'
47
- - !ruby/object:Gem::Dependency
48
39
  type: :runtime
40
+ prerelease: false
49
41
  version_requirements: !ruby/object:Gem::Requirement
50
42
  none: false
51
43
  requirements:
52
44
  - - ~>
53
45
  - !ruby/object:Gem::Version
54
- version: '1.3'
46
+ version: '3.0'
47
+ - !ruby/object:Gem::Dependency
55
48
  name: mongoid-grid_fs
56
- prerelease: false
57
49
  requirement: !ruby/object:Gem::Requirement
58
50
  none: false
59
51
  requirements:
60
52
  - - ~>
61
53
  - !ruby/object:Gem::Version
62
54
  version: '1.3'
63
- - !ruby/object:Gem::Dependency
64
- type: :development
55
+ type: :runtime
56
+ prerelease: false
65
57
  version_requirements: !ruby/object:Gem::Requirement
66
58
  none: false
67
59
  requirements:
68
60
  - - ~>
69
61
  - !ruby/object:Gem::Version
70
- version: '2.6'
62
+ version: '1.3'
63
+ - !ruby/object:Gem::Dependency
71
64
  name: rspec
72
- prerelease: false
73
65
  requirement: !ruby/object:Gem::Requirement
74
66
  none: false
75
67
  requirements:
76
68
  - - ~>
77
69
  - !ruby/object:Gem::Version
78
70
  version: '2.6'
79
- - !ruby/object:Gem::Dependency
80
71
  type: :development
72
+ prerelease: false
81
73
  version_requirements: !ruby/object:Gem::Requirement
82
74
  none: false
83
75
  requirements:
84
76
  - - ~>
85
77
  - !ruby/object:Gem::Version
86
- version: '10.0'
78
+ version: '2.6'
79
+ - !ruby/object:Gem::Dependency
87
80
  name: rake
88
- prerelease: false
89
81
  requirement: !ruby/object:Gem::Requirement
90
82
  none: false
91
83
  requirements:
92
84
  - - ~>
93
85
  - !ruby/object:Gem::Version
94
86
  version: '10.0'
95
- - !ruby/object:Gem::Dependency
96
87
  type: :development
88
+ prerelease: false
97
89
  version_requirements: !ruby/object:Gem::Requirement
98
90
  none: false
99
91
  requirements:
100
- - - ! '>='
92
+ - - ~>
101
93
  - !ruby/object:Gem::Version
102
- version: '0'
94
+ version: '10.0'
95
+ - !ruby/object:Gem::Dependency
103
96
  name: mini_magick
104
- prerelease: false
105
97
  requirement: !ruby/object:Gem::Requirement
106
98
  none: false
107
99
  requirements:
108
100
  - - ! '>='
109
101
  - !ruby/object:Gem::Version
110
102
  version: '0'
111
- - !ruby/object:Gem::Dependency
112
103
  type: :development
104
+ prerelease: false
113
105
  version_requirements: !ruby/object:Gem::Requirement
114
106
  none: false
115
107
  requirements:
116
108
  - - ! '>='
117
109
  - !ruby/object:Gem::Version
118
110
  version: '0'
111
+ - !ruby/object:Gem::Dependency
119
112
  name: pry
120
- prerelease: false
121
113
  requirement: !ruby/object:Gem::Requirement
122
114
  none: false
123
115
  requirements:
124
116
  - - ! '>='
125
117
  - !ruby/object:Gem::Version
126
118
  version: '0'
119
+ type: :development
120
+ prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ none: false
123
+ requirements:
124
+ - - ! '>='
125
+ - !ruby/object:Gem::Version
126
+ version: '0'
127
127
  description: Mongoid support for CarrierWave
128
128
  email:
129
129
  - jonas.nicklas@gmail.com
@@ -153,7 +153,8 @@ files:
153
153
  - spec/spec_helper.rb
154
154
  - spec/storage/grid_fs_spec.rb
155
155
  homepage: https://github.com/jnicklas/carrierwave-mongoid
156
- licenses: []
156
+ licenses:
157
+ - MIT
157
158
  post_install_message:
158
159
  rdoc_options: []
159
160
  require_paths:
@@ -163,19 +164,19 @@ required_ruby_version: !ruby/object:Gem::Requirement
163
164
  requirements:
164
165
  - - ! '>='
165
166
  - !ruby/object:Gem::Version
167
+ version: '0'
166
168
  segments:
167
169
  - 0
168
- hash: 1628915259136896481
169
- version: '0'
170
+ hash: 1710824902897794014
170
171
  required_rubygems_version: !ruby/object:Gem::Requirement
171
172
  none: false
172
173
  requirements:
173
174
  - - ! '>='
174
175
  - !ruby/object:Gem::Version
176
+ version: '0'
175
177
  segments:
176
178
  - 0
177
- hash: 1628915259136896481
178
- version: '0'
179
+ hash: 1710824902897794014
179
180
  requirements: []
180
181
  rubyforge_project: carrierwave-mongoid
181
182
  rubygems_version: 1.8.23