amalgalite 0.11.0-x86-mingw32 → 0.12.0-x86-mingw32

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/gemspec.rb CHANGED
@@ -26,6 +26,8 @@ Amalgalite::GEM_SPEC = Gem::Specification.new do |spec|
26
26
  spec.add_development_dependency("configuration", "~> 0.0.5")
27
27
  spec.add_development_dependency("rspec", "~> 1.2.2")
28
28
  spec.add_development_dependency("rake-compiler", "~> 0.5.0")
29
+ spec.add_development_dependency('archive-tar-minitar', "~> 0.5.2")
30
+ spec.add_development_dependency('rcov', "~> 0.8.1.2.0")
29
31
 
30
32
  if ext_conf = Configuration.for_if_exist?("extension") then
31
33
  spec.extensions << ext_conf.configs
Binary file
Binary file
@@ -491,6 +491,10 @@ module Amalgalite
491
491
  #
492
492
  def schema( dbname = "main" )
493
493
  @schema ||= ::Amalgalite::Schema.new( self, dbname )
494
+ if @schema and @schema.dirty?
495
+ reload_schema!( dbname )
496
+ end
497
+ return @schema
494
498
  end
495
499
 
496
500
  ##
@@ -17,6 +17,7 @@ module Amalgalite
17
17
 
18
18
  attr_reader :catalog
19
19
  attr_reader :schema
20
+ attr_reader :schema_version
20
21
  attr_writer :dirty
21
22
  attr_reader :db
22
23
 
@@ -27,21 +28,27 @@ module Amalgalite
27
28
  @db = db
28
29
  @catalog = catalog
29
30
  @schema = schema
31
+ @schema_version = nil
30
32
  @tables = {}
31
33
  @views = {}
32
- @dirty = true
33
34
  load_schema!
34
35
  end
35
36
 
36
- def dirty?() @dirty; end
37
- def dirty!() @dirty = true; end
37
+ def dirty?()
38
+ return (@schema_version != self.current_version)
39
+ end
40
+
41
+ def current_version
42
+ @db.first_value_from("PRAGMA schema_version")
43
+ end
38
44
 
39
45
  #
40
46
  # load the schema from the database
41
47
  def load_schema!
42
48
  load_tables
43
49
  load_views
44
- @dirty = false
50
+ @schema_version = self.current_version
51
+ nil
45
52
  end
46
53
 
47
54
  ##
@@ -322,7 +322,7 @@ module Amalgalite
322
322
  # column. The origin column is the original database.table.column the value
323
323
  # comes from.
324
324
  #
325
- # The full meta information from teh origin column is also obtained for help
325
+ # The full meta information from the origin column is also obtained for help
326
326
  # in doing type conversion.
327
327
  #
328
328
  # As iteration over the row meta informatio happens, record if the special
@@ -8,7 +8,7 @@ module Amalgalite
8
8
  module Version
9
9
 
10
10
  MAJOR = 0
11
- MINOR = 11
11
+ MINOR = 12
12
12
  BUILD = 0
13
13
 
14
14
  #
@@ -352,26 +352,48 @@ describe Amalgalite::Database do
352
352
 
353
353
  it "can interrupt another thread that is also running in this database" do
354
354
  executions = 0
355
+ control_queue = Queue.new
355
356
  other = Thread.new( @iso_db ) do |db|
357
+ looping_sent = false
358
+ c = 0
356
359
  loop do
357
360
  begin
358
- db.execute("select count(id) from country")
361
+ db.execute("select count(*) from subcountry")
359
362
  executions += 1
363
+ if not looping_sent then
364
+ control_queue.enq :looping
365
+ looping_sent = true
366
+ end
367
+ if c > 20000 then
368
+ break
369
+ end
370
+ c += 1
360
371
  rescue => e
361
- Thread.current[:had_error] = e
372
+ Thread.current[:loop_count] = c
373
+ Thread.current[:had_error] = e.dup
374
+ control_queue.enq :boom
362
375
  break
363
376
  end
364
377
  end
365
378
  end
366
379
 
367
380
  rudeness = Thread.new( @iso_db ) do |db|
368
- sleep 0.05
369
- @iso_db.interrupt!
381
+ sent = control_queue.deq
382
+ count = 0
383
+ loop do
384
+ @iso_db.interrupt!
385
+ break unless control_queue.empty?
386
+ if count > 20000 then
387
+ break
388
+ end
389
+ count += 1
390
+ end
370
391
  end
371
392
 
372
393
  rudeness.join
394
+ other.join
373
395
 
374
- executions.should > 10
396
+ #$stdout.puts " looped #{other[:loop_count]} times"
375
397
  other[:had_error].should be_an_instance_of( ::Amalgalite::SQLite3::Error )
376
398
  other[:had_error].message.should =~ / interrupted/
377
399
  end
@@ -2,6 +2,8 @@ require 'rubygems'
2
2
  require 'spec'
3
3
 
4
4
  $: << File.expand_path(File.join(File.dirname(__FILE__),"..","lib"))
5
+
6
+ require File.expand_path(File.join(File.dirname(__FILE__),"spec_helper.rb"))
5
7
  require 'amalgalite'
6
8
  require 'amalgalite/database'
7
9
 
@@ -67,10 +69,11 @@ describe "Scalar SQL Functions" do
67
69
 
68
70
  it "does not allow outrageous arity" do
69
71
  class FunctionTest3 < ::Amalgalite::Function
70
- def name() "ftest3"; end
71
- def arity() 128; end
72
+ def initialize
73
+ super( 'ftest3', 128)
74
+ end
72
75
  end
73
- lambda { @iso_db.define_aggregate("ftest3", FunctionTest3) }.should raise_error( ::Amalgalite::SQLite3::Error, /SQLITE_ERROR .* Library used incorrectly/ )
76
+ lambda { @iso_db.define_function("ftest3", FunctionTest3.new) }.should raise_error( ::Amalgalite::SQLite3::Error, /SQLITE_ERROR .* Library used incorrectly/ )
74
77
  end
75
78
 
76
79
  it "raises an error if the function returns a complex Ruby object" do
data/spec/schema_spec.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require 'rubygems'
2
2
  require 'spec'
3
3
 
4
+ require File.expand_path( File.join( File.dirname(__FILE__), 'spec_helper'))
4
5
  $: << File.expand_path(File.join(File.dirname(__FILE__),"..","lib"))
5
6
  require 'amalgalite'
6
7
  require 'amalgalite/schema'
@@ -24,28 +25,21 @@ describe Amalgalite::Schema do
24
25
  schema.tables.size.should eql(2)
25
26
  end
26
27
 
27
- it "lazily loads new table schema" do
28
- @iso_db.schema.tables.size.should eql(2)
29
- sql = "CREATE TABLE t1 ( a, b, c )"
30
- @iso_db.execute( sql )
31
- @iso_db.schema.tables.size.should eql(2)
32
- @iso_db.schema.dirty!
33
- @iso_db.schema.tables['t1'].column_names.should eql(%w[ a b c ])
34
- @iso_db.schema.tables.size.should eql(3)
35
- end
36
-
37
28
  it "loads the views in the database" do
29
+ s = @iso_db.schema
38
30
  sql = "CREATE VIEW v1 AS SELECT c.name, c.two_letter, s.name, s.subdivision FROM country AS c JOIN subcountry AS s ON c.two_letter = s.country"
39
31
  @iso_db.execute( sql )
32
+ s.dirty?.should == true
40
33
  @iso_db.schema.load_views
41
34
  @iso_db.schema.views.size.should eql(1)
42
35
  @iso_db.schema.views["v1"].sql.should eql(sql)
43
36
  end
44
37
 
45
38
  it "removes quotes from around default values in columns" do
39
+ s = @iso_db.schema
46
40
  sql = "CREATE TABLE t1( d1 default 't' )"
47
41
  @iso_db.execute( sql )
48
- @iso_db.schema.dirty!
42
+ s.dirty?.should == true
49
43
  tt = @iso_db.schema.tables['t1']
50
44
  tt.columns['d1'].default_value.should == "t"
51
45
  end
@@ -73,16 +67,16 @@ describe Amalgalite::Schema do
73
67
  end
74
68
 
75
69
  it "knows the primary key of a table even without an explicity unique index" do
70
+ s = @iso_db.schema
76
71
  sql = "CREATE TABLE u( id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL , other text )"
77
72
  @iso_db.execute( sql )
78
- @iso_db.schema.dirty!
73
+ s.dirty?.should == true
79
74
  ut = @iso_db.schema.tables['u']
80
75
  ut.primary_key.should == [ ut.columns['id'] ]
81
76
  end
82
77
 
83
78
  it "knows the primary key of a temporary table" do
84
79
  @iso_db.execute "CREATE TEMPORARY TABLE tt( a, b INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, c )"
85
- @iso_db.schema.dirty!
86
80
  tt = @iso_db.schema.load_table( 'tt' )
87
81
  tt.primary_key.should == [ tt.columns['b'] ]
88
82
 
@@ -90,8 +84,9 @@ describe Amalgalite::Schema do
90
84
 
91
85
  it "knows what the primary key of a table is when it is a multiple column primary key" do
92
86
  sql = "CREATE TABLE m ( id1, id2, PRIMARY KEY (id2, id1) )"
87
+ s = @iso_db.schema
93
88
  @iso_db.execute( sql )
94
- @iso_db.schema.dirty!
89
+ s.dirty?.should == true
95
90
  mt = @iso_db.schema.tables['m']
96
91
  mt.primary_key.should == [ mt.columns['id2'], mt.columns['id1'] ]
97
92
  end
@@ -110,9 +105,31 @@ describe Amalgalite::Schema do
110
105
  subc.indexes['subcountry_country'].columns.first.should eql(@iso_db.schema.tables['subcountry'].columns['country'])
111
106
  end
112
107
 
108
+ it "knows the schema is dirty when a table is created" do
109
+ s = @iso_db.schema
110
+ c = s.tables['country']
111
+ s.dirty?.should == false
112
+ @iso_db.execute( "create table x1( a, b )" )
113
+ s.dirty?.should == true
114
+ end
115
+
116
+ it "knows the schema is dirty when a table is dropped" do
117
+ s = @iso_db.schema
118
+ c = s.tables['country']
119
+ @iso_db.execute( "create table x1( a, b )" )
120
+ s.dirty?.should == true
121
+
122
+ @iso_db.schema.load_schema!
123
+ s = @iso_db.schema
124
+
125
+ s.dirty?.should == false
126
+ @iso_db.execute("drop table x1")
127
+ s.dirty?.should == true
128
+ end
129
+
130
+
113
131
  it "can load the schema of a temporary table" do
114
132
  @iso_db.execute "CREATE TEMPORARY TABLE tt( a, b, c )"
115
- @iso_db.schema.dirty!
116
133
  @iso_db.schema.tables['tt'].should be_nil
117
134
  @iso_db.schema.load_table('tt').should_not be_nil
118
135
  @iso_db.schema.tables['tt'].should be_temporary
@@ -10,8 +10,12 @@ describe "Amalgalite::SQLite3::Status" do
10
10
 
11
11
  it "can reset the highwater value" do
12
12
  before = Amalgalite::SQLite3.status.memory_used.highwater
13
+ before.should > 0
14
+
15
+ current = Amalgalite::SQLite3.status.memory_used.current
13
16
  Amalgalite::SQLite3.status.memory_used.reset!
14
- Amalgalite::SQLite3.status.memory_used.highwater.should > 0
17
+ Amalgalite::SQLite3.status.memory_used.highwater.should == current
18
+
15
19
  after = Amalgalite::SQLite3.status.memory_used.highwater
16
20
  after.should_not eql(before)
17
21
  end
@@ -7,16 +7,16 @@ describe "Amalgalite::SQLite3::Version" do
7
7
  Amalgalite::SQLite3::Version.to_s.should =~ /\d\.\d\.\d/
8
8
  Amalgalite::SQLite3::Version.runtime_version.should =~ /\d\.\d\.\d/
9
9
 
10
- Amalgalite::SQLite3::Version.to_i.should eql(3006017)
11
- Amalgalite::SQLite3::Version.runtime_version_number.should eql(3006017)
10
+ Amalgalite::SQLite3::Version.to_i.should eql(3006019)
11
+ Amalgalite::SQLite3::Version.runtime_version_number.should eql(3006019)
12
12
 
13
13
  Amalgalite::SQLite3::Version::MAJOR.should eql(3)
14
14
  Amalgalite::SQLite3::Version::MINOR.should eql(6)
15
- Amalgalite::SQLite3::Version::RELEASE.should eql(17)
15
+ Amalgalite::SQLite3::Version::RELEASE.should eql(19)
16
16
  Amalgalite::SQLite3::Version.to_a.should have(3).items
17
17
 
18
- Amalgalite::SQLite3::Version.compiled_version.should == "3.6.17"
19
- Amalgalite::SQLite3::Version.compiled_version_number.should == 3006017
18
+ Amalgalite::SQLite3::Version.compiled_version.should == "3.6.19"
19
+ Amalgalite::SQLite3::Version.compiled_version_number.should == 3006019
20
20
  Amalgalite::SQLite3::Version.compiled_matches_runtime?.should == true
21
21
  end
22
22
  end
data/tasks/extension.rake CHANGED
@@ -91,6 +91,59 @@ if ext_config = Configuration.for_if_exist?('extension') then
91
91
  end
92
92
  end
93
93
 
94
+ desc "List the sqlite api calls that are not implemented"
95
+ task :todo do
96
+
97
+ not_implementing = %w[
98
+ sqlite3_exec
99
+ sqlite3_open
100
+ sqlite3_os_end
101
+ sqlite3_os_init
102
+ sqlite3_malloc
103
+ sqlite3_realloc
104
+ sqlite3_free
105
+ sqlite3_get_table
106
+ sqlite3_free_table
107
+ sqlite3_key
108
+ sqlite3_rekey
109
+ sqlite3_next_stmt
110
+ sqlite3_release_memory
111
+ sqlite3_sleep
112
+ sqlite3_snprintf
113
+ sqlite3_vmprintf
114
+ sqlite3_strnicmp
115
+ sqlite3_test_control
116
+ sqlite3_unlock_notify
117
+ sqlite3_vfs_find
118
+ sqlite3_vfs_register
119
+ sqlite3_vfs_unregister
120
+ ]
121
+
122
+ sqlite_h = File.join( *%w[ ext amalgalite sqlite3.h ] )
123
+ api_todo = {}
124
+ IO.readlines( sqlite_h ).each do |line|
125
+ if line =~ /\ASQLITE_API/ then
126
+ if line !~ /SQLITE_DEPRECATED/ and line !~ /SQLITE_EXPERIMENTAL/ then
127
+ if md = line.match( /(sqlite3_[^(\s]+)\(/ ) then
128
+ next if not_implementing.include?(md.captures[0])
129
+ api_todo[md.captures[0]] = true
130
+ end
131
+ end
132
+ end
133
+ end
134
+
135
+ Dir.glob("ext/amalgalite/amalgalite*.c").each do |am_file|
136
+ IO.readlines( am_file ).each do |am_line|
137
+ if md = am_line.match( /(sqlite3_[^(\s]+)\(/ ) then
138
+ api_todo.delete( md.captures[0] )
139
+ end
140
+ end
141
+ end
142
+
143
+ puts "#{api_todo.keys.size} functions to still implement"
144
+ puts api_todo.keys.sort.join("\n")
145
+ end
146
+
94
147
  task :clobber do
95
148
  ext_config.configs.each do |extension|
96
149
  path = Pathname.new(extension)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: amalgalite
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0
4
+ version: 0.12.0
5
5
  platform: x86-mingw32
6
6
  authors:
7
7
  - Jeremy Hinegardner
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-08-23 00:00:00 -06:00
12
+ date: 2009-10-30 00:00:00 +00:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -62,7 +62,45 @@ dependencies:
62
62
  - !ruby/object:Gem::Version
63
63
  version: 0.5.0
64
64
  version:
65
- description: "Amalgalite embeds the SQLite database engine in a ruby extension. There is no need to install SQLite separately. Look in the examples/ directory to see * general usage * blob io * schema information * custom functions * custom aggregates * requiring ruby code from a database Also Scroll through Amalgalite::Database for a quick example, and a general overview of the API. Amalgalite adds in the following additional non-default SQLite extension(s): * {R*Tree index extension}[http://sqlite.org/rtree.html]"
65
+ - !ruby/object:Gem::Dependency
66
+ name: archive-tar-minitar
67
+ type: :development
68
+ version_requirement:
69
+ version_requirements: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - ~>
72
+ - !ruby/object:Gem::Version
73
+ version: 0.5.2
74
+ version:
75
+ - !ruby/object:Gem::Dependency
76
+ name: rcov
77
+ type: :development
78
+ version_requirement:
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ~>
82
+ - !ruby/object:Gem::Version
83
+ version: 0.8.1.2.0
84
+ version:
85
+ description: |-
86
+ Amalgalite embeds the SQLite database engine in a ruby extension. There is no
87
+ need to install SQLite separately.
88
+
89
+ Look in the examples/ directory to see
90
+
91
+ * general usage
92
+ * blob io
93
+ * schema information
94
+ * custom functions
95
+ * custom aggregates
96
+ * requiring ruby code from a database
97
+
98
+ Also Scroll through Amalgalite::Database for a quick example, and a general
99
+ overview of the API.
100
+
101
+ Amalgalite adds in the following additional non-default SQLite extension(s):
102
+
103
+ * {R*Tree index extension}[http://sqlite.org/rtree.html]
66
104
  email: jeremy@hinegardner.org
67
105
  executables:
68
106
  - amalgalite-pack
@@ -72,142 +110,143 @@ extra_rdoc_files:
72
110
  - README
73
111
  - HISTORY
74
112
  - LICENSE
75
- - lib/amalgalite/aggregate.rb
113
+ - lib/amalgalite/taps/io.rb
114
+ - lib/amalgalite/taps/console.rb
115
+ - lib/amalgalite/statement.rb
76
116
  - lib/amalgalite/blob.rb
77
- - lib/amalgalite/boolean.rb
78
- - lib/amalgalite/busy_timeout.rb
79
117
  - lib/amalgalite/column.rb
80
- - lib/amalgalite/core_ext/kernel/require.rb
81
- - lib/amalgalite/database.rb
82
- - lib/amalgalite/function.rb
83
- - lib/amalgalite/index.rb
84
- - lib/amalgalite/packer.rb
85
- - lib/amalgalite/paths.rb
86
- - lib/amalgalite/profile_tap.rb
87
- - lib/amalgalite/progress_handler.rb
88
- - lib/amalgalite/requires.rb
89
- - lib/amalgalite/schema.rb
118
+ - lib/amalgalite/trace_tap.rb
90
119
  - lib/amalgalite/sqlite3/constants.rb
91
120
  - lib/amalgalite/sqlite3/database/function.rb
92
121
  - lib/amalgalite/sqlite3/database/status.rb
93
- - lib/amalgalite/sqlite3/status.rb
94
122
  - lib/amalgalite/sqlite3/version.rb
95
- - lib/amalgalite/sqlite3.rb
96
- - lib/amalgalite/statement.rb
123
+ - lib/amalgalite/sqlite3/status.rb
97
124
  - lib/amalgalite/table.rb
98
- - lib/amalgalite/taps/console.rb
99
- - lib/amalgalite/taps/io.rb
100
- - lib/amalgalite/taps.rb
101
- - lib/amalgalite/trace_tap.rb
102
- - lib/amalgalite/type_map.rb
103
125
  - lib/amalgalite/type_maps/default_map.rb
104
- - lib/amalgalite/type_maps/storage_map.rb
105
126
  - lib/amalgalite/type_maps/text_map.rb
127
+ - lib/amalgalite/type_maps/storage_map.rb
128
+ - lib/amalgalite/type_map.rb
129
+ - lib/amalgalite/profile_tap.rb
130
+ - lib/amalgalite/requires.rb
131
+ - lib/amalgalite/boolean.rb
132
+ - lib/amalgalite/aggregate.rb
133
+ - lib/amalgalite/index.rb
134
+ - lib/amalgalite/sqlite3.rb
135
+ - lib/amalgalite/taps.rb
136
+ - lib/amalgalite/paths.rb
106
137
  - lib/amalgalite/version.rb
138
+ - lib/amalgalite/schema.rb
139
+ - lib/amalgalite/busy_timeout.rb
107
140
  - lib/amalgalite/view.rb
141
+ - lib/amalgalite/function.rb
142
+ - lib/amalgalite/database.rb
143
+ - lib/amalgalite/progress_handler.rb
144
+ - lib/amalgalite/packer.rb
145
+ - lib/amalgalite/core_ext/kernel/require.rb
108
146
  - lib/amalgalite.rb
109
147
  files:
110
148
  - bin/amalgalite-pack
111
149
  - ext/amalgalite/amalgalite3.c
112
- - ext/amalgalite/amalgalite3_blob.c
113
- - ext/amalgalite/amalgalite3_constants.c
150
+ - ext/amalgalite/amalgalite3_statement.c
114
151
  - ext/amalgalite/amalgalite3_database.c
115
152
  - ext/amalgalite/amalgalite3_requires_bootstrap.c
116
- - ext/amalgalite/amalgalite3_statement.c
117
153
  - ext/amalgalite/sqlite3.c
118
- - ext/amalgalite/amalgalite3.h
154
+ - ext/amalgalite/amalgalite3_constants.c
155
+ - ext/amalgalite/amalgalite3_blob.c
119
156
  - ext/amalgalite/sqlite3.h
157
+ - ext/amalgalite/amalgalite3.h
120
158
  - ext/amalgalite/sqlite3_options.h
121
159
  - ext/amalgalite/sqlite3ext.h
122
- - ext/amalgalite/extconf.rb
123
160
  - ext/amalgalite/gen_constants.rb
124
- - examples/a.rb
161
+ - ext/amalgalite/extconf.rb
125
162
  - examples/blob.rb
126
- - examples/bootstrap.rb
127
- - examples/define_aggregate.rb
128
- - examples/define_function.rb
129
163
  - examples/gem-db.rb
130
- - examples/gems.db
131
- - examples/require_me.rb
164
+ - examples/define_function.rb
165
+ - examples/define_aggregate.rb
132
166
  - examples/requires.rb
167
+ - examples/bootstrap.rb
133
168
  - examples/schema-info.rb
134
- - lib/amalgalite/aggregate.rb
169
+ - examples/require_me.rb
170
+ - examples/a.rb
171
+ - lib/amalgalite/taps/io.rb
172
+ - lib/amalgalite/taps/console.rb
173
+ - lib/amalgalite/statement.rb
135
174
  - lib/amalgalite/blob.rb
136
- - lib/amalgalite/boolean.rb
137
- - lib/amalgalite/busy_timeout.rb
138
175
  - lib/amalgalite/column.rb
139
- - lib/amalgalite/core_ext/kernel/require.rb
140
- - lib/amalgalite/database.rb
141
- - lib/amalgalite/function.rb
142
- - lib/amalgalite/index.rb
143
- - lib/amalgalite/packer.rb
144
- - lib/amalgalite/paths.rb
145
- - lib/amalgalite/profile_tap.rb
146
- - lib/amalgalite/progress_handler.rb
147
- - lib/amalgalite/requires.rb
148
- - lib/amalgalite/schema.rb
176
+ - lib/amalgalite/trace_tap.rb
149
177
  - lib/amalgalite/sqlite3/constants.rb
150
178
  - lib/amalgalite/sqlite3/database/function.rb
151
179
  - lib/amalgalite/sqlite3/database/status.rb
152
- - lib/amalgalite/sqlite3/status.rb
153
180
  - lib/amalgalite/sqlite3/version.rb
154
- - lib/amalgalite/sqlite3.rb
155
- - lib/amalgalite/statement.rb
181
+ - lib/amalgalite/sqlite3/status.rb
156
182
  - lib/amalgalite/table.rb
157
- - lib/amalgalite/taps/console.rb
158
- - lib/amalgalite/taps/io.rb
159
- - lib/amalgalite/taps.rb
160
- - lib/amalgalite/trace_tap.rb
161
- - lib/amalgalite/type_map.rb
162
183
  - lib/amalgalite/type_maps/default_map.rb
163
- - lib/amalgalite/type_maps/storage_map.rb
164
184
  - lib/amalgalite/type_maps/text_map.rb
185
+ - lib/amalgalite/type_maps/storage_map.rb
186
+ - lib/amalgalite/type_map.rb
187
+ - lib/amalgalite/profile_tap.rb
188
+ - lib/amalgalite/requires.rb
189
+ - lib/amalgalite/boolean.rb
190
+ - lib/amalgalite/aggregate.rb
191
+ - lib/amalgalite/index.rb
192
+ - lib/amalgalite/sqlite3.rb
193
+ - lib/amalgalite/taps.rb
194
+ - lib/amalgalite/paths.rb
165
195
  - lib/amalgalite/version.rb
196
+ - lib/amalgalite/schema.rb
197
+ - lib/amalgalite/busy_timeout.rb
166
198
  - lib/amalgalite/view.rb
199
+ - lib/amalgalite/function.rb
200
+ - lib/amalgalite/database.rb
201
+ - lib/amalgalite/progress_handler.rb
202
+ - lib/amalgalite/packer.rb
203
+ - lib/amalgalite/core_ext/kernel/require.rb
167
204
  - lib/amalgalite.rb
168
- - spec/aggregate_spec.rb
205
+ - spec/requires_spec.rb
206
+ - spec/sqlite3_spec.rb
169
207
  - spec/amalgalite_spec.rb
170
- - spec/blob_spec.rb
171
- - spec/boolean_spec.rb
172
208
  - spec/busy_handler.rb
173
- - spec/database_spec.rb
209
+ - spec/blob_spec.rb
174
210
  - spec/default_map_spec.rb
175
- - spec/function_spec.rb
176
- - spec/integeration_spec.rb
177
- - spec/packer_spec.rb
178
- - spec/paths_spec.rb
179
- - spec/progress_handler_spec.rb
180
- - spec/requires_spec.rb
181
- - spec/rtree_spec.rb
182
- - spec/schema_spec.rb
183
- - spec/spec_helper.rb
184
211
  - spec/sqlite3/constants_spec.rb
185
212
  - spec/sqlite3/database_status_spec.rb
186
- - spec/sqlite3/status_spec.rb
187
213
  - spec/sqlite3/version_spec.rb
188
- - spec/sqlite3_spec.rb
189
- - spec/statement_spec.rb
214
+ - spec/sqlite3/status_spec.rb
190
215
  - spec/storage_map_spec.rb
191
- - spec/tap_spec.rb
192
- - spec/text_map_spec.rb
216
+ - spec/spec_helper.rb
217
+ - spec/statement_spec.rb
193
218
  - spec/type_map_spec.rb
219
+ - spec/boolean_spec.rb
220
+ - spec/text_map_spec.rb
221
+ - spec/integeration_spec.rb
222
+ - spec/rtree_spec.rb
223
+ - spec/paths_spec.rb
224
+ - spec/aggregate_spec.rb
194
225
  - spec/version_spec.rb
226
+ - spec/progress_handler_spec.rb
227
+ - spec/tap_spec.rb
228
+ - spec/schema_spec.rb
229
+ - spec/function_spec.rb
230
+ - spec/packer_spec.rb
231
+ - spec/database_spec.rb
195
232
  - README
196
233
  - HISTORY
197
234
  - LICENSE
198
- - tasks/announce.rake
199
235
  - tasks/distribution.rake
200
- - tasks/documentation.rake
201
- - tasks/extension.rake
202
236
  - tasks/rspec.rake
237
+ - tasks/documentation.rake
203
238
  - tasks/rubyforge.rake
204
- - tasks/config.rb
239
+ - tasks/announce.rake
240
+ - tasks/extension.rake
205
241
  - tasks/utils.rb
242
+ - tasks/config.rb
206
243
  - gemspec.rb
207
244
  - lib/amalgalite/1.8/amalgalite3.so
208
245
  - lib/amalgalite/1.9/amalgalite3.so
209
246
  has_rdoc: true
210
247
  homepage: http://copiousfreetime.rubyforge.org/amalgalite/
248
+ licenses: []
249
+
211
250
  post_install_message:
212
251
  rdoc_options:
213
252
  - --main
@@ -229,9 +268,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
229
268
  requirements: []
230
269
 
231
270
  rubyforge_project: copiousfreetime
232
- rubygems_version: 1.3.1
271
+ rubygems_version: 1.3.5
233
272
  signing_key:
234
- specification_version: 2
273
+ specification_version: 3
235
274
  summary: Amalgalite embeds the SQLite database engine in a ruby extension
236
275
  test_files: []
237
276