cream 0.7.2 → 0.7.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (6) hide show
  1. data/Gemfile +12 -12
  2. data/README.markdown +27 -27
  3. data/Rakefile +11 -11
  4. data/VERSION +1 -1
  5. data/cream.gemspec +35 -35
  6. metadata +28 -29
data/Gemfile CHANGED
@@ -3,26 +3,26 @@ source 'http://gems.github.com/'
3
3
 
4
4
  group :default do
5
5
  gem "devise-links", "~> 0.1.4"
6
- gem "cancan-rest-links", "~> 0.1.3"
7
- gem "cancan-permits", "~> 0.2.3"
6
+ gem "cancan-rest-links", ">= 0.1.3"
7
+ gem "cancan-permits", ">= 0.2.6"
8
8
 
9
9
  gem "require_all", "~> 1.2.0"
10
10
 
11
- gem "devise", ">= 1.1.2"
11
+ gem "devise", ">= 1.2.0"
12
12
  gem "cancan", "~> 1.4.0"
13
- gem "rails", "~> 3.0.0"
13
+ gem "rails", "~> 3.0"
14
14
 
15
- gem "rails3_artifactor", "~> 0.2.5"
16
- gem 'logging_assist', "~> 0.1.3"
15
+ gem "rails3_artifactor", "~> 0.3.0"
16
+ gem 'logging_assist', "~> 0.1.6"
17
17
 
18
- gem "r3_plugin_toolbox", "~> 0.3.6"
19
- gem "sugar-high", "~> 0.2.10"
18
+ gem "r3_plugin_toolbox", ">= 0.3.14"
19
+ gem "sugar-high", "~> 0.3.0"
20
20
  end
21
21
 
22
22
  group :test do
23
23
  gem 'ffaker', '~> 0.4.0', :git => 'http://github.com/kematzy/ffaker.git'
24
- gem "rspec", ">= 2.0.0.rc"
25
- gem "generator-spec", "~> 0.6.5"
26
- gem "rspec-action_view", "~> 0.3.1"
27
- gem "rails-app-spec", "~> 0.2.14"
24
+ gem "rspec", ">= 2.0.0"
25
+ gem "generator-spec", ">= 0.6.0"
26
+ gem "rspec-action_view", ">= 0.3.1"
27
+ gem "rails-app-spec", "~> 0.3.0"
28
28
  end
data/README.markdown CHANGED
@@ -52,13 +52,12 @@ Role-Group support is planned as a future add-on for the roles strategies integr
52
52
 
53
53
  _Note:_
54
54
  You are most welcome to provide "plugins" for any other role frameworks. Please follow the API conventions of Roles generic.
55
+ Update: Currently in the process of expanding the API a little (add, remove, exhange roles) while making it more generic and flexible.
55
56
 
56
57
  ## Permission systems
57
58
 
58
59
  There is support for the [CanCan](http://github.com/ryanb/cancan) permission system.
59
- I have created a [Cancan permits](http://github.com/kristianmandrup/cancan-permits) gem that adds the concept of Permits for each role (see below)
60
-
61
- I'm considering supporting [Canable](http://github.com/jnunemaker/canable) as well (but only if requested by the community!)
60
+ I have created a [Cancan permits](http://github.com/kristianmandrup/cancan-permits) gem that adds the concept of Permits for each role (see below).
62
61
 
63
62
  _Note:_
64
63
  You are most welcome to provide "plugins" for other permission frameworks!
@@ -112,41 +111,37 @@ The *config* generator will generate a set of Permit files which are placed in '
112
111
 
113
112
  The project [CanCan REST links](http://github.com/kristianmandrup/cancan-rest-links) provides a convenient way to handle CanCan REST links, using a flexible API.
114
113
 
115
- ### Canable
116
-
117
- In [Canable](http://github.com/jnunemaker/canable) the permissions are by default defined in the models.
118
- I plan to tweak this behavior to enable the same or a similar central permission setup as I use for CanCan.
119
- In my (somewhat old and degenerate) fork of *Canable*, I have generators to setup the models and user with a *Canable* config.
120
-
121
- _Note_: These generators should be updated to take advantage of my latest generator-spec and other supporting generator assitant gems!
122
-
123
- More to follow in the future...
124
-
125
114
  ## Permits
126
115
 
127
- Currently CanCan is supported as the permission system. I have added the concept of Permits linked to Roles.
116
+ Currently CanCan is supported as the permission system. I have added the concept of Permits (and optionally Licenses) linked to Roles.
128
117
 
129
118
  Check out [Cancan permits](http://github.com/kristianmandrup/cancan-permits) for more info for how to use Permits.
130
119
 
131
- Cream has ben updated to support my latest version of *Cancan permits*, which now support all the ORMs which cream aims to support and which Roles Generic supports.
120
+ Cream has ben updated to support my the version of *Cancan permits*, which now support all the ORMs that both Cream and Roles Generic support.
132
121
  The various players are starting to play together nice!
133
122
 
134
123
  ## Generators
135
124
 
136
125
  The following generators are currently available
137
126
 
138
- * cream:config - Configure Rails 3 application with Cream
139
- * cream:users - Configure Rails 3 application with Cream
140
- * cream:views - Generate partials for menu items
127
+ * cream:config - Configure Rails 3 application with Cream (master generator)
141
128
 
142
- * permits:config - Configures app with CanCan Permits
129
+ Sub-generators
130
+
131
+ * cream:views - Generates partials for menu items
132
+ * devise:config - Configure Rails 3 application with Devise
133
+ * devise:users - Configure Rails 3 application with Devise users
143
134
  * cancan:config - Configures app with CanCan
135
+ * permits:config - Configures app with CanCan Permits
144
136
  * roles:config - Configures app with Roles
145
137
 
146
138
  All the above generators now have specs to show how to use them.
147
- Note: They have still not been tested in all scenarios with all ORMs, role strategies etc.
139
+ Note: These generators have still not been tested in all scenarios with all ORMs, role strategies etc.
148
140
  I am sure there are still some issues... so please help uncover these!
149
141
 
142
+ In general, the cream:config generator can be seen as a kind of "super generator", in that it should call all the sub-generators in succession to attempt to fully configure
143
+ and applicaiton in one go.
144
+
150
145
  Cream will support these ORMs:
151
146
 
152
147
  * Active Record
@@ -156,21 +151,26 @@ Cream will support these ORMs:
156
151
 
157
152
  ### Config Generator ###
158
153
 
159
- *Deprecated*
154
+ Master cream generator which calls the sub-generators in succession.
160
155
 
161
- In the future this should be a master generator which calls the other generators in turn.
162
-
163
- <code>rails g cream::config --strategy ROLE_STRATEGY [--init-devise] [--admin_user] [--orm] [--roles]</code>
156
+ <code>rails g cream::config --strategy ROLE_STRATEGY [--admin_user] [--orm ORM] [--roles ROLE1 ROLE2] [--logfile LOGFILE]</code>
164
157
 
165
158
  * --strategy : role strategy to use (see *roles_generic* gem)
166
- * --init-devise : run devise generator to create devise Users with session/auth strategies
167
159
  * --admin-user : create admin user model with separate devise configuration
168
160
  * --orm : orm to be used
169
- * --roles : list of valid roles to use
161
+ * --roles : list of valid roles and permits to use
170
162
 
171
163
  Example
172
164
 
173
- <code>rails g cream:config admin_flag --devise --admin --orm AR</code>
165
+ <code>rails g cream:config --strategy admin_flag --admin-user --orm AR</code>
166
+
167
+ By default creates :guest and :admin roles.
168
+
169
+ ## Sub generators
170
+
171
+ To view the run options of any of the sub generators, simply type $ rails g [GENERATOR_NAME]
172
+
173
+ Example: <code>rails g permits:config</code>
174
174
 
175
175
  ### Views Generator ###
176
176
 
data/Rakefile CHANGED
@@ -10,24 +10,24 @@ begin
10
10
 
11
11
  gem.add_development_dependency "rspec", ">= 2.0.0"
12
12
  gem.add_development_dependency "generator-spec", "~> 0.6.5"
13
- gem.add_development_dependency "rspec-action_view", "~> 0.3.1"
14
- gem.add_development_dependency "rails-app-spec", "~> 0.2.14"
13
+ gem.add_development_dependency "rspec-action_view", ">= 0.3.1"
14
+ gem.add_development_dependency "rails-app-spec", ">= 0.3.0"
15
15
 
16
16
  gem.add_dependency "require_all", "~> 1.2.0"
17
17
 
18
- gem.add_dependency "devise-links", "~> 0.1.4"
19
- gem.add_dependency "cancan-rest-links", "~> 0.1.4"
20
- gem.add_dependency "cancan-permits", "~> 0.2.4"
18
+ gem.add_dependency "devise-links", ">= 0.1.4"
19
+ gem.add_dependency "cancan-rest-links", ">= 0.1.4"
20
+ gem.add_dependency "cancan-permits", ">= 0.2.6"
21
21
 
22
- gem.add_dependency "devise", ">= 1.1.2"
22
+ gem.add_dependency "devise", "~> 1.2.0"
23
23
  gem.add_dependency "cancan", "~> 1.4.0"
24
- gem.add_dependency "rails", "~> 3.0.0"
24
+ gem.add_dependency "rails", "~> 3.0"
25
25
 
26
- gem.add_dependency "rails3_artifactor", "~> 0.2.8"
27
- gem.add_dependency 'logging_assist', "~> 0.1.3"
26
+ gem.add_dependency "rails3_artifactor", "~> 0.3.0"
27
+ gem.add_dependency 'logging_assist', "~> 0.1.6"
28
28
 
29
- gem.add_dependency "r3_plugin_toolbox", "~> 0.3.6"
30
- gem.add_dependency "sugar-high", "~> 0.2.11"
29
+ gem.add_dependency "r3_plugin_toolbox", ">= 0.3.14"
30
+ gem.add_dependency "sugar-high", "~> 0.3.0"
31
31
 
32
32
  # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
33
33
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.7.2
1
+ 0.7.3
data/cream.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{cream}
8
- s.version = "0.7.2"
8
+ s.version = "0.7.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Kristian Mandrup"]
12
- s.date = %q{2010-10-17}
12
+ s.date = %q{2010-10-21}
13
13
  s.description = %q{Provides assistance for setting up Session, Role and Permission systems for a Rails 3 app. Support for multiple ORMs}
14
14
  s.email = %q{kmandrup@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -125,52 +125,52 @@ Gem::Specification.new do |s|
125
125
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
126
126
  s.add_development_dependency(%q<rspec>, [">= 2.0.0"])
127
127
  s.add_development_dependency(%q<generator-spec>, ["~> 0.6.5"])
128
- s.add_development_dependency(%q<rspec-action_view>, ["~> 0.3.1"])
129
- s.add_development_dependency(%q<rails-app-spec>, ["~> 0.2.14"])
128
+ s.add_development_dependency(%q<rspec-action_view>, [">= 0.3.1"])
129
+ s.add_development_dependency(%q<rails-app-spec>, [">= 0.3.0"])
130
130
  s.add_runtime_dependency(%q<require_all>, ["~> 1.2.0"])
131
- s.add_runtime_dependency(%q<devise-links>, ["~> 0.1.4"])
132
- s.add_runtime_dependency(%q<cancan-rest-links>, ["~> 0.1.4"])
133
- s.add_runtime_dependency(%q<cancan-permits>, ["~> 0.2.4"])
134
- s.add_runtime_dependency(%q<devise>, [">= 1.1.2"])
131
+ s.add_runtime_dependency(%q<devise-links>, [">= 0.1.4"])
132
+ s.add_runtime_dependency(%q<cancan-rest-links>, [">= 0.1.4"])
133
+ s.add_runtime_dependency(%q<cancan-permits>, [">= 0.2.6"])
134
+ s.add_runtime_dependency(%q<devise>, ["~> 1.2.0"])
135
135
  s.add_runtime_dependency(%q<cancan>, ["~> 1.4.0"])
136
- s.add_runtime_dependency(%q<rails>, ["~> 3.0.0"])
137
- s.add_runtime_dependency(%q<rails3_artifactor>, ["~> 0.2.8"])
138
- s.add_runtime_dependency(%q<logging_assist>, ["~> 0.1.3"])
139
- s.add_runtime_dependency(%q<r3_plugin_toolbox>, ["~> 0.3.6"])
140
- s.add_runtime_dependency(%q<sugar-high>, ["~> 0.2.11"])
136
+ s.add_runtime_dependency(%q<rails>, ["~> 3.0"])
137
+ s.add_runtime_dependency(%q<rails3_artifactor>, ["~> 0.3.0"])
138
+ s.add_runtime_dependency(%q<logging_assist>, ["~> 0.1.6"])
139
+ s.add_runtime_dependency(%q<r3_plugin_toolbox>, [">= 0.3.14"])
140
+ s.add_runtime_dependency(%q<sugar-high>, ["~> 0.3.0"])
141
141
  else
142
142
  s.add_dependency(%q<rspec>, [">= 2.0.0"])
143
143
  s.add_dependency(%q<generator-spec>, ["~> 0.6.5"])
144
- s.add_dependency(%q<rspec-action_view>, ["~> 0.3.1"])
145
- s.add_dependency(%q<rails-app-spec>, ["~> 0.2.14"])
144
+ s.add_dependency(%q<rspec-action_view>, [">= 0.3.1"])
145
+ s.add_dependency(%q<rails-app-spec>, [">= 0.3.0"])
146
146
  s.add_dependency(%q<require_all>, ["~> 1.2.0"])
147
- s.add_dependency(%q<devise-links>, ["~> 0.1.4"])
148
- s.add_dependency(%q<cancan-rest-links>, ["~> 0.1.4"])
149
- s.add_dependency(%q<cancan-permits>, ["~> 0.2.4"])
150
- s.add_dependency(%q<devise>, [">= 1.1.2"])
147
+ s.add_dependency(%q<devise-links>, [">= 0.1.4"])
148
+ s.add_dependency(%q<cancan-rest-links>, [">= 0.1.4"])
149
+ s.add_dependency(%q<cancan-permits>, [">= 0.2.6"])
150
+ s.add_dependency(%q<devise>, ["~> 1.2.0"])
151
151
  s.add_dependency(%q<cancan>, ["~> 1.4.0"])
152
- s.add_dependency(%q<rails>, ["~> 3.0.0"])
153
- s.add_dependency(%q<rails3_artifactor>, ["~> 0.2.8"])
154
- s.add_dependency(%q<logging_assist>, ["~> 0.1.3"])
155
- s.add_dependency(%q<r3_plugin_toolbox>, ["~> 0.3.6"])
156
- s.add_dependency(%q<sugar-high>, ["~> 0.2.11"])
152
+ s.add_dependency(%q<rails>, ["~> 3.0"])
153
+ s.add_dependency(%q<rails3_artifactor>, ["~> 0.3.0"])
154
+ s.add_dependency(%q<logging_assist>, ["~> 0.1.6"])
155
+ s.add_dependency(%q<r3_plugin_toolbox>, [">= 0.3.14"])
156
+ s.add_dependency(%q<sugar-high>, ["~> 0.3.0"])
157
157
  end
158
158
  else
159
159
  s.add_dependency(%q<rspec>, [">= 2.0.0"])
160
160
  s.add_dependency(%q<generator-spec>, ["~> 0.6.5"])
161
- s.add_dependency(%q<rspec-action_view>, ["~> 0.3.1"])
162
- s.add_dependency(%q<rails-app-spec>, ["~> 0.2.14"])
161
+ s.add_dependency(%q<rspec-action_view>, [">= 0.3.1"])
162
+ s.add_dependency(%q<rails-app-spec>, [">= 0.3.0"])
163
163
  s.add_dependency(%q<require_all>, ["~> 1.2.0"])
164
- s.add_dependency(%q<devise-links>, ["~> 0.1.4"])
165
- s.add_dependency(%q<cancan-rest-links>, ["~> 0.1.4"])
166
- s.add_dependency(%q<cancan-permits>, ["~> 0.2.4"])
167
- s.add_dependency(%q<devise>, [">= 1.1.2"])
164
+ s.add_dependency(%q<devise-links>, [">= 0.1.4"])
165
+ s.add_dependency(%q<cancan-rest-links>, [">= 0.1.4"])
166
+ s.add_dependency(%q<cancan-permits>, [">= 0.2.6"])
167
+ s.add_dependency(%q<devise>, ["~> 1.2.0"])
168
168
  s.add_dependency(%q<cancan>, ["~> 1.4.0"])
169
- s.add_dependency(%q<rails>, ["~> 3.0.0"])
170
- s.add_dependency(%q<rails3_artifactor>, ["~> 0.2.8"])
171
- s.add_dependency(%q<logging_assist>, ["~> 0.1.3"])
172
- s.add_dependency(%q<r3_plugin_toolbox>, ["~> 0.3.6"])
173
- s.add_dependency(%q<sugar-high>, ["~> 0.2.11"])
169
+ s.add_dependency(%q<rails>, ["~> 3.0"])
170
+ s.add_dependency(%q<rails3_artifactor>, ["~> 0.3.0"])
171
+ s.add_dependency(%q<logging_assist>, ["~> 0.1.6"])
172
+ s.add_dependency(%q<r3_plugin_toolbox>, [">= 0.3.14"])
173
+ s.add_dependency(%q<sugar-high>, ["~> 0.3.0"])
174
174
  end
175
175
  end
176
176
 
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 7
8
- - 2
9
- version: 0.7.2
8
+ - 3
9
+ version: 0.7.3
10
10
  platform: ruby
11
11
  authors:
12
12
  - Kristian Mandrup
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-10-17 00:00:00 +02:00
17
+ date: 2010-10-21 00:00:00 +02:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -53,7 +53,7 @@ dependencies:
53
53
  requirement: &id003 !ruby/object:Gem::Requirement
54
54
  none: false
55
55
  requirements:
56
- - - ~>
56
+ - - ">="
57
57
  - !ruby/object:Gem::Version
58
58
  segments:
59
59
  - 0
@@ -68,13 +68,13 @@ dependencies:
68
68
  requirement: &id004 !ruby/object:Gem::Requirement
69
69
  none: false
70
70
  requirements:
71
- - - ~>
71
+ - - ">="
72
72
  - !ruby/object:Gem::Version
73
73
  segments:
74
74
  - 0
75
- - 2
76
- - 14
77
- version: 0.2.14
75
+ - 3
76
+ - 0
77
+ version: 0.3.0
78
78
  type: :development
79
79
  version_requirements: *id004
80
80
  - !ruby/object:Gem::Dependency
@@ -98,7 +98,7 @@ dependencies:
98
98
  requirement: &id006 !ruby/object:Gem::Requirement
99
99
  none: false
100
100
  requirements:
101
- - - ~>
101
+ - - ">="
102
102
  - !ruby/object:Gem::Version
103
103
  segments:
104
104
  - 0
@@ -113,7 +113,7 @@ dependencies:
113
113
  requirement: &id007 !ruby/object:Gem::Requirement
114
114
  none: false
115
115
  requirements:
116
- - - ~>
116
+ - - ">="
117
117
  - !ruby/object:Gem::Version
118
118
  segments:
119
119
  - 0
@@ -128,13 +128,13 @@ dependencies:
128
128
  requirement: &id008 !ruby/object:Gem::Requirement
129
129
  none: false
130
130
  requirements:
131
- - - ~>
131
+ - - ">="
132
132
  - !ruby/object:Gem::Version
133
133
  segments:
134
134
  - 0
135
135
  - 2
136
- - 4
137
- version: 0.2.4
136
+ - 6
137
+ version: 0.2.6
138
138
  type: :runtime
139
139
  version_requirements: *id008
140
140
  - !ruby/object:Gem::Dependency
@@ -143,13 +143,13 @@ dependencies:
143
143
  requirement: &id009 !ruby/object:Gem::Requirement
144
144
  none: false
145
145
  requirements:
146
- - - ">="
146
+ - - ~>
147
147
  - !ruby/object:Gem::Version
148
148
  segments:
149
149
  - 1
150
- - 1
151
150
  - 2
152
- version: 1.1.2
151
+ - 0
152
+ version: 1.2.0
153
153
  type: :runtime
154
154
  version_requirements: *id009
155
155
  - !ruby/object:Gem::Dependency
@@ -178,8 +178,7 @@ dependencies:
178
178
  segments:
179
179
  - 3
180
180
  - 0
181
- - 0
182
- version: 3.0.0
181
+ version: "3.0"
183
182
  type: :runtime
184
183
  version_requirements: *id011
185
184
  - !ruby/object:Gem::Dependency
@@ -192,9 +191,9 @@ dependencies:
192
191
  - !ruby/object:Gem::Version
193
192
  segments:
194
193
  - 0
195
- - 2
196
- - 8
197
- version: 0.2.8
194
+ - 3
195
+ - 0
196
+ version: 0.3.0
198
197
  type: :runtime
199
198
  version_requirements: *id012
200
199
  - !ruby/object:Gem::Dependency
@@ -208,8 +207,8 @@ dependencies:
208
207
  segments:
209
208
  - 0
210
209
  - 1
211
- - 3
212
- version: 0.1.3
210
+ - 6
211
+ version: 0.1.6
213
212
  type: :runtime
214
213
  version_requirements: *id013
215
214
  - !ruby/object:Gem::Dependency
@@ -218,13 +217,13 @@ dependencies:
218
217
  requirement: &id014 !ruby/object:Gem::Requirement
219
218
  none: false
220
219
  requirements:
221
- - - ~>
220
+ - - ">="
222
221
  - !ruby/object:Gem::Version
223
222
  segments:
224
223
  - 0
225
224
  - 3
226
- - 6
227
- version: 0.3.6
225
+ - 14
226
+ version: 0.3.14
228
227
  type: :runtime
229
228
  version_requirements: *id014
230
229
  - !ruby/object:Gem::Dependency
@@ -237,9 +236,9 @@ dependencies:
237
236
  - !ruby/object:Gem::Version
238
237
  segments:
239
238
  - 0
240
- - 2
241
- - 11
242
- version: 0.2.11
239
+ - 3
240
+ - 0
241
+ version: 0.3.0
243
242
  type: :runtime
244
243
  version_requirements: *id015
245
244
  description: Provides assistance for setting up Session, Role and Permission systems for a Rails 3 app. Support for multiple ORMs