sequel 5.39.0 → 5.63.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG +308 -0
- data/MIT-LICENSE +1 -1
- data/README.rdoc +57 -25
- data/bin/sequel +11 -3
- data/doc/advanced_associations.rdoc +13 -13
- data/doc/association_basics.rdoc +89 -24
- data/doc/cheat_sheet.rdoc +11 -3
- data/doc/migration.rdoc +12 -6
- data/doc/model_hooks.rdoc +1 -1
- data/doc/object_model.rdoc +8 -8
- data/doc/opening_databases.rdoc +18 -11
- data/doc/postgresql.rdoc +16 -8
- data/doc/querying.rdoc +5 -3
- data/doc/release_notes/5.40.0.txt +40 -0
- data/doc/release_notes/5.41.0.txt +25 -0
- data/doc/release_notes/5.42.0.txt +136 -0
- data/doc/release_notes/5.43.0.txt +98 -0
- data/doc/release_notes/5.44.0.txt +32 -0
- data/doc/release_notes/5.45.0.txt +34 -0
- data/doc/release_notes/5.46.0.txt +87 -0
- data/doc/release_notes/5.47.0.txt +59 -0
- data/doc/release_notes/5.48.0.txt +14 -0
- data/doc/release_notes/5.49.0.txt +59 -0
- data/doc/release_notes/5.50.0.txt +78 -0
- data/doc/release_notes/5.51.0.txt +47 -0
- data/doc/release_notes/5.52.0.txt +87 -0
- data/doc/release_notes/5.53.0.txt +23 -0
- data/doc/release_notes/5.54.0.txt +27 -0
- data/doc/release_notes/5.55.0.txt +21 -0
- data/doc/release_notes/5.56.0.txt +51 -0
- data/doc/release_notes/5.57.0.txt +23 -0
- data/doc/release_notes/5.58.0.txt +31 -0
- data/doc/release_notes/5.59.0.txt +73 -0
- data/doc/release_notes/5.60.0.txt +22 -0
- data/doc/release_notes/5.61.0.txt +43 -0
- data/doc/release_notes/5.62.0.txt +132 -0
- data/doc/release_notes/5.63.0.txt +33 -0
- data/doc/schema_modification.rdoc +1 -1
- data/doc/security.rdoc +9 -9
- data/doc/sql.rdoc +27 -15
- data/doc/testing.rdoc +22 -11
- data/doc/transactions.rdoc +6 -6
- data/doc/virtual_rows.rdoc +2 -2
- data/lib/sequel/adapters/ado/access.rb +1 -1
- data/lib/sequel/adapters/ado.rb +17 -17
- data/lib/sequel/adapters/amalgalite.rb +3 -5
- data/lib/sequel/adapters/ibmdb.rb +2 -2
- data/lib/sequel/adapters/jdbc/derby.rb +8 -0
- data/lib/sequel/adapters/jdbc/h2.rb +60 -10
- data/lib/sequel/adapters/jdbc/hsqldb.rb +6 -0
- data/lib/sequel/adapters/jdbc/postgresql.rb +4 -4
- data/lib/sequel/adapters/jdbc.rb +16 -18
- data/lib/sequel/adapters/mysql.rb +80 -67
- data/lib/sequel/adapters/mysql2.rb +54 -49
- data/lib/sequel/adapters/odbc.rb +6 -2
- data/lib/sequel/adapters/oracle.rb +3 -3
- data/lib/sequel/adapters/postgres.rb +83 -40
- data/lib/sequel/adapters/shared/access.rb +11 -1
- data/lib/sequel/adapters/shared/db2.rb +30 -0
- data/lib/sequel/adapters/shared/mssql.rb +58 -7
- data/lib/sequel/adapters/shared/mysql.rb +40 -2
- data/lib/sequel/adapters/shared/oracle.rb +76 -0
- data/lib/sequel/adapters/shared/postgres.rb +418 -174
- data/lib/sequel/adapters/shared/sqlanywhere.rb +10 -0
- data/lib/sequel/adapters/shared/sqlite.rb +102 -11
- data/lib/sequel/adapters/sqlanywhere.rb +1 -1
- data/lib/sequel/adapters/sqlite.rb +60 -18
- data/lib/sequel/adapters/tinytds.rb +1 -1
- data/lib/sequel/adapters/utils/columns_limit_1.rb +22 -0
- data/lib/sequel/adapters/utils/mysql_mysql2.rb +1 -1
- data/lib/sequel/ast_transformer.rb +6 -0
- data/lib/sequel/connection_pool/sharded_single.rb +5 -7
- data/lib/sequel/connection_pool/sharded_threaded.rb +5 -1
- data/lib/sequel/connection_pool/single.rb +6 -8
- data/lib/sequel/connection_pool/threaded.rb +8 -8
- data/lib/sequel/connection_pool/timed_queue.rb +257 -0
- data/lib/sequel/connection_pool.rb +47 -30
- data/lib/sequel/core.rb +28 -18
- data/lib/sequel/database/connecting.rb +26 -2
- data/lib/sequel/database/misc.rb +69 -14
- data/lib/sequel/database/query.rb +38 -1
- data/lib/sequel/database/schema_generator.rb +45 -52
- data/lib/sequel/database/schema_methods.rb +17 -1
- data/lib/sequel/dataset/actions.rb +107 -13
- data/lib/sequel/dataset/features.rb +20 -0
- data/lib/sequel/dataset/misc.rb +1 -1
- data/lib/sequel/dataset/prepared_statements.rb +2 -0
- data/lib/sequel/dataset/query.rb +118 -16
- data/lib/sequel/dataset/sql.rb +177 -47
- data/lib/sequel/extensions/_model_pg_row.rb +0 -12
- data/lib/sequel/extensions/_pretty_table.rb +1 -1
- data/lib/sequel/extensions/any_not_empty.rb +1 -1
- data/lib/sequel/extensions/async_thread_pool.rb +438 -0
- data/lib/sequel/extensions/auto_literal_strings.rb +1 -1
- data/lib/sequel/extensions/blank.rb +8 -0
- data/lib/sequel/extensions/constraint_validations.rb +1 -1
- data/lib/sequel/extensions/core_refinements.rb +36 -11
- data/lib/sequel/extensions/date_arithmetic.rb +71 -31
- data/lib/sequel/extensions/date_parse_input_handler.rb +67 -0
- data/lib/sequel/extensions/datetime_parse_to_time.rb +5 -1
- data/lib/sequel/extensions/duplicate_columns_handler.rb +1 -1
- data/lib/sequel/extensions/eval_inspect.rb +2 -0
- data/lib/sequel/extensions/inflector.rb +9 -1
- data/lib/sequel/extensions/is_distinct_from.rb +141 -0
- data/lib/sequel/extensions/looser_typecasting.rb +3 -0
- data/lib/sequel/extensions/migration.rb +7 -2
- data/lib/sequel/extensions/named_timezones.rb +26 -6
- data/lib/sequel/extensions/pagination.rb +1 -1
- data/lib/sequel/extensions/pg_array.rb +23 -3
- data/lib/sequel/extensions/pg_array_ops.rb +2 -2
- data/lib/sequel/extensions/pg_auto_parameterize.rb +478 -0
- data/lib/sequel/extensions/pg_enum.rb +1 -1
- data/lib/sequel/extensions/pg_extended_date_support.rb +28 -25
- data/lib/sequel/extensions/pg_extended_integer_support.rb +116 -0
- data/lib/sequel/extensions/pg_hstore.rb +6 -1
- data/lib/sequel/extensions/pg_hstore_ops.rb +53 -3
- data/lib/sequel/extensions/pg_inet.rb +10 -11
- data/lib/sequel/extensions/pg_inet_ops.rb +1 -1
- data/lib/sequel/extensions/pg_interval.rb +45 -19
- data/lib/sequel/extensions/pg_json.rb +13 -15
- data/lib/sequel/extensions/pg_json_ops.rb +73 -2
- data/lib/sequel/extensions/pg_loose_count.rb +3 -1
- data/lib/sequel/extensions/pg_multirange.rb +367 -0
- data/lib/sequel/extensions/pg_range.rb +10 -23
- data/lib/sequel/extensions/pg_range_ops.rb +37 -9
- data/lib/sequel/extensions/pg_row.rb +19 -13
- data/lib/sequel/extensions/pg_row_ops.rb +1 -1
- data/lib/sequel/extensions/query.rb +2 -0
- data/lib/sequel/extensions/s.rb +2 -1
- data/lib/sequel/extensions/schema_dumper.rb +13 -2
- data/lib/sequel/extensions/server_block.rb +8 -12
- data/lib/sequel/extensions/sql_comments.rb +110 -3
- data/lib/sequel/extensions/sql_log_normalizer.rb +108 -0
- data/lib/sequel/extensions/sqlite_json_ops.rb +255 -0
- data/lib/sequel/extensions/string_agg.rb +1 -1
- data/lib/sequel/extensions/string_date_time.rb +19 -23
- data/lib/sequel/extensions/symbol_aref.rb +2 -0
- data/lib/sequel/model/associations.rb +325 -96
- data/lib/sequel/model/base.rb +51 -27
- data/lib/sequel/model/errors.rb +10 -1
- data/lib/sequel/model/inflections.rb +1 -1
- data/lib/sequel/model/plugins.rb +5 -0
- data/lib/sequel/plugins/association_proxies.rb +2 -0
- data/lib/sequel/plugins/async_thread_pool.rb +39 -0
- data/lib/sequel/plugins/auto_restrict_eager_graph.rb +62 -0
- data/lib/sequel/plugins/auto_validations.rb +87 -15
- data/lib/sequel/plugins/auto_validations_constraint_validations_presence_message.rb +68 -0
- data/lib/sequel/plugins/class_table_inheritance.rb +2 -2
- data/lib/sequel/plugins/column_encryption.rb +728 -0
- data/lib/sequel/plugins/composition.rb +10 -4
- data/lib/sequel/plugins/concurrent_eager_loading.rb +174 -0
- data/lib/sequel/plugins/constraint_validations.rb +2 -1
- data/lib/sequel/plugins/dataset_associations.rb +4 -1
- data/lib/sequel/plugins/dirty.rb +1 -1
- data/lib/sequel/plugins/enum.rb +124 -0
- data/lib/sequel/plugins/finder.rb +3 -1
- data/lib/sequel/plugins/insert_conflict.rb +4 -0
- data/lib/sequel/plugins/instance_specific_default.rb +1 -1
- data/lib/sequel/plugins/json_serializer.rb +39 -24
- data/lib/sequel/plugins/lazy_attributes.rb +3 -0
- data/lib/sequel/plugins/list.rb +3 -1
- data/lib/sequel/plugins/many_through_many.rb +108 -9
- data/lib/sequel/plugins/nested_attributes.rb +12 -7
- data/lib/sequel/plugins/pg_array_associations.rb +56 -38
- data/lib/sequel/plugins/pg_auto_constraint_validations.rb +3 -1
- data/lib/sequel/plugins/prepared_statements.rb +10 -1
- data/lib/sequel/plugins/primary_key_lookup_check_values.rb +154 -0
- data/lib/sequel/plugins/rcte_tree.rb +27 -19
- data/lib/sequel/plugins/require_valid_schema.rb +67 -0
- data/lib/sequel/plugins/serialization.rb +9 -3
- data/lib/sequel/plugins/serialization_modification_detection.rb +2 -1
- data/lib/sequel/plugins/single_table_inheritance.rb +8 -0
- data/lib/sequel/plugins/sql_comments.rb +189 -0
- data/lib/sequel/plugins/static_cache.rb +1 -1
- data/lib/sequel/plugins/subclasses.rb +28 -11
- data/lib/sequel/plugins/tactical_eager_loading.rb +23 -10
- data/lib/sequel/plugins/timestamps.rb +1 -1
- data/lib/sequel/plugins/unused_associations.rb +521 -0
- data/lib/sequel/plugins/update_or_create.rb +1 -1
- data/lib/sequel/plugins/validate_associated.rb +22 -12
- data/lib/sequel/plugins/validation_helpers.rb +38 -11
- data/lib/sequel/plugins/xml_serializer.rb +1 -1
- data/lib/sequel/sql.rb +1 -1
- data/lib/sequel/timezones.rb +12 -14
- data/lib/sequel/version.rb +1 -1
- metadata +97 -43
|
@@ -36,6 +36,7 @@ module Sequel
|
|
|
36
36
|
# :message :: The message to use. Can be a string which is used directly, or a
|
|
37
37
|
# proc which is called. If the validation method takes a argument before the array of attributes,
|
|
38
38
|
# that argument is passed as an argument to the proc.
|
|
39
|
+
# :skip_invalid :: Do not try to validate columns that are already invalid.
|
|
39
40
|
#
|
|
40
41
|
# The default validation options for all models can be modified by
|
|
41
42
|
# overridding the Model#default_validation_helpers_options private method.
|
|
@@ -65,16 +66,13 @@ module Sequel
|
|
|
65
66
|
# integer: "is not a number"
|
|
66
67
|
#
|
|
67
68
|
# Note that if you want to support internationalization of Errors#full_messages,
|
|
68
|
-
#
|
|
69
|
+
# it is easiest to override Errors#full_message (note singular form and not plural form).
|
|
70
|
+
# Here's an example:
|
|
69
71
|
#
|
|
70
72
|
# class Sequel::Model::Errors
|
|
71
|
-
#
|
|
72
|
-
#
|
|
73
|
-
#
|
|
74
|
-
# att.is_a?(Array) ? Array(att).map!{|v| I18n.t("attributes.#{v}")} : att = I18n.t("attributes.#{att}")
|
|
75
|
-
# errors.each {|e| m << (e.is_a?(LiteralString) ? e : "#{Array(att).join(I18n.t('errors.joiner'))} #{e}")}
|
|
76
|
-
# m
|
|
77
|
-
# end
|
|
73
|
+
# private
|
|
74
|
+
# def full_message(attribute, error_msg)
|
|
75
|
+
# "#{Array(attribute).join(I18n.t('errors.joiner'))} #{error_msg}"
|
|
78
76
|
# end
|
|
79
77
|
# end
|
|
80
78
|
module ValidationHelpers
|
|
@@ -85,8 +83,11 @@ module Sequel
|
|
|
85
83
|
:integer=>{:message=>lambda{"is not a number"}},
|
|
86
84
|
:length_range=>{:message=>lambda{|range| "is too short or too long"}},
|
|
87
85
|
:max_length=>{:message=>lambda{|max| "is longer than #{max} characters"}, :nil_message=>lambda{"is not present"}},
|
|
86
|
+
:max_value=>{:message=>lambda{|max| "is greater than maximum allowed value"}},
|
|
88
87
|
:min_length=>{:message=>lambda{|min| "is shorter than #{min} characters"}},
|
|
88
|
+
:min_value=>{:message=>lambda{|min| "is less than minimum allowed value"}},
|
|
89
89
|
:not_null=>{:message=>lambda{"is not present"}},
|
|
90
|
+
:no_null_byte=>{:message=>lambda{"contains a null byte"}},
|
|
90
91
|
:numeric=>{:message=>lambda{"is not a number"}},
|
|
91
92
|
:operator=>{:message=>lambda{|operator, rhs| "is not #{operator} #{rhs}"}},
|
|
92
93
|
:type=>{:message=>lambda{|klass| klass.is_a?(Array) ? "is not a valid #{klass.join(" or ").downcase}" : "is not a valid #{klass.to_s.downcase}"}},
|
|
@@ -142,15 +143,38 @@ module Sequel
|
|
|
142
143
|
end
|
|
143
144
|
end
|
|
144
145
|
|
|
146
|
+
# Check that the attribute values are not greater that the given maximum value.
|
|
147
|
+
# Does not perform validation if attribute value is nil.
|
|
148
|
+
# You should only call this if you have checked the attribute value has the expected type.
|
|
149
|
+
def validates_max_value(max, atts, opts=OPTS)
|
|
150
|
+
validatable_attributes_for_type(:max_value, atts, opts) do |a,v,m|
|
|
151
|
+
validation_error_message(m, max) if !v.nil? && v > max
|
|
152
|
+
end
|
|
153
|
+
end
|
|
154
|
+
|
|
145
155
|
# Check that the attribute values are not shorter than the given min length.
|
|
146
156
|
def validates_min_length(min, atts, opts=OPTS)
|
|
147
157
|
validatable_attributes_for_type(:min_length, atts, opts){|a,v,m| validation_error_message(m, min) if v.nil? || v.length < min}
|
|
148
158
|
end
|
|
149
159
|
|
|
160
|
+
# Check that the attribute values are not less that the given minimum value.
|
|
161
|
+
# Does not perform validation if attribute value is nil.
|
|
162
|
+
# You should only call this if you have checked the attribute value has the expected type.
|
|
163
|
+
def validates_min_value(min, atts, opts=OPTS)
|
|
164
|
+
validatable_attributes_for_type(:min_value, atts, opts) do |a,v,m|
|
|
165
|
+
validation_error_message(m, min) if !v.nil? && v < min
|
|
166
|
+
end
|
|
167
|
+
end
|
|
168
|
+
|
|
150
169
|
# Check attribute value(s) are not NULL/nil.
|
|
151
170
|
def validates_not_null(atts, opts=OPTS)
|
|
152
171
|
validatable_attributes_for_type(:not_null, atts, opts){|a,v,m| validation_error_message(m) if v.nil?}
|
|
153
172
|
end
|
|
173
|
+
|
|
174
|
+
# Check attribute value(s) does not contain a null ("\0", ASCII NUL) byte.
|
|
175
|
+
def validates_no_null_byte(atts, opts=OPTS)
|
|
176
|
+
validatable_attributes_for_type(:no_null_byte, atts, opts){|a,v,m| validation_error_message(m) if String === v && v.include?("\0")}
|
|
177
|
+
end
|
|
154
178
|
|
|
155
179
|
# Check attribute value(s) string representation is a valid float.
|
|
156
180
|
def validates_numeric(atts, opts=OPTS)
|
|
@@ -262,7 +286,7 @@ module Sequel
|
|
|
262
286
|
next if vals.any?(&:nil?)
|
|
263
287
|
ds.where(arr.zip(vals))
|
|
264
288
|
end
|
|
265
|
-
ds = yield(ds) if
|
|
289
|
+
ds = yield(ds) if defined?(yield)
|
|
266
290
|
unless new?
|
|
267
291
|
h = ds.joined_dataset? ? qualified_pk_hash : pk_hash
|
|
268
292
|
ds = ds.exclude(h)
|
|
@@ -281,14 +305,17 @@ module Sequel
|
|
|
281
305
|
DEFAULT_OPTIONS[type]
|
|
282
306
|
end
|
|
283
307
|
|
|
284
|
-
# Skip validating any attribute that matches one of the allow_* options
|
|
308
|
+
# Skip validating any attribute that matches one of the allow_* options,
|
|
309
|
+
# or already has an error if the skip_invalid option is given.
|
|
310
|
+
#
|
|
285
311
|
# Otherwise, yield the attribute, value, and passed option :message to
|
|
286
312
|
# the block. If the block returns anything except nil or false, add it as
|
|
287
313
|
# an error message for that attributes.
|
|
288
314
|
def validatable_attributes(atts, opts)
|
|
289
|
-
am, an, ab, m = opts.values_at(:allow_missing, :allow_nil, :allow_blank, :message)
|
|
315
|
+
am, an, ab, m, si = opts.values_at(:allow_missing, :allow_nil, :allow_blank, :message, :skip_invalid)
|
|
290
316
|
from_values = opts[:from] == :values
|
|
291
317
|
Array(atts).each do |a|
|
|
318
|
+
next if si && errors.on(a)
|
|
292
319
|
next if am && !values.has_key?(a)
|
|
293
320
|
v = from_values ? values[a] : get_column_value(a)
|
|
294
321
|
next if an && v.nil?
|
data/lib/sequel/sql.rb
CHANGED
data/lib/sequel/timezones.rb
CHANGED
|
@@ -82,22 +82,20 @@ module Sequel
|
|
|
82
82
|
# +application_timezone+ using +convert_input_timestamp+ and
|
|
83
83
|
# +convert_output_timestamp+.
|
|
84
84
|
def convert_timestamp(v, input_timezone)
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
DateTime.civil(v.year, v.month, v.day, 0, 0, 0, application_timezone == :local ? Rational(Time.local(v.year, v.month, v.day).utc_offset, 86400) : 0)
|
|
90
|
-
else
|
|
91
|
-
Time.public_send(application_timezone == :utc ? :utc : :local, v.year, v.month, v.day)
|
|
92
|
-
end
|
|
85
|
+
if v.is_a?(Date) && !v.is_a?(DateTime)
|
|
86
|
+
# Dates handled specially as they are assumed to already be in the application_timezone
|
|
87
|
+
if datetime_class == DateTime
|
|
88
|
+
DateTime.civil(v.year, v.month, v.day, 0, 0, 0, application_timezone == :local ? Rational(Time.local(v.year, v.month, v.day).utc_offset, 86400) : 0)
|
|
93
89
|
else
|
|
94
|
-
|
|
90
|
+
Time.public_send(application_timezone == :utc ? :utc : :local, v.year, v.month, v.day)
|
|
95
91
|
end
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
rescue => e
|
|
99
|
-
raise convert_exception_class(e, InvalidValue)
|
|
92
|
+
else
|
|
93
|
+
convert_output_timestamp(convert_input_timestamp(v, input_timezone), application_timezone)
|
|
100
94
|
end
|
|
95
|
+
rescue InvalidValue
|
|
96
|
+
raise
|
|
97
|
+
rescue => e
|
|
98
|
+
raise convert_exception_class(e, InvalidValue)
|
|
101
99
|
end
|
|
102
100
|
|
|
103
101
|
# Convert the given object into an object of <tt>Sequel.datetime_class</tt> in the
|
|
@@ -158,7 +156,7 @@ module Sequel
|
|
|
158
156
|
case v
|
|
159
157
|
when String
|
|
160
158
|
v2 = Sequel.string_to_datetime(v)
|
|
161
|
-
if !input_timezone ||
|
|
159
|
+
if !input_timezone || _date_parse(v).has_key?(:offset)
|
|
162
160
|
v2
|
|
163
161
|
else
|
|
164
162
|
# Correct for potentially wrong offset if string doesn't include offset
|
data/lib/sequel/version.rb
CHANGED
|
@@ -6,7 +6,7 @@ module Sequel
|
|
|
6
6
|
|
|
7
7
|
# The minor version of Sequel. Bumped for every non-patch level
|
|
8
8
|
# release, generally around once a month.
|
|
9
|
-
MINOR =
|
|
9
|
+
MINOR = 63
|
|
10
10
|
|
|
11
11
|
# The tiny version of Sequel. Usually 0, only bumped for bugfix
|
|
12
12
|
# releases that fix regressions from previous versions.
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: sequel
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 5.
|
|
4
|
+
version: 5.63.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jeremy Evans
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2022-12-01 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: minitest
|
|
@@ -52,20 +52,6 @@ dependencies:
|
|
|
52
52
|
- - ">="
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
54
|
version: '0'
|
|
55
|
-
- !ruby/object:Gem::Dependency
|
|
56
|
-
name: minitest-shared_description
|
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
|
58
|
-
requirements:
|
|
59
|
-
- - ">="
|
|
60
|
-
- !ruby/object:Gem::Version
|
|
61
|
-
version: '0'
|
|
62
|
-
type: :development
|
|
63
|
-
prerelease: false
|
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
-
requirements:
|
|
66
|
-
- - ">="
|
|
67
|
-
- !ruby/object:Gem::Version
|
|
68
|
-
version: '0'
|
|
69
55
|
- !ruby/object:Gem::Dependency
|
|
70
56
|
name: tzinfo
|
|
71
57
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -117,9 +103,8 @@ extra_rdoc_files:
|
|
|
117
103
|
- README.rdoc
|
|
118
104
|
- CHANGELOG
|
|
119
105
|
- MIT-LICENSE
|
|
120
|
-
- doc/association_basics.rdoc
|
|
121
|
-
- doc/model_dataset_method_design.rdoc
|
|
122
106
|
- doc/advanced_associations.rdoc
|
|
107
|
+
- doc/association_basics.rdoc
|
|
123
108
|
- doc/bin_sequel.rdoc
|
|
124
109
|
- doc/cheat_sheet.rdoc
|
|
125
110
|
- doc/code_order.rdoc
|
|
@@ -127,37 +112,30 @@ extra_rdoc_files:
|
|
|
127
112
|
- doc/dataset_basics.rdoc
|
|
128
113
|
- doc/dataset_filtering.rdoc
|
|
129
114
|
- doc/extensions.rdoc
|
|
115
|
+
- doc/fork_safety.rdoc
|
|
130
116
|
- doc/mass_assignment.rdoc
|
|
131
117
|
- doc/migration.rdoc
|
|
132
|
-
- doc/
|
|
118
|
+
- doc/model_dataset_method_design.rdoc
|
|
133
119
|
- doc/model_hooks.rdoc
|
|
134
120
|
- doc/model_plugins.rdoc
|
|
135
|
-
- doc/object_model.rdoc
|
|
136
|
-
- doc/sql.rdoc
|
|
137
121
|
- doc/mssql_stored_procedures.rdoc
|
|
138
|
-
- doc/
|
|
122
|
+
- doc/object_model.rdoc
|
|
123
|
+
- doc/opening_databases.rdoc
|
|
139
124
|
- doc/postgresql.rdoc
|
|
140
|
-
- doc/querying.rdoc
|
|
141
125
|
- doc/prepared_statements.rdoc
|
|
126
|
+
- doc/querying.rdoc
|
|
142
127
|
- doc/reflection.rdoc
|
|
143
|
-
- doc/security.rdoc
|
|
144
|
-
- doc/virtual_rows.rdoc
|
|
145
128
|
- doc/schema_modification.rdoc
|
|
129
|
+
- doc/security.rdoc
|
|
146
130
|
- doc/sharding.rdoc
|
|
131
|
+
- doc/sql.rdoc
|
|
147
132
|
- doc/testing.rdoc
|
|
148
|
-
- doc/
|
|
133
|
+
- doc/thread_safety.rdoc
|
|
149
134
|
- doc/transactions.rdoc
|
|
150
|
-
- doc/
|
|
151
|
-
- doc/
|
|
152
|
-
- doc/release_notes/5.6.0.txt
|
|
135
|
+
- doc/validations.rdoc
|
|
136
|
+
- doc/virtual_rows.rdoc
|
|
153
137
|
- doc/release_notes/5.0.0.txt
|
|
154
138
|
- doc/release_notes/5.1.0.txt
|
|
155
|
-
- doc/release_notes/5.2.0.txt
|
|
156
|
-
- doc/release_notes/5.3.0.txt
|
|
157
|
-
- doc/release_notes/5.4.0.txt
|
|
158
|
-
- doc/release_notes/5.8.0.txt
|
|
159
|
-
- doc/release_notes/5.7.0.txt
|
|
160
|
-
- doc/release_notes/5.9.0.txt
|
|
161
139
|
- doc/release_notes/5.10.0.txt
|
|
162
140
|
- doc/release_notes/5.11.0.txt
|
|
163
141
|
- doc/release_notes/5.12.0.txt
|
|
@@ -168,6 +146,7 @@ extra_rdoc_files:
|
|
|
168
146
|
- doc/release_notes/5.17.0.txt
|
|
169
147
|
- doc/release_notes/5.18.0.txt
|
|
170
148
|
- doc/release_notes/5.19.0.txt
|
|
149
|
+
- doc/release_notes/5.2.0.txt
|
|
171
150
|
- doc/release_notes/5.20.0.txt
|
|
172
151
|
- doc/release_notes/5.21.0.txt
|
|
173
152
|
- doc/release_notes/5.22.0.txt
|
|
@@ -178,6 +157,7 @@ extra_rdoc_files:
|
|
|
178
157
|
- doc/release_notes/5.27.0.txt
|
|
179
158
|
- doc/release_notes/5.28.0.txt
|
|
180
159
|
- doc/release_notes/5.29.0.txt
|
|
160
|
+
- doc/release_notes/5.3.0.txt
|
|
181
161
|
- doc/release_notes/5.30.0.txt
|
|
182
162
|
- doc/release_notes/5.31.0.txt
|
|
183
163
|
- doc/release_notes/5.32.0.txt
|
|
@@ -188,6 +168,36 @@ extra_rdoc_files:
|
|
|
188
168
|
- doc/release_notes/5.37.0.txt
|
|
189
169
|
- doc/release_notes/5.38.0.txt
|
|
190
170
|
- doc/release_notes/5.39.0.txt
|
|
171
|
+
- doc/release_notes/5.4.0.txt
|
|
172
|
+
- doc/release_notes/5.40.0.txt
|
|
173
|
+
- doc/release_notes/5.41.0.txt
|
|
174
|
+
- doc/release_notes/5.42.0.txt
|
|
175
|
+
- doc/release_notes/5.43.0.txt
|
|
176
|
+
- doc/release_notes/5.44.0.txt
|
|
177
|
+
- doc/release_notes/5.45.0.txt
|
|
178
|
+
- doc/release_notes/5.46.0.txt
|
|
179
|
+
- doc/release_notes/5.47.0.txt
|
|
180
|
+
- doc/release_notes/5.48.0.txt
|
|
181
|
+
- doc/release_notes/5.49.0.txt
|
|
182
|
+
- doc/release_notes/5.5.0.txt
|
|
183
|
+
- doc/release_notes/5.50.0.txt
|
|
184
|
+
- doc/release_notes/5.51.0.txt
|
|
185
|
+
- doc/release_notes/5.52.0.txt
|
|
186
|
+
- doc/release_notes/5.53.0.txt
|
|
187
|
+
- doc/release_notes/5.54.0.txt
|
|
188
|
+
- doc/release_notes/5.55.0.txt
|
|
189
|
+
- doc/release_notes/5.56.0.txt
|
|
190
|
+
- doc/release_notes/5.57.0.txt
|
|
191
|
+
- doc/release_notes/5.58.0.txt
|
|
192
|
+
- doc/release_notes/5.59.0.txt
|
|
193
|
+
- doc/release_notes/5.6.0.txt
|
|
194
|
+
- doc/release_notes/5.60.0.txt
|
|
195
|
+
- doc/release_notes/5.61.0.txt
|
|
196
|
+
- doc/release_notes/5.62.0.txt
|
|
197
|
+
- doc/release_notes/5.63.0.txt
|
|
198
|
+
- doc/release_notes/5.7.0.txt
|
|
199
|
+
- doc/release_notes/5.8.0.txt
|
|
200
|
+
- doc/release_notes/5.9.0.txt
|
|
191
201
|
files:
|
|
192
202
|
- CHANGELOG
|
|
193
203
|
- MIT-LICENSE
|
|
@@ -250,8 +260,32 @@ files:
|
|
|
250
260
|
- doc/release_notes/5.38.0.txt
|
|
251
261
|
- doc/release_notes/5.39.0.txt
|
|
252
262
|
- doc/release_notes/5.4.0.txt
|
|
263
|
+
- doc/release_notes/5.40.0.txt
|
|
264
|
+
- doc/release_notes/5.41.0.txt
|
|
265
|
+
- doc/release_notes/5.42.0.txt
|
|
266
|
+
- doc/release_notes/5.43.0.txt
|
|
267
|
+
- doc/release_notes/5.44.0.txt
|
|
268
|
+
- doc/release_notes/5.45.0.txt
|
|
269
|
+
- doc/release_notes/5.46.0.txt
|
|
270
|
+
- doc/release_notes/5.47.0.txt
|
|
271
|
+
- doc/release_notes/5.48.0.txt
|
|
272
|
+
- doc/release_notes/5.49.0.txt
|
|
253
273
|
- doc/release_notes/5.5.0.txt
|
|
274
|
+
- doc/release_notes/5.50.0.txt
|
|
275
|
+
- doc/release_notes/5.51.0.txt
|
|
276
|
+
- doc/release_notes/5.52.0.txt
|
|
277
|
+
- doc/release_notes/5.53.0.txt
|
|
278
|
+
- doc/release_notes/5.54.0.txt
|
|
279
|
+
- doc/release_notes/5.55.0.txt
|
|
280
|
+
- doc/release_notes/5.56.0.txt
|
|
281
|
+
- doc/release_notes/5.57.0.txt
|
|
282
|
+
- doc/release_notes/5.58.0.txt
|
|
283
|
+
- doc/release_notes/5.59.0.txt
|
|
254
284
|
- doc/release_notes/5.6.0.txt
|
|
285
|
+
- doc/release_notes/5.60.0.txt
|
|
286
|
+
- doc/release_notes/5.61.0.txt
|
|
287
|
+
- doc/release_notes/5.62.0.txt
|
|
288
|
+
- doc/release_notes/5.63.0.txt
|
|
255
289
|
- doc/release_notes/5.7.0.txt
|
|
256
290
|
- doc/release_notes/5.8.0.txt
|
|
257
291
|
- doc/release_notes/5.9.0.txt
|
|
@@ -305,6 +339,7 @@ files:
|
|
|
305
339
|
- lib/sequel/adapters/sqlanywhere.rb
|
|
306
340
|
- lib/sequel/adapters/sqlite.rb
|
|
307
341
|
- lib/sequel/adapters/tinytds.rb
|
|
342
|
+
- lib/sequel/adapters/utils/columns_limit_1.rb
|
|
308
343
|
- lib/sequel/adapters/utils/emulate_offset_with_reverse_and_count.rb
|
|
309
344
|
- lib/sequel/adapters/utils/emulate_offset_with_row_number.rb
|
|
310
345
|
- lib/sequel/adapters/utils/mysql_mysql2.rb
|
|
@@ -319,6 +354,7 @@ files:
|
|
|
319
354
|
- lib/sequel/connection_pool/sharded_threaded.rb
|
|
320
355
|
- lib/sequel/connection_pool/single.rb
|
|
321
356
|
- lib/sequel/connection_pool/threaded.rb
|
|
357
|
+
- lib/sequel/connection_pool/timed_queue.rb
|
|
322
358
|
- lib/sequel/core.rb
|
|
323
359
|
- lib/sequel/database.rb
|
|
324
360
|
- lib/sequel/database/connecting.rb
|
|
@@ -348,6 +384,7 @@ files:
|
|
|
348
384
|
- lib/sequel/extensions/_pretty_table.rb
|
|
349
385
|
- lib/sequel/extensions/any_not_empty.rb
|
|
350
386
|
- lib/sequel/extensions/arbitrary_servers.rb
|
|
387
|
+
- lib/sequel/extensions/async_thread_pool.rb
|
|
351
388
|
- lib/sequel/extensions/auto_literal_strings.rb
|
|
352
389
|
- lib/sequel/extensions/blank.rb
|
|
353
390
|
- lib/sequel/extensions/caller_logging.rb
|
|
@@ -361,6 +398,7 @@ files:
|
|
|
361
398
|
- lib/sequel/extensions/current_datetime_timestamp.rb
|
|
362
399
|
- lib/sequel/extensions/dataset_source_alias.rb
|
|
363
400
|
- lib/sequel/extensions/date_arithmetic.rb
|
|
401
|
+
- lib/sequel/extensions/date_parse_input_handler.rb
|
|
364
402
|
- lib/sequel/extensions/datetime_parse_to_time.rb
|
|
365
403
|
- lib/sequel/extensions/duplicate_columns_handler.rb
|
|
366
404
|
- lib/sequel/extensions/empty_array_consider_nulls.rb
|
|
@@ -377,6 +415,7 @@ files:
|
|
|
377
415
|
- lib/sequel/extensions/index_caching.rb
|
|
378
416
|
- lib/sequel/extensions/inflector.rb
|
|
379
417
|
- lib/sequel/extensions/integer64.rb
|
|
418
|
+
- lib/sequel/extensions/is_distinct_from.rb
|
|
380
419
|
- lib/sequel/extensions/looser_typecasting.rb
|
|
381
420
|
- lib/sequel/extensions/migration.rb
|
|
382
421
|
- lib/sequel/extensions/mssql_emulate_lateral_with_apply.rb
|
|
@@ -386,8 +425,10 @@ files:
|
|
|
386
425
|
- lib/sequel/extensions/pagination.rb
|
|
387
426
|
- lib/sequel/extensions/pg_array.rb
|
|
388
427
|
- lib/sequel/extensions/pg_array_ops.rb
|
|
428
|
+
- lib/sequel/extensions/pg_auto_parameterize.rb
|
|
389
429
|
- lib/sequel/extensions/pg_enum.rb
|
|
390
430
|
- lib/sequel/extensions/pg_extended_date_support.rb
|
|
431
|
+
- lib/sequel/extensions/pg_extended_integer_support.rb
|
|
391
432
|
- lib/sequel/extensions/pg_hstore.rb
|
|
392
433
|
- lib/sequel/extensions/pg_hstore_ops.rb
|
|
393
434
|
- lib/sequel/extensions/pg_inet.rb
|
|
@@ -396,6 +437,7 @@ files:
|
|
|
396
437
|
- lib/sequel/extensions/pg_json.rb
|
|
397
438
|
- lib/sequel/extensions/pg_json_ops.rb
|
|
398
439
|
- lib/sequel/extensions/pg_loose_count.rb
|
|
440
|
+
- lib/sequel/extensions/pg_multirange.rb
|
|
399
441
|
- lib/sequel/extensions/pg_range.rb
|
|
400
442
|
- lib/sequel/extensions/pg_range_ops.rb
|
|
401
443
|
- lib/sequel/extensions/pg_row.rb
|
|
@@ -416,6 +458,8 @@ files:
|
|
|
416
458
|
- lib/sequel/extensions/split_array_nil.rb
|
|
417
459
|
- lib/sequel/extensions/sql_comments.rb
|
|
418
460
|
- lib/sequel/extensions/sql_expr.rb
|
|
461
|
+
- lib/sequel/extensions/sql_log_normalizer.rb
|
|
462
|
+
- lib/sequel/extensions/sqlite_json_ops.rb
|
|
419
463
|
- lib/sequel/extensions/string_agg.rb
|
|
420
464
|
- lib/sequel/extensions/string_date_time.rb
|
|
421
465
|
- lib/sequel/extensions/symbol_aref.rb
|
|
@@ -443,7 +487,10 @@ files:
|
|
|
443
487
|
- lib/sequel/plugins/association_multi_add_remove.rb
|
|
444
488
|
- lib/sequel/plugins/association_pks.rb
|
|
445
489
|
- lib/sequel/plugins/association_proxies.rb
|
|
490
|
+
- lib/sequel/plugins/async_thread_pool.rb
|
|
491
|
+
- lib/sequel/plugins/auto_restrict_eager_graph.rb
|
|
446
492
|
- lib/sequel/plugins/auto_validations.rb
|
|
493
|
+
- lib/sequel/plugins/auto_validations_constraint_validations_presence_message.rb
|
|
447
494
|
- lib/sequel/plugins/before_after_save.rb
|
|
448
495
|
- lib/sequel/plugins/blacklist_security.rb
|
|
449
496
|
- lib/sequel/plugins/boolean_readers.rb
|
|
@@ -451,9 +498,11 @@ files:
|
|
|
451
498
|
- lib/sequel/plugins/caching.rb
|
|
452
499
|
- lib/sequel/plugins/class_table_inheritance.rb
|
|
453
500
|
- lib/sequel/plugins/column_conflicts.rb
|
|
501
|
+
- lib/sequel/plugins/column_encryption.rb
|
|
454
502
|
- lib/sequel/plugins/column_select.rb
|
|
455
503
|
- lib/sequel/plugins/columns_updated.rb
|
|
456
504
|
- lib/sequel/plugins/composition.rb
|
|
505
|
+
- lib/sequel/plugins/concurrent_eager_loading.rb
|
|
457
506
|
- lib/sequel/plugins/constraint_validations.rb
|
|
458
507
|
- lib/sequel/plugins/csv_serializer.rb
|
|
459
508
|
- lib/sequel/plugins/dataset_associations.rb
|
|
@@ -464,6 +513,7 @@ files:
|
|
|
464
513
|
- lib/sequel/plugins/eager_each.rb
|
|
465
514
|
- lib/sequel/plugins/eager_graph_eager.rb
|
|
466
515
|
- lib/sequel/plugins/empty_failure_backtraces.rb
|
|
516
|
+
- lib/sequel/plugins/enum.rb
|
|
467
517
|
- lib/sequel/plugins/error_splitter.rb
|
|
468
518
|
- lib/sequel/plugins/finder.rb
|
|
469
519
|
- lib/sequel/plugins/forbid_lazy_load.rb
|
|
@@ -489,7 +539,9 @@ files:
|
|
|
489
539
|
- lib/sequel/plugins/pg_row.rb
|
|
490
540
|
- lib/sequel/plugins/prepared_statements.rb
|
|
491
541
|
- lib/sequel/plugins/prepared_statements_safe.rb
|
|
542
|
+
- lib/sequel/plugins/primary_key_lookup_check_values.rb
|
|
492
543
|
- lib/sequel/plugins/rcte_tree.rb
|
|
544
|
+
- lib/sequel/plugins/require_valid_schema.rb
|
|
493
545
|
- lib/sequel/plugins/serialization.rb
|
|
494
546
|
- lib/sequel/plugins/serialization_modification_detection.rb
|
|
495
547
|
- lib/sequel/plugins/sharding.rb
|
|
@@ -498,6 +550,7 @@ files:
|
|
|
498
550
|
- lib/sequel/plugins/skip_create_refresh.rb
|
|
499
551
|
- lib/sequel/plugins/skip_saving_columns.rb
|
|
500
552
|
- lib/sequel/plugins/split_values.rb
|
|
553
|
+
- lib/sequel/plugins/sql_comments.rb
|
|
501
554
|
- lib/sequel/plugins/static_cache.rb
|
|
502
555
|
- lib/sequel/plugins/static_cache_cache.rb
|
|
503
556
|
- lib/sequel/plugins/string_stripper.rb
|
|
@@ -511,6 +564,7 @@ files:
|
|
|
511
564
|
- lib/sequel/plugins/tree.rb
|
|
512
565
|
- lib/sequel/plugins/typecast_on_load.rb
|
|
513
566
|
- lib/sequel/plugins/unlimited_update.rb
|
|
567
|
+
- lib/sequel/plugins/unused_associations.rb
|
|
514
568
|
- lib/sequel/plugins/update_or_create.rb
|
|
515
569
|
- lib/sequel/plugins/update_primary_key.rb
|
|
516
570
|
- lib/sequel/plugins/update_refresh.rb
|
|
@@ -524,16 +578,16 @@ files:
|
|
|
524
578
|
- lib/sequel/sql.rb
|
|
525
579
|
- lib/sequel/timezones.rb
|
|
526
580
|
- lib/sequel/version.rb
|
|
527
|
-
homepage:
|
|
581
|
+
homepage: https://sequel.jeremyevans.net
|
|
528
582
|
licenses:
|
|
529
583
|
- MIT
|
|
530
584
|
metadata:
|
|
531
585
|
bug_tracker_uri: https://github.com/jeremyevans/sequel/issues
|
|
532
|
-
changelog_uri:
|
|
533
|
-
documentation_uri:
|
|
534
|
-
mailing_list_uri: https://
|
|
586
|
+
changelog_uri: https://sequel.jeremyevans.net/rdoc/files/CHANGELOG.html
|
|
587
|
+
documentation_uri: https://sequel.jeremyevans.net/documentation.html
|
|
588
|
+
mailing_list_uri: https://github.com/jeremyevans/sequel/discussions
|
|
535
589
|
source_code_uri: https://github.com/jeremyevans/sequel
|
|
536
|
-
post_install_message:
|
|
590
|
+
post_install_message:
|
|
537
591
|
rdoc_options:
|
|
538
592
|
- "--quiet"
|
|
539
593
|
- "--line-numbers"
|
|
@@ -555,8 +609,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
555
609
|
- !ruby/object:Gem::Version
|
|
556
610
|
version: '0'
|
|
557
611
|
requirements: []
|
|
558
|
-
rubygems_version: 3.
|
|
559
|
-
signing_key:
|
|
612
|
+
rubygems_version: 3.3.26
|
|
613
|
+
signing_key:
|
|
560
614
|
specification_version: 4
|
|
561
615
|
summary: The Database Toolkit for Ruby
|
|
562
616
|
test_files: []
|