vizzuality-sequel-rails 0.3.4
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/.document +5 -0
- data/.gitignore +29 -0
- data/Gemfile +3 -0
- data/Gemfile.lock +112 -0
- data/History.md +77 -0
- data/LICENSE +20 -0
- data/README.rdoc +102 -0
- data/Rakefile +9 -0
- data/autotest/discover.rb +1 -0
- data/lib/generators/sequel.rb +83 -0
- data/lib/generators/sequel/migration/migration_generator.rb +45 -0
- data/lib/generators/sequel/migration/templates/migration.rb +48 -0
- data/lib/generators/sequel/model/model_generator.rb +29 -0
- data/lib/generators/sequel/model/templates/migration.rb +16 -0
- data/lib/generators/sequel/model/templates/model.rb +6 -0
- data/lib/generators/sequel/observer/observer_generator.rb +19 -0
- data/lib/generators/sequel/observer/templates/observer.rb +7 -0
- data/lib/sequel-rails.rb +7 -0
- data/lib/sequel-rails/configuration.rb +63 -0
- data/lib/sequel-rails/migrations.rb +30 -0
- data/lib/sequel-rails/railtie.rb +93 -0
- data/lib/sequel-rails/railties/benchmarking_mixin.rb +23 -0
- data/lib/sequel-rails/railties/controller_runtime.rb +43 -0
- data/lib/sequel-rails/railties/database.rake +167 -0
- data/lib/sequel-rails/railties/i18n_support.rb +12 -0
- data/lib/sequel-rails/railties/log_subscriber.rb +31 -0
- data/lib/sequel-rails/runtime.rb +14 -0
- data/lib/sequel-rails/session_store.rb +82 -0
- data/lib/sequel-rails/setup.rb +27 -0
- data/lib/sequel-rails/storage.rb +222 -0
- data/lib/sequel-rails/version.rb +5 -0
- data/lib/sequel/plugins/rails_extensions.rb +35 -0
- data/spec/rcov.opts +6 -0
- data/spec/spec.opts +4 -0
- data/spec/spec_helper.rb +7 -0
- data/tasks/ci.rake +1 -0
- data/tasks/clean.rake +6 -0
- data/tasks/metrics.rake +37 -0
- data/tasks/spec.rake +30 -0
- data/tasks/yard.rake +9 -0
- data/tasks/yardstick.rake +20 -0
- data/vizzuality-sequel-rails.gemspec +29 -0
- metadata +208 -0
@@ -0,0 +1,35 @@
|
|
1
|
+
require 'sequel'
|
2
|
+
|
3
|
+
module Sequel
|
4
|
+
module Plugins
|
5
|
+
# The RailsExtensions plugin adds a single class method to Sequel::Model in
|
6
|
+
# order to make its use in controllers a little more like ActiveRecord's.
|
7
|
+
# The +find!+ method is added which will raise an exception if no object is
|
8
|
+
# found. By adding the following code to a Railtie:
|
9
|
+
#
|
10
|
+
# config.action_dispatch.rescue_responses.merge!(
|
11
|
+
# 'Sequel::Plugins::RailsExtensions::ModelNotFound' => :not_found
|
12
|
+
# )
|
13
|
+
#
|
14
|
+
# Usage:
|
15
|
+
#
|
16
|
+
# # Apply plugin to all models:
|
17
|
+
# Sequel::Model.plugin :rails_extensions
|
18
|
+
#
|
19
|
+
# # Apply plugin to a single model:
|
20
|
+
# Album.plugin :rails_extensions
|
21
|
+
module RailsExtensions
|
22
|
+
class ModelNotFound < Sequel::Error
|
23
|
+
end
|
24
|
+
|
25
|
+
module ClassMethods
|
26
|
+
def find!(args)
|
27
|
+
m = self[args]
|
28
|
+
raise ModelNotFound, "Couldn't find #{self} matching #{args}." unless m
|
29
|
+
m
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
data/spec/rcov.opts
ADDED
data/spec/spec.opts
ADDED
data/spec/spec_helper.rb
ADDED
data/tasks/ci.rake
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
task :ci => [ 'metrics:all' ]
|
data/tasks/clean.rake
ADDED
data/tasks/metrics.rake
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
begin
|
2
|
+
require 'metric_fu'
|
3
|
+
rescue LoadError
|
4
|
+
namespace :metrics do
|
5
|
+
task :all do
|
6
|
+
abort 'metric_fu is not available. In order to run metrics:all, you must: gem install metric_fu'
|
7
|
+
end
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
begin
|
12
|
+
require 'reek/adapters/rake_task'
|
13
|
+
|
14
|
+
Reek::RakeTask.new do |t|
|
15
|
+
t.fail_on_error = true
|
16
|
+
t.verbose = false
|
17
|
+
t.source_files = 'lib/**/*.rb'
|
18
|
+
end
|
19
|
+
rescue LoadError
|
20
|
+
task :reek do
|
21
|
+
abort 'Reek is not available. In order to run reek, you must: gem install reek'
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
begin
|
26
|
+
require 'roodi'
|
27
|
+
require 'rake/tasklib'
|
28
|
+
require 'roodi_task'
|
29
|
+
|
30
|
+
RoodiTask.new do |t|
|
31
|
+
t.verbose = false
|
32
|
+
end
|
33
|
+
rescue LoadError
|
34
|
+
task :roodi do
|
35
|
+
abort 'Roodi is not available. In order to run roodi, you must: gem install roodi'
|
36
|
+
end
|
37
|
+
end
|
data/tasks/spec.rake
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
begin
|
2
|
+
require 'rspec/core/rake_task'
|
3
|
+
|
4
|
+
RSpec::Core::RakeTask.new('spec')
|
5
|
+
|
6
|
+
task :default => :spec
|
7
|
+
|
8
|
+
rescue LoadError
|
9
|
+
task :spec do
|
10
|
+
abort 'rspec is not available. In order to run spec, you must: bundle install'
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
begin
|
15
|
+
namespace :spec do
|
16
|
+
desc "Run all specs in spec directory with RCov (excluding plugin specs)"
|
17
|
+
RSpec::Core::RakeTask.new(:rcov) do |t|
|
18
|
+
t.rcov = true
|
19
|
+
t.rcov_opts = lambda do
|
20
|
+
IO.readlines("spec/rcov.opts").map {|l| l.chomp.split " "}.flatten
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
rescue LoadError
|
25
|
+
namespace :spec do
|
26
|
+
task :rcov do
|
27
|
+
abort "rcov is not available. In order to run #{name}, you must: bundle install"
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
data/tasks/yard.rake
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
begin
|
2
|
+
require 'pathname'
|
3
|
+
require 'yardstick'
|
4
|
+
require 'yardstick/rake/measurement'
|
5
|
+
require 'yardstick/rake/verify'
|
6
|
+
|
7
|
+
# yardstick_measure task
|
8
|
+
Yardstick::Rake::Measurement.new
|
9
|
+
|
10
|
+
# verify_measurements task
|
11
|
+
Yardstick::Rake::Verify.new do |verify|
|
12
|
+
verify.threshold = 100
|
13
|
+
end
|
14
|
+
rescue LoadError
|
15
|
+
%w[ yardstick_measure verify_measurements ].each do |name|
|
16
|
+
task name.to_s do
|
17
|
+
abort "Yardstick is not available. In order to run #{name}, you must: gem install yardstick"
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
$:.push File.expand_path("../lib", __FILE__)
|
3
|
+
|
4
|
+
require "sequel-rails/version"
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = "vizzuality-sequel-rails"
|
8
|
+
s.version = Rails::Sequel::VERSION
|
9
|
+
s.platform = Gem::Platform::RUBY
|
10
|
+
s.authors = ["Brasten Sager (brasten)", "Jonathan TRON"]
|
11
|
+
s.email = ["brasten@gmail.com", "jonathan.tron@thetalentbox.com"]
|
12
|
+
s.homepage = "https://github.com/Vizzuality/sequel-rails"
|
13
|
+
s.description = "Integrate Sequel with Rails 3"
|
14
|
+
s.summary = "Use Sequel with Rails 3"
|
15
|
+
s.files = `git ls-files`.split("\n")
|
16
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
17
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
18
|
+
s.require_paths = ["lib"]
|
19
|
+
s.extra_rdoc_files = ["LICENSE", "README.rdoc"]
|
20
|
+
s.rdoc_options = ["--charset=UTF-8"]
|
21
|
+
s.add_runtime_dependency("sequel", ["~> 3.28"])
|
22
|
+
s.add_runtime_dependency("rails", ["~> 3.2.0"])
|
23
|
+
|
24
|
+
s.add_development_dependency("rake", ["~> 0.8.7"])
|
25
|
+
s.add_development_dependency("yard", ["~> 0.5"])
|
26
|
+
s.add_development_dependency("rspec", ["~> 2.7.0"])
|
27
|
+
s.add_development_dependency("autotest", ["~> 4.4.6"])
|
28
|
+
s.add_development_dependency("rcov", ["~> 0.9.11"])
|
29
|
+
end
|
metadata
ADDED
@@ -0,0 +1,208 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: vizzuality-sequel-rails
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.3.4
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Brasten Sager (brasten)
|
9
|
+
- Jonathan TRON
|
10
|
+
autorequire:
|
11
|
+
bindir: bin
|
12
|
+
cert_chain: []
|
13
|
+
date: 2012-08-03 00:00:00.000000000 Z
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: sequel
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
none: false
|
19
|
+
requirements:
|
20
|
+
- - ~>
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '3.28'
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
none: false
|
27
|
+
requirements:
|
28
|
+
- - ~>
|
29
|
+
- !ruby/object:Gem::Version
|
30
|
+
version: '3.28'
|
31
|
+
- !ruby/object:Gem::Dependency
|
32
|
+
name: rails
|
33
|
+
requirement: !ruby/object:Gem::Requirement
|
34
|
+
none: false
|
35
|
+
requirements:
|
36
|
+
- - ~>
|
37
|
+
- !ruby/object:Gem::Version
|
38
|
+
version: 3.2.0
|
39
|
+
type: :runtime
|
40
|
+
prerelease: false
|
41
|
+
version_requirements: !ruby/object:Gem::Requirement
|
42
|
+
none: false
|
43
|
+
requirements:
|
44
|
+
- - ~>
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: 3.2.0
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: rake
|
49
|
+
requirement: !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
51
|
+
requirements:
|
52
|
+
- - ~>
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 0.8.7
|
55
|
+
type: :development
|
56
|
+
prerelease: false
|
57
|
+
version_requirements: !ruby/object:Gem::Requirement
|
58
|
+
none: false
|
59
|
+
requirements:
|
60
|
+
- - ~>
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: 0.8.7
|
63
|
+
- !ruby/object:Gem::Dependency
|
64
|
+
name: yard
|
65
|
+
requirement: !ruby/object:Gem::Requirement
|
66
|
+
none: false
|
67
|
+
requirements:
|
68
|
+
- - ~>
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: '0.5'
|
71
|
+
type: :development
|
72
|
+
prerelease: false
|
73
|
+
version_requirements: !ruby/object:Gem::Requirement
|
74
|
+
none: false
|
75
|
+
requirements:
|
76
|
+
- - ~>
|
77
|
+
- !ruby/object:Gem::Version
|
78
|
+
version: '0.5'
|
79
|
+
- !ruby/object:Gem::Dependency
|
80
|
+
name: rspec
|
81
|
+
requirement: !ruby/object:Gem::Requirement
|
82
|
+
none: false
|
83
|
+
requirements:
|
84
|
+
- - ~>
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
version: 2.7.0
|
87
|
+
type: :development
|
88
|
+
prerelease: false
|
89
|
+
version_requirements: !ruby/object:Gem::Requirement
|
90
|
+
none: false
|
91
|
+
requirements:
|
92
|
+
- - ~>
|
93
|
+
- !ruby/object:Gem::Version
|
94
|
+
version: 2.7.0
|
95
|
+
- !ruby/object:Gem::Dependency
|
96
|
+
name: autotest
|
97
|
+
requirement: !ruby/object:Gem::Requirement
|
98
|
+
none: false
|
99
|
+
requirements:
|
100
|
+
- - ~>
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
version: 4.4.6
|
103
|
+
type: :development
|
104
|
+
prerelease: false
|
105
|
+
version_requirements: !ruby/object:Gem::Requirement
|
106
|
+
none: false
|
107
|
+
requirements:
|
108
|
+
- - ~>
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 4.4.6
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: rcov
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
none: false
|
115
|
+
requirements:
|
116
|
+
- - ~>
|
117
|
+
- !ruby/object:Gem::Version
|
118
|
+
version: 0.9.11
|
119
|
+
type: :development
|
120
|
+
prerelease: false
|
121
|
+
version_requirements: !ruby/object:Gem::Requirement
|
122
|
+
none: false
|
123
|
+
requirements:
|
124
|
+
- - ~>
|
125
|
+
- !ruby/object:Gem::Version
|
126
|
+
version: 0.9.11
|
127
|
+
description: Integrate Sequel with Rails 3
|
128
|
+
email:
|
129
|
+
- brasten@gmail.com
|
130
|
+
- jonathan.tron@thetalentbox.com
|
131
|
+
executables: []
|
132
|
+
extensions: []
|
133
|
+
extra_rdoc_files:
|
134
|
+
- LICENSE
|
135
|
+
- README.rdoc
|
136
|
+
files:
|
137
|
+
- .document
|
138
|
+
- .gitignore
|
139
|
+
- Gemfile
|
140
|
+
- Gemfile.lock
|
141
|
+
- History.md
|
142
|
+
- LICENSE
|
143
|
+
- README.rdoc
|
144
|
+
- Rakefile
|
145
|
+
- autotest/discover.rb
|
146
|
+
- lib/generators/sequel.rb
|
147
|
+
- lib/generators/sequel/migration/migration_generator.rb
|
148
|
+
- lib/generators/sequel/migration/templates/migration.rb
|
149
|
+
- lib/generators/sequel/model/model_generator.rb
|
150
|
+
- lib/generators/sequel/model/templates/migration.rb
|
151
|
+
- lib/generators/sequel/model/templates/model.rb
|
152
|
+
- lib/generators/sequel/observer/observer_generator.rb
|
153
|
+
- lib/generators/sequel/observer/templates/observer.rb
|
154
|
+
- lib/sequel-rails.rb
|
155
|
+
- lib/sequel-rails/configuration.rb
|
156
|
+
- lib/sequel-rails/migrations.rb
|
157
|
+
- lib/sequel-rails/railtie.rb
|
158
|
+
- lib/sequel-rails/railties/benchmarking_mixin.rb
|
159
|
+
- lib/sequel-rails/railties/controller_runtime.rb
|
160
|
+
- lib/sequel-rails/railties/database.rake
|
161
|
+
- lib/sequel-rails/railties/i18n_support.rb
|
162
|
+
- lib/sequel-rails/railties/log_subscriber.rb
|
163
|
+
- lib/sequel-rails/runtime.rb
|
164
|
+
- lib/sequel-rails/session_store.rb
|
165
|
+
- lib/sequel-rails/setup.rb
|
166
|
+
- lib/sequel-rails/storage.rb
|
167
|
+
- lib/sequel-rails/version.rb
|
168
|
+
- lib/sequel/plugins/rails_extensions.rb
|
169
|
+
- spec/rcov.opts
|
170
|
+
- spec/spec.opts
|
171
|
+
- spec/spec_helper.rb
|
172
|
+
- tasks/ci.rake
|
173
|
+
- tasks/clean.rake
|
174
|
+
- tasks/metrics.rake
|
175
|
+
- tasks/spec.rake
|
176
|
+
- tasks/yard.rake
|
177
|
+
- tasks/yardstick.rake
|
178
|
+
- vizzuality-sequel-rails.gemspec
|
179
|
+
homepage: https://github.com/Vizzuality/sequel-rails
|
180
|
+
licenses: []
|
181
|
+
post_install_message:
|
182
|
+
rdoc_options:
|
183
|
+
- --charset=UTF-8
|
184
|
+
require_paths:
|
185
|
+
- lib
|
186
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
187
|
+
none: false
|
188
|
+
requirements:
|
189
|
+
- - ! '>='
|
190
|
+
- !ruby/object:Gem::Version
|
191
|
+
version: '0'
|
192
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
193
|
+
none: false
|
194
|
+
requirements:
|
195
|
+
- - ! '>='
|
196
|
+
- !ruby/object:Gem::Version
|
197
|
+
version: '0'
|
198
|
+
requirements: []
|
199
|
+
rubyforge_project:
|
200
|
+
rubygems_version: 1.8.24
|
201
|
+
signing_key:
|
202
|
+
specification_version: 3
|
203
|
+
summary: Use Sequel with Rails 3
|
204
|
+
test_files:
|
205
|
+
- spec/rcov.opts
|
206
|
+
- spec/spec.opts
|
207
|
+
- spec/spec_helper.rb
|
208
|
+
has_rdoc:
|