dm-is-reflective 0.8.0 → 0.9.0
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/CHANGES +5 -1
- data/NOTICE +1 -11
- data/README +24 -24
- data/README.rdoc +122 -0
- data/Rakefile +26 -30
- data/TODO +4 -0
- data/dm-is-reflective.gemspec +29 -20
- data/lib/dm-is-reflective.rb +6 -4
- data/lib/dm-is-reflective/is/adapters/{abstract_adapter.rb → data_objects_adapter.rb} +15 -15
- data/lib/dm-is-reflective/is/adapters/mysql_adapter.rb +7 -8
- data/lib/dm-is-reflective/is/adapters/postgres_adapter.rb +7 -9
- data/lib/dm-is-reflective/is/adapters/{sqlite3_adapter.rb → sqlite_adapter.rb} +8 -11
- data/lib/dm-is-reflective/is/version.rb +1 -1
- data/lib/dm-is-reflective/version.rb +1 -1
- data/test/abstract.rb +13 -13
- data/test/setup_db.sh +12 -0
- data/test/{test_dm-is-reflexible.rb → test_dm-is-reflective.rb} +9 -9
- metadata +125 -123
- data/.gita/COMMIT_EDITMSG +0 -9
- data/.gita/HEAD +0 -1
- data/.gita/ORIG_HEAD +0 -1
- data/.gita/RENAMED-REF +0 -1
- data/.gita/config +0 -9
- data/.gita/description +0 -1
- data/.gita/gitk.cache +0 -6
- data/.gita/hooks/applypatch-msg +0 -15
- data/.gita/hooks/commit-msg +0 -24
- data/.gita/hooks/post-commit +0 -8
- data/.gita/hooks/post-receive +0 -16
- data/.gita/hooks/post-update +0 -8
- data/.gita/hooks/pre-applypatch +0 -14
- data/.gita/hooks/pre-commit +0 -70
- data/.gita/hooks/pre-rebase +0 -150
- data/.gita/hooks/prepare-commit-msg +0 -36
- data/.gita/hooks/update +0 -107
- data/.gita/index +0 -0
- data/.gita/info/exclude +0 -6
- data/.gita/info/refs +0 -26
- data/.gita/logs/HEAD +0 -40
- data/.gita/logs/refs/heads/dm-mapping +0 -1
- data/.gita/logs/refs/heads/master +0 -40
- data/.gita/logs/refs/heads/return-symbol +0 -0
- data/.gita/logs/refs/remotes/origin/dm-mapping +0 -1
- data/.gita/logs/refs/remotes/origin/master +0 -6
- data/.gita/logs/refs/remotes/origin/return-symbol +0 -0
- data/.gita/objects/5c/91380a1616b7c2d23e14eeb49d9edde58e1f47 +0 -2
- data/.gita/objects/63/71947bcb9c0dd1d3b3d6f449b2d4b4c6c81e63 +0 -0
- data/.gita/objects/73/23ae22118cc54fb0bbb0d6f51cc99191019b96 +0 -0
- data/.gita/objects/81/a0ab6e4dbd148faa0644307b313799027d3344 +0 -2
- data/.gita/objects/b2/9571a21e3bccb60079dfca630dac981f623489 +0 -5
- data/.gita/objects/cb/138acf9efc0f5b3ff91c644cae4dec868442e4 +0 -5
- data/.gita/objects/d5/66699fc7ba5237311cc44648d0cd2abbaa895e +0 -0
- data/.gita/objects/info/packs +0 -2
- data/.gita/objects/pack/pack-c9156ef3406b98f5f12875b13643df7a5f41e42c.idx +0 -0
- data/.gita/objects/pack/pack-c9156ef3406b98f5f12875b13643df7a5f41e42c.pack +0 -0
- data/.gita/packed-refs +0 -27
- data/.gita/refs/heads/master +0 -1
- data/.gita/refs/tags/dm-is-reflective-0.8.0 +0 -1
- data/tasks/ann.rake +0 -80
- data/tasks/bones.rake +0 -20
- data/tasks/gem.rake +0 -201
- data/tasks/git.rake +0 -40
- data/tasks/notes.rake +0 -27
- data/tasks/post_load.rake +0 -34
- data/tasks/rdoc.rake +0 -51
- data/tasks/rubyforge.rake +0 -55
- data/tasks/setup.rb +0 -294
- data/tasks/spec.rake +0 -54
- data/tasks/svn.rake +0 -47
- data/tasks/test.rake +0 -40
- data/tasks/zentest.rake +0 -36
@@ -1,11 +1,9 @@
|
|
1
1
|
|
2
|
-
require 'dm-is-reflective/is/adapters/abstract_adapter'
|
3
|
-
|
4
2
|
module DataMapper
|
5
3
|
module Is::Reflective
|
6
4
|
module MysqlAdapter
|
7
5
|
def storages
|
8
|
-
|
6
|
+
select('SHOW TABLES')
|
9
7
|
end
|
10
8
|
|
11
9
|
private
|
@@ -18,7 +16,7 @@ module DataMapper
|
|
18
16
|
WHERE `table_schema` = ? AND `table_name` = ?
|
19
17
|
SQL
|
20
18
|
|
21
|
-
|
19
|
+
select(sql, options[:path].sub('/', ''), storage)
|
22
20
|
end
|
23
21
|
|
24
22
|
def reflective_field_name field
|
@@ -33,7 +31,7 @@ module DataMapper
|
|
33
31
|
attrs[:serial] = true if field.extra == 'auto_increment'
|
34
32
|
attrs[:key] = true if field.column_key == 'PRI'
|
35
33
|
|
36
|
-
attrs[:
|
34
|
+
attrs[:required] = field.is_nullable != 'YES'
|
37
35
|
attrs[:default] = field.column_default if
|
38
36
|
field.column_default
|
39
37
|
|
@@ -51,9 +49,10 @@ module DataMapper
|
|
51
49
|
return BigDecimal if p =~ /(DOUBLE|FLOAT|DECIMAL)( SIGNED| UNSIGNED)?( ZEROFILL)?/
|
52
50
|
return String if p =~ /\w*BLOB|\w*BINARY|ENUM|SET|CHAR/
|
53
51
|
return Time if p == 'TIME'
|
54
|
-
return
|
55
|
-
return
|
56
|
-
return DataMapper::
|
52
|
+
return Date if p == 'DATE'
|
53
|
+
return DateTime if %w[DATETIME TIMESTAMP].member?(p)
|
54
|
+
return DataMapper::Property::Boolean if %w[BOOL BOOLEAN].member?(p)
|
55
|
+
return DataMapper::Property::Text if p =~ /\w*TEXT/
|
57
56
|
|
58
57
|
super(primitive)
|
59
58
|
end
|
@@ -1,6 +1,4 @@
|
|
1
1
|
|
2
|
-
require 'dm-is-reflective/is/adapters/abstract_adapter'
|
3
|
-
|
4
2
|
module DataMapper
|
5
3
|
module Is::Reflective
|
6
4
|
module PostgresAdapter
|
@@ -10,7 +8,7 @@ module DataMapper
|
|
10
8
|
WHERE table_schema = current_schema()
|
11
9
|
SQL
|
12
10
|
|
13
|
-
|
11
|
+
select(sql)
|
14
12
|
end
|
15
13
|
|
16
14
|
private
|
@@ -20,7 +18,7 @@ module DataMapper
|
|
20
18
|
WHERE table_schema = current_schema() AND table_name = ?
|
21
19
|
SQL
|
22
20
|
|
23
|
-
keys =
|
21
|
+
keys = select(sql, storage).to_set
|
24
22
|
|
25
23
|
sql = <<-SQL.compress_lines
|
26
24
|
SELECT column_name, column_default, is_nullable,
|
@@ -29,7 +27,7 @@ module DataMapper
|
|
29
27
|
WHERE table_schema = current_schema() AND table_name = ?
|
30
28
|
SQL
|
31
29
|
|
32
|
-
|
30
|
+
select(sql, storage).map{ |struct|
|
33
31
|
struct.instance_eval <<-END_EVAL
|
34
32
|
def key?
|
35
33
|
#{keys.member?(struct.column_name)}
|
@@ -53,7 +51,7 @@ module DataMapper
|
|
53
51
|
|
54
52
|
attrs[:serial] = true if field.column_default =~ /nextval\('\w+'\)/
|
55
53
|
attrs[:key] = true if field.key?
|
56
|
-
attrs[:
|
54
|
+
attrs[:required] = field.is_nullable != 'YES'
|
57
55
|
# strip string quotation
|
58
56
|
attrs[:default] = field.column_default.gsub(/^'(.*?)'$/, '\1') if
|
59
57
|
field.column_default && !attrs[:serial]
|
@@ -61,7 +59,7 @@ module DataMapper
|
|
61
59
|
if field.character_maximum_length
|
62
60
|
attrs[:length] = field.character_maximum_length
|
63
61
|
elsif field.udt_name.upcase == 'TEXT'
|
64
|
-
attrs[:length] = DataMapper::
|
62
|
+
attrs[:length] = DataMapper::Property::Text.length
|
65
63
|
end
|
66
64
|
|
67
65
|
attrs
|
@@ -73,8 +71,8 @@ module DataMapper
|
|
73
71
|
return Integer if p =~ /^INT\d+$/
|
74
72
|
return String if p == 'VARCHAR'
|
75
73
|
return DateTime if p == 'TIMESTAMP'
|
76
|
-
return DataMapper::
|
77
|
-
return DataMapper::
|
74
|
+
return DataMapper::Property::Text if p == 'TEXT'
|
75
|
+
return DataMapper::Property::Boolean if p == 'BOOL'
|
78
76
|
|
79
77
|
super(primitive)
|
80
78
|
end
|
@@ -1,9 +1,7 @@
|
|
1
1
|
|
2
|
-
require 'dm-is-reflective/is/adapters/abstract_adapter'
|
3
|
-
|
4
2
|
module DataMapper
|
5
3
|
module Is::Reflective
|
6
|
-
module
|
4
|
+
module SqliteAdapter
|
7
5
|
def storages
|
8
6
|
sql = <<-SQL.compress_lines
|
9
7
|
SELECT name
|
@@ -11,13 +9,12 @@ module DataMapper
|
|
11
9
|
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
12
10
|
SQL
|
13
11
|
|
14
|
-
|
12
|
+
select(sql)
|
15
13
|
end
|
16
14
|
|
17
15
|
private
|
18
|
-
|
19
|
-
|
20
|
-
query_table(*args, &block)
|
16
|
+
def reflective_query_storage storage
|
17
|
+
select('PRAGMA table_info(?)', storage)
|
21
18
|
end
|
22
19
|
|
23
20
|
def reflective_field_name field
|
@@ -33,11 +30,11 @@ module DataMapper
|
|
33
30
|
attrs[:key] = true
|
34
31
|
attrs[:serial] = true if supports_serial?
|
35
32
|
end
|
36
|
-
attrs[:
|
33
|
+
attrs[:required] = field.notnull == 1
|
37
34
|
attrs[:default] = field.dflt_value[1..-2] if field.dflt_value
|
38
35
|
|
39
36
|
if field.type.upcase == 'TEXT'
|
40
|
-
attrs[:length] = DataMapper::
|
37
|
+
attrs[:length] = DataMapper::Property::Text.length
|
41
38
|
else
|
42
39
|
ergo = field.type.match(/\((\d+)\)/)
|
43
40
|
size = ergo && ergo[1].to_i
|
@@ -50,9 +47,9 @@ module DataMapper
|
|
50
47
|
def reflective_lookup_primitive primitive
|
51
48
|
p = primitive.upcase
|
52
49
|
|
53
|
-
return Integer if p
|
50
|
+
return Integer if p == 'INTEGER'
|
54
51
|
return Float if p == 'REAL' || p == 'NUMERIC'
|
55
|
-
return DataMapper::
|
52
|
+
return DataMapper::Property::Text if p == 'TEXT'
|
56
53
|
|
57
54
|
super(primitive)
|
58
55
|
end
|
data/test/abstract.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
|
2
|
-
require 'rubygems'
|
3
2
|
require 'dm-core'
|
3
|
+
require 'dm-migrations'
|
4
4
|
require 'dm-is-reflective'
|
5
5
|
|
6
6
|
module Abstract
|
@@ -8,20 +8,20 @@ module Abstract
|
|
8
8
|
raise 'please provide a clean database because it is a destructive test!!'
|
9
9
|
end
|
10
10
|
|
11
|
-
AttrCommon = {:
|
12
|
-
AttrCommonPK = {:serial => true, :key => true, :
|
11
|
+
AttrCommon = {:required => false}
|
12
|
+
AttrCommonPK = {:serial => true, :key => true, :required => true}
|
13
13
|
AttrText = {:length => 65535}.merge(AttrCommon)
|
14
14
|
|
15
15
|
def user_fields
|
16
16
|
[[:created_at, DateTime, AttrCommon],
|
17
|
-
[:id, DataMapper::
|
17
|
+
[:id, DataMapper::Property::Serial, AttrCommonPK],
|
18
18
|
[:login, String, {:length => 70}.merge(AttrCommon)],
|
19
|
-
[:sig, DataMapper::
|
19
|
+
[:sig, DataMapper::Property::Text, AttrText]]
|
20
20
|
end
|
21
21
|
|
22
22
|
def comment_fields
|
23
|
-
[[:body, DataMapper::
|
24
|
-
[:id, DataMapper::
|
23
|
+
[[:body, DataMapper::Property::Text, AttrText],
|
24
|
+
[:id, DataMapper::Property::Serial, AttrCommonPK],
|
25
25
|
[:title, String, {:length => 50, :default => 'default title'}.
|
26
26
|
merge(AttrCommon)],
|
27
27
|
[:user_id, Integer, AttrCommon]]
|
@@ -32,11 +32,11 @@ module Abstract
|
|
32
32
|
case self
|
33
33
|
when MysqlTest # Mysql couldn't tell it's boolean or tinyint
|
34
34
|
[[:bool, Integer, AttrCommon],
|
35
|
-
[:id, DataMapper::
|
35
|
+
[:id, DataMapper::Property::Serial, AttrCommonPK]]
|
36
36
|
|
37
37
|
else
|
38
|
-
[[:bool, DataMapper::
|
39
|
-
[:id, DataMapper::
|
38
|
+
[[:bool, DataMapper::Property::Boolean, AttrCommon],
|
39
|
+
[:id, DataMapper::Property::Serial, AttrCommonPK]]
|
40
40
|
|
41
41
|
end
|
42
42
|
end
|
@@ -63,7 +63,7 @@ module Abstract
|
|
63
63
|
|
64
64
|
class Comment
|
65
65
|
include DataMapper::Resource
|
66
|
-
belongs_to :user, :
|
66
|
+
belongs_to :user, :required => false
|
67
67
|
|
68
68
|
property :id, Serial
|
69
69
|
property :title, String, :length => 50, :default => 'default title'
|
@@ -166,7 +166,7 @@ module Abstract
|
|
166
166
|
model, local_dm = create_fake_model
|
167
167
|
model.storage_names[:default] = 'abstract_comments'
|
168
168
|
|
169
|
-
model.send :reflect, DataMapper::
|
169
|
+
model.send :reflect, DataMapper::Property::Serial
|
170
170
|
assert_equal ['id'], model.properties.map(&:name).map(&:to_s).sort
|
171
171
|
|
172
172
|
model.send :reflect, Integer
|
@@ -176,7 +176,7 @@ module Abstract
|
|
176
176
|
def test_reflect_multiple
|
177
177
|
model, local_dm = create_fake_model
|
178
178
|
model.storage_names[:default] = 'abstract_users'
|
179
|
-
model.send :reflect, :login, DataMapper::
|
179
|
+
model.send :reflect, :login, DataMapper::Property::Serial
|
180
180
|
|
181
181
|
assert_equal ['id', 'login'], model.properties.map(&:name).map(&:to_s).sort
|
182
182
|
end
|
data/test/setup_db.sh
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
#!/bin/sh
|
2
|
+
|
3
|
+
# postgres
|
4
|
+
psql postgres -c 'CREATE USER dm_is_reflective'
|
5
|
+
psql postgres -c "ALTER USER dm_is_reflective WITH PASSWORD 'godfat'"
|
6
|
+
createdb 'dm_is_reflective'
|
7
|
+
psql postgres -c 'ALTER DATABASE dm_is_reflective OWNER TO dm_is_reflective'
|
8
|
+
|
9
|
+
# mysql
|
10
|
+
mysql -u root -p -e 'GRANT USAGE ON dm_is_reflective.* TO dm_is_reflective@localhost IDENTIFIED BY "godfat"'
|
11
|
+
mysql -u root -p -e 'CREATE DATABASE dm_is_reflective'
|
12
|
+
mysql -u root -p -e 'GRANT ALL PRIVILEGES ON dm_is_reflective.* TO "dm_is_reflective"'
|
@@ -10,22 +10,22 @@ TestCase = begin
|
|
10
10
|
Test::Unit::TestCase
|
11
11
|
end
|
12
12
|
|
13
|
-
%w[
|
13
|
+
%w[sqlite mysql postgres].each{ |adapter|
|
14
14
|
begin
|
15
|
-
require "dm
|
15
|
+
require "dm-#{adapter}-adapter"
|
16
16
|
rescue LoadError
|
17
17
|
puts "skip #{adapter} test since it's not installed"
|
18
18
|
end
|
19
19
|
}
|
20
20
|
|
21
21
|
# cost 1 second to run
|
22
|
-
class
|
22
|
+
class SqliteTest < TestCase
|
23
23
|
include Abstract
|
24
24
|
|
25
25
|
def setup_data_mapper
|
26
|
-
DataMapper.setup(:default, '
|
26
|
+
DataMapper.setup(:default, 'sqlite::memory:')
|
27
27
|
end
|
28
|
-
end if defined?(
|
28
|
+
end if defined?(DataMapper::Adapters::SqliteAdapter)
|
29
29
|
|
30
30
|
|
31
31
|
# cost 2 seconds to run
|
@@ -33,9 +33,9 @@ class MysqlTest < TestCase
|
|
33
33
|
include Abstract
|
34
34
|
|
35
35
|
def setup_data_mapper
|
36
|
-
DataMapper.setup(:default, 'mysql://
|
36
|
+
DataMapper.setup(:default, 'mysql://dm_is_reflective:godfat@localhost/dm_is_reflective')
|
37
37
|
end
|
38
|
-
end if defined?(
|
38
|
+
end if defined?(DataMapper::Adapters::MysqlAdapter)
|
39
39
|
|
40
40
|
|
41
41
|
# cost 3 seconds to run
|
@@ -43,6 +43,6 @@ class PostgresTest < TestCase
|
|
43
43
|
include Abstract
|
44
44
|
|
45
45
|
def setup_data_mapper
|
46
|
-
DataMapper.setup(:default, 'postgres://
|
46
|
+
DataMapper.setup(:default, 'postgres://dm_is_reflective:godfat@localhost/dm_is_reflective')
|
47
47
|
end
|
48
|
-
end if defined?(
|
48
|
+
end if defined?(DataMapper::Adapters::PostgresAdapter)
|
metadata
CHANGED
@@ -1,7 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dm-is-reflective
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
hash: 59
|
5
|
+
prerelease: false
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 9
|
9
|
+
- 0
|
10
|
+
version: 0.9.0
|
5
11
|
platform: ruby
|
6
12
|
authors:
|
7
13
|
- "Lin Jen-Shin (aka godfat \xE7\x9C\x9F\xE5\xB8\xB8)"
|
@@ -9,39 +15,121 @@ autorequire:
|
|
9
15
|
bindir: bin
|
10
16
|
cert_chain: []
|
11
17
|
|
12
|
-
date:
|
18
|
+
date: 2010-07-05 00:00:00 +08:00
|
13
19
|
default_executable:
|
14
20
|
dependencies:
|
15
21
|
- !ruby/object:Gem::Dependency
|
16
22
|
name: dm-core
|
17
|
-
|
18
|
-
|
19
|
-
|
23
|
+
prerelease: false
|
24
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
20
26
|
requirements:
|
21
27
|
- - ">="
|
22
28
|
- !ruby/object:Gem::Version
|
23
|
-
|
24
|
-
|
29
|
+
hash: 23
|
30
|
+
segments:
|
31
|
+
- 1
|
32
|
+
- 0
|
33
|
+
- 0
|
34
|
+
version: 1.0.0
|
35
|
+
type: :runtime
|
36
|
+
version_requirements: *id001
|
25
37
|
- !ruby/object:Gem::Dependency
|
26
|
-
name:
|
38
|
+
name: dm-do-adapter
|
39
|
+
prerelease: false
|
40
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ">="
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
hash: 23
|
46
|
+
segments:
|
47
|
+
- 1
|
48
|
+
- 0
|
49
|
+
- 0
|
50
|
+
version: 1.0.0
|
27
51
|
type: :runtime
|
28
|
-
|
29
|
-
|
52
|
+
version_requirements: *id002
|
53
|
+
- !ruby/object:Gem::Dependency
|
54
|
+
name: dm-migrations
|
55
|
+
prerelease: false
|
56
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
30
58
|
requirements:
|
31
59
|
- - ">="
|
32
60
|
- !ruby/object:Gem::Version
|
33
|
-
|
34
|
-
|
61
|
+
hash: 23
|
62
|
+
segments:
|
63
|
+
- 1
|
64
|
+
- 0
|
65
|
+
- 0
|
66
|
+
version: 1.0.0
|
67
|
+
type: :development
|
68
|
+
version_requirements: *id003
|
35
69
|
- !ruby/object:Gem::Dependency
|
36
|
-
name:
|
70
|
+
name: dm-sqlite-adapter
|
71
|
+
prerelease: false
|
72
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ">="
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
hash: 23
|
78
|
+
segments:
|
79
|
+
- 1
|
80
|
+
- 0
|
81
|
+
- 0
|
82
|
+
version: 1.0.0
|
37
83
|
type: :development
|
38
|
-
|
39
|
-
|
84
|
+
version_requirements: *id004
|
85
|
+
- !ruby/object:Gem::Dependency
|
86
|
+
name: dm-mysql-adapter
|
87
|
+
prerelease: false
|
88
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
40
90
|
requirements:
|
41
91
|
- - ">="
|
42
92
|
- !ruby/object:Gem::Version
|
43
|
-
|
44
|
-
|
93
|
+
hash: 23
|
94
|
+
segments:
|
95
|
+
- 1
|
96
|
+
- 0
|
97
|
+
- 0
|
98
|
+
version: 1.0.0
|
99
|
+
type: :development
|
100
|
+
version_requirements: *id005
|
101
|
+
- !ruby/object:Gem::Dependency
|
102
|
+
name: dm-postgres-adapter
|
103
|
+
prerelease: false
|
104
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ">="
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
hash: 23
|
110
|
+
segments:
|
111
|
+
- 1
|
112
|
+
- 0
|
113
|
+
- 0
|
114
|
+
version: 1.0.0
|
115
|
+
type: :development
|
116
|
+
version_requirements: *id006
|
117
|
+
- !ruby/object:Gem::Dependency
|
118
|
+
name: bones
|
119
|
+
prerelease: false
|
120
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ">="
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
hash: 25
|
126
|
+
segments:
|
127
|
+
- 3
|
128
|
+
- 4
|
129
|
+
- 7
|
130
|
+
version: 3.4.7
|
131
|
+
type: :development
|
132
|
+
version_requirements: *id007
|
45
133
|
description: " DataMapper plugin that helps you manipulate an existing database.\n It creates mappings between existing columns and model's properties."
|
46
134
|
email: godfat (XD) godfat.org
|
47
135
|
executables: []
|
@@ -49,155 +137,69 @@ executables: []
|
|
49
137
|
extensions: []
|
50
138
|
|
51
139
|
extra_rdoc_files:
|
52
|
-
- .gita/COMMIT_EDITMSG
|
53
|
-
- .gita/HEAD
|
54
|
-
- .gita/ORIG_HEAD
|
55
|
-
- .gita/RENAMED-REF
|
56
|
-
- .gita/config
|
57
|
-
- .gita/description
|
58
|
-
- .gita/gitk.cache
|
59
|
-
- .gita/hooks/applypatch-msg
|
60
|
-
- .gita/hooks/commit-msg
|
61
|
-
- .gita/hooks/post-commit
|
62
|
-
- .gita/hooks/post-receive
|
63
|
-
- .gita/hooks/post-update
|
64
|
-
- .gita/hooks/pre-applypatch
|
65
|
-
- .gita/hooks/pre-commit
|
66
|
-
- .gita/hooks/pre-rebase
|
67
|
-
- .gita/hooks/prepare-commit-msg
|
68
|
-
- .gita/hooks/update
|
69
|
-
- .gita/index
|
70
|
-
- .gita/info/exclude
|
71
|
-
- .gita/info/refs
|
72
|
-
- .gita/logs/HEAD
|
73
|
-
- .gita/logs/refs/heads/dm-mapping
|
74
|
-
- .gita/logs/refs/heads/master
|
75
|
-
- .gita/logs/refs/heads/return-symbol
|
76
|
-
- .gita/logs/refs/remotes/origin/dm-mapping
|
77
|
-
- .gita/logs/refs/remotes/origin/master
|
78
|
-
- .gita/logs/refs/remotes/origin/return-symbol
|
79
|
-
- .gita/objects/5c/91380a1616b7c2d23e14eeb49d9edde58e1f47
|
80
|
-
- .gita/objects/63/71947bcb9c0dd1d3b3d6f449b2d4b4c6c81e63
|
81
|
-
- .gita/objects/73/23ae22118cc54fb0bbb0d6f51cc99191019b96
|
82
|
-
- .gita/objects/81/a0ab6e4dbd148faa0644307b313799027d3344
|
83
|
-
- .gita/objects/b2/9571a21e3bccb60079dfca630dac981f623489
|
84
|
-
- .gita/objects/cb/138acf9efc0f5b3ff91c644cae4dec868442e4
|
85
|
-
- .gita/objects/d5/66699fc7ba5237311cc44648d0cd2abbaa895e
|
86
|
-
- .gita/objects/info/packs
|
87
|
-
- .gita/objects/pack/pack-c9156ef3406b98f5f12875b13643df7a5f41e42c.idx
|
88
|
-
- .gita/objects/pack/pack-c9156ef3406b98f5f12875b13643df7a5f41e42c.pack
|
89
|
-
- .gita/packed-refs
|
90
|
-
- .gita/refs/heads/master
|
91
|
-
- .gita/refs/tags/dm-is-reflective-0.8.0
|
92
140
|
- CHANGES
|
93
141
|
- LICENSE
|
94
142
|
- NOTICE
|
95
143
|
- README
|
144
|
+
- README.rdoc
|
145
|
+
- Rakefile
|
96
146
|
- TODO
|
97
147
|
- dm-is-reflective.gemspec
|
148
|
+
- test/setup_db.sh
|
98
149
|
files:
|
99
|
-
- .gita/COMMIT_EDITMSG
|
100
|
-
- .gita/HEAD
|
101
|
-
- .gita/ORIG_HEAD
|
102
|
-
- .gita/RENAMED-REF
|
103
|
-
- .gita/config
|
104
|
-
- .gita/description
|
105
|
-
- .gita/gitk.cache
|
106
|
-
- .gita/hooks/applypatch-msg
|
107
|
-
- .gita/hooks/commit-msg
|
108
|
-
- .gita/hooks/post-commit
|
109
|
-
- .gita/hooks/post-receive
|
110
|
-
- .gita/hooks/post-update
|
111
|
-
- .gita/hooks/pre-applypatch
|
112
|
-
- .gita/hooks/pre-commit
|
113
|
-
- .gita/hooks/pre-rebase
|
114
|
-
- .gita/hooks/prepare-commit-msg
|
115
|
-
- .gita/hooks/update
|
116
|
-
- .gita/index
|
117
|
-
- .gita/info/exclude
|
118
|
-
- .gita/info/refs
|
119
|
-
- .gita/logs/HEAD
|
120
|
-
- .gita/logs/refs/heads/dm-mapping
|
121
|
-
- .gita/logs/refs/heads/master
|
122
|
-
- .gita/logs/refs/heads/return-symbol
|
123
|
-
- .gita/logs/refs/remotes/origin/dm-mapping
|
124
|
-
- .gita/logs/refs/remotes/origin/master
|
125
|
-
- .gita/logs/refs/remotes/origin/return-symbol
|
126
|
-
- .gita/objects/5c/91380a1616b7c2d23e14eeb49d9edde58e1f47
|
127
|
-
- .gita/objects/63/71947bcb9c0dd1d3b3d6f449b2d4b4c6c81e63
|
128
|
-
- .gita/objects/73/23ae22118cc54fb0bbb0d6f51cc99191019b96
|
129
|
-
- .gita/objects/81/a0ab6e4dbd148faa0644307b313799027d3344
|
130
|
-
- .gita/objects/b2/9571a21e3bccb60079dfca630dac981f623489
|
131
|
-
- .gita/objects/cb/138acf9efc0f5b3ff91c644cae4dec868442e4
|
132
|
-
- .gita/objects/d5/66699fc7ba5237311cc44648d0cd2abbaa895e
|
133
|
-
- .gita/objects/info/packs
|
134
|
-
- .gita/objects/pack/pack-c9156ef3406b98f5f12875b13643df7a5f41e42c.idx
|
135
|
-
- .gita/objects/pack/pack-c9156ef3406b98f5f12875b13643df7a5f41e42c.pack
|
136
|
-
- .gita/packed-refs
|
137
|
-
- .gita/refs/heads/master
|
138
|
-
- .gita/refs/tags/dm-is-reflective-0.8.0
|
139
150
|
- CHANGES
|
140
151
|
- LICENSE
|
141
152
|
- NOTICE
|
142
153
|
- README
|
154
|
+
- README.rdoc
|
143
155
|
- Rakefile
|
144
156
|
- TODO
|
145
157
|
- dm-is-reflective.gemspec
|
146
158
|
- lib/dm-is-reflective.rb
|
147
|
-
- lib/dm-is-reflective/is/adapters/
|
159
|
+
- lib/dm-is-reflective/is/adapters/data_objects_adapter.rb
|
148
160
|
- lib/dm-is-reflective/is/adapters/mysql_adapter.rb
|
149
161
|
- lib/dm-is-reflective/is/adapters/postgres_adapter.rb
|
150
|
-
- lib/dm-is-reflective/is/adapters/
|
162
|
+
- lib/dm-is-reflective/is/adapters/sqlite_adapter.rb
|
151
163
|
- lib/dm-is-reflective/is/reflective.rb
|
152
164
|
- lib/dm-is-reflective/is/version.rb
|
153
165
|
- lib/dm-is-reflective/version.rb
|
154
|
-
- tasks/ann.rake
|
155
|
-
- tasks/bones.rake
|
156
|
-
- tasks/gem.rake
|
157
|
-
- tasks/git.rake
|
158
|
-
- tasks/notes.rake
|
159
|
-
- tasks/post_load.rake
|
160
|
-
- tasks/rdoc.rake
|
161
|
-
- tasks/rubyforge.rake
|
162
|
-
- tasks/setup.rb
|
163
|
-
- tasks/spec.rake
|
164
|
-
- tasks/svn.rake
|
165
|
-
- tasks/test.rake
|
166
|
-
- tasks/zentest.rake
|
167
166
|
- test/abstract.rb
|
168
|
-
- test/
|
167
|
+
- test/setup_db.sh
|
168
|
+
- test/test_dm-is-reflective.rb
|
169
169
|
has_rdoc: true
|
170
170
|
homepage: http://github.com/godfat/dm-is-reflective
|
171
171
|
licenses: []
|
172
172
|
|
173
173
|
post_install_message:
|
174
174
|
rdoc_options:
|
175
|
-
- --charset=utf-8
|
176
|
-
- --inline-source
|
177
|
-
- --line-numbers
|
178
|
-
- --promiscuous
|
179
175
|
- --main
|
180
176
|
- README
|
181
177
|
require_paths:
|
182
178
|
- lib
|
183
179
|
required_ruby_version: !ruby/object:Gem::Requirement
|
180
|
+
none: false
|
184
181
|
requirements:
|
185
182
|
- - ">="
|
186
183
|
- !ruby/object:Gem::Version
|
184
|
+
hash: 3
|
185
|
+
segments:
|
186
|
+
- 0
|
187
187
|
version: "0"
|
188
|
-
version:
|
189
188
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
189
|
+
none: false
|
190
190
|
requirements:
|
191
191
|
- - ">="
|
192
192
|
- !ruby/object:Gem::Version
|
193
|
+
hash: 3
|
194
|
+
segments:
|
195
|
+
- 0
|
193
196
|
version: "0"
|
194
|
-
version:
|
195
197
|
requirements: []
|
196
198
|
|
197
|
-
rubyforge_project:
|
198
|
-
rubygems_version: 1.3.
|
199
|
+
rubyforge_project: dm-is-reflective
|
200
|
+
rubygems_version: 1.3.7
|
199
201
|
signing_key:
|
200
202
|
specification_version: 3
|
201
|
-
summary: DataMapper plugin that helps you manipulate an existing database
|
203
|
+
summary: DataMapper plugin that helps you manipulate an existing database
|
202
204
|
test_files:
|
203
|
-
- test/test_dm-is-
|
205
|
+
- test/test_dm-is-reflective.rb
|