From 51fe50f91a038c86104939fbbd66f3fb97fe0613 Mon Sep 17 00:00:00 2001 From: Kristian Mandrup Date: Mon, 20 Sep 2010 13:56:52 +0200 Subject: [PATCH] updated dependencies and made generator a little more intelligent --- Gemfile | 27 ++++++++----- Gemfile.lock | 39 +++++++++++-------- README.markdown | 4 ++ Rakefile | 5 ++- .../mongo_mapper/devise_generator.rb | 8 +++- 5 files changed, 55 insertions(+), 28 deletions(-) diff --git a/Gemfile b/Gemfile index d12f3d2..8a931dd 100644 --- a/Gemfile +++ b/Gemfile @@ -1,15 +1,24 @@ source :rubygems +source 'http://gems.github.com/' gem "rails", :git => "git://github.com/rails/rails.git" -gem "warden", "0.10.7" -gem "webrat", "0.7.0" -gem "mocha", :require => false -gem "bcrypt-ruby", :require => "bcrypt" -gem "oauth2" +group :test do + gem "test-unit", "~> 2.0.9" + gem "webrat", "~> 0.7.0" + gem "mocha", "~> 0.9.8", :require => false +end -gem 'mongo_mapper', '>= 0.8.2' -gem 'rails3-generators', '>= 0.12.1' -gem 'jnunemaker-validatable', '>= 1.8.4' -gem 'bson_ext', '>= 1.0.4' +group :default do + gem "webrat", "~> 0.7.0" + + gem "bcrypt-ruby", :require => "bcrypt" + gem "oauth2" + gem "warden", "~> 0.10.7" + gem 'mongo_mapper', '~> 0.8.4' + gem 'sugar-high', '~> 0.2.10' + gem 'rails3-generators', '~> 0.13.0' + gem 'jnunemaker-validatable', '~> 1.8.1' + gem 'bson_ext', '~> 1.0.7' +end diff --git a/Gemfile.lock b/Gemfile.lock index 3f1657a..85aaf63 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -50,8 +50,8 @@ GEM arel (0.4.0) activesupport (>= 3.0.0.beta) bcrypt-ruby (2.1.2) - bson (1.0.4) - bson_ext (1.0.4) + bson (1.0.7) + bson_ext (1.0.7) builder (2.1.2) erubis (2.6.6) abstract (>= 1.0.0) @@ -68,27 +68,32 @@ GEM mime-types (1.16) mocha (0.9.8) rake - mongo (1.0.7) - bson (>= 1.0.4) - mongo_mapper (0.8.2) + mongo (1.0.8) + bson (>= 1.0.5) + mongo_mapper (0.8.4) activesupport (>= 2.3.4) jnunemaker-validatable (~> 1.8.4) - plucky (~> 0.3.1) + plucky (~> 0.3.5) multi_json (0.0.4) nokogiri (1.4.2) oauth2 (0.0.10) faraday (~> 0.4.1) multi_json (>= 0.0.4) - plucky (0.3.2) - mongo (~> 1.0.1) + plucky (0.3.5) + mongo (~> 1.0.8) polyglot (0.3.1) rack (1.2.1) rack-mount (0.6.9) rack (>= 1.0.0) rack-test (0.5.4) rack (>= 1.0) - rails3-generators (0.12.1) + rails3-generators (0.13.0) rake (0.8.7) + require_all (1.1.0) + sugar-high (0.2.10) + mocha (~> 0.9.8) + require_all (~> 1.1.0) + test-unit (2.0.9) thor (0.14.0) treetop (1.4.8) polyglot (>= 0.3.1) @@ -105,12 +110,14 @@ PLATFORMS DEPENDENCIES bcrypt-ruby - bson_ext (>= 1.0.4) - jnunemaker-validatable (>= 1.8.4) - mocha - mongo_mapper (>= 0.8.2) + bson_ext (~> 1.0.7) + jnunemaker-validatable (~> 1.8.1) + mocha (~> 0.9.8) + mongo_mapper (~> 0.8.4) oauth2 rails! - rails3-generators (>= 0.12.1) - warden (= 0.10.7) - webrat (= 0.7.0) + rails3-generators (~> 0.13.0) + sugar-high (~> 0.2.10) + test-unit (~> 2.0.9) + warden (~> 0.10.7) + webrat (~> 0.7.0) diff --git a/README.markdown b/README.markdown index 7ab7445..9bad49f 100644 --- a/README.markdown +++ b/README.markdown @@ -49,6 +49,10 @@ configuration options and you MUST take a look at it. Make sure to specify either mongo_mapper or mongo_mapper_active_model (ActiveModel::Validations) as the orm in the configuration file. + require 'devise/orm/mongo_mapper' + +Note: The model generator should do this automatically. + To add Devise to any of your models using the generator:
rails generate mongo_mapper:devise MODEL
diff --git a/Rakefile b/Rakefile index c5fd74a..2200898 100644 --- a/Rakefile +++ b/Rakefile @@ -54,10 +54,11 @@ begin gem.homepage = "http://github.com/kristianmandrup/mm-devise" gem.authors = ["Kristian Mandrup"] gem.add_dependency 'mongo_mapper', '~> 0.8.4' - gem.add_dependency 'bson_ext', '~> 1.0.4' - gem.add_dependency 'rails3-generators', '~> 0.14.0' + gem.add_dependency 'bson_ext', '~> 1.0.7' + gem.add_dependency 'rails3-generators', '~> 0.13.0' gem.add_dependency 'jnunemaker-validatable', '~> 1.8.1' gem.add_dependency 'devise', '~> 1.1.1' + gem.add_dependency 'sugar-high', '~> 0.2.10' gem.add_dependency 'warden', '~> 0.10.7' gem.add_dependency 'bcrypt-ruby', '~> 2.1.2' # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings diff --git a/lib/generators/mongo_mapper/devise_generator.rb b/lib/generators/mongo_mapper/devise_generator.rb index 9759407..6c89387 100644 --- a/lib/generators/mongo_mapper/devise_generator.rb +++ b/lib/generators/mongo_mapper/devise_generator.rb @@ -1,4 +1,5 @@ require 'generators/devise/orm_helpers' +require 'sugar-high/file' module MongoMapper module Generators @@ -9,9 +10,14 @@ def generate_model invoke "mongo_mapper:model", [name] unless model_exists? end - def inject_devise_content + def inject_devise_content inject_into_file model_path, model_contents, :after => "include MongoMapper::Document\n" end + + def replace_default_devise_orm + devise_init_file = File.join(Rails.root, 'config', 'initializers', 'devise.rb') + File.replace_content_from devise_init_file, :where => 'orm/active_record', :with => 'orm/mongo_mapper' + end end end end