refactor!: breaking config changes for 0.2.0-rc.2#48
Merged
Conversation
Rename the `autosuggestion` field to `auto_suggestions` for consistency with the `auto_match` field naming convention. BREAKING CHANGE: `editor.autosuggestion` config key renamed to `editor.auto_suggestions` Co-Authored-By: Claude Opus 4.5 <[email protected]>
Shorten the completion config field name for better readability. BREAKING CHANGE: `completion.function_paren_check_limit` config key renamed to `completion.auto_paren_limit` Co-Authored-By: Claude Opus 4.5 <[email protected]>
Replace the free-form string field with a proper enum (`Emacs` | `Vi`) for type-safe mode matching and better JSON Schema output. BREAKING CHANGE: `editor.mode` now only accepts "emacs" or "vi" (previously accepted any string with "vim" alias) Co-Authored-By: Claude Opus 4.5 <[email protected]>
Add a color_prop! macro that generates proper oneOf schema for Color
values (named string enum, { Fixed: N }, { Rgb: [r,g,b] }) and use it
for all color properties in ColorsConfig and SpinnerConfig schemas.
Co-Authored-By: Claude Opus 4.5 <[email protected]>
Update version, CHANGELOG, documentation, and schema artifact to reflect the breaking config changes in this release. Co-Authored-By: Claude Opus 4.5 <[email protected]>
- Add #[serde(alias = "vim")] to EditorMode::Vi for backward compat - Restore "default": "Cyan" for SpinnerConfig color in JSON Schema - Add detailed frames description with examples in SpinnerConfig schema - Update CHANGELOG to note "vim" alias is still accepted - Remove unused color_prop re-export from colors.rs Co-Authored-By: Claude Opus 4.5 <[email protected]>
Merge the migration guide from [0.2.0-beta.1] into [Unreleased] and update it to include all breaking config changes (autosuggestion, function_paren_check_limit, reprex section reorg) with a clear before/after comparison table. Co-Authored-By: Claude Opus 4.5 <[email protected]>
Add a `default` variant to the color_prop! macro and re-export it for use in experimental.rs, eliminating the duplicated color oneOf schema definition in SpinnerConfigSchema. Co-Authored-By: Claude Opus 4.5 <[email protected]>
Replace the duplicated oneOf definition across two macro arms with a single make_color_schema() helper function. The macro now delegates to the function, keeping the color variant list in one place. Co-Authored-By: Claude Opus 4.5 <[email protected]>
Remove #[serde(alias = "vim")] from EditorMode::Vi to make a clean breaking change consistent with the other renames. Also fix rustfmt formatting in color_prop! macro. Co-Authored-By: Claude Opus 4.5 <[email protected]>
Add a row to the migration table for the editor.mode value change from "vim" to "vi", so users scanning the guide won't miss it. Co-Authored-By: Claude Opus 4.5 <[email protected]>
There was a problem hiding this comment.
Pull request overview
This PR introduces breaking configuration changes for the 0.2.0-rc.2 release, focusing on naming consistency and type safety improvements.
Changes:
- Renamed
editor.autosuggestion→editor.auto_suggestionsfor consistency withauto_match - Renamed
completion.function_paren_check_limit→completion.auto_paren_limitfor clarity - Changed
editor.modefrom aStringto a typedEditorModeenum that only accepts"emacs"or"vi" - Enhanced JSON Schema for color properties with proper
oneOftyping supporting named strings,{ Fixed: N }, and{ Rgb: [r, g, b] }formats - Bumped version from 0.2.0-rc.1 to 0.2.0-rc.2 across all workspace crates
Reviewed changes
Copilot reviewed 20 out of 21 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
Cargo.toml |
Version bump to 0.2.0-rc.2 |
Cargo.lock |
Updated lockfile with new version |
CHANGELOG.md |
Added migration guide for breaking config changes |
README.md |
Updated example config with new field name |
docs/configuration.md |
Updated documentation with new field name |
crates/arf-console/src/config/editor.rs |
Introduced EditorMode enum, renamed autosuggestion → auto_suggestions |
crates/arf-console/src/config/mod.rs |
Exported EditorMode, updated tests to use enum |
crates/arf-console/src/config/completion.rs |
Renamed function_paren_check_limit → auto_paren_limit |
crates/arf-console/src/config/colors.rs |
Added color_prop! macro for consistent color schema generation |
crates/arf-console/src/config/experimental.rs |
Updated spinner config schema to use color macro |
crates/arf-console/src/repl/mod.rs |
Updated to use EditorMode enum instead of string matching |
crates/arf-console/src/repl/banner.rs |
Updated test to use EditorMode::Vi enum variant |
crates/arf-console/src/completion/completer.rs |
Updated parameter names to use auto_paren_limit |
artifacts/arf.schema.json |
Regenerated JSON schema with new types and field names |
crates/arf-console/src/config/snapshots/*.snap |
Updated schema and config snapshots |
crates/arf-console/src/repl/snapshots/*.snap |
Updated banner snapshots with new version |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
editor.autosuggestion→editor.auto_suggestionsfor naming consistency withauto_matchcompletion.function_paren_check_limit→completion.auto_paren_limiteditor.modefromStringto typedEditorModeenum accepting only"emacs"or"vi"oneOftyping (named string,{ Fixed: N },{ Rgb: [r, g, b] })0.2.0-rc.2Test plan
cargo buildcompilescargo test -p arf-console— all 538 tests passcargo clippy -p arf-console -- -D warnings— no warningscargo fmt --check— cleanartifacts/arf.schema.jsonregenerated and verified🤖 Generated with Claude Code