What's Changed
- Document TSQLSmells package analysis: rule overlap and porting candidates by @Copilot in #443
- Port SML011 as SRD0078 - Single-character aliases are poor practice by @Copilot in #449
- Updates for SRD0078 by @ErikEJ in #451
- Move docs gen to seperate tool by @ErikEJ in #457
- use .slnx by @ErikEJ in #458
- Port SML033 to new SRD0079 SingleCharacterVariableRule by @Copilot in #459
- Port SML025 into SqlServer.Rules as SRP0028 (explicit RANGE window frames) by @Copilot in #500
- Port SML020 into SqlServer.Rules as SRD0090 (ForcePlanOffRule) by @Copilot in #498
- Port SML013 into SqlServer.Rules as SRD0084 (
CONCAT_NULL_YIELDS_NULLmust be ON) by @Copilot in #492 - Port SML009 into SqlServer.Rules as SRD0083 (avoid SET DATEFIRST) by @Copilot in #491
- Port SML008 to new design rule SRD0082 (Avoid changing DATEFORMAT) by @Copilot in #490
- Port SML034 into SqlServer.Rules as SRD0080 by @Copilot in #488
- Port SML035 to SRD0081: TOP(100) PERCENT ignored by optimizer by @Copilot in #486
- Port SML019 into SqlServer.Rules as SRD0089 (QUOTED_IDENTIFIER ON) by @Copilot in #497
- Port SML014 into SqlServer.Rules as SRD0085 (ANSI_NULLS ON) by @Copilot in #493
- Port SML001 cross-server join detection into new SRP0026 performance rule by @Copilot in #485
- Port SML006 into SqlServer.Rules as SRP0027 (explicit column conversion in WHERE) by @Copilot in #489
- Port SML041 into SqlServer.Rules as SRD0095 (named CHECK constraints on temp tables) by @Copilot in #484
- Port SML016 into SqlServer.Rules as SRD0087 (ANSI_WARNINGS ON) by @Copilot in #495
- Port SML032 into SqlServer.Rules as SRD0091 (ORDER BY in derived tables) by @Copilot in #501
- Port SML039 into SqlServer.Rules as SRD0093 (named default constraints on temp tables) by @Copilot in #503
- Port SML015 into SqlServer.Rules as new SRD0086 (ANSI_PADDING should be ON) by @Copilot in #494
- Port SML018 into SqlServer.Rules as new design rule SRD0088 by @Copilot in #496
- Port SML026 into SqlServer.Rules as SRP0029 (implicit RANGE window frame) by @Copilot in #499
- Port SML038 into SqlServer.Rules as SRD0092 (named PK constraints on temp tables) by @Copilot in #502
- Port SML040 into SqlServer.Rules as SRD0094 (named FK constraints on temp tables) by @Copilot in #504
- Port SML029 into SqlServer.Rules as SRP0030 (cursor FAST_FORWARD enforcement) by @Copilot in #505
- Port SML043 into new design rule SRD0096 for potential SQL injection detection by @Copilot in #487
- Remove TSQLSmellSCA rules and related tests by @ErikEJ in #506
- Remove TSQLSmellSCA pack/sign; update TestModel default by @ErikEJ in #507
- More sml removal by @ErikEJ in #508
- Add rule SRD0700: enforce PAGE_VERIFY = CHECKSUM database option by @Copilot in #510
- Add SRD0706 to enforce AutoShrink OFF in SQL project options by @Copilot in #523
- Add SRD0705 to require AUTO_CLOSE OFF in SQL projects by @Copilot in #521
- Add SRD0701 to require Query Store READ_WRITE for supported SQL Server targets by @Copilot in #518
- Add rule SRD0704: TargetRecoveryTimePeriod must be greater than 0 by @Copilot in #522
- Add SRD0703 for QueryStoreCaptureMode=AUTO by @Copilot in #519
- Release 5.0 by @ErikEJ in #529
Full Changelog: v4.2.0...v5.0.0