sequel-rails 0.4.0.pre2 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -2,6 +2,8 @@ source "http://rubygems.org"
2
2
 
3
3
  gemspec
4
4
 
5
+ gem "fakefs", :require => "fakefs/safe"
6
+
5
7
  # MRI/Rubinius Adapter Dependencies
6
8
  platform :ruby do
7
9
  gem "pg"
data/History.md CHANGED
@@ -1,3 +1,21 @@
1
+ 0.4.0 (2013-03-06)
2
+ ==================
3
+
4
+ * Ensure we've dropped any opened connection before trying to drop database (Ed Ruder)
5
+ * Make dependency on railtie looser (`>= 3.2.0`)
6
+ * Do not add any Sequel plugin by default anymore. Plugins could not be removed
7
+ so it is safer to let the user add them via an initializer. Furthermore, we
8
+ were changing the default Sequel behaviour related to 'raise on save'.
9
+ All the previous plugins/behaviours of sequel-rails can be restored by
10
+ creating an initializer with:
11
+
12
+ ```ruby
13
+ require "sequel_rails/railties/legacy_model_config"
14
+ ```
15
+
16
+ Thanks to @dlee, for raising concerns about this behaviour in
17
+ [#11](https://github.com/TalentBox/sequel-rails/pull/11)
18
+
1
19
  0.4.0.pre2
2
20
  ==========
3
21
 
data/README.md CHANGED
@@ -2,6 +2,7 @@ sequel-rails
2
2
  ============
3
3
 
4
4
  [![Build Status](https://travis-ci.org/TalentBox/sequel-rails.png?branch=master)](https://travis-ci.org/TalentBox/sequel-rails)
5
+ [![Code Climate](https://codeclimate.com/github/TalentBox/sequel-rails.png)](https://codeclimate.com/github/TalentBox/sequel-rails)
5
6
 
6
7
  This gem provides the railtie that allows [sequel](http://github.com/jeremyevans/sequel) to hook into [rails3](http://github.com/rails/rails) and thus behave like a rails framework component. Just like activerecord does in rails, [sequel-rails](http://github.com/talentbox/sequel-rails) uses the railtie API to hook into rails. The two are actually hooked into rails almost identically.
7
8
 
@@ -41,6 +42,14 @@ require "action_mailer/railtie"
41
42
  require "sprockets/railtie"
42
43
  ```
43
44
 
45
+ Starting with sequel-rails 0.4.0.pre3 we don't change default Sequel behaviour
46
+ nor include any plugin by default, if you want to get back the previous
47
+ behaviour, you can create a new initializer (eg: `config/initializers/sequel.rb`) with content:
48
+
49
+ ```ruby
50
+ require "sequel_rails/railties/legacy_model_config"
51
+ ```
52
+
44
53
  After those changes, you should be good to go!
45
54
 
46
55
  Available sequel specific rake tasks
@@ -114,11 +123,12 @@ Improvements has been made by those awesome contributors:
114
123
  * Arron Washington (radicaled)
115
124
  * Thiago Pradi (tchandy)
116
125
  * Sascha Cunz (scunz)
126
+ * Brian Donovan (eventualbuddha)
117
127
 
118
128
  Credits
119
129
  =======
120
130
 
121
- The [dm-rails](http://github.com/datamapper/dm-rails) team wrote most of the original code, I just sequel-ized it, but since then most of it as been either adapter or rewritten.
131
+ The [dm-rails](http://github.com/datamapper/dm-rails) team wrote most of the original code, I just sequel-ized it, but since then most of it as been either adapted or rewritten.
122
132
 
123
133
  Copyright
124
134
  =========
@@ -2,21 +2,19 @@ require 'sequel/extensions/migration'
2
2
 
3
3
  module SequelRails
4
4
  class Migrations
5
- def self.migrate_up!(version=nil)
6
- opts = {}
7
- opts[:target] = version.to_i if version
8
- ::Sequel::Migrator.run(::Sequel::Model.db, "db/migrate", opts)
9
- end
10
-
11
- def self.migrate_down!(version=nil)
12
- opts = {}
13
- opts[:target] = version.to_i if version
14
- ::Sequel::Migrator.run(::Sequel::Model.db, "db/migrate", opts)
15
- end
5
+ class << self
6
+ def migrate(version=nil)
7
+ opts = {}
8
+ opts[:target] = version.to_i if version
9
+ ::Sequel::Migrator.run(::Sequel::Model.db, "db/migrate", opts)
10
+ end
11
+ alias_method :migrate_up!, :migrate
12
+ alias_method :migrate_down!, :migrate
16
13
 
17
- def self.pending_migrations?
18
- return false unless File.exists?("db/migrate")
19
- !::Sequel::Migrator.is_current?(::Sequel::Model.db, "db/migrate")
14
+ def pending_migrations?
15
+ return false unless File.exists?("db/migrate")
16
+ !::Sequel::Migrator.is_current?(::Sequel::Model.db, "db/migrate")
17
+ end
20
18
  end
21
19
  end
22
20
  end
@@ -16,7 +16,6 @@ require "sequel_rails/migrations"
16
16
  require "sequel_rails/railties/log_subscriber"
17
17
  require "sequel_rails/railties/i18n_support"
18
18
  require "sequel_rails/railties/controller_runtime"
19
- require "sequel_rails/sequel/plugins/rails_extensions"
20
19
  require "sequel_rails/sequel/database/active_support_notification"
21
20
 
22
21
  module SequelRails
@@ -59,16 +58,6 @@ module SequelRails
59
58
  ::SequelRails.setup ::Rails.env
60
59
  end
61
60
 
62
- # Run setup code after_initialize to make sure all config/initializers
63
- # are in effect once we setup the connection. This is especially necessary
64
- # for the cascaded adapter wrappers that need to be declared before setup.
65
- config.after_initialize do |app|
66
- ::Sequel::Model.plugin :active_model
67
- ::Sequel::Model.plugin :validation_helpers
68
- ::Sequel::Model.plugin :rails_extensions
69
- ::Sequel::Model.raise_on_save_failure = false
70
- end
71
-
72
61
  # Support overwriting crucial steps in subclasses
73
62
  def configure_sequel(app)
74
63
  app.config.sequel = ::SequelRails::Configuration.for(
@@ -54,7 +54,7 @@ namespace :db do
54
54
  task :create, [:env] => :environment do |t, args|
55
55
  args.with_defaults(:env => Rails.env)
56
56
 
57
- unless SequelRails::Storage.adapter_for(args.env).create
57
+ unless SequelRails::Storage.create_environment(args.env)
58
58
  abort "Could not create database for #{args.env}."
59
59
  end
60
60
  end
@@ -68,11 +68,11 @@ namespace :db do
68
68
  end
69
69
  end
70
70
 
71
- desc "Create the database defined in config/database.yml for the current Rails.env"
71
+ desc "Drop the database defined in config/database.yml for the current Rails.env"
72
72
  task :drop, [:env] => :environment do |t, args|
73
73
  args.with_defaults(:env => Rails.env)
74
74
 
75
- unless SequelRails::Storage.adapter_for(args.env).drop
75
+ unless SequelRails::Storage.drop_environment(args.env)
76
76
  abort "Could not drop database for #{args.env}."
77
77
  end
78
78
  end
@@ -132,29 +132,20 @@ namespace :db do
132
132
  task :reset => [ 'db:drop', 'db:setup' ]
133
133
 
134
134
  desc 'Forcibly close any open connections to the current env database (PostgreSQL specific)'
135
- task :force_close_open_connections => :environment do
136
- if db_for_current_env.database_type==:postgres
137
- begin
138
- # Will only work on Postgres > 8.4
139
- pid_column = db_for_current_env.server_version < 90200 ? "procpid" : "pid"
140
- db_for_current_env.execute <<-SQL.gsub(/^\s{9}/,'')
141
- SELECT COUNT(pg_terminate_backend(#{pid_column}))
142
- FROM pg_stat_activity
143
- WHERE datname = '#{db_for_current_env.opts[:database]}';
144
- SQL
145
- rescue => e
146
- #Will raise an error as it kills existing process running this command
147
- #Seems to be only way to ensure *all* test connections are closed
148
- end
149
- end
135
+ task :force_close_open_connections, [:env] => :environment do |t, args|
136
+ args.with_defaults(:env => Rails.env)
137
+ SequelRails::Storage.close_connections_environment(argv.env)
150
138
  end
151
139
 
152
140
  namespace :test do
153
141
  desc "Prepare test database (ensure all migrations ran, drop and re-create database then load schema). This task can be run in the same invocation as other task (eg: rake db:migrate db:test:prepare)."
154
142
  task :prepare => "db:abort_if_pending_migrations" do
155
143
  previous_env, Rails.env = Rails.env, 'test'
156
- Rake::Task['db:force_close_open_connections'].execute
157
- Rake::Task['db:drop'].execute
144
+ begin
145
+ Rake::Task['db:drop'].execute
146
+ rescue Exception => e
147
+ $stderr.puts "Could not drop test db: #{e.message}"
148
+ end
158
149
  Rake::Task['db:create'].execute
159
150
  Rake::Task['db:schema:load'].execute
160
151
  Sequel::DATABASES.each do |db|
@@ -0,0 +1,6 @@
1
+ require "sequel_rails/sequel/plugins/rails_extensions"
2
+
3
+ ::Sequel::Model.plugin :active_model
4
+ ::Sequel::Model.plugin :validation_helpers
5
+ ::Sequel::Model.plugin :rails_extensions
6
+ ::Sequel::Model.raise_on_save_failure = false
@@ -15,12 +15,22 @@ module SequelRails
15
15
  with_local_repositories { |config| drop_environment(config) }
16
16
  end
17
17
 
18
- def self.create_environment(config)
19
- adapter_for(config).create
18
+ def self.create_environment(config_or_env)
19
+ adapter_for(config_or_env).create
20
20
  end
21
21
 
22
- def self.drop_environment(config)
23
- adapter_for(config).drop
22
+ def self.drop_environment(config_or_env)
23
+ adapter = adapter_for(config_or_env)
24
+ adapter.close_connections
25
+ adapter.drop
26
+ end
27
+
28
+ def self.close_all_connections
29
+ with_all_repositories { |config| close_connections_environment(config) }
30
+ end
31
+
32
+ def self.close_connections_environment(config_or_env)
33
+ adapter_for(config_or_env).close_connections
24
34
  end
25
35
 
26
36
  def self.adapter_for(config_or_env)
@@ -36,7 +46,7 @@ module SequelRails
36
46
 
37
47
  def self.with_local_repositories
38
48
  ::SequelRails.configuration.environments.each_value do |config|
39
- next if config['database'].blank?
49
+ next if config['database'].blank? || config['adapter'].blank?
40
50
  if config['host'].blank? || %w[ 127.0.0.1 localhost ].include?(config['host'])
41
51
  yield config
42
52
  else
@@ -45,9 +55,16 @@ module SequelRails
45
55
  end
46
56
  end
47
57
 
58
+ def self.with_all_repositories
59
+ ::SequelRails.configuration.environments.each_value do |config|
60
+ next if config['database'].blank? || config['adapter'].blank?
61
+ yield config
62
+ end
63
+ end
64
+
48
65
  def self.lookup_class(adapter)
66
+ raise "Adapter not specified in config, please set the :adapter key." unless adapter
49
67
  klass_name = adapter.camelize.to_sym
50
-
51
68
  unless self.const_defined?(klass_name)
52
69
  raise "Adapter #{adapter} not supported (#{klass_name.inspect})"
53
70
  end
@@ -21,6 +21,11 @@ module SequelRails
21
21
  res
22
22
  end
23
23
 
24
+ # To be overriden by subclasses
25
+ def close_connections
26
+ true
27
+ end
28
+
24
29
  def database
25
30
  @database ||= config['database'] || config['path']
26
31
  end
@@ -25,6 +25,23 @@ module SequelRails
25
25
  ENV["PGPASSWORD"] = nil unless password.blank?
26
26
  res
27
27
  end
28
+
29
+ def close_connections
30
+ begin
31
+ db = ::Sequel.connect(config)
32
+ # Will only work on Postgres > 8.4
33
+ pid_column = db.server_version < 90200 ? "procpid" : "pid"
34
+ db.execute <<-SQL.gsub(/^\s{12}/,'')
35
+ SELECT COUNT(pg_terminate_backend(#{pid_column}))
36
+ FROM pg_stat_activity
37
+ WHERE datname = '#{database}';
38
+ SQL
39
+ rescue => _
40
+ # Will raise an error as it kills existing process running this
41
+ # command. Seems to be only way to ensure *all* test connections
42
+ # are closed
43
+ end
44
+ end
28
45
  end
29
46
  end
30
47
  end
@@ -1,3 +1,3 @@
1
1
  module SequelRails
2
- VERSION = "0.4.0.pre2"
2
+ VERSION = "0.4.0"
3
3
  end
data/sequel-rails.gemspec CHANGED
@@ -19,8 +19,8 @@ Gem::Specification.new do |s|
19
19
  s.extra_rdoc_files = ["LICENSE", "README.md"]
20
20
  s.rdoc_options = ["--charset=UTF-8"]
21
21
 
22
- s.add_runtime_dependency("sequel", ["~> 3.28"])
23
- s.add_runtime_dependency("railties", ["~> 3.2.0"])
22
+ s.add_runtime_dependency "sequel", "~> 3.28"
23
+ s.add_runtime_dependency "railties", ">= 3.2.0"
24
24
 
25
25
  s.add_development_dependency "rake", ">= 0.8.7"
26
26
  s.add_development_dependency "rspec", "~> 2.7.0"
@@ -0,0 +1,10 @@
1
+ begin
2
+ require 'bundler/setup'
3
+ rescue LoadError
4
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
5
+ end
6
+ Bundler.require :default, :development, :test
7
+
8
+ Combustion.path = ""
9
+ Combustion.initialize! "sequel_rails"
10
+ Combustion::Application.load_tasks
@@ -0,0 +1,57 @@
1
+ require "spec_helper"
2
+ require "fakefs/spec_helpers"
3
+
4
+ describe SequelRails::Migrations do
5
+ let!(:db) { ::Sequel::Model.db }
6
+
7
+ [:migrate_up!, :migrate_down!].each do |migration_method|
8
+ describe ".#{migration_method}" do
9
+ let(:result) { mock :result }
10
+ context "with no version specified" do
11
+ let(:opts) { {} }
12
+ it "runs migrations using Sequel::Migrator" do
13
+ ::Sequel::Migrator.should_receive(:run).with(
14
+ db, "db/migrate", opts
15
+ ).and_return result
16
+ described_class.send(migration_method).should be result
17
+ end
18
+ end
19
+ context "with version specified" do
20
+ let(:opts) { {target: 1} }
21
+ it "runs migrations using Sequel::Migrator" do
22
+ ::Sequel::Migrator.should_receive(:run).with(
23
+ db, "db/migrate", opts
24
+ ).and_return result
25
+ described_class.send(migration_method, 1).should be result
26
+ end
27
+ end
28
+ end
29
+ end
30
+
31
+ describe ".pending_migrations?" do
32
+ include FakeFS::SpecHelpers
33
+ let(:path) { "db/migrate" }
34
+
35
+ it "returns false if no db/migrate directory exists" do
36
+ described_class.pending_migrations?.should == false
37
+ end
38
+
39
+ context "when db/migrate directory exists" do
40
+ before { FileUtils.mkdir_p path }
41
+
42
+ it "returns true if any pending migration" do
43
+ ::Sequel::Migrator.should_receive(:is_current?).with(
44
+ db, "db/migrate"
45
+ ).and_return false
46
+ described_class.pending_migrations?.should == true
47
+ end
48
+
49
+ it "returns false if no pending migration" do
50
+ ::Sequel::Migrator.should_receive(:is_current?).with(
51
+ db, "db/migrate"
52
+ ).and_return true
53
+ described_class.pending_migrations?.should == false
54
+ end
55
+ end
56
+ end
57
+ end
@@ -1,6 +1,8 @@
1
1
  require "spec_helper"
2
2
 
3
3
  describe SequelRails::Railtie do
4
+ let(:app) { Combustion::Application }
5
+
4
6
  it "registers ::Sequel::Railtie::LogSubscriber to receive :sequel notification" do
5
7
  ActiveSupport::LogSubscriber.log_subscribers.select do |subscriber|
6
8
  subscriber.is_a?(SequelRails::Railties::LogSubscriber)
@@ -9,21 +11,21 @@ describe SequelRails::Railtie do
9
11
 
10
12
  context "configures generator to use Sequel" do
11
13
  it "as orm" do
12
- Combustion::Application.config.generators.options[:rails][:orm].should == :sequel
14
+ app.config.generators.options[:rails][:orm].should == :sequel
13
15
  end
14
16
 
15
17
  it "for migrations" do
16
- Combustion::Application.config.generators.options[:sequel][:migration].should be true
18
+ app.config.generators.options[:sequel][:migration].should be true
17
19
  end
18
20
  end
19
21
 
20
22
  it "configures rails to use fancy pants logging" do
21
- Combustion::Application.config.rails_fancy_pants_logging.should be true
23
+ app.config.rails_fancy_pants_logging.should be true
22
24
  end
23
25
 
24
26
  context "configures action dispatch's rescue responses" do
25
27
  let(:rescue_responses) do
26
- Combustion::Application.config.action_dispatch.rescue_responses
28
+ app.config.action_dispatch.rescue_responses
27
29
  end
28
30
 
29
31
  it "to handle Sequel::Plugins::RailsExtensions::ModelNotFound with :not_found" do
@@ -44,11 +46,11 @@ describe SequelRails::Railtie do
44
46
  end
45
47
 
46
48
  it "stores it's own config in app.config.sequel" do
47
- Combustion::Application.config.sequel.should be_instance_of SequelRails::Configuration
49
+ app.config.sequel.should be_instance_of SequelRails::Configuration
48
50
  end
49
51
 
50
52
  it "sets Rails.logger as default logger for its configuration" do
51
- Combustion::Application.config.sequel.logger.should be Rails.logger
53
+ app.config.sequel.logger.should be Rails.logger
52
54
  end
53
55
 
54
56
  it "configures Sequel::Model instances for i18n" do
@@ -61,22 +63,6 @@ describe SequelRails::Railtie do
61
63
  )
62
64
  end
63
65
 
64
- context "Sequel::Model is configured" do
65
- let(:plugins) { Sequel::Model.plugins }
66
- it "to use :active_model plugin" do
67
- plugins.should include Sequel::Plugins::ActiveModel
68
- end
69
- it "to use :validation_helpers plugin" do
70
- plugins.should include Sequel::Plugins::ValidationHelpers
71
- end
72
- it "to use :rails_extensions plugin" do
73
- plugins.should include Sequel::Plugins::RailsExtensions
74
- end
75
- it "to not raise on save failure" do
76
- Sequel::Model.raise_on_save_failure.should be false
77
- end
78
- end
79
-
80
66
  it "configures database in Sequel" do
81
67
  expect do
82
68
  Sequel::Model.db.test_connection
@@ -17,6 +17,11 @@ describe SequelRails::Storage do
17
17
  "database" => "sequel_rails_test_storage_test",
18
18
  "host" => "127.0.0.1",
19
19
  },
20
+ "remote" => {
21
+ "adapter" => "postgres",
22
+ "host" => "10.0.0.1",
23
+ "database" => "sequel_rails_test_storage_remote",
24
+ },
20
25
  "production" => {
21
26
  "host" => "10.0.0.1",
22
27
  "database" => "sequel_rails_test_storage_production",
@@ -30,7 +35,7 @@ describe SequelRails::Storage do
30
35
  describe ".create_all" do
31
36
  it "creates all databases skipping ones on remote host or with no database name" do
32
37
  adapter = mock :storage_adapter
33
- environments.except("production", "bogus").values.each do |env|
38
+ environments.except("remote", "production", "bogus").values.each do |env|
34
39
  SequelRails::Storage::Postgres.should_receive(:new).
35
40
  with(env).
36
41
  and_return adapter
@@ -44,11 +49,12 @@ describe SequelRails::Storage do
44
49
  describe ".drop_all" do
45
50
  it "drop all databases skipping ones on remote host or with no database name" do
46
51
  adapter = mock :storage_adapter
47
- environments.except("production", "bogus").values.each do |env|
52
+ environments.except("remote", "production", "bogus").values.each do |env|
48
53
  SequelRails::Storage::Postgres.should_receive(:new).
49
54
  with(env).
50
55
  and_return adapter
51
56
  end
57
+ adapter.should_receive(:close_connections).twice
52
58
  adapter.should_receive(:drop).twice
53
59
  capture(:stdout) do
54
60
  described_class.drop_all
@@ -71,10 +77,35 @@ describe SequelRails::Storage do
71
77
  SequelRails::Storage::Postgres.should_receive(:new).
72
78
  with(environments["development"]).
73
79
  and_return adapter
80
+ adapter.should_receive :close_connections
74
81
  adapter.should_receive :drop
75
82
  described_class.drop_environment "development"
76
83
  end
77
84
  end
85
+ describe ".close_all_connections" do
86
+ it "drops opened connections to all databases on config" do
87
+ adapter = mock :storage_adapter
88
+ environments.except("production", "bogus").values.each do |env|
89
+ SequelRails::Storage::Postgres.should_receive(:new).
90
+ with(env).
91
+ and_return adapter
92
+ end
93
+ adapter.should_receive(:close_connections).exactly(3).times
94
+ capture(:stdout) do
95
+ described_class.close_all_connections
96
+ end
97
+ end
98
+ end
99
+ describe ".close_connections_environment" do
100
+ it "drops opened connections to database for specified environment" do
101
+ adapter = mock :storage_adapter
102
+ SequelRails::Storage::Postgres.should_receive(:new).
103
+ with(environments["development"]).
104
+ and_return adapter
105
+ adapter.should_receive :close_connections
106
+ described_class.close_connections_environment "development"
107
+ end
108
+ end
78
109
  describe ".adapter_for" do
79
110
  context "when passed a hash" do
80
111
  {
metadata CHANGED
@@ -1,8 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sequel-rails
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: 6
5
- version: 0.4.0.pre2
4
+ prerelease:
5
+ version: 0.4.0
6
6
  platform: ruby
7
7
  authors:
8
8
  - Brasten Sager (brasten)
@@ -10,16 +10,9 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2013-01-16 00:00:00.000000000 Z
13
+ date: 2013-03-06 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
- version_requirements: !ruby/object:Gem::Requirement
17
- requirements:
18
- - - ~>
19
- - !ruby/object:Gem::Version
20
- version: '3.28'
21
- none: false
22
- prerelease: false
23
16
  name: sequel
24
17
  requirement: !ruby/object:Gem::Requirement
25
18
  requirements:
@@ -28,30 +21,30 @@ dependencies:
28
21
  version: '3.28'
29
22
  none: false
30
23
  type: :runtime
31
- - !ruby/object:Gem::Dependency
32
24
  version_requirements: !ruby/object:Gem::Requirement
33
25
  requirements:
34
26
  - - ~>
35
27
  - !ruby/object:Gem::Version
36
- version: 3.2.0
28
+ version: '3.28'
37
29
  none: false
38
30
  prerelease: false
31
+ - !ruby/object:Gem::Dependency
39
32
  name: railties
40
33
  requirement: !ruby/object:Gem::Requirement
41
34
  requirements:
42
- - - ~>
35
+ - - ! '>='
43
36
  - !ruby/object:Gem::Version
44
37
  version: 3.2.0
45
38
  none: false
46
39
  type: :runtime
47
- - !ruby/object:Gem::Dependency
48
40
  version_requirements: !ruby/object:Gem::Requirement
49
41
  requirements:
50
42
  - - ! '>='
51
43
  - !ruby/object:Gem::Version
52
- version: 0.8.7
44
+ version: 3.2.0
53
45
  none: false
54
46
  prerelease: false
47
+ - !ruby/object:Gem::Dependency
55
48
  name: rake
56
49
  requirement: !ruby/object:Gem::Requirement
57
50
  requirements:
@@ -60,14 +53,14 @@ dependencies:
60
53
  version: 0.8.7
61
54
  none: false
62
55
  type: :development
63
- - !ruby/object:Gem::Dependency
64
56
  version_requirements: !ruby/object:Gem::Requirement
65
57
  requirements:
66
- - - ~>
58
+ - - ! '>='
67
59
  - !ruby/object:Gem::Version
68
- version: 2.7.0
60
+ version: 0.8.7
69
61
  none: false
70
62
  prerelease: false
63
+ - !ruby/object:Gem::Dependency
71
64
  name: rspec
72
65
  requirement: !ruby/object:Gem::Requirement
73
66
  requirements:
@@ -76,14 +69,14 @@ dependencies:
76
69
  version: 2.7.0
77
70
  none: false
78
71
  type: :development
79
- - !ruby/object:Gem::Dependency
80
72
  version_requirements: !ruby/object:Gem::Requirement
81
73
  requirements:
82
74
  - - ~>
83
75
  - !ruby/object:Gem::Version
84
- version: 0.3.1
76
+ version: 2.7.0
85
77
  none: false
86
78
  prerelease: false
79
+ - !ruby/object:Gem::Dependency
87
80
  name: combustion
88
81
  requirement: !ruby/object:Gem::Requirement
89
82
  requirements:
@@ -92,14 +85,14 @@ dependencies:
92
85
  version: 0.3.1
93
86
  none: false
94
87
  type: :development
95
- - !ruby/object:Gem::Dependency
96
88
  version_requirements: !ruby/object:Gem::Requirement
97
89
  requirements:
98
90
  - - ~>
99
91
  - !ruby/object:Gem::Version
100
- version: 0.8.7
92
+ version: 0.3.1
101
93
  none: false
102
94
  prerelease: false
95
+ - !ruby/object:Gem::Dependency
103
96
  name: generator_spec
104
97
  requirement: !ruby/object:Gem::Requirement
105
98
  requirements:
@@ -108,6 +101,13 @@ dependencies:
108
101
  version: 0.8.7
109
102
  none: false
110
103
  type: :development
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - ~>
107
+ - !ruby/object:Gem::Version
108
+ version: 0.8.7
109
+ none: false
110
+ prerelease: false
111
111
  description: Integrate Sequel with Rails 3
112
112
  email:
113
113
  - brasten@gmail.com
@@ -144,6 +144,7 @@ files:
144
144
  - lib/sequel_rails/railties/controller_runtime.rb
145
145
  - lib/sequel_rails/railties/database.rake
146
146
  - lib/sequel_rails/railties/i18n_support.rb
147
+ - lib/sequel_rails/railties/legacy_model_config.rb
147
148
  - lib/sequel_rails/railties/log_subscriber.rb
148
149
  - lib/sequel_rails/sequel/database/active_support_notification.rb
149
150
  - lib/sequel_rails/sequel/plugins/rails_extensions.rb
@@ -157,12 +158,14 @@ files:
157
158
  - lib/sequel_rails/storage/sqlite.rb
158
159
  - lib/sequel_rails/version.rb
159
160
  - sequel-rails.gemspec
161
+ - spec/internal/Rakefile
160
162
  - spec/internal/app/models/user.rb
161
163
  - spec/internal/config/database.yml
162
164
  - spec/internal/config/routes.rb
163
165
  - spec/internal/db/schema.rb
164
166
  - spec/internal/public/favicon.ico
165
167
  - spec/lib/generators/sequel/migration_spec.rb
168
+ - spec/lib/sequel_rails/migrations_spec.rb
166
169
  - spec/lib/sequel_rails/railtie_spec.rb
167
170
  - spec/lib/sequel_rails/railties/log_subscriber_spec.rb
168
171
  - spec/lib/sequel_rails/storage_spec.rb
@@ -179,30 +182,35 @@ required_ruby_version: !ruby/object:Gem::Requirement
179
182
  requirements:
180
183
  - - ! '>='
181
184
  - !ruby/object:Gem::Version
182
- version: '0'
183
185
  segments:
184
186
  - 0
185
- hash: -2469418507765572891
187
+ hash: 1691704785188510155
188
+ version: '0'
186
189
  none: false
187
190
  required_rubygems_version: !ruby/object:Gem::Requirement
188
191
  requirements:
189
- - - ! '>'
192
+ - - ! '>='
190
193
  - !ruby/object:Gem::Version
191
- version: 1.3.1
194
+ segments:
195
+ - 0
196
+ hash: 1691704785188510155
197
+ version: '0'
192
198
  none: false
193
199
  requirements: []
194
200
  rubyforge_project:
195
- rubygems_version: 1.8.24
201
+ rubygems_version: 1.8.25
196
202
  signing_key:
197
203
  specification_version: 3
198
204
  summary: Use Sequel with Rails 3
199
205
  test_files:
206
+ - spec/internal/Rakefile
200
207
  - spec/internal/app/models/user.rb
201
208
  - spec/internal/config/database.yml
202
209
  - spec/internal/config/routes.rb
203
210
  - spec/internal/db/schema.rb
204
211
  - spec/internal/public/favicon.ico
205
212
  - spec/lib/generators/sequel/migration_spec.rb
213
+ - spec/lib/sequel_rails/migrations_spec.rb
206
214
  - spec/lib/sequel_rails/railtie_spec.rb
207
215
  - spec/lib/sequel_rails/railties/log_subscriber_spec.rb
208
216
  - spec/lib/sequel_rails/storage_spec.rb