mm-concerns 1.0.1 → 1.1.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/Gemfile CHANGED
@@ -1,12 +1,13 @@
1
1
  source "http://rubygems.org"
2
- # Add dependencies required to use your gem here.
3
- # Example:
4
- # gem "activesupport", ">= 2.3.5"
5
2
 
6
- # Add dependencies to develop your gem here.
7
- # Include everything needed to run rake, tests, features, etc.
8
3
  group :development do
4
+ gem 'bson_ext', '1.3.0'
5
+ gem 'mongo_mapper', '0.9.0'
6
+ gem 'i18n'
7
+
8
+ gem 'ruby-debug'
9
9
  gem "rspec", "~> 2.1.0"
10
+ gem "yard", "~> 0.6.0"
10
11
  gem "bundler", "~> 1.0.0"
11
12
  gem "jeweler", "~> 1.5.1"
12
13
  gem "rcov", ">= 0"
data/Gemfile.lock CHANGED
@@ -1,12 +1,31 @@
1
1
  GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
+ activemodel (3.0.6)
5
+ activesupport (= 3.0.6)
6
+ builder (~> 2.1.2)
7
+ i18n (~> 0.5.0)
8
+ activesupport (3.0.6)
9
+ bson (1.3.0)
10
+ bson_ext (1.3.0)
11
+ builder (2.1.2)
12
+ columnize (0.3.2)
4
13
  diff-lcs (1.1.2)
5
14
  git (1.2.5)
15
+ i18n (0.5.0)
6
16
  jeweler (1.5.1)
7
17
  bundler (~> 1.0.0)
8
18
  git (>= 1.2.5)
9
19
  rake
20
+ linecache (0.43)
21
+ mongo (1.3.0)
22
+ bson (>= 1.3.0)
23
+ mongo_mapper (0.9.0)
24
+ activemodel (~> 3.0.0)
25
+ activesupport (~> 3.0.0)
26
+ plucky (~> 0.3.6)
27
+ plucky (0.3.7)
28
+ mongo (~> 1.1)
10
29
  rake (0.8.7)
11
30
  rcov (0.9.9)
12
31
  rspec (2.1.0)
@@ -17,12 +36,23 @@ GEM
17
36
  rspec-expectations (2.1.0)
18
37
  diff-lcs (~> 1.1.2)
19
38
  rspec-mocks (2.1.0)
39
+ ruby-debug (0.10.4)
40
+ columnize (>= 0.1)
41
+ ruby-debug-base (~> 0.10.4.0)
42
+ ruby-debug-base (0.10.4)
43
+ linecache (>= 0.3)
44
+ yard (0.6.7)
20
45
 
21
46
  PLATFORMS
22
47
  ruby
23
48
 
24
49
  DEPENDENCIES
50
+ bson_ext (= 1.3.0)
25
51
  bundler (~> 1.0.0)
52
+ i18n
26
53
  jeweler (~> 1.5.1)
54
+ mongo_mapper (= 0.9.0)
27
55
  rcov
28
56
  rspec (~> 2.1.0)
57
+ ruby-debug
58
+ yard (~> 0.6.0)
data/README.rdoc CHANGED
@@ -5,6 +5,9 @@ A very simple mongomapper plugin that lets you organise your models into subdire
5
5
  this code is a modification of code I saw in in [teambox](https://github.com/teambox/teambox)
6
6
  https://github.com/teambox/teambox/blob/master/config/initializers/concerns.rb
7
7
 
8
+ v1.1 is a mongomapper 0.9.0 update to support the new plugin system
9
+ if you are using mongomapper 0.8.x please use version 1.0.1 of the gem
10
+
8
11
 
9
12
  == Usage
10
13
 
@@ -53,6 +56,7 @@ app/models/user/scopes.rb
53
56
  scope :for_project, lambda { |project| where( :id => { :$in => project.user_ids } ) }
54
57
  end
55
58
 
59
+
56
60
  == Why?
57
61
 
58
62
  I find this system of organizing my functionality make my codebase much quicker and easier to maintain.
@@ -84,7 +88,7 @@ I use this plugin to organize my models like so:
84
88
  `-- validations.rb
85
89
 
86
90
 
87
- I'm be very interested to hear comments on this system, if this helps you out, or if you have a better way of organizing your code.
91
+ I'd be very interested to hear comments on this system, if this helps you out, or if you have a better way of organizing your code.
88
92
 
89
93
 
90
94
  == Contributing to mm-concerns
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.1
1
+ 1.1.0
data/lib/mm-concerns.rb CHANGED
@@ -1,4 +1,6 @@
1
- module ConcernsPlugin
1
+ module MongoMapperConcernsPlugin
2
+ extend ActiveSupport::Concern
3
+
2
4
  module ClassMethods
3
5
  def concerned_with(*concerns)
4
6
  concerns.each do |concern|
@@ -6,18 +8,14 @@ module ConcernsPlugin
6
8
  end
7
9
  end
8
10
  end
11
+
9
12
  module InstanceMethods
10
13
  def concerned_with(*concerns)
11
14
  self.class.concerned_with(concerns)
12
15
  end
13
16
  end
17
+
14
18
  end
15
19
 
16
- module ConcernsPluginAddition
17
- def self.included(model)
18
- model.plugin ConcernsPlugin
19
- end
20
- end
21
-
22
- MongoMapper::Document.append_inclusions(ConcernsPluginAddition)
23
- MongoMapper::EmbeddedDocument.append_inclusions(ConcernsPluginAddition)
20
+ MongoMapper::Document.plugin(MongoMapperConcernsPlugin)
21
+ MongoMapper::EmbeddedDocument.plugin(MongoMapperConcernsPlugin)
data/mm-concerns.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{mm-concerns}
8
- s.version = "1.0.1"
8
+ s.version = "1.1.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Luke Cunningham"]
12
- s.date = %q{2010-12-18}
12
+ s.date = %q{2011-04-14}
13
13
  s.description = %q{A very simple mongomapper plugin that lets you organise your models into subdirectories}
14
14
  s.email = %q{luke@icaruswings.com}
15
15
  s.extra_rdoc_files = [
@@ -33,7 +33,7 @@ Gem::Specification.new do |s|
33
33
  s.homepage = %q{http://github.com/icaruswings/mm-concerns}
34
34
  s.licenses = ["MIT"]
35
35
  s.require_paths = ["lib"]
36
- s.rubygems_version = %q{1.3.7}
36
+ s.rubygems_version = %q{1.6.2}
37
37
  s.summary = %q{A very simple mongomapper plugin that lets you organise your models into subdirectories}
38
38
  s.test_files = [
39
39
  "spec/mm-concerns_spec.rb",
@@ -41,22 +41,36 @@ Gem::Specification.new do |s|
41
41
  ]
42
42
 
43
43
  if s.respond_to? :specification_version then
44
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
45
44
  s.specification_version = 3
46
45
 
47
46
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
47
+ s.add_development_dependency(%q<bson_ext>, ["= 1.3.0"])
48
+ s.add_development_dependency(%q<mongo_mapper>, ["= 0.9.0"])
49
+ s.add_development_dependency(%q<i18n>, [">= 0"])
50
+ s.add_development_dependency(%q<ruby-debug>, [">= 0"])
48
51
  s.add_development_dependency(%q<rspec>, ["~> 2.1.0"])
52
+ s.add_development_dependency(%q<yard>, ["~> 0.6.0"])
49
53
  s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
50
54
  s.add_development_dependency(%q<jeweler>, ["~> 1.5.1"])
51
55
  s.add_development_dependency(%q<rcov>, [">= 0"])
52
56
  else
57
+ s.add_dependency(%q<bson_ext>, ["= 1.3.0"])
58
+ s.add_dependency(%q<mongo_mapper>, ["= 0.9.0"])
59
+ s.add_dependency(%q<i18n>, [">= 0"])
60
+ s.add_dependency(%q<ruby-debug>, [">= 0"])
53
61
  s.add_dependency(%q<rspec>, ["~> 2.1.0"])
62
+ s.add_dependency(%q<yard>, ["~> 0.6.0"])
54
63
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
55
64
  s.add_dependency(%q<jeweler>, ["~> 1.5.1"])
56
65
  s.add_dependency(%q<rcov>, [">= 0"])
57
66
  end
58
67
  else
68
+ s.add_dependency(%q<bson_ext>, ["= 1.3.0"])
69
+ s.add_dependency(%q<mongo_mapper>, ["= 0.9.0"])
70
+ s.add_dependency(%q<i18n>, [">= 0"])
71
+ s.add_dependency(%q<ruby-debug>, [">= 0"])
59
72
  s.add_dependency(%q<rspec>, ["~> 2.1.0"])
73
+ s.add_dependency(%q<yard>, ["~> 0.6.0"])
60
74
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
61
75
  s.add_dependency(%q<jeweler>, ["~> 1.5.1"])
62
76
  s.add_dependency(%q<rcov>, [">= 0"])
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mm-concerns
3
3
  version: !ruby/object:Gem::Version
4
- hash: 21
5
- prerelease: false
4
+ hash: 19
5
+ prerelease:
6
6
  segments:
7
7
  - 1
8
- - 0
9
8
  - 1
10
- version: 1.0.1
9
+ - 0
10
+ version: 1.1.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Luke Cunningham
@@ -15,12 +15,73 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-12-18 00:00:00 +11:00
18
+ date: 2011-04-14 00:00:00 +10:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
22
  prerelease: false
23
- version_requirements: &id001 !ruby/object:Gem::Requirement
23
+ type: :development
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - "="
28
+ - !ruby/object:Gem::Version
29
+ hash: 27
30
+ segments:
31
+ - 1
32
+ - 3
33
+ - 0
34
+ version: 1.3.0
35
+ name: bson_ext
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ prerelease: false
39
+ type: :development
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - "="
44
+ - !ruby/object:Gem::Version
45
+ hash: 59
46
+ segments:
47
+ - 0
48
+ - 9
49
+ - 0
50
+ version: 0.9.0
51
+ name: mongo_mapper
52
+ version_requirements: *id002
53
+ - !ruby/object:Gem::Dependency
54
+ prerelease: false
55
+ type: :development
56
+ requirement: &id003 !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ hash: 3
62
+ segments:
63
+ - 0
64
+ version: "0"
65
+ name: i18n
66
+ version_requirements: *id003
67
+ - !ruby/object:Gem::Dependency
68
+ prerelease: false
69
+ type: :development
70
+ requirement: &id004 !ruby/object:Gem::Requirement
71
+ none: false
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ hash: 3
76
+ segments:
77
+ - 0
78
+ version: "0"
79
+ name: ruby-debug
80
+ version_requirements: *id004
81
+ - !ruby/object:Gem::Dependency
82
+ prerelease: false
83
+ type: :development
84
+ requirement: &id005 !ruby/object:Gem::Requirement
24
85
  none: false
25
86
  requirements:
26
87
  - - ~>
@@ -32,11 +93,27 @@ dependencies:
32
93
  - 0
33
94
  version: 2.1.0
34
95
  name: rspec
35
- requirement: *id001
96
+ version_requirements: *id005
97
+ - !ruby/object:Gem::Dependency
98
+ prerelease: false
36
99
  type: :development
100
+ requirement: &id006 !ruby/object:Gem::Requirement
101
+ none: false
102
+ requirements:
103
+ - - ~>
104
+ - !ruby/object:Gem::Version
105
+ hash: 7
106
+ segments:
107
+ - 0
108
+ - 6
109
+ - 0
110
+ version: 0.6.0
111
+ name: yard
112
+ version_requirements: *id006
37
113
  - !ruby/object:Gem::Dependency
38
114
  prerelease: false
39
- version_requirements: &id002 !ruby/object:Gem::Requirement
115
+ type: :development
116
+ requirement: &id007 !ruby/object:Gem::Requirement
40
117
  none: false
41
118
  requirements:
42
119
  - - ~>
@@ -48,11 +125,11 @@ dependencies:
48
125
  - 0
49
126
  version: 1.0.0
50
127
  name: bundler
51
- requirement: *id002
52
- type: :development
128
+ version_requirements: *id007
53
129
  - !ruby/object:Gem::Dependency
54
130
  prerelease: false
55
- version_requirements: &id003 !ruby/object:Gem::Requirement
131
+ type: :development
132
+ requirement: &id008 !ruby/object:Gem::Requirement
56
133
  none: false
57
134
  requirements:
58
135
  - - ~>
@@ -64,11 +141,11 @@ dependencies:
64
141
  - 1
65
142
  version: 1.5.1
66
143
  name: jeweler
67
- requirement: *id003
68
- type: :development
144
+ version_requirements: *id008
69
145
  - !ruby/object:Gem::Dependency
70
146
  prerelease: false
71
- version_requirements: &id004 !ruby/object:Gem::Requirement
147
+ type: :development
148
+ requirement: &id009 !ruby/object:Gem::Requirement
72
149
  none: false
73
150
  requirements:
74
151
  - - ">="
@@ -78,8 +155,7 @@ dependencies:
78
155
  - 0
79
156
  version: "0"
80
157
  name: rcov
81
- requirement: *id004
82
- type: :development
158
+ version_requirements: *id009
83
159
  description: A very simple mongomapper plugin that lets you organise your models into subdirectories
84
160
  email: luke@icaruswings.com
85
161
  executables: []
@@ -132,7 +208,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
132
208
  requirements: []
133
209
 
134
210
  rubyforge_project:
135
- rubygems_version: 1.3.7
211
+ rubygems_version: 1.6.2
136
212
  signing_key:
137
213
  specification_version: 3
138
214
  summary: A very simple mongomapper plugin that lets you organise your models into subdirectories