dm-sqlite-adapter 1.0.2 → 1.1.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
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