tiny_tds 1.0.4 → 2.1.5

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.
Files changed (51) hide show
  1. checksums.yaml +5 -5
  2. data/.codeclimate.yml +20 -0
  3. data/.gitattributes +1 -0
  4. data/.rubocop.yml +31 -0
  5. data/.travis.yml +25 -0
  6. data/{CHANGELOG → CHANGELOG.md} +102 -26
  7. data/Gemfile +4 -1
  8. data/ISSUE_TEMPLATE.md +35 -2
  9. data/README.md +131 -56
  10. data/Rakefile +31 -88
  11. data/VERSION +1 -1
  12. data/appveyor.yml +38 -17
  13. data/docker-compose.yml +22 -0
  14. data/ext/tiny_tds/client.c +147 -60
  15. data/ext/tiny_tds/client.h +11 -5
  16. data/ext/tiny_tds/extconf.rb +41 -297
  17. data/ext/tiny_tds/extconsts.rb +7 -7
  18. data/ext/tiny_tds/result.c +40 -15
  19. data/lib/tiny_tds/bin.rb +45 -27
  20. data/lib/tiny_tds/client.rb +46 -34
  21. data/lib/tiny_tds/error.rb +0 -1
  22. data/lib/tiny_tds/gem.rb +32 -0
  23. data/lib/tiny_tds/result.rb +2 -3
  24. data/lib/tiny_tds/version.rb +1 -1
  25. data/lib/tiny_tds.rb +38 -14
  26. data/{ports/patches/freetds/1.00 → patches/freetds/1.00.27}/0001-mingw_missing_inet_pton.diff +4 -4
  27. data/patches/freetds/1.00.27/0002-Don-t-use-MSYS2-file-libws2_32.diff +28 -0
  28. data/patches/libiconv/1.14/1-avoid-gets-error.patch +17 -0
  29. data/tasks/native_gem.rake +14 -0
  30. data/tasks/package.rake +8 -0
  31. data/tasks/ports/freetds.rb +37 -0
  32. data/tasks/ports/libiconv.rb +43 -0
  33. data/tasks/ports/openssl.rb +62 -0
  34. data/tasks/ports/recipe.rb +52 -0
  35. data/tasks/ports.rake +85 -0
  36. data/tasks/test.rake +9 -0
  37. data/test/appveyor/dbsetup.ps1 +1 -1
  38. data/test/bin/install-freetds.sh +20 -0
  39. data/test/bin/install-openssl.sh +18 -0
  40. data/test/bin/setup.sh +19 -0
  41. data/test/client_test.rb +124 -66
  42. data/test/gem_test.rb +179 -0
  43. data/test/result_test.rb +128 -42
  44. data/test/schema/sqlserver_2016.sql +140 -0
  45. data/test/schema_test.rb +23 -23
  46. data/test/test_helper.rb +65 -7
  47. data/test/thread_test.rb +1 -1
  48. data/tiny_tds.gemspec +9 -7
  49. metadata +60 -20
  50. /data/bin/{defncopy → defncopy-ttds} +0 -0
  51. /data/bin/{tsql → tsql-ttds} +0 -0
data/test/thread_test.rb CHANGED
@@ -49,7 +49,7 @@ class ThreadTest < TinyTds::TestCase
49
49
  begin
50
50
  result = client.execute "select dbname()"
51
51
  result.each { |r| puts r }
52
- rescue Exception => e
52
+ rescue Exception => _e
53
53
  # We are throwing an error on purpose here since 0.6.1 would
54
54
  # segfault on errors thrown in threads
55
55
  end
data/tiny_tds.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  # -*- encoding: utf-8 -*-
2
- $:.push File.expand_path("../lib", __FILE__)
3
- require "tiny_tds/version"
2
+ $LOAD_PATH.push File.expand_path('../lib', __FILE__)
3
+ require 'tiny_tds/version'
4
4
 
5
5
  Gem::Specification.new do |s|
6
6
  s.name = 'tiny_tds'
@@ -13,16 +13,18 @@ Gem::Specification.new do |s|
13
13
  s.description = 'TinyTDS - A modern, simple and fast FreeTDS library for Ruby using DB-Library. Developed for the ActiveRecord SQL Server adapter.'
14
14
  s.files = `git ls-files`.split("\n") + Dir.glob('exe/*')
15
15
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
16
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
16
+ s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
17
17
  s.require_paths = ['lib']
18
18
  s.rdoc_options = ['--charset=UTF-8']
19
19
  s.extensions = ['ext/tiny_tds/extconf.rb']
20
20
  s.license = 'MIT'
21
21
  s.required_ruby_version = '>= 2.0.0'
22
- s.add_runtime_dependency 'mini_portile2', '~> 2.0' # Keep this version in sync with the one in extconf.rb !
23
- s.add_development_dependency 'rake', '~> 10.4'
24
- s.add_development_dependency 'rake-compiler', '0.9.5'
25
- s.add_development_dependency 'rake-compiler-dock', '~> 0.5.1'
22
+ s.metadata['msys2_mingw_dependencies'] = 'freetds'
23
+ s.add_development_dependency 'mini_portile2', '~> 2.0'
24
+ s.add_development_dependency 'rake', '~> 13.0'
25
+ s.add_development_dependency 'rake-compiler', '~> 1.0'
26
+ s.add_development_dependency 'rake-compiler-dock', '~> 1.0'
26
27
  s.add_development_dependency 'minitest', '~> 5.6'
27
28
  s.add_development_dependency 'connection_pool', '~> 2.2'
29
+ s.add_development_dependency 'toxiproxy', '~> 2.0.0'
28
30
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tiny_tds
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 2.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ken Collins
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2016-05-24 00:00:00.000000000 Z
13
+ date: 2021-05-20 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: mini_portile2
@@ -19,7 +19,7 @@ dependencies:
19
19
  - - "~>"
20
20
  - !ruby/object:Gem::Version
21
21
  version: '2.0'
22
- type: :runtime
22
+ type: :development
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
@@ -32,42 +32,42 @@ dependencies:
32
32
  requirements:
33
33
  - - "~>"
34
34
  - !ruby/object:Gem::Version
35
- version: '10.4'
35
+ version: '13.0'
36
36
  type: :development
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - "~>"
41
41
  - !ruby/object:Gem::Version
42
- version: '10.4'
42
+ version: '13.0'
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: rake-compiler
45
45
  requirement: !ruby/object:Gem::Requirement
46
46
  requirements:
47
- - - '='
47
+ - - "~>"
48
48
  - !ruby/object:Gem::Version
49
- version: 0.9.5
49
+ version: '1.0'
50
50
  type: :development
51
51
  prerelease: false
52
52
  version_requirements: !ruby/object:Gem::Requirement
53
53
  requirements:
54
- - - '='
54
+ - - "~>"
55
55
  - !ruby/object:Gem::Version
56
- version: 0.9.5
56
+ version: '1.0'
57
57
  - !ruby/object:Gem::Dependency
58
58
  name: rake-compiler-dock
59
59
  requirement: !ruby/object:Gem::Requirement
60
60
  requirements:
61
61
  - - "~>"
62
62
  - !ruby/object:Gem::Version
63
- version: 0.5.1
63
+ version: '1.0'
64
64
  type: :development
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
67
67
  requirements:
68
68
  - - "~>"
69
69
  - !ruby/object:Gem::Version
70
- version: 0.5.1
70
+ version: '1.0'
71
71
  - !ruby/object:Gem::Dependency
72
72
  name: minitest
73
73
  requirement: !ruby/object:Gem::Requirement
@@ -96,20 +96,38 @@ dependencies:
96
96
  - - "~>"
97
97
  - !ruby/object:Gem::Version
98
98
  version: '2.2'
99
+ - !ruby/object:Gem::Dependency
100
+ name: toxiproxy
101
+ requirement: !ruby/object:Gem::Requirement
102
+ requirements:
103
+ - - "~>"
104
+ - !ruby/object:Gem::Version
105
+ version: 2.0.0
106
+ type: :development
107
+ prerelease: false
108
+ version_requirements: !ruby/object:Gem::Requirement
109
+ requirements:
110
+ - - "~>"
111
+ - !ruby/object:Gem::Version
112
+ version: 2.0.0
99
113
  description: TinyTDS - A modern, simple and fast FreeTDS library for Ruby using DB-Library.
100
114
  Developed for the ActiveRecord SQL Server adapter.
101
115
  email:
102
116
  - ken@metaskills.net
103
117
  - will@wbond.net
104
118
  executables:
105
- - defncopy
106
- - tsql
119
+ - defncopy-ttds
120
+ - tsql-ttds
107
121
  extensions:
108
122
  - ext/tiny_tds/extconf.rb
109
123
  extra_rdoc_files: []
110
124
  files:
125
+ - ".codeclimate.yml"
126
+ - ".gitattributes"
111
127
  - ".gitignore"
112
- - CHANGELOG
128
+ - ".rubocop.yml"
129
+ - ".travis.yml"
130
+ - CHANGELOG.md
113
131
  - CODE_OF_CONDUCT.md
114
132
  - Gemfile
115
133
  - ISSUE_TEMPLATE.md
@@ -118,8 +136,9 @@ files:
118
136
  - Rakefile
119
137
  - VERSION
120
138
  - appveyor.yml
121
- - bin/defncopy
122
- - bin/tsql
139
+ - bin/defncopy-ttds
140
+ - bin/tsql-ttds
141
+ - docker-compose.yml
123
142
  - exe/.keep
124
143
  - ext/tiny_tds/client.c
125
144
  - ext/tiny_tds/client.h
@@ -133,21 +152,37 @@ files:
133
152
  - lib/tiny_tds/bin.rb
134
153
  - lib/tiny_tds/client.rb
135
154
  - lib/tiny_tds/error.rb
155
+ - lib/tiny_tds/gem.rb
136
156
  - lib/tiny_tds/result.rb
137
157
  - lib/tiny_tds/version.rb
138
- - ports/patches/freetds/1.00/0001-mingw_missing_inet_pton.diff
158
+ - patches/freetds/1.00.27/0001-mingw_missing_inet_pton.diff
159
+ - patches/freetds/1.00.27/0002-Don-t-use-MSYS2-file-libws2_32.diff
160
+ - patches/libiconv/1.14/1-avoid-gets-error.patch
161
+ - tasks/native_gem.rake
162
+ - tasks/package.rake
163
+ - tasks/ports.rake
164
+ - tasks/ports/freetds.rb
165
+ - tasks/ports/libiconv.rb
166
+ - tasks/ports/openssl.rb
167
+ - tasks/ports/recipe.rb
168
+ - tasks/test.rake
139
169
  - test/appveyor/dbsetup.ps1
140
170
  - test/appveyor/dbsetup.sql
141
171
  - test/benchmark/query.rb
142
172
  - test/benchmark/query_odbc.rb
143
173
  - test/benchmark/query_tinytds.rb
174
+ - test/bin/install-freetds.sh
175
+ - test/bin/install-openssl.sh
176
+ - test/bin/setup.sh
144
177
  - test/client_test.rb
178
+ - test/gem_test.rb
145
179
  - test/result_test.rb
146
180
  - test/schema/1px.gif
147
181
  - test/schema/sqlserver_2000.sql
148
182
  - test/schema/sqlserver_2005.sql
149
183
  - test/schema/sqlserver_2008.sql
150
184
  - test/schema/sqlserver_2014.sql
185
+ - test/schema/sqlserver_2016.sql
151
186
  - test/schema/sqlserver_azure.sql
152
187
  - test/schema/sybase_ase.sql
153
188
  - test/schema_test.rb
@@ -157,7 +192,8 @@ files:
157
192
  homepage: http://github.com/rails-sqlserver/tiny_tds
158
193
  licenses:
159
194
  - MIT
160
- metadata: {}
195
+ metadata:
196
+ msys2_mingw_dependencies: freetds
161
197
  post_install_message:
162
198
  rdoc_options:
163
199
  - "--charset=UTF-8"
@@ -174,8 +210,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
174
210
  - !ruby/object:Gem::Version
175
211
  version: '0'
176
212
  requirements: []
177
- rubyforge_project:
178
- rubygems_version: 2.4.5.1
213
+ rubygems_version: 3.0.3
179
214
  signing_key:
180
215
  specification_version: 4
181
216
  summary: TinyTDS - A modern, simple and fast FreeTDS library for Ruby using DB-Library.
@@ -185,13 +220,18 @@ test_files:
185
220
  - test/benchmark/query.rb
186
221
  - test/benchmark/query_odbc.rb
187
222
  - test/benchmark/query_tinytds.rb
223
+ - test/bin/install-freetds.sh
224
+ - test/bin/install-openssl.sh
225
+ - test/bin/setup.sh
188
226
  - test/client_test.rb
227
+ - test/gem_test.rb
189
228
  - test/result_test.rb
190
229
  - test/schema/1px.gif
191
230
  - test/schema/sqlserver_2000.sql
192
231
  - test/schema/sqlserver_2005.sql
193
232
  - test/schema/sqlserver_2008.sql
194
233
  - test/schema/sqlserver_2014.sql
234
+ - test/schema/sqlserver_2016.sql
195
235
  - test/schema/sqlserver_azure.sql
196
236
  - test/schema/sybase_ase.sql
197
237
  - test/schema_test.rb
File without changes
File without changes