Skip to content

Linting rule to PREVENT select * in general #3753

Closed
@sungchun12

Description

@sungchun12

I want the ability to add a linting rule that prevents the application of a plan if it detects any select * in my models whether it knows they can be expanded or not. This is more to solve for enforcing SQL best practice.

config.yaml/config.py: add a config here to the model_defaults.

If it detects a select * print the file path in the terminal output, so I can easily navigate and fix it.

This is helpful because I was scratching my head adding a column to a single model and wondering why a model upstream kept causing breaking changes downstream. It's because select * was downstream in my other models. I wasted precious time and money making SQLMesh backfill more stuff than it needed to for a silly mistake.

cc @VaggelisD given you worked on the most relevant PR recently.

Metadata

Metadata

Assignees

Labels

FeatureAdds new functionality

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions