sequel 5.83.0 → 5.106.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.
Files changed (259) hide show
  1. checksums.yaml +4 -4
  2. data/MIT-LICENSE +1 -1
  3. data/lib/sequel/adapters/ado/access.rb +2 -2
  4. data/lib/sequel/adapters/ado.rb +2 -2
  5. data/lib/sequel/adapters/amalgalite.rb +16 -1
  6. data/lib/sequel/adapters/ibmdb.rb +2 -1
  7. data/lib/sequel/adapters/jdbc/db2.rb +2 -2
  8. data/lib/sequel/adapters/jdbc/derby.rb +4 -2
  9. data/lib/sequel/adapters/jdbc/h2.rb +4 -4
  10. data/lib/sequel/adapters/jdbc/hsqldb.rb +2 -2
  11. data/lib/sequel/adapters/jdbc/jtds.rb +2 -2
  12. data/lib/sequel/adapters/jdbc/mysql.rb +3 -3
  13. data/lib/sequel/adapters/jdbc/oracle.rb +6 -6
  14. data/lib/sequel/adapters/jdbc/postgresql.rb +5 -5
  15. data/lib/sequel/adapters/jdbc/sqlanywhere.rb +6 -6
  16. data/lib/sequel/adapters/jdbc/sqlite.rb +3 -3
  17. data/lib/sequel/adapters/jdbc/sqlserver.rb +3 -3
  18. data/lib/sequel/adapters/jdbc.rb +29 -15
  19. data/lib/sequel/adapters/mysql.rb +1 -1
  20. data/lib/sequel/adapters/mysql2.rb +10 -3
  21. data/lib/sequel/adapters/odbc.rb +1 -1
  22. data/lib/sequel/adapters/oracle.rb +16 -0
  23. data/lib/sequel/adapters/postgres.rb +2 -1
  24. data/lib/sequel/adapters/shared/access.rb +1 -0
  25. data/lib/sequel/adapters/shared/db2.rb +8 -3
  26. data/lib/sequel/adapters/shared/mssql.rb +9 -8
  27. data/lib/sequel/adapters/shared/mysql.rb +16 -11
  28. data/lib/sequel/adapters/shared/oracle.rb +1 -0
  29. data/lib/sequel/adapters/shared/postgres.rb +438 -47
  30. data/lib/sequel/adapters/shared/sqlite.rb +9 -7
  31. data/lib/sequel/adapters/sqlite.rb +20 -2
  32. data/lib/sequel/adapters/tinytds.rb +2 -2
  33. data/lib/sequel/adapters/trilogy.rb +2 -3
  34. data/lib/sequel/ast_transformer.rb +2 -0
  35. data/lib/sequel/connection_pool/sharded_timed_queue.rb +42 -11
  36. data/lib/sequel/connection_pool/timed_queue.rb +33 -10
  37. data/lib/sequel/connection_pool.rb +8 -2
  38. data/lib/sequel/core.rb +31 -2
  39. data/lib/sequel/database/connecting.rb +1 -1
  40. data/lib/sequel/database/dataset_defaults.rb +3 -3
  41. data/lib/sequel/database/misc.rb +29 -11
  42. data/lib/sequel/database/query.rb +12 -12
  43. data/lib/sequel/database/schema_generator.rb +117 -16
  44. data/lib/sequel/database/schema_methods.rb +85 -30
  45. data/lib/sequel/dataset/actions.rb +83 -11
  46. data/lib/sequel/dataset/deprecated_singleton_class_methods.rb +1 -1
  47. data/lib/sequel/dataset/placeholder_literalizer.rb +3 -0
  48. data/lib/sequel/dataset/prepared_statements.rb +76 -28
  49. data/lib/sequel/dataset/query.rb +26 -11
  50. data/lib/sequel/dataset/sql.rb +40 -17
  51. data/lib/sequel/extensions/async_thread_pool.rb +1 -1
  52. data/lib/sequel/extensions/caller_logging.rb +1 -3
  53. data/lib/sequel/extensions/connection_checkout_event_callback.rb +151 -0
  54. data/lib/sequel/extensions/connection_expiration.rb +44 -5
  55. data/lib/sequel/extensions/connection_validator.rb +15 -10
  56. data/lib/sequel/extensions/constraint_validations.rb +3 -3
  57. data/lib/sequel/extensions/dataset_run.rb +41 -0
  58. data/lib/sequel/extensions/date_arithmetic.rb +6 -6
  59. data/lib/sequel/extensions/empty_array_consider_nulls.rb +7 -0
  60. data/lib/sequel/extensions/eval_inspect.rb +3 -1
  61. data/lib/sequel/extensions/inflector.rb +2 -2
  62. data/lib/sequel/extensions/lit_require_frozen.rb +131 -0
  63. data/lib/sequel/extensions/looser_typecasting.rb +5 -12
  64. data/lib/sequel/extensions/migration.rb +38 -21
  65. data/lib/sequel/extensions/null_dataset.rb +2 -2
  66. data/lib/sequel/extensions/pg_array_ops.rb +41 -0
  67. data/lib/sequel/extensions/pg_auto_parameterize.rb +10 -3
  68. data/lib/sequel/extensions/pg_auto_parameterize_duplicate_query_detection.rb +191 -0
  69. data/lib/sequel/extensions/pg_auto_parameterize_in_array.rb +94 -10
  70. data/lib/sequel/extensions/pg_enum.rb +4 -4
  71. data/lib/sequel/extensions/pg_hstore.rb +1 -1
  72. data/lib/sequel/extensions/pg_hstore_ops.rb +10 -5
  73. data/lib/sequel/extensions/pg_json_ops.rb +674 -18
  74. data/lib/sequel/extensions/pg_multirange.rb +1 -1
  75. data/lib/sequel/extensions/pg_range.rb +14 -2
  76. data/lib/sequel/extensions/pg_row.rb +5 -3
  77. data/lib/sequel/extensions/pg_schema_caching.rb +90 -0
  78. data/lib/sequel/extensions/provenance.rb +1 -3
  79. data/lib/sequel/extensions/query_blocker.rb +172 -0
  80. data/lib/sequel/extensions/schema_caching.rb +24 -9
  81. data/lib/sequel/extensions/schema_dumper.rb +17 -5
  82. data/lib/sequel/extensions/set_literalizer.rb +20 -39
  83. data/lib/sequel/extensions/split_array_nil.rb +12 -2
  84. data/lib/sequel/extensions/sqlite_json_ops.rb +1 -1
  85. data/lib/sequel/extensions/string_agg.rb +2 -2
  86. data/lib/sequel/extensions/to_dot.rb +5 -0
  87. data/lib/sequel/extensions/virtual_row_method_block.rb +1 -0
  88. data/lib/sequel/model/associations.rb +215 -15
  89. data/lib/sequel/model/base.rb +198 -35
  90. data/lib/sequel/model/plugins.rb +12 -1
  91. data/lib/sequel/model.rb +1 -0
  92. data/lib/sequel/plugins/accessed_columns.rb +4 -0
  93. data/lib/sequel/plugins/active_model.rb +5 -6
  94. data/lib/sequel/plugins/association_pks.rb +2 -0
  95. data/lib/sequel/plugins/auto_validations.rb +2 -0
  96. data/lib/sequel/plugins/class_table_inheritance_constraint_validations.rb +82 -0
  97. data/lib/sequel/plugins/columns_updated.rb +4 -0
  98. data/lib/sequel/plugins/composition.rb +3 -1
  99. data/lib/sequel/plugins/constraint_validations.rb +15 -10
  100. data/lib/sequel/plugins/dataset_associations.rb +20 -1
  101. data/lib/sequel/plugins/deprecated_associations.rb +151 -0
  102. data/lib/sequel/plugins/detect_unnecessary_association_options.rb +164 -0
  103. data/lib/sequel/plugins/dirty.rb +9 -2
  104. data/lib/sequel/plugins/enum.rb +1 -1
  105. data/lib/sequel/plugins/forbid_lazy_load.rb +15 -1
  106. data/lib/sequel/plugins/insert_conflict.rb +4 -0
  107. data/lib/sequel/plugins/insert_returning_select.rb +10 -1
  108. data/lib/sequel/plugins/inspect_pk.rb +44 -0
  109. data/lib/sequel/plugins/instance_filters.rb +8 -1
  110. data/lib/sequel/plugins/instance_hooks.rb +4 -0
  111. data/lib/sequel/plugins/inverted_subsets.rb +1 -0
  112. data/lib/sequel/plugins/json_serializer.rb +6 -10
  113. data/lib/sequel/plugins/lazy_attributes.rb +1 -1
  114. data/lib/sequel/plugins/many_through_many.rb +21 -0
  115. data/lib/sequel/plugins/modification_detection.rb +2 -0
  116. data/lib/sequel/plugins/mssql_optimistic_locking.rb +1 -1
  117. data/lib/sequel/plugins/nested_attributes.rb +10 -5
  118. data/lib/sequel/plugins/paged_operations.rb +5 -2
  119. data/lib/sequel/plugins/pg_array_associations.rb +2 -2
  120. data/lib/sequel/plugins/pg_auto_constraint_validations.rb +6 -1
  121. data/lib/sequel/plugins/pg_auto_validate_enums.rb +88 -0
  122. data/lib/sequel/plugins/pg_eager_any_typed_array.rb +95 -0
  123. data/lib/sequel/plugins/pg_xmin_optimistic_locking.rb +1 -1
  124. data/lib/sequel/plugins/rcte_tree.rb +6 -6
  125. data/lib/sequel/plugins/serialization.rb +23 -6
  126. data/lib/sequel/plugins/serialization_modification_detection.rb +4 -0
  127. data/lib/sequel/plugins/single_statement_dataset_destroy.rb +49 -0
  128. data/lib/sequel/plugins/split_values.rb +12 -0
  129. data/lib/sequel/plugins/sql_comments.rb +7 -2
  130. data/lib/sequel/plugins/static_cache.rb +13 -0
  131. data/lib/sequel/plugins/static_cache_cache.rb +50 -13
  132. data/lib/sequel/plugins/subset_conditions.rb +85 -5
  133. data/lib/sequel/plugins/subset_static_cache.rb +278 -0
  134. data/lib/sequel/plugins/table_select.rb +7 -0
  135. data/lib/sequel/plugins/tactical_eager_loading.rb +4 -0
  136. data/lib/sequel/plugins/unused_associations.rb +11 -3
  137. data/lib/sequel/plugins/update_primary_key.rb +4 -0
  138. data/lib/sequel/plugins/validation_class_methods.rb +1 -1
  139. data/lib/sequel/plugins/validation_contexts.rb +4 -0
  140. data/lib/sequel/sql.rb +27 -12
  141. data/lib/sequel/version.rb +1 -1
  142. metadata +17 -240
  143. data/CHANGELOG +0 -1393
  144. data/README.rdoc +0 -936
  145. data/doc/advanced_associations.rdoc +0 -884
  146. data/doc/association_basics.rdoc +0 -1859
  147. data/doc/bin_sequel.rdoc +0 -146
  148. data/doc/cheat_sheet.rdoc +0 -255
  149. data/doc/code_order.rdoc +0 -104
  150. data/doc/core_extensions.rdoc +0 -405
  151. data/doc/dataset_basics.rdoc +0 -96
  152. data/doc/dataset_filtering.rdoc +0 -222
  153. data/doc/extensions.rdoc +0 -77
  154. data/doc/fork_safety.rdoc +0 -84
  155. data/doc/mass_assignment.rdoc +0 -98
  156. data/doc/migration.rdoc +0 -660
  157. data/doc/model_dataset_method_design.rdoc +0 -129
  158. data/doc/model_hooks.rdoc +0 -254
  159. data/doc/model_plugins.rdoc +0 -270
  160. data/doc/mssql_stored_procedures.rdoc +0 -43
  161. data/doc/object_model.rdoc +0 -563
  162. data/doc/opening_databases.rdoc +0 -439
  163. data/doc/postgresql.rdoc +0 -611
  164. data/doc/prepared_statements.rdoc +0 -144
  165. data/doc/querying.rdoc +0 -1070
  166. data/doc/reflection.rdoc +0 -120
  167. data/doc/release_notes/5.0.0.txt +0 -159
  168. data/doc/release_notes/5.1.0.txt +0 -31
  169. data/doc/release_notes/5.10.0.txt +0 -84
  170. data/doc/release_notes/5.11.0.txt +0 -83
  171. data/doc/release_notes/5.12.0.txt +0 -141
  172. data/doc/release_notes/5.13.0.txt +0 -27
  173. data/doc/release_notes/5.14.0.txt +0 -63
  174. data/doc/release_notes/5.15.0.txt +0 -39
  175. data/doc/release_notes/5.16.0.txt +0 -110
  176. data/doc/release_notes/5.17.0.txt +0 -31
  177. data/doc/release_notes/5.18.0.txt +0 -69
  178. data/doc/release_notes/5.19.0.txt +0 -28
  179. data/doc/release_notes/5.2.0.txt +0 -33
  180. data/doc/release_notes/5.20.0.txt +0 -89
  181. data/doc/release_notes/5.21.0.txt +0 -87
  182. data/doc/release_notes/5.22.0.txt +0 -48
  183. data/doc/release_notes/5.23.0.txt +0 -56
  184. data/doc/release_notes/5.24.0.txt +0 -56
  185. data/doc/release_notes/5.25.0.txt +0 -32
  186. data/doc/release_notes/5.26.0.txt +0 -35
  187. data/doc/release_notes/5.27.0.txt +0 -21
  188. data/doc/release_notes/5.28.0.txt +0 -16
  189. data/doc/release_notes/5.29.0.txt +0 -22
  190. data/doc/release_notes/5.3.0.txt +0 -121
  191. data/doc/release_notes/5.30.0.txt +0 -20
  192. data/doc/release_notes/5.31.0.txt +0 -148
  193. data/doc/release_notes/5.32.0.txt +0 -46
  194. data/doc/release_notes/5.33.0.txt +0 -24
  195. data/doc/release_notes/5.34.0.txt +0 -40
  196. data/doc/release_notes/5.35.0.txt +0 -56
  197. data/doc/release_notes/5.36.0.txt +0 -60
  198. data/doc/release_notes/5.37.0.txt +0 -30
  199. data/doc/release_notes/5.38.0.txt +0 -28
  200. data/doc/release_notes/5.39.0.txt +0 -19
  201. data/doc/release_notes/5.4.0.txt +0 -80
  202. data/doc/release_notes/5.40.0.txt +0 -40
  203. data/doc/release_notes/5.41.0.txt +0 -25
  204. data/doc/release_notes/5.42.0.txt +0 -136
  205. data/doc/release_notes/5.43.0.txt +0 -98
  206. data/doc/release_notes/5.44.0.txt +0 -32
  207. data/doc/release_notes/5.45.0.txt +0 -34
  208. data/doc/release_notes/5.46.0.txt +0 -87
  209. data/doc/release_notes/5.47.0.txt +0 -59
  210. data/doc/release_notes/5.48.0.txt +0 -14
  211. data/doc/release_notes/5.49.0.txt +0 -59
  212. data/doc/release_notes/5.5.0.txt +0 -61
  213. data/doc/release_notes/5.50.0.txt +0 -78
  214. data/doc/release_notes/5.51.0.txt +0 -47
  215. data/doc/release_notes/5.52.0.txt +0 -87
  216. data/doc/release_notes/5.53.0.txt +0 -23
  217. data/doc/release_notes/5.54.0.txt +0 -27
  218. data/doc/release_notes/5.55.0.txt +0 -21
  219. data/doc/release_notes/5.56.0.txt +0 -51
  220. data/doc/release_notes/5.57.0.txt +0 -23
  221. data/doc/release_notes/5.58.0.txt +0 -31
  222. data/doc/release_notes/5.59.0.txt +0 -73
  223. data/doc/release_notes/5.6.0.txt +0 -31
  224. data/doc/release_notes/5.60.0.txt +0 -22
  225. data/doc/release_notes/5.61.0.txt +0 -43
  226. data/doc/release_notes/5.62.0.txt +0 -132
  227. data/doc/release_notes/5.63.0.txt +0 -33
  228. data/doc/release_notes/5.64.0.txt +0 -50
  229. data/doc/release_notes/5.65.0.txt +0 -21
  230. data/doc/release_notes/5.66.0.txt +0 -24
  231. data/doc/release_notes/5.67.0.txt +0 -32
  232. data/doc/release_notes/5.68.0.txt +0 -61
  233. data/doc/release_notes/5.69.0.txt +0 -26
  234. data/doc/release_notes/5.7.0.txt +0 -108
  235. data/doc/release_notes/5.70.0.txt +0 -35
  236. data/doc/release_notes/5.71.0.txt +0 -21
  237. data/doc/release_notes/5.72.0.txt +0 -33
  238. data/doc/release_notes/5.73.0.txt +0 -66
  239. data/doc/release_notes/5.74.0.txt +0 -45
  240. data/doc/release_notes/5.75.0.txt +0 -35
  241. data/doc/release_notes/5.76.0.txt +0 -86
  242. data/doc/release_notes/5.77.0.txt +0 -63
  243. data/doc/release_notes/5.78.0.txt +0 -67
  244. data/doc/release_notes/5.79.0.txt +0 -28
  245. data/doc/release_notes/5.8.0.txt +0 -170
  246. data/doc/release_notes/5.80.0.txt +0 -40
  247. data/doc/release_notes/5.81.0.txt +0 -31
  248. data/doc/release_notes/5.82.0.txt +0 -61
  249. data/doc/release_notes/5.83.0.txt +0 -56
  250. data/doc/release_notes/5.9.0.txt +0 -99
  251. data/doc/schema_modification.rdoc +0 -679
  252. data/doc/security.rdoc +0 -443
  253. data/doc/sharding.rdoc +0 -286
  254. data/doc/sql.rdoc +0 -648
  255. data/doc/testing.rdoc +0 -204
  256. data/doc/thread_safety.rdoc +0 -15
  257. data/doc/transactions.rdoc +0 -250
  258. data/doc/validations.rdoc +0 -558
  259. data/doc/virtual_rows.rdoc +0 -265
data/lib/sequel/sql.rb CHANGED
@@ -153,13 +153,16 @@ module Sequel
153
153
  class ComplexExpression < Expression
154
154
  # A hash of the opposite for each operator symbol, used for inverting
155
155
  # objects.
156
- OPERTATOR_INVERSIONS = {:AND => :OR, :OR => :AND, :< => :>=, :> => :<=,
156
+ OPERATOR_INVERSIONS = {:AND => :OR, :OR => :AND, :< => :>=, :> => :<=,
157
157
  :<= => :>, :>= => :<, :'=' => :'!=' , :'!=' => :'=', :LIKE => :'NOT LIKE',
158
158
  :'NOT LIKE' => :LIKE, :~ => :'!~', :'!~' => :~, :IN => :'NOT IN',
159
159
  :'NOT IN' => :IN, :IS => :'IS NOT', :'IS NOT' => :IS, :'~*' => :'!~*',
160
160
  :'!~*' => :'~*', :NOT => :NOOP, :NOOP => :NOT, :ILIKE => :'NOT ILIKE',
161
161
  :'NOT ILIKE'=>:ILIKE}.freeze
162
162
 
163
+ # SEQUEL6: Remove
164
+ OPERTATOR_INVERSIONS = OPERATOR_INVERSIONS
165
+
163
166
  # Standard mathematical operators used in +NumericMethods+
164
167
  MATHEMATICAL_OPERATORS = [:+, :-, :/, :*, :**].freeze
165
168
 
@@ -1105,7 +1108,7 @@ module Sequel
1105
1108
  else
1106
1109
  new(:'=', 1, 1)
1107
1110
  end
1108
- when ::Array
1111
+ when ::Array, ::Set
1109
1112
  r = r.dup.freeze unless r.frozen?
1110
1113
  new(:IN, l, r)
1111
1114
  when ::String
@@ -1124,7 +1127,13 @@ module Sequel
1124
1127
  when DelayedEvaluation
1125
1128
  Sequel.delay{|ds| from_value_pair(l, r.call(ds))}
1126
1129
  when Dataset::PlaceholderLiteralizer::Argument
1127
- r.transform{|v| from_value_pair(l, v)}
1130
+ prev_transform = r.instance_variable_get(:@transformer)
1131
+ r.transform do |v|
1132
+ if prev_transform
1133
+ v = prev_transform.call(v)
1134
+ end
1135
+ from_value_pair(l, v)
1136
+ end
1128
1137
  else
1129
1138
  new(:'=', l, r)
1130
1139
  end
@@ -1142,9 +1151,9 @@ module Sequel
1142
1151
  when BooleanExpression
1143
1152
  case op = ce.op
1144
1153
  when :AND, :OR
1145
- BooleanExpression.new(OPERTATOR_INVERSIONS[op], *ce.args.map{|a| BooleanExpression.invert(a)})
1154
+ BooleanExpression.new(OPERATOR_INVERSIONS[op], *ce.args.map{|a| BooleanExpression.invert(a)})
1146
1155
  when :IN, :"NOT IN"
1147
- BooleanExpression.new(OPERTATOR_INVERSIONS[op], *ce.args.dup)
1156
+ BooleanExpression.new(OPERATOR_INVERSIONS[op], *ce.args.dup)
1148
1157
  else
1149
1158
  if ce.args.length == 2
1150
1159
  case ce.args[1]
@@ -1153,10 +1162,10 @@ module Sequel
1153
1162
  # can result in incorrect behavior for ANY/SOME/ALL operators.
1154
1163
  BooleanExpression.new(:NOT, ce)
1155
1164
  else
1156
- BooleanExpression.new(OPERTATOR_INVERSIONS[op], *ce.args.dup)
1165
+ BooleanExpression.new(OPERATOR_INVERSIONS[op], *ce.args.dup)
1157
1166
  end
1158
1167
  else
1159
- BooleanExpression.new(OPERTATOR_INVERSIONS[op], *ce.args.dup)
1168
+ BooleanExpression.new(OPERATOR_INVERSIONS[op], *ce.args.dup)
1160
1169
  end
1161
1170
  end
1162
1171
  when StringExpression, NumericExpression
@@ -1314,6 +1323,7 @@ module Sequel
1314
1323
  # in this module which can be required at the top level to get
1315
1324
  # direct access to the constants.
1316
1325
  module Constants
1326
+ ALL = Constant.new(:ALL)
1317
1327
  CURRENT_DATE = Constant.new(:CURRENT_DATE)
1318
1328
  CURRENT_TIME = Constant.new(:CURRENT_TIME)
1319
1329
  CURRENT_TIMESTAMP = Constant.new(:CURRENT_TIMESTAMP)
@@ -1724,12 +1734,11 @@ module Sequel
1724
1734
 
1725
1735
  # Automatically convert SQL::Identifiers to strings
1726
1736
  def convert_identifier(identifier)
1727
- case identifier
1728
- when SQL::Identifier
1729
- identifier.value.to_s
1730
- else
1731
- identifier
1737
+ if identifier.is_a?(SQL::Identifier)
1738
+ identifier = identifier.value
1739
+ identifier = identifier.to_s unless identifier.is_a?(LiteralString)
1732
1740
  end
1741
+ identifier
1733
1742
  end
1734
1743
  end
1735
1744
 
@@ -1912,6 +1921,7 @@ module Sequel
1912
1921
  end
1913
1922
 
1914
1923
  m = Module.new do
1924
+ Sequel.set_temp_name(Module.new){"Sequel::SQL::VirtualRow::_BaseMethodMissing"}
1915
1925
  # Return an +Identifier+, +QualifiedIdentifier+, or +Function+, depending
1916
1926
  # on arguments and whether a block is provided. Does not currently call the block.
1917
1927
  # See the class level documentation.
@@ -1983,6 +1993,8 @@ module Sequel
1983
1993
  # for rows following
1984
1994
  # :exclude :: Which rows to exclude. Possible values are :current, :ties, :group
1985
1995
  # :no_others.
1996
+ # :ignore_nulls :: Can be set to :ignore for IGNORE NULLS (supported on PostgreSQL 19+ for
1997
+ # a subset of default window functions)
1986
1998
  # :order :: order on the column(s) given
1987
1999
  # :partition :: partition/group on the column(s) given
1988
2000
  # :window :: base results on a previously specified named window
@@ -2043,6 +2055,9 @@ module Sequel
2043
2055
  end
2044
2056
  end
2045
2057
 
2058
+ SQL::Constants::OLD = SQL::Identifier.new(LiteralString.new("OLD").freeze)
2059
+ SQL::Constants::NEW = SQL::Identifier.new(LiteralString.new("NEW").freeze)
2060
+
2046
2061
  include SQL::Constants
2047
2062
  extend SQL::Builders
2048
2063
  extend SQL::OperatorBuilders
@@ -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 = 83
9
+ MINOR = 106
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,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sequel
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.83.0
4
+ version: 5.106.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeremy Evans
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-08-01 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: bigdecimal
@@ -114,244 +113,10 @@ executables:
114
113
  - sequel
115
114
  extensions: []
116
115
  extra_rdoc_files:
117
- - README.rdoc
118
- - CHANGELOG
119
116
  - MIT-LICENSE
120
- - doc/advanced_associations.rdoc
121
- - doc/association_basics.rdoc
122
- - doc/bin_sequel.rdoc
123
- - doc/cheat_sheet.rdoc
124
- - doc/code_order.rdoc
125
- - doc/core_extensions.rdoc
126
- - doc/dataset_basics.rdoc
127
- - doc/dataset_filtering.rdoc
128
- - doc/extensions.rdoc
129
- - doc/fork_safety.rdoc
130
- - doc/mass_assignment.rdoc
131
- - doc/migration.rdoc
132
- - doc/model_dataset_method_design.rdoc
133
- - doc/model_hooks.rdoc
134
- - doc/model_plugins.rdoc
135
- - doc/mssql_stored_procedures.rdoc
136
- - doc/object_model.rdoc
137
- - doc/opening_databases.rdoc
138
- - doc/postgresql.rdoc
139
- - doc/prepared_statements.rdoc
140
- - doc/querying.rdoc
141
- - doc/reflection.rdoc
142
- - doc/schema_modification.rdoc
143
- - doc/security.rdoc
144
- - doc/sharding.rdoc
145
- - doc/sql.rdoc
146
- - doc/testing.rdoc
147
- - doc/thread_safety.rdoc
148
- - doc/transactions.rdoc
149
- - doc/validations.rdoc
150
- - doc/virtual_rows.rdoc
151
- - doc/release_notes/5.0.0.txt
152
- - doc/release_notes/5.1.0.txt
153
- - doc/release_notes/5.10.0.txt
154
- - doc/release_notes/5.11.0.txt
155
- - doc/release_notes/5.12.0.txt
156
- - doc/release_notes/5.13.0.txt
157
- - doc/release_notes/5.14.0.txt
158
- - doc/release_notes/5.15.0.txt
159
- - doc/release_notes/5.16.0.txt
160
- - doc/release_notes/5.17.0.txt
161
- - doc/release_notes/5.18.0.txt
162
- - doc/release_notes/5.19.0.txt
163
- - doc/release_notes/5.2.0.txt
164
- - doc/release_notes/5.20.0.txt
165
- - doc/release_notes/5.21.0.txt
166
- - doc/release_notes/5.22.0.txt
167
- - doc/release_notes/5.23.0.txt
168
- - doc/release_notes/5.24.0.txt
169
- - doc/release_notes/5.25.0.txt
170
- - doc/release_notes/5.26.0.txt
171
- - doc/release_notes/5.27.0.txt
172
- - doc/release_notes/5.28.0.txt
173
- - doc/release_notes/5.29.0.txt
174
- - doc/release_notes/5.3.0.txt
175
- - doc/release_notes/5.30.0.txt
176
- - doc/release_notes/5.31.0.txt
177
- - doc/release_notes/5.32.0.txt
178
- - doc/release_notes/5.33.0.txt
179
- - doc/release_notes/5.34.0.txt
180
- - doc/release_notes/5.35.0.txt
181
- - doc/release_notes/5.36.0.txt
182
- - doc/release_notes/5.37.0.txt
183
- - doc/release_notes/5.38.0.txt
184
- - doc/release_notes/5.39.0.txt
185
- - doc/release_notes/5.4.0.txt
186
- - doc/release_notes/5.40.0.txt
187
- - doc/release_notes/5.41.0.txt
188
- - doc/release_notes/5.42.0.txt
189
- - doc/release_notes/5.43.0.txt
190
- - doc/release_notes/5.44.0.txt
191
- - doc/release_notes/5.45.0.txt
192
- - doc/release_notes/5.46.0.txt
193
- - doc/release_notes/5.47.0.txt
194
- - doc/release_notes/5.48.0.txt
195
- - doc/release_notes/5.49.0.txt
196
- - doc/release_notes/5.5.0.txt
197
- - doc/release_notes/5.50.0.txt
198
- - doc/release_notes/5.51.0.txt
199
- - doc/release_notes/5.52.0.txt
200
- - doc/release_notes/5.53.0.txt
201
- - doc/release_notes/5.54.0.txt
202
- - doc/release_notes/5.55.0.txt
203
- - doc/release_notes/5.56.0.txt
204
- - doc/release_notes/5.57.0.txt
205
- - doc/release_notes/5.58.0.txt
206
- - doc/release_notes/5.59.0.txt
207
- - doc/release_notes/5.6.0.txt
208
- - doc/release_notes/5.60.0.txt
209
- - doc/release_notes/5.61.0.txt
210
- - doc/release_notes/5.62.0.txt
211
- - doc/release_notes/5.63.0.txt
212
- - doc/release_notes/5.64.0.txt
213
- - doc/release_notes/5.65.0.txt
214
- - doc/release_notes/5.66.0.txt
215
- - doc/release_notes/5.67.0.txt
216
- - doc/release_notes/5.68.0.txt
217
- - doc/release_notes/5.69.0.txt
218
- - doc/release_notes/5.7.0.txt
219
- - doc/release_notes/5.70.0.txt
220
- - doc/release_notes/5.71.0.txt
221
- - doc/release_notes/5.72.0.txt
222
- - doc/release_notes/5.73.0.txt
223
- - doc/release_notes/5.74.0.txt
224
- - doc/release_notes/5.75.0.txt
225
- - doc/release_notes/5.76.0.txt
226
- - doc/release_notes/5.77.0.txt
227
- - doc/release_notes/5.78.0.txt
228
- - doc/release_notes/5.79.0.txt
229
- - doc/release_notes/5.8.0.txt
230
- - doc/release_notes/5.80.0.txt
231
- - doc/release_notes/5.81.0.txt
232
- - doc/release_notes/5.82.0.txt
233
- - doc/release_notes/5.83.0.txt
234
- - doc/release_notes/5.9.0.txt
235
117
  files:
236
- - CHANGELOG
237
118
  - MIT-LICENSE
238
- - README.rdoc
239
119
  - bin/sequel
240
- - doc/advanced_associations.rdoc
241
- - doc/association_basics.rdoc
242
- - doc/bin_sequel.rdoc
243
- - doc/cheat_sheet.rdoc
244
- - doc/code_order.rdoc
245
- - doc/core_extensions.rdoc
246
- - doc/dataset_basics.rdoc
247
- - doc/dataset_filtering.rdoc
248
- - doc/extensions.rdoc
249
- - doc/fork_safety.rdoc
250
- - doc/mass_assignment.rdoc
251
- - doc/migration.rdoc
252
- - doc/model_dataset_method_design.rdoc
253
- - doc/model_hooks.rdoc
254
- - doc/model_plugins.rdoc
255
- - doc/mssql_stored_procedures.rdoc
256
- - doc/object_model.rdoc
257
- - doc/opening_databases.rdoc
258
- - doc/postgresql.rdoc
259
- - doc/prepared_statements.rdoc
260
- - doc/querying.rdoc
261
- - doc/reflection.rdoc
262
- - doc/release_notes/5.0.0.txt
263
- - doc/release_notes/5.1.0.txt
264
- - doc/release_notes/5.10.0.txt
265
- - doc/release_notes/5.11.0.txt
266
- - doc/release_notes/5.12.0.txt
267
- - doc/release_notes/5.13.0.txt
268
- - doc/release_notes/5.14.0.txt
269
- - doc/release_notes/5.15.0.txt
270
- - doc/release_notes/5.16.0.txt
271
- - doc/release_notes/5.17.0.txt
272
- - doc/release_notes/5.18.0.txt
273
- - doc/release_notes/5.19.0.txt
274
- - doc/release_notes/5.2.0.txt
275
- - doc/release_notes/5.20.0.txt
276
- - doc/release_notes/5.21.0.txt
277
- - doc/release_notes/5.22.0.txt
278
- - doc/release_notes/5.23.0.txt
279
- - doc/release_notes/5.24.0.txt
280
- - doc/release_notes/5.25.0.txt
281
- - doc/release_notes/5.26.0.txt
282
- - doc/release_notes/5.27.0.txt
283
- - doc/release_notes/5.28.0.txt
284
- - doc/release_notes/5.29.0.txt
285
- - doc/release_notes/5.3.0.txt
286
- - doc/release_notes/5.30.0.txt
287
- - doc/release_notes/5.31.0.txt
288
- - doc/release_notes/5.32.0.txt
289
- - doc/release_notes/5.33.0.txt
290
- - doc/release_notes/5.34.0.txt
291
- - doc/release_notes/5.35.0.txt
292
- - doc/release_notes/5.36.0.txt
293
- - doc/release_notes/5.37.0.txt
294
- - doc/release_notes/5.38.0.txt
295
- - doc/release_notes/5.39.0.txt
296
- - doc/release_notes/5.4.0.txt
297
- - doc/release_notes/5.40.0.txt
298
- - doc/release_notes/5.41.0.txt
299
- - doc/release_notes/5.42.0.txt
300
- - doc/release_notes/5.43.0.txt
301
- - doc/release_notes/5.44.0.txt
302
- - doc/release_notes/5.45.0.txt
303
- - doc/release_notes/5.46.0.txt
304
- - doc/release_notes/5.47.0.txt
305
- - doc/release_notes/5.48.0.txt
306
- - doc/release_notes/5.49.0.txt
307
- - doc/release_notes/5.5.0.txt
308
- - doc/release_notes/5.50.0.txt
309
- - doc/release_notes/5.51.0.txt
310
- - doc/release_notes/5.52.0.txt
311
- - doc/release_notes/5.53.0.txt
312
- - doc/release_notes/5.54.0.txt
313
- - doc/release_notes/5.55.0.txt
314
- - doc/release_notes/5.56.0.txt
315
- - doc/release_notes/5.57.0.txt
316
- - doc/release_notes/5.58.0.txt
317
- - doc/release_notes/5.59.0.txt
318
- - doc/release_notes/5.6.0.txt
319
- - doc/release_notes/5.60.0.txt
320
- - doc/release_notes/5.61.0.txt
321
- - doc/release_notes/5.62.0.txt
322
- - doc/release_notes/5.63.0.txt
323
- - doc/release_notes/5.64.0.txt
324
- - doc/release_notes/5.65.0.txt
325
- - doc/release_notes/5.66.0.txt
326
- - doc/release_notes/5.67.0.txt
327
- - doc/release_notes/5.68.0.txt
328
- - doc/release_notes/5.69.0.txt
329
- - doc/release_notes/5.7.0.txt
330
- - doc/release_notes/5.70.0.txt
331
- - doc/release_notes/5.71.0.txt
332
- - doc/release_notes/5.72.0.txt
333
- - doc/release_notes/5.73.0.txt
334
- - doc/release_notes/5.74.0.txt
335
- - doc/release_notes/5.75.0.txt
336
- - doc/release_notes/5.76.0.txt
337
- - doc/release_notes/5.77.0.txt
338
- - doc/release_notes/5.78.0.txt
339
- - doc/release_notes/5.79.0.txt
340
- - doc/release_notes/5.8.0.txt
341
- - doc/release_notes/5.80.0.txt
342
- - doc/release_notes/5.81.0.txt
343
- - doc/release_notes/5.82.0.txt
344
- - doc/release_notes/5.83.0.txt
345
- - doc/release_notes/5.9.0.txt
346
- - doc/schema_modification.rdoc
347
- - doc/security.rdoc
348
- - doc/sharding.rdoc
349
- - doc/sql.rdoc
350
- - doc/testing.rdoc
351
- - doc/thread_safety.rdoc
352
- - doc/transactions.rdoc
353
- - doc/validations.rdoc
354
- - doc/virtual_rows.rdoc
355
120
  - lib/sequel.rb
356
121
  - lib/sequel/adapters/ado.rb
357
122
  - lib/sequel/adapters/ado/access.rb
@@ -447,6 +212,7 @@ files:
447
212
  - lib/sequel/extensions/blank.rb
448
213
  - lib/sequel/extensions/caller_logging.rb
449
214
  - lib/sequel/extensions/columns_introspection.rb
215
+ - lib/sequel/extensions/connection_checkout_event_callback.rb
450
216
  - lib/sequel/extensions/connection_expiration.rb
451
217
  - lib/sequel/extensions/connection_validator.rb
452
218
  - lib/sequel/extensions/constant_sql_override.rb
@@ -454,6 +220,7 @@ files:
454
220
  - lib/sequel/extensions/core_extensions.rb
455
221
  - lib/sequel/extensions/core_refinements.rb
456
222
  - lib/sequel/extensions/current_datetime_timestamp.rb
223
+ - lib/sequel/extensions/dataset_run.rb
457
224
  - lib/sequel/extensions/dataset_source_alias.rb
458
225
  - lib/sequel/extensions/date_arithmetic.rb
459
226
  - lib/sequel/extensions/date_parse_input_handler.rb
@@ -474,6 +241,7 @@ files:
474
241
  - lib/sequel/extensions/inflector.rb
475
242
  - lib/sequel/extensions/integer64.rb
476
243
  - lib/sequel/extensions/is_distinct_from.rb
244
+ - lib/sequel/extensions/lit_require_frozen.rb
477
245
  - lib/sequel/extensions/looser_typecasting.rb
478
246
  - lib/sequel/extensions/migration.rb
479
247
  - lib/sequel/extensions/mssql_emulate_lateral_with_apply.rb
@@ -484,6 +252,7 @@ files:
484
252
  - lib/sequel/extensions/pg_array.rb
485
253
  - lib/sequel/extensions/pg_array_ops.rb
486
254
  - lib/sequel/extensions/pg_auto_parameterize.rb
255
+ - lib/sequel/extensions/pg_auto_parameterize_duplicate_query_detection.rb
487
256
  - lib/sequel/extensions/pg_auto_parameterize_in_array.rb
488
257
  - lib/sequel/extensions/pg_enum.rb
489
258
  - lib/sequel/extensions/pg_extended_date_support.rb
@@ -501,11 +270,13 @@ files:
501
270
  - lib/sequel/extensions/pg_range_ops.rb
502
271
  - lib/sequel/extensions/pg_row.rb
503
272
  - lib/sequel/extensions/pg_row_ops.rb
273
+ - lib/sequel/extensions/pg_schema_caching.rb
504
274
  - lib/sequel/extensions/pg_static_cache_updater.rb
505
275
  - lib/sequel/extensions/pg_timestamptz.rb
506
276
  - lib/sequel/extensions/pretty_table.rb
507
277
  - lib/sequel/extensions/provenance.rb
508
278
  - lib/sequel/extensions/query.rb
279
+ - lib/sequel/extensions/query_blocker.rb
509
280
  - lib/sequel/extensions/round_timestamps.rb
510
281
  - lib/sequel/extensions/run_transaction_hooks.rb
511
282
  - lib/sequel/extensions/s.rb
@@ -561,6 +332,7 @@ files:
561
332
  - lib/sequel/plugins/boolean_subsets.rb
562
333
  - lib/sequel/plugins/caching.rb
563
334
  - lib/sequel/plugins/class_table_inheritance.rb
335
+ - lib/sequel/plugins/class_table_inheritance_constraint_validations.rb
564
336
  - lib/sequel/plugins/column_conflicts.rb
565
337
  - lib/sequel/plugins/column_encryption.rb
566
338
  - lib/sequel/plugins/column_select.rb
@@ -573,6 +345,8 @@ files:
573
345
  - lib/sequel/plugins/def_dataset_method.rb
574
346
  - lib/sequel/plugins/defaults_setter.rb
575
347
  - lib/sequel/plugins/delay_add_association.rb
348
+ - lib/sequel/plugins/deprecated_associations.rb
349
+ - lib/sequel/plugins/detect_unnecessary_association_options.rb
576
350
  - lib/sequel/plugins/dirty.rb
577
351
  - lib/sequel/plugins/eager_each.rb
578
352
  - lib/sequel/plugins/eager_graph_eager.rb
@@ -586,6 +360,7 @@ files:
586
360
  - lib/sequel/plugins/input_transformer.rb
587
361
  - lib/sequel/plugins/insert_conflict.rb
588
362
  - lib/sequel/plugins/insert_returning_select.rb
363
+ - lib/sequel/plugins/inspect_pk.rb
589
364
  - lib/sequel/plugins/instance_filters.rb
590
365
  - lib/sequel/plugins/instance_hooks.rb
591
366
  - lib/sequel/plugins/instance_specific_default.rb
@@ -602,6 +377,8 @@ files:
602
377
  - lib/sequel/plugins/paged_operations.rb
603
378
  - lib/sequel/plugins/pg_array_associations.rb
604
379
  - lib/sequel/plugins/pg_auto_constraint_validations.rb
380
+ - lib/sequel/plugins/pg_auto_validate_enums.rb
381
+ - lib/sequel/plugins/pg_eager_any_typed_array.rb
605
382
  - lib/sequel/plugins/pg_row.rb
606
383
  - lib/sequel/plugins/pg_xmin_optimistic_locking.rb
607
384
  - lib/sequel/plugins/prepared_statements.rb
@@ -612,6 +389,7 @@ files:
612
389
  - lib/sequel/plugins/serialization.rb
613
390
  - lib/sequel/plugins/serialization_modification_detection.rb
614
391
  - lib/sequel/plugins/sharding.rb
392
+ - lib/sequel/plugins/single_statement_dataset_destroy.rb
615
393
  - lib/sequel/plugins/single_table_inheritance.rb
616
394
  - lib/sequel/plugins/singular_table_names.rb
617
395
  - lib/sequel/plugins/skip_create_refresh.rb
@@ -623,6 +401,7 @@ files:
623
401
  - lib/sequel/plugins/string_stripper.rb
624
402
  - lib/sequel/plugins/subclasses.rb
625
403
  - lib/sequel/plugins/subset_conditions.rb
404
+ - lib/sequel/plugins/subset_static_cache.rb
626
405
  - lib/sequel/plugins/table_select.rb
627
406
  - lib/sequel/plugins/tactical_eager_loading.rb
628
407
  - lib/sequel/plugins/throw_failures.rb
@@ -655,7 +434,6 @@ metadata:
655
434
  documentation_uri: https://sequel.jeremyevans.net/documentation.html
656
435
  mailing_list_uri: https://github.com/jeremyevans/sequel/discussions
657
436
  source_code_uri: https://github.com/jeremyevans/sequel
658
- post_install_message:
659
437
  rdoc_options:
660
438
  - "--quiet"
661
439
  - "--line-numbers"
@@ -677,8 +455,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
677
455
  - !ruby/object:Gem::Version
678
456
  version: '0'
679
457
  requirements: []
680
- rubygems_version: 3.5.11
681
- signing_key:
458
+ rubygems_version: 4.0.10
682
459
  specification_version: 4
683
460
  summary: The Database Toolkit for Ruby
684
461
  test_files: []