Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dolt 1.30.5 #158937

Merged
merged 2 commits into from
Jan 3, 2024
Merged

dolt 1.30.5 #158937

merged 2 commits into from
Jan 3, 2024

Conversation

Porkepix
Copy link
Contributor

@Porkepix Porkepix commented Jan 3, 2024

Created by brew bump


Created with brew bump-formula-pr.

release notes
# Merged PRs

dolt

  • 7241: Mark rebase_order as the primary key for the dolt_rebase system table
  • 7233: Delete branch message as a push result
    Currently every push results in the message "[new branch] ..." which is misleading. Unfortunately fixing this for all updates is way harder than I want to dig into at the moment, so I'm going to make the only case we can detect easily (delete) print a better message.
  • 7183: Feature: Interactive Rebase
    Adds support for an interactive rebase workflow with Dolt. This allows users to edit their commit history, including rewording commit messages, reordering commits, dropping commits, and squashing multiple commits together. At the end of an interactive rebase, the current branch points to a new commit history created by executing the rebase plan the user specified.
    -- we start on a dev branch named myDevBranch
    select commit_hash, message from dolt_log;
    +----------------------------------+----------------------------+
    | commit_hash                      | message                    |
    +----------------------------------+----------------------------+
    | fjq1sd7t8nbqn0ddvcor1i455i0i5ken | inserting row 3            |
    | v8g3ic9j4euf68t7tfnj7je8e1j6vt9m | inserting row 2            |
    | q909vda7hc7ithb2fcgcfghuvt8epsrj | inserting row 1            |
    | 0djr0smhr9ucdjivsnabu7ls419p0f37 | creating table t           |
    | d0lte08fpl5hpcmqj90d6jqrb6i17lfi | Іnitiаlіzе dаtа repоsіtory |
    +----------------------------------+----------------------------+
    -- the interactive rebase is started by calling the dolt_rebase stored procedure
    call dolt_rebase('-i', 'main');
    -- once an interactive rebase is started, the session is placed on a temporary working
    -- branch and a dolt_rebase table is populated with the default rebase plan
    select * from dolt_rebase;
    +--------------+--------+----------------------------------+-----------------+
    | rebase_order | action | commit_hash                      | commit_message  |
    +--------------+--------+----------------------------------+-----------------+
    | 1.00         | pick   | q909vda7hc7ithb2fcgcfghuvt8epsrj | inserting row 1 |
    | 2.00         | pick   | v8g3ic9j4euf68t7tfnj7je8e1j6vt9m | inserting row 2 |
    | 3.00         | pick   | fjq1sd7t8nbqn0ddvcor1i455i0i5ken | inserting row 3 |
    +--------------+--------+----------------------------------+-----------------+
    -- users can adjust the plan to reorder commits, drop commits, change commit messages or squash commits together
    update dolt_rebase set action='reword', commit_message='inserting rows 1, 2, 3' where rebase_order=1;
    update dolt_rebase set action='fixup' where rebase_order > 1;
    -- execute the adjusted plan
    call dolt_rebase('--continue');
    -- see that the Dolt commit history has been rewritten
    select commit_hash, message from dolt_log;
    +----------------------------------+----------------------------+
    | commit_hash                      | message                    |
    +----------------------------------+----------------------------+
    | 2mggja4n903gdo5fmbvcbj9vsvgdjd8q | inserting rows 1, 2, 3     |
    | 0djr0smhr9ucdjivsnabu7ls419p0f37 | creating table t           |
    | d0lte08fpl5hpcmqj90d6jqrb6i17lfi | Іnitiаlіzе dаtа repоsіtory |
    +----------------------------------+----------------------------+
    Resolves Support dolt rebase dolthub/dolt#3467

go-mysql-server

  • 2231: fix precision for utc_timestamp
    The UTC_TIMESTAMP() function should take in an argument and round the milliseconds. For now, we stick to always returning the full precision (6 places)
  • 2230: guard ctx and session with nil
    fixes Panic when Using INNER JOIN dolthub/dolt#7235
  • 2228: fix type conversion in Between expressions
    Replace the logic in Between.Eval() with a logically equivalent AND statement to reuse the type conversion logic in comparison.go
    fixes Unexpected Results when Using BETWEEN and LEFT JOIN dolthub/dolt#7229
  • 2227: Add JsonIter class for iterating over the key-value pairs of a JSON object.
    This is the GMS side of automating JSON merging in Dolt: just some type aliases and a simple iterator for getting the keys in a JSON object in a deterministic order.
    It's worth pointing out that currently Dolt stores JSON in a normalized form by sorting keys by length, but the iterator here uses a simple lexicographic order instead. This difference doesn't really matter at the moment because we unmarshall the entire object into a go map no matter what. But Dolt needs to be aware of the ordering used in order to correctly compute three-way diffs.
  • 2226: Error on NOW() eval with nil context
  • 2218: implement NOW() siblings
    This PR has our behavior surrounding NOW() functions more closely match MySQL.
    Changes:
  • 2214: Fix wrongly written 'aribtrary' -> 'arbitrary'
    Fix wrongly written word 'aribtrary' -> 'arbitrary'

vitess

  • 297: Fixing the version keyword to not require identifier quotes
    The version keyword still required identifier quoting in some usages, such as SELECT * FROM base.version;. See Unable to query tables named version in another database without escaping dolthub/dolt#7237 for more details.
    This change moves the version keyword into the main list of non-reserved keywords. There was one conflict from use of the version keyword in the function_call_keyword rule, but it turns out that use of version there is not required. We have an existing test for using the version() function, so I didn't add a new one.
  • 296: refactoring default and on update expressions
    This PR changes the grammar to more closely match MySQL's behavior, specifically around the NOW() function and its synonyms.
    Changes:
    • Throw syntax errors for ON UPDATE expressions against functinos that aren't NOW() or a synonym.
    • Only accept integer for argument to NOW() and synonyms; syntax error for anything else
    • Simplified grammar rules
    • Removed CurTimeFuncExpr from AST in favor of plain FuncExpr
      Companion PR: implement NOW() siblings dolthub/go-mysql-server#2218
  • 295: Allow inline column check constraint definitions to appear in any order
    Previously, an inline column check constraint could only appear as the very last option for a column definition. This change allows it to appear in other positions in the column definition. For example, this query now works:
    create table t123 (c1 varchar(5) check (c1 in ('v1', 'v2')) NOT NULL);
    Resolves: Error parsing CREATE TABLE with both CHECK and NOT NULL dolthub/dolt#7195

Closed Issues

  • 6058: current_timestamp() and now() do not return the same values
  • 7129: support current_timestamp synonyms
  • 7235: Panic when Using INNER JOIN
  • 7229: Unexpected Results when Using BETWEEN and LEFT JOIN
  • 3467: Support dolt rebase

@github-actions github-actions bot added go Go use is a significant feature of the PR or issue bump-formula-pr PR was created using `brew bump-formula-pr` labels Jan 3, 2024
Copy link
Contributor

github-actions bot commented Jan 3, 2024

🤖 An automated task has requested bottles to be published to this PR.

@github-actions github-actions bot added the CI-published-bottle-commits The commits for the built bottles have been pushed to the PR branch. label Jan 3, 2024
@BrewTestBot BrewTestBot enabled auto-merge January 3, 2024 23:42
@BrewTestBot BrewTestBot added this pull request to the merge queue Jan 3, 2024
Merged via the queue into Homebrew:master with commit ec377a1 Jan 3, 2024
12 checks passed
@github-actions github-actions bot added the outdated PR was locked due to age label Feb 3, 2024
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Feb 3, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bump-formula-pr PR was created using `brew bump-formula-pr` CI-published-bottle-commits The commits for the built bottles have been pushed to the PR branch. go Go use is a significant feature of the PR or issue outdated PR was locked due to age
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants