:sparkles: Features
* Adds support for macros in model_defaults and conditional properties (3933) themisvaltinos
* **(dlt)** Add support to override the dlt pipelines directory (3984) themisvaltinos
:beetle: Bug fixes
* Fail the plan command if the selector expression doesn't return any models (3968) izeigerman
* Sqlmesh_tests package version (3971) erindru
* Direct breaking category should only impact direct children snapshot (3975) izeigerman
* Determine SnapshotTableInfo equality with fingerprint only (3980) treysp
* Resolution of this_model within macros of on_virtual_update (3962) themisvaltinos
* Handle duplicate model names across sql, python and external models (3945) lafirm
* Type inference for BQ engine adapter (3981) VaggelisD
* Rename slow -> cicd tests in circleci (3985) lafirm
:broom: Chore
* Move linter doc from concepts to guides (3958) treysp
* Fix linter guide nav (3959) treysp
* Remove private push snapshots on state sync (3960) eakmanrq
* Switch from setup.py to pyproject.toml (3953) erindru
* Fix links to linter guide (3974) treysp
* Bump sqlglot to v26.10.0 (3986) georgesittas
* Bump sqlglot to v26.10.1 (3989) georgesittas
:alien: Other
* [DOCS]: Observe plan updates (3911) mesmith027
* [DOCS]: Observability Model Freshness updates (3912) mesmith027
* [DOCS]: Observer Run updates (3919) mesmith027
* Add nomissingaudits rule (3967) sungchun12
* Add docs editing HOWTO (3973) treysp