dm-is-list 1.1.0 → 1.2.0.rc1
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/Gemfile +8 -8
- data/Rakefile +1 -1
- data/VERSION +1 -1
- data/dm-is-list.gemspec +22 -26
- data/lib/dm-is-list/is/list.rb +5 -6
- data/spec/integration/list_spec.rb +3 -2
- metadata +65 -31
data/Gemfile
CHANGED
@@ -5,26 +5,26 @@ source 'http://rubygems.org'
|
|
5
5
|
SOURCE = ENV.fetch('SOURCE', :git).to_sym
|
6
6
|
REPO_POSTFIX = SOURCE == :path ? '' : '.git'
|
7
7
|
DATAMAPPER = SOURCE == :path ? Pathname(__FILE__).dirname.parent : 'http://github.com/datamapper'
|
8
|
-
DM_VERSION = '~> 1.
|
9
|
-
DO_VERSION = '~> 0.10.
|
8
|
+
DM_VERSION = '~> 1.2.0.rc1'
|
9
|
+
DO_VERSION = '~> 0.10.6'
|
10
10
|
DM_DO_ADAPTERS = %w[ sqlite postgres mysql oracle sqlserver ]
|
11
11
|
|
12
12
|
gem 'dm-adjust', DM_VERSION, SOURCE => "#{DATAMAPPER}/dm-adjust#{REPO_POSTFIX}"
|
13
13
|
|
14
14
|
group :development do
|
15
15
|
|
16
|
-
gem 'jeweler', '~> 1.
|
17
|
-
gem 'rake', '~> 0.
|
18
|
-
gem 'rspec', '~> 1.3.
|
16
|
+
gem 'jeweler', '~> 1.6.4'
|
17
|
+
gem 'rake', '~> 0.9.2'
|
18
|
+
gem 'rspec', '~> 1.3.2'
|
19
19
|
|
20
20
|
end
|
21
21
|
|
22
22
|
platforms :mri_18 do
|
23
23
|
group :quality do
|
24
24
|
|
25
|
-
gem 'rcov', '~> 0.9.
|
26
|
-
gem 'yard', '~> 0.
|
27
|
-
gem 'yardstick', '~> 0.
|
25
|
+
gem 'rcov', '~> 0.9.10'
|
26
|
+
gem 'yard', '~> 0.7.2'
|
27
|
+
gem 'yardstick', '~> 0.4'
|
28
28
|
|
29
29
|
end
|
30
30
|
end
|
data/Rakefile
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.2.0.rc1
|
data/dm-is-list.gemspec
CHANGED
@@ -4,14 +4,14 @@
|
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
|
-
s.name =
|
8
|
-
s.version = "1.
|
7
|
+
s.name = "dm-is-list"
|
8
|
+
s.version = "1.2.0.rc1"
|
9
9
|
|
10
|
-
s.required_rubygems_version = Gem::Requirement.new("
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Sindre Aarsaether"]
|
12
|
-
s.date =
|
13
|
-
s.description =
|
14
|
-
s.email =
|
12
|
+
s.date = "2011-09-09"
|
13
|
+
s.description = "DataMapper plugin for creating and organizing lists"
|
14
|
+
s.email = "sindre [a] identu [d] no"
|
15
15
|
s.extra_rdoc_files = [
|
16
16
|
"LICENSE",
|
17
17
|
"README.rdoc"
|
@@ -33,35 +33,31 @@ Gem::Specification.new do |s|
|
|
33
33
|
"tasks/yard.rake",
|
34
34
|
"tasks/yardstick.rake"
|
35
35
|
]
|
36
|
-
s.homepage =
|
36
|
+
s.homepage = "http://github.com/datamapper/dm-is-list"
|
37
37
|
s.require_paths = ["lib"]
|
38
|
-
s.rubyforge_project =
|
39
|
-
s.rubygems_version =
|
40
|
-
s.summary =
|
41
|
-
s.test_files = [
|
42
|
-
"spec/integration/list_spec.rb",
|
43
|
-
"spec/spec_helper.rb"
|
44
|
-
]
|
38
|
+
s.rubyforge_project = "datamapper"
|
39
|
+
s.rubygems_version = "1.8.10"
|
40
|
+
s.summary = "DataMapper plugin for creating and organizing lists"
|
45
41
|
|
46
42
|
if s.respond_to? :specification_version then
|
47
43
|
s.specification_version = 3
|
48
44
|
|
49
45
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
50
|
-
s.add_runtime_dependency(%q<dm-adjust>, ["~> 1.
|
51
|
-
s.add_development_dependency(%q<jeweler>, ["~> 1.
|
52
|
-
s.add_development_dependency(%q<rake>, ["~> 0.
|
53
|
-
s.add_development_dependency(%q<rspec>, ["~> 1.3.
|
46
|
+
s.add_runtime_dependency(%q<dm-adjust>, ["~> 1.2.0.rc1"])
|
47
|
+
s.add_development_dependency(%q<jeweler>, ["~> 1.6.4"])
|
48
|
+
s.add_development_dependency(%q<rake>, ["~> 0.9.2"])
|
49
|
+
s.add_development_dependency(%q<rspec>, ["~> 1.3.2"])
|
54
50
|
else
|
55
|
-
s.add_dependency(%q<dm-adjust>, ["~> 1.
|
56
|
-
s.add_dependency(%q<jeweler>, ["~> 1.
|
57
|
-
s.add_dependency(%q<rake>, ["~> 0.
|
58
|
-
s.add_dependency(%q<rspec>, ["~> 1.3.
|
51
|
+
s.add_dependency(%q<dm-adjust>, ["~> 1.2.0.rc1"])
|
52
|
+
s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
|
53
|
+
s.add_dependency(%q<rake>, ["~> 0.9.2"])
|
54
|
+
s.add_dependency(%q<rspec>, ["~> 1.3.2"])
|
59
55
|
end
|
60
56
|
else
|
61
|
-
s.add_dependency(%q<dm-adjust>, ["~> 1.
|
62
|
-
s.add_dependency(%q<jeweler>, ["~> 1.
|
63
|
-
s.add_dependency(%q<rake>, ["~> 0.
|
64
|
-
s.add_dependency(%q<rspec>, ["~> 1.3.
|
57
|
+
s.add_dependency(%q<dm-adjust>, ["~> 1.2.0.rc1"])
|
58
|
+
s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
|
59
|
+
s.add_dependency(%q<rake>, ["~> 0.9.2"])
|
60
|
+
s.add_dependency(%q<rspec>, ["~> 1.3.2"])
|
65
61
|
end
|
66
62
|
end
|
67
63
|
|
data/lib/dm-is-list/is/list.rb
CHANGED
@@ -340,8 +340,7 @@ module DataMapper
|
|
340
340
|
#
|
341
341
|
# @api semipublic
|
342
342
|
def list_scope
|
343
|
-
|
344
|
-
DataMapper::Ext::Array.to_hash(pairs)
|
343
|
+
Hash[ model.list_options[:scope].map { |p| [ p, attribute_get(p) ] } ]
|
345
344
|
end
|
346
345
|
|
347
346
|
##
|
@@ -356,10 +355,10 @@ module DataMapper
|
|
356
355
|
#
|
357
356
|
# @api semipublic
|
358
357
|
def original_list_scope
|
359
|
-
pairs = model.list_options[:scope].map
|
360
|
-
|
361
|
-
|
362
|
-
|
358
|
+
pairs = model.list_options[:scope].map do |p|
|
359
|
+
[ p, (property = properties[p]) && original_attributes.key?(property) ? original_attributes[property] : attribute_get(p) ]
|
360
|
+
end
|
361
|
+
Hash[ pairs ]
|
363
362
|
end
|
364
363
|
|
365
364
|
##
|
@@ -2,10 +2,11 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe 'DataMapper::Is::List' do
|
4
4
|
|
5
|
-
supported_by :sqlite, :postgres, :mysql, :oracle, :sqlserver do
|
5
|
+
supported_by :in_memory, :yaml, :sqlite, :postgres, :mysql, :oracle, :sqlserver do
|
6
6
|
|
7
|
-
before
|
7
|
+
before do
|
8
8
|
DataMapper.auto_migrate!
|
9
|
+
DataMapper::Model.descendants.each { |model| model.destroy! }
|
9
10
|
|
10
11
|
@u1 = User.create(:name => 'Johnny')
|
11
12
|
Todo.create(:user => @u1, :title => 'Write down what is needed in a list-plugin')
|
metadata
CHANGED
@@ -1,8 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dm-is-list
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
|
4
|
+
hash: 15424023
|
5
|
+
prerelease: 6
|
6
|
+
segments:
|
7
|
+
- 1
|
8
|
+
- 2
|
9
|
+
- 0
|
10
|
+
- rc
|
11
|
+
- 1
|
12
|
+
version: 1.2.0.rc1
|
6
13
|
platform: ruby
|
7
14
|
authors:
|
8
15
|
- Sindre Aarsaether
|
@@ -10,53 +17,74 @@ autorequire:
|
|
10
17
|
bindir: bin
|
11
18
|
cert_chain: []
|
12
19
|
|
13
|
-
date: 2011-
|
14
|
-
default_executable:
|
20
|
+
date: 2011-09-09 00:00:00 Z
|
15
21
|
dependencies:
|
16
22
|
- !ruby/object:Gem::Dependency
|
17
|
-
|
18
|
-
|
23
|
+
type: :runtime
|
24
|
+
version_requirements: &id001 !ruby/object:Gem::Requirement
|
19
25
|
none: false
|
20
26
|
requirements:
|
21
27
|
- - ~>
|
22
28
|
- !ruby/object:Gem::Version
|
23
|
-
|
24
|
-
|
29
|
+
hash: 15424023
|
30
|
+
segments:
|
31
|
+
- 1
|
32
|
+
- 2
|
33
|
+
- 0
|
34
|
+
- rc
|
35
|
+
- 1
|
36
|
+
version: 1.2.0.rc1
|
25
37
|
prerelease: false
|
26
|
-
|
38
|
+
requirement: *id001
|
39
|
+
name: dm-adjust
|
27
40
|
- !ruby/object:Gem::Dependency
|
28
|
-
|
29
|
-
|
41
|
+
type: :development
|
42
|
+
version_requirements: &id002 !ruby/object:Gem::Requirement
|
30
43
|
none: false
|
31
44
|
requirements:
|
32
45
|
- - ~>
|
33
46
|
- !ruby/object:Gem::Version
|
34
|
-
|
35
|
-
|
47
|
+
hash: 7
|
48
|
+
segments:
|
49
|
+
- 1
|
50
|
+
- 6
|
51
|
+
- 4
|
52
|
+
version: 1.6.4
|
36
53
|
prerelease: false
|
37
|
-
|
54
|
+
requirement: *id002
|
55
|
+
name: jeweler
|
38
56
|
- !ruby/object:Gem::Dependency
|
39
|
-
|
40
|
-
|
57
|
+
type: :development
|
58
|
+
version_requirements: &id003 !ruby/object:Gem::Requirement
|
41
59
|
none: false
|
42
60
|
requirements:
|
43
61
|
- - ~>
|
44
62
|
- !ruby/object:Gem::Version
|
45
|
-
|
46
|
-
|
63
|
+
hash: 63
|
64
|
+
segments:
|
65
|
+
- 0
|
66
|
+
- 9
|
67
|
+
- 2
|
68
|
+
version: 0.9.2
|
47
69
|
prerelease: false
|
48
|
-
|
70
|
+
requirement: *id003
|
71
|
+
name: rake
|
49
72
|
- !ruby/object:Gem::Dependency
|
50
|
-
|
51
|
-
|
73
|
+
type: :development
|
74
|
+
version_requirements: &id004 !ruby/object:Gem::Requirement
|
52
75
|
none: false
|
53
76
|
requirements:
|
54
77
|
- - ~>
|
55
78
|
- !ruby/object:Gem::Version
|
56
|
-
|
57
|
-
|
79
|
+
hash: 31
|
80
|
+
segments:
|
81
|
+
- 1
|
82
|
+
- 3
|
83
|
+
- 2
|
84
|
+
version: 1.3.2
|
58
85
|
prerelease: false
|
59
|
-
|
86
|
+
requirement: *id004
|
87
|
+
name: rspec
|
60
88
|
description: DataMapper plugin for creating and organizing lists
|
61
89
|
email: sindre [a] identu [d] no
|
62
90
|
executables: []
|
@@ -82,7 +110,6 @@ files:
|
|
82
110
|
- tasks/spec.rake
|
83
111
|
- tasks/yard.rake
|
84
112
|
- tasks/yardstick.rake
|
85
|
-
has_rdoc: true
|
86
113
|
homepage: http://github.com/datamapper/dm-is-list
|
87
114
|
licenses: []
|
88
115
|
|
@@ -96,20 +123,27 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
96
123
|
requirements:
|
97
124
|
- - ">="
|
98
125
|
- !ruby/object:Gem::Version
|
126
|
+
hash: 3
|
127
|
+
segments:
|
128
|
+
- 0
|
99
129
|
version: "0"
|
100
130
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
101
131
|
none: false
|
102
132
|
requirements:
|
103
|
-
- - "
|
133
|
+
- - ">"
|
104
134
|
- !ruby/object:Gem::Version
|
105
|
-
|
135
|
+
hash: 25
|
136
|
+
segments:
|
137
|
+
- 1
|
138
|
+
- 3
|
139
|
+
- 1
|
140
|
+
version: 1.3.1
|
106
141
|
requirements: []
|
107
142
|
|
108
143
|
rubyforge_project: datamapper
|
109
|
-
rubygems_version: 1.
|
144
|
+
rubygems_version: 1.8.10
|
110
145
|
signing_key:
|
111
146
|
specification_version: 3
|
112
147
|
summary: DataMapper plugin for creating and organizing lists
|
113
|
-
test_files:
|
114
|
-
|
115
|
-
- spec/spec_helper.rb
|
148
|
+
test_files: []
|
149
|
+
|