From da64603e6e4a2c0a89a498a972f4d6f87f4acef7 Mon Sep 17 00:00:00 2001 From: Jeremy Evans Date: Sun, 1 Oct 2023 08:02:30 -0700 Subject: [PATCH] Update website for 5.73.0 release --- documentation.html | 4 +- plugins.html | 6 +- .../classes/Sequel/DB2/DatabaseMethods.html | 7 + .../classes/Sequel/DB2/DatasetMethods.html | 120 ++-- .../Sequel/Postgres/DatasetMethods.html | 388 ++++++------ rdoc-adapters/created.rid | 10 +- .../files/lib/sequel/adapters/ibmdb_rb.html | 2 +- .../lib/sequel/adapters/jdbc/db2_rb.html | 2 +- .../lib/sequel/adapters/shared/db2_rb.html | 2 +- .../sequel/adapters/shared/postgres_rb.html | 2 +- rdoc-plugins/classes/Sequel.html | 3 + .../classes/Sequel/IntegerMigrator.html | 88 +-- rdoc-plugins/classes/Sequel/Plugins.html | 4 + .../Sequel/Plugins/ColumnEncryption.html | 44 +- .../ColumnEncryption/DatasetMethods.html | 36 +- .../ColumnEncryption/InstanceMethods.html | 24 +- .../Sequel/Plugins/PagedOperations.html | 123 ++++ .../Plugins/PagedOperations/ClassMethods.html | 53 ++ .../PagedOperations/DatasetMethods.html | 175 ++++++ .../classes/Sequel/TimestampMigrator.html | 44 +- rdoc-plugins/created.rid | 7 +- .../lib/sequel/extensions/migration_rb.html | 2 +- .../sequel/plugins/column_encryption_rb.html | 3 +- .../sequel/plugins/paged_operations_rb.html | 52 ++ rdoc-plugins/fr_class_index.html | 3 + rdoc-plugins/fr_file_index.html | 1 + rdoc-plugins/fr_method_index.html | 537 ++++++++-------- rdoc/classes/Sequel.html | 12 +- rdoc/classes/Sequel/Database.html | 126 ++-- rdoc/classes/Sequel/Dataset.html | 572 +++++++++--------- rdoc/classes/Sequel/IntegerMigrator.html | 88 +-- .../Sequel/MassAssignmentRestriction.html | 123 ++++ rdoc/classes/Sequel/Model/DatasetMethods.html | 99 +-- rdoc/classes/Sequel/TimestampMigrator.html | 44 +- rdoc/classes/Sequel/ValidationFailed.html | 26 +- rdoc/created.rid | 21 +- rdoc/files/CHANGELOG.html | 21 +- rdoc/files/README_rdoc.html | 4 +- rdoc/files/doc/CHANGELOG_old.html | 2 +- rdoc/files/doc/mass_assignment_rdoc.html | 2 +- rdoc/files/doc/release_notes/4_22_0_txt.html | 2 +- rdoc/files/doc/release_notes/5_73_0_txt.html | 102 ++++ .../sequel/database/schema_methods_rb.html | 2 +- .../lib/sequel/database/transactions_rb.html | 2 +- rdoc/files/lib/sequel/dataset/actions_rb.html | 2 +- .../lib/sequel/extensions/migration_rb.html | 2 +- rdoc/files/lib/sequel/model/base_rb.html | 2 +- .../files/lib/sequel/model/exceptions_rb.html | 2 +- rdoc/files/lib/sequel/version_rb.html | 2 +- rdoc/fr_class_index.html | 1 + rdoc/fr_file_index.html | 1 + rdoc/fr_method_index.html | 317 +++++----- 52 files changed, 2002 insertions(+), 1317 deletions(-) create mode 100644 rdoc-plugins/classes/Sequel/Plugins/PagedOperations.html create mode 100644 rdoc-plugins/classes/Sequel/Plugins/PagedOperations/ClassMethods.html create mode 100644 rdoc-plugins/classes/Sequel/Plugins/PagedOperations/DatasetMethods.html create mode 100644 rdoc-plugins/files/lib/sequel/plugins/paged_operations_rb.html create mode 100644 rdoc/classes/Sequel/MassAssignmentRestriction.html create mode 100644 rdoc/files/doc/release_notes/5_73_0_txt.html diff --git a/documentation.html b/documentation.html index 510296423..2fbcfcb48 100644 --- a/documentation.html +++ b/documentation.html @@ -44,7 +44,7 @@
-

Documentation for Sequel (v5.72.0)

+

Documentation for Sequel (v5.73.0)


@@ -166,6 +166,8 @@

Release Notes + 5.73 | + 5.72 | 5.71 | diff --git a/plugins.html b/plugins.html index 24dbf9061..0f92d95c7 100644 --- a/plugins.html +++ b/plugins.html @@ -45,7 +45,7 @@
-

Sequel::Model Plugins for v5.72.0

+

Sequel::Model Plugins for v5.73.0

diff --git a/rdoc-adapters/classes/Sequel/DB2/DatasetMethods.html b/rdoc-adapters/classes/Sequel/DB2/DatasetMethods.html index 918de61bb..d5d2ca361 100644 --- a/rdoc-adapters/classes/Sequel/DB2/DatasetMethods.html +++ b/rdoc-adapters/classes/Sequel/DB2/DatasetMethods.html @@ -98,15 +98,15 @@

Public Instance methods

[show source]
    # File lib/sequel/adapters/shared/db2.rb
-282 def cast_sql_append(sql, expr, type)
-283   if(type == String)
-284     sql << "RTRIM(CHAR("
-285     literal_append(sql, expr)
-286     sql << "))"
-287   else
-288     super
-289   end
-290 end
+294 def cast_sql_append(sql, expr, type) +295 if(type == String) +296 sql << "RTRIM(CHAR(" +297 literal_append(sql, expr) +298 sql << "))" +299 else +300 super +301 end +302 end
@@ -123,21 +123,21 @@

Public Instance methods

[show source]
    # File lib/sequel/adapters/shared/db2.rb
-292 def complex_expression_sql_append(sql, op, args)
-293   case op
-294   when :&, :|, :^, :%, :<<, :>>
-295     complex_expression_emulate_append(sql, op, args)
-296   when :'B~'
-297     literal_append(sql, SQL::Function.new(:BITNOT, *args))
-298   when :extract
-299     sql << args[0].to_s
-300     sql << '('
-301     literal_append(sql, args[1])
-302     sql << ')'
-303   else
-304     super
-305   end
-306 end
+304 def complex_expression_sql_append(sql, op, args) +305 case op +306 when :&, :|, :^, :%, :<<, :>> +307 complex_expression_emulate_append(sql, op, args) +308 when :'B~' +309 literal_append(sql, SQL::Function.new(:BITNOT, *args)) +310 when :extract +311 sql << args[0].to_s +312 sql << '(' +313 literal_append(sql, args[1]) +314 sql << ')' +315 else +316 super +317 end +318 end
@@ -154,9 +154,9 @@

Public Instance methods

[show source]
    # File lib/sequel/adapters/shared/db2.rb
-308 def quote_identifiers?
-309   @opts.fetch(:quote_identifiers, false)
-310 end
+320 def quote_identifiers? +321 @opts.fetch(:quote_identifiers, false) +322 end
@@ -173,9 +173,9 @@

Public Instance methods

[show source]
    # File lib/sequel/adapters/shared/db2.rb
-312 def supports_cte?(type=:select)
-313   type == :select
-314 end
+324 def supports_cte?(type=:select) +325 type == :select +326 end
@@ -194,9 +194,9 @@

Public Instance methods

[show source]
    # File lib/sequel/adapters/shared/db2.rb
-317 def supports_group_cube?
-318   true
-319 end
+329 def supports_group_cube? +330 true +331 end
@@ -215,9 +215,9 @@

Public Instance methods

[show source]
    # File lib/sequel/adapters/shared/db2.rb
-322 def supports_group_rollup?
-323   true
-324 end
+334 def supports_group_rollup? +335 true +336 end
@@ -236,9 +236,9 @@

Public Instance methods

[show source]
    # File lib/sequel/adapters/shared/db2.rb
-327 def supports_grouping_sets?
-328   true
-329 end
+339 def supports_grouping_sets? +340 true +341 end
@@ -257,9 +257,9 @@

Public Instance methods

[show source]
    # File lib/sequel/adapters/shared/db2.rb
-332 def supports_is_true?
-333   false
-334 end
+344 def supports_is_true? +345 false +346 end
@@ -278,9 +278,9 @@

Public Instance methods

[show source]
    # File lib/sequel/adapters/shared/db2.rb
-337 def supports_lateral_subqueries?
-338   true
-339 end
+349 def supports_lateral_subqueries? +350 true +351 end
@@ -299,9 +299,9 @@

Public Instance methods

[show source]
    # File lib/sequel/adapters/shared/db2.rb
-342 def supports_merge?
-343   true
-344 end
+354 def supports_merge? +355 true +356 end
@@ -320,9 +320,9 @@

Public Instance methods

[show source]
    # File lib/sequel/adapters/shared/db2.rb
-347 def supports_multiple_column_in?
-348   false
-349 end
+359 def supports_multiple_column_in? +360 false +361 end
@@ -341,9 +341,9 @@

Public Instance methods

[show source]
    # File lib/sequel/adapters/shared/db2.rb
-352 def supports_select_all_and_column?
-353   false
-354 end
+364 def supports_select_all_and_column? +365 false +366 end
@@ -362,9 +362,9 @@

Public Instance methods

[show source]
    # File lib/sequel/adapters/shared/db2.rb
-362 def supports_where_true?
-363   false
-364 end
+374 def supports_where_true? +375 false +376 end
@@ -383,9 +383,9 @@

Public Instance methods

[show source]
    # File lib/sequel/adapters/shared/db2.rb
-357 def supports_window_functions?
-358   true
-359 end
+369 def supports_window_functions? +370 true +371 end
diff --git a/rdoc-adapters/classes/Sequel/Postgres/DatasetMethods.html b/rdoc-adapters/classes/Sequel/Postgres/DatasetMethods.html index 7da4b048d..2c5353168 100644 --- a/rdoc-adapters/classes/Sequel/Postgres/DatasetMethods.html +++ b/rdoc-adapters/classes/Sequel/Postgres/DatasetMethods.html @@ -289,7 +289,7 @@

Public Instance methods

:rank

Set to true to order by the rank, so that closer matches are returned first.

:to_tsquery -

Can be set to :plain or :phrase to specify the function to use to convert the terms to a ts_query.

+

Can be set to :plain, :phrase, or :websearch to specify the function to use to convert the terms to a ts_query.

:tsquery

Specifies the terms argument is already a valid SQL expression returning a tsquery, and can be used directly in the query.

:tsvector @@ -316,30 +316,32 @@

Public Instance methods

1818 query_func = case to_tsquery = opts[:to_tsquery] 1819 when :phrase, :plain 1820 :"#{to_tsquery}to_tsquery" -1821 else -1822 (opts[:phrase] || opts[:plain]) ? :plainto_tsquery : :to_tsquery -1823 end -1824 -1825 terms = Sequel.function(query_func, lang, phrase_terms) -1826 end -1827 -1828 ds = where(Sequel.lit(["", " @@ ", ""], cols, terms)) +1821 when :websearch +1822 :"websearch_to_tsquery" +1823 else +1824 (opts[:phrase] || opts[:plain]) ? :plainto_tsquery : :to_tsquery +1825 end +1826 +1827 terms = Sequel.function(query_func, lang, phrase_terms) +1828 end 1829 -1830 if opts[:phrase] -1831 raise Error, "can't use :phrase with either :tsvector or :tsquery arguments to full_text_search together" if opts[:tsvector] || opts[:tsquery] -1832 ds = ds.grep(phrase_cols, "%#{escape_like(phrase_terms)}%", :case_insensitive=>true) -1833 end -1834 -1835 if opts[:rank] -1836 ds = ds.reverse{ts_rank_cd(cols, terms)} -1837 end -1838 -1839 if opts[:headline] -1840 ds = ds.select_append{ts_headline(lang, phrase_cols, terms).as(:headline)} -1841 end -1842 -1843 ds -1844 end +1830 ds = where(Sequel.lit(["", " @@ ", ""], cols, terms)) +1831 +1832 if opts[:phrase] +1833 raise Error, "can't use :phrase with either :tsvector or :tsquery arguments to full_text_search together" if opts[:tsvector] || opts[:tsquery] +1834 ds = ds.grep(phrase_cols, "%#{escape_like(phrase_terms)}%", :case_insensitive=>true) +1835 end +1836 +1837 if opts[:rank] +1838 ds = ds.reverse{ts_rank_cd(cols, terms)} +1839 end +1840 +1841 if opts[:headline] +1842 ds = ds.select_append{ts_headline(lang, phrase_cols, terms).as(:headline)} +1843 end +1844 +1845 ds +1846 end
@@ -358,21 +360,21 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-1847 def insert(*values)
-1848   if @opts[:returning]
-1849     # Already know which columns to return, let the standard code handle it
-1850     super
-1851   elsif @opts[:sql] || @opts[:disable_insert_returning]
-1852     # Raw SQL used or RETURNING disabled, just use the default behavior
-1853     # and return nil since sequence is not known.
-1854     super
-1855     nil
-1856   else
-1857     # Force the use of RETURNING with the primary key value,
-1858     # unless it has been disabled.
-1859     returning(insert_pk).insert(*values){|r| return r.values.first}
-1860   end
-1861 end
+1849 def insert(*values) +1850 if @opts[:returning] +1851 # Already know which columns to return, let the standard code handle it +1852 super +1853 elsif @opts[:sql] || @opts[:disable_insert_returning] +1854 # Raw SQL used or RETURNING disabled, just use the default behavior +1855 # and return nil since sequence is not known. +1856 super +1857 nil +1858 else +1859 # Force the use of RETURNING with the primary key value, +1860 # unless it has been disabled. +1861 returning(insert_pk).insert(*values){|r| return r.values.first} +1862 end +1863 end
@@ -431,9 +433,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-1898 def insert_conflict(opts=OPTS)
-1899   clone(:insert_conflict => opts)
-1900 end
+1900 def insert_conflict(opts=OPTS) +1901 clone(:insert_conflict => opts) +1902 end
@@ -457,9 +459,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-1908 def insert_ignore
-1909   insert_conflict
-1910 end
+1910 def insert_ignore +1911 insert_conflict +1912 end
@@ -478,11 +480,11 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-1915 def insert_select(*values)
-1916   return unless supports_insert_select?
-1917   # Handle case where query does not return a row
-1918   server?(:default).with_sql_first(insert_select_sql(*values)) || false
-1919 end
+1917 def insert_select(*values) +1918 return unless supports_insert_select? +1919 # Handle case where query does not return a row +1920 server?(:default).with_sql_first(insert_select_sql(*values)) || false +1921 end
@@ -501,10 +503,10 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-1923 def insert_select_sql(*values)
-1924   ds = opts[:returning] ? self : returning
-1925   ds.insert_sql(*values)
-1926 end
+1925 def insert_select_sql(*values) +1926 ds = opts[:returning] ? self : returning +1927 ds.insert_sql(*values) +1928 end
@@ -523,12 +525,12 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-1930 def join_table(type, table, expr=nil, options=OPTS, &block)
-1931   if expr.is_a?(SQL::AliasedExpression) && expr.expression.is_a?(Array) && !expr.expression.empty? && expr.expression.all?
-1932     options = options.merge(:join_using=>true)
-1933   end
-1934   super
-1935 end
+1932 def join_table(type, table, expr=nil, options=OPTS, &block) +1933 if expr.is_a?(SQL::AliasedExpression) && expr.expression.is_a?(Array) && !expr.expression.empty? && expr.expression.all? +1934 options = options.merge(:join_using=>true) +1935 end +1936 super +1937 end
@@ -547,21 +549,21 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-1942 def lock(mode, opts=OPTS)
-1943   if defined?(yield) # perform locking inside a transaction and yield to block
-1944     @db.transaction(opts){lock(mode, opts); yield}
-1945   else
-1946     sql = 'LOCK TABLE '.dup
-1947     source_list_append(sql, @opts[:from])
-1948     mode = mode.to_s.upcase.strip
-1949     unless LOCK_MODES.include?(mode)
-1950       raise Error, "Unsupported lock mode: #{mode}"
-1951     end
-1952     sql << " IN #{mode} MODE"
-1953     @db.execute(sql, opts)
-1954   end
-1955   nil
-1956 end
+1944 def lock(mode, opts=OPTS) +1945 if defined?(yield) # perform locking inside a transaction and yield to block +1946 @db.transaction(opts){lock(mode, opts); yield} +1947 else +1948 sql = 'LOCK TABLE '.dup +1949 source_list_append(sql, @opts[:from]) +1950 mode = mode.to_s.upcase.strip +1951 unless LOCK_MODES.include?(mode) +1952 raise Error, "Unsupported lock mode: #{mode}" +1953 end +1954 sql << " IN #{mode} MODE" +1955 @db.execute(sql, opts) +1956 end +1957 nil +1958 end
@@ -587,9 +589,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-1967 def merge_do_nothing_when_matched(&block)
-1968   _merge_when(:type=>:matched, &block)
-1969 end
+1969 def merge_do_nothing_when_matched(&block) +1970 _merge_when(:type=>:matched, &block) +1971 end
@@ -615,9 +617,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-1980 def merge_do_nothing_when_not_matched(&block)
-1981   _merge_when(:type=>:not_matched, &block)
-1982 end
+1982 def merge_do_nothing_when_not_matched(&block) +1983 _merge_when(:type=>:not_matched, &block) +1984 end
@@ -636,13 +638,13 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-1985 def merge_insert(*values, &block)
-1986   h = {:type=>:insert, :values=>values}
-1987   if override = @opts[:override]
-1988     h[:override] = insert_override_sql(String.new)
-1989   end
-1990   _merge_when(h, &block)
-1991 end
+1987 def merge_insert(*values, &block) +1988 h = {:type=>:insert, :values=>values} +1989 if override = @opts[:override] +1990 h[:override] = insert_override_sql(String.new) +1991 end +1992 _merge_when(h, &block) +1993 end
@@ -661,9 +663,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-1996 def overriding_system_value
-1997   clone(:override=>:system)
-1998 end
+1998 def overriding_system_value +1999 clone(:override=>:system) +2000 end
@@ -682,9 +684,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2002 def overriding_user_value
-2003   clone(:override=>:user)
-2004 end
+2004 def overriding_user_value +2005 clone(:override=>:user) +2006 end
@@ -701,13 +703,13 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2006 def supports_cte?(type=:select)
-2007   if type == :select
-2008     server_version >= 80400
-2009   else
-2010     server_version >= 90100
-2011   end
-2012 end
+2008 def supports_cte?(type=:select) +2009 if type == :select +2010 server_version >= 80400 +2011 else +2012 server_version >= 90100 +2013 end +2014 end
@@ -726,9 +728,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2016 def supports_cte_in_subqueries?
-2017   supports_cte?
-2018 end
+2018 def supports_cte_in_subqueries? +2019 supports_cte? +2020 end
@@ -747,9 +749,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2021 def supports_distinct_on?
-2022   true
-2023 end
+2023 def supports_distinct_on? +2024 true +2025 end
@@ -768,9 +770,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2026 def supports_group_cube?
-2027   server_version >= 90500
-2028 end
+2028 def supports_group_cube? +2029 server_version >= 90500 +2030 end
@@ -789,9 +791,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2031 def supports_group_rollup?
-2032   server_version >= 90500
-2033 end
+2033 def supports_group_rollup? +2034 server_version >= 90500 +2035 end
@@ -810,9 +812,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2036 def supports_grouping_sets?
-2037   server_version >= 90500
-2038 end
+2038 def supports_grouping_sets? +2039 server_version >= 90500 +2040 end
@@ -831,9 +833,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2046 def supports_insert_conflict?
-2047   server_version >= 90500
-2048 end
+2048 def supports_insert_conflict? +2049 server_version >= 90500 +2050 end
@@ -852,9 +854,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2041 def supports_insert_select?
-2042   !@opts[:disable_insert_returning]
-2043 end
+2043 def supports_insert_select? +2044 !@opts[:disable_insert_returning] +2045 end
@@ -873,9 +875,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2051 def supports_lateral_subqueries?
-2052   server_version >= 90300
-2053 end
+2053 def supports_lateral_subqueries? +2054 server_version >= 90300 +2055 end
@@ -894,9 +896,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2061 def supports_merge?
-2062   server_version >= 150000
-2063 end
+2063 def supports_merge? +2064 server_version >= 150000 +2065 end
@@ -915,9 +917,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2056 def supports_modifying_joins?
-2057   true
-2058 end
+2058 def supports_modifying_joins? +2059 true +2060 end
@@ -936,9 +938,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2066 def supports_nowait?
-2067   true
-2068 end
+2068 def supports_nowait? +2069 true +2070 end
@@ -957,9 +959,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2076 def supports_regexp?
-2077   true
-2078 end
+2078 def supports_regexp? +2079 true +2080 end
@@ -978,9 +980,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2071 def supports_returning?(type)
-2072   true
-2073 end
+2073 def supports_returning?(type) +2074 true +2075 end
@@ -999,9 +1001,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2081 def supports_skip_locked?
-2082   server_version >= 90500
-2083 end
+2083 def supports_skip_locked? +2084 server_version >= 90500 +2085 end
@@ -1020,9 +1022,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2086 def supports_timestamp_timezones?
-2087   true
-2088 end
+2088 def supports_timestamp_timezones? +2089 true +2090 end
@@ -1041,9 +1043,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2091 def supports_window_clause?
-2092   server_version >= 80400
-2093 end
+2093 def supports_window_clause? +2094 server_version >= 80400 +2095 end
@@ -1062,18 +1064,18 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2102 def supports_window_function_frame_option?(option)
-2103   case option
-2104   when :rows, :range
-2105     true
-2106   when :offset
-2107     server_version >= 90000
-2108   when :groups, :exclude
-2109     server_version >= 110000
-2110   else
-2111     false
-2112   end
-2113 end
+2104 def supports_window_function_frame_option?(option) +2105 case option +2106 when :rows, :range +2107 true +2108 when :offset +2109 server_version >= 90000 +2110 when :groups, :exclude +2111 server_version >= 110000 +2112 else +2113 false +2114 end +2115 end
@@ -1092,9 +1094,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2096 def supports_window_functions?
-2097   server_version >= 80400
-2098 end
+2098 def supports_window_functions? +2099 server_version >= 80400 +2100 end
@@ -1133,13 +1135,13 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2131 def truncate(opts = OPTS)
-2132   if opts.empty?
-2133     super()
-2134   else
-2135     clone(:truncate_opts=>opts).truncate
-2136   end
-2137 end
+2133 def truncate(opts = OPTS) +2134 if opts.empty? +2135 super() +2136 else +2137 clone(:truncate_opts=>opts).truncate +2138 end +2139 end
@@ -1158,9 +1160,9 @@

Public Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2142 def with_ties
-2143   clone(:limit_with_ties=>true)
-2144 end
+2144 def with_ties +2145 clone(:limit_with_ties=>true) +2146 end

Protected Instance methods

@@ -1180,18 +1182,18 @@

Protected Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2152 def _import(columns, values, opts=OPTS)
-2153   if @opts[:returning]
-2154     # no transaction: our multi_insert_sql_strategy should guarantee
-2155     # that there's only ever a single statement.
-2156     sql = multi_insert_sql(columns, values)[0]
-2157     returning_fetch_rows(sql).map{|v| v.length == 1 ? v.values.first : v}
-2158   elsif opts[:return] == :primary_key
-2159     returning(insert_pk)._import(columns, values, opts)
-2160   else
-2161     super
-2162   end
-2163 end
+2154 def _import(columns, values, opts=OPTS) +2155 if @opts[:returning] +2156 # no transaction: our multi_insert_sql_strategy should guarantee +2157 # that there's only ever a single statement. +2158 sql = multi_insert_sql(columns, values)[0] +2159 returning_fetch_rows(sql).map{|v| v.length == 1 ? v.values.first : v} +2160 elsif opts[:return] == :primary_key +2161 returning(insert_pk)._import(columns, values, opts) +2162 else +2163 super +2164 end +2165 end
@@ -1208,13 +1210,13 @@

Protected Instance methods

[show source]
     # File lib/sequel/adapters/shared/postgres.rb
-2165 def to_prepared_statement(type, *a)
-2166   if type == :insert && !@opts.has_key?(:returning)
-2167     returning(insert_pk).send(:to_prepared_statement, :insert_pk, *a)
-2168   else
-2169     super
-2170   end
-2171 end
+2167 def to_prepared_statement(type, *a) +2168 if type == :insert && !@opts.has_key?(:returning) +2169 returning(insert_pk).send(:to_prepared_statement, :insert_pk, *a) +2170 else +2171 super +2172 end +2173 end
diff --git a/rdoc-adapters/created.rid b/rdoc-adapters/created.rid index 143d11afe..b625e72bb 100644 --- a/rdoc-adapters/created.rid +++ b/rdoc-adapters/created.rid @@ -1,11 +1,11 @@ -Fri, 01 Sep 2023 00:25:02 -0700 +Sun, 01 Oct 2023 08:02:09 -0700 lib/sequel/adapters/ado.rb Tue, 21 Sep 2021 14:24:30 -0700 lib/sequel/adapters/ado/access.rb Tue, 21 Sep 2021 14:24:30 -0700 lib/sequel/adapters/ado/mssql.rb Mon, 28 Jan 2019 08:29:19 -0800 lib/sequel/adapters/amalgalite.rb Fri, 17 Dec 2021 16:59:47 -0800 -lib/sequel/adapters/ibmdb.rb Tue, 21 Sep 2021 14:24:30 -0700 +lib/sequel/adapters/ibmdb.rb Tue, 26 Sep 2023 09:59:16 -0700 lib/sequel/adapters/jdbc.rb Fri, 02 Sep 2022 09:11:30 -0700 -lib/sequel/adapters/jdbc/db2.rb Sun, 24 Feb 2019 17:45:08 -0800 +lib/sequel/adapters/jdbc/db2.rb Tue, 26 Sep 2023 09:59:16 -0700 lib/sequel/adapters/jdbc/derby.rb Fri, 03 Jun 2022 15:14:21 -0700 lib/sequel/adapters/jdbc/h2.rb Fri, 03 Jun 2022 15:14:21 -0700 lib/sequel/adapters/jdbc/hsqldb.rb Fri, 03 Jun 2022 15:14:21 -0700 @@ -29,11 +29,11 @@ lib/sequel/adapters/oracle.rb Wed, 21 Dec 2022 15:06:01 -0800 lib/sequel/adapters/postgres.rb Sun, 30 Oct 2022 19:13:54 -0700 lib/sequel/adapters/postgresql.rb Tue, 01 Aug 2017 08:12:00 -0700 lib/sequel/adapters/shared/access.rb Wed, 21 Dec 2022 15:06:01 -0800 -lib/sequel/adapters/shared/db2.rb Fri, 03 Jun 2022 15:14:21 -0700 +lib/sequel/adapters/shared/db2.rb Tue, 26 Sep 2023 09:59:16 -0700 lib/sequel/adapters/shared/mssql.rb Thu, 23 Mar 2023 13:17:57 -0700 lib/sequel/adapters/shared/mysql.rb Fri, 06 Jan 2023 13:58:57 -0800 lib/sequel/adapters/shared/oracle.rb Fri, 03 Feb 2023 15:15:42 -0800 -lib/sequel/adapters/shared/postgres.rb Thu, 27 Jul 2023 07:24:24 -0700 +lib/sequel/adapters/shared/postgres.rb Tue, 19 Sep 2023 16:05:21 -0700 lib/sequel/adapters/shared/sqlanywhere.rb Wed, 21 Dec 2022 15:06:01 -0800 lib/sequel/adapters/shared/sqlite.rb Fri, 10 Feb 2023 08:50:54 -0800 lib/sequel/adapters/sqlanywhere.rb Tue, 21 Sep 2021 14:24:30 -0700 diff --git a/rdoc-adapters/files/lib/sequel/adapters/ibmdb_rb.html b/rdoc-adapters/files/lib/sequel/adapters/ibmdb_rb.html index b53e8946e..6d5c56a44 100644 --- a/rdoc-adapters/files/lib/sequel/adapters/ibmdb_rb.html +++ b/rdoc-adapters/files/lib/sequel/adapters/ibmdb_rb.html @@ -31,7 +31,7 @@

ibmdb.rb
Last Update: -2021-09-21 14:24:30 -0700 +2023-09-26 09:59:16 -0700
diff --git a/rdoc-adapters/files/lib/sequel/adapters/jdbc/db2_rb.html b/rdoc-adapters/files/lib/sequel/adapters/jdbc/db2_rb.html index 38d267fe8..cb106d93f 100644 --- a/rdoc-adapters/files/lib/sequel/adapters/jdbc/db2_rb.html +++ b/rdoc-adapters/files/lib/sequel/adapters/jdbc/db2_rb.html @@ -31,7 +31,7 @@

db2.rb

Last Update: -2019-02-24 17:45:08 -0800 +2023-09-26 09:59:16 -0700
diff --git a/rdoc-adapters/files/lib/sequel/adapters/shared/db2_rb.html b/rdoc-adapters/files/lib/sequel/adapters/shared/db2_rb.html index c7a80a5e6..a082cf331 100644 --- a/rdoc-adapters/files/lib/sequel/adapters/shared/db2_rb.html +++ b/rdoc-adapters/files/lib/sequel/adapters/shared/db2_rb.html @@ -31,7 +31,7 @@

db2.rb

Last Update: -2022-06-03 15:14:21 -0700 +2023-09-26 09:59:16 -0700
diff --git a/rdoc-adapters/files/lib/sequel/adapters/shared/postgres_rb.html b/rdoc-adapters/files/lib/sequel/adapters/shared/postgres_rb.html index d8bfd49af..e72d98440 100644 --- a/rdoc-adapters/files/lib/sequel/adapters/shared/postgres_rb.html +++ b/rdoc-adapters/files/lib/sequel/adapters/shared/postgres_rb.html @@ -31,7 +31,7 @@

postgres.rb

Last Update: -2023-07-27 07:24:24 -0700 +2023-09-19 16:05:21 -0700
diff --git a/rdoc-plugins/classes/Sequel.html b/rdoc-plugins/classes/Sequel.html index 5ce9ec3a4..6f25afdf5 100644 --- a/rdoc-plugins/classes/Sequel.html +++ b/rdoc-plugins/classes/Sequel.html @@ -467,6 +467,9 @@

module lib/sequel/plugins/optimistic_locking_base.rb
  • +lib/sequel/plugins/paged_operations.rb +
  • +
  • lib/sequel/plugins/pg_array_associations.rb
  • diff --git a/rdoc-plugins/classes/Sequel/IntegerMigrator.html b/rdoc-plugins/classes/Sequel/IntegerMigrator.html index 3aa4b389a..45752d032 100644 --- a/rdoc-plugins/classes/Sequel/IntegerMigrator.html +++ b/rdoc-plugins/classes/Sequel/IntegerMigrator.html @@ -126,35 +126,35 @@

    Public Class methods

    [show source]
        # File lib/sequel/extensions/migration.rb
    -529 def initialize(db, directory, opts=OPTS)
    -530   super
    -531   @current = opts[:current] || current_migration_version
    -532 
    -533   latest_version = latest_migration_version
    -534   @target = if opts[:target]
    -535     opts[:target]
    -536   elsif opts[:relative]
    -537     @current + opts[:relative]
    -538   else
    -539     latest_version
    -540   end
    -541 
    -542   raise(Error, "No target and/or latest version available, probably because no migration files found or filenames don't follow the migration filename convention") unless target && latest_version
    -543 
    -544   if @target > latest_version
    -545     @target = latest_version
    -546   elsif @target < 0
    -547     @target = 0
    -548   end
    -549 
    -550   @direction = current < target ? :up : :down
    +525 def initialize(db, directory, opts=OPTS)
    +526   super
    +527   @current = opts[:current] || current_migration_version
    +528 
    +529   latest_version = latest_migration_version
    +530   @target = if opts[:target]
    +531     opts[:target]
    +532   elsif opts[:relative]
    +533     @current + opts[:relative]
    +534   else
    +535     latest_version
    +536   end
    +537 
    +538   raise(Error, "No target and/or latest version available, probably because no migration files found or filenames don't follow the migration filename convention") unless target && latest_version
    +539 
    +540   if @target > latest_version
    +541     @target = latest_version
    +542   elsif @target < 0
    +543     @target = 0
    +544   end
    +545 
    +546   @direction = current < target ? :up : :down
    +547 
    +548   if @direction == :down && @current >= @files.length && !@allow_missing_migration_files
    +549     raise Migrator::Error, "Missing migration version(s) needed to migrate down to target version (current: #{current}, target: #{target})"
    +550   end
     551 
    -552   if @direction == :down && @current >= @files.length && !@allow_missing_migration_files
    -553     raise Migrator::Error, "Missing migration version(s) needed to migrate down to target version (current: #{current}, target: #{target})"
    -554   end
    -555 
    -556   @migrations = get_migrations
    -557 end
    +552 @migrations = get_migrations +553 end
  • Public Instance methods

    @@ -174,9 +174,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/migration.rb
    -560 def is_current?
    -561   current_migration_version == target
    -562 end
    +556 def is_current? +557 current_migration_version == target +558 end
    @@ -195,19 +195,19 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/migration.rb
    -565 def run
    -566   migrations.zip(version_numbers).each do |m, v|
    -567     timer = Sequel.start_timer
    -568     db.log_info("Begin applying migration version #{v}, direction: #{direction}")
    -569     checked_transaction(m) do
    -570       m.apply(db, direction)
    -571       set_migration_version(up? ? v : v-1)
    -572     end
    -573     db.log_info("Finished applying migration version #{v}, direction: #{direction}, took #{sprintf('%0.6f', Sequel.elapsed_seconds_since(timer))} seconds")
    -574   end
    -575   
    -576   target
    -577 end
    +561 def run +562 migrations.zip(version_numbers).each do |m, v| +563 timer = Sequel.start_timer +564 db.log_info("Begin applying migration version #{v}, direction: #{direction}") +565 checked_transaction(m) do +566 m.apply(db, direction) +567 set_migration_version(up? ? v : v-1) +568 end +569 db.log_info("Finished applying migration version #{v}, direction: #{direction}, took #{sprintf('%0.6f', Sequel.elapsed_seconds_since(timer))} seconds") +570 end +571 +572 target +573 end
    diff --git a/rdoc-plugins/classes/Sequel/Plugins.html b/rdoc-plugins/classes/Sequel/Plugins.html index 17da3fec3..fb60ef211 100644 --- a/rdoc-plugins/classes/Sequel/Plugins.html +++ b/rdoc-plugins/classes/Sequel/Plugins.html @@ -203,6 +203,9 @@

    module lib/sequel/plugins/optimistic_locking_base.rb
  • +lib/sequel/plugins/paged_operations.rb +
  • +
  • lib/sequel/plugins/pg_array_associations.rb
  • @@ -400,6 +403,7 @@

    Classes and Modules

  • Sequel::Plugins::NestedAttributes
  • Sequel::Plugins::OptimisticLocking
  • Sequel::Plugins::OptimisticLockingBase
  • +
  • Sequel::Plugins::PagedOperations
  • Sequel::Plugins::PgArrayAssociations
  • Sequel::Plugins::PgAutoConstraintValidations
  • Sequel::Plugins::PgRow
  • diff --git a/rdoc-plugins/classes/Sequel/Plugins/ColumnEncryption.html b/rdoc-plugins/classes/Sequel/Plugins/ColumnEncryption.html index 02f673f74..c6d8b6585 100644 --- a/rdoc-plugins/classes/Sequel/Plugins/ColumnEncryption.html +++ b/rdoc-plugins/classes/Sequel/Plugins/ColumnEncryption.html @@ -298,9 +298,9 @@

    Public Class methods

    [show source]
        # File lib/sequel/plugins/column_encryption.rb
    -568 def self.apply(model, opts=OPTS)
    -569   model.plugin :serialization
    -570 end
    +589 def self.apply(model, opts=OPTS) +590 model.plugin :serialization +591 end
    @@ -317,25 +317,25 @@

    Public Class methods

    [show source]
        # File lib/sequel/plugins/column_encryption.rb
    -572 def self.configure(model)
    -573   dsl = DSL.new
    -574   yield dsl
    -575 
    -576   model.instance_exec do
    -577     unless dsl.keys.empty?
    -578       @column_encryption_keys = dsl.keys.freeze
    -579       @column_encryption_cryptor = nil
    -580     end
    -581 
    -582     @column_encryption_metadata = Hash[@column_encryption_metadata || {}]
    -583 
    -584     dsl.columns.each do |column, opts, block|
    -585       _encrypt_column(column, opts, &block)
    -586     end
    -587 
    -588     @column_encryption_metadata.freeze
    -589   end
    -590 end
    +593 def self.configure(model) +594 dsl = DSL.new +595 yield dsl +596 +597 model.instance_exec do +598 unless dsl.keys.empty? +599 @column_encryption_keys = dsl.keys.freeze +600 @column_encryption_cryptor = nil +601 end +602 +603 @column_encryption_metadata = Hash[@column_encryption_metadata || {}] +604 +605 dsl.columns.each do |column, opts, block| +606 _encrypt_column(column, opts, &block) +607 end +608 +609 @column_encryption_metadata.freeze +610 end +611 end
    diff --git a/rdoc-plugins/classes/Sequel/Plugins/ColumnEncryption/DatasetMethods.html b/rdoc-plugins/classes/Sequel/Plugins/ColumnEncryption/DatasetMethods.html index 58439fa26..30304fd43 100644 --- a/rdoc-plugins/classes/Sequel/Plugins/ColumnEncryption/DatasetMethods.html +++ b/rdoc-plugins/classes/Sequel/Plugins/ColumnEncryption/DatasetMethods.html @@ -65,14 +65,14 @@

    Public Instance methods

    [show source]
        # File lib/sequel/plugins/column_encryption.rb
    -717 def needing_reencryption
    -718   incorrect_column_prefixes = model.send(:column_encryption_metadata).map do |column, metadata|
    -719     prefix = metadata.key_searcher.call
    -720     (Sequel[column] < prefix) | (Sequel[column] > prefix + 'B')
    -721   end
    -722 
    -723   where(Sequel.|(*incorrect_column_prefixes))
    -724 end
    +738 def needing_reencryption +739 incorrect_column_prefixes = model.send(:column_encryption_metadata).map do |column, metadata| +740 prefix = metadata.key_searcher.call +741 (Sequel[column] < prefix) | (Sequel[column] > prefix + 'B') +742 end +743 +744 where(Sequel.|(*incorrect_column_prefixes)) +745 end
    @@ -91,16 +91,16 @@

    Public Instance methods

    [show source]
        # File lib/sequel/plugins/column_encryption.rb
    -704 def with_encrypted_value(column, value)
    -705   metadata = model.send(:column_encryption_metadata)[column]
    -706   
    -707   unless metadata && metadata.data_searcher
    -708     raise Error, "lookup for encrypted column #{column.inspect} is not supported"
    -709   end
    -710 
    -711   prefixes = metadata.data_searcher.call(value)
    -712   where(Sequel.|(*prefixes.map{|v| Sequel.like(column, "#{escape_like(v)}%")}))
    -713 end
    +725 def with_encrypted_value(column, value) +726 metadata = model.send(:column_encryption_metadata)[column] +727 +728 unless metadata && metadata.data_searcher +729 raise Error, "lookup for encrypted column #{column.inspect} is not supported" +730 end +731 +732 prefixes = metadata.data_searcher.call(value) +733 where(Sequel.|(*prefixes.map{|v| Sequel.like(column, "#{escape_like(v)}%")})) +734 end
    diff --git a/rdoc-plugins/classes/Sequel/Plugins/ColumnEncryption/InstanceMethods.html b/rdoc-plugins/classes/Sequel/Plugins/ColumnEncryption/InstanceMethods.html index 6ddca15b7..49e3434ab 100644 --- a/rdoc-plugins/classes/Sequel/Plugins/ColumnEncryption/InstanceMethods.html +++ b/rdoc-plugins/classes/Sequel/Plugins/ColumnEncryption/InstanceMethods.html @@ -64,18 +64,18 @@

    Public Instance methods

    [show source]
        # File lib/sequel/plugins/column_encryption.rb
    -687 def reencrypt
    -688   do_save = false
    -689 
    -690   model.send(:column_encryption_metadata).each do |column, metadata|
    -691     if (value = values[column]) && !value.start_with?(metadata.key_searcher.call)
    -692       do_save = true
    -693       values[column] = metadata.encryptor.call(metadata.decryptor.call(value))
    -694     end
    -695   end
    -696 
    -697   save if do_save
    -698 end
    +708 def reencrypt +709 do_save = false +710 +711 model.send(:column_encryption_metadata).each do |column, metadata| +712 if (value = values[column]) && !value.start_with?(metadata.key_searcher.call) +713 do_save = true +714 values[column] = metadata.encryptor.call(metadata.decryptor.call(value)) +715 end +716 end +717 +718 save if do_save +719 end diff --git a/rdoc-plugins/classes/Sequel/Plugins/PagedOperations.html b/rdoc-plugins/classes/Sequel/Plugins/PagedOperations.html new file mode 100644 index 000000000..1829fc5a8 --- /dev/null +++ b/rdoc-plugins/classes/Sequel/Plugins/PagedOperations.html @@ -0,0 +1,123 @@ + + + +Sequel::Plugins::PagedOperations + + + + + + +
    +
    +

    module +Sequel::Plugins::PagedOperations +

    +
      +
    1. +lib/sequel/plugins/paged_operations.rb +
    2. +
    +
    +
    +
    +
    +

    The paged_operations plugin adds paged_update and paged_delete dataset methods. These behave similarly to the default update and delete dataset methods, except that the update or deletion is done in potentially multiple queries (by default, affecting 1000 rows per query). For a large table, this prevents the change from locking the table for a long period of time.

    + +

    Because the point of this is to prevent locking tables for long periods of time, the separate queries are not contained in a transaction, which means if a later query fails, earlier queries will still be committed. You could prevent this by using a transaction manually, but that defeats the purpose of using these methods.

    + +

    Examples:

    + +
    Album.where{name <= 'M'}.paged_update(updated_at: Sequel::CURRENT_TIMESTAMP)
    +# SELECT id FROM albums WHERE (name <= 'M') ORDER BY id LIMIT 1 OFFSET 1000
    +# UPDATE albums SET updated_at = CURRENT_TIMESTAMP WHERE ((name <= 'M') AND ("id" < 1002))
    +# SELECT id FROM albums WHERE ((name <= 'M') AND (id >= 1002)) ORDER BY id LIMIT 1 OFFSET 1000
    +# UPDATE albums SET updated_at = CURRENT_TIMESTAMP WHERE ((name <= 'M') AND ("id" < 2002) AND (id >= 1002))
    +# ...
    +# SELECT id FROM albums WHERE ((name <= 'M') AND (id >= 10002)) ORDER BY id LIMIT 1 OFFSET 1000
    +# UPDATE albums SET updated_at = CURRENT_TIMESTAMP WHERE ((name <= 'M') AND (id >= 10002))
    +
    +Album.where{name > 'M'}.paged_delete
    +# SELECT id FROM albums WHERE (name > 'M') ORDER BY id LIMIT 1 OFFSET 1000
    +# DELETE FROM albums WHERE ((name > 'M') AND (id < 1002))
    +# SELECT id FROM albums WHERE (name > 'M') ORDER BY id LIMIT 1 OFFSET 1000
    +# DELETE FROM albums WHERE ((name > 'M') AND (id < 2002))
    +# ...
    +# SELECT id FROM albums WHERE (name > 'M') ORDER BY id LIMIT 1 OFFSET 1000
    +# DELETE FROM albums WHERE (name > 'M')
    +
    + +

    The plugin also adds a paged_datasets method that will yield separate datasets limited in size that in total handle all rows in the receiver:

    + +
    Album.where{name > 'M'}.paged_datasets{|ds| puts ds.sql}
    +# Runs: SELECT id FROM albums WHERE (name <= 'M') ORDER BY id LIMIT 1 OFFSET 1000
    +# Prints: SELECT * FROM albums WHERE ((name <= 'M') AND ("id" < 1002))
    +# Runs: SELECT id FROM albums WHERE ((name <= 'M') AND (id >= 1002)) ORDER BY id LIMIT 1 OFFSET 1000
    +# Prints: SELECT * FROM albums WHERE ((name <= 'M') AND ("id" < 2002) AND (id >= 1002))
    +# ...
    +# Runs: SELECT id FROM albums WHERE ((name <= 'M') AND (id >= 10002)) ORDER BY id LIMIT 1 OFFSET 1000
    +# Prints: SELECT * FROM albums WHERE ((name <= 'M') AND (id >= 10002))
    +
    + +

    To set the number of rows per page, pass a :rows_per_page option:

    + +
    Album.where{name <= 'M'}.paged_update({x: Sequel[:x] + 1}, rows_per_page: 4)
    +# SELECT id FROM albums WHERE (name <= 'M') ORDER BY id LIMIT 1 OFFSET 4
    +# UPDATE albums SET x = x + 1 WHERE ((name <= 'M') AND ("id" < 5))
    +# SELECT id FROM albums WHERE ((name <= 'M') AND (id >= 5)) ORDER BY id LIMIT 1 OFFSET 4
    +# UPDATE albums SET x = x + 1 WHERE ((name <= 'M') AND ("id" < 9) AND (id >= 5))
    +# ...
    +# SELECT id FROM albums WHERE ((name <= 'M') AND (id >= 12345)) ORDER BY id LIMIT 1 OFFSET 4
    +# UPDATE albums SET x = x + 1 WHERE ((name <= 'M') AND (id >= 12345))
    +
    + +

    You should avoid using paged_update or paged_datasets with updates that modify the primary key, as such usage is not supported by this plugin.

    + +

    This plugin only supports models with scalar primary keys.

    + +

    Usage:

    + +
    # Make all model subclasses support paged update/delete/datasets
    +# (called before loading subclasses)
    +Sequel::Model.plugin :paged_operations
    +
    +# Make the Album class support paged update/delete/datasets
    +Album.plugin :paged_operations
    +
    +
    +
    +
    + +
    +
    + +
    +
    + + +
    + + + diff --git a/rdoc-plugins/classes/Sequel/Plugins/PagedOperations/ClassMethods.html b/rdoc-plugins/classes/Sequel/Plugins/PagedOperations/ClassMethods.html new file mode 100644 index 000000000..338d4382c --- /dev/null +++ b/rdoc-plugins/classes/Sequel/Plugins/PagedOperations/ClassMethods.html @@ -0,0 +1,53 @@ + + + +Sequel::Plugins::PagedOperations::ClassMethods + + + + + + +
    +
    +

    module +Sequel::Plugins::PagedOperations::ClassMethods +

    +
      +
    1. +lib/sequel/plugins/paged_operations.rb +
    2. +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +
    + + +
    + + + diff --git a/rdoc-plugins/classes/Sequel/Plugins/PagedOperations/DatasetMethods.html b/rdoc-plugins/classes/Sequel/Plugins/PagedOperations/DatasetMethods.html new file mode 100644 index 000000000..d8cf78d9d --- /dev/null +++ b/rdoc-plugins/classes/Sequel/Plugins/PagedOperations/DatasetMethods.html @@ -0,0 +1,175 @@ + + + +Sequel::Plugins::PagedOperations::DatasetMethods + + + + + + +
    +
    +

    module +Sequel::Plugins::PagedOperations::DatasetMethods +

    +
      +
    1. +lib/sequel/plugins/paged_operations.rb +
    2. +
    +
    +
    +
    +
    +
    +

    Methods

    +

    Public Instance

    +
      +
    1. paged_datasets
    2. +
    3. paged_delete
    4. +
    5. paged_update
    6. +
    +
    +
    +
    +
    +
    +

    Public Instance methods

    +
    + +
    +paged_datasets(opts=OPTS) + +
    +
    + +

    Yield datasets for subsets of the receiver that are limited to no more than 1000 rows (you can configure the number of rows using :rows_per_page).

    + +

    Options:

    +
    :rows_per_page +

    The maximum number of rows in each yielded dataset (unless concurrent modifications are made to the table).

    +
    + +
    +
    + +[show source] + +
        # File lib/sequel/plugins/paged_operations.rb
    + 91 def paged_datasets(opts=OPTS)
    + 92   unless defined?(yield)
    + 93     return enum_for(:paged_datasets, opts)
    + 94   end
    + 95 
    + 96   pk = _paged_operations_pk(:paged_update)
    + 97   base_offset_ds = offset_ds = _paged_operations_offset_ds(opts)
    + 98   first = nil
    + 99 
    +100   while last = offset_ds.get(pk)
    +101     ds = where(pk < last)
    +102     ds = ds.where(pk >= first) if first
    +103     yield ds
    +104     first = last
    +105     offset_ds = base_offset_ds.where(pk >= first)
    +106   end
    +107 
    +108   ds = self
    +109   ds = ds.where(pk >= first) if first
    +110   yield ds
    +111   nil
    +112 end
    +
    +
    +
    + +
    +paged_delete(opts=OPTS) + +
    +
    + +

    Delete all rows of the dataset using using multiple queries so that no more than 1000 rows are deleted at a time (you can configure the number of rows using :rows_per_page).

    + +

    Options:

    +
    :rows_per_page +

    The maximum number of rows affected by each DELETE query (unless concurrent modifications are made to the table).

    +
    + +
    +
    + +[show source] + +
        # File lib/sequel/plugins/paged_operations.rb
    +121 def paged_delete(opts=OPTS)
    +122   if (db.database_type == :oracle && !supports_fetch_next_rows?) || (db.database_type == :mssql && !is_2012_or_later?)
    +123     raise Error, "paged_delete is not supported on MSSQL/Oracle when using emulated offsets"
    +124   end
    +125   pk = _paged_operations_pk(:paged_delete)
    +126   rows_deleted = 0
    +127   offset_ds = _paged_operations_offset_ds(opts)
    +128   while last = offset_ds.get(pk)
    +129     rows_deleted += where(pk < last).delete
    +130   end
    +131   rows_deleted + delete
    +132 end
    +
    +
    +
    + +
    +paged_update(values, opts=OPTS) + +
    +
    + +

    Update all rows of the dataset using using multiple queries so that no more than 1000 rows are updated at a time (you can configure the number of rows using :rows_per_page). All arguments are passed to Dataset#update.

    + +

    Options:

    +
    :rows_per_page +

    The maximum number of rows affected by each UPDATE query (unless concurrent modifications are made to the table).

    +
    + +
    +
    + +[show source] + +
        # File lib/sequel/plugins/paged_operations.rb
    +142 def paged_update(values, opts=OPTS)
    +143   rows_updated = 0
    +144   paged_datasets(opts) do |ds|
    +145     rows_updated += ds.update(values)
    +146   end
    +147   rows_updated
    +148 end
    +
    +
    +
    +
    + +
    +
    + + +
    + + + diff --git a/rdoc-plugins/classes/Sequel/TimestampMigrator.html b/rdoc-plugins/classes/Sequel/TimestampMigrator.html index 89568cc45..cb4e69f4f 100644 --- a/rdoc-plugins/classes/Sequel/TimestampMigrator.html +++ b/rdoc-plugins/classes/Sequel/TimestampMigrator.html @@ -116,12 +116,12 @@

    Public Class methods

    [show source]
        # File lib/sequel/extensions/migration.rb
    -680 def initialize(db, directory, opts=OPTS)
    -681   super
    -682   @target = opts[:target]
    -683   @applied_migrations = get_applied_migrations
    -684   @migration_tuples = get_migration_tuples
    -685 end
    +676 def initialize(db, directory, opts=OPTS) +677 super +678 @target = opts[:target] +679 @applied_migrations = get_applied_migrations +680 @migration_tuples = get_migration_tuples +681 end

    Public Instance methods

    @@ -141,9 +141,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/migration.rb
    -689 def is_current?
    -690   migration_tuples.empty?
    -691 end
    +685 def is_current? +686 migration_tuples.empty? +687 end
    @@ -162,19 +162,19 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/migration.rb
    -694 def run
    -695   migration_tuples.each do |m, f, direction|
    -696     t = Time.now
    -697     db.log_info("Begin applying migration #{f}, direction: #{direction}")
    -698     checked_transaction(m) do
    -699       m.apply(db, direction)
    -700       fi = f.downcase
    -701       direction == :up ? ds.insert(column=>fi) : ds.where(column=>fi).delete
    -702     end
    -703     db.log_info("Finished applying migration #{f}, direction: #{direction}, took #{sprintf('%0.6f', Time.now - t)} seconds")
    -704   end
    -705   nil
    -706 end
    +690 def run +691 migration_tuples.each do |m, f, direction| +692 t = Time.now +693 db.log_info("Begin applying migration #{f}, direction: #{direction}") +694 checked_transaction(m) do +695 m.apply(db, direction) +696 fi = f.downcase +697 direction == :up ? ds.insert(column=>fi) : ds.where(column=>fi).delete +698 end +699 db.log_info("Finished applying migration #{f}, direction: #{direction}, took #{sprintf('%0.6f', Time.now - t)} seconds") +700 end +701 nil +702 end
    diff --git a/rdoc-plugins/created.rid b/rdoc-plugins/created.rid index b584b380d..f14876fe7 100644 --- a/rdoc-plugins/created.rid +++ b/rdoc-plugins/created.rid @@ -1,4 +1,4 @@ -Fri, 01 Sep 2023 00:25:07 -0700 +Sun, 01 Oct 2023 08:02:14 -0700 lib/sequel/extensions/_model_constraint_validations.rb Tue, 24 Jan 2017 12:27:29 -0800 lib/sequel/extensions/_model_pg_row.rb Tue, 11 Oct 2022 13:37:12 -0700 lib/sequel/extensions/_pretty_table.rb Mon, 17 Oct 2022 09:39:14 -0700 @@ -37,7 +37,7 @@ lib/sequel/extensions/inflector.rb Tue, 21 Sep 2021 14:24:30 -0700 lib/sequel/extensions/integer64.rb Thu, 16 Apr 2020 13:01:31 -0700 lib/sequel/extensions/is_distinct_from.rb Tue, 02 Aug 2022 16:36:07 -0700 lib/sequel/extensions/looser_typecasting.rb Thu, 22 Sep 2022 15:08:16 -0700 -lib/sequel/extensions/migration.rb Mon, 03 Jul 2023 08:26:16 -0700 +lib/sequel/extensions/migration.rb Thu, 21 Sep 2023 15:53:42 -0700 lib/sequel/extensions/mssql_emulate_lateral_with_apply.rb Thu, 11 Feb 2016 15:50:14 -0800 lib/sequel/extensions/named_timezones.rb Tue, 01 Nov 2022 13:39:51 -0700 lib/sequel/extensions/no_auto_literal_strings.rb Tue, 01 Aug 2017 08:12:00 -0700 @@ -111,7 +111,7 @@ lib/sequel/plugins/boolean_subsets.rb Thu, 16 Apr 2020 13:01:31 -0700 lib/sequel/plugins/caching.rb Fri, 25 Oct 2019 08:54:59 -0700 lib/sequel/plugins/class_table_inheritance.rb Fri, 21 Oct 2022 08:19:04 -0700 lib/sequel/plugins/column_conflicts.rb Tue, 01 Aug 2017 08:12:01 -0700 -lib/sequel/plugins/column_encryption.rb Tue, 04 Jan 2022 16:14:46 -0800 +lib/sequel/plugins/column_encryption.rb Wed, 20 Sep 2023 15:47:16 -0700 lib/sequel/plugins/column_select.rb Tue, 01 Aug 2017 08:12:01 -0700 lib/sequel/plugins/columns_updated.rb Tue, 28 Mar 2017 16:44:29 -0700 lib/sequel/plugins/composition.rb Fri, 21 Oct 2022 08:19:04 -0700 @@ -148,6 +148,7 @@ lib/sequel/plugins/mssql_optimistic_locking.rb Mon, 24 Jul 2023 12:06:10 -0700 lib/sequel/plugins/nested_attributes.rb Wed, 28 Dec 2022 11:43:04 -0800 lib/sequel/plugins/optimistic_locking.rb Mon, 24 Jul 2023 12:06:10 -0700 lib/sequel/plugins/optimistic_locking_base.rb Mon, 24 Jul 2023 12:06:10 -0700 +lib/sequel/plugins/paged_operations.rb Thu, 28 Sep 2023 15:03:58 -0700 lib/sequel/plugins/pg_array_associations.rb Fri, 11 Jun 2021 17:28:01 -0700 lib/sequel/plugins/pg_auto_constraint_validations.rb Thu, 17 Aug 2023 13:01:31 -0700 lib/sequel/plugins/pg_row.rb Tue, 01 Aug 2017 08:12:01 -0700 diff --git a/rdoc-plugins/files/lib/sequel/extensions/migration_rb.html b/rdoc-plugins/files/lib/sequel/extensions/migration_rb.html index 1978907c3..3b76bb405 100644 --- a/rdoc-plugins/files/lib/sequel/extensions/migration_rb.html +++ b/rdoc-plugins/files/lib/sequel/extensions/migration_rb.html @@ -31,7 +31,7 @@

    migration.rb
    Last Update: -2023-07-03 08:26:16 -0700 +2023-09-21 15:53:42 -0700
    diff --git a/rdoc-plugins/files/lib/sequel/plugins/column_encryption_rb.html b/rdoc-plugins/files/lib/sequel/plugins/column_encryption_rb.html index 9d040c6ef..9969ba7bb 100644 --- a/rdoc-plugins/files/lib/sequel/plugins/column_encryption_rb.html +++ b/rdoc-plugins/files/lib/sequel/plugins/column_encryption_rb.html @@ -31,7 +31,7 @@

    column_encryption.rb

    Last Update: -2022-01-04 16:14:46 -0800 +2023-09-20 15:47:16 -0700
    @@ -44,7 +44,6 @@

    column_encryption.rb

    Required files

    1. openssl
    2. -
    3. base64
    4. securerandom
    diff --git a/rdoc-plugins/files/lib/sequel/plugins/paged_operations_rb.html b/rdoc-plugins/files/lib/sequel/plugins/paged_operations_rb.html new file mode 100644 index 000000000..3ee69ebff --- /dev/null +++ b/rdoc-plugins/files/lib/sequel/plugins/paged_operations_rb.html @@ -0,0 +1,52 @@ + + + +paged_operations.rb + + + + + + +
    +
    +

    paged_operations.rb +

    +
    +lib/sequel/plugins/paged_operations.rb +
    +
    +Last Update: +2023-09-28 15:03:58 -0700 +
    +
    +
    +
    +
    +
    +
    + +
    +
    + + +
    + + + diff --git a/rdoc-plugins/fr_class_index.html b/rdoc-plugins/fr_class_index.html index 4a696e763..9538c6d06 100644 --- a/rdoc-plugins/fr_class_index.html +++ b/rdoc-plugins/fr_class_index.html @@ -249,6 +249,9 @@
    Sequel::Plugins::OptimisticLockingBase Sequel::Plugins::OptimisticLockingBase::ClassMethods Sequel::Plugins::OptimisticLockingBase::InstanceMethods +
    Sequel::Plugins::PagedOperations +Sequel::Plugins::PagedOperations::ClassMethods +Sequel::Plugins::PagedOperations::DatasetMethods
    Sequel::Plugins::PgArrayAssociations Sequel::Plugins::PgArrayAssociations::ClassMethods Sequel::Plugins::PgArrayAssociations::DatasetMethods diff --git a/rdoc-plugins/fr_file_index.html b/rdoc-plugins/fr_file_index.html index c5516bb2d..90a4e8bfb 100644 --- a/rdoc-plugins/fr_file_index.html +++ b/rdoc-plugins/fr_file_index.html @@ -160,6 +160,7 @@
  • nested_attributes.rb
  • optimistic_locking.rb
  • optimistic_locking_base.rb
  • +
  • paged_operations.rb
  • pg_array_associations.rb
  • pg_auto_constraint_validations.rb
  • pg_row.rb
  • diff --git a/rdoc-plugins/fr_method_index.html b/rdoc-plugins/fr_method_index.html index 71e7ddd11..81b29b59a 100644 --- a/rdoc-plugins/fr_method_index.html +++ b/rdoc-plugins/fr_method_index.html @@ -158,90 +158,90 @@
  • #validations (Sequel::Plugins::ValidationClassMethods::ClassMethods)
  • #wrap_json_primitives (Sequel::Postgres::JSONDatabaseMethods)
  • ::_load (Sequel::Postgres::HStore)
  • -
  • ::apply (Sequel::Plugins::ClassTableInheritance)
  • ::apply (Sequel::Plugins::PgXminOptimisticLocking)
  • -
  • ::apply (Sequel::Plugins::PreparedStatements)
  • -
  • ::apply (Sequel::Plugins::Touch)
  • -
  • ::apply (Sequel::Plugins::HookClassMethods)
  • -
  • ::apply (Sequel::Plugins::ColumnConflicts)
  • -
  • ::apply (Sequel::Plugins::AssociationDependencies)
  • -
  • ::apply (Sequel::Plugins::PreparedStatementsSafe)
  • +
  • ::apply (Sequel::Plugins::InvertedSubsets)
  • +
  • ::apply (Sequel::Plugins::SerializationModificationDetection)
  • ::apply (Sequel::Plugins::Tree)
  • -
  • ::apply (Sequel::Plugins::ColumnEncryption)
  • -
  • ::apply (Sequel::Plugins::UnusedAssociations)
  • ::apply (Sequel::Plugins::RcteTree)
  • -
  • ::apply (Sequel::Migration)
  • -
  • ::apply (Sequel::Plugins::LazyAttributes)
  • -
  • ::apply (Sequel::Plugins::AutoValidations)
  • -
  • ::apply (Sequel::Plugins::AutoValidationsConstraintValidationsPresenceMessage)
  • -
  • ::apply (Sequel::Plugins::Composition)
  • +
  • ::apply (Sequel::Plugins::ConstraintValidations)
  • ::apply (Sequel::Plugins::InputTransformer)
  • -
  • ::apply (Sequel::Plugins::StringStripper)
  • -
  • ::apply (Sequel::Plugins::ValidateAssociated)
  • -
  • ::apply (Sequel::Plugins::Serialization)
  • -
  • ::apply (Sequel::Plugins::InvertedSubsets)
  • -
  • ::apply (Sequel::Plugins::Finder)
  • -
  • ::apply (Sequel::Plugins::ValidationClassMethods)
  • -
  • ::apply (Sequel::Plugins::SubsetConditions)
  • ::apply (Sequel::Plugins::NestedAttributes)
  • ::apply (Sequel::Plugins::OptimisticLocking)
  • +
  • ::apply (Sequel::Plugins::HookClassMethods)
  • +
  • ::apply (Sequel::Plugins::OptimisticLockingBase)
  • +
  • ::apply (Sequel::Migration)
  • +
  • ::apply (Sequel::Plugins::PreparedStatementsSafe)
  • +
  • ::apply (Sequel::Plugins::MssqlOptimisticLocking)
  • +
  • ::apply (Sequel::Plugins::Composition)
  • +
  • ::apply (Sequel::Plugins::PreparedStatements)
  • +
  • ::apply (Sequel::Plugins::UnusedAssociations)
  • +
  • ::apply (Sequel::Plugins::Touch)
  • +
  • ::apply (Sequel::Plugins::PgArrayAssociations)
  • ::apply (Sequel::Migrator)
  • ::apply (Sequel::Plugins::Subclasses)
  • -
  • ::apply (Sequel::Plugins::SerializationModificationDetection)
  • +
  • ::apply (Sequel::Plugins::Finder)
  • +
  • ::apply (Sequel::Plugins::AssociationDependencies)
  • +
  • ::apply (Sequel::Plugins::Serialization)
  • +
  • ::apply (Sequel::Plugins::ColumnConflicts)
  • +
  • ::apply (Sequel::Plugins::ValidateAssociated)
  • ::apply (Sequel::Plugins::DelayAddAssociation)
  • +
  • ::apply (Sequel::Plugins::ValidationClassMethods)
  • +
  • ::apply (Sequel::Plugins::LazyAttributes)
  • +
  • ::apply (Sequel::Plugins::ClassTableInheritance)
  • ::apply (Sequel::Plugins::ValidationHelpersGenericTypeMessages)
  • -
  • ::apply (Sequel::Plugins::PgArrayAssociations)
  • -
  • ::apply (Sequel::Plugins::ConstraintValidations)
  • -
  • ::apply (Sequel::Plugins::OptimisticLockingBase)
  • -
  • ::apply (Sequel::Plugins::MssqlOptimisticLocking)
  • +
  • ::apply (Sequel::Plugins::AutoValidations)
  • +
  • ::apply (Sequel::Plugins::StringStripper)
  • +
  • ::apply (Sequel::Plugins::SubsetConditions)
  • +
  • ::apply (Sequel::Plugins::AutoValidationsConstraintValidationsPresenceMessage)
  • +
  • ::apply (Sequel::Plugins::ColumnEncryption)
  • ::check_current (Sequel::Migrator)
  • ::clear (String::Inflections)
  • -
  • ::configure (Sequel::Plugins::ColumnEncryption)
  • +
  • ::configure (Sequel::Plugins::StaticCache)
  • +
  • ::configure (Sequel::Plugins::Caching)
  • ::configure (Sequel::Plugins::StringStripper)
  • -
  • ::configure (Sequel::Plugins::PgRow)
  • -
  • ::configure (Sequel::Plugins::ConcurrentEagerLoading)
  • -
  • ::configure (Sequel::Plugins::InputTransformer)
  • -
  • ::configure (Sequel::Plugins::AutoValidationsConstraintValidationsPresenceMessage)
  • -
  • ::configure (Sequel::Plugins::Uuid)
  • -
  • ::configure (Sequel::Plugins::ConstraintValidations)
  • -
  • ::configure (Sequel::Plugins::SingleTableInheritance)
  • -
  • ::configure (Sequel::Plugins::AssociationDependencies)
  • -
  • ::configure (Sequel::Plugins::DefaultsSetter)
  • -
  • ::configure (Sequel::Plugins::SkipSavingColumns)
  • -
  • ::configure (Sequel::Plugins::Touch)
  • -
  • ::configure (Sequel::Plugins::PgXminOptimisticLocking)
  • -
  • ::configure (Sequel::Plugins::PgAutoConstraintValidations)
  • -
  • ::configure (Sequel::Plugins::UnusedAssociations)
  • -
  • ::configure (Sequel::Plugins::OptimisticLocking)
  • -
  • ::configure (Sequel::Plugins::MssqlOptimisticLocking)
  • -
  • ::configure (Sequel::Plugins::JsonSerializer)
  • -
  • ::configure (Sequel::Plugins::StaticCacheCache)
  • +
  • ::configure (Sequel::Plugins::List)
  • ::configure (Sequel::Plugins::TableSelect)
  • -
  • ::configure (Sequel::Plugins::InsertConflict)
  • -
  • ::configure (Sequel::Plugins::Serialization)
  • -
  • ::configure (Sequel::Plugins::Caching)
  • -
  • ::configure (Sequel::Plugins::CsvSerializer)
  • -
  • ::configure (Sequel::Plugins::InstanceSpecificDefault)
  • -
  • ::configure (Sequel::Plugins::UpdateRefresh)
  • -
  • ::configure (Sequel::Plugins::ColumnConflicts)
  • -
  • ::configure (Sequel::Plugins::AssociationProxies)
  • -
  • ::configure (Sequel::Plugins::BooleanSubsets)
  • -
  • ::configure (Sequel::Plugins::RequireValidSchema)
  • +
  • ::configure (Sequel::Plugins::PgAutoConstraintValidations)
  • +
  • ::configure (Sequel::Plugins::PgRow)
  • ::configure (Sequel::Plugins::AutoValidations)
  • ::configure (Sequel::Plugins::Timestamps)
  • +
  • ::configure (Sequel::Plugins::LazyAttributes)
  • +
  • ::configure (Sequel::Plugins::StaticCacheCache)
  • +
  • ::configure (Sequel::Plugins::ClassTableInheritance)
  • +
  • ::configure (Sequel::Plugins::ColumnConflicts)
  • +
  • ::configure (Sequel::Plugins::AssociationDependencies)
  • +
  • ::configure (Sequel::Plugins::Uuid)
  • +
  • ::configure (Sequel::Plugins::UpdateRefresh)
  • ::configure (Sequel::Plugins::BooleanReaders)
  • -
  • ::configure (Sequel::Plugins::ForceEncoding)
  • +
  • ::configure (Sequel::Plugins::ColumnEncryption)
  • +
  • ::configure (Sequel::Plugins::UnusedAssociations)
  • +
  • ::configure (Sequel::Plugins::PgXminOptimisticLocking)
  • ::configure (Sequel::Plugins::ColumnSelect)
  • -
  • ::configure (Sequel::Plugins::InstanceFilters)
  • -
  • ::configure (Sequel::Plugins::StaticCache)
  • -
  • ::configure (Sequel::Plugins::List)
  • -
  • ::configure (Sequel::Plugins::ClassTableInheritance)
  • +
  • ::configure (Sequel::Plugins::AutoValidationsConstraintValidationsPresenceMessage)
  • +
  • ::configure (Sequel::Plugins::DefaultsSetter)
  • +
  • ::configure (Sequel::Plugins::MssqlOptimisticLocking)
  • +
  • ::configure (Sequel::Plugins::TypecastOnLoad)
  • ::configure (Sequel::Plugins::PreparedStatementsSafe)
  • ::configure (Sequel::Plugins::SqlComments)
  • -
  • ::configure (Sequel::Plugins::TypecastOnLoad)
  • +
  • ::configure (Sequel::Plugins::ConcurrentEagerLoading)
  • +
  • ::configure (Sequel::Plugins::ForceEncoding)
  • +
  • ::configure (Sequel::Plugins::OptimisticLocking)
  • +
  • ::configure (Sequel::Plugins::SkipSavingColumns)
  • +
  • ::configure (Sequel::Plugins::SingleTableInheritance)
  • +
  • ::configure (Sequel::Plugins::BooleanSubsets)
  • ::configure (Sequel::Plugins::PrimaryKeyLookupCheckValues)
  • -
  • ::configure (Sequel::Plugins::LazyAttributes)
  • +
  • ::configure (Sequel::Plugins::InputTransformer)
  • +
  • ::configure (Sequel::Plugins::ConstraintValidations)
  • +
  • ::configure (Sequel::Plugins::CsvSerializer)
  • +
  • ::configure (Sequel::Plugins::RequireValidSchema)
  • +
  • ::configure (Sequel::Plugins::InsertConflict)
  • ::configure (Sequel::Plugins::InsertReturningSelect)
  • +
  • ::configure (Sequel::Plugins::InstanceFilters)
  • +
  • ::configure (Sequel::Plugins::JsonSerializer)
  • +
  • ::configure (Sequel::Plugins::Serialization)
  • +
  • ::configure (Sequel::Plugins::InstanceSpecificDefault)
  • +
  • ::configure (Sequel::Plugins::Touch)
  • +
  • ::configure (Sequel::Plugins::AssociationProxies)
  • ::core_extensions? (Sequel)
  • ::create (Sequel::MigrationDSL)
  • ::db_parse_json (Sequel::Postgres::JSONDatabaseMethods)
  • @@ -252,29 +252,29 @@
  • ::define_async_method (Sequel::Database::AsyncThreadPool::DatasetMethods)
  • ::descendants (Sequel::Migration)
  • ::empty (Sequel::Postgres::PGRange)
  • -
  • ::extended (Sequel::Postgres::PGRow::DatabaseMethods)
  • -
  • ::extended (Sequel::IndexCaching)
  • -
  • ::extended (Sequel::Postgres::ExtendedDateSupport)
  • +
  • ::extended (Sequel::Postgres::PGMultiRange::DatabaseMethods)
  • ::extended (Database::SQLComments)
  • +
  • ::extended (Sequel::Postgres::PGRow::DatabaseMethods)
  • +
  • ::extended (Sequel::ConstantSqlOverride::DatabaseMethods)
  • ::extended (Sequel::DatabaseQuery)
  • ::extended (Sequel::Postgres::PGRange::DatabaseMethods)
  • -
  • ::extended (Sequel::ConstraintValidations)
  • -
  • ::extended (Sequel::ConnectionExpiration)
  • -
  • ::extended (Sequel::Postgres::EnumDatabaseMethods)
  • -
  • ::extended (Sequel::ConnectionValidator)
  • -
  • ::extended (Sequel::Postgres::PGMultiRange::DatabaseMethods)
  • ::extended (Sequel::Postgres::PGArray::DatabaseMethods)
  • ::extended (Sequel::Postgres::HStore::DatabaseMethods)
  • -
  • ::extended (Sequel::ServerBlock)
  • ::extended (Sequel::Postgres::InetDatabaseMethods)
  • -
  • ::extended (Sequel::Postgres::AutoParameterize::DatabaseMethods)
  • -
  • ::extended (Sequel::ServerLogging)
  • -
  • ::extended (Sequel::Database::AsyncThreadPool::DatabaseMethods)
  • -
  • ::extended (Sequel::SQLLogNormalizer)
  • -
  • ::extended (Sequel::ConstantSqlOverride::DatabaseMethods)
  • +
  • ::extended (Sequel::ConstraintValidations)
  • ::extended (Sequel::Postgres::JSONDatabaseMethods)
  • +
  • ::extended (Sequel::IndexCaching)
  • ::extended (Sequel::Postgres::IntervalDatabaseMethods)
  • +
  • ::extended (Sequel::Database::AsyncThreadPool::DatabaseMethods)
  • +
  • ::extended (Sequel::ConnectionValidator)
  • +
  • ::extended (Sequel::Postgres::ExtendedDateSupport)
  • +
  • ::extended (Sequel::Postgres::EnumDatabaseMethods)
  • +
  • ::extended (Sequel::ServerBlock)
  • ::extended (Sequel::IdentifierMangling::DatabaseMethods)
  • +
  • ::extended (Sequel::SQLLogNormalizer)
  • +
  • ::extended (Sequel::Postgres::AutoParameterize::DatabaseMethods)
  • +
  • ::extended (Sequel::ConnectionExpiration)
  • +
  • ::extended (Sequel::ServerLogging)
  • ::from_range (Sequel::Postgres::PGRange)
  • ::inflections (String)
  • ::inherited (Sequel::Migration)
  • @@ -287,41 +287,41 @@
  • ::literal_duration (Sequel::Postgres::IntervalDatabaseMethods)
  • ::migration (Sequel)
  • ::migrator_class (Sequel::Migrator)
  • -
  • ::new (Sequel::TimestampMigrator)
  • ::new (Sequel::ConstraintValidations::Generator)
  • -
  • ::new (Sequel::MigrationReverser)
  • -
  • ::new (Sequel::ToDot)
  • -
  • ::new (Sequel::Plugins::AssociationProxies::AssociationProxy)
  • -
  • ::new (Sequel::Dataset::Query)
  • -
  • ::new (Sequel::Postgres::JSONBSubscriptOp)
  • -
  • ::new (Sequel::Migrator)
  • -
  • ::new (Sequel::SQL::EscapedLikeExpression)
  • -
  • ::new (Sequel::Postgres::InetOp)
  • -
  • ::new (Sequel::Postgres::PGRow::Parser)
  • +
  • ::new (Sequel::Database::AsyncThreadPool::BaseProxy)
  • ::new (Sequel::Postgres::PGArray)
  • -
  • ::new (Sequel::SQL::IsDistinctFrom)
  • ::new (Sequel::Postgres::PGArray::Creator)
  • -
  • ::new (Sequel::Postgres::AutoParameterize::PlaceholderLiteralizer)
  • -
  • ::new (Sequel::Plugins::JsonSerializer::Literal)
  • +
  • ::new (Sequel::Dataset::Query)
  • ::new (Sequel::Postgres::PGArray::Parser)
  • ::new (Sequel::Postgres::PGMultiRange)
  • +
  • ::new (Sequel::Plugins::AssociationProxies::AssociationProxy)
  • +
  • ::new (Sequel::SQL::StringAgg)
  • +
  • ::new (Sequel::Postgres::JSONBSubscriptOp)
  • +
  • ::new (Sequel::Postgres::AutoParameterize::PlaceholderLiteralizer)
  • +
  • ::new (Sequel::SQL::IsDistinctFrom)
  • +
  • ::new (Sequel::SQL::EscapedLikeExpression)
  • +
  • ::new (Sequel::ToDot)
  • +
  • ::new (Sequel::Plugins::AfterInitialize::InstanceMethods)
  • ::new (Sequel::MigrationDSL)
  • -
  • ::new (Sequel::SimpleMigration)
  • -
  • ::new (Sequel::MigrationAlterTableReverser)
  • -
  • ::new (Sequel::SQL::DateAdd)
  • -
  • ::new (Sequel::Postgres::PGRange::Parser)
  • -
  • ::new (Sequel::Postgres::PGMultiRange::Creator)
  • -
  • ::new (Sequel::Postgres::PGMultiRange::Parser)
  • +
  • ::new (Sequel::Postgres::PGRow::Parser)
  • ::new (Sequel::Database::AsyncThreadPool::Proxy)
  • -
  • ::new (Sequel::Plugins::AfterInitialize::InstanceMethods)
  • +
  • ::new (Sequel::Postgres::PGRange::Parser)
  • ::new (Sequel::Migration)
  • +
  • ::new (Sequel::Migrator)
  • +
  • ::new (Sequel::Postgres::PGMultiRange::Creator)
  • ::new (Sequel::Database::AsyncThreadPool::PreemptableProxy)
  • -
  • ::new (Sequel::IntegerMigrator)
  • -
  • ::new (Sequel::SQL::StringAgg)
  • +
  • ::new (Sequel::SimpleMigration)
  • +
  • ::new (Sequel::MigrationAlterTableReverser)
  • +
  • ::new (Sequel::Postgres::InetOp)
  • +
  • ::new (Sequel::TimestampMigrator)
  • ::new (Sequel::Postgres::PGRange)
  • -
  • ::new (Sequel::Database::AsyncThreadPool::BaseProxy)
  • -
  • ::new (Sequel::Plugins::ValidationClassMethods::ClassMethods::Generator)
  • ::new (Sequel::Postgres::HStoreSubscriptOp)
  • +
  • ::new (Sequel::IntegerMigrator)
  • +
  • ::new (Sequel::Plugins::JsonSerializer::Literal)
  • +
  • ::new (Sequel::SQL::DateAdd)
  • +
  • ::new (Sequel::MigrationReverser)
  • +
  • ::new (Sequel::Postgres::PGMultiRange::Parser)
  • +
  • ::new (Sequel::Plugins::ValidationClassMethods::ClassMethods::Generator)
  • ::object_to_json_data (Sequel::Plugins::JsonSerializer)
  • ::output (Sequel::ToDot)
  • ::parse (Sequel::Postgres::HStore)
  • @@ -339,28 +339,28 @@
  • ::wrap (Sequel::Postgres::PGRowOp)
  • #& (Hash)
  • #& (Sequel::CoreRefinements)
  • -
  • #* (Sequel::Postgres::PGRowOp)
  • #* (Sequel::CoreRefinements)
  • +
  • #* (Sequel::Postgres::PGRowOp)
  • #+ (Sequel::Postgres::AutoParameterize::QueryString)
  • #- (Sequel::Postgres::InetOp)
  • -
  • #- (Sequel::Postgres::JSONBOp)
  • #- (Sequel::Postgres::HStoreOp)
  • +
  • #- (Sequel::Postgres::JSONBOp)
  • #== (Sequel::Postgres::PGMultiRange)
  • #== (Sequel::Postgres::PGRange)
  • -
  • #=== (Sequel::Postgres::PGMultiRange)
  • #=== (Sequel::Postgres::PGRange)
  • -
  • #[] (Sequel::Postgres::ArrayOp)
  • -
  • #[] (Sequel::Plugins::AccessedColumns::InstanceMethods)
  • -
  • #[] (Symbol)
  • -
  • #[] (Sequel::Postgres::JSONBaseOp)
  • +
  • #=== (Sequel::Postgres::PGMultiRange)
  • #[] (Sequel::Postgres::PGRowOp)
  • -
  • #[] (Sequel::Plugins::DefaultsSetter::InstanceMethods)
  • -
  • #[] (Sequel::Plugins::ActiveModel::Errors)
  • -
  • #[] (Sequel::Postgres::JSONBOp)
  • -
  • #[] (Sequel::SymbolAref)
  • #[] (Sequel::Plugins::SplitValues::InstanceMethods)
  • +
  • #[] (Sequel::Postgres::ArrayOp)
  • +
  • #[] (Sequel::Postgres::JSONBOp)
  • #[] (Sequel::SQLite::JSONOp)
  • +
  • #[] (Sequel::Postgres::JSONBaseOp)
  • +
  • #[] (Sequel::Plugins::ActiveModel::Errors)
  • +
  • #[] (Symbol)
  • #[] (Sequel::Postgres::HStoreOp)
  • +
  • #[] (Sequel::SymbolAref)
  • +
  • #[] (Sequel::Plugins::DefaultsSetter::InstanceMethods)
  • +
  • #[] (Sequel::Plugins::AccessedColumns::InstanceMethods)
  • #[]= (Sequel::Plugins::InputTransformer::InstanceMethods)
  • #__value (Sequel::Database::AsyncThreadPool::BaseProxy)
  • #_dump (Sequel::Postgres::HStore)
  • @@ -374,24 +374,24 @@
  • #add_named_conversion_proc (Sequel::Postgres::PGArray::DatabaseMethods)
  • #add_typecast_on_load_columns (Sequel::Plugins::TypecastOnLoad::ClassMethods)
  • #after_create (Sequel::Plugins::Touch::InstanceMethods)
  • +
  • #after_destroy (Sequel::Plugins::ActiveModel::InstanceMethods)
  • +
  • #after_destroy (Sequel::Plugins::InstanceHooks::InstanceMethods)
  • #after_destroy (Sequel::Plugins::InstanceFilters::InstanceMethods)
  • -
  • #after_destroy (Sequel::Plugins::AssociationDependencies::InstanceMethods)
  • -
  • #after_destroy (Sequel::Plugins::List::InstanceMethods)
  • #after_destroy (Sequel::Plugins::Touch::InstanceMethods)
  • -
  • #after_destroy (Sequel::Plugins::InstanceHooks::InstanceMethods)
  • -
  • #after_destroy (Sequel::Plugins::ActiveModel::InstanceMethods)
  • +
  • #after_destroy (Sequel::Plugins::List::InstanceMethods)
  • +
  • #after_destroy (Sequel::Plugins::AssociationDependencies::InstanceMethods)
  • #after_initialize (Sequel::Plugins::AfterInitialize::InstanceMethods)
  • -
  • #after_save (Sequel::Plugins::AssociationPks::InstanceMethods)
  • #after_save (Sequel::Plugins::SerializationModificationDetection::InstanceMethods)
  • +
  • #after_save (Sequel::Plugins::AssociationPks::InstanceMethods)
  • +
  • #after_save (Sequel::Plugins::InstanceHooks::InstanceMethods)
  • #after_save (Sequel::Plugins::Dirty::InstanceMethods)
  • #after_save (Sequel::Plugins::AccessedColumns::InstanceMethods)
  • -
  • #after_save (Sequel::Plugins::InstanceHooks::InstanceMethods)
  • -
  • #after_update (Sequel::Plugins::UpdatePrimaryKey::InstanceMethods)
  • -
  • #after_update (Sequel::Plugins::UpdateRefresh::InstanceMethods)
  • +
  • #after_update (Sequel::Plugins::Dirty::InstanceMethods)
  • #after_update (Sequel::Plugins::Touch::InstanceMethods)
  • #after_update (Sequel::Plugins::ModificationDetection::InstanceMethods)
  • +
  • #after_update (Sequel::Plugins::UpdatePrimaryKey::InstanceMethods)
  • +
  • #after_update (Sequel::Plugins::UpdateRefresh::InstanceMethods)
  • #after_update (Sequel::Plugins::InstanceFilters::InstanceMethods)
  • -
  • #after_update (Sequel::Plugins::Dirty::InstanceMethods)
  • #after_validation (Sequel::Plugins::InstanceHooks::InstanceMethods)
  • #akeys (Sequel::Postgres::HStoreOp)
  • #all (Sequel::Postgres::ArrayOp)
  • @@ -414,8 +414,8 @@
  • #array_from_xml (Sequel::Plugins::XmlSerializer::ClassMethods)
  • #array_length (Sequel::SQLite::JSONOp)
  • #array_length (Sequel::Postgres::JSONBaseOp)
  • -
  • #array_type (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
  • #array_type (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
  • +
  • #array_type (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
  • #as (Sequel::SymbolAs)
  • #as_hash (Sequel::Plugins::StaticCache::ClassMethods)
  • #associate (Sequel::Plugins::AutoRestrictEagerGraph::ClassMethods)
  • @@ -432,65 +432,65 @@
  • #auto_validate_types? (Sequel::Plugins::AutoValidations::ClassMethods)
  • #avals (Sequel::Postgres::HStoreOp)
  • #before_create (Sequel::Plugins::PreparedStatementsSafe::InstanceMethods)
  • -
  • #before_destroy (Sequel::Plugins::InstanceHooks::InstanceMethods)
  • +
  • #before_destroy (Sequel::Plugins::OptimisticLockingBase::InstanceMethods)
  • #before_destroy (Sequel::Plugins::AssociationDependencies::InstanceMethods)
  • +
  • #before_destroy (Sequel::Plugins::InstanceHooks::InstanceMethods)
  • #before_destroy (Sequel::Plugins::StaticCache::InstanceMethods)
  • -
  • #before_destroy (Sequel::Plugins::OptimisticLockingBase::InstanceMethods)
  • -
  • #before_save (Sequel::Plugins::StaticCache::InstanceMethods)
  • #before_save (Sequel::Plugins::InstanceHooks::InstanceMethods)
  • #before_save (Sequel::Plugins::Tree::SingleRoot::InstanceMethods)
  • +
  • #before_save (Sequel::Plugins::StaticCache::InstanceMethods)
  • +
  • #before_update (Sequel::Plugins::OptimisticLockingBase::InstanceMethods)
  • #before_update (Sequel::Plugins::Caching::InstanceMethods)
  • #before_update (Sequel::Plugins::Timestamps::InstanceMethods)
  • -
  • #before_update (Sequel::Plugins::OptimisticLockingBase::InstanceMethods)
  • -
  • #before_validation (Sequel::Plugins::Uuid::InstanceMethods)
  • -
  • #before_validation (Sequel::Plugins::SingleTableInheritance::InstanceMethods)
  • +
  • #before_validation (Sequel::Plugins::Serialization::InstanceMethods)
  • #before_validation (Sequel::Plugins::Composition::InstanceMethods)
  • +
  • #before_validation (Sequel::Plugins::SingleTableInheritance::InstanceMethods)
  • #before_validation (Sequel::Plugins::List::InstanceMethods)
  • -
  • #before_validation (Sequel::Plugins::Serialization::InstanceMethods)
  • #before_validation (Sequel::Plugins::Timestamps::InstanceMethods)
  • +
  • #before_validation (Sequel::Plugins::Uuid::InstanceMethods)
  • #before_validation (Sequel::Plugins::ClassTableInheritance::InstanceMethods)
  • #blank? (TrueClass)
  • -
  • #blank? (NilClass)
  • +
  • #blank? (Object)
  • #blank? (FalseClass)
  • #blank? (Numeric)
  • -
  • #blank? (Object)
  • #blank? (String)
  • -
  • #bound_variable_arg (Sequel::Postgres::PGMultiRange::DatabaseMethods)
  • +
  • #blank? (NilClass)
  • +
  • #bound_variable_arg (Sequel::Postgres::PGRow::DatabaseMethods)
  • #bound_variable_arg (Sequel::Postgres::PGRange::DatabaseMethods)
  • -
  • #bound_variable_arg (Sequel::Postgres::InetDatabaseMethods)
  • -
  • #bound_variable_arg (Sequel::Postgres::HStore::DatabaseMethods)
  • #bound_variable_arg (Sequel::Postgres::ExtendedDateSupport)
  • -
  • #bound_variable_arg (Sequel::Postgres::IntervalDatabaseMethods)
  • -
  • #bound_variable_arg (Sequel::Plugins::PgRow::DatabaseMethods)
  • +
  • #bound_variable_arg (Sequel::Postgres::InetDatabaseMethods)
  • #bound_variable_arg (Sequel::Postgres::PGArray::DatabaseMethods)
  • -
  • #bound_variable_arg (Sequel::Postgres::PGRow::DatabaseMethods)
  • +
  • #bound_variable_arg (Sequel::Postgres::IntervalDatabaseMethods)
  • #bound_variable_arg (Sequel::Postgres::JSONDatabaseMethods)
  • +
  • #bound_variable_arg (Sequel::Plugins::PgRow::DatabaseMethods)
  • +
  • #bound_variable_arg (Sequel::Postgres::PGMultiRange::DatabaseMethods)
  • +
  • #bound_variable_arg (Sequel::Postgres::HStore::DatabaseMethods)
  • #cache_default_values? (Sequel::Plugins::DefaultsSetter::ClassMethods)
  • #cache_delete_pk (Sequel::Plugins::Caching::ClassMethods)
  • -
  • #cache_get_pk (Sequel::Plugins::Caching::ClassMethods)
  • #cache_get_pk (Sequel::Plugins::StaticCache::ClassMethods)
  • #cache_get_pk (Sequel::Plugins::StaticCache::ForbidLazyLoadClassMethods)
  • -
  • #cache_key (Sequel::Plugins::Caching::InstanceMethods)
  • +
  • #cache_get_pk (Sequel::Plugins::Caching::ClassMethods)
  • #cache_key (Sequel::Plugins::Caching::ClassMethods)
  • +
  • #cache_key (Sequel::Plugins::Caching::InstanceMethods)
  • #cache_key_prefix (Sequel::Plugins::Caching::ClassMethods)
  • #calculate_values_hashes (Sequel::Plugins::ModificationDetection::InstanceMethods)
  • -
  • #call (Sequel::Plugins::ForceEncoding::ClassMethods)
  • +
  • #call (Sequel::Postgres::PGRow::Parser)
  • #call (Sequel::Plugins::ModificationDetection::ClassMethods)
  • #call (Sequel::Postgres::PGArray::Creator)
  • +
  • #call (Sequel::Plugins::ForceEncoding::ClassMethods)
  • +
  • #call (Sequel::Postgres::IntervalDatabaseMethods::Parser)
  • +
  • #call (Sequel::Plugins::SplitValues::ClassMethods)
  • #call (Sequel::Postgres::PGMultiRange::Creator)
  • +
  • #call (Sequel::Plugins::TypecastOnLoad::ClassMethods)
  • #call (Sequel::Plugins::AfterInitialize::ClassMethods)
  • #call (Sequel::Postgres::PGRange::Parser)
  • -
  • #call (Sequel::Postgres::PGRow::Parser)
  • -
  • #call (Sequel::Plugins::TypecastOnLoad::ClassMethods)
  • -
  • #call (Sequel::Postgres::IntervalDatabaseMethods::Parser)
  • -
  • #call (Sequel::Plugins::SplitValues::ClassMethods)
  • #camelcase (String)
  • #camelize (String)
  • -
  • #can_have_associated_objects? (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
  • #can_have_associated_objects? (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
  • +
  • #can_have_associated_objects? (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
  • #cardinality (Sequel::Postgres::ArrayOp)
  • -
  • #case (Sequel::CoreRefinements)
  • #case (Hash)
  • +
  • #case (Sequel::CoreRefinements)
  • #case (Array)
  • #cast_sql_append (Sequel::Postgres::AutoParameterize::DatasetMethods)
  • #change (Sequel::MigrationDSL)
  • @@ -506,9 +506,9 @@
  • #column_previously_changed? (Sequel::Plugins::Dirty::InstanceMethods)
  • #column_previously_was (Sequel::Plugins::Dirty::InstanceMethods)
  • #column_schema_to_ruby_type (Sequel::SchemaDumper)
  • -
  • #columns (Sequel::Dataset::NullDataset)
  • #columns (Sequel::ColumnsIntrospection)
  • #columns (Sequel::Postgres::PGRow::HashRow)
  • +
  • #columns (Sequel::Dataset::NullDataset)
  • #columns! (Sequel::Plugins::EagerEach::DatasetMethods)
  • #comment (Sequel::SQLComments)
  • #complex_expression_sql_append (Sequel::Dataset::SplitArrayNil)
  • @@ -517,27 +517,27 @@
  • #complex_expression_sql_append (Sequel::Postgres::AutoParameterizeInArray)
  • #composition (Sequel::Plugins::Composition::ClassMethods)
  • #compositions (Sequel::Plugins::Composition::InstanceMethods)
  • -
  • #concat (Sequel::Postgres::ArrayOp)
  • #concat (Sequel::Postgres::HStoreOp)
  • #concat (Sequel::Postgres::JSONBOp)
  • +
  • #concat (Sequel::Postgres::ArrayOp)
  • #connect (Sequel::ServerLogging)
  • #constant_sql_append (Sequel::ConstantSqlOverride::DatasetMethods)
  • #constantize (String)
  • #constraint (Sequel::ConstraintValidations::AlterTableGeneratorMethods)
  • -
  • #contain_all (Sequel::Postgres::HStoreOp)
  • #contain_all (Sequel::Postgres::JSONBOp)
  • +
  • #contain_all (Sequel::Postgres::HStoreOp)
  • #contain_any (Sequel::Postgres::HStoreOp)
  • #contain_any (Sequel::Postgres::JSONBOp)
  • -
  • #contained_by (Sequel::Postgres::HStoreOp)
  • -
  • #contained_by (Sequel::Postgres::JSONBOp)
  • #contained_by (Sequel::Postgres::ArrayOp)
  • +
  • #contained_by (Sequel::Postgres::JSONBOp)
  • +
  • #contained_by (Sequel::Postgres::HStoreOp)
  • #contains (Sequel::Postgres::HStoreOp)
  • -
  • #contains (Sequel::Postgres::ArrayOp)
  • #contains (Sequel::Postgres::JSONBOp)
  • +
  • #contains (Sequel::Postgres::ArrayOp)
  • #convert_infinite_timestamps= (Sequel::Postgres::ExtendedDateSupport)
  • #count (Sequel::Plugins::StaticCache::ClassMethods)
  • -
  • #cover? (Sequel::Postgres::PGRange)
  • #cover? (Sequel::Postgres::PGMultiRange)
  • +
  • #cover? (Sequel::Postgres::PGRange)
  • #create_constraint_validations_table (Sequel::ConstraintValidations)
  • #create_enum (Sequel::Postgres::EnumDatabaseMethods)
  • #create_static_cache_update_function (Sequel::Postgres::StaticCacheUpdater)
  • @@ -557,31 +557,31 @@
  • #date_add_sql_append (Sequel::SQL::DateAdd::DatasetMethods)
  • #date_parse_input_handler (Sequel::DateParseInputHandler)
  • #date_sub (Sequel::SQL::Builders)
  • -
  • #db_type (Sequel::Postgres::PGRow::ArrayRow)
  • #db_type (Sequel::Postgres::PGRow::HashRow)
  • +
  • #db_type (Sequel::Postgres::PGRow::ArrayRow)
  • #def_dataset_method (Sequel::Plugins::DefDatasetMethod::ClassMethods)
  • #default_associated_key_alias (Sequel::Plugins::ManyThroughMany::ManyThroughManyAssociationReflection)
  • -
  • #default_key (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
  • #default_key (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
  • +
  • #default_key (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
  • #default_static_cache_update_name (Sequel::Postgres::StaticCacheUpdater)
  • #define_composition_accessor (Sequel::Plugins::Composition::ClassMethods)
  • #defined (Sequel::Postgres::HStoreOp)
  • -
  • #delete (Sequel::Postgres::HStoreOp)
  • #delete (Sequel::Plugins::ClassTableInheritance::InstanceMethods)
  • -
  • #delete (Sequel::Plugins::Caching::InstanceMethods)
  • #delete (Sequel::Dataset::NullDataset)
  • +
  • #delete (Sequel::Postgres::HStoreOp)
  • +
  • #delete (Sequel::Plugins::Caching::InstanceMethods)
  • #delete_path (Sequel::Postgres::JSONBOp)
  • #delete_unused_associations_files (Sequel::Plugins::UnusedAssociations::ClassMethods)
  • #demodulize (String)
  • -
  • #descendants (Sequel::Plugins::Subclasses::ClassMethods)
  • #descendants (Sequel::Plugins::Tree::InstanceMethods)
  • +
  • #descendants (Sequel::Plugins::Subclasses::ClassMethods)
  • #descendents (Sequel::Plugins::Subclasses::ClassMethods)
  • #deserialized_values (Sequel::Plugins::Serialization::InstanceMethods)
  • #dims (Sequel::Postgres::ArrayOp)
  • #disconnect_connection (Sequel::ServerLogging)
  • #distinct (Sequel::SQL::StringAgg)
  • -
  • #down (Sequel::Migration)
  • #down (Sequel::MigrationDSL)
  • +
  • #down (Sequel::Migration)
  • #drop (Sequel::ConstraintValidations::Generator)
  • #drop_constraint_validations_for (Sequel::ConstraintValidations)
  • #drop_constraint_validations_table (Sequel::ConstraintValidations)
  • @@ -600,14 +600,14 @@
  • #dump_schema_migration (Sequel::SchemaDumper)
  • #dump_static_cache_cache (Sequel::Plugins::StaticCacheCache::ClassMethods)
  • #dump_table_schema (Sequel::SchemaDumper)
  • -
  • #each (Sequel::SQLite::JSONOp)
  • -
  • #each (Sequel::Dataset::NullDataset)
  • #each (Sequel::Postgres::HStoreOp)
  • -
  • #each (Sequel::Plugins::EagerEach::DatasetMethods)
  • #each (Sequel::Plugins::StaticCache::ClassMethods)
  • #each (Sequel::GraphEach)
  • -
  • #each (Sequel::Plugins::ForbidLazyLoad::DatasetMethods)
  • #each (Sequel::Postgres::JSONBaseOp)
  • +
  • #each (Sequel::Plugins::ForbidLazyLoad::DatasetMethods)
  • +
  • #each (Sequel::Dataset::NullDataset)
  • +
  • #each (Sequel::SQLite::JSONOp)
  • +
  • #each (Sequel::Plugins::EagerEach::DatasetMethods)
  • #each_page (Sequel::DatasetPagination)
  • #each_text (Sequel::Postgres::JSONBaseOp)
  • #eager_graph_build_associations (Sequel::Plugins::EagerGraphEager::DatasetMethods)
  • @@ -622,8 +622,8 @@
  • #empty? (Sequel::Postgres::PGRange)
  • #empty_array_value (Sequel::EmptyArrayConsiderNulls)
  • #enum (Sequel::Plugins::Enum::ClassMethods)
  • -
  • #eql? (Sequel::Postgres::PGRange)
  • #eql? (Sequel::Postgres::PGMultiRange)
  • +
  • #eql? (Sequel::Postgres::PGRange)
  • #escaped_ilike (Sequel::SQL::StringMethods)
  • #escaped_like (Sequel::SQL::StringMethods)
  • #eval_inspect (Sequel::EvalInspect)
  • @@ -645,8 +645,8 @@
  • #filter_expr (Sequel::Dataset::AutoLiteralStrings)
  • #finalize_associations (Sequel::Plugins::ForbidLazyLoad::ClassMethods)
  • #finalize_settings (Sequel::Plugins::ManyThroughMany::ManyThroughManyAssociationReflection)
  • -
  • #finalize_settings (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
  • #finalize_settings (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
  • +
  • #finalize_settings (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
  • #find_or_new (Sequel::Plugins::UpdateOrCreate::ClassMethods)
  • #finder (Sequel::Plugins::Finder::ClassMethods)
  • #first (Sequel::Plugins::StaticCache::ClassMethods)
  • @@ -654,58 +654,58 @@
  • #first_page? (Sequel::Dataset::Pagination)
  • #forbid_lazy_load (Sequel::Plugins::ForbidLazyLoad::InstanceMethods)
  • #foreign_key (String)
  • -
  • #freeze (Sequel::Plugins::Composition::InstanceMethods)
  • -
  • #freeze (Sequel::Plugins::Dirty::InstanceMethods)
  • -
  • #freeze (Sequel::Plugins::BlacklistSecurity::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::ActiveModel::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::SingleTableInheritance::ClassMethods)
  • -
  • #freeze (Sequel::Postgres::AutoParameterize::QueryString)
  • -
  • #freeze (Sequel::ConstantSqlOverride::DatabaseMethods)
  • -
  • #freeze (Sequel::Plugins::TypecastOnLoad::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::ValidationClassMethods::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::InstanceFilters::InstanceMethods)
  • +
  • #freeze (Sequel::Plugins::Touch::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::CsvSerializer::ClassMethods)
  • #freeze (Sequel::Postgres::PGRange::DatabaseMethods)
  • +
  • #freeze (Sequel::Plugins::SingleTableInheritance::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::UpdateRefresh::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::ConstraintValidations::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::Tree::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::ColumnConflicts::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::Finder::ClassMethods)
  • #freeze (Sequel::Plugins::SerializationModificationDetection::InstanceMethods)
  • -
  • #freeze (Sequel::Plugins::ClassTableInheritance::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::Serialization::InstanceMethods)
  • #freeze (Sequel::Plugins::AssociationDependencies::ClassMethods)
  • -
  • #freeze (Sequel::Postgres::PGArray::DatabaseMethods)
  • +
  • #freeze (Sequel::Plugins::InputTransformer::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::Serialization::InstanceMethods)
  • #freeze (Sequel::Plugins::Serialization::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::CsvSerializer::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::Finder::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::UpdateRefresh::ClassMethods)
  • -
  • #freeze (Sequel::Postgres::PGRow::DatabaseMethods)
  • -
  • #freeze (Sequel::Postgres::PGMultiRange::DatabaseMethods)
  • -
  • #freeze (Sequel::Plugins::PreparedStatementsSafe::ClassMethods)
  • #freeze (Sequel::Plugins::HookClassMethods::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::LazyAttributes::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::DefaultsSetter::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::NestedAttributes::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::Tree::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::ActiveModel::ClassMethods)
  • #freeze (Sequel::Plugins::JsonSerializer::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::ColumnConflicts::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::ValidationClassMethods::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::PreparedStatementsSafe::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::BlacklistSecurity::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::LazyAttributes::ClassMethods)
  • +
  • #freeze (Sequel::Postgres::PGRow::DatabaseMethods)
  • +
  • #freeze (Sequel::Postgres::PGArray::DatabaseMethods)
  • +
  • #freeze (Sequel::Postgres::PGMultiRange::DatabaseMethods)
  • +
  • #freeze (Sequel::Plugins::Composition::InstanceMethods)
  • #freeze (Sequel::Plugins::Composition::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::AutoValidations::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::Touch::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::InstanceFilters::InstanceMethods)
  • #freeze (Sequel::Plugins::WhitelistSecurity::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::TypecastOnLoad::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::ClassTableInheritance::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::DefaultsSetter::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::Dirty::InstanceMethods)
  • #freeze (Sequel::Plugins::UnusedAssociations::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::InputTransformer::ClassMethods)
  • -
  • #freeze (Sequel::Plugins::ConstraintValidations::ClassMethods)
  • +
  • #freeze (Sequel::Plugins::NestedAttributes::ClassMethods)
  • +
  • #freeze (Sequel::ConstantSqlOverride::DatabaseMethods)
  • +
  • #freeze (Sequel::Plugins::AutoValidations::ClassMethods)
  • +
  • #freeze (Sequel::Postgres::AutoParameterize::QueryString)
  • #freeze_descendants (Sequel::Plugins::Subclasses::ClassMethods)
  • #freeze_descendents (Sequel::Plugins::Subclasses::ClassMethods)
  • #from (Sequel::Dataset::DatasetSourceAlias)
  • #from (Sequel::MSSQL::EmulateLateralWithApply)
  • #from_csv (Sequel::Plugins::CsvSerializer::InstanceMethods)
  • #from_csv (Sequel::Plugins::CsvSerializer::ClassMethods)
  • -
  • #from_json (Sequel::Plugins::JsonSerializer::ClassMethods)
  • #from_json (Sequel::Plugins::JsonSerializer::InstanceMethods)
  • +
  • #from_json (Sequel::Plugins::JsonSerializer::ClassMethods)
  • #from_json_node (Sequel::Plugins::JsonSerializer::InstanceMethods)
  • -
  • #from_xml (Sequel::Plugins::XmlSerializer::InstanceMethods)
  • #from_xml (Sequel::Plugins::XmlSerializer::ClassMethods)
  • -
  • #from_xml_node (Sequel::Plugins::XmlSerializer::ClassMethods)
  • +
  • #from_xml (Sequel::Plugins::XmlSerializer::InstanceMethods)
  • #from_xml_node (Sequel::Plugins::XmlSerializer::InstanceMethods)
  • -
  • #get (Sequel::Postgres::JSONBaseOp)
  • +
  • #from_xml_node (Sequel::Plugins::XmlSerializer::ClassMethods)
  • #get (Sequel::SQLite::JSONOp)
  • +
  • #get (Sequel::Postgres::JSONBaseOp)
  • #get_column_conflict! (Sequel::Plugins::ColumnConflicts::ClassMethods)
  • #get_column_value (Sequel::Plugins::ColumnConflicts::InstanceMethods)
  • #get_json (Sequel::SQLite::JSONOp)
  • @@ -713,61 +713,61 @@
  • #handle_silent_modification_failure? (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
  • #handle_silent_modification_failure? (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
  • #has_hooks? (Sequel::Plugins::HookClassMethods::ClassMethods)
  • -
  • #has_key? (Sequel::Postgres::JSONBOp)
  • #has_key? (Sequel::Postgres::HStoreOp)
  • +
  • #has_key? (Sequel::Postgres::JSONBOp)
  • #has_validations? (Sequel::Plugins::ValidationClassMethods::ClassMethods)
  • #hash (Sequel::Postgres::PGRange)
  • #hook_blocks (Sequel::Plugins::HookClassMethods::ClassMethods)
  • #hook_methods_for (Sequel::Plugins::HookClassMethods::ClassMethods)
  • -
  • #hstore (Sequel::Postgres::HStoreOpMethods)
  • -
  • #hstore (Sequel::CoreRefinements)
  • #hstore (Sequel::Postgres::HStoreOp)
  • -
  • #hstore (Sequel::Postgres::ArrayOp)
  • +
  • #hstore (Sequel::Postgres::HStoreOpMethods)
  • #hstore (Hash)
  • #hstore (Sequel::SQL::Builders)
  • +
  • #hstore (Sequel::Postgres::ArrayOp)
  • +
  • #hstore (Sequel::CoreRefinements)
  • #hstore_op (Sequel::SQL::Builders)
  • #humanize (String)
  • -
  • #identifier (Sequel::CoreRefinements)
  • #identifier (Symbol)
  • +
  • #identifier (Sequel::CoreRefinements)
  • #identifier_input_method (Sequel::IdentifierMangling::DatasetMethods)
  • #identifier_input_method= (Sequel::IdentifierMangling::DatabaseMethods)
  • #identifier_output_method (Sequel::IdentifierMangling::DatasetMethods)
  • #identifier_output_method= (Sequel::IdentifierMangling::DatabaseMethods)
  • #implicit_table_name (Sequel::Plugins::SingularTableNames::ClassMethods)
  • -
  • #include? (Sequel::Postgres::JSONBOp)
  • #include? (Sequel::Postgres::HStoreOp)
  • +
  • #include? (Sequel::Postgres::JSONBOp)
  • #indexes (Sequel::IndexCaching)
  • #initial_value (Sequel::Plugins::Dirty::InstanceMethods)
  • #initial_values (Sequel::Plugins::Dirty::InstanceMethods)
  • -
  • #initialize_copy (Sequel::Plugins::AccessedColumns::InstanceMethods)
  • #initialize_copy (Sequel::Postgres::AutoParameterize::QueryString)
  • +
  • #initialize_copy (Sequel::Plugins::AccessedColumns::InstanceMethods)
  • #input_transformer_order (Sequel::Plugins::InputTransformer::ClassMethods)
  • -
  • #insert (Sequel::Dataset::NullDataset)
  • #insert (Sequel::Postgres::JSONBOp)
  • +
  • #insert (Sequel::Dataset::NullDataset)
  • #insert (Sequel::SQLite::JSONOp)
  • #insert_conflict (Sequel::Plugins::InsertConflict::InstanceMethods)
  • -
  • #inspect (Sequel::Postgres::AutoParameterize::QueryString)
  • -
  • #inspect (Sequel::SQL::Constant)
  • #inspect (Sequel::SQL::Expression)
  • +
  • #inspect (Sequel::SQL::Constant)
  • +
  • #inspect (Sequel::Postgres::AutoParameterize::QueryString)
  • #instance_filter (Sequel::Plugins::InstanceFilters::InstanceMethods)
  • #integer_outside_bigint_range_strategy (Sequel::Postgres::ExtendedIntegerSupport)
  • #interval (Sequel::Sequel4DatasetMethods)
  • -
  • #is_current? (Sequel::IntegerMigrator)
  • #is_current? (Sequel::TimestampMigrator)
  • +
  • #is_current? (Sequel::IntegerMigrator)
  • #is_distinct? (Sequel::SQL::StringAgg)
  • #is_distinct_from (Sequel::SQL::IsDistinctFrom::Methods)
  • #is_distinct_from (Sequel::SQL::Builders)
  • #is_distinct_from_sql_append (Sequel::SQL::IsDistinctFrom::DatasetMethods)
  • #join (Sequel::Postgres::ArrayOp)
  • -
  • #join_table (Sequel::Dataset::DatasetSourceAlias)
  • #join_table (Sequel::MSSQL::EmulateLateralWithApply)
  • +
  • #join_table (Sequel::Dataset::DatasetSourceAlias)
  • #join_table_alias (Sequel::Plugins::ManyThroughMany::ManyThroughManyAssociationReflection)
  • #json (Sequel::SQLite::JSONOp)
  • -
  • #json_serializer_opts (Sequel::Plugins::JsonSerializer::InstanceMethods)
  • #json_serializer_opts (Sequel::Plugins::JsonSerializer::DatasetMethods)
  • +
  • #json_serializer_opts (Sequel::Plugins::JsonSerializer::InstanceMethods)
  • #key? (Sequel::Postgres::HStoreOp)
  • -
  • #keys (Sequel::Postgres::JSONBaseOp)
  • #keys (Sequel::Postgres::HStoreOp)
  • +
  • #keys (Sequel::Postgres::JSONBaseOp)
  • #last_page? (Sequel::Dataset::Pagination)
  • #last_position (Sequel::Plugins::List::InstanceMethods)
  • #lazy_attributes (Sequel::Plugins::LazyAttributes::ClassMethods)
  • @@ -786,9 +786,9 @@
  • #load_schema_cache (Sequel::SchemaCaching)
  • #load_schema_cache? (Sequel::SchemaCaching)
  • #load_typecast (Sequel::Plugins::TypecastOnLoad::InstanceMethods)
  • -
  • #log_connection_yield (Sequel::SQLLogNormalizer)
  • #log_connection_yield (Sequel::CallerLogging)
  • #log_connection_yield (Sequel::ErrorSQL)
  • +
  • #log_connection_yield (Sequel::SQLLogNormalizer)
  • #log_exception (Sequel::ErrorSQL)
  • #loose_count (Sequel::Postgres::LooseCount)
  • #lower (Sequel::Postgres::ArrayOp)
  • @@ -797,13 +797,13 @@
  • #map (Sequel::Plugins::StaticCache::ClassMethods)
  • #marshallable! (Sequel::Plugins::TacticalEagerLoading::InstanceMethods)
  • #member? (Sequel::Postgres::HStoreOp)
  • -
  • #merge (Sequel::Postgres::HStore)
  • #merge (Sequel::Postgres::HStoreOp)
  • -
  • #method_missing (Sequel::Plugins::ValidationClassMethods::ClassMethods::Generator)
  • -
  • #method_missing (Sequel::Plugins::AssociationProxies::AssociationProxy)
  • +
  • #merge (Sequel::Postgres::HStore)
  • #method_missing (Sequel::Dataset::Query)
  • -
  • #method_missing (Sequel::Database::AsyncThreadPool::BaseProxy)
  • #method_missing (Sequel::Migration)
  • +
  • #method_missing (Sequel::Plugins::AssociationProxies::AssociationProxy)
  • +
  • #method_missing (Sequel::Plugins::ValidationClassMethods::ClassMethods::Generator)
  • +
  • #method_missing (Sequel::Database::AsyncThreadPool::BaseProxy)
  • #minify (Sequel::SQLite::JSONOp)
  • #model_name (Sequel::Plugins::ActiveModel::InstanceMethods)
  • #move_down (Sequel::Plugins::List::InstanceMethods)
  • @@ -825,15 +825,15 @@
  • #on_duplicate_columns (Sequel::DuplicateColumnsHandler)
  • #one_through_many (Sequel::Plugins::ManyThroughMany::ClassMethods)
  • #op (Sequel::Postgres::JSONBArray)
  • -
  • #op (Sequel::Postgres::PGRow::HashRow)
  • -
  • #op (Sequel::Postgres::HStore)
  • +
  • #op (Sequel::Postgres::JSONHash)
  • +
  • #op (Sequel::Postgres::PGArray)
  • +
  • #op (Sequel::Postgres::PGRow::ArrayRow)
  • #op (Sequel::Postgres::PGMultiRange)
  • #op (Sequel::Postgres::JSONArray)
  • -
  • #op (Sequel::Postgres::PGRange)
  • -
  • #op (Sequel::Postgres::PGArray)
  • #op (Sequel::Postgres::JSONBHash)
  • -
  • #op (Sequel::Postgres::PGRow::ArrayRow)
  • -
  • #op (Sequel::Postgres::JSONHash)
  • +
  • #op (Sequel::Postgres::HStore)
  • +
  • #op (Sequel::Postgres::PGRow::HashRow)
  • +
  • #op (Sequel::Postgres::PGRange)
  • #operator (Sequel::ConstraintValidations::Generator)
  • #order (Sequel::SQL::StringAgg)
  • #output (Sequel::ToDot)
  • @@ -841,12 +841,15 @@
  • #page_count (Sequel::Dataset::Pagination)
  • #page_range (Sequel::Dataset::Pagination)
  • #page_size (Sequel::Dataset::Pagination)
  • +
  • #paged_datasets (Sequel::Plugins::PagedOperations::DatasetMethods)
  • +
  • #paged_delete (Sequel::Plugins::PagedOperations::DatasetMethods)
  • +
  • #paged_update (Sequel::Plugins::PagedOperations::DatasetMethods)
  • #paginate (Sequel::DatasetPagination)
  • #pagination_record_count (Sequel::Dataset::Pagination)
  • #parse (Sequel::Postgres::PGArray::Parser)
  • -
  • #parse (Sequel::Postgres::PGRow::Splitter)
  • #parse (Sequel::Postgres::PGMultiRange::Parser)
  • #parse (Sequel::Postgres::HStore::Parser)
  • +
  • #parse (Sequel::Postgres::PGRow::Splitter)
  • #patch (Sequel::SQLite::JSONOp)
  • #path_exists (Sequel::Postgres::JSONBOp)
  • #path_exists! (Sequel::Postgres::JSONBOp)
  • @@ -861,42 +864,42 @@
  • #path_query_first_tz (Sequel::Postgres::JSONBOp)
  • #path_query_tz (Sequel::Postgres::JSONBOp)
  • #persisted? (Sequel::Plugins::ActiveModel::InstanceMethods)
  • -
  • #pg_array (Sequel::Postgres::ArrayOp)
  • +
  • #pg_array (Sequel::Postgres::ArrayOpMethods)
  • #pg_array (Array)
  • -
  • #pg_array (Sequel::SQL::Builders)
  • +
  • #pg_array (Sequel::Postgres::ArrayOp)
  • #pg_array (Sequel::CoreRefinements)
  • -
  • #pg_array (Sequel::Postgres::ArrayOpMethods)
  • +
  • #pg_array (Sequel::SQL::Builders)
  • #pg_array_op (Sequel::SQL::Builders)
  • #pg_array_to_many (Sequel::Plugins::PgArrayAssociations::ClassMethods)
  • #pg_auto_constraint_validation_override (Sequel::Plugins::PgAutoConstraintValidations::ClassMethods)
  • -
  • #pg_inet (Sequel::Postgres::InetOpMethods)
  • #pg_inet (Sequel::Postgres::InetOp)
  • +
  • #pg_inet (Sequel::Postgres::InetOpMethods)
  • #pg_inet_op (Sequel::SQL::Builders)
  • +
  • #pg_json (Sequel::CoreRefinements)
  • #pg_json (Array)
  • #pg_json (Sequel::Postgres::JSONOp)
  • #pg_json (Hash)
  • #pg_json (Sequel::Postgres::JSONOpMethods)
  • -
  • #pg_json (Sequel::CoreRefinements)
  • #pg_json (Sequel::SQL::Builders)
  • #pg_json_op (Sequel::SQL::Builders)
  • #pg_json_wrap (Sequel::SQL::Builders)
  • -
  • #pg_jsonb (Sequel::CoreRefinements)
  • #pg_jsonb (Sequel::SQL::Builders)
  • -
  • #pg_jsonb (Sequel::Postgres::JSONOpMethods)
  • #pg_jsonb (Sequel::Postgres::JSONBOp)
  • -
  • #pg_jsonb (Array)
  • #pg_jsonb (Hash)
  • +
  • #pg_jsonb (Sequel::Postgres::JSONOpMethods)
  • +
  • #pg_jsonb (Sequel::CoreRefinements)
  • +
  • #pg_jsonb (Array)
  • #pg_jsonb_op (Sequel::SQL::Builders)
  • #pg_jsonb_wrap (Sequel::SQL::Builders)
  • #pg_multirange (Sequel::SQL::Builders)
  • -
  • #pg_range (Sequel::Postgres::RangeOp)
  • -
  • #pg_range (Sequel::CoreRefinements)
  • #pg_range (Sequel::Postgres::RangeOpMethods)
  • -
  • #pg_range (Sequel::SQL::Builders)
  • #pg_range (Range)
  • +
  • #pg_range (Sequel::CoreRefinements)
  • +
  • #pg_range (Sequel::Postgres::RangeOp)
  • +
  • #pg_range (Sequel::SQL::Builders)
  • #pg_range_op (Sequel::SQL::Builders)
  • -
  • #pg_row (Array)
  • #pg_row (Sequel::SQL::Builders)
  • +
  • #pg_row (Array)
  • #pg_row (Sequel::Postgres::PGRowOp::ExpressionMethods)
  • #pg_row (Sequel::CoreRefinements)
  • #pg_row_op (Sequel::SQL::Builders)
  • @@ -907,8 +910,8 @@
  • #populate (Sequel::Postgres::HStoreOp)
  • #populate_set (Sequel::Postgres::JSONBaseOp)
  • #position_value (Sequel::Plugins::List::InstanceMethods)
  • -
  • #predicate_key (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
  • #predicate_key (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
  • +
  • #predicate_key (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
  • #prepared_finder (Sequel::Plugins::Finder::ClassMethods)
  • #pretty (Sequel::Postgres::JSONBOp)
  • #prev (Sequel::Plugins::List::InstanceMethods)
  • @@ -921,8 +924,8 @@
  • #process (Sequel::ConstraintValidations::Generator)
  • #process_csv_serializer_opts (Sequel::Plugins::CsvSerializer::ClassMethods)
  • #push (Sequel::Postgres::ArrayOp)
  • -
  • #query (Sequel::DatabaseQuery)
  • #query (Sequel::DatasetQuery)
  • +
  • #query (Sequel::DatabaseQuery)
  • #quote_identifiers= (Sequel::IdentifierMangling::DatabaseMethods)
  • #quote_identifiers? (Sequel::IdentifierMangling::DatasetMethods)
  • #quote_identifiers? (Sequel::IdentifierMangling::DatabaseMethods)
  • @@ -936,17 +939,17 @@
  • #register_range_type (Sequel::Postgres::PGRange::DatabaseMethods)
  • #register_row_type (Sequel::Postgres::PGRow::DatabaseMethods)
  • #register_row_type (Sequel::Plugins::PgRow::ClassMethods)
  • -
  • #remove (Sequel::SQLite::JSONOp)
  • #remove (Sequel::Postgres::ArrayOp)
  • +
  • #remove (Sequel::SQLite::JSONOp)
  • #remove_before_destroy? (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
  • #rename_enum (Sequel::Postgres::EnumDatabaseMethods)
  • #rename_enum_value (Sequel::Postgres::EnumDatabaseMethods)
  • -
  • #replace (Sequel::SQLite::JSONOp)
  • #replace (Sequel::Postgres::ArrayOp)
  • +
  • #replace (Sequel::SQLite::JSONOp)
  • #reset_column (Sequel::Plugins::Dirty::InstanceMethods)
  • #respond_to_missing? (Sequel::Database::AsyncThreadPool::BaseProxy)
  • -
  • #respond_to_missing? (Sequel::Plugins::ValidationClassMethods::ClassMethods::Generator)
  • #respond_to_missing? (Sequel::Migration)
  • +
  • #respond_to_missing? (Sequel::Plugins::ValidationClassMethods::ClassMethods::Generator)
  • #reverse (Sequel::MigrationReverser)
  • #reverse (Sequel::MigrationAlterTableReverser)
  • #root (Sequel::Plugins::Tree::InstanceMethods)
  • @@ -955,8 +958,8 @@
  • #roots (Sequel::Plugins::Tree::DatasetMethods)
  • #roots_dataset (Sequel::Plugins::Tree::DatasetMethods)
  • #row_proc (Sequel::Plugins::Sharding::DatasetMethods)
  • -
  • #row_type (Sequel::Postgres::PGRow::DatabaseMethods)
  • #row_type (Sequel::Plugins::PgRow::DatabaseMethods)
  • +
  • #row_type (Sequel::Postgres::PGRow::DatabaseMethods)
  • #run (Sequel::TimestampMigrator)
  • #run (Sequel::IntegerMigrator)
  • #run_after_commit_hooks (Database::RunTransactionHooks)
  • @@ -965,14 +968,14 @@
  • #select_remove (Sequel::SelectRemove)
  • #self_and_siblings (Sequel::Plugins::Tree::InstanceMethods)
  • #separate_query_per_table? (Sequel::Plugins::ManyThroughMany::ManyThroughManyAssociationReflection)
  • -
  • #sequel_ast_transform (Sequel::Postgres::JSONBSubscriptOp)
  • #sequel_ast_transform (Sequel::Postgres::HStoreSubscriptOp)
  • -
  • #sequel_auto_param_type (Sequel::Postgres)
  • -
  • #sequel_auto_param_type (Sequel::Postgres::PGRange)
  • -
  • #sequel_auto_param_type (Sequel::Postgres::PGRow::ArrayRow)
  • -
  • #sequel_auto_param_type (Sequel::Postgres::HStore)
  • +
  • #sequel_ast_transform (Sequel::Postgres::JSONBSubscriptOp)
  • #sequel_auto_param_type (Sequel::Postgres::PGRow::HashRow)
  • #sequel_auto_param_type (Sequel::Postgres::PGMultiRange)
  • +
  • #sequel_auto_param_type (Sequel::Postgres::PGRange)
  • +
  • #sequel_auto_param_type (Sequel::Postgres::HStore)
  • +
  • #sequel_auto_param_type (Sequel::Postgres::PGRow::ArrayRow)
  • +
  • #sequel_auto_param_type (Sequel::Postgres)
  • #sequel_auto_param_type (Sequel::Postgres::PGArray)
  • #serialize_attributes (Sequel::Plugins::Serialization::ClassMethods)
  • #set (Sequel::SQLite::JSONOp)
  • @@ -1014,31 +1017,31 @@
  • #sql_comments_dataset_methods (Sequel::Plugins::SqlComments::ClassMethods)
  • #sql_comments_instance_methods (Sequel::Plugins::SqlComments::ClassMethods)
  • #sql_expr (Object)
  • +
  • #sql_expr (Array)
  • #sql_expr (Sequel::CoreRefinements)
  • #sql_expr (Hash)
  • -
  • #sql_expr (Array)
  • -
  • #sql_function (Sequel::CoreRefinements)
  • #sql_function (Symbol)
  • +
  • #sql_function (Sequel::CoreRefinements)
  • +
  • #sql_literal_append (Sequel::Postgres::PGRow::HashRow)
  • #sql_literal_append (Sequel::Postgres::PGArray)
  • -
  • #sql_literal_append (Sequel::Postgres::PGMultiRange)
  • #sql_literal_append (Sequel::Plugins::PgRow::InstanceMethods)
  • -
  • #sql_literal_append (Sequel::Postgres::PGRange)
  • -
  • #sql_literal_append (Sequel::Postgres::HStore)
  • +
  • #sql_literal_append (Sequel::Postgres::PGMultiRange)
  • #sql_literal_append (Sequel::Postgres::PGRow::ArrayRow)
  • -
  • #sql_literal_append (Sequel::Postgres::PGRow::HashRow)
  • +
  • #sql_literal_append (Sequel::Postgres::PGRange)
  • #sql_literal_append (Sequel::Postgres)
  • +
  • #sql_literal_append (Sequel::Postgres::HStore)
  • +
  • #sql_negate (Sequel::CoreRefinements)
  • #sql_negate (Array)
  • #sql_negate (Hash)
  • -
  • #sql_negate (Sequel::CoreRefinements)
  • -
  • #sql_or (Array)
  • #sql_or (Hash)
  • +
  • #sql_or (Array)
  • #sql_or (Sequel::CoreRefinements)
  • #sql_string_join (Array)
  • #sql_string_join (Sequel::CoreRefinements)
  • -
  • #sql_value_list (Array)
  • #sql_value_list (Sequel::CoreRefinements)
  • -
  • #sqlite_json_op (Sequel::SQLite::JSONOpMethods)
  • +
  • #sql_value_list (Array)
  • #sqlite_json_op (Sequel::SQL::Builders)
  • +
  • #sqlite_json_op (Sequel::SQLite::JSONOpMethods)
  • #static_cache_allow_modifications? (Sequel::Plugins::StaticCache::ClassMethods)
  • #sti_class_from_key (Sequel::Plugins::ClassTableInheritance::ClassMethods)
  • #sti_class_from_sti_key (Sequel::Plugins::SingleTableInheritance::ClassMethods)
  • @@ -1061,15 +1064,15 @@
  • #titleize (String)
  • #to_application_timestamp (Sequel::Postgres::ExtendedDateSupport)
  • #to_array (Sequel::Postgres::HStoreOp)
  • -
  • #to_csv (Sequel::Plugins::CsvSerializer::InstanceMethods)
  • #to_csv (Sequel::Plugins::CsvSerializer::DatasetMethods)
  • +
  • #to_csv (Sequel::Plugins::CsvSerializer::InstanceMethods)
  • #to_date (String)
  • #to_datetime (String)
  • #to_dot (Sequel::ToDot::DatasetMethods)
  • #to_hash (Sequel::Plugins::StaticCache::ClassMethods)
  • #to_hash_groups (Sequel::Plugins::StaticCache::ClassMethods)
  • -
  • #to_json (Sequel::Plugins::JsonSerializer::DatasetMethods)
  • #to_json (Sequel::Plugins::JsonSerializer::InstanceMethods)
  • +
  • #to_json (Sequel::Plugins::JsonSerializer::DatasetMethods)
  • #to_json (Sequel::Plugins::JsonSerializer::Literal)
  • #to_json_data (Sequel::Plugins::JsonSerializer::InstanceMethods)
  • #to_key (Sequel::Plugins::ActiveModel::InstanceMethods)
  • @@ -1082,11 +1085,11 @@
  • #to_record (Sequel::Postgres::JSONBaseOp)
  • #to_recordset (Sequel::Postgres::JSONBaseOp)
  • #to_s_append (Sequel::Postgres::HStoreSubscriptOp)
  • +
  • #to_s_append (Sequel::SQL::EscapedLikeExpression)
  • #to_s_append (Sequel::Postgres::AutoParameterize::SkipAutoParam)
  • #to_s_append (Sequel::Postgres::JSONBSubscriptOp)
  • -
  • #to_s_append (Sequel::SQL::EscapedLikeExpression)
  • -
  • #to_sequel_blob (Sequel::CoreRefinements)
  • #to_sequel_blob (String)
  • +
  • #to_sequel_blob (Sequel::CoreRefinements)
  • #to_sequel_time (String)
  • #to_string (Sequel::Postgres::ArrayOp)
  • #to_time (String)
  • @@ -1106,8 +1109,8 @@
  • #underscore (String)
  • #unique (Sequel::ConstraintValidations::AlterTableGeneratorMethods)
  • #unnest (Sequel::Postgres::ArrayOp)
  • -
  • #unquoted_literal (Sequel::Postgres::PGRange)
  • #unquoted_literal (Sequel::Postgres::HStore)
  • +
  • #unquoted_literal (Sequel::Postgres::PGRange)
  • #unquoted_literal (Sequel::Postgres::PGMultiRange)
  • #unshift (Sequel::Postgres::ArrayOp)
  • #unused_association_options (Sequel::Plugins::UnusedAssociations::ClassMethods)
  • @@ -1128,11 +1131,11 @@
  • #valid (Sequel::SQLite::JSONOp)
  • #valid? (Sequel::Plugins::ThrowFailures::InstanceMethods)
  • #valid_ruby_range? (Sequel::Postgres::PGRange)
  • -
  • #validate (Sequel::Plugins::ValidationClassMethods::ClassMethods)
  • #validate (Sequel::Plugins::ConstraintValidations::InstanceMethods)
  • -
  • #validate (Sequel::Plugins::AutoValidations::InstanceMethods)
  • -
  • #validate (Sequel::ConstraintValidations::CreateTableGeneratorMethods)
  • #validate (Sequel::Plugins::ValidationClassMethods::InstanceMethods)
  • +
  • #validate (Sequel::Plugins::ValidationClassMethods::ClassMethods)
  • +
  • #validate (Sequel::ConstraintValidations::CreateTableGeneratorMethods)
  • +
  • #validate (Sequel::Plugins::AutoValidations::InstanceMethods)
  • #validates (Sequel::Plugins::ValidationClassMethods::ClassMethods)
  • #validates_acceptance_of (Sequel::Plugins::ValidationClassMethods::ClassMethods)
  • #validates_confirmation_of (Sequel::Plugins::ValidationClassMethods::ClassMethods)
  • @@ -1163,8 +1166,8 @@
  • #validates_uniqueness_of (Sequel::Plugins::ValidationClassMethods::ClassMethods)
  • #validation (Sequel::ConstraintValidations::CreateTableGeneratorMethods)
  • #values (Sequel::Postgres::HStoreOp)
  • -
  • #where (Sequel::Plugins::SubsetConditions::DatasetModuleMethods)
  • #where (Sequel::Plugins::InvertedSubsets::DatasetModuleMethods)
  • +
  • #where (Sequel::Plugins::SubsetConditions::DatasetModuleMethods)
  • #will_change_column (Sequel::Plugins::Dirty::InstanceMethods)
  • #with_comments (Database::SQLComments)
  • #with_encrypted_value (Sequel::Plugins::ColumnEncryption::DatasetMethods)
  • @@ -1181,11 +1184,11 @@
  • #xml_builder (Sequel::Plugins::XmlSerializer::ClassMethods)
  • #xml_deserialize_name_proc (Sequel::Plugins::XmlSerializer::ClassMethods)
  • #xml_serialize_name_proc (Sequel::Plugins::XmlSerializer::ClassMethods)
  • -
  • #| (Hash)
  • #| (Sequel::CoreRefinements)
  • -
  • #~ (Sequel::CoreRefinements)
  • -
  • #~ (Hash)
  • +
  • #| (Hash)
  • #~ (Sequel::Postgres::InetOp)
  • +
  • #~ (Hash)
  • +
  • #~ (Sequel::CoreRefinements)
  • #~ (Array)
  • diff --git a/rdoc/classes/Sequel.html b/rdoc/classes/Sequel.html index 6fdc69bad..d50ded0cb 100644 --- a/rdoc/classes/Sequel.html +++ b/rdoc/classes/Sequel.html @@ -230,6 +230,7 @@

    Classes and Modules

  • Sequel::HookFailed
  • Sequel::IntegerMigrator
  • Sequel::LiteralString
  • +
  • Sequel::MassAssignmentRestriction
  • Sequel::Migration
  • Sequel::MigrationAlterTableReverser
  • Sequel::MigrationDSL
  • @@ -424,22 +425,13 @@

    Constants

    MINOR = -72 +73  

    The minor version of Sequel. Bumped for every non-patch level release, generally around once a month.

    -MassAssignmentRestriction -= -Class.new(Error) -  - -

    Raised when a mass assignment method is called in strict mode with either a restricted column or a column without a setter method.

    - - - NoExistingObject = Class.new(Error) diff --git a/rdoc/classes/Sequel/Database.html b/rdoc/classes/Sequel/Database.html index c32150034..85d6ef246 100644 --- a/rdoc/classes/Sequel/Database.html +++ b/rdoc/classes/Sequel/Database.html @@ -3531,6 +3531,8 @@

    Public Instance methods

    The server to use for the transaction. Set to :default, :read_only, or whatever symbol you used in the connect string when naming your servers.

    :savepoint

    Whether to create a new savepoint for this transaction, only respected if the database/adapter supports savepoints. By default Sequel will reuse an existing transaction, so if you want to use a savepoint you must use this option. If the surrounding transaction uses :auto_savepoint, you can set this to false to not use a savepoint. If the value given for this option is :only, it will only create a savepoint if it is inside a transaction.

    +:skip_transaction +

    If set, do not actually open a transaction or savepoint, just checkout a connection and yield it.

    PostgreSQL specific options:

    @@ -3548,66 +3550,70 @@

    Public Instance methods

    [show source]
        # File lib/sequel/database/transactions.rb
    -177 def transaction(opts=OPTS, &block)
    -178   opts = Hash[opts]
    -179   if retry_on = opts[:retry_on]
    -180     tot_retries = opts.fetch(:num_retries, 5)
    -181     num_retries = 0
    -182     begin
    -183       opts[:retry_on] = nil
    -184       opts[:retrying] = true
    -185       transaction(opts, &block)
    -186     rescue *retry_on => e
    -187       num_retries += 1
    -188       if tot_retries.nil? || num_retries <= tot_retries
    -189         opts[:before_retry].call(num_retries, e) if opts[:before_retry]
    -190         retry
    -191       end
    -192       raise
    -193     end
    -194   else
    -195     synchronize(opts[:server]) do |conn|
    -196       if opts[:savepoint] == :only
    -197         if supports_savepoints?
    -198           if _trans(conn)
    -199             opts[:savepoint] = true
    -200           else
    -201             return yield(conn)
    -202           end
    -203         else
    -204           opts[:savepoint] = false
    -205         end
    -206       end
    -207 
    -208       if opts[:savepoint] && !supports_savepoints?
    -209         raise Sequel::InvalidOperation, "savepoints not supported on #{database_type}"
    -210       end
    -211 
    -212       if already_in_transaction?(conn, opts)
    -213         if opts[:rollback] == :always && !opts.has_key?(:savepoint)
    -214           if supports_savepoints? 
    -215             opts[:savepoint] = true
    -216           else
    -217             raise Sequel::Error, "cannot set :rollback=>:always transaction option if already inside a transaction"
    -218           end
    -219         end
    -220 
    -221         if opts[:savepoint] != false && (stack = _trans(conn)[:savepoints]) && stack.last[:auto_savepoint]
    -222           opts[:savepoint] = true
    -223         end
    -224 
    -225         unless opts[:savepoint]
    -226           if opts[:retrying]
    -227             raise Sequel::Error, "cannot set :retry_on options if you are already inside a transaction"
    -228           end
    -229           return yield(conn)
    -230         end
    -231       end
    -232 
    -233       _transaction(conn, opts, &block)
    -234     end
    -235   end
    -236 end
    +179 def transaction(opts=OPTS, &block) +180 opts = Hash[opts] +181 if retry_on = opts[:retry_on] +182 tot_retries = opts.fetch(:num_retries, 5) +183 num_retries = 0 +184 begin +185 opts[:retry_on] = nil +186 opts[:retrying] = true +187 transaction(opts, &block) +188 rescue *retry_on => e +189 num_retries += 1 +190 if tot_retries.nil? || num_retries <= tot_retries +191 opts[:before_retry].call(num_retries, e) if opts[:before_retry] +192 retry +193 end +194 raise +195 end +196 else +197 synchronize(opts[:server]) do |conn| +198 if opts[:skip_transaction] +199 return yield(conn) +200 end +201 +202 if opts[:savepoint] == :only +203 if supports_savepoints? +204 if _trans(conn) +205 opts[:savepoint] = true +206 else +207 return yield(conn) +208 end +209 else +210 opts[:savepoint] = false +211 end +212 end +213 +214 if opts[:savepoint] && !supports_savepoints? +215 raise Sequel::InvalidOperation, "savepoints not supported on #{database_type}" +216 end +217 +218 if already_in_transaction?(conn, opts) +219 if opts[:rollback] == :always && !opts.has_key?(:savepoint) +220 if supports_savepoints? +221 opts[:savepoint] = true +222 else +223 raise Sequel::Error, "cannot set :rollback=>:always transaction option if already inside a transaction" +224 end +225 end +226 +227 if opts[:savepoint] != false && (stack = _trans(conn)[:savepoints]) && stack.last[:auto_savepoint] +228 opts[:savepoint] = true +229 end +230 +231 unless opts[:savepoint] +232 if opts[:retrying] +233 raise Sequel::Error, "cannot set :retry_on options if you are already inside a transaction" +234 end +235 return yield(conn) +236 end +237 end +238 +239 _transaction(conn, opts, &block) +240 end +241 end +242 end diff --git a/rdoc/classes/Sequel/Dataset.html b/rdoc/classes/Sequel/Dataset.html index a774b004b..5a75ec6ce 100644 --- a/rdoc/classes/Sequel/Dataset.html +++ b/rdoc/classes/Sequel/Dataset.html @@ -2978,31 +2978,31 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -843 def as_hash(key_column, value_column = nil, opts = OPTS)
    -844   h = opts[:hash] || {}
    -845   meth = opts[:all] ? :all : :each
    -846   if value_column
    -847     return naked.as_hash(key_column, value_column, opts) if row_proc
    -848     if value_column.is_a?(Array)
    -849       if key_column.is_a?(Array)
    -850         public_send(meth){|r| h[r.values_at(*key_column)] = r.values_at(*value_column)}
    -851       else
    -852         public_send(meth){|r| h[r[key_column]] = r.values_at(*value_column)}
    -853       end
    -854     else
    -855       if key_column.is_a?(Array)
    -856         public_send(meth){|r| h[r.values_at(*key_column)] = r[value_column]}
    -857       else
    -858         public_send(meth){|r| h[r[key_column]] = r[value_column]}
    -859       end
    -860     end
    -861   elsif key_column.is_a?(Array)
    -862     public_send(meth){|r| h[key_column.map{|k| r[k]}] = r}
    -863   else
    -864     public_send(meth){|r| h[r[key_column]] = r}
    -865   end
    -866   h
    -867 end
    +847 def as_hash(key_column, value_column = nil, opts = OPTS) +848 h = opts[:hash] || {} +849 meth = opts[:all] ? :all : :each +850 if value_column +851 return naked.as_hash(key_column, value_column, opts) if row_proc +852 if value_column.is_a?(Array) +853 if key_column.is_a?(Array) +854 public_send(meth){|r| h[r.values_at(*key_column)] = r.values_at(*value_column)} +855 else +856 public_send(meth){|r| h[r[key_column]] = r.values_at(*value_column)} +857 end +858 else +859 if key_column.is_a?(Array) +860 public_send(meth){|r| h[r.values_at(*key_column)] = r[value_column]} +861 else +862 public_send(meth){|r| h[r[key_column]] = r[value_column]} +863 end +864 end +865 elsif key_column.is_a?(Array) +866 public_send(meth){|r| h[key_column.map{|k| r[k]}] = r} +867 else +868 public_send(meth){|r| h[r[key_column]] = r} +869 end +870 h +871 end
    @@ -3454,6 +3454,8 @@

    Public Instance methods

    When this is set to :primary_key, returns an array of autoincremented primary key values for the rows inserted. This does not have an effect if values is a Dataset.

    :server

    Set the server/shard to use for the transaction and insert queries.

    +:skip_transaction +

    Do not use a transaction even when using multiple INSERT queries.

    :slice

    Same as :commit_every, :commit_every takes precedence.

    @@ -3464,25 +3466,25 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -360 def import(columns, values, opts=OPTS)
    -361   return @db.transaction{insert(columns, values)} if values.is_a?(Dataset)
    -362 
    -363   return if values.empty?
    -364   raise(Error, 'Using Sequel::Dataset#import with an empty column array is not allowed') if columns.empty?
    -365   ds = opts[:server] ? server(opts[:server]) : self
    -366   
    -367   if slice_size = opts.fetch(:commit_every, opts.fetch(:slice, default_import_slice))
    -368     offset = 0
    -369     rows = []
    -370     while offset < values.length
    -371       rows << ds._import(columns, values[offset, slice_size], opts)
    -372       offset += slice_size
    -373     end
    -374     rows.flatten
    -375   else
    -376     ds._import(columns, values, opts)
    -377   end
    -378 end
    +362 def import(columns, values, opts=OPTS) +363 return insert(columns, values) if values.is_a?(Dataset) +364 +365 return if values.empty? +366 raise(Error, 'Using Sequel::Dataset#import with an empty column array is not allowed') if columns.empty? +367 ds = opts[:server] ? server(opts[:server]) : self +368 +369 if slice_size = opts.fetch(:commit_every, opts.fetch(:slice, default_import_slice)) +370 offset = 0 +371 rows = [] +372 while offset < values.length +373 rows << ds._import(columns, values[offset, slice_size], opts) +374 offset += slice_size +375 end +376 rows.flatten +377 else +378 ds._import(columns, values, opts) +379 end +380 end
    @@ -3540,14 +3542,14 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -416 def insert(*values, &block)
    -417   sql = insert_sql(*values)
    -418   if uses_returning?(:insert)
    -419     returning_fetch_rows(sql, &block)
    -420   else
    -421     execute_insert(sql)
    -422   end
    -423 end
    +418 def insert(*values, &block) +419 sql = insert_sql(*values) +420 if uses_returning?(:insert) +421 returning_fetch_rows(sql, &block) +422 else +423 execute_insert(sql) +424 end +425 end
    @@ -3573,10 +3575,10 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -435 def last(*args, &block)
    -436   raise(Error, 'No order specified') unless @opts[:order]
    -437   reverse.first(*args, &block)
    -438 end
    +437 def last(*args, &block) +438 raise(Error, 'No order specified') unless @opts[:order] +439 reverse.first(*args, &block) +440 end
    @@ -3608,19 +3610,19 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -454 def map(column=nil, &block)
    -455   if column
    -456     raise(Error, 'Must call Dataset#map with either an argument or a block, not both') if block
    -457     return naked.map(column) if row_proc
    -458     if column.is_a?(Array)
    -459       super(){|r| r.values_at(*column)}
    -460     else
    -461       super(){|r| r[column]}
    -462     end
    -463   else
    -464     super(&block)
    -465   end
    -466 end
    +456 def map(column=nil, &block) +457 if column +458 raise(Error, 'Must call Dataset#map with either an argument or a block, not both') if block +459 return naked.map(column) if row_proc +460 if column.is_a?(Array) +461 super(){|r| r.values_at(*column)} +462 else +463 super(){|r| r[column]} +464 end +465 else +466 super(&block) +467 end +468 end
    @@ -3645,10 +3647,10 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -475 def max(arg=(no_arg = true), &block)
    -476   arg = Sequel.virtual_row(&block) if no_arg
    -477   _aggregate(:max, arg)
    -478 end
    +477 def max(arg=(no_arg = true), &block) +478 arg = Sequel.virtual_row(&block) if no_arg +479 _aggregate(:max, arg) +480 end
    @@ -3711,9 +3713,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -525 def merge
    -526   execute_ddl(merge_sql)
    -527 end
    +527 def merge +528 execute_ddl(merge_sql) +529 end
    @@ -3738,10 +3740,10 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -536 def min(arg=(no_arg = true), &block)
    -537   arg = Sequel.virtual_row(&block) if no_arg
    -538   _aggregate(:min, arg)
    -539 end
    +538 def min(arg=(no_arg = true), &block) +539 arg = Sequel.virtual_row(&block) if no_arg +540 _aggregate(:min, arg) +541 end
    @@ -3769,11 +3771,11 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -553 def multi_insert(hashes, opts=OPTS)
    -554   return if hashes.empty?
    -555   columns = hashes.first.keys
    -556   import(columns, hashes.map{|h| columns.map{|c| h[c]}}, opts)
    -557 end
    +555 def multi_insert(hashes, opts=OPTS) +556 return if hashes.empty? +557 columns = hashes.first.keys +558 import(columns, hashes.map{|h| columns.map{|c| h[c]}}, opts) +559 end
    @@ -3799,6 +3801,8 @@

    Public Instance methods

    The strategy to use for paging of results. By default this is :offset, for using an approach with a limit and offset for every page. This can be set to :filter, which uses a limit and a filter that excludes rows from previous pages. In order for this strategy to work, you must be selecting the columns you are ordering by, and none of the columns can contain NULLs. Note that some Sequel adapters have optimized implementations that will use cursors or streaming regardless of the :strategy option used.

    :filter_values

    If the strategy: :filter option is used, this option should be a proc that accepts the last retrieved row for the previous page and an array of ORDER BY expressions, and returns an array of values relating to those expressions for the last retrieved row. You will need to use this option if your ORDER BY expressions are not simple columns, if they contain qualified identifiers that would be ambiguous unqualified, if they contain any identifiers that are aliased in SELECT, and potentially other cases.

    +:skip_transaction +

    Do not use a transaction. This can be useful if you want to prevent a lock on the database table, at the expense of consistency.

    Examples:

    @@ -3831,65 +3835,65 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -614 def paged_each(opts=OPTS)
    -615   unless @opts[:order]
    -616     raise Sequel::Error, "Dataset#paged_each requires the dataset be ordered"
    -617   end
    -618   unless defined?(yield)
    -619     return enum_for(:paged_each, opts)
    -620   end
    -621 
    -622   total_limit = @opts[:limit]
    -623   offset = @opts[:offset]
    -624   if server = @opts[:server]
    -625     opts = Hash[opts]
    -626     opts[:server] = server
    -627   end
    -628 
    -629   rows_per_fetch = opts[:rows_per_fetch] || 1000
    -630   strategy = if offset || total_limit
    -631     :offset
    -632   else
    -633     opts[:strategy] || :offset
    -634   end
    -635 
    -636   db.transaction(opts) do
    -637     case strategy
    -638     when :filter
    -639       filter_values = opts[:filter_values] || proc{|row, exprs| exprs.map{|e| row[hash_key_symbol(e)]}}
    -640       base_ds = ds = limit(rows_per_fetch)
    -641       while ds
    -642         last_row = nil
    -643         ds.each do |row|
    -644           last_row = row
    -645           yield row
    -646         end
    -647         ds = (base_ds.where(ignore_values_preceding(last_row, &filter_values)) if last_row)
    -648       end
    -649     else
    -650       offset ||= 0
    -651       num_rows_yielded = rows_per_fetch
    -652       total_rows = 0
    -653 
    -654       while num_rows_yielded == rows_per_fetch && (total_limit.nil? || total_rows < total_limit)
    -655         if total_limit && total_rows + rows_per_fetch > total_limit
    -656           rows_per_fetch = total_limit - total_rows
    -657         end
    -658 
    -659         num_rows_yielded = 0
    -660         limit(rows_per_fetch, offset).each do |row|
    -661           num_rows_yielded += 1
    -662           total_rows += 1 if total_limit
    -663           yield row
    -664         end
    -665 
    -666         offset += rows_per_fetch
    -667       end
    -668     end
    -669   end
    -670 
    -671   self
    -672 end
    +618 def paged_each(opts=OPTS) +619 unless @opts[:order] +620 raise Sequel::Error, "Dataset#paged_each requires the dataset be ordered" +621 end +622 unless defined?(yield) +623 return enum_for(:paged_each, opts) +624 end +625 +626 total_limit = @opts[:limit] +627 offset = @opts[:offset] +628 if server = @opts[:server] +629 opts = Hash[opts] +630 opts[:server] = server +631 end +632 +633 rows_per_fetch = opts[:rows_per_fetch] || 1000 +634 strategy = if offset || total_limit +635 :offset +636 else +637 opts[:strategy] || :offset +638 end +639 +640 db.transaction(opts) do +641 case strategy +642 when :filter +643 filter_values = opts[:filter_values] || proc{|row, exprs| exprs.map{|e| row[hash_key_symbol(e)]}} +644 base_ds = ds = limit(rows_per_fetch) +645 while ds +646 last_row = nil +647 ds.each do |row| +648 last_row = row +649 yield row +650 end +651 ds = (base_ds.where(ignore_values_preceding(last_row, &filter_values)) if last_row) +652 end +653 else +654 offset ||= 0 +655 num_rows_yielded = rows_per_fetch +656 total_rows = 0 +657 +658 while num_rows_yielded == rows_per_fetch && (total_limit.nil? || total_rows < total_limit) +659 if total_limit && total_rows + rows_per_fetch > total_limit +660 rows_per_fetch = total_limit - total_rows +661 end +662 +663 num_rows_yielded = 0 +664 limit(rows_per_fetch, offset).each do |row| +665 num_rows_yielded += 1 +666 total_rows += 1 if total_limit +667 yield row +668 end +669 +670 offset += rows_per_fetch +671 end +672 end +673 end +674 +675 self +676 end
    @@ -3922,9 +3926,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -692 def select_hash(key_column, value_column, opts = OPTS)
    -693   _select_hash(:as_hash, key_column, value_column, opts)
    -694 end
    +696 def select_hash(key_column, value_column, opts = OPTS) +697 _select_hash(:as_hash, key_column, value_column, opts) +698 end
    @@ -3957,9 +3961,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -713 def select_hash_groups(key_column, value_column, opts = OPTS)
    -714   _select_hash(:to_hash_groups, key_column, value_column, opts)
    -715 end
    +717 def select_hash_groups(key_column, value_column, opts = OPTS) +718 _select_hash(:to_hash_groups, key_column, value_column, opts) +719 end
    @@ -3993,9 +3997,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -736 def select_map(column=nil, &block)
    -737   _select_map(column, false, &block)
    -738 end
    +740 def select_map(column=nil, &block) +741 _select_map(column, false, &block) +742 end
    @@ -4029,9 +4033,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -755 def select_order_map(column=nil, &block)
    -756   _select_map(column, true, &block)
    -757 end
    +759 def select_order_map(column=nil, &block) +760 _select_map(column, true, &block) +761 end
    @@ -4054,9 +4058,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -765 def single_record
    -766   _single_record_ds.single_record!
    -767 end
    +769 def single_record +770 _single_record_ds.single_record! +771 end
    @@ -4079,9 +4083,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -777 def single_record!
    -778   with_sql_first(select_sql)
    -779 end
    +781 def single_record! +782 with_sql_first(select_sql) +783 end
    @@ -4104,12 +4108,12 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -787 def single_value
    -788   single_value_ds.each do |r|
    -789     r.each{|_, v| return v}
    -790   end
    -791   nil
    -792 end
    +791 def single_value +792 single_value_ds.each do |r| +793 r.each{|_, v| return v} +794 end +795 nil +796 end
    @@ -4132,9 +4136,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -802 def single_value!
    -803   with_sql_single_value(select_sql)
    -804 end
    +806 def single_value! +807 with_sql_single_value(select_sql) +808 end
    @@ -4159,10 +4163,10 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -813 def sum(arg=(no_arg = true), &block)
    -814   arg = Sequel.virtual_row(&block) if no_arg
    -815   _aggregate(:sum, arg)
    -816 end
    +817 def sum(arg=(no_arg = true), &block) +818 arg = Sequel.virtual_row(&block) if no_arg +819 _aggregate(:sum, arg) +820 end
    @@ -4181,9 +4185,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -870 def to_hash(*a)
    -871   as_hash(*a)
    -872 end
    +874 def to_hash(*a) +875 as_hash(*a) +876 end
    @@ -4225,31 +4229,31 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -898 def to_hash_groups(key_column, value_column = nil, opts = OPTS)
    -899   h = opts[:hash] || {}
    -900   meth = opts[:all] ? :all : :each
    -901   if value_column
    -902     return naked.to_hash_groups(key_column, value_column, opts) if row_proc
    -903     if value_column.is_a?(Array)
    -904       if key_column.is_a?(Array)
    -905         public_send(meth){|r| (h[r.values_at(*key_column)] ||= []) << r.values_at(*value_column)}
    -906       else
    -907         public_send(meth){|r| (h[r[key_column]] ||= []) << r.values_at(*value_column)}
    -908       end
    -909     else
    -910       if key_column.is_a?(Array)
    -911         public_send(meth){|r| (h[r.values_at(*key_column)] ||= []) << r[value_column]}
    -912       else
    -913         public_send(meth){|r| (h[r[key_column]] ||= []) << r[value_column]}
    -914       end
    -915     end
    -916   elsif key_column.is_a?(Array)
    -917     public_send(meth){|r| (h[key_column.map{|k| r[k]}] ||= []) << r}
    -918   else
    -919     public_send(meth){|r| (h[r[key_column]] ||= []) << r}
    -920   end
    -921   h
    -922 end
    +902 def to_hash_groups(key_column, value_column = nil, opts = OPTS) +903 h = opts[:hash] || {} +904 meth = opts[:all] ? :all : :each +905 if value_column +906 return naked.to_hash_groups(key_column, value_column, opts) if row_proc +907 if value_column.is_a?(Array) +908 if key_column.is_a?(Array) +909 public_send(meth){|r| (h[r.values_at(*key_column)] ||= []) << r.values_at(*value_column)} +910 else +911 public_send(meth){|r| (h[r[key_column]] ||= []) << r.values_at(*value_column)} +912 end +913 else +914 if key_column.is_a?(Array) +915 public_send(meth){|r| (h[r.values_at(*key_column)] ||= []) << r[value_column]} +916 else +917 public_send(meth){|r| (h[r[key_column]] ||= []) << r[value_column]} +918 end +919 end +920 elsif key_column.is_a?(Array) +921 public_send(meth){|r| (h[key_column.map{|k| r[k]}] ||= []) << r} +922 else +923 public_send(meth){|r| (h[r[key_column]] ||= []) << r} +924 end +925 h +926 end
    @@ -4272,9 +4276,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -928 def truncate
    -929   execute_ddl(truncate_sql)
    -930 end
    +932 def truncate +933 execute_ddl(truncate_sql) +934 end
    @@ -4311,14 +4315,14 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -954 def update(values=OPTS, &block)
    -955   sql = update_sql(values)
    -956   if uses_returning?(:update)
    -957     returning_fetch_rows(sql, &block)
    -958   else
    -959     execute_dui(sql)
    -960   end
    -961 end
    +958 def update(values=OPTS, &block) +959 sql = update_sql(values) +960 if uses_returning?(:update) +961 returning_fetch_rows(sql, &block) +962 else +963 execute_dui(sql) +964 end +965 end
    @@ -4341,13 +4345,13 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -969 def where_all(cond, &block)
    -970   if loader = _where_loader([cond], nil)
    -971     loader.all(filter_expr(cond), &block)
    -972   else
    -973     where(cond).all(&block)
    -974   end
    -975 end
    +973 def where_all(cond, &block) +974 if loader = _where_loader([cond], nil) +975 loader.all(filter_expr(cond), &block) +976 else +977 where(cond).all(&block) +978 end +979 end
    @@ -4370,13 +4374,13 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -983 def where_each(cond, &block)
    -984   if loader = _where_loader([cond], nil)
    -985     loader.each(filter_expr(cond), &block)
    -986   else
    -987     where(cond).each(&block)
    -988   end
    -989 end
    +987 def where_each(cond, &block) +988 if loader = _where_loader([cond], nil) +989 loader.each(filter_expr(cond), &block) +990 else +991 where(cond).each(&block) +992 end +993 end
    @@ -4399,16 +4403,16 @@

    Public Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    - 998 def where_single_value(cond)
    - 999   if loader = cached_where_placeholder_literalizer([cond], nil, :_where_single_value_loader) do |pl|
    -1000       single_value_ds.where(pl.arg)
    -1001     end
    -1002 
    -1003     loader.get(filter_expr(cond))
    -1004   else
    -1005     where(cond).single_value
    -1006   end
    -1007 end
    +1002 def where_single_value(cond) +1003 if loader = cached_where_placeholder_literalizer([cond], nil, :_where_single_value_loader) do |pl| +1004 single_value_ds.where(pl.arg) +1005 end +1006 +1007 loader.get(filter_expr(cond)) +1008 else +1009 where(cond).single_value +1010 end +1011 end
    @@ -4427,9 +4431,9 @@

    Public Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1011 def with_sql_all(sql, &block)
    -1012   _all(block){|a| with_sql_each(sql){|r| a << r}}
    -1013 end
    +1015 def with_sql_all(sql, &block) +1016 _all(block){|a| with_sql_each(sql){|r| a << r}} +1017 end
    @@ -4448,9 +4452,9 @@

    Public Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1018 def with_sql_delete(sql)
    -1019   execute_dui(sql)
    -1020 end
    +1022 def with_sql_delete(sql) +1023 execute_dui(sql) +1024 end
    @@ -4469,14 +4473,14 @@

    Public Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1024 def with_sql_each(sql)
    -1025   if rp = row_proc
    -1026     _with_sql_dataset.fetch_rows(sql){|r| yield rp.call(r)}
    -1027   else
    -1028     _with_sql_dataset.fetch_rows(sql){|r| yield r}
    -1029   end
    -1030   self
    -1031 end
    +1028 def with_sql_each(sql) +1029 if rp = row_proc +1030 _with_sql_dataset.fetch_rows(sql){|r| yield rp.call(r)} +1031 else +1032 _with_sql_dataset.fetch_rows(sql){|r| yield r} +1033 end +1034 self +1035 end
    @@ -4495,10 +4499,10 @@

    Public Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1035 def with_sql_first(sql)
    -1036   with_sql_each(sql){|r| return r}
    -1037   nil
    -1038 end
    +1039 def with_sql_first(sql) +1040 with_sql_each(sql){|r| return r} +1041 nil +1042 end
    @@ -4517,9 +4521,9 @@

    Public Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1051 def with_sql_insert(sql)
    -1052   execute_insert(sql)
    -1053 end
    +1055 def with_sql_insert(sql) +1056 execute_insert(sql) +1057 end
    @@ -4538,11 +4542,11 @@

    Public Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1043 def with_sql_single_value(sql)
    -1044   if r = with_sql_first(sql)
    -1045     r.each{|_, v| return v}
    -1046   end
    -1047 end
    +1047 def with_sql_single_value(sql) +1048 if r = with_sql_first(sql) +1049 r.each{|_, v| return v} +1050 end +1051 end

    Protected Instance methods

    @@ -4562,16 +4566,16 @@

    Protected Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1061 def _import(columns, values, opts)
    -1062   trans_opts = Hash[opts]
    -1063   trans_opts[:server] = @opts[:server]
    -1064   if opts[:return] == :primary_key
    -1065     _import_transaction(values, trans_opts){values.map{|v| insert(columns, v)}}
    -1066   else
    -1067     stmts = multi_insert_sql(columns, values)
    -1068     _import_transaction(stmts, trans_opts){stmts.each{|st| execute_dui(st)}}
    -1069   end
    -1070 end
    +1065 def _import(columns, values, opts) +1066 trans_opts = Hash[opts] +1067 trans_opts[:server] = @opts[:server] +1068 if opts[:return] == :primary_key +1069 _import_transaction(values, trans_opts){values.map{|v| insert(columns, v)}} +1070 else +1071 stmts = multi_insert_sql(columns, values) +1072 _import_transaction(stmts, trans_opts){stmts.each{|st| execute_dui(st)}} +1073 end +1074 end
    @@ -4590,9 +4594,9 @@

    Protected Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1073 def _select_map_multiple(ret_cols)
    -1074   map{|r| r.values_at(*ret_cols)}
    -1075 end
    +1077 def _select_map_multiple(ret_cols) +1078 map{|r| r.values_at(*ret_cols)} +1079 end
    @@ -4611,10 +4615,10 @@

    Protected Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1078 def _select_map_single
    -1079   k = nil
    -1080   map{|r| r[k||=r.keys.first]}
    -1081 end
    +1082 def _select_map_single +1083 k = nil +1084 map{|r| r[k||=r.keys.first]} +1085 end
    @@ -4633,9 +4637,9 @@

    Protected Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1084 def single_value_ds
    -1085   clone(:limit=>1).ungraphed.naked
    -1086 end
    +1088 def single_value_ds +1089 clone(:limit=>1).ungraphed.naked +1090 end
    diff --git a/rdoc/classes/Sequel/IntegerMigrator.html b/rdoc/classes/Sequel/IntegerMigrator.html index 3aa4b389a..45752d032 100644 --- a/rdoc/classes/Sequel/IntegerMigrator.html +++ b/rdoc/classes/Sequel/IntegerMigrator.html @@ -126,35 +126,35 @@

    Public Class methods

    [show source]
        # File lib/sequel/extensions/migration.rb
    -529 def initialize(db, directory, opts=OPTS)
    -530   super
    -531   @current = opts[:current] || current_migration_version
    -532 
    -533   latest_version = latest_migration_version
    -534   @target = if opts[:target]
    -535     opts[:target]
    -536   elsif opts[:relative]
    -537     @current + opts[:relative]
    -538   else
    -539     latest_version
    -540   end
    -541 
    -542   raise(Error, "No target and/or latest version available, probably because no migration files found or filenames don't follow the migration filename convention") unless target && latest_version
    -543 
    -544   if @target > latest_version
    -545     @target = latest_version
    -546   elsif @target < 0
    -547     @target = 0
    -548   end
    -549 
    -550   @direction = current < target ? :up : :down
    +525 def initialize(db, directory, opts=OPTS)
    +526   super
    +527   @current = opts[:current] || current_migration_version
    +528 
    +529   latest_version = latest_migration_version
    +530   @target = if opts[:target]
    +531     opts[:target]
    +532   elsif opts[:relative]
    +533     @current + opts[:relative]
    +534   else
    +535     latest_version
    +536   end
    +537 
    +538   raise(Error, "No target and/or latest version available, probably because no migration files found or filenames don't follow the migration filename convention") unless target && latest_version
    +539 
    +540   if @target > latest_version
    +541     @target = latest_version
    +542   elsif @target < 0
    +543     @target = 0
    +544   end
    +545 
    +546   @direction = current < target ? :up : :down
    +547 
    +548   if @direction == :down && @current >= @files.length && !@allow_missing_migration_files
    +549     raise Migrator::Error, "Missing migration version(s) needed to migrate down to target version (current: #{current}, target: #{target})"
    +550   end
     551 
    -552   if @direction == :down && @current >= @files.length && !@allow_missing_migration_files
    -553     raise Migrator::Error, "Missing migration version(s) needed to migrate down to target version (current: #{current}, target: #{target})"
    -554   end
    -555 
    -556   @migrations = get_migrations
    -557 end
    +552 @migrations = get_migrations +553 end

    Public Instance methods

    @@ -174,9 +174,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/migration.rb
    -560 def is_current?
    -561   current_migration_version == target
    -562 end
    +556 def is_current? +557 current_migration_version == target +558 end
    @@ -195,19 +195,19 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/migration.rb
    -565 def run
    -566   migrations.zip(version_numbers).each do |m, v|
    -567     timer = Sequel.start_timer
    -568     db.log_info("Begin applying migration version #{v}, direction: #{direction}")
    -569     checked_transaction(m) do
    -570       m.apply(db, direction)
    -571       set_migration_version(up? ? v : v-1)
    -572     end
    -573     db.log_info("Finished applying migration version #{v}, direction: #{direction}, took #{sprintf('%0.6f', Sequel.elapsed_seconds_since(timer))} seconds")
    -574   end
    -575   
    -576   target
    -577 end
    +561 def run +562 migrations.zip(version_numbers).each do |m, v| +563 timer = Sequel.start_timer +564 db.log_info("Begin applying migration version #{v}, direction: #{direction}") +565 checked_transaction(m) do +566 m.apply(db, direction) +567 set_migration_version(up? ? v : v-1) +568 end +569 db.log_info("Finished applying migration version #{v}, direction: #{direction}, took #{sprintf('%0.6f', Sequel.elapsed_seconds_since(timer))} seconds") +570 end +571 +572 target +573 end
    diff --git a/rdoc/classes/Sequel/MassAssignmentRestriction.html b/rdoc/classes/Sequel/MassAssignmentRestriction.html new file mode 100644 index 000000000..35f111010 --- /dev/null +++ b/rdoc/classes/Sequel/MassAssignmentRestriction.html @@ -0,0 +1,123 @@ + + + +Sequel::MassAssignmentRestriction + + + + + + +
    +
    +

    class +Sequel::MassAssignmentRestriction +

    +
      +
    1. +lib/sequel/model/exceptions.rb +
    2. +
    +
    +Superclass: +Error +
    +
    +
    +
    +
    +

    Raised when a mass assignment method is called in strict mode with either a restricted column or a column without a setter method.

    +
    +
    +

    Methods

    +

    Public Class

    +
      +
    1. create
    2. +
    +

    Public Instance

    +
      +
    1. column
    2. +
    3. model
    4. +
    +
    +
    +
    +
    +
    +

    Attributes

    +
    + + + + + + + + + + + +
    +column +[R] +

    The column related to this exception, as a string.

    +
    +model +[R] +

    The Sequel::Model object related to this exception.

    +
    +
    +
    +
    +

    Public Class methods

    +
    + +
    +create(msg, model, column) + +
    +
    + +

    Create an instance of this class with the model and column set.

    + +
    +
    + +[show source] + +
       # File lib/sequel/model/exceptions.rb
    +37 def self.create(msg, model, column)
    +38   e = new("#{msg} for class #{model.class.inspect}")
    +39   e.instance_variable_set(:@model, model)
    +40   e.instance_variable_set(:@column, column)
    +41   e
    +42 end
    +
    +
    +
    +
    + +
    +
    + + +
    + + + diff --git a/rdoc/classes/Sequel/Model/DatasetMethods.html b/rdoc/classes/Sequel/Model/DatasetMethods.html index ee5f53bc7..8b2fc1cdf 100644 --- a/rdoc/classes/Sequel/Model/DatasetMethods.html +++ b/rdoc/classes/Sequel/Model/DatasetMethods.html @@ -77,13 +77,13 @@

    Public Instance methods

    [show source]
         # File lib/sequel/model/base.rb
    -2132 def [](*args)
    -2133   if args.length == 1 && (i = args[0]) && i.is_a?(Integer)
    -2134     with_pk(i)
    -2135   else
    -2136     super
    -2137   end
    -2138 end
    +2135 def [](*args) +2136 if args.length == 1 && (i = args[0]) && i.is_a?(Integer) +2137 with_pk(i) +2138 else +2139 super +2140 end +2141 end
    @@ -108,14 +108,14 @@

    Public Instance methods

    [show source]
         # File lib/sequel/model/base.rb
    -2191 def as_hash(key_column=nil, value_column=nil, opts=OPTS)
    -2192   if key_column
    -2193     super
    -2194   else
    -2195     raise(Sequel::Error, "No primary key for model") unless model && (pk = model.primary_key)
    -2196     super(pk, value_column, opts) 
    -2197   end
    -2198 end
    +2195 def as_hash(key_column=nil, value_column=nil, opts=OPTS) +2196 if key_column +2197 super +2198 else +2199 raise(Sequel::Error, "No primary key for model") unless model && (pk = model.primary_key) +2200 super(pk, value_column, opts) +2201 end +2202 end
    @@ -140,10 +140,11 @@

    Public Instance methods

    [show source]
         # File lib/sequel/model/base.rb
    -2149 def destroy
    -2150   pr = proc{all(&:destroy).length}
    -2151   model.use_transactions ? @db.transaction(:server=>opts[:server], &pr) : pr.call
    -2152 end
    +2152 def destroy +2153 @db.transaction(:server=>opts[:server], :skip_transaction=>model.use_transactions == false) do +2154 all(&:destroy).length +2155 end +2156 end
    @@ -166,13 +167,13 @@

    Public Instance methods

    [show source]
         # File lib/sequel/model/base.rb
    -2159 def last(*a, &block)
    -2160   if ds = _primary_key_order
    -2161     ds.last(*a, &block)
    -2162   else
    -2163     super
    -2164   end
    -2165 end
    +2163 def last(*a, &block) +2164 if ds = _primary_key_order +2165 ds.last(*a, &block) +2166 else +2167 super +2168 end +2169 end
    @@ -194,9 +195,9 @@

    Public Instance methods

    [show source]
         # File lib/sequel/model/base.rb
    -2124 def model
    -2125   @opts[:model]
    -2126 end
    +2127 def model +2128 @opts[:model] +2129 end
    @@ -222,13 +223,13 @@

    Public Instance methods

    [show source]
         # File lib/sequel/model/base.rb
    -2175 def paged_each(*a, &block)
    -2176   if ds = _primary_key_order
    -2177     ds.paged_each(*a, &block)
    -2178   else
    -2179     super
    -2180   end
    -2181 end
    +2179 def paged_each(*a, &block) +2180 if ds = _primary_key_order +2181 ds.paged_each(*a, &block) +2182 else +2183 super +2184 end +2185 end
    @@ -247,9 +248,9 @@

    Public Instance methods

    [show source]
         # File lib/sequel/model/base.rb
    -2201 def to_hash(*a)
    -2202   as_hash(*a)
    -2203 end
    +2205 def to_hash(*a) +2206 as_hash(*a) +2207 end
    @@ -277,13 +278,13 @@

    Public Instance methods

    [show source]
         # File lib/sequel/model/base.rb
    -2215 def with_pk(pk)
    -2216   if pk && (loader = _with_pk_loader)
    -2217     loader.first(*pk)
    -2218   else
    -2219     first(model.qualified_primary_key_hash(pk))
    -2220   end
    -2221 end
    +2219 def with_pk(pk) +2220 if pk && (loader = _with_pk_loader) +2221 loader.first(*pk) +2222 else +2223 first(model.qualified_primary_key_hash(pk)) +2224 end +2225 end
    @@ -302,9 +303,9 @@

    Public Instance methods

    [show source]
         # File lib/sequel/model/base.rb
    -2225 def with_pk!(pk)
    -2226   with_pk(pk) || raise(NoMatchingRow.new(self))
    -2227 end
    +2229 def with_pk!(pk) +2230 with_pk(pk) || raise(NoMatchingRow.new(self)) +2231 end
    diff --git a/rdoc/classes/Sequel/TimestampMigrator.html b/rdoc/classes/Sequel/TimestampMigrator.html index d30800f40..ecc525e64 100644 --- a/rdoc/classes/Sequel/TimestampMigrator.html +++ b/rdoc/classes/Sequel/TimestampMigrator.html @@ -116,12 +116,12 @@

    Public Class methods

    [show source]
        # File lib/sequel/extensions/migration.rb
    -680 def initialize(db, directory, opts=OPTS)
    -681   super
    -682   @target = opts[:target]
    -683   @applied_migrations = get_applied_migrations
    -684   @migration_tuples = get_migration_tuples
    -685 end
    +676 def initialize(db, directory, opts=OPTS) +677 super +678 @target = opts[:target] +679 @applied_migrations = get_applied_migrations +680 @migration_tuples = get_migration_tuples +681 end

    Public Instance methods

    @@ -141,9 +141,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/migration.rb
    -689 def is_current?
    -690   migration_tuples.empty?
    -691 end
    +685 def is_current? +686 migration_tuples.empty? +687 end
    @@ -162,19 +162,19 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/migration.rb
    -694 def run
    -695   migration_tuples.each do |m, f, direction|
    -696     t = Time.now
    -697     db.log_info("Begin applying migration #{f}, direction: #{direction}")
    -698     checked_transaction(m) do
    -699       m.apply(db, direction)
    -700       fi = f.downcase
    -701       direction == :up ? ds.insert(column=>fi) : ds.where(column=>fi).delete
    -702     end
    -703     db.log_info("Finished applying migration #{f}, direction: #{direction}, took #{sprintf('%0.6f', Time.now - t)} seconds")
    -704   end
    -705   nil
    -706 end
    +690 def run +691 migration_tuples.each do |m, f, direction| +692 t = Time.now +693 db.log_info("Begin applying migration #{f}, direction: #{direction}") +694 checked_transaction(m) do +695 m.apply(db, direction) +696 fi = f.downcase +697 direction == :up ? ds.insert(column=>fi) : ds.where(column=>fi).delete +698 end +699 db.log_info("Finished applying migration #{f}, direction: #{direction}, took #{sprintf('%0.6f', Time.now - t)} seconds") +700 end +701 nil +702 end
    diff --git a/rdoc/classes/Sequel/ValidationFailed.html b/rdoc/classes/Sequel/ValidationFailed.html index e3e3f6d25..7e61bc52b 100644 --- a/rdoc/classes/Sequel/ValidationFailed.html +++ b/rdoc/classes/Sequel/ValidationFailed.html @@ -98,19 +98,19 @@

    Public Class methods

    [show source]
       # File lib/sequel/model/exceptions.rb
    -41 def initialize(errors=nil)
    -42   if errors.is_a?(Sequel::Model)
    -43     @model = errors
    -44     errors = @model.errors
    -45   end
    -46 
    -47   if errors.respond_to?(:full_messages)
    -48     @errors = errors
    -49     super(errors.full_messages.join(', '))
    -50   else
    -51     super
    -52   end
    -53 end
    +53 def initialize(errors=nil) +54 if errors.is_a?(Sequel::Model) +55 @model = errors +56 errors = @model.errors +57 end +58 +59 if errors.respond_to?(:full_messages) +60 @errors = errors +61 super(errors.full_messages.join(', ')) +62 else +63 super +64 end +65 end diff --git a/rdoc/created.rid b/rdoc/created.rid index 7a9470229..ed03f5d6c 100644 --- a/rdoc/created.rid +++ b/rdoc/created.rid @@ -1,6 +1,6 @@ -Fri, 01 Sep 2023 00:23:58 -0700 -README.rdoc Tue, 15 Aug 2023 07:20:53 -0700 -CHANGELOG Tue, 29 Aug 2023 11:56:10 -0700 +Sun, 01 Oct 2023 08:01:08 -0700 +README.rdoc Tue, 19 Sep 2023 10:01:52 -0700 +CHANGELOG Thu, 28 Sep 2023 16:13:36 -0700 doc/CHANGELOG.old Tue, 04 Aug 2020 18:11:34 -0700 MIT-LICENSE Tue, 03 Jan 2023 11:20:51 -0800 lib/sequel.rb Tue, 01 Aug 2017 08:12:00 -0700 @@ -14,7 +14,7 @@ lib/sequel/exceptions.rb Fri, 26 Jun 2020 14:43:12 -0700 lib/sequel/model.rb Tue, 04 Aug 2020 18:11:34 -0700 lib/sequel/sql.rb Fri, 02 Sep 2022 09:11:30 -0700 lib/sequel/timezones.rb Fri, 17 Dec 2021 16:59:47 -0800 -lib/sequel/version.rb Tue, 29 Aug 2023 11:56:10 -0700 +lib/sequel/version.rb Thu, 28 Sep 2023 16:13:36 -0700 lib/sequel/connection_pool/sharded_single.rb Fri, 17 Dec 2021 16:59:47 -0800 lib/sequel/connection_pool/sharded_threaded.rb Mon, 12 Jun 2023 13:05:49 -0700 lib/sequel/connection_pool/sharded_timed_queue.rb Mon, 12 Jun 2023 13:05:49 -0700 @@ -29,9 +29,9 @@ lib/sequel/database/logging.rb Fri, 30 Aug 2019 08:15:18 -0700 lib/sequel/database/misc.rb Wed, 05 Oct 2022 10:45:50 -0700 lib/sequel/database/query.rb Wed, 21 Dec 2022 15:06:01 -0800 lib/sequel/database/schema_generator.rb Tue, 28 Mar 2023 07:40:44 -0700 -lib/sequel/database/schema_methods.rb Tue, 11 Apr 2023 08:27:16 -0700 -lib/sequel/database/transactions.rb Fri, 20 Nov 2020 10:49:30 -0800 -lib/sequel/dataset/actions.rb Fri, 03 Feb 2023 13:26:40 -0800 +lib/sequel/database/schema_methods.rb Thu, 21 Sep 2023 15:53:42 -0700 +lib/sequel/database/transactions.rb Thu, 21 Sep 2023 15:53:42 -0700 +lib/sequel/dataset/actions.rb Thu, 21 Sep 2023 15:53:42 -0700 lib/sequel/dataset/dataset_module.rb Mon, 20 Nov 2017 16:04:32 -0800 lib/sequel/dataset/deprecated_singleton_class_methods.rb Thu, 23 Mar 2023 10:05:41 -0700 lib/sequel/dataset/features.rb Sun, 30 Oct 2022 19:13:54 -0700 @@ -42,11 +42,11 @@ lib/sequel/dataset/prepared_statements.rb Wed, 02 Dec 2020 15:37:08 -0800 lib/sequel/dataset/query.rb Fri, 31 Mar 2023 14:57:15 -0700 lib/sequel/dataset/sql.rb Fri, 03 Feb 2023 20:16:03 -0800 lib/sequel/model/associations.rb Tue, 31 Jan 2023 13:46:42 -0800 -lib/sequel/model/base.rb Sun, 16 Apr 2023 10:40:52 -0700 +lib/sequel/model/base.rb Thu, 21 Sep 2023 15:53:42 -0700 lib/sequel/model/dataset_module.rb Wed, 17 May 2023 15:31:47 -0700 lib/sequel/model/default_inflections.rb Tue, 01 Aug 2017 08:12:01 -0700 lib/sequel/model/errors.rb Mon, 09 Aug 2021 13:30:01 -0700 -lib/sequel/model/exceptions.rb Fri, 02 Sep 2022 09:11:30 -0700 +lib/sequel/model/exceptions.rb Mon, 18 Sep 2023 12:32:33 -0700 lib/sequel/model/inflections.rb Fri, 02 Sep 2022 09:11:30 -0700 lib/sequel/model/plugins.rb Fri, 04 Dec 2020 13:44:07 -0800 doc/advanced_associations.rdoc Sun, 23 Apr 2023 09:38:27 -0700 @@ -268,6 +268,7 @@ doc/release_notes/5.7.0.txt Sun, 01 Apr 2018 19:38:21 -0700 doc/release_notes/5.70.0.txt Fri, 30 Jun 2023 11:23:18 -0700 doc/release_notes/5.71.0.txt Tue, 01 Aug 2023 07:39:28 -0700 doc/release_notes/5.72.0.txt Tue, 29 Aug 2023 11:56:10 -0700 +doc/release_notes/5.73.0.txt Thu, 28 Sep 2023 16:13:36 -0700 doc/release_notes/5.8.0.txt Tue, 01 May 2018 11:42:13 -0700 doc/release_notes/5.9.0.txt Fri, 01 Jun 2018 07:49:41 -0700 -lib/sequel/extensions/migration.rb Mon, 03 Jul 2023 08:26:16 -0700 +lib/sequel/extensions/migration.rb Thu, 21 Sep 2023 15:53:42 -0700 diff --git a/rdoc/files/CHANGELOG.html b/rdoc/files/CHANGELOG.html index f090205ac..123c415f8 100644 --- a/rdoc/files/CHANGELOG.html +++ b/rdoc/files/CHANGELOG.html @@ -31,12 +31,31 @@

    CHANGELOG
    Last Update: -2023-08-29 11:56:10 -0700 +2023-09-28 16:13:36 -0700
    +

    5.73.0 (2023-10-01)

    +
    • +

      Handle disconnect errors in ibmdb and jdbc/db2 adapters (jeremyevans) (#2083)

      +
    • +

      Support skipping transactions in Dataset#{import,paged_each} using :skip_transaction option (jeremyevans)

      +
    • +

      Add Database#transaction :skip_transaction option to skip creating a transaction or savepoint (jeremyevans)

      +
    • +

      Stop using a transaction for a single query if calling Dataset#import with a dataset (jeremyevans)

      +
    • +

      Add paged_operations plugin for paged deletes and updates and other custom operations (jeremyevans) (#2080)

      +
    • +

      Support to_tsquery: :websearch option to Dataset#full_text_search on PostgreSQL 11+ (jeremyevans) (#2075)

      +
    • +

      Add MassAssignmentRestriction#model and column for getting the model instance and related column for mass assignment errors (artofhuman, jeremyevans) (#2079)

      +
    • +

      Stop using base64 library in column_encryption plugin (jeremyevans)

      +
    +

    5.72.0 (2023-09-01)

    • Sort caches before marshalling when using schema_caching, index_caching, static_cache_cache, and pg_auto_constraint_validations (jeremyevans)

      diff --git a/rdoc/files/README_rdoc.html b/rdoc/files/README_rdoc.html index 6aacd1dc2..c8faee610 100644 --- a/rdoc/files/README_rdoc.html +++ b/rdoc/files/README_rdoc.html @@ -31,7 +31,7 @@

      README.rdoc

    Last Update: -2023-08-15 07:20:53 -0700 +2023-09-19 10:01:52 -0700
    @@ -1026,7 +1026,7 @@

    Sequ

    Ruby Support Policy

    -

    Sequel fully supports the currently supported versions of Ruby (MRI) and JRuby. It may support unsupported versions of Ruby or JRuby, but such support may be dropped in any minor version if keeping it becomes a support issue. The minimum Ruby version required to run the current version of Sequel is 1.9.2, and the minimum JRuby version is 9.0.0.0.

    +

    Sequel fully supports the currently supported versions of Ruby (MRI) and JRuby. It may support unsupported versions of Ruby or JRuby, but such support may be dropped in any minor version if keeping it becomes a support issue. The minimum Ruby version required to run the current version of Sequel is 1.9.2, and the minimum JRuby version is 9.2.0.0 (due to the bigdecimal dependency).

    Maintainer

    diff --git a/rdoc/files/doc/CHANGELOG_old.html b/rdoc/files/doc/CHANGELOG_old.html index c45756be1..5774e975d 100644 --- a/rdoc/files/doc/CHANGELOG_old.html +++ b/rdoc/files/doc/CHANGELOG_old.html @@ -1146,7 +1146,7 @@

    4
  • Make tree plugin set reciprocal association for children association correctly (lpil, jeremyevans) (#995)

  • -

    Add Sequel::MassAssignmentRestriction exception, raised for mass assignment errors in strict mode (jeremyevans) (#994)

    +

    Add Sequel::MassAssignmentRestriction exception, raised for mass assignment errors in strict mode (jeremyevans) (#994)

  • Handle ODBC::SQL_BIT type as boolean in the odbc adapter, fixing boolean handling on odbc/mssql (jrgns) (#993)

  • diff --git a/rdoc/files/doc/mass_assignment_rdoc.html b/rdoc/files/doc/mass_assignment_rdoc.html index eace2f8e0..0406e1b43 100644 --- a/rdoc/files/doc/mass_assignment_rdoc.html +++ b/rdoc/files/doc/mass_assignment_rdoc.html @@ -66,7 +66,7 @@

    post = Post.new(id: 1) -

    Sequel will raise a Sequel::MassAssignmentRestriction exception, since by default setting the primary key is not allowed.

    +

    Sequel will raise a Sequel::MassAssignmentRestriction exception, since by default setting the primary key is not allowed.

    To enable use of primary key setters, you need to call unrestrict_primary_key for that model:

    diff --git a/rdoc/files/doc/release_notes/4_22_0_txt.html b/rdoc/files/doc/release_notes/4_22_0_txt.html index b2cfbc772..5a4b68232 100644 --- a/rdoc/files/doc/release_notes/4_22_0_txt.html +++ b/rdoc/files/doc/release_notes/4_22_0_txt.html @@ -41,7 +41,7 @@

    New Features&par

    Other Improvements

    diff --git a/rdoc/files/doc/release_notes/5_73_0_txt.html b/rdoc/files/doc/release_notes/5_73_0_txt.html new file mode 100644 index 000000000..6f03edcf7 --- /dev/null +++ b/rdoc/files/doc/release_notes/5_73_0_txt.html @@ -0,0 +1,102 @@ + + + +5.73.0.txt + + + + + + +
    +
    +

    5.73.0.txt +

    +
    +doc/release_notes/5.73.0.txt +
    +
    +Last Update: +2023-09-28 16:13:36 -0700 +
    +
    +
    +
    +
    +

    New Features

    +
    • +

      A paged_operations plugin has been added, which adds support for paged_datasets, paged_update, and paged_delete dataset methods. This methods are designed to be used on large datasets, to split a large query into separate smaller queries, to avoid locking the related database table for a long period of time. paged_update and paged_delete operate the same as update and delete, returning the number of rows updated or deleted. paged_datasets yields one or more datasets representing subsets of the receiver, with the union of all of those datasets comprising all records in the receiver:

      + +
      Album.plugin :paged_operations
      +
      +Album.where{name > 'M'}.paged_datasets{|ds| puts ds.sql}
      +# Runs: SELECT id FROM albums WHERE (name <= 'M') ORDER BY id LIMIT 1 OFFSET 1000
      +# Prints: SELECT * FROM albums WHERE ((name <= 'M') AND ("id" < 1002))
      +# Runs: SELECT id FROM albums WHERE ((name <= 'M') AND (id >= 1002)) ORDER BY id LIMIT 1 OFFSET 1000
      +# Prints: SELECT * FROM albums WHERE ((name <= 'M') AND ("id" < 2002) AND (id >= 1002))
      +# ...
      +# Runs: SELECT id FROM albums WHERE ((name <= 'M') AND (id >= 10002)) ORDER BY id LIMIT 1 OFFSET 1000
      +# Prints: SELECT * FROM albums WHERE ((name <= 'M') AND (id >= 10002))
      +
      +Album.where{name <= 'M'}.paged_update(:updated_at=>Sequel::CURRENT_TIMESTAMP)
      +# SELECT id FROM albums WHERE (name <= 'M') ORDER BY id LIMIT 1 OFFSET 1000
      +# UPDATE albums SET updated_at = CURRENT_TIMESTAMP WHERE ((name <= 'M') AND ("id" < 1002))
      +# SELECT id FROM albums WHERE ((name <= 'M') AND (id >= 1002)) ORDER BY id LIMIT 1 OFFSET 1000
      +# UPDATE albums SET updated_at = CURRENT_TIMESTAMP WHERE ((name <= 'M') AND ("id" < 2002) AND (id >= 1002))
      +# ...
      +# SELECT id FROM albums WHERE ((name <= 'M') AND (id >= 10002)) ORDER BY id LIMIT 1 OFFSET 1000
      +# UPDATE albums SET updated_at = CURRENT_TIMESTAMP WHERE ((name <= 'M') AND (id >= 10002))
      +
      +Album.where{name > 'M'}.paged_delete
      +# SELECT id FROM albums WHERE (name > 'M') ORDER BY id LIMIT 1 OFFSET 1000
      +# DELETE FROM albums WHERE ((name > 'M') AND (id < 1002))
      +# SELECT id FROM albums WHERE (name > 'M') ORDER BY id LIMIT 1 OFFSET 1000
      +# DELETE FROM albums WHERE ((name > 'M') AND (id < 2002))
      +# ...
      +# SELECT id FROM albums WHERE (name > 'M') ORDER BY id LIMIT 1 OFFSET 1000
      +# DELETE FROM albums WHERE (name > 'M')
      +
      +
    • +

      A Dataset#transaction :skip_transaction option is now support to checkout a connection from the pool without opening a transaction. This makes it easier to handle cases where a transaction may or not be used based on configuration/options. Dataset#import and Dataset#paged_each now both support the :skip_transaction option to skip transactions.

      +
    • +

      Dataset#full_text_search now supports the to_tsquery: :websearch option on PostgreSQL 11+, to use the websearch_to_tsquery database function.

      +
    • +

      The Sequel::MassAssignmentRestriction exception now supports model and column methods to get provide additional information about the exception. Additionally, the exception message now includes information about the model class.

      +
    + +

    Other Improvements

    +
    • +

      The ibmdb and jdbc/db2 adapter now both handle disconnect errors correctly, removing the related connection from the pool.

      +
    • +

      Dataset#import no longer uses an explicit transaction if given a dataset value, as in that case, only a single query is used.

      +
    • +

      The column_encryption plugin no longer uses the base64 library. The base64 library is moving from the standard library to a bundled gem in Ruby 3.4, and this avoids having a dependency on it.

      +
    +
    +
    +
    + +
    +
    + + +
    + + + diff --git a/rdoc/files/lib/sequel/database/schema_methods_rb.html b/rdoc/files/lib/sequel/database/schema_methods_rb.html index 799b138ca..5df667f04 100644 --- a/rdoc/files/lib/sequel/database/schema_methods_rb.html +++ b/rdoc/files/lib/sequel/database/schema_methods_rb.html @@ -31,7 +31,7 @@

    schema_methods.rb

  • Last Update: -2023-04-11 08:27:16 -0700 +2023-09-21 15:53:42 -0700
    diff --git a/rdoc/files/lib/sequel/database/transactions_rb.html b/rdoc/files/lib/sequel/database/transactions_rb.html index 767eb781b..f1f4305c1 100644 --- a/rdoc/files/lib/sequel/database/transactions_rb.html +++ b/rdoc/files/lib/sequel/database/transactions_rb.html @@ -31,7 +31,7 @@

    transactions.rb

    Last Update: -2020-11-20 10:49:30 -0800 +2023-09-21 15:53:42 -0700
    diff --git a/rdoc/files/lib/sequel/dataset/actions_rb.html b/rdoc/files/lib/sequel/dataset/actions_rb.html index 9fa4453a9..1a0f88ac7 100644 --- a/rdoc/files/lib/sequel/dataset/actions_rb.html +++ b/rdoc/files/lib/sequel/dataset/actions_rb.html @@ -31,7 +31,7 @@

    actions.rb

    Last Update: -2023-02-03 13:26:40 -0800 +2023-09-21 15:53:42 -0700
    diff --git a/rdoc/files/lib/sequel/extensions/migration_rb.html b/rdoc/files/lib/sequel/extensions/migration_rb.html index 1978907c3..3b76bb405 100644 --- a/rdoc/files/lib/sequel/extensions/migration_rb.html +++ b/rdoc/files/lib/sequel/extensions/migration_rb.html @@ -31,7 +31,7 @@

    migration.rb

    Last Update: -2023-07-03 08:26:16 -0700 +2023-09-21 15:53:42 -0700
    diff --git a/rdoc/files/lib/sequel/model/base_rb.html b/rdoc/files/lib/sequel/model/base_rb.html index bdd14448d..ee82ac628 100644 --- a/rdoc/files/lib/sequel/model/base_rb.html +++ b/rdoc/files/lib/sequel/model/base_rb.html @@ -31,7 +31,7 @@

    base.rb

    Last Update: -2023-04-16 10:40:52 -0700 +2023-09-21 15:53:42 -0700
    diff --git a/rdoc/files/lib/sequel/model/exceptions_rb.html b/rdoc/files/lib/sequel/model/exceptions_rb.html index 595f92bc9..c436959cb 100644 --- a/rdoc/files/lib/sequel/model/exceptions_rb.html +++ b/rdoc/files/lib/sequel/model/exceptions_rb.html @@ -31,7 +31,7 @@

    exceptions.rb

    Last Update: -2022-09-02 09:11:30 -0700 +2023-09-18 12:32:33 -0700
    diff --git a/rdoc/files/lib/sequel/version_rb.html b/rdoc/files/lib/sequel/version_rb.html index da5689691..08a758732 100644 --- a/rdoc/files/lib/sequel/version_rb.html +++ b/rdoc/files/lib/sequel/version_rb.html @@ -31,7 +31,7 @@

    version.rb

    Last Update: -2023-08-29 11:56:10 -0700 +2023-09-28 16:13:36 -0700
    diff --git a/rdoc/fr_class_index.html b/rdoc/fr_class_index.html index 2f0445243..3198b9d15 100644 --- a/rdoc/fr_class_index.html +++ b/rdoc/fr_class_index.html @@ -32,6 +32,7 @@ Sequel::Inflections Sequel::IntegerMigrator Sequel::LiteralString +Sequel::MassAssignmentRestriction Sequel::Migration Sequel::MigrationAlterTableReverser Sequel::MigrationDSL diff --git a/rdoc/fr_file_index.html b/rdoc/fr_file_index.html index 14910ffc8..f77f90a7b 100644 --- a/rdoc/fr_file_index.html +++ b/rdoc/fr_file_index.html @@ -224,6 +224,7 @@
  • 5.70.0.txt
  • 5.71.0.txt
  • 5.72.0.txt
  • +
  • 5.73.0.txt
  • 5.8.0.txt
  • 5.9.0.txt
  • schema_modification.rdoc
  • diff --git a/rdoc/fr_method_index.html b/rdoc/fr_method_index.html index a80507b70..7b7ef9b0a 100644 --- a/rdoc/fr_method_index.html +++ b/rdoc/fr_method_index.html @@ -43,11 +43,12 @@
  • #cache_schema (Sequel::Database)
  • #callable (Sequel::SQL::DelayedEvaluation)
  • #check_string_typecast_bytesize (Sequel::Database)
  • -
  • #column (Sequel::Migrator)
  • #column (Sequel::SQL::QualifiedIdentifier)
  • +
  • #column (Sequel::MassAssignmentRestriction)
  • +
  • #column (Sequel::Migrator)
  • #column_maps (Sequel::Model::Associations::EagerGraphLoader)
  • -
  • #columns (Sequel::Schema::CreateTableGenerator)
  • #columns (Sequel::SQL::AliasedExpression)
  • +
  • #columns (Sequel::Schema::CreateTableGenerator)
  • #conditions (Sequel::SQL::CaseExpression)
  • #connect_sqls (Sequel::ConnectionPool)
  • #constant (Sequel::SQL::Constant)
  • @@ -61,8 +62,8 @@
  • #dataset_module_class (Sequel::Model::ClassMethods)
  • #datetime_class (Sequel::SequelMethods)
  • #db (Sequel::Dataset)
  • -
  • #db (Sequel::ConnectionPool)
  • #db (Sequel::Migrator)
  • +
  • #db (Sequel::ConnectionPool)
  • #default (Sequel::SQL::CaseExpression)
  • #default_association_options (Sequel::Model::Associations::ClassMethods)
  • #default_association_type_options (Sequel::Model::Associations::ClassMethods)
  • @@ -77,9 +78,9 @@
  • #ds (Sequel::Migrator)
  • #errors (Sequel::ValidationFailed)
  • #expr (Sequel::SQL::Cast)
  • -
  • #expression (Sequel::SQL::OrderedExpression)
  • -
  • #expression (Sequel::SQL::AliasedExpression)
  • #expression (Sequel::SQL::Subscript)
  • +
  • #expression (Sequel::SQL::AliasedExpression)
  • +
  • #expression (Sequel::SQL::OrderedExpression)
  • #expression (Sequel::SQL::CaseExpression)
  • #f (Sequel::SQL::Subscript)
  • #fast_instance_delete_sql (Sequel::Model::ClassMethods)
  • @@ -94,14 +95,15 @@
  • #loggers (Sequel::Database)
  • #master (Sequel::Model::Associations::EagerGraphLoader)
  • #max_size (Sequel::ThreadedConnectionPool)
  • -
  • #max_size (Sequel::TimedQueueConnectionPool)
  • #max_size (Sequel::ShardedTimedQueueConnectionPool)
  • +
  • #max_size (Sequel::TimedQueueConnectionPool)
  • #migration (Sequel::MigrationDSL)
  • #migration_tuples (Sequel::TimestampMigrator)
  • #migrations (Sequel::IntegerMigrator)
  • +
  • #model (Sequel::HookFailed)
  • +
  • #model (Sequel::MassAssignmentRestriction)
  • #model (Sequel::Model::DatasetModule)
  • #model (Sequel::ValidationFailed)
  • -
  • #model (Sequel::HookFailed)
  • #name (Sequel::SQL::Function)
  • #nulls (Sequel::SQL::OrderedExpression)
  • #on (Sequel::SQL::JoinOnClause)
  • @@ -109,8 +111,8 @@
  • #operations (Sequel::Schema::AlterTableGenerator)
  • #opts (Sequel::SQL::Window)
  • #opts (Sequel::SQL::Function)
  • -
  • #opts (Sequel::Database)
  • #opts (Sequel::Dataset)
  • +
  • #opts (Sequel::Database)
  • #parens (Sequel::SQL::PlaceholderLiteralString)
  • #plugins (Sequel::Model::ClassMethods)
  • #pool (Sequel::Database)
  • @@ -132,9 +134,9 @@
  • #str (Sequel::SQL::PlaceholderLiteralString)
  • #strict_param_setting (Sequel::Model::ClassMethods)
  • #sub (Sequel::SQL::Subscript)
  • -
  • #table (Sequel::Migrator)
  • -
  • #table (Sequel::SQL::QualifiedIdentifier)
  • #table (Sequel::SQL::ColumnAll)
  • +
  • #table (Sequel::SQL::QualifiedIdentifier)
  • +
  • #table (Sequel::Migrator)
  • #table_expr (Sequel::SQL::JoinClause)
  • #target (Sequel::Migrator)
  • #timezone (Sequel::Database)
  • @@ -149,8 +151,8 @@
  • #use_transactions (Sequel::SimpleMigration)
  • #use_transactions (Sequel::Model::ClassMethods)
  • #using (Sequel::SQL::JoinUsingClause)
  • -
  • #value (Sequel::SQL::Identifier)
  • #value (Sequel::SQL::Wrapper)
  • +
  • #value (Sequel::SQL::Identifier)
  • #values (Sequel::Model::InstanceMethods)
  • #wrapped_exception (Sequel::Error)
  • ::adapter_class (Sequel::Database)
  • @@ -159,14 +161,15 @@
  • ::after_initialize (Sequel::Database)
  • ::after_set_dataset (Sequel::Plugins)
  • ::apply (Sequel::Migration)
  • -
  • ::apply (Sequel::Model::Associations)
  • ::apply (Sequel::Migrator)
  • +
  • ::apply (Sequel::Model::Associations)
  • ::attr_reader (Sequel::SQL::Expression)
  • ::check_current (Sequel::Migrator)
  • ::clause_methods (Sequel::Dataset)
  • ::clear (Sequel::Inflections)
  • ::connect (Sequel::Database)
  • ::const_missing (Sequel::BasicObject)
  • +
  • ::create (Sequel::MassAssignmentRestriction)
  • ::create (Sequel::MigrationDSL)
  • ::create (Sequel::SQLTime)
  • ::date (Sequel::SQLTime)
  • @@ -180,8 +183,8 @@
  • ::extension (Sequel::Database)
  • ::from_value_pairs (Sequel::SQL::BooleanExpression)
  • ::inflections (Sequel)
  • -
  • ::inherited (Sequel::Migration)
  • ::inherited (Sequel::SQL::Expression)
  • +
  • ::inherited (Sequel::Migration)
  • ::inherited_instance_variables (Sequel::Plugins)
  • ::invert (Sequel::SQL::BooleanExpression)
  • ::irregular (Sequel::Inflections)
  • @@ -191,57 +194,57 @@
  • ::loader (Sequel::Dataset::PlaceholderLiteralizer)
  • ::migration (Sequel)
  • ::migrator_class (Sequel::Migrator)
  • -
  • ::new (Sequel::Schema::AlterTableGenerator)
  • +
  • ::new (Sequel::MigrationAlterTableReverser)
  • ::new (Sequel::SQL::ColumnAll)
  • ::new (Sequel::SQL::Cast)
  • ::new (Sequel::SQL::CaseExpression)
  • -
  • ::new (Sequel::SQL::OrderedExpression)
  • -
  • ::new (Sequel::SQL::PlaceholderLiteralString)
  • +
  • ::new (Sequel::SQL::Constant)
  • +
  • ::new (Sequel::SQL::DelayedEvaluation)
  • ::new (Sequel::SQL::AliasedExpression)
  • ::new (Sequel::Qualifier)
  • -
  • ::new (Sequel::SQL::QualifiedIdentifier)
  • -
  • ::new (Sequel::SQL::Constant)
  • -
  • ::new (Sequel::SQL::Subscript)
  • -
  • ::new (Sequel::SQL::VirtualRow)
  • +
  • ::new (Sequel::ShardedThreadedConnectionPool)
  • +
  • ::new (Sequel::SQL::Function)
  • +
  • ::new (Sequel::SQL::Identifier)
  • +
  • ::new (Sequel::SQL::JoinClause)
  • ::new (Sequel::NoMatchingRow)
  • ::new (Sequel::Model::InstanceMethods)
  • ::new (Sequel::Model::DatasetModule)
  • -
  • ::new (Sequel::Dataset)
  • ::new (Sequel::Model::Associations::EagerGraphLoader)
  • -
  • ::new (Sequel::SQL::Window)
  • -
  • ::new (Sequel::SQL::Wrapper)
  • -
  • ::new (Sequel::SQL::ComplexExpression)
  • +
  • ::new (Sequel::ShardedTimedQueueConnectionPool)
  • +
  • ::new (Sequel::SimpleMigration)
  • +
  • ::new (Sequel::SQL::JoinOnClause)
  • ::new (Sequel::Migrator)
  • -
  • ::new (Sequel::SQL::DelayedEvaluation)
  • -
  • ::new (Sequel::Database)
  • ::new (Sequel::SQL::JoinUsingClause)
  • -
  • ::new (Sequel::Schema::CreateTableGenerator)
  • -
  • ::new (Sequel::ShardedSingleConnectionPool)
  • +
  • ::new (Sequel::Database)
  • +
  • ::new (Sequel::SQL::OrderedExpression)
  • +
  • ::new (Sequel::ConnectionPool)
  • +
  • ::new (Sequel::SingleConnectionPool)
  • ::new (Sequel::MigrationReverser)
  • ::new (Sequel::MigrationDSL)
  • -
  • ::new (Sequel::ShardedThreadedConnectionPool)
  • -
  • ::new (Sequel::MigrationAlterTableReverser)
  • -
  • ::new (Sequel::SQL::JoinOnClause)
  • -
  • ::new (Sequel::ShardedTimedQueueConnectionPool)
  • -
  • ::new (Sequel::SimpleMigration)
  • +
  • ::new (Sequel::ThreadedConnectionPool)
  • +
  • ::new (Sequel::SQL::ComplexExpression)
  • +
  • ::new (Sequel::SQL::PlaceholderLiteralString)
  • +
  • ::new (Sequel::SQL::QualifiedIdentifier)
  • +
  • ::new (Sequel::TimedQueueConnectionPool)
  • ::new (Sequel::Migration)
  • +
  • ::new (Sequel::TimestampMigrator)
  • ::new (Sequel::IntegerMigrator)
  • -
  • ::new (Sequel::SQL::Function)
  • -
  • ::new (Sequel::ConnectionPool)
  • +
  • ::new (Sequel::SQL::Subscript)
  • +
  • ::new (Sequel::SQL::VirtualRow)
  • ::new (Sequel::HookFailed)
  • -
  • ::new (Sequel::SingleConnectionPool)
  • -
  • ::new (Sequel::ThreadedConnectionPool)
  • +
  • ::new (Sequel::SQL::Window)
  • +
  • ::new (Sequel::SQL::Wrapper)
  • ::new (Sequel::Dataset::PlaceholderLiteralizer::Argument)
  • ::new (Sequel::Dataset::PlaceholderLiteralizer)
  • -
  • ::new (Sequel::SQL::Identifier)
  • -
  • ::new (Sequel::TimedQueueConnectionPool)
  • -
  • ::new (Sequel::TimestampMigrator)
  • -
  • ::new (Sequel::SQL::JoinClause)
  • +
  • ::new (Sequel::ShardedSingleConnectionPool)
  • +
  • ::new (Sequel::Dataset)
  • +
  • ::new (Sequel::Schema::AlterTableGenerator)
  • +
  • ::new (Sequel::Schema::CreateTableGenerator)
  • ::new (Sequel::ValidationFailed)
  • ::parse (Sequel::SQLTime)
  • ::plural (Sequel::Inflections)
  • -
  • ::register_extension (Sequel::Dataset)
  • ::register_extension (Sequel::Database)
  • +
  • ::register_extension (Sequel::Dataset)
  • ::run (Sequel::Migrator)
  • ::run_after_initialize (Sequel::Database)
  • ::set_shared_adapter_scheme (Sequel::Database)
  • @@ -251,28 +254,28 @@
  • ::version (Sequel)
  • #!~ (Sequel::SQL::PatternMatchMethods)
  • #& (Sequel::SQL::BooleanExpression)
  • -
  • #* (Sequel::SQL::Function)
  • #* (Sequel::SQL::QualifyingMethods)
  • +
  • #* (Sequel::SQL::Function)
  • #** (Sequel::SQL::OperatorBuilders)
  • #+ (Sequel::SQL::StringConcatenationMethods)
  • #+ (Sequel::SQL::NumericMethods)
  • #+ (Sequel::SQL::NumericExpression)
  • -
  • #<< (Sequel::Database)
  • #<< (Sequel::Dataset)
  • +
  • #<< (Sequel::Database)
  • #== (Sequel::Dataset)
  • -
  • #== (Sequel::SQL::Expression)
  • #== (Sequel::Model::InstanceMethods)
  • +
  • #== (Sequel::SQL::Expression)
  • #=== (Sequel::Model::InstanceMethods)
  • #=~ (Sequel::SQL::PatternMatchMethods)
  • #Bignum (Sequel::Schema::CreateTableGenerator)
  • #Fixnum (Sequel::Schema::CreateTableGenerator)
  • #Model (Sequel::Model::ClassMethods)
  • +
  • #[] (Sequel::Model::InstanceMethods)
  • #[] (Sequel::Database)
  • -
  • #[] (Sequel::SQL::Subscript)
  • #[] (Sequel::Model::ClassMethods)
  • #[] (Sequel::Model::DatasetMethods)
  • -
  • #[] (Sequel::Model::InstanceMethods)
  • #[] (Sequel::Dataset)
  • +
  • #[] (Sequel::SQL::Subscript)
  • #[] (Sequel::SQL::QualifyingMethods)
  • #[]= (Sequel::Model::InstanceMethods)
  • #_add_method (Sequel::Model::Associations::AssociationReflection)
  • @@ -296,8 +299,8 @@
  • #add_index (Sequel::Schema::AlterTableGenerator)
  • #add_method (Sequel::Model::Associations::AssociationReflection)
  • #add_primary_key (Sequel::Schema::AlterTableGenerator)
  • -
  • #add_servers (Sequel::Database)
  • #add_servers (Sequel::ShardedTimedQueueConnectionPool)
  • +
  • #add_servers (Sequel::Database)
  • #add_servers (Sequel::ShardedSingleConnectionPool)
  • #add_servers (Sequel::ShardedThreadedConnectionPool)
  • #add_spatial_index (Sequel::Schema::AlterTableGenerator)
  • @@ -310,11 +313,11 @@
  • #all (Sequel::Dataset::PlaceholderLiteralizer)
  • #all_association_reflections (Sequel::Model::Associations::ClassMethods)
  • #all_connections (Sequel::TimedQueueConnectionPool)
  • -
  • #all_connections (Sequel::ShardedThreadedConnectionPool)
  • -
  • #all_connections (Sequel::SingleConnectionPool)
  • -
  • #all_connections (Sequel::ShardedSingleConnectionPool)
  • #all_connections (Sequel::ShardedTimedQueueConnectionPool)
  • +
  • #all_connections (Sequel::ShardedSingleConnectionPool)
  • #all_connections (Sequel::ThreadedConnectionPool)
  • +
  • #all_connections (Sequel::SingleConnectionPool)
  • +
  • #all_connections (Sequel::ShardedThreadedConnectionPool)
  • #allocated (Sequel::ShardedThreadedConnectionPool)
  • #alter_table (Sequel::Database)
  • #alter_table_generator (Sequel::Database)
  • @@ -324,8 +327,8 @@
  • #apply_dataset_changes (Sequel::Model::Associations::AssociationReflection)
  • #apply_distinct_on_eager_limit_strategy (Sequel::Model::Associations::AssociationReflection)
  • #apply_eager_dataset_changes (Sequel::Model::Associations::AssociationReflection)
  • -
  • #apply_eager_graph_limit_strategy (Sequel::Model::Associations::OneToManyAssociationReflection)
  • #apply_eager_graph_limit_strategy (Sequel::Model::Associations::AssociationReflection)
  • +
  • #apply_eager_graph_limit_strategy (Sequel::Model::Associations::OneToManyAssociationReflection)
  • #apply_eager_limit_strategy (Sequel::Model::Associations::AssociationReflection)
  • #apply_ruby_eager_limit_strategy (Sequel::Model::Associations::AssociationReflection)
  • #apply_window_function_eager_limit_strategy (Sequel::Model::Associations::AssociationReflection)
  • @@ -333,9 +336,9 @@
  • #array_sql_append (Sequel::Dataset)
  • #as (Sequel::SQL::Builders)
  • #as (Sequel::SQL::AliasMethods)
  • -
  • #as_hash (Sequel::Model::DatasetMethods)
  • #as_hash (Sequel::Model::Associations::DatasetMethods)
  • #as_hash (Sequel::Dataset)
  • +
  • #as_hash (Sequel::Model::DatasetMethods)
  • #asc (Sequel::SQL::OrderedExpression)
  • #asc (Sequel::SQL::OrderMethods)
  • #asc (Sequel::SQL::Builders)
  • @@ -348,15 +351,15 @@
  • #associated_key_array (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • #associated_key_column (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • #associated_key_table (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • +
  • #associated_object_keys (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • #associated_object_keys (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • #associated_object_keys (Sequel::Model::Associations::OneToManyAssociationReflection)
  • -
  • #associated_object_keys (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • #association_dataset_for (Sequel::Model::Associations::AssociationReflection)
  • #association_dataset_proc (Sequel::Model::Associations::AssociationReflection)
  • #association_join (Sequel::Model::Associations::DatasetMethods)
  • #association_method (Sequel::Model::Associations::AssociationReflection)
  • -
  • #association_reflection (Sequel::Model::Associations::AssociationDatasetMethods)
  • #association_reflection (Sequel::Model::Associations::ClassMethods)
  • +
  • #association_reflection (Sequel::Model::Associations::AssociationDatasetMethods)
  • #associations (Sequel::Model::Associations::InstanceMethods)
  • #associations (Sequel::Model::Associations::ClassMethods)
  • #autoincrementing_primary_key (Sequel::Model::InstanceMethods)
  • @@ -368,16 +371,16 @@
  • #boolean_constant_sql_append (Sequel::Dataset)
  • #cache_get (Sequel::Dataset)
  • #cache_set (Sequel::Dataset)
  • -
  • #call (Sequel::Model::ClassMethods)
  • +
  • #call (Sequel::Dataset)
  • #call (Sequel::SQL::DelayedEvaluation)
  • -
  • #call (Sequel::Database)
  • -
  • #call (Sequel::Dataset::PreparedStatementMethods)
  • +
  • #call (Sequel::Model::ClassMethods)
  • #call (Sequel::Dataset::ArgumentMapper)
  • -
  • #call (Sequel::Dataset)
  • -
  • #can_have_associated_objects? (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • +
  • #call (Sequel::Dataset::PreparedStatementMethods)
  • +
  • #call (Sequel::Database)
  • #can_have_associated_objects? (Sequel::Model::Associations::AssociationReflection)
  • -
  • #can_have_associated_objects? (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • +
  • #can_have_associated_objects? (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • #can_have_associated_objects? (Sequel::Model::Associations::OneToManyAssociationReflection)
  • +
  • #can_have_associated_objects? (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • #cancel_action (Sequel::Model::InstanceMethods)
  • #case (Sequel::SQL::Builders)
  • #case_expression_sql_append (Sequel::Dataset)
  • @@ -398,9 +401,9 @@
  • #clear_setter_methods_cache (Sequel::Model::ClassMethods)
  • #clone (Sequel::SQL::Expression)
  • #clone (Sequel::Dataset)
  • -
  • #cloneable? (Sequel::Model::Associations::OneToManyAssociationReflection)
  • #cloneable? (Sequel::Model::Associations::AssociationReflection)
  • #cloneable? (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • +
  • #cloneable? (Sequel::Model::Associations::OneToManyAssociationReflection)
  • #coerce (Sequel::SQL::NumericMethods)
  • #column (Sequel::Schema::CreateTableGenerator)
  • #column_aliases (Sequel::SQL::JoinClause)
  • @@ -423,8 +426,8 @@
  • #convert_output_timestamp (Sequel::SequelMethods)
  • #convert_timestamp (Sequel::SequelMethods)
  • #core_extensions? (Sequel::SequelMethods)
  • -
  • #count (Sequel::Dataset)
  • #count (Sequel::Model::Errors)
  • +
  • #count (Sequel::Dataset)
  • #create (Sequel::Model::ClassMethods)
  • #create_join_table (Sequel::Database)
  • #create_join_table! (Sequel::Database)
  • @@ -445,8 +448,8 @@
  • #dataset_class= (Sequel::Database)
  • #dataset_method (Sequel::Model::Associations::AssociationReflection)
  • #dataset_module (Sequel::Model::ClassMethods)
  • -
  • #dataset_need_primary_key? (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • #dataset_need_primary_key? (Sequel::Model::Associations::AssociationReflection)
  • +
  • #dataset_need_primary_key? (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • #db (Sequel::Model::ClassMethods)
  • #db= (Sequel::Model::ClassMethods)
  • #db_schema (Sequel::Model::ClassMethods)
  • @@ -463,66 +466,66 @@
  • #default_right_key (Sequel::Model::Associations::OneThroughOneAssociationReflection)
  • #default_timezone= (Sequel::SequelMethods)
  • #delay (Sequel::SQL::Builders)
  • -
  • #delayed_evaluation_sql_append (Sequel::Dataset)
  • #delayed_evaluation_sql_append (Sequel::Dataset::PreparedStatementMethods)
  • -
  • #delete (Sequel::Model::InstanceMethods)
  • +
  • #delayed_evaluation_sql_append (Sequel::Dataset)
  • #delete (Sequel::Dataset)
  • +
  • #delete (Sequel::Model::InstanceMethods)
  • #delete_row_number_column (Sequel::Model::Associations::AssociationReflection)
  • -
  • #desc (Sequel::SQL::Builders)
  • -
  • #desc (Sequel::SQL::OrderMethods)
  • #desc (Sequel::SQL::OrderedExpression)
  • +
  • #desc (Sequel::SQL::OrderMethods)
  • +
  • #desc (Sequel::SQL::Builders)
  • #destroy (Sequel::Model::DatasetMethods)
  • #destroy (Sequel::Model::InstanceMethods)
  • -
  • #disconnect (Sequel::Database)
  • -
  • #disconnect (Sequel::SingleConnectionPool)
  • -
  • #disconnect (Sequel::ShardedThreadedConnectionPool)
  • #disconnect (Sequel::ShardedTimedQueueConnectionPool)
  • -
  • #disconnect (Sequel::ShardedSingleConnectionPool)
  • #disconnect (Sequel::ThreadedConnectionPool)
  • #disconnect (Sequel::TimedQueueConnectionPool)
  • +
  • #disconnect (Sequel::ShardedThreadedConnectionPool)
  • +
  • #disconnect (Sequel::Database)
  • +
  • #disconnect (Sequel::SingleConnectionPool)
  • +
  • #disconnect (Sequel::ShardedSingleConnectionPool)
  • #disconnect_connection (Sequel::Database)
  • #distinct (Sequel::SQL::Function)
  • #distinct (Sequel::Dataset)
  • -
  • #down (Sequel::MigrationDSL)
  • #down (Sequel::Migration)
  • -
  • #drop_column (Sequel::Schema::AlterTableGenerator)
  • +
  • #down (Sequel::MigrationDSL)
  • #drop_column (Sequel::Database)
  • +
  • #drop_column (Sequel::Schema::AlterTableGenerator)
  • #drop_constraint (Sequel::Schema::AlterTableGenerator)
  • #drop_foreign_key (Sequel::Schema::AlterTableGenerator)
  • -
  • #drop_index (Sequel::Database)
  • #drop_index (Sequel::Schema::AlterTableGenerator)
  • +
  • #drop_index (Sequel::Database)
  • #drop_join_table (Sequel::Database)
  • #drop_table (Sequel::Database)
  • #drop_table? (Sequel::Database)
  • #drop_view (Sequel::Database)
  • -
  • #dup (Sequel::SQL::Expression)
  • #dup (Sequel::Dataset)
  • +
  • #dup (Sequel::SQL::Expression)
  • +
  • #each (Sequel::Model::InstanceMethods)
  • #each (Sequel::Dataset)
  • #each (Sequel::Dataset::PlaceholderLiteralizer)
  • -
  • #each (Sequel::Model::InstanceMethods)
  • #each_server (Sequel::Dataset)
  • #eager (Sequel::Model::Associations::DatasetMethods)
  • #eager_graph (Sequel::Model::Associations::DatasetMethods)
  • #eager_graph_association (Sequel::Model::Associations::DatasetMethods)
  • #eager_graph_associations (Sequel::Model::Associations::DatasetMethods)
  • #eager_graph_build_associations (Sequel::Model::Associations::DatasetMethods)
  • -
  • #eager_graph_lazy_dataset? (Sequel::Model::Associations::AssociationReflection)
  • #eager_graph_lazy_dataset? (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • -
  • #eager_graph_limit_strategy (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • +
  • #eager_graph_lazy_dataset? (Sequel::Model::Associations::AssociationReflection)
  • #eager_graph_limit_strategy (Sequel::Model::Associations::AssociationReflection)
  • +
  • #eager_graph_limit_strategy (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • #eager_graph_with_options (Sequel::Model::Associations::DatasetMethods)
  • -
  • #eager_limit_strategy (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • #eager_limit_strategy (Sequel::Model::Associations::AssociationReflection)
  • -
  • #eager_load_results (Sequel::Model::Associations::ClassMethods)
  • +
  • #eager_limit_strategy (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • #eager_load_results (Sequel::Model::Associations::AssociationReflection)
  • +
  • #eager_load_results (Sequel::Model::Associations::ClassMethods)
  • #eager_loader_key (Sequel::Model::Associations::AssociationReflection)
  • #eager_loading_use_associated_key? (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • #eager_loading_use_associated_key? (Sequel::Model::Associations::AssociationReflection)
  • #elapsed_seconds_since (Sequel::SequelMethods)
  • #empty? (Sequel::Model::Errors)
  • #empty? (Sequel::Dataset)
  • -
  • #eql? (Sequel::Dataset)
  • #eql? (Sequel::Model::InstanceMethods)
  • +
  • #eql? (Sequel::Dataset)
  • #eql? (Sequel::SQL::Expression)
  • #errors (Sequel::Model::InstanceMethods)
  • #escape_like (Sequel::Dataset)
  • @@ -538,10 +541,10 @@
  • #expression? (Sequel::SQL::CaseExpression)
  • #extend (Sequel::Model::InstanceMethods)
  • #extend_datasets (Sequel::Database)
  • -
  • #extension (Sequel::Dataset)
  • -
  • #extension (Sequel::Database)
  • #extension (Sequel::Dataset::DeprecatedSingletonClassMethods)
  • #extension (Sequel::SequelMethods)
  • +
  • #extension (Sequel::Dataset)
  • +
  • #extension (Sequel::Database)
  • #extract (Sequel::SQL::ComplexExpressionMethods)
  • #extract (Sequel::SQL::Builders)
  • #fetch (Sequel::Database)
  • @@ -567,28 +570,28 @@
  • #first_source_table (Sequel::Dataset)
  • #for_update (Sequel::Dataset)
  • #foreign_key (Sequel::Schema::CreateTableGenerator)
  • -
  • #freeze (Sequel::Model::InstanceMethods)
  • #freeze (Sequel::Model::ClassMethods)
  • -
  • #freeze (Sequel::Database)
  • -
  • #freeze (Sequel::ShardedSingleConnectionPool)
  • -
  • #freeze (Sequel::Model::Associations::ClassMethods)
  • #freeze (Sequel::Dataset::PlaceholderLiteralizer)
  • #freeze (Sequel::ShardedThreadedConnectionPool)
  • -
  • #freeze (Sequel::Model::Associations::InstanceMethods)
  • +
  • #freeze (Sequel::Model::Associations::ClassMethods)
  • #freeze (Sequel::Dataset)
  • -
  • #from (Sequel::Dataset)
  • +
  • #freeze (Sequel::Model::InstanceMethods)
  • +
  • #freeze (Sequel::Database)
  • +
  • #freeze (Sequel::ShardedSingleConnectionPool)
  • +
  • #freeze (Sequel::Model::Associations::InstanceMethods)
  • #from (Sequel::Database)
  • +
  • #from (Sequel::Dataset)
  • #from_application_timestamp (Sequel::Database)
  • #from_self (Sequel::Dataset)
  • #full_messages (Sequel::Model::Errors)
  • #full_text_index (Sequel::Schema::CreateTableGenerator)
  • -
  • #function (Sequel::SQL::Builders)
  • #function (Sequel::SQL::Identifier)
  • #function (Sequel::SQL::QualifiedIdentifier)
  • +
  • #function (Sequel::SQL::Builders)
  • #function_sql_append (Sequel::Dataset)
  • +
  • #get (Sequel::Database)
  • #get (Sequel::Dataset::PlaceholderLiteralizer)
  • #get (Sequel::Dataset)
  • -
  • #get (Sequel::Database)
  • #get_pool (Sequel::ConnectionPool::ClassMethods)
  • #global_index_namespace? (Sequel::Database)
  • #graph (Sequel::Dataset)
  • @@ -600,20 +603,20 @@
  • #group_cube (Sequel::Dataset)
  • #group_rollup (Sequel::Dataset)
  • #grouping_sets (Sequel::Dataset)
  • -
  • #handle_silent_modification_failure? (Sequel::Model::Associations::OneToManyAssociationReflection)
  • #handle_silent_modification_failure? (Sequel::Model::Associations::AssociationReflection)
  • +
  • #handle_silent_modification_failure? (Sequel::Model::Associations::OneToManyAssociationReflection)
  • #has_column? (Sequel::Schema::CreateTableGenerator)
  • #has_dataset? (Sequel::Model::ClassMethods)
  • -
  • #hash (Sequel::SQL::Expression)
  • #hash (Sequel::Model::InstanceMethods)
  • +
  • #hash (Sequel::SQL::Expression)
  • #hash (Sequel::Dataset)
  • #having (Sequel::Dataset)
  • +
  • #hold (Sequel::SingleConnectionPool)
  • #hold (Sequel::ThreadedConnectionPool)
  • #hold (Sequel::TimedQueueConnectionPool)
  • -
  • #hold (Sequel::ShardedSingleConnectionPool)
  • -
  • #hold (Sequel::SingleConnectionPool)
  • -
  • #hold (Sequel::ShardedThreadedConnectionPool)
  • #hold (Sequel::ShardedTimedQueueConnectionPool)
  • +
  • #hold (Sequel::ShardedThreadedConnectionPool)
  • +
  • #hold (Sequel::ShardedSingleConnectionPool)
  • #id (Sequel::Model::InstanceMethods)
  • #identifier (Sequel::SQL::Builders)
  • #ilike (Sequel::SQL::Builders)
  • @@ -626,23 +629,23 @@
  • #initialize_association_cache (Sequel::Model::Associations::AssociationReflection)
  • #insert (Sequel::Dataset)
  • #insert_sql (Sequel::Dataset)
  • -
  • #inspect (Sequel::SQL::ValueList)
  • -
  • #inspect (Sequel::LiteralString)
  • -
  • #inspect (Sequel::SQL::Expression)
  • #inspect (Sequel::Model::InstanceMethods)
  • +
  • #inspect (Sequel::Dataset::PreparedStatementMethods)
  • +
  • #inspect (Sequel::SQLTime)
  • #inspect (Sequel::Model::Associations::AssociationReflection)
  • #inspect (Sequel::Database)
  • -
  • #inspect (Sequel::SQL::Blob)
  • +
  • #inspect (Sequel::SQL::ValueList)
  • #inspect (Sequel::Dataset)
  • -
  • #inspect (Sequel::SQLTime)
  • -
  • #inspect (Sequel::Dataset::PreparedStatementMethods)
  • +
  • #inspect (Sequel::SQL::Blob)
  • +
  • #inspect (Sequel::LiteralString)
  • +
  • #inspect (Sequel::SQL::Expression)
  • #intersect (Sequel::Dataset)
  • -
  • #invert (Sequel::Dataset)
  • #invert (Sequel::SQL::OrderedExpression)
  • -
  • #is_current? (Sequel::IntegerMigrator)
  • +
  • #invert (Sequel::Dataset)
  • #is_current? (Sequel::TimestampMigrator)
  • -
  • #join (Sequel::Dataset)
  • +
  • #is_current? (Sequel::IntegerMigrator)
  • #join (Sequel::SQL::Builders)
  • +
  • #join (Sequel::Dataset)
  • #join_clause_sql_append (Sequel::Dataset)
  • #join_on_clause_sql_append (Sequel::Dataset)
  • #join_table (Sequel::Dataset)
  • @@ -654,23 +657,23 @@
  • #keys (Sequel::Model::InstanceMethods)
  • #last (Sequel::Dataset)
  • #last (Sequel::Model::DatasetMethods)
  • -
  • #lateral (Sequel::SQL::Function)
  • #lateral (Sequel::Dataset)
  • -
  • #like (Sequel::SQL::Builders)
  • +
  • #lateral (Sequel::SQL::Function)
  • #like (Sequel::SQL::StringMethods)
  • +
  • #like (Sequel::SQL::Builders)
  • #limit (Sequel::Dataset)
  • -
  • #limit_and_offset (Sequel::Model::Associations::SingularAssociationReflection)
  • #limit_and_offset (Sequel::Model::Associations::AssociationReflection)
  • -
  • #lit (Sequel::SQL::Blob)
  • -
  • #lit (Sequel::LiteralString)
  • +
  • #limit_and_offset (Sequel::Model::Associations::SingularAssociationReflection)
  • #lit (Sequel::SQL::Builders)
  • +
  • #lit (Sequel::LiteralString)
  • +
  • #lit (Sequel::SQL::Blob)
  • #literal (Sequel::Database)
  • #literal_append (Sequel::Dataset)
  • #literal_symbol (Sequel::Database)
  • #literal_symbol_append (Sequel::Dataset::PreparedStatementMethods)
  • #literal_symbol_set (Sequel::Database)
  • -
  • #load (Sequel::Model::ClassMethods)
  • #load (Sequel::Model::Associations::EagerGraphLoader)
  • +
  • #load (Sequel::Model::ClassMethods)
  • #loader (Sequel::Dataset::PlaceholderLiteralizer::Recorder)
  • #lock! (Sequel::Model::InstanceMethods)
  • #lock_style (Sequel::Dataset)
  • @@ -693,9 +696,9 @@
  • #merge_sql (Sequel::Dataset)
  • #merge_update (Sequel::Dataset)
  • #merge_using (Sequel::Dataset)
  • -
  • #method_missing (Sequel::SQL::VirtualRow)
  • #method_missing (Sequel::Schema::CreateTableGenerator)
  • #method_missing (Sequel::Migration)
  • +
  • #method_missing (Sequel::SQL::VirtualRow)
  • #min (Sequel::Dataset)
  • #model (Sequel::Model::DatasetMethods)
  • #model_object (Sequel::Model::Associations::AssociationDatasetMethods)
  • @@ -720,8 +723,8 @@
  • #one_to_many (Sequel::Model::Associations::ClassMethods)
  • #one_to_one (Sequel::Model::Associations::ClassMethods)
  • #options_overlap (Sequel::Dataset)
  • -
  • #or (Sequel::Dataset)
  • #or (Sequel::SQL::Builders)
  • +
  • #or (Sequel::Dataset)
  • #order (Sequel::Dataset)
  • #order (Sequel::SQL::Function)
  • #order_append (Sequel::Dataset)
  • @@ -743,15 +746,15 @@
  • #placeholder_literalizer_loader (Sequel::Dataset)
  • #placeholder_loader (Sequel::Model::Associations::AssociationReflection)
  • #plugin (Sequel::Model::ClassMethods)
  • -
  • #pool_type (Sequel::TimedQueueConnectionPool)
  • -
  • #pool_type (Sequel::SingleConnectionPool)
  • #pool_type (Sequel::ShardedThreadedConnectionPool)
  • +
  • #pool_type (Sequel::ShardedSingleConnectionPool)
  • #pool_type (Sequel::ShardedTimedQueueConnectionPool)
  • +
  • #pool_type (Sequel::TimedQueueConnectionPool)
  • +
  • #pool_type (Sequel::SingleConnectionPool)
  • #pool_type (Sequel::ThreadedConnectionPool)
  • -
  • #pool_type (Sequel::ShardedSingleConnectionPool)
  • -
  • #predicate_key (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • -
  • #predicate_key (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • #predicate_key (Sequel::Model::Associations::OneToManyAssociationReflection)
  • +
  • #predicate_key (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • +
  • #predicate_key (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • #predicate_key_values (Sequel::Model::Associations::AssociationReflection)
  • #predicate_keys (Sequel::Model::Associations::AssociationReflection)
  • #prepare (Sequel::Dataset::PreparedStatementMethods)
  • @@ -763,8 +766,8 @@
  • #prepared_statement (Sequel::Database)
  • #prepared_statement_name (Sequel::Dataset::ArgumentMapper)
  • #prepared_type (Sequel::Dataset::PreparedStatementMethods)
  • -
  • #primary_key (Sequel::Model::Associations::OneToManyAssociationReflection)
  • #primary_key (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • +
  • #primary_key (Sequel::Model::Associations::OneToManyAssociationReflection)
  • #primary_key (Sequel::Schema::CreateTableGenerator)
  • #primary_key_hash (Sequel::Model::ClassMethods)
  • #primary_key_method (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • @@ -781,10 +784,10 @@
  • #qualified_primary_key_hash (Sequel::Model::ClassMethods)
  • #qualified_right_key (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • #qualified_right_primary_key (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • +
  • #qualify (Sequel::SQL::Builders)
  • +
  • #qualify (Sequel::Model::Associations::AssociationReflection)
  • #qualify (Sequel::Dataset)
  • #qualify (Sequel::SQL::QualifyingMethods)
  • -
  • #qualify (Sequel::Model::Associations::AssociationReflection)
  • -
  • #qualify (Sequel::SQL::Builders)
  • #qualify_assoc (Sequel::Model::Associations::AssociationReflection)
  • #qualify_cur (Sequel::Model::Associations::AssociationReflection)
  • #quote_identifier (Sequel::Database)
  • @@ -793,11 +796,11 @@
  • #quote_schema_table_append (Sequel::Dataset)
  • #quoted (Sequel::SQL::Function)
  • #quoted_identifier_append (Sequel::Dataset)
  • -
  • #reciprocal (Sequel::Model::Associations::AssociationReflection)
  • #reciprocal (Sequel::Model::Associations::OneThroughOneAssociationReflection)
  • -
  • #reciprocal_array? (Sequel::Model::Associations::AssociationReflection)
  • +
  • #reciprocal (Sequel::Model::Associations::AssociationReflection)
  • #reciprocal_array? (Sequel::Model::Associations::OneToManyAssociationReflection)
  • #reciprocal_array? (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • +
  • #reciprocal_array? (Sequel::Model::Associations::AssociationReflection)
  • #recursive_cte_requires_column_aliases? (Sequel::Dataset)
  • #recursive_map (Sequel::SequelMethods)
  • #refresh (Sequel::Model::InstanceMethods)
  • @@ -806,14 +809,14 @@
  • #remove_before_destroy? (Sequel::Model::Associations::OneToManyAssociationReflection)
  • #remove_before_destroy? (Sequel::Model::Associations::AssociationReflection)
  • #remove_method (Sequel::Model::Associations::AssociationReflection)
  • -
  • #remove_servers (Sequel::ShardedSingleConnectionPool)
  • #remove_servers (Sequel::Database)
  • -
  • #remove_servers (Sequel::ShardedTimedQueueConnectionPool)
  • #remove_servers (Sequel::ShardedThreadedConnectionPool)
  • +
  • #remove_servers (Sequel::ShardedTimedQueueConnectionPool)
  • +
  • #remove_servers (Sequel::ShardedSingleConnectionPool)
  • #remove_should_check_existing? (Sequel::Model::Associations::OneToManyAssociationReflection)
  • #remove_should_check_existing? (Sequel::Model::Associations::AssociationReflection)
  • -
  • #rename_column (Sequel::Schema::AlterTableGenerator)
  • #rename_column (Sequel::Database)
  • +
  • #rename_column (Sequel::Schema::AlterTableGenerator)
  • #rename_table (Sequel::Database)
  • #require (Sequel::SequelMethods)
  • #requires_placeholder_type_specifiers? (Sequel::Dataset)
  • @@ -823,11 +826,11 @@
  • #restrict_primary_key (Sequel::Model::ClassMethods)
  • #restrict_primary_key? (Sequel::Model::ClassMethods)
  • #returning (Sequel::Dataset)
  • -
  • #returns_array? (Sequel::Model::Associations::AssociationReflection)
  • -
  • #returns_array? (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • #returns_array? (Sequel::Model::Associations::SingularAssociationReflection)
  • -
  • #reverse (Sequel::MigrationAlterTableReverser)
  • +
  • #returns_array? (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • +
  • #returns_array? (Sequel::Model::Associations::AssociationReflection)
  • #reverse (Sequel::MigrationReverser)
  • +
  • #reverse (Sequel::MigrationAlterTableReverser)
  • #reverse (Sequel::Dataset)
  • #reverse_order (Sequel::Dataset)
  • #right_primary_key (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • @@ -838,20 +841,20 @@
  • #rollback_on_exit (Sequel::Database)
  • #row_number_column (Sequel::Dataset)
  • #row_proc (Sequel::Dataset)
  • -
  • #run (Sequel::IntegerMigrator)
  • -
  • #run (Sequel::Dataset::EmulatePreparedStatementMethods)
  • #run (Sequel::Database)
  • -
  • #run (Sequel::TimestampMigrator)
  • #run (Sequel::Dataset::PreparedStatementMethods)
  • +
  • #run (Sequel::TimestampMigrator)
  • +
  • #run (Sequel::IntegerMigrator)
  • +
  • #run (Sequel::Dataset::EmulatePreparedStatementMethods)
  • #save (Sequel::Model::InstanceMethods)
  • #save_changes (Sequel::Model::InstanceMethods)
  • #schema (Sequel::Database)
  • #schema_and_table (Sequel::Dataset)
  • #schema_type_class (Sequel::Database)
  • #select (Sequel::Database)
  • +
  • #select (Sequel::Dataset)
  • #select (Sequel::Model::Associations::ManyToManyAssociationReflection)
  • #select (Sequel::Model::Associations::AssociationReflection)
  • -
  • #select (Sequel::Dataset)
  • #select_all (Sequel::Dataset)
  • #select_append (Sequel::Dataset)
  • #select_group (Sequel::Dataset)
  • @@ -865,25 +868,25 @@
  • #server (Sequel::Dataset)
  • #server? (Sequel::Dataset)
  • #servers (Sequel::Database)
  • +
  • #servers (Sequel::ConnectionPool)
  • +
  • #servers (Sequel::ShardedSingleConnectionPool)
  • #servers (Sequel::ShardedTimedQueueConnectionPool)
  • #servers (Sequel::ShardedThreadedConnectionPool)
  • -
  • #servers (Sequel::ShardedSingleConnectionPool)
  • -
  • #servers (Sequel::ConnectionPool)
  • #set (Sequel::Model::InstanceMethods)
  • #set_column_allow_null (Sequel::Schema::AlterTableGenerator)
  • -
  • #set_column_default (Sequel::Database)
  • #set_column_default (Sequel::Schema::AlterTableGenerator)
  • +
  • #set_column_default (Sequel::Database)
  • #set_column_not_null (Sequel::Schema::AlterTableGenerator)
  • -
  • #set_column_type (Sequel::Schema::AlterTableGenerator)
  • #set_column_type (Sequel::Database)
  • +
  • #set_column_type (Sequel::Schema::AlterTableGenerator)
  • #set_dataset (Sequel::Model::ClassMethods)
  • #set_fields (Sequel::Model::InstanceMethods)
  • #set_graph_aliases (Sequel::Dataset)
  • #set_prepared_statement (Sequel::Database)
  • #set_primary_key (Sequel::Model::ClassMethods)
  • +
  • #set_reciprocal_to_self? (Sequel::Model::Associations::OneToManyAssociationReflection)
  • #set_reciprocal_to_self? (Sequel::Model::Associations::ManyToOneAssociationReflection)
  • #set_reciprocal_to_self? (Sequel::Model::Associations::AssociationReflection)
  • -
  • #set_reciprocal_to_self? (Sequel::Model::Associations::OneToManyAssociationReflection)
  • #set_server (Sequel::Model::InstanceMethods)
  • #setter_method (Sequel::Model::Associations::AssociationReflection)
  • #setter_methods (Sequel::Model::ClassMethods)
  • @@ -896,12 +899,12 @@
  • #single_value! (Sequel::Dataset)
  • #single_value_ds (Sequel::Dataset)
  • #singleton_method_added (Sequel::Model::InstanceMethods)
  • -
  • #size (Sequel::ThreadedConnectionPool)
  • -
  • #size (Sequel::TimedQueueConnectionPool)
  • #size (Sequel::ShardedTimedQueueConnectionPool)
  • +
  • #size (Sequel::TimedQueueConnectionPool)
  • #size (Sequel::SingleConnectionPool)
  • -
  • #size (Sequel::ShardedThreadedConnectionPool)
  • +
  • #size (Sequel::ThreadedConnectionPool)
  • #size (Sequel::ShardedSingleConnectionPool)
  • +
  • #size (Sequel::ShardedThreadedConnectionPool)
  • #skip_limit_check (Sequel::Dataset)
  • #skip_locked (Sequel::Dataset)
  • #skip_validation_on_next_save! (Sequel::Model::InstanceMethods)
  • @@ -912,18 +915,18 @@
  • #split_symbol (Sequel::SequelMethods)
  • #split_symbols= (Sequel::SequelMethods)
  • #split_symbols? (Sequel::SequelMethods)
  • -
  • #sql (Sequel::Dataset)
  • #sql (Sequel::Dataset::PlaceholderLiteralizer)
  • -
  • #sql_boolean (Sequel::SQL::ComplexExpression)
  • +
  • #sql (Sequel::Dataset)
  • #sql_boolean (Sequel::SQL::BooleanExpression)
  • +
  • #sql_boolean (Sequel::SQL::ComplexExpression)
  • #sql_boolean (Sequel::SQL::ComplexExpressionMethods)
  • #sql_literal_append (Sequel::Dataset::PlaceholderLiteralizer::Argument)
  • #sql_number (Sequel::SQL::NumericExpression)
  • -
  • #sql_number (Sequel::SQL::ComplexExpressionMethods)
  • #sql_number (Sequel::SQL::ComplexExpression)
  • -
  • #sql_string (Sequel::SQL::StringExpression)
  • +
  • #sql_number (Sequel::SQL::ComplexExpressionMethods)
  • #sql_string (Sequel::SQL::ComplexExpression)
  • #sql_string (Sequel::SQL::ComplexExpressionMethods)
  • +
  • #sql_string (Sequel::SQL::StringExpression)
  • #sql_subscript (Sequel::SQL::SubscriptMethods)
  • #start_timer (Sequel::SequelMethods)
  • #string_to_date (Sequel::SequelMethods)
  • @@ -984,8 +987,8 @@
  • #supports_window_clause? (Sequel::Dataset)
  • #supports_window_function_frame_option? (Sequel::Dataset)
  • #supports_window_functions? (Sequel::Dataset)
  • -
  • #synchronize (Sequel::SequelMethods)
  • #synchronize (Sequel::Database)
  • +
  • #synchronize (Sequel::SequelMethods)
  • #synchronize_with (Sequel::SequelMethods)
  • #table (Sequel::SQL::JoinClause)
  • #table_alias (Sequel::SQL::JoinClause)
  • @@ -995,19 +998,19 @@
  • #this (Sequel::Model::InstanceMethods)
  • #timezone (Sequel::Database)
  • #to_application_timestamp (Sequel::Database)
  • -
  • #to_hash (Sequel::Dataset)
  • #to_hash (Sequel::Model::DatasetMethods)
  • -
  • #to_hash_groups (Sequel::Model::Associations::DatasetMethods)
  • +
  • #to_hash (Sequel::Dataset)
  • #to_hash_groups (Sequel::Dataset)
  • +
  • #to_hash_groups (Sequel::Model::Associations::DatasetMethods)
  • #to_prepared_statement (Sequel::Dataset)
  • #to_s (Sequel::SQLTime)
  • -
  • #to_sequel_blob (Sequel::SQL::Blob)
  • #to_sequel_blob (Sequel::LiteralString)
  • +
  • #to_sequel_blob (Sequel::SQL::Blob)
  • #transaction (Sequel::SequelMethods)
  • -
  • #transaction (Sequel::Database)
  • #transaction (Sequel::MigrationDSL)
  • -
  • #transform (Sequel::Dataset::PlaceholderLiteralizer::Argument)
  • +
  • #transaction (Sequel::Database)
  • #transform (Sequel::ASTTransformer)
  • +
  • #transform (Sequel::Dataset::PlaceholderLiteralizer::Argument)
  • #trim (Sequel::SQL::Builders)
  • #truncate (Sequel::Dataset)
  • #truncate_sql (Sequel::Dataset)
  • @@ -1047,15 +1050,15 @@
  • #window_sql_append (Sequel::Dataset)
  • #with (Sequel::Dataset)
  • #with_dataset (Sequel::Dataset::PlaceholderLiteralizer)
  • -
  • #with_extend (Sequel::Dataset)
  • #with_extend (Sequel::Dataset::DeprecatedSingletonClassMethods)
  • +
  • #with_extend (Sequel::Dataset)
  • #with_merged_expression (Sequel::SQL::CaseExpression)
  • #with_ordinality (Sequel::SQL::Function)
  • #with_parens (Sequel::SQL::PlaceholderLiteralString)
  • -
  • #with_pk (Sequel::Model::DatasetMethods)
  • #with_pk (Sequel::Model::ClassMethods)
  • -
  • #with_pk! (Sequel::Model::DatasetMethods)
  • +
  • #with_pk (Sequel::Model::DatasetMethods)
  • #with_pk! (Sequel::Model::ClassMethods)
  • +
  • #with_pk! (Sequel::Model::DatasetMethods)
  • #with_quote_identifiers (Sequel::Dataset)
  • #with_recursive (Sequel::Dataset)
  • #with_row_proc (Sequel::Dataset)
  • @@ -1070,9 +1073,9 @@
  • #within_group (Sequel::SQL::Function)
  • #| (Sequel::SQL::Subscript)
  • #| (Sequel::SQL::BooleanExpression)
  • -
  • #~ (Sequel::SQL::OperatorBuilders)
  • -
  • #~ (Sequel::SQL::BooleanMethods)
  • #~ (Sequel::SQL::BitwiseMethods)
  • +
  • #~ (Sequel::SQL::BooleanMethods)
  • +
  • #~ (Sequel::SQL::OperatorBuilders)