Skip to content

Conversation

brunobeltran
Copy link
Contributor

Brief summary of the change made

fixes #6551

DuckDB, as described on their page about the DuckDB struct type
, allows for "dot"-based access to struct fields.

For example, the following query returns 'there' when executed by DuckDB:

SELECT ex.x.hi
FROM (SELECT { 'hi': 'there' } AS x) AS ex

Are there any other side effects of this change that we should be aware of?

Effectively disables non-trivial RF01 checks for all DuckDB queries. As far as I can tell, this is in-line with our current strategy for other languages that allow "dot"-based access, since otherwise we generate far too many false-positives to be useful.

Pull Request checklist

  • Please confirm you have completed any of the necessary steps below.

  • Included test cases to demonstrate any code changes, which may be one or more of the following:

    • .yml rule test cases in test/fixtures/rules/std_rule_cases.
    • .sql/.yml parser test cases in test/fixtures/dialects (note YML files can be auto generated with tox -e generate-fixture-yml).
    • Full autofix test cases in test/fixtures/linter/autofix.
    • Other.
  • Added appropriate documentation for the change.

  • Created GitHub issues for any relevant followup/future enhancements if appropriate.

Copy link
Contributor

github-actions bot commented Jan 8, 2025

Coverage Results ✅

Name    Stmts   Miss  Cover   Missing
-------------------------------------
TOTAL   19209      0   100%

248 files skipped due to complete coverage.

Copy link
Contributor

@keraion keraion left a comment

Choose a reason for hiding this comment

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

LGTM. Thanks!

@keraion keraion added this pull request to the merge queue Jan 9, 2025
Merged via the queue into sqlfluff:main with commit 306274c Jan 9, 2025
28 of 29 checks passed
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.

DuckDB needs to be added to list of dialects supporting dot-based struct access
3 participants