spectacles 0.2.0 → 0.3.0.pre
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +14 -1
- data/LICENSE +20 -0
- data/Rakefile +3 -3
- data/lib/spectacles.rb +2 -18
- data/lib/spectacles/schema_statements.rb +2 -2
- data/lib/spectacles/schema_statements/abstract_adapter.rb +14 -3
- data/lib/spectacles/schema_statements/sqlite3_adapter.rb +33 -0
- data/lib/spectacles/version.rb +1 -1
- data/lib/spectacles/view.rb +3 -1
- data/specs/adapters/sqlite3_adapter_spec.rb +14 -0
- data/specs/spec_helper.rb +1 -1
- data/specs/support/schema_statement_examples.rb +6 -6
- data/specs/support/view_examples.rb +4 -4
- data/spectacles.gemspec +2 -15
- metadata +12 -65
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 777bc0650701d2eb93cc11a22223182c281f1cca
|
4
|
+
data.tar.gz: ec7b5d312864bad0a7d704d6d299f43528c0c0d9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0ed610ac85d55c42ae2b1e41cd7ce887dacbb1785774bad2ce355f7ce1bed80a79de92cfaa3cb34fd00ff1e60f2a5c299624be28411ed62817d382c13d6ed0c9
|
7
|
+
data.tar.gz: 2adeacea766bb60432eeea04e7c976c06a16eaae039e4005d0f301bae90122dab4d2b3c552cb81ef52aba33cc896e32b0f90b5add1b5b77a1f2fa6ea9548e08f
|
data/Gemfile
CHANGED
@@ -3,6 +3,19 @@ source "http://rubygems.org"
|
|
3
3
|
# Specify your gem's dependencies in spectacles.gemspec
|
4
4
|
gemspec
|
5
5
|
|
6
|
-
|
6
|
+
platforms :jruby do
|
7
|
+
gem "activerecord-jdbcmysql-adapter"
|
8
|
+
gem "activerecord-jdbcpostgresql-adapter"
|
9
|
+
gem "activerecord-jdbcsqlite3-adapter"
|
10
|
+
end
|
11
|
+
|
12
|
+
platforms :ruby do
|
13
|
+
gem "mysql"
|
14
|
+
gem "mysql2"
|
15
|
+
gem "pg"
|
16
|
+
gem "sqlite3"
|
17
|
+
end
|
18
|
+
|
19
|
+
group :test do
|
7
20
|
gem 'simplecov', :require => false
|
8
21
|
end
|
data/LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
The MIT License (MIT)
|
2
|
+
|
3
|
+
Copyright (c) 2012 Adam Hutchison, Brandon Dewitt
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
6
|
+
this software and associated documentation files (the "Software"), to deal in
|
7
|
+
the Software without restriction, including without limitation the rights to
|
8
|
+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
9
|
+
the Software, and to permit persons to whom the Software is furnished to do so,
|
10
|
+
subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
13
|
+
copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
17
|
+
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
18
|
+
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
19
|
+
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
20
|
+
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/Rakefile
CHANGED
@@ -2,8 +2,8 @@ require "bundler/gem_tasks"
|
|
2
2
|
require 'rake/testtask'
|
3
3
|
|
4
4
|
namespace :test do
|
5
|
-
adapters = [:mysql, :mysql2, :postgresql, :sqlite]
|
6
|
-
task :all => [:spectacles] + adapters
|
5
|
+
adapters = [ :mysql, :mysql2, :postgresql, :sqlite, :sqlite3 ]
|
6
|
+
task :all => [ :spectacles ] + adapters
|
7
7
|
|
8
8
|
adapters.each do |adapter|
|
9
9
|
Rake::TestTask.new(adapter) do |t|
|
@@ -13,7 +13,7 @@ namespace :test do
|
|
13
13
|
t.verbose = true
|
14
14
|
end
|
15
15
|
end
|
16
|
-
|
16
|
+
|
17
17
|
Rake::TestTask.new(:spectacles) do |t|
|
18
18
|
t.libs.push "lib"
|
19
19
|
t.libs.push "specs"
|
data/lib/spectacles.rb
CHANGED
@@ -1,19 +1,3 @@
|
|
1
|
-
# (The MIT License)
|
2
|
-
#
|
3
|
-
# Copyright (c) 2012 Adam Hutchison, http://github.com/liveh2o
|
4
|
-
# Copyright (c) 2012 Brandon Dewitt, http://abrandoned.com
|
5
|
-
#
|
6
|
-
# Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'),
|
7
|
-
# to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
8
|
-
# and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
9
|
-
#
|
10
|
-
# The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
11
|
-
#
|
12
|
-
# THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
13
|
-
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
14
|
-
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
15
|
-
# IN THE SOFTWARE.
|
16
|
-
|
17
1
|
require 'active_record'
|
18
2
|
require 'active_support/core_ext'
|
19
3
|
require 'spectacles/schema_statements'
|
@@ -39,11 +23,11 @@ module Spectacles
|
|
39
23
|
end
|
40
24
|
|
41
25
|
ActiveRecord::ConnectionAdapters::AbstractAdapter.class_eval do
|
42
|
-
alias_method(:
|
26
|
+
alias_method(:_spectacles_original_inherited, :inherited) if method_defined?(:inherited)
|
43
27
|
|
44
28
|
def self.inherited(klass)
|
45
29
|
::Spectacles::load_adapters
|
46
|
-
_spectacles_orig_inherited if method_defined?(:
|
30
|
+
_spectacles_orig_inherited if method_defined?(:_spectacles_original_inherited)
|
47
31
|
end
|
48
32
|
end
|
49
33
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'spectacles/schema_statements/abstract_adapter'
|
2
2
|
|
3
3
|
module Spectacles
|
4
|
-
SUPPORTED_ADAPTERS = %w( Mysql Mysql2 PostgreSQL SQLServer SQLite )
|
4
|
+
SUPPORTED_ADAPTERS = %w( Mysql Mysql2 PostgreSQL SQLServer SQLite SQLite3 )
|
5
5
|
|
6
6
|
def self.load_adapters
|
7
7
|
SUPPORTED_ADAPTERS.each do |db|
|
@@ -10,7 +10,7 @@ module Spectacles
|
|
10
10
|
if ActiveRecord::ConnectionAdapters.const_defined?(adapter_class)
|
11
11
|
require "spectacles/schema_statements/#{db.downcase}_adapter"
|
12
12
|
ActiveRecord::ConnectionAdapters.const_get(adapter_class).class_eval do
|
13
|
-
include Spectacles::SchemaStatements.const_get(adapter_class)
|
13
|
+
include Spectacles::SchemaStatements.const_get(adapter_class)
|
14
14
|
end
|
15
15
|
end
|
16
16
|
end
|
@@ -1,12 +1,19 @@
|
|
1
1
|
module Spectacles
|
2
2
|
module SchemaStatements
|
3
3
|
module AbstractAdapter
|
4
|
-
def create_view(view_name,
|
4
|
+
def create_view(view_name, *args)
|
5
|
+
options = args.extract_options!
|
6
|
+
build_query = args.shift
|
7
|
+
|
5
8
|
raise "#{self.class} requires a query or block" if build_query.nil? && !block_given?
|
6
9
|
|
7
10
|
build_query = yield if block_given?
|
8
11
|
build_query = build_query.to_sql if build_query.respond_to?(:to_sql)
|
9
12
|
|
13
|
+
if options[:force] && view_exists?(view_name)
|
14
|
+
drop_view(view_name)
|
15
|
+
end
|
16
|
+
|
10
17
|
query = create_view_statement(view_name, build_query)
|
11
18
|
execute(query)
|
12
19
|
end
|
@@ -15,7 +22,7 @@ module Spectacles
|
|
15
22
|
query = "CREATE VIEW ? AS #{create_query}"
|
16
23
|
query_array = [query, view_name.to_s]
|
17
24
|
|
18
|
-
#return ActiveRecord::Base.__send__(:sanitize_sql_array, query_array)
|
25
|
+
#return ActiveRecord::Base.__send__(:sanitize_sql_array, query_array)
|
19
26
|
"CREATE VIEW #{view_name} AS #{create_query}"
|
20
27
|
end
|
21
28
|
|
@@ -28,10 +35,14 @@ module Spectacles
|
|
28
35
|
query = "DROP VIEW IF EXISTS ? "
|
29
36
|
query_array = [query, view_name.to_s]
|
30
37
|
|
31
|
-
#return ActiveRecord::Base.__send__(:sanitize_sql_array, query_array)
|
38
|
+
#return ActiveRecord::Base.__send__(:sanitize_sql_array, query_array)
|
32
39
|
"DROP VIEW IF EXISTS #{view_name} "
|
33
40
|
end
|
34
41
|
|
42
|
+
def view_exists?(name)
|
43
|
+
return views.include?(name.to_s)
|
44
|
+
end
|
45
|
+
|
35
46
|
def views
|
36
47
|
raise "Override view for your db adapter in #{self.class}"
|
37
48
|
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
require 'spectacles/schema_statements/abstract_adapter'
|
2
|
+
|
3
|
+
module Spectacles
|
4
|
+
module SchemaStatements
|
5
|
+
module SQLite3Adapter
|
6
|
+
include Spectacles::SchemaStatements::AbstractAdapter
|
7
|
+
|
8
|
+
def generate_view_query(*columns)
|
9
|
+
sql = <<-SQL
|
10
|
+
SELECT #{columns.join(',')}
|
11
|
+
FROM sqlite_master
|
12
|
+
WHERE type = 'view'
|
13
|
+
SQL
|
14
|
+
end
|
15
|
+
|
16
|
+
def views #:nodoc:
|
17
|
+
sql = generate_view_query(:name)
|
18
|
+
|
19
|
+
exec_query(sql, "SCHEMA").map do |row|
|
20
|
+
row['name']
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def view_build_query(table_name)
|
25
|
+
sql = generate_view_query(:sql)
|
26
|
+
sql << " AND name = #{quote_table_name(table_name)}"
|
27
|
+
|
28
|
+
row = exec_query(sql, "SCHEMA").first
|
29
|
+
row['sql'].gsub(/CREATE VIEW .*? AS/i, "")
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
data/lib/spectacles/version.rb
CHANGED
data/lib/spectacles/view.rb
CHANGED
@@ -0,0 +1,14 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe "Spectacles::SchemaStatements::SQLite3Adapter" do
|
4
|
+
File.delete(File.expand_path(File.dirname(__FILE__) + "/../test.db")) rescue nil
|
5
|
+
|
6
|
+
ActiveRecord::Base.establish_connection(
|
7
|
+
:adapter => "sqlite3",
|
8
|
+
:database => "specs/test.db"
|
9
|
+
)
|
10
|
+
load_schema
|
11
|
+
|
12
|
+
it_behaves_like "an adapter", "SQLite3Adapter"
|
13
|
+
it_behaves_like "a view model"
|
14
|
+
end
|
data/specs/spec_helper.rb
CHANGED
@@ -49,11 +49,11 @@ shared_examples_for "an adapter" do |adapter|
|
|
49
49
|
|
50
50
|
describe "view_name" do
|
51
51
|
it "takes a symbol as the view_name" do
|
52
|
-
shared_base.create_view(view_name.to_sym, Product.
|
52
|
+
shared_base.create_view(view_name.to_sym, Product.all).must_match(/#{view_name}/)
|
53
53
|
end
|
54
54
|
|
55
55
|
it "takes a string as the view_name" do
|
56
|
-
shared_base.create_view(view_name.to_s, Product.
|
56
|
+
shared_base.create_view(view_name.to_s, Product.all).must_match(/#{view_name}/)
|
57
57
|
end
|
58
58
|
end
|
59
59
|
|
@@ -64,15 +64,15 @@ shared_examples_for "an adapter" do |adapter|
|
|
64
64
|
end
|
65
65
|
|
66
66
|
it "uses an Arel::Relation if passed" do
|
67
|
-
select_statement = Product.
|
68
|
-
shared_base.create_view(view_name, Product.
|
67
|
+
select_statement = Product.all.to_sql
|
68
|
+
shared_base.create_view(view_name, Product.all).must_match(/#{Regexp.escape(select_statement)}/)
|
69
69
|
end
|
70
70
|
end
|
71
71
|
|
72
72
|
describe "block" do
|
73
73
|
it "can use an Arel::Relation from the yield" do
|
74
|
-
select_statement = Product.
|
75
|
-
shared_base.create_view(view_name) { Product.
|
74
|
+
select_statement = Product.all.to_sql
|
75
|
+
shared_base.create_view(view_name) { Product.all }.must_match(/#{Regexp.escape(select_statement)}/)
|
76
76
|
end
|
77
77
|
|
78
78
|
it "can use a String from the yield" do
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
shared_examples_for "a view model" do
|
4
|
-
ActiveRecord::Base.connection.create_view(:new_product_users) do
|
4
|
+
ActiveRecord::Base.connection.create_view(:new_product_users) do
|
5
5
|
"SELECT name AS product_name, first_name AS username FROM
|
6
6
|
products JOIN users ON users.id = products.user_id"
|
7
7
|
end
|
@@ -9,7 +9,7 @@ shared_examples_for "a view model" do
|
|
9
9
|
class NewProductUser < Spectacles::View
|
10
10
|
scope :duck_lovers, where(:product_name => 'Rubber Duck')
|
11
11
|
end
|
12
|
-
|
12
|
+
|
13
13
|
describe "Spectacles::View" do
|
14
14
|
describe "inherited class" do
|
15
15
|
it "can has scopes" do
|
@@ -18,9 +18,9 @@ shared_examples_for "a view model" do
|
|
18
18
|
@john = User.create(:first_name => 'John', :last_name => 'Doe')
|
19
19
|
@john.products.create(:name => 'Rubber Duck', :value => 10)
|
20
20
|
|
21
|
-
NewProductUser.duck_lovers.first.username.must_be @john.first_name
|
21
|
+
NewProductUser.duck_lovers.load.first.username.must_be @john.first_name
|
22
22
|
end
|
23
|
-
|
23
|
+
|
24
24
|
describe "an instance" do
|
25
25
|
it "is readonly" do
|
26
26
|
NewProductUser.new.readonly?.must_be true
|
data/spectacles.gemspec
CHANGED
@@ -20,25 +20,12 @@ Gem::Specification.new do |gem|
|
|
20
20
|
##
|
21
21
|
# Dependencies
|
22
22
|
#
|
23
|
-
gem.add_dependency "activerecord"
|
24
|
-
gem.add_dependency "activesupport"
|
23
|
+
gem.add_dependency "activerecord", ">= 3.2.0"
|
24
|
+
gem.add_dependency "activesupport", ">= 3.2.0"
|
25
25
|
|
26
26
|
##
|
27
27
|
# Development dependencies
|
28
28
|
#
|
29
29
|
gem.add_development_dependency "rake"
|
30
30
|
gem.add_development_dependency "minitest"
|
31
|
-
|
32
|
-
if defined?(JRUBY_VERSION)
|
33
|
-
gem.add_development_dependency "activerecord-jdbcmysql-adapter"
|
34
|
-
gem.add_development_dependency "activerecord-jdbcpostgresql-adapter"
|
35
|
-
gem.add_development_dependency "activerecord-jdbcsqlite3-adapter"
|
36
|
-
|
37
|
-
gem.platform = Gem::Platform.new('java')
|
38
|
-
else
|
39
|
-
gem.add_development_dependency "mysql"
|
40
|
-
gem.add_development_dependency "mysql2"
|
41
|
-
gem.add_development_dependency "pg"
|
42
|
-
gem.add_development_dependency "sqlite3"
|
43
|
-
end
|
44
31
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: spectacles
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0.pre
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Adam Hutchison, Brandon Dewitt
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-09-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -16,28 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '>='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 3.2.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '>='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 3.2.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: activesupport
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - '>='
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 3.2.0
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - '>='
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
40
|
+
version: 3.2.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rake
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -66,62 +66,6 @@ dependencies:
|
|
66
66
|
- - '>='
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: mysql
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - '>='
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '0'
|
76
|
-
type: :development
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - '>='
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: '0'
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: mysql2
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - '>='
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '0'
|
90
|
-
type: :development
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - '>='
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '0'
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
name: pg
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - '>='
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '0'
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
requirements:
|
108
|
-
- - '>='
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: '0'
|
111
|
-
- !ruby/object:Gem::Dependency
|
112
|
-
name: sqlite3
|
113
|
-
requirement: !ruby/object:Gem::Requirement
|
114
|
-
requirements:
|
115
|
-
- - '>='
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: '0'
|
118
|
-
type: :development
|
119
|
-
prerelease: false
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
requirements:
|
122
|
-
- - '>='
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
version: '0'
|
125
69
|
description: Still working out some of the kinks. Almost ready for Prime Time(TM).
|
126
70
|
If you decide to use it and have problems, please report them at github.com/liveh2o/spectactles/issues
|
127
71
|
email:
|
@@ -132,6 +76,7 @@ extra_rdoc_files: []
|
|
132
76
|
files:
|
133
77
|
- .gitignore
|
134
78
|
- Gemfile
|
79
|
+
- LICENSE
|
135
80
|
- Rakefile
|
136
81
|
- Readme.rdoc
|
137
82
|
- lib/spectacles.rb
|
@@ -143,6 +88,7 @@ files:
|
|
143
88
|
- lib/spectacles/schema_statements/mysql2_adapter.rb
|
144
89
|
- lib/spectacles/schema_statements/mysql_adapter.rb
|
145
90
|
- lib/spectacles/schema_statements/postgresql_adapter.rb
|
91
|
+
- lib/spectacles/schema_statements/sqlite3_adapter.rb
|
146
92
|
- lib/spectacles/schema_statements/sqlite_adapter.rb
|
147
93
|
- lib/spectacles/schema_statements/sqlserver_adapter.rb
|
148
94
|
- lib/spectacles/version.rb
|
@@ -150,6 +96,7 @@ files:
|
|
150
96
|
- specs/adapters/mysql2_adapter_spec.rb
|
151
97
|
- specs/adapters/mysql_adapter_spec.rb
|
152
98
|
- specs/adapters/postgresql_adapter_spec.rb
|
99
|
+
- specs/adapters/sqlite3_adapter_spec.rb
|
153
100
|
- specs/adapters/sqlite_adapter_spec.rb
|
154
101
|
- specs/spec_helper.rb
|
155
102
|
- specs/spectacles/schema_statements/abstract_adapter_spec.rb
|
@@ -173,12 +120,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
173
120
|
version: '0'
|
174
121
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
175
122
|
requirements:
|
176
|
-
- - '
|
123
|
+
- - '>'
|
177
124
|
- !ruby/object:Gem::Version
|
178
|
-
version:
|
125
|
+
version: 1.3.1
|
179
126
|
requirements: []
|
180
127
|
rubyforge_project:
|
181
|
-
rubygems_version: 2.0.
|
128
|
+
rubygems_version: 2.0.6
|
182
129
|
signing_key:
|
183
130
|
specification_version: 4
|
184
131
|
summary: Spectacles (derived from RailsSQLViews) adds database view functionality
|