dm-sqlite-adapter 1.0.2 → 1.1.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 CHANGED
@@ -1,90 +1,57 @@
1
- # If you're working on more than one datamapper gem at a time, then it's
2
- # recommended to create a local Gemfile and use this instead of the git
3
- # sources. This will make sure that you are developing against your
4
- # other local datamapper sources that you currently work on. Gemfile.local
5
- # will behave identically to the standard Gemfile apart from the fact that
6
- # it fetches the gems from local paths. This means that you can use the
7
- # same environment variables, like ADAPTER when running bundle commands.
8
- # Gemfile.local is added to .gitignore, so you don't need to worry about
9
- # accidentally checking local development paths into git.
10
- #
11
- # bundle exec rake local_gemfile
12
- #
13
- # will give you a Gemfile.local file that points to your local clones of
14
- # the various datamapper gems. It's assumed that all datamapper repo clones
15
- # reside in the same directory. You can use the Gemfile.local like so for
16
- # running any bundle command:
17
- #
18
- # BUNDLE_GEMFILE=Gemfile.local bundle foo
19
- #
20
- # To speed up running bundle tasks, it's recommended to run
21
- #
22
- # bundle lock
23
- #
24
- # after running 'bundle install' for the first time. This will make 'bundle exec' run
25
- # a lot faster compared to the unlocked version. With an unlocked bundle you would
26
- # typically just run 'bundle install' from time to time to fetch the latest sources from
27
- # upstream. When you locked your bundle, you need to run
28
- #
29
- # bundle install --relock
30
- #
31
- # to make sure to fetch the latest updates and then lock the bundle again. Gemfile.lock
32
- # is added to the .gitignore file, so you don't need to worry about accidentally checking
33
- # it into version control.
1
+ require 'pathname'
34
2
 
35
3
  source 'http://rubygems.org'
36
4
 
37
- DATAMAPPER = 'git://github.com/datamapper'
38
- DM_VERSION = '~> 1.0.2'
39
- DO_VERSION = '~> 0.10.2'
5
+ SOURCE = ENV.fetch('SOURCE', :git).to_sym
6
+ REPO_POSTFIX = SOURCE == :path ? '' : '.git'
7
+ DATAMAPPER = SOURCE == :path ? Pathname(__FILE__).dirname.parent : 'http://github.com/datamapper'
8
+ DM_VERSION = '~> 1.1.0.rc1'
9
+ DO_VERSION = '~> 0.10.2'
40
10
 
41
- group :runtime do # Runtime dependencies (as in the gemspec)
11
+ do_options = {}
12
+ do_options[:git] = "#{DATAMAPPER}/do#{REPO_POSTFIX}" if ENV['DO_GIT'] == 'true'
42
13
 
43
- gem 'do_sqlite3', DO_VERSION, do_options.dup
44
- gem 'dm-do-adapter', DM_VERSION, :git => "#{DATAMAPPER}/dm-do-adapter.git"
14
+ group :runtime do
15
+
16
+ gem 'do_sqlite3', DO_VERSION, do_options.dup
17
+ gem 'dm-do-adapter', DM_VERSION, SOURCE => "#{DATAMAPPER}/dm-do-adapter#{REPO_POSTFIX}"
45
18
 
46
19
  end
47
20
 
48
- group(:development) do # Development dependencies (as in the gemspec)
21
+ group :development do
22
+
23
+ gem 'dm-migrations', DM_VERSION, SOURCE => "#{DATAMAPPER}/dm-migrations#{REPO_POSTFIX}"
24
+ gem 'jeweler', '~> 1.5.2'
25
+ gem 'rake', '~> 0.8.7'
26
+ gem 'rspec', '~> 1.3.1'
49
27
 
50
- gem 'dm-migrations', DM_VERSION, :git => "#{DATAMAPPER}/dm-migrations.git"
28
+ end
51
29
 
52
- gem 'rake', '~> 0.8.7'
53
- gem 'rspec', '~> 1.3', :git => 'git://github.com/snusnu/rspec', :branch => 'heckle_fix_plus_gemfile'
54
- gem 'jeweler', '~> 1.4'
30
+ group :quality do
31
+
32
+ gem 'rcov', '~> 0.9.9', :platforms => :mri_18
33
+ gem 'yard', '~> 0.6'
34
+ gem 'yardstick', '~> 0.2'
55
35
 
56
36
  end
57
37
 
58
- group :datamapper do # We need this because we want to pin these dependencies to their git master sources
38
+ group :datamapper do
59
39
 
60
40
  if ENV['EXTLIB']
61
- gem 'extlib', '~> 0.9.15', :git => "#{DATAMAPPER}/extlib.git", :require => nil
41
+ gem 'extlib', '~> 0.9.15', SOURCE => "#{DATAMAPPER}/extlib#{REPO_POSTFIX}", :require => nil
62
42
  else
63
- gem 'activesupport', '~> 3.0.0', :git => 'git://github.com/rails/rails.git', :branch => '3-0-stable', :require => nil
43
+ gem 'activesupport', '~> 3.0.4', :require => nil
44
+ gem 'i18n', '~> 0.5.0'
64
45
  end
65
46
 
66
- do_options = {}
67
- do_options[:git] = "#{DATAMAPPER}/do.git" if ENV['DO_GIT'] == 'true'
68
-
69
- gem 'dm-core', DM_VERSION, :git => "#{DATAMAPPER}/dm-core.git"
47
+ gem 'dm-core', DM_VERSION, SOURCE => "#{DATAMAPPER}/dm-core#{REPO_POSTFIX}"
70
48
  gem 'data_objects', DO_VERSION, do_options.dup
71
49
 
72
50
  plugins = ENV['PLUGINS'] || ENV['PLUGIN']
73
51
  plugins = plugins.to_s.tr(',', ' ').split.push('dm-migrations').uniq
74
52
 
75
53
  plugins.each do |plugin|
76
- gem plugin, DM_VERSION, :git => "#{DATAMAPPER}/#{plugin}.git"
54
+ gem plugin, DM_VERSION, SOURCE => "#{DATAMAPPER}/#{plugin}#{REPO_POSTFIX}"
77
55
  end
78
56
 
79
57
  end
80
-
81
- group :quality do # These gems contain rake tasks that check the quality of the source code
82
-
83
- gem 'metric_fu', '~> 1.3'
84
- gem 'rcov', '~> 0.9.7'
85
- gem 'reek', '~> 1.2.7'
86
- gem 'roodi', '~> 2.1'
87
- gem 'yard', '~> 0.5'
88
- gem 'yardstick', '~> 0.1'
89
-
90
- end
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2010 Dan Kubb
1
+ Copyright (c) 2011 Dan Kubb
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
data/Rakefile CHANGED
@@ -2,7 +2,7 @@ require 'rubygems'
2
2
  require 'rake'
3
3
 
4
4
  begin
5
- gem 'jeweler', '~> 1.4'
5
+ gem 'jeweler', '~> 1.5.2'
6
6
  require 'jeweler'
7
7
 
8
8
  Jeweler::Tasks.new do |gem|
@@ -15,16 +15,11 @@ begin
15
15
  gem.has_rdoc = 'yard'
16
16
 
17
17
  gem.rubyforge_project = 'datamapper'
18
-
19
- gem.add_dependency 'do_sqlite3', '~> 0.10.2'
20
- gem.add_dependency 'dm-do-adapter', '~> 1.0.2'
21
-
22
- gem.add_development_dependency 'rspec', '~> 1.3'
23
18
  end
24
19
 
25
20
  Jeweler::GemcutterTasks.new
26
21
 
27
22
  FileList['tasks/**/*.rake'].each { |task| import task }
28
23
  rescue LoadError
29
- puts 'Jeweler (or a dependency) not available. Install it with: gem install jeweler'
24
+ puts 'Jeweler (or a dependency) not available. Install it with: gem install jeweler -v 1.5.2'
30
25
  end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.2
1
+ 1.1.0.rc1
@@ -1,68 +1,72 @@
1
1
  # Generated by jeweler
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{dm-sqlite-adapter}
8
- s.version = "1.0.2"
8
+ s.version = "1.1.0.rc1"
9
9
 
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
10
+ s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Dan Kubb"]
12
- s.date = %q{2010-09-07}
12
+ s.date = %q{2011-02-28}
13
13
  s.description = %q{Sqlite3 Adapter for DataMapper}
14
14
  s.email = %q{dan.kubb@gmail.com}
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE"
17
17
  ]
18
18
  s.files = [
19
- ".gitignore",
20
- "Gemfile",
21
- "LICENSE",
22
- "Rakefile",
23
- "VERSION",
24
- "dm-sqlite-adapter.gemspec",
25
- "lib/dm-sqlite-adapter.rb",
26
- "lib/dm-sqlite-adapter/adapter.rb",
27
- "lib/dm-sqlite-adapter/spec/setup.rb",
28
- "spec/adapter_spec.rb",
29
- "spec/rcov.opts",
30
- "spec/spec.opts",
31
- "spec/spec_helper.rb",
32
- "tasks/local_gemfile.rake",
33
- "tasks/spec.rake",
34
- "tasks/yard.rake",
35
- "tasks/yardstick.rake"
19
+ "Gemfile",
20
+ "LICENSE",
21
+ "Rakefile",
22
+ "VERSION",
23
+ "dm-sqlite-adapter.gemspec",
24
+ "lib/dm-sqlite-adapter.rb",
25
+ "lib/dm-sqlite-adapter/adapter.rb",
26
+ "lib/dm-sqlite-adapter/spec/setup.rb",
27
+ "spec/adapter_spec.rb",
28
+ "spec/rcov.opts",
29
+ "spec/spec.opts",
30
+ "spec/spec_helper.rb",
31
+ "tasks/spec.rake",
32
+ "tasks/yard.rake",
33
+ "tasks/yardstick.rake"
36
34
  ]
37
- s.has_rdoc = %q{yard}
38
35
  s.homepage = %q{http://github.com/datamapper/dm-sqlite-adapter}
39
- s.rdoc_options = ["--charset=UTF-8"]
40
36
  s.require_paths = ["lib"]
41
37
  s.rubyforge_project = %q{datamapper}
42
- s.rubygems_version = %q{1.3.7}
38
+ s.rubygems_version = %q{1.5.2}
43
39
  s.summary = %q{Sqlite3 Adapter for DataMapper}
44
40
  s.test_files = [
45
41
  "spec/adapter_spec.rb",
46
- "spec/spec_helper.rb"
42
+ "spec/spec_helper.rb"
47
43
  ]
48
44
 
49
45
  if s.respond_to? :specification_version then
50
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
51
46
  s.specification_version = 3
52
47
 
53
48
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
54
49
  s.add_runtime_dependency(%q<do_sqlite3>, ["~> 0.10.2"])
55
- s.add_runtime_dependency(%q<dm-do-adapter>, ["~> 1.0.2"])
56
- s.add_development_dependency(%q<rspec>, ["~> 1.3"])
50
+ s.add_runtime_dependency(%q<dm-do-adapter>, ["~> 1.1.0.rc1"])
51
+ s.add_development_dependency(%q<dm-migrations>, ["~> 1.1.0.rc1"])
52
+ s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
53
+ s.add_development_dependency(%q<rake>, ["~> 0.8.7"])
54
+ s.add_development_dependency(%q<rspec>, ["~> 1.3.1"])
57
55
  else
58
56
  s.add_dependency(%q<do_sqlite3>, ["~> 0.10.2"])
59
- s.add_dependency(%q<dm-do-adapter>, ["~> 1.0.2"])
60
- s.add_dependency(%q<rspec>, ["~> 1.3"])
57
+ s.add_dependency(%q<dm-do-adapter>, ["~> 1.1.0.rc1"])
58
+ s.add_dependency(%q<dm-migrations>, ["~> 1.1.0.rc1"])
59
+ s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
60
+ s.add_dependency(%q<rake>, ["~> 0.8.7"])
61
+ s.add_dependency(%q<rspec>, ["~> 1.3.1"])
61
62
  end
62
63
  else
63
64
  s.add_dependency(%q<do_sqlite3>, ["~> 0.10.2"])
64
- s.add_dependency(%q<dm-do-adapter>, ["~> 1.0.2"])
65
- s.add_dependency(%q<rspec>, ["~> 1.3"])
65
+ s.add_dependency(%q<dm-do-adapter>, ["~> 1.1.0.rc1"])
66
+ s.add_dependency(%q<dm-migrations>, ["~> 1.1.0.rc1"])
67
+ s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
68
+ s.add_dependency(%q<rake>, ["~> 0.8.7"])
69
+ s.add_dependency(%q<rspec>, ["~> 1.3.1"])
66
70
  end
67
71
  end
68
72
 
@@ -19,10 +19,19 @@ module DataMapper
19
19
  def normalize_options(options)
20
20
  # TODO Once do_sqlite3 accepts both a Pathname or a String,
21
21
  # normalizing database and path won't be necessary anymore
22
- db = (options[:database] || options.delete('database')).to_s
23
- path = (options[:path ] || options.delete('path')).to_s
24
-
25
- options.update(:adapter => 'sqlite3', :database => db, :path => path)
22
+ # Clean out all the 'path-like' parameters in the options hash
23
+ # ensuring there can only be one.
24
+ # Also make sure a blank value can't possibly mask a non-blank one
25
+ path = nil
26
+ [:path, 'path', :database, 'database'].each do |key|
27
+ db = options.delete(key)
28
+ unless db.nil?
29
+ normalized_db = db.to_s # no Symbol#empty? on 1.8.7(ish) rubies
30
+ path ||= normalized_db unless normalized_db.empty?
31
+ end
32
+ end
33
+
34
+ options.update(:adapter => 'sqlite3', :path => path)
26
35
  end
27
36
 
28
37
  end
data/spec/adapter_spec.rb CHANGED
@@ -31,7 +31,7 @@ describe 'DataMapper::Adapters::SqliteAdapter' do
31
31
 
32
32
  describe "with 'database' given as Symbol" do
33
33
  subject { DataMapper::Adapters::SqliteAdapter.new(:default, { :adapter => 'sqlite', :database => :name }) }
34
- it { subject.options[:database].should == 'name' }
34
+ it { subject.options[:path].should == 'name' }
35
35
  end
36
36
 
37
37
  describe "with 'path' given as Symbol" do
@@ -39,4 +39,19 @@ describe 'DataMapper::Adapters::SqliteAdapter' do
39
39
  it { subject.options[:path].should == 'name' }
40
40
  end
41
41
 
42
+ describe "with 'database' given as String" do
43
+ subject { DataMapper::Adapters::SqliteAdapter.new(:default, { :adapter => 'sqlite', 'database' => :name }) }
44
+ it { subject.options[:path].should == 'name' }
45
+ end
46
+
47
+ describe "with 'path' given as String" do
48
+ subject { DataMapper::Adapters::SqliteAdapter.new(:default, { :adapter => 'sqlite', 'path' => :name }) }
49
+ it { subject.options[:path].should == 'name' }
50
+ end
51
+
52
+ describe "with blank 'path' and 'database' given as Symbol" do
53
+ subject { DataMapper::Adapters::SqliteAdapter.new(:default, { :adapter => 'sqlite', 'path' => '', :database => :name }) }
54
+ it { subject.options[:path].should == 'name' }
55
+ end
56
+
42
57
  end
data/tasks/spec.rake CHANGED
@@ -35,7 +35,4 @@ rescue LoadError
35
35
  end
36
36
  end
37
37
 
38
- task :spec => :check_dependencies
39
- task :rcov => :check_dependencies
40
-
41
38
  task :default => :spec
metadata CHANGED
@@ -1,12 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dm-sqlite-adapter
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 1
7
- - 0
8
- - 2
9
- version: 1.0.2
4
+ prerelease: 6
5
+ version: 1.1.0.rc1
10
6
  platform: ruby
11
7
  authors:
12
8
  - Dan Kubb
@@ -14,53 +10,75 @@ autorequire:
14
10
  bindir: bin
15
11
  cert_chain: []
16
12
 
17
- date: 2010-09-07 00:00:00 -07:00
13
+ date: 2011-02-28 00:00:00 -08:00
18
14
  default_executable:
19
15
  dependencies:
20
16
  - !ruby/object:Gem::Dependency
21
17
  name: do_sqlite3
22
- prerelease: false
23
18
  requirement: &id001 !ruby/object:Gem::Requirement
24
19
  none: false
25
20
  requirements:
26
21
  - - ~>
27
22
  - !ruby/object:Gem::Version
28
- segments:
29
- - 0
30
- - 10
31
- - 2
32
23
  version: 0.10.2
33
24
  type: :runtime
25
+ prerelease: false
34
26
  version_requirements: *id001
35
27
  - !ruby/object:Gem::Dependency
36
28
  name: dm-do-adapter
37
- prerelease: false
38
29
  requirement: &id002 !ruby/object:Gem::Requirement
39
30
  none: false
40
31
  requirements:
41
32
  - - ~>
42
33
  - !ruby/object:Gem::Version
43
- segments:
44
- - 1
45
- - 0
46
- - 2
47
- version: 1.0.2
34
+ version: 1.1.0.rc1
48
35
  type: :runtime
36
+ prerelease: false
49
37
  version_requirements: *id002
50
38
  - !ruby/object:Gem::Dependency
51
- name: rspec
52
- prerelease: false
39
+ name: dm-migrations
53
40
  requirement: &id003 !ruby/object:Gem::Requirement
54
41
  none: false
55
42
  requirements:
56
43
  - - ~>
57
44
  - !ruby/object:Gem::Version
58
- segments:
59
- - 1
60
- - 3
61
- version: "1.3"
45
+ version: 1.1.0.rc1
62
46
  type: :development
47
+ prerelease: false
63
48
  version_requirements: *id003
49
+ - !ruby/object:Gem::Dependency
50
+ name: jeweler
51
+ requirement: &id004 !ruby/object:Gem::Requirement
52
+ none: false
53
+ requirements:
54
+ - - ~>
55
+ - !ruby/object:Gem::Version
56
+ version: 1.5.2
57
+ type: :development
58
+ prerelease: false
59
+ version_requirements: *id004
60
+ - !ruby/object:Gem::Dependency
61
+ name: rake
62
+ requirement: &id005 !ruby/object:Gem::Requirement
63
+ none: false
64
+ requirements:
65
+ - - ~>
66
+ - !ruby/object:Gem::Version
67
+ version: 0.8.7
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: *id005
71
+ - !ruby/object:Gem::Dependency
72
+ name: rspec
73
+ requirement: &id006 !ruby/object:Gem::Requirement
74
+ none: false
75
+ requirements:
76
+ - - ~>
77
+ - !ruby/object:Gem::Version
78
+ version: 1.3.1
79
+ type: :development
80
+ prerelease: false
81
+ version_requirements: *id006
64
82
  description: Sqlite3 Adapter for DataMapper
65
83
  email: dan.kubb@gmail.com
66
84
  executables: []
@@ -70,7 +88,6 @@ extensions: []
70
88
  extra_rdoc_files:
71
89
  - LICENSE
72
90
  files:
73
- - .gitignore
74
91
  - Gemfile
75
92
  - LICENSE
76
93
  - Rakefile
@@ -83,17 +100,16 @@ files:
83
100
  - spec/rcov.opts
84
101
  - spec/spec.opts
85
102
  - spec/spec_helper.rb
86
- - tasks/local_gemfile.rake
87
103
  - tasks/spec.rake
88
104
  - tasks/yard.rake
89
105
  - tasks/yardstick.rake
90
- has_rdoc: yard
106
+ has_rdoc: true
91
107
  homepage: http://github.com/datamapper/dm-sqlite-adapter
92
108
  licenses: []
93
109
 
94
110
  post_install_message:
95
- rdoc_options:
96
- - --charset=UTF-8
111
+ rdoc_options: []
112
+
97
113
  require_paths:
98
114
  - lib
99
115
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -101,21 +117,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
101
117
  requirements:
102
118
  - - ">="
103
119
  - !ruby/object:Gem::Version
104
- segments:
105
- - 0
106
120
  version: "0"
107
121
  required_rubygems_version: !ruby/object:Gem::Requirement
108
122
  none: false
109
123
  requirements:
110
- - - ">="
124
+ - - ">"
111
125
  - !ruby/object:Gem::Version
112
- segments:
113
- - 0
114
- version: "0"
126
+ version: 1.3.1
115
127
  requirements: []
116
128
 
117
129
  rubyforge_project: datamapper
118
- rubygems_version: 1.3.7
130
+ rubygems_version: 1.5.2
119
131
  signing_key:
120
132
  specification_version: 3
121
133
  summary: Sqlite3 Adapter for DataMapper
data/.gitignore DELETED
@@ -1,37 +0,0 @@
1
- ## MAC OS
2
- .DS_Store
3
-
4
- ## TEXTMATE
5
- *.tmproj
6
- tmtags
7
-
8
- ## EMACS
9
- *~
10
- \#*
11
- .\#*
12
-
13
- ## VIM
14
- *.swp
15
-
16
- ## Rubinius
17
- *.rbc
18
-
19
- ## PROJECT::GENERAL
20
- *.gem
21
- coverage
22
- rdoc
23
- pkg
24
- tmp
25
- doc
26
- log
27
- .yardoc
28
- measurements
29
-
30
- ## BUNDLER
31
- .bundle
32
- Gemfile.local
33
- Gemfile.lock
34
- Gemfile.local.lock
35
-
36
- ## PROJECT::SPECIFIC
37
- spec/db/
@@ -1,16 +0,0 @@
1
- desc "Support bundling from local source code (allows BUNDLE_GEMFILE=Gemfile.local bundle foo)"
2
- task :local_gemfile do |t|
3
-
4
- root = Pathname(__FILE__).dirname.parent
5
- datamapper = root.parent
6
-
7
- root.join('Gemfile.local').open('w') do |f|
8
- root.join('Gemfile').open.each do |line|
9
- line.sub!(/DATAMAPPER = 'git:\/\/github.com\/datamapper'/, "DATAMAPPER = '#{datamapper}'")
10
- line.sub!(/:git => \"#\{DATAMAPPER\}\/(.+?)(?:\.git)?\"/, ':path => "#{DATAMAPPER}/\1"')
11
- line.sub!(/do_options\[:git\] = \"#\{DATAMAPPER\}\/(.+?)(?:\.git)?\"/, 'do_options[:path] = "#{DATAMAPPER}/\1"')
12
- f.puts line
13
- end
14
- end
15
-
16
- end