Skip to content

Refactor Statements to use explicit keyword arguments#186

Open
teoljungberg wants to merge 7 commits intomasterfrom
opts-to-kwargs
Open

Refactor Statements to use explicit keyword arguments#186
teoljungberg wants to merge 7 commits intomasterfrom
opts-to-kwargs

Conversation

@teoljungberg
Copy link
Owner

@teoljungberg teoljungberg commented Dec 11, 2025

Changes:

  • Use explicit keyword arguments (version:, sql_definition:, ...) over
    (options = {})
  • Add ruby2_keywords markers for proper forwarding
  • Use Hash.ruby2_keywords_hash for revert options

The ruby2_keywords approach ensures keyword arguments are properly
preserved when Fx::CommandRecorder replays migrations via send(*args).

Changes:
- `Statements`: Use explicit keyword arguments `(version:, sql_definition:, ...)`
- `CommandRecorder`: Add `ruby2_keywords` markers for proper forwarding
- CommandRecorder::Arguments: Use Hash.ruby2_keywords_hash for revert options

The `ruby2_keywords` approach ensures keyword arguments are properly
preserved when `CommandRecorder` replays migrations via `send(*args)`.
@teoljungberg teoljungberg marked this pull request as ready for review December 20, 2025 09:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant