mm_uses_no_id 0.0.4 → 0.0.5

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.
@@ -18,4 +18,24 @@ module MmUsesNoId
18
18
  end
19
19
  alias :== :eql?
20
20
 
21
+ def initialize_copy(other)
22
+ @_new = true
23
+ @_destroyed = false
24
+
25
+ begin
26
+ remove_instance_variable(:@_id)
27
+ remove_instance_variable(:@_id_before_type_cast)
28
+ rescue
29
+ end
30
+
31
+ associations.each do |name, association|
32
+ instance_variable_set(association.ivar, nil)
33
+ end
34
+ self.attributes = other.attributes.clone.except(:_id).inject({}) do |hash, entry|
35
+ key, value = entry
36
+ hash[key] = value.duplicable? ? value.clone : value
37
+ hash
38
+ end
39
+ end
40
+
21
41
  end
@@ -1,3 +1,3 @@
1
1
  module MmUsesNoId
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
metadata CHANGED
@@ -1,60 +1,71 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: mm_uses_no_id
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.5
4
5
  prerelease:
5
- version: 0.0.4
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Jonathan Chambers
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
-
13
- date: 2012-07-14 00:00:00 Z
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
12
+ date: 2013-01-05 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
16
15
  name: rspec
17
- prerelease: false
18
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
19
17
  none: false
20
- requirements:
21
- - - ">="
22
- - !ruby/object:Gem::Version
23
- version: "2.7"
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '2.7'
24
22
  type: :development
25
- version_requirements: *id001
26
- - !ruby/object:Gem::Dependency
27
- name: bson_ext
28
23
  prerelease: false
29
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '2.7'
30
+ - !ruby/object:Gem::Dependency
31
+ name: bson_ext
32
+ requirement: !ruby/object:Gem::Requirement
30
33
  none: false
31
- requirements:
32
- - - ">="
33
- - !ruby/object:Gem::Version
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
34
37
  version: 1.5.0
35
38
  type: :development
36
- version_requirements: *id002
37
- - !ruby/object:Gem::Dependency
38
- name: mongo_mapper
39
39
  prerelease: false
40
- requirement: &id003 !ruby/object:Gem::Requirement
40
+ version_requirements: !ruby/object:Gem::Requirement
41
41
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: 1.5.0
46
+ - !ruby/object:Gem::Dependency
47
+ name: mongo_mapper
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
45
53
  version: 0.10.1
46
54
  type: :runtime
47
- version_requirements: *id003
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: 0.10.1
48
62
  description: MongoMapper plugin that removes ID field from EmbeddedDocuments
49
- email:
63
+ email:
50
64
  - j.chambers@gmx.net
51
65
  executables: []
52
-
53
66
  extensions: []
54
-
55
67
  extra_rdoc_files: []
56
-
57
- files:
68
+ files:
58
69
  - .gitignore
59
70
  - Gemfile
60
71
  - MIT-LICENSE
@@ -65,32 +76,29 @@ files:
65
76
  - mm_uses_no_id.gemspec
66
77
  - spec/mm_uses_no_id_spec.rb
67
78
  homepage: https://github.com/jmchambers/mm_uses_no_id
68
- licenses:
79
+ licenses:
69
80
  - MIT
70
81
  post_install_message:
71
82
  rdoc_options: []
72
-
73
- require_paths:
83
+ require_paths:
74
84
  - lib
75
- required_ruby_version: !ruby/object:Gem::Requirement
85
+ required_ruby_version: !ruby/object:Gem::Requirement
76
86
  none: false
77
- requirements:
78
- - - ">="
79
- - !ruby/object:Gem::Version
80
- version: "0"
81
- required_rubygems_version: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ - - ! '>='
89
+ - !ruby/object:Gem::Version
90
+ version: '0'
91
+ required_rubygems_version: !ruby/object:Gem::Requirement
82
92
  none: false
83
- requirements:
84
- - - ">="
85
- - !ruby/object:Gem::Version
86
- version: "0"
93
+ requirements:
94
+ - - ! '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
87
97
  requirements: []
88
-
89
98
  rubyforge_project:
90
- rubygems_version: 1.8.17
99
+ rubygems_version: 1.8.24
91
100
  signing_key:
92
101
  specification_version: 3
93
102
  summary: id-less embedded docs for MM
94
103
  test_files: []
95
-
96
104
  has_rdoc: