Skip to content

Bump sequel from 5.105.0 to 5.106.0 - #1020

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/bundler/sequel-5.106.0
Closed

Bump sequel from 5.105.0 to 5.106.0#1020
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/bundler/sequel-5.106.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 2, 2026

Copy link
Copy Markdown
Contributor

Bumps sequel from 5.105.0 to 5.106.0.

Changelog

Sourced from sequel's changelog.

=== 5.106.0 (2026-07-01)

  • Add Sequel::Constants::ALL to support GROUP BY ALL via group(Sequel::ALL) on PostgreSQL 19+ (jeremyevans)

  • Support :ignore_nulls window function option on PostgreSQL 19+ (jeremyevans)

  • Add Dataset#for_portion_of to support UPDATE/DELETE FOR PORTION OF on PostgreSQL 19+ (jeremyevans)

Commits
  • da33051 Bump version to 5.106.0
  • ff18939 Test for FOR PORTION OF with table alias
  • 16f7ddf Add Sequel::Constants::ALL to support GROUP BY ALL via group(Sequel::ALL) on ...
  • dbd90ff Add example of Model.with_pk to querying documentation
  • 933cf5a Only use more complex approach if for_portion_of is used
  • db78072 Support :ignore_nulls window function option on PostgreSQL 19+
  • 7cc5582 Support UPDATE/DELETE FOR PORTION OF on PostgreSQL 19+
  • See full diff in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [sequel](https://github.com/jeremyevans/sequel) from 5.105.0 to 5.106.0.
- [Changelog](https://github.com/jeremyevans/sequel/blob/master/CHANGELOG)
- [Commits](jeremyevans/sequel@5.105.0...5.106.0)

---
updated-dependencies:
- dependency-name: sequel
  dependency-version: 5.106.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies ruby Pull requests that update Ruby code labels Jul 2, 2026
@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

2 similar comments
@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

gem compare sequel 5.105.0 5.106.0

Compared versions: ["5.105.0", "5.106.0"]
  DIFFERENT version:
    5.105.0: 5.105.0
    5.106.0: 5.106.0
  DIFFERENT files:
    5.105.0->5.106.0:
      * Changed:
            lib/sequel/adapters/shared/postgres.rb +51/-4
            lib/sequel/dataset/sql.rb +1/-0
            lib/sequel/sql.rb +3/-0
            lib/sequel/version.rb +1/-1

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

gem compare sequel 5.105.0 5.106.0

Compared versions: ["5.105.0", "5.106.0"]
  DIFFERENT version:
    5.105.0: 5.105.0
    5.106.0: 5.106.0
  DIFFERENT files:
    5.105.0->5.106.0:
      * Changed:
            lib/sequel/adapters/shared/postgres.rb +51/-4
            lib/sequel/dataset/sql.rb +1/-0
            lib/sequel/sql.rb +3/-0
            lib/sequel/version.rb +1/-1

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

gem compare --diff sequel 5.105.0 5.106.0

Compared versions: ["5.105.0", "5.106.0"]
  DIFFERENT files:
    5.105.0->5.106.0:
      * Changed:
        lib/sequel/adapters/shared/postgres.rb
                --- /tmp/d20260702-1662-x6ocqb/sequel-5.105.0/lib/sequel/adapters/shared/postgres.rb	2026-07-02 02:34:01.640193594 +0000
                +++ /tmp/d20260702-1662-x6ocqb/sequel-5.106.0/lib/sequel/adapters/shared/postgres.rb	2026-07-02 02:34:01.716193962 +0000
                @@ -2135,0 +2136,20 @@
                +      # Set FOR PORTION OF clause for UPDATE and DELETE statements.
                +      # The first argument is the range or multirange column. If two arguments
                +      # are provided, the second argument is an expression with the same
                +      # database type as the first argument. If three arguments are provided,
                +      # the second specifies the inclusive start of the portion to update and the third
                +      # specifies the exclusive end of portion to update. When using the three argument
                +      # form, nil can be provided as the second or third argument to have the start or
                +      # end of the portion be unbounded.  Supported on PostgreSQL 19+.
                +      # Example:
                +      #
                +      #   DB[:t].for_portion_of(:rc, Sequel.function(:int4range, 1, 2)).update(c: 3)
                +      #   # UPDATE t FOR PORTION OF rc (int4range(1, 2)) SET c = 3
                +      #   
                +      #   DB[:t].for_portion_of(:rc, 1, 2).update(c: 3)
                +      #   # UPDATE t FOR PORTION OF rc FROM 1 TO 2 SET c = 3
                +      def for_portion_of(column, range, to=(arg_not_given=true))
                +        range = [range, to].freeze unless arg_not_given
                +        clone(:for_portion_of => [column, range].freeze)
                +      end
                +
                @@ -2638 +2658,2 @@
                -      # Only include the primary table in the main delete clause
                +      # Only include the primary table in the main delete clause.
                +      # Support FOR PORTION OF.
                @@ -2641 +2662 @@
                -        source_list_append(sql, @opts[:from][0..0])
                +        table_for_portion_of_sql_append(sql)
                @@ -2725,0 +2747,26 @@
                +      # Add FOR PORTION OF SQL if the dataset uses it.
                +      def table_for_portion_of_sql_append(sql)
                +        fpo_column, fpo_range = @opts[:for_portion_of]
                +        if fpo_column
                +          table, aliaz = split_alias(@opts[:from].first)
                +          source_list_append(sql, [table])
                +          sql << ' FOR PORTION OF '
                +          literal_append(sql, fpo_column)
                +
                +          if fpo_range.is_a?(Array)
                +            fpo_start, fpo_end = fpo_range
                +            sql << ' FROM '
                +            literal_append(sql, fpo_start)
                +            sql << ' TO '
                +            literal_append(sql, fpo_end)
                +          else
                +            sql << ' ('
                +            literal_append(sql, fpo_range)
                +            sql << ')'
                +          end
                +          as_sql_append(sql, aliaz) if aliaz
                +        else
                +          source_list_append(sql, @opts[:from][0..0])
                +        end
                +      end
                +
                @@ -3015 +3062 @@
                -      # Only include the primary table in the main update clause
                +      # Support FOR PORTION OF.
                @@ -3018 +3065 @@
                -        source_list_append(sql, @opts[:from][0..0])
                +        table_for_portion_of_sql_append(sql)
        lib/sequel/dataset/sql.rb
                --- /tmp/d20260702-1662-x6ocqb/sequel-5.105.0/lib/sequel/dataset/sql.rb	2026-07-02 02:34:01.652193653 +0000
                +++ /tmp/d20260702-1662-x6ocqb/sequel-5.106.0/lib/sequel/dataset/sql.rb	2026-07-02 02:34:01.726194010 +0000
                @@ -564,0 +565 @@
                +        sql << ' IGNORE NULLS' if window.opts[:ignore_nulls]
        lib/sequel/sql.rb
                --- /tmp/d20260702-1662-x6ocqb/sequel-5.105.0/lib/sequel/sql.rb	2026-07-02 02:34:01.703193899 +0000
                +++ /tmp/d20260702-1662-x6ocqb/sequel-5.106.0/lib/sequel/sql.rb	2026-07-02 02:34:01.771194228 +0000
                @@ -1325,0 +1326 @@
                +      ALL = Constant.new(:ALL)
                @@ -1994,0 +1996,2 @@
                +      # :ignore_nulls :: Can be set to :ignore for IGNORE NULLS (supported on PostgreSQL 19+ for
                +      #                  a subset of default window functions)
        lib/sequel/version.rb
                --- /tmp/d20260702-1662-x6ocqb/sequel-5.105.0/lib/sequel/version.rb	2026-07-02 02:34:01.703193899 +0000
                +++ /tmp/d20260702-1662-x6ocqb/sequel-5.106.0/lib/sequel/version.rb	2026-07-02 02:34:01.771194228 +0000
                @@ -9 +9 @@
                -  MINOR = 105
                +  MINOR = 106

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

gem compare --diff sequel 5.105.0 5.106.0

Compared versions: ["5.105.0", "5.106.0"]
  DIFFERENT files:
    5.105.0->5.106.0:
      * Changed:
        lib/sequel/adapters/shared/postgres.rb
                --- /tmp/d20260702-1544-voty4k/sequel-5.105.0/lib/sequel/adapters/shared/postgres.rb	2026-07-02 02:34:10.606123474 +0000
                +++ /tmp/d20260702-1544-voty4k/sequel-5.106.0/lib/sequel/adapters/shared/postgres.rb	2026-07-02 02:34:10.641124028 +0000
                @@ -2135,0 +2136,20 @@
                +      # Set FOR PORTION OF clause for UPDATE and DELETE statements.
                +      # The first argument is the range or multirange column. If two arguments
                +      # are provided, the second argument is an expression with the same
                +      # database type as the first argument. If three arguments are provided,
                +      # the second specifies the inclusive start of the portion to update and the third
                +      # specifies the exclusive end of portion to update. When using the three argument
                +      # form, nil can be provided as the second or third argument to have the start or
                +      # end of the portion be unbounded.  Supported on PostgreSQL 19+.
                +      # Example:
                +      #
                +      #   DB[:t].for_portion_of(:rc, Sequel.function(:int4range, 1, 2)).update(c: 3)
                +      #   # UPDATE t FOR PORTION OF rc (int4range(1, 2)) SET c = 3
                +      #   
                +      #   DB[:t].for_portion_of(:rc, 1, 2).update(c: 3)
                +      #   # UPDATE t FOR PORTION OF rc FROM 1 TO 2 SET c = 3
                +      def for_portion_of(column, range, to=(arg_not_given=true))
                +        range = [range, to].freeze unless arg_not_given
                +        clone(:for_portion_of => [column, range].freeze)
                +      end
                +
                @@ -2638 +2658,2 @@
                -      # Only include the primary table in the main delete clause
                +      # Only include the primary table in the main delete clause.
                +      # Support FOR PORTION OF.
                @@ -2641 +2662 @@
                -        source_list_append(sql, @opts[:from][0..0])
                +        table_for_portion_of_sql_append(sql)
                @@ -2725,0 +2747,26 @@
                +      # Add FOR PORTION OF SQL if the dataset uses it.
                +      def table_for_portion_of_sql_append(sql)
                +        fpo_column, fpo_range = @opts[:for_portion_of]
                +        if fpo_column
                +          table, aliaz = split_alias(@opts[:from].first)
                +          source_list_append(sql, [table])
                +          sql << ' FOR PORTION OF '
                +          literal_append(sql, fpo_column)
                +
                +          if fpo_range.is_a?(Array)
                +            fpo_start, fpo_end = fpo_range
                +            sql << ' FROM '
                +            literal_append(sql, fpo_start)
                +            sql << ' TO '
                +            literal_append(sql, fpo_end)
                +          else
                +            sql << ' ('
                +            literal_append(sql, fpo_range)
                +            sql << ')'
                +          end
                +          as_sql_append(sql, aliaz) if aliaz
                +        else
                +          source_list_append(sql, @opts[:from][0..0])
                +        end
                +      end
                +
                @@ -3015 +3062 @@
                -      # Only include the primary table in the main update clause
                +      # Support FOR PORTION OF.
                @@ -3018 +3065 @@
                -        source_list_append(sql, @opts[:from][0..0])
                +        table_for_portion_of_sql_append(sql)
        lib/sequel/dataset/sql.rb
                --- /tmp/d20260702-1544-voty4k/sequel-5.105.0/lib/sequel/dataset/sql.rb	2026-07-02 02:34:10.612123569 +0000
                +++ /tmp/d20260702-1544-voty4k/sequel-5.106.0/lib/sequel/dataset/sql.rb	2026-07-02 02:34:10.648124138 +0000
                @@ -564,0 +565 @@
                +        sql << ' IGNORE NULLS' if window.opts[:ignore_nulls]
        lib/sequel/sql.rb
                --- /tmp/d20260702-1544-voty4k/sequel-5.105.0/lib/sequel/sql.rb	2026-07-02 02:34:10.635123933 +0000
                +++ /tmp/d20260702-1544-voty4k/sequel-5.106.0/lib/sequel/sql.rb	2026-07-02 02:34:10.671124502 +0000
                @@ -1325,0 +1326 @@
                +      ALL = Constant.new(:ALL)
                @@ -1994,0 +1996,2 @@
                +      # :ignore_nulls :: Can be set to :ignore for IGNORE NULLS (supported on PostgreSQL 19+ for
                +      #                  a subset of default window functions)
        lib/sequel/version.rb
                --- /tmp/d20260702-1544-voty4k/sequel-5.105.0/lib/sequel/version.rb	2026-07-02 02:34:10.635123933 +0000
                +++ /tmp/d20260702-1544-voty4k/sequel-5.106.0/lib/sequel/version.rb	2026-07-02 02:34:10.671124502 +0000
                @@ -9 +9 @@
                -  MINOR = 105
                +  MINOR = 106

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

gem compare sequel 5.105.0 5.106.0

Compared versions: ["5.105.0", "5.106.0"]
  DIFFERENT version:
    5.105.0: 5.105.0
    5.106.0: 5.106.0
  DIFFERENT files:
    5.105.0->5.106.0:
      * Changed:
            lib/sequel/adapters/shared/postgres.rb +51/-4
            lib/sequel/dataset/sql.rb +1/-0
            lib/sequel/sql.rb +3/-0
            lib/sequel/version.rb +1/-1

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

gem compare sequel 5.105.0 5.106.0

Compared versions: ["5.105.0", "5.106.0"]
  DIFFERENT version:
    5.105.0: 5.105.0
    5.106.0: 5.106.0
  DIFFERENT files:
    5.105.0->5.106.0:
      * Changed:
            lib/sequel/adapters/shared/postgres.rb +51/-4
            lib/sequel/dataset/sql.rb +1/-0
            lib/sequel/sql.rb +3/-0
            lib/sequel/version.rb +1/-1

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

gem compare --diff sequel 5.105.0 5.106.0

Compared versions: ["5.105.0", "5.106.0"]
  DIFFERENT files:
    5.105.0->5.106.0:
      * Changed:
        lib/sequel/adapters/shared/postgres.rb
                --- /tmp/d20260702-1555-y1gm1z/sequel-5.105.0/lib/sequel/adapters/shared/postgres.rb	2026-07-02 02:34:25.703770957 +0000
                +++ /tmp/d20260702-1555-y1gm1z/sequel-5.106.0/lib/sequel/adapters/shared/postgres.rb	2026-07-02 02:34:25.739771362 +0000
                @@ -2135,0 +2136,20 @@
                +      # Set FOR PORTION OF clause for UPDATE and DELETE statements.
                +      # The first argument is the range or multirange column. If two arguments
                +      # are provided, the second argument is an expression with the same
                +      # database type as the first argument. If three arguments are provided,
                +      # the second specifies the inclusive start of the portion to update and the third
                +      # specifies the exclusive end of portion to update. When using the three argument
                +      # form, nil can be provided as the second or third argument to have the start or
                +      # end of the portion be unbounded.  Supported on PostgreSQL 19+.
                +      # Example:
                +      #
                +      #   DB[:t].for_portion_of(:rc, Sequel.function(:int4range, 1, 2)).update(c: 3)
                +      #   # UPDATE t FOR PORTION OF rc (int4range(1, 2)) SET c = 3
                +      #   
                +      #   DB[:t].for_portion_of(:rc, 1, 2).update(c: 3)
                +      #   # UPDATE t FOR PORTION OF rc FROM 1 TO 2 SET c = 3
                +      def for_portion_of(column, range, to=(arg_not_given=true))
                +        range = [range, to].freeze unless arg_not_given
                +        clone(:for_portion_of => [column, range].freeze)
                +      end
                +
                @@ -2638 +2658,2 @@
                -      # Only include the primary table in the main delete clause
                +      # Only include the primary table in the main delete clause.
                +      # Support FOR PORTION OF.
                @@ -2641 +2662 @@
                -        source_list_append(sql, @opts[:from][0..0])
                +        table_for_portion_of_sql_append(sql)
                @@ -2725,0 +2747,26 @@
                +      # Add FOR PORTION OF SQL if the dataset uses it.
                +      def table_for_portion_of_sql_append(sql)
                +        fpo_column, fpo_range = @opts[:for_portion_of]
                +        if fpo_column
                +          table, aliaz = split_alias(@opts[:from].first)
                +          source_list_append(sql, [table])
                +          sql << ' FOR PORTION OF '
                +          literal_append(sql, fpo_column)
                +
                +          if fpo_range.is_a?(Array)
                +            fpo_start, fpo_end = fpo_range
                +            sql << ' FROM '
                +            literal_append(sql, fpo_start)
                +            sql << ' TO '
                +            literal_append(sql, fpo_end)
                +          else
                +            sql << ' ('
                +            literal_append(sql, fpo_range)
                +            sql << ')'
                +          end
                +          as_sql_append(sql, aliaz) if aliaz
                +        else
                +          source_list_append(sql, @opts[:from][0..0])
                +        end
                +      end
                +
                @@ -3015 +3062 @@
                -      # Only include the primary table in the main update clause
                +      # Support FOR PORTION OF.
                @@ -3018 +3065 @@
                -        source_list_append(sql, @opts[:from][0..0])
                +        table_for_portion_of_sql_append(sql)
        lib/sequel/dataset/sql.rb
                --- /tmp/d20260702-1555-y1gm1z/sequel-5.105.0/lib/sequel/dataset/sql.rb	2026-07-02 02:34:25.709771025 +0000
                +++ /tmp/d20260702-1555-y1gm1z/sequel-5.106.0/lib/sequel/dataset/sql.rb	2026-07-02 02:34:25.745771430 +0000
                @@ -564,0 +565 @@
                +        sql << ' IGNORE NULLS' if window.opts[:ignore_nulls]
        lib/sequel/sql.rb
                --- /tmp/d20260702-1555-y1gm1z/sequel-5.105.0/lib/sequel/sql.rb	2026-07-02 02:34:25.732771284 +0000
                +++ /tmp/d20260702-1555-y1gm1z/sequel-5.106.0/lib/sequel/sql.rb	2026-07-02 02:34:25.769771700 +0000
                @@ -1325,0 +1326 @@
                +      ALL = Constant.new(:ALL)
                @@ -1994,0 +1996,2 @@
                +      # :ignore_nulls :: Can be set to :ignore for IGNORE NULLS (supported on PostgreSQL 19+ for
                +      #                  a subset of default window functions)
        lib/sequel/version.rb
                --- /tmp/d20260702-1555-y1gm1z/sequel-5.105.0/lib/sequel/version.rb	2026-07-02 02:34:25.733771295 +0000
                +++ /tmp/d20260702-1555-y1gm1z/sequel-5.106.0/lib/sequel/version.rb	2026-07-02 02:34:25.769771700 +0000
                @@ -9 +9 @@
                -  MINOR = 105
                +  MINOR = 106

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

gem compare sequel 5.105.0 5.106.0

Compared versions: ["5.105.0", "5.106.0"]
  DIFFERENT version:
    5.105.0: 5.105.0
    5.106.0: 5.106.0
  DIFFERENT files:
    5.105.0->5.106.0:
      * Changed:
            lib/sequel/adapters/shared/postgres.rb +51/-4
            lib/sequel/dataset/sql.rb +1/-0
            lib/sequel/sql.rb +3/-0
            lib/sequel/version.rb +1/-1

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

gem compare --diff sequel 5.105.0 5.106.0

Compared versions: ["5.105.0", "5.106.0"]
  DIFFERENT files:
    5.105.0->5.106.0:
      * Changed:
        lib/sequel/adapters/shared/postgres.rb
                --- /tmp/d20260702-1576-vlccpx/sequel-5.105.0/lib/sequel/adapters/shared/postgres.rb	2026-07-02 02:34:37.115238635 +0000
                +++ /tmp/d20260702-1576-vlccpx/sequel-5.106.0/lib/sequel/adapters/shared/postgres.rb	2026-07-02 02:34:37.193238163 +0000
                @@ -2135,0 +2136,20 @@
                +      # Set FOR PORTION OF clause for UPDATE and DELETE statements.
                +      # The first argument is the range or multirange column. If two arguments
                +      # are provided, the second argument is an expression with the same
                +      # database type as the first argument. If three arguments are provided,
                +      # the second specifies the inclusive start of the portion to update and the third
                +      # specifies the exclusive end of portion to update. When using the three argument
                +      # form, nil can be provided as the second or third argument to have the start or
                +      # end of the portion be unbounded.  Supported on PostgreSQL 19+.
                +      # Example:
                +      #
                +      #   DB[:t].for_portion_of(:rc, Sequel.function(:int4range, 1, 2)).update(c: 3)
                +      #   # UPDATE t FOR PORTION OF rc (int4range(1, 2)) SET c = 3
                +      #   
                +      #   DB[:t].for_portion_of(:rc, 1, 2).update(c: 3)
                +      #   # UPDATE t FOR PORTION OF rc FROM 1 TO 2 SET c = 3
                +      def for_portion_of(column, range, to=(arg_not_given=true))
                +        range = [range, to].freeze unless arg_not_given
                +        clone(:for_portion_of => [column, range].freeze)
                +      end
                +
                @@ -2638 +2658,2 @@
                -      # Only include the primary table in the main delete clause
                +      # Only include the primary table in the main delete clause.
                +      # Support FOR PORTION OF.
                @@ -2641 +2662 @@
                -        source_list_append(sql, @opts[:from][0..0])
                +        table_for_portion_of_sql_append(sql)
                @@ -2725,0 +2747,26 @@
                +      # Add FOR PORTION OF SQL if the dataset uses it.
                +      def table_for_portion_of_sql_append(sql)
                +        fpo_column, fpo_range = @opts[:for_portion_of]
                +        if fpo_column
                +          table, aliaz = split_alias(@opts[:from].first)
                +          source_list_append(sql, [table])
                +          sql << ' FOR PORTION OF '
                +          literal_append(sql, fpo_column)
                +
                +          if fpo_range.is_a?(Array)
                +            fpo_start, fpo_end = fpo_range
                +            sql << ' FROM '
                +            literal_append(sql, fpo_start)
                +            sql << ' TO '
                +            literal_append(sql, fpo_end)
                +          else
                +            sql << ' ('
                +            literal_append(sql, fpo_range)
                +            sql << ')'
                +          end
                +          as_sql_append(sql, aliaz) if aliaz
                +        else
                +          source_list_append(sql, @opts[:from][0..0])
                +        end
                +      end
                +
                @@ -3015 +3062 @@
                -      # Only include the primary table in the main update clause
                +      # Support FOR PORTION OF.
                @@ -3018 +3065 @@
                -        source_list_append(sql, @opts[:from][0..0])
                +        table_for_portion_of_sql_append(sql)
        lib/sequel/dataset/sql.rb
                --- /tmp/d20260702-1576-vlccpx/sequel-5.105.0/lib/sequel/dataset/sql.rb	2026-07-02 02:34:37.131238539 +0000
                +++ /tmp/d20260702-1576-vlccpx/sequel-5.106.0/lib/sequel/dataset/sql.rb	2026-07-02 02:34:37.208238073 +0000
                @@ -564,0 +565 @@
                +        sql << ' IGNORE NULLS' if window.opts[:ignore_nulls]
        lib/sequel/sql.rb
                --- /tmp/d20260702-1576-vlccpx/sequel-5.105.0/lib/sequel/sql.rb	2026-07-02 02:34:37.177238260 +0000
                +++ /tmp/d20260702-1576-vlccpx/sequel-5.106.0/lib/sequel/sql.rb	2026-07-02 02:34:37.286237601 +0000
                @@ -1325,0 +1326 @@
                +      ALL = Constant.new(:ALL)
                @@ -1994,0 +1996,2 @@
                +      # :ignore_nulls :: Can be set to :ignore for IGNORE NULLS (supported on PostgreSQL 19+ for
                +      #                  a subset of default window functions)
        lib/sequel/version.rb
                --- /tmp/d20260702-1576-vlccpx/sequel-5.105.0/lib/sequel/version.rb	2026-07-02 02:34:37.178238254 +0000
                +++ /tmp/d20260702-1576-vlccpx/sequel-5.106.0/lib/sequel/version.rb	2026-07-02 02:34:37.287237595 +0000
                @@ -9 +9 @@
                -  MINOR = 105
                +  MINOR = 106

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

gem compare --diff sequel 5.105.0 5.106.0

Compared versions: ["5.105.0", "5.106.0"]
  DIFFERENT files:
    5.105.0->5.106.0:
      * Changed:
        lib/sequel/adapters/shared/postgres.rb
                --- /tmp/d20260702-1566-eygmse/sequel-5.105.0/lib/sequel/adapters/shared/postgres.rb	2026-07-02 02:34:46.253660576 +0000
                +++ /tmp/d20260702-1566-eygmse/sequel-5.106.0/lib/sequel/adapters/shared/postgres.rb	2026-07-02 02:34:46.292661217 +0000
                @@ -2135,0 +2136,20 @@
                +      # Set FOR PORTION OF clause for UPDATE and DELETE statements.
                +      # The first argument is the range or multirange column. If two arguments
                +      # are provided, the second argument is an expression with the same
                +      # database type as the first argument. If three arguments are provided,
                +      # the second specifies the inclusive start of the portion to update and the third
                +      # specifies the exclusive end of portion to update. When using the three argument
                +      # form, nil can be provided as the second or third argument to have the start or
                +      # end of the portion be unbounded.  Supported on PostgreSQL 19+.
                +      # Example:
                +      #
                +      #   DB[:t].for_portion_of(:rc, Sequel.function(:int4range, 1, 2)).update(c: 3)
                +      #   # UPDATE t FOR PORTION OF rc (int4range(1, 2)) SET c = 3
                +      #   
                +      #   DB[:t].for_portion_of(:rc, 1, 2).update(c: 3)
                +      #   # UPDATE t FOR PORTION OF rc FROM 1 TO 2 SET c = 3
                +      def for_portion_of(column, range, to=(arg_not_given=true))
                +        range = [range, to].freeze unless arg_not_given
                +        clone(:for_portion_of => [column, range].freeze)
                +      end
                +
                @@ -2638 +2658,2 @@
                -      # Only include the primary table in the main delete clause
                +      # Only include the primary table in the main delete clause.
                +      # Support FOR PORTION OF.
                @@ -2641 +2662 @@
                -        source_list_append(sql, @opts[:from][0..0])
                +        table_for_portion_of_sql_append(sql)
                @@ -2725,0 +2747,26 @@
                +      # Add FOR PORTION OF SQL if the dataset uses it.
                +      def table_for_portion_of_sql_append(sql)
                +        fpo_column, fpo_range = @opts[:for_portion_of]
                +        if fpo_column
                +          table, aliaz = split_alias(@opts[:from].first)
                +          source_list_append(sql, [table])
                +          sql << ' FOR PORTION OF '
                +          literal_append(sql, fpo_column)
                +
                +          if fpo_range.is_a?(Array)
                +            fpo_start, fpo_end = fpo_range
                +            sql << ' FROM '
                +            literal_append(sql, fpo_start)
                +            sql << ' TO '
                +            literal_append(sql, fpo_end)
                +          else
                +            sql << ' ('
                +            literal_append(sql, fpo_range)
                +            sql << ')'
                +          end
                +          as_sql_append(sql, aliaz) if aliaz
                +        else
                +          source_list_append(sql, @opts[:from][0..0])
                +        end
                +      end
                +
                @@ -3015 +3062 @@
                -      # Only include the primary table in the main update clause
                +      # Support FOR PORTION OF.
                @@ -3018 +3065 @@
                -        source_list_append(sql, @opts[:from][0..0])
                +        table_for_portion_of_sql_append(sql)
        lib/sequel/dataset/sql.rb
                --- /tmp/d20260702-1566-eygmse/sequel-5.105.0/lib/sequel/dataset/sql.rb	2026-07-02 02:34:46.259660675 +0000
                +++ /tmp/d20260702-1566-eygmse/sequel-5.106.0/lib/sequel/dataset/sql.rb	2026-07-02 02:34:46.298661316 +0000
                @@ -564,0 +565 @@
                +        sql << ' IGNORE NULLS' if window.opts[:ignore_nulls]
        lib/sequel/sql.rb
                --- /tmp/d20260702-1566-eygmse/sequel-5.105.0/lib/sequel/sql.rb	2026-07-02 02:34:46.286661119 +0000
                +++ /tmp/d20260702-1566-eygmse/sequel-5.106.0/lib/sequel/sql.rb	2026-07-02 02:34:46.323661727 +0000
                @@ -1325,0 +1326 @@
                +      ALL = Constant.new(:ALL)
                @@ -1994,0 +1996,2 @@
                +      # :ignore_nulls :: Can be set to :ignore for IGNORE NULLS (supported on PostgreSQL 19+ for
                +      #                  a subset of default window functions)
        lib/sequel/version.rb
                --- /tmp/d20260702-1566-eygmse/sequel-5.105.0/lib/sequel/version.rb	2026-07-02 02:34:46.286661119 +0000
                +++ /tmp/d20260702-1566-eygmse/sequel-5.106.0/lib/sequel/version.rb	2026-07-02 02:34:46.324661744 +0000
                @@ -9 +9 @@
                -  MINOR = 105
                +  MINOR = 106

@dependabot @github

dependabot Bot commented on behalf of github Aug 5, 2026

Copy link
Copy Markdown
Contributor Author

Superseded by #1030.

@dependabot dependabot Bot closed this Aug 5, 2026
@dependabot
dependabot Bot deleted the dependabot/bundler/sequel-5.106.0 branch August 5, 2026 02:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies ruby Pull requests that update Ruby code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants