8000 refactor database drivers by achristmascarl · Pull Request #169 · achristmascarl/rainfrog · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
8000

refactor database drivers #169

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

Merged
merged 12 commits into from
Apr 14, 2025
Merged

refactor database drivers #169

merged 12 commits into from
Apr 14, 2025

Conversation

achristmascarl
Copy link
Owner
@achristmascarl achristmascarl commented Apr 14, 2025

refactors db drivers to remove sqlx references from everywhere except the drivers themselves. should make it possible to add non sqlx drivers in the near future.

  • refactor db driver, port postgres
  • fix alt enter
  • fix transactions
  • database trait comments
  • format using stable
  • port sqlite, fix async_trait
  • fix mysql preview syntax
  • port sqlite
  • fix query timer

Important

Refactor database drivers to isolate sqlx references, introduce Database trait, and update task handling logic.

  • Database Refactoring:
    • Introduced Database trait in database/mod.rs to abstract database operations.
    • Refactored MySQL, PostgreSQL, and SQLite drivers to implement Database trait.
    • Removed sqlx references from non-driver code.
  • Task Management:
    • Replaced DbTask enum with DbTaskResult in database/mod.rs.
    • Updated task handling logic in app.rs to use DbTaskResult.
  • Driver Initialization:
    • Added init() method to Database trait for connection setup.
    • Updated main.rs to initialize drivers using init().
  • Miscellaneous:
    • Changed Rust toolchain to stable in ci.yml.
    • Removed .markdownlint.json and updated .rustfmt.toml.
    • Renamed HistoryToEditor to QueryToEditor in action.rs and other files.
    • Fixed various typos and improved code formatting.

This description was created by Ellipsis for 7e6da08. It will automatically update as commits are pushed.

Copy link
@ellipsis-dev ellipsis-dev bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 Looks good to me! Reviewed everything up to 636214e in 3 minutes and 25 seconds

More details
  • Looked at 4646 lines of code in 28 files
  • Skipped 0 files when reviewing.
  • Skipped posting 32 drafted comments based on config settings.
1. src/popups/confirm_export.rs:31
  • Draft comment:
    The key-match block is clear. Consider adding brief inline comments explaining why only 'Y' and 'N' (or Esc) are handled so that new contributors understand that other keys do nothing.
  • Reason this comment was not posted:
    Confidence changes required: 50% <= threshold 50%
    None
2. src/popups/confirm_query.rs:33
  • Draft comment:
    Returning SetDataTable(None, None) for Esc in the confirm query popup cancels the query. Consider clarifying via a comment why this behavior is chosen.
  • Reason this comment was not posted:
    Confidence changes required: 50% <= threshold 50%
    None
3. src/popups/confirm_tx.rs:40
  • Draft comment:
    In get_cta_text, the code clones self.statement_type. Consider borrowing the statement instead to avoid unnecessary cloning, for improved performance.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50%
    None
4. src/popups/name_favorite.rs:36
  • Draft comment:
    The allowed characters check filters out all ASCII whitespace and punctuation except '_' and '-'. Consider adding a comment explaining the rationale or making the allowed set customizable.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
5. src/vim.rs:121
  • Draft comment:
    The transition logic in the Vim state is quite extensive. Consider refactoring some of the complex match arms into helper functions to improve readability and maintainability.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
6. src/popups/exporting.rs:32
  • Draft comment:
    The exporting popup currently returns an empty actions text. If this is intentional (non-interactive), add a comment to clarify that it is used solely for display purposes.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50%
    None
7. src/popups/mod.rs:20
  • Draft comment:
    The PopUpPayload::SetDataTable variant now uses Option<Result<Rows>> instead of a custom DbError. This simplifies error handling; consider updating documentation and tests accordingly.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50%
    None
8. src/cli.rs:60
  • Draft comment:
    Good use of enum aliases and parsing in Driver. Consider adding a comment or docstring on why you chose to strictly enforce lowercase during parsing.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50%
    The comment is asking for an explanation or documentation on a specific implementation choice. It doesn't directly suggest a code change or identify a potential issue. It seems to be more about understanding the author's intention, which violates the rules.
9. src/app.rs:178
  • Draft comment:
    Removal of generic DB types simplifies code. Verify that all operations (e.g., query task polling) are now driver-agnostic, and ensure that unwraps (e.g., on pool clones) are safe because init() should always run first.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50%
    The comment is asking the PR author to verify and ensure certain behaviors, which violates the rules against asking for confirmation or ensuring behavior. It does not provide a specific code suggestion or ask for a specific test to be written.
10. src/components/data.rs:186
  • Draft comment:
    In set_data_state, multiple conditional branches determine state. Although logical, consider adding inline comments to explain the decision for switching to RowsAffected vs. StatementCompleted to improve maintainability.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
11. src/components/editor.rs:70
  • Draft comment:
    The transition_vim_state function uses pattern matching on special keys. Ensure that any future new key mappings are properly tested so that the Vim emulation stays close to expected behavior.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50%
    This comment is asking the PR author to ensure future key mappings are tested, which is a form of asking them to ensure behavior is intended or tested. This violates the rules.
12. src/components/favorites.rs:320
  • Draft comment:
    The warning message in get_actions_text is user-friendly. Consider externalizing strings to a constants module or localization layer for easier future updates.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
13. src/components/history.rs:125
  • Draft comment:
    The logic for rendering query duration calculation is clear. Double-check the modulus calculation so that durations under one minute format correctly; a comment to clarify the math would be beneficial.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
14. src/components/menu.rs:329
  • Draft comment:
    The use of IndexMap for table mapping is neat. In change_focus and search handling, consider refactoring repeated filtering logic into a helper function for clarity.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
15. src/components/mod.rs:100
  • Draft comment:
    The Component trait is now simplified. Good removal of DB generics. Ensure all implementations now operate on the unified AppState without regression.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50%
    This comment is asking the PR author to ensure that all implementations operate on the unified AppState without regression. It is essentially asking the author to double-check their work, which violates the rule against asking the author to ensure behavior is intended or tested.
16. src/components/scroll_table.rs:317
  • Draft comment:
    The custom rendering in get_row and manual cell style application is quite verbose. Consider a helper macro to reduce duplication across drivers. This is a maintenance tip rather than a bug.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
17. src/config.rs:137
  • Draft comment:
    In StructuredConnection::connection_string, the error for SQLite is returned. Consider explicitly documenting that raw connection strings must be provided for SQLite to guide new users.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
18. src/database/mod.rs:133
  • Draft comment:
    The get_first_query function properly handles multiple statements and empty queries. The use of ParserError wrapped in ParseError is clear; consider adding a comment explaining the splitting logic.
  • Reason this comment was not posted:
    Decided after close inspection that this draft comment was likely wrong and/or not actionable: usefulness confidence = 10% vs. threshold = 50%
    The function's logic is quite clear and self-documenting. The error types have descriptive names (MoreThanOneStatement, EmptyQuery, SqlParserError) and include clear error messages. The function is short (13 lines) and follows a simple pattern. Adding a comment would be redundant given how self-explanatory the code is.
    Perhaps future maintainers would benefit from understanding why we need to wrap ParserError in our own type? The error handling design choice could use explanation.
    While the error wrapping design could be documented, that would be better suited for the ParseError enum definition itself, not this function. This function's implementation is clear enough without additional comments.
    The comment should be deleted as the function is already clear and self-documenting. Any needed documentation about error handling design should go on the ParseError type instead.
19. src/database/mysql.rs:241
  • Draft comment:
    In build_connection_opts, interactive prompting is used when fields are missing. While acceptable for CLI apps, be mindful of non-interactive environments; possibly allow overriding via environment variables.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
20. src/database/postgresql.rs:227
  • Draft comment:
    The structure and wrapping of Postgres transaction tasks is consistent with MySQL; ensure that any driver-specific SQL differences are adequately tested.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50%
    The comment is purely informative and asks the author to ensure that driver-specific SQL differences are tested. This violates the rule against asking the author to ensure testing.
21. src/database/sqlite.rs:227
  • Draft comment:
    The connection options for SQLite prompt the user if no URL is provided. This interactive behavior might not be ideal for automated testing; consider a configuration flag to disable prompts.
  • Reason this comment was not posted:
    Comment was on unchanged code.
22. src/keyring.rs:29
  • Draft comment:
    The keyring integration looks clean. The flow of prompting the user and offering to save the password is good, but the use of '?' after the match is a bit stylistically unusual; consider restructuring to clarify control flow.
  • Reason this comment was not posted:
    Comment was on unchanged code.
23. src/main.rs:124
  • Draft comment:
    The main function delegates to tokio_main well. The resolve_driver function uses multiple matching arms; consider refactoring into smaller helper functions for clarity, though functionally it’s acceptable.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
24. src/popups/confirm_export.rs:1
  • Draft comment:
    The ConfirmExport popup is clear, but consider adding handling for unexpected key events (other than Y/N/Esc) with a brief feedback message to the user.
  • Reason this comment was not posted:
    Comment was on unchanged code.
25. src/popups/confirm_query.rs:26
  • Draft comment:
    ConfirmQuery popup uses match on statement type. The dual branch for Explain is good, but ensure that cloning the statement doesn't incur unnecessary overhead.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50%
    The comment is asking the author to ensure that a specific behavior does not incur unnecessary overhead. This falls under the rule of not asking the author to ensure behavior is intended or tested. The comment does not provide a specific suggestion or point out a clear issue.
26. src/popups/confirm_tx.rs:39
  • Draft comment:
    In ConfirmTx, get_cta_text formats a user message based on statement type. It might be clearer to separate the cases into helper functions to reduce nesting.
  • Reason this comment was not posted:
    Decided after close inspection that this draft comment was likely wrong and/or not actionable: usefulness confidence = 20% vs. threshold = 50%
    The method is not overly complex - it has a simple match statement with 3 cases, each doing a straightforward format. The nesting is minimal and the logic is clear. Breaking this into helper functions would add more complexity than it would solve. The current structure makes it easy to see all the message formats in one place.
    The comment does identify a potential code organization improvement. Breaking out the formatting logic could make each case more focused.
    However, the current implementation is already quite readable and the suggested refactoring would likely make the code more complex rather than simpler.
    This comment should be removed as the suggested refactoring would not meaningfully improve the code quality and the current implementation is clear and maintainable.
27. src/popups/exporting.rs:32
  • Draft comment:
    The Exporting popup is minimal and purposely does no actions. If this is temporary, add a TODO comment for future implementation.
  • Reason this comment was not posted:
    Decided after close inspection that this draft comment was likely wrong and/or not actionable: usefulness confidence = 10% vs. threshold = 50%
    The code does appear minimal, but we don't know if this is intentional or not. The popup could be meant to be passive, just showing "Exporting..." while some other part of the system handles the actual export. The changes in the diff are about removing DB generics, not about the popup's functionality. Suggesting a TODO would be speculative.
    The popup's minimal implementation could genuinely be incomplete and need more work. The comment might help prevent this from being forgotten.
    Without more context about the overall system design, we can't know if the minimal implementation is a problem or intentional. The comment is speculative and asks for confirmation of intention.
    Delete the comment as it's speculative and asks for confirmation of intention without clear evidence that the current implementation is incorrect.
28. src/popups/mod.rs:18
  • Draft comment:
    PopUpPayload now includes additional variants like CommitTx and RollbackTx. Make sure all receivers handle these new payloads correctly in the main app.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50%
    This comment is asking the PR author to ensure that all receivers handle the new payloads correctly, which falls under the rule of not asking the author to ensure behavior is intended or tested. It doesn't provide a specific suggestion or point out a specific issue.
29. src/popups/name_favorite.rs:66
  • Draft comment:
    The NameFavorite popup properly warns if a name already exists. Consider trimming extra whitespace from the name input as soon as it is received to ensure consistency.
  • Reason this comment was not posted:
    Comment was on unchanged code.
30. src/vim.rs:116
  • Draft comment:
    The Vim emulation state machine is extensive. Consider unit tests for the transition function to ensure edge cases are handled, especially for pending inputs (e.g., double 'g' for gg).
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
31. src/database/mod.rs:113
  • Draft comment:
    Typo in the comment above the load_menu method: "expects each row to be combination of schema and table name." should be "expects each row to be a combination of schema and table name." This is a trivial cosmetic fix.
  • Reason this comment was not posted:
    Decided after close inspection that this draft comment was likely wrong and/or not actionable: usefulness confidence = 0% vs. threshold = 50%
    While the comment is technically correct about the grammar, it's an extremely minor documentation issue that doesn't affect code functionality or clarity. The meaning is perfectly clear even without the article. This kind of nitpicky grammar correction in comments doesn't meet the bar for "clearly a code change required".
    The missing article does make the comment slightly less polished. Documentation quality is important for API consumers.
    While documentation quality matters, this is such a minor grammatical issue that it doesn't meaningfully impact understanding. The comment adds more noise than value.
    Delete this comment as it's too minor and doesn't meet the bar for requiring a code change.
32. src/keyring.rs:48
  • Draft comment:
    On line 48, the error message string "Failed to extract password from secret: {e:?}" appears to intend interpolation of the error variable e, but as a plain string literal it will not interpolate the error. Consider using format!("Failed to extract password from secret: {e:?}") to ensure the error details are properly included.
  • Reason this comment was not posted:
    Comment was on unchanged code.

Workflow ID: wflow_J3UJAlTEIpJbivdw


You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet mode, and more.

Copy link
@ellipsis-dev ellipsis-dev bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 Looks good to me! Incremental review on 66698dd in 2 minutes and 17 seconds

More details
  • Looked at 846 lines of code in 23 files
  • Skipped 0 files when reviewing.
  • Skipped posting 22 drafted comments based on config settings.
1. src/popups/confirm_export.rs:22
  • Draft comment:
    Consider documenting what input characters are expected (Y for yes, N/Esc for cancel) to help future maintainers.
  • Reason this comment was not posted:
    Confidence changes required: 50% <= threshold 50%
    None
2. src/popups/confirm_query.rs:26
  • Draft comment:
    The match arm for KeyCode::Char('Y') returns the pending query but clones the string unnecessarily; consider reusing a reference if possible.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50%
    None
3. src/popups/confirm_tx.rs:26
  • Draft comment:
    The handling for confirming with 'Y' and canceling on 'N' or Esc is straightforward; adding comments on the transaction context might improve readability.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50%
    None
4. src/popups/name_favorite.rs:27
  • Draft comment:
    The code ignores whitespace and most punctuation except '_' and '-' when accepting favorite names; consider clarifying allowed characters in documentation or enhancing the validation logic.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50%
    None
5. src/ui.rs:3
  • Draft comment:
    The center() utility computes centered Rects using two nested Layouts; consider adding inline comments to explain the nesting mechanism for clarity.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50%
    None
6. src/vim.rs:115
  • Draft comment:
    The transition match block is quite complex. Consider refactoring duplicated patterns into helper functions to ease future modifications and improve readability.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
7. src/vim.rs:143
  • Draft comment:
    Clipboard operations are conditionally compiled; check that error handling in clipboard access logs sufficient detail for debugging.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50%
    None
8. src/keyring.rs:37
  • Draft comment:
    In the 'NoEntry' branch, after prompting for a password and asking whether to save it, ensure that error messages and flow are intuitive to end users.
  • Reason this comment was not posted:
    Confidence changes required: 50% <= threshold 50%
    None
9. src/main.rs:60
  • Draft comment:
    The resolve_driver() function handles several fallbacks from CLI and environment variables. Consider breaking it into smaller helper functions and adding inline documentation to improve maintainability.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
10. src/popups/confirm_query.rs:33
  • Draft comment:
    When matching on Statement::Explain, the message uses statement_type_string on the inner statement. Ensure proper formatting across different statement types.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50%
    None
11. src/popups/confirm_tx.rs:33
  • Draft comment:
    Using unwrap_or_default() for rows affected can mask issues; consider logging a warning if the value is unexpectedly missing.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50%
    None
12. src/popups/exporting.rs:21
  • Draft comment:
    The exporting pop-up has minimal action. If this is temporary, consider marking it with a TODO comment for future expansion.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50%
    None
13. src/popups/name_favorite.rs:55
  • Draft comment:
    The get_actions_text() function produces a long inline string. Consider extracting the warning text to a constant or documenting this behavior for clarity.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50%
    None
14. src/vim.rs:110
  • Draft comment:
    The Vim transition function handles many key sequences directly. Group similar key mappings (e.g. cursor movements) into helper functions to reduce complexity.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
15. src/main.rs:97
  • Draft comment:
    Consider calling dotenv() before parsing CLI arguments. Currently, Cli::parse() is invoked before dotenv() so environment variables like DATABASE_URL may not be applied. Moving dotenv() to the very start of main() ensures that env vars are loaded in time.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
16. src/keyring.rs:33
  • Draft comment:
    Consider handling the save option input in a case‐insensitive manner (e.g. "y" or "Y") and possibly providing a default fallback if the input is empty. This would improve usability when prompting to save the password in the keyring.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
17. src/vim.rs:110
  • Draft comment:
    The transition function in the Vim module is quite long and complex, with many match arms handling various key inputs. Consider refactoring parts of this function into smaller, helper functions to improve readability and maintainability.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
18. src/ui.rs:3
  • Draft comment:
    The center function pattern matches a single-element array from Layout results. Although the constraints passed ensure one element, consider adding a safeguard (e.g. an assert) or documenting that the constraints must always yield exactly one area to prevent potential panics.
  • Reason this comment was not posted:
    Comment was on unchanged code.
19. src/popups/name_favorite.rs:27
  • Draft comment:
    The character filtering in the NameFavorite popup ignores ASCII whitespace and most punctuation but allows '_' and '-' only. It would be useful to clarify in the UI what characters are acceptable, and possibly consider using a regex or character whitelist for clarity.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
20. src/config.rs:307
  • Draft comment:
    In the parse_key_sequence function, when processing a raw key sequence without "><" (lines 307-311), the code uses strip_prefix('>') on line 309 to attempt to remove the trailing '>' character. This appears to be a typographical error – it likely should be strip_suffix('>') to correctly remove the trailing bracket. Please update this to avoid mis-parsing of key sequences.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
21. src/vim.rs:49
  • Draft comment:
    Minor typographical issue: The help text for Insert mode says "type Esc to back to normal mode". Consider rephrasing it to "type Esc to return to normal mode" for better clarity.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
22. src/vim.rs:51
  • Draft comment:
    Typographical clarity issue: The help text for Replace mode says "type character to replace underlined". Consider rephrasing to "type the character to replace the underlined character" for imp 8000 roved clarity.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.

Workflow ID: wflow_IPHuceEemttiivhd


You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet mode, and more.

Copy link
@ellipsis-dev ellipsis-dev bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 Looks good to me! Incremental review on 1b9b7cd in 1 minute and 27 seconds

More details
  • Looked at 75 lines of code in 3 files
  • Skipped 0 files when reviewing.
  • Skipped posting 6 drafted comments based on config settings.
1. src/database/mysql.rs:480
  • Draft comment:
    Removed unused imports (e.g. Parser) in tests. Good cleanup.
  • Reason this comment was not posted:
    Confidence changes required: 0% <= threshold 50%
    None
2. src/database/postgresql.rs:116
  • Draft comment:
    Simplified test imports by removing unused Parser import in tests.
  • Reason this comment was not posted:
    Confidence changes required: 0% <= threshold 50%
    None
3. src/database/sqlite.rs:400
  • Draft comment:
    Test module imports cleaned: removed redundant Parser import.
  • Reason this comment was not posted:
    Confidence changes required: 0% <= threshold 50%
    None
4. src/database/mysql.rs:482
  • Draft comment:
    Cleaned up test imports: removed unused Arc and consolidated sqlparser imports. Looks good.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50%
    This comment is purely informative, as it only describes what changes were made without providing any actionable feedback or suggestions. It does not ask for confirmation or suggest improvements.
5. src/database/postgresql.rs:483
  • Draft comment:
    Simplified test imports by removing the unnecessary 'Parser' import from sqlparser. Good cleanup.
  • Reason this comment was not posted:
    Comment was not on a location in the diff, so it can't be submitted as a review comment.
6. src/database/sqlite.rs:400
  • Draft comment:
    Test module imports have been streamlined; unused 'Parser' import removed and sqlparser imports consolidated. Excellent refactor.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50%
    This comment is purely informative, describing changes made to the imports. It doesn't provide any actionable feedback or suggestions for improvement.

Workflow ID: wflow_b3zY5uisKuGmidSB


You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet mode, and more.

Copy link
@ellipsis-dev ellipsis-dev bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 Looks good to me! Incremental review on 7e6da08 in 1 minute and 27 seconds

More details
  • Looked at 17 lines of code in 1 files
  • Skipped 0 files when reviewing.
  • Skipped posting 4 drafted comments based on config settings.
1. src/app.rs:596
  • Draft comment:
    Minor formatting: add a space before the arrow for consistency in match arms.
  • Reason this comment was not posted:
    Confidence changes required: 0% <= threshold 50%
    None
2. src/app.rs:600
  • Draft comment:
    Minor formatting: add a space before the arrow for consistency in match arms.
  • Reason this comment was not posted:
    Confidence changes required: 0% <= threshold 50%
    None
3. src/app.rs:595
  • Draft comment:
    Formatting: Add space before '=>' for Focus::Editor match arm for consistency.
  • Reason this comment was not posted:
    Confidence changes required: 0% <= threshold 50%
    None
4. src/app.rs:598
  • Draft comment:
    Formatting: Add space before '=>' for Focus::Data match arm for consistent style.
  • Reason this comment was not posted:
    Confidence changes required: 0% <= threshold 50%
    None

Workflow ID: wflow_TrIchLd9zss1gt1r


You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet mode, and more.

@achristmascarl achristmascarl merged commit 037a7eb into main Apr 14, 2025
10 checks passed
@achristmascarl achristmascarl deleted the feat/duckdb-driver branch April 14, 2025 02:06
Copy link

Included in release v0.3.1

tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Apr 26, 2025
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [achristmascarl/rainfrog](https://github.com/achristmascarl/rainfrog) | patch | `v0.3.0` -> `v0.3.1` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>achristmascarl/rainfrog (achristmascarl/rainfrog)</summary>

### [`v0.3.1`](https://github.com/achristmascarl/rainfrog/releases/tag/v0.3.1)

[Compare Source](achristmascarl/rainfrog@v0.3.0...v0.3.1)

<!-- Release notes generated using configuration in .github/release.yml at v0.3.1 -->

#### What's Changed

-   Bump tokio from 1.39.3 to 1.43.1 in the cargo group across 1 directory by [@&#8203;dependabot](https://github.com/dependabot) in achristmascarl/rainfrog#167
-   refactor database drivers by [@&#8203;achristmascarl](https://github.com/achristmascarl) in achristmascarl/rainfrog#169
-   percent encode password in constructed url string by [@&#8203;achristmascarl](https://github.com/achristmascarl) in achristmascarl/rainfrog#173

**Full Changelog**: achristmascarl/rainfrog@v0.3.0...v0.3.1

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever MR is behind base branch, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNTcuOCIsInVwZGF0ZWRJblZlciI6IjM5LjI1Ny44IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiXX0=-->
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
0