Skip to content

chore: release v0.7.0 contracts pack, schema-snapshot, validate-contract#36

Merged
Pawansingh3889 merged 2 commits intomainfrom
release/v0.7.0
May 2, 2026
Merged

chore: release v0.7.0 contracts pack, schema-snapshot, validate-contract#36
Pawansingh3889 merged 2 commits intomainfrom
release/v0.7.0

Conversation

@Pawansingh3889
Copy link
Copy Markdown
Owner

@Pawansingh3889 Pawansingh3889 commented May 2, 2026

What changed

Cuts v0.7.0 to PyPI. This is the headline release for the Contracts theme: schema-aware linting via the new C001-C005 rule pack, two new CLI subcommands (schema-snapshot, validate-contract), and three community-contributed rules (W014 / W015 / W022).

Headline features

Area Change
Contracts pack New --contract path.yml flag enables 5 schema-aware rules (C001-C005). Without it, behaviour is identical to v0.6.x
schema-snapshot Bootstrap a contract from a live database via SQLAlchemy introspection. Requires pip install "sql-sop[snapshot]"
validate-contract Validate the YAML before running rules. CI-friendly, exits non-zero on parse failure
W014 case-without-else Walks CASE/END token-by-token. Contributed by @hellozzm (#32)
W015 join-function-on-column JOIN-side companion to W003. Contributed by @mvanhorn (#33)
W022 cross-join-explicit Flags explicit CROSS JOIN. Contributed by @vibeyclaw (#31)

Rule counts

  • Core registry: 43 rules (10 errors, 28 warnings, 5 Python-source)
  • With --contract: 48 rules (12 errors, 31 warnings, 5 Python-source)

Backwards compatibility

No breaking changes. All Contracts-pack rules require an explicit --contract flag (or contract: field in .sql-guard.yml); silent without it.

Files in this PR

  • pyproject.toml: 0.6.2 → 0.7.0
  • CHANGELOG.md: cut [Unreleased] → [0.7.0] - 2026-05-02 with headline summary
  • README.md: bumped Version, Tests count (152 → 210), pre-commit rev pin (v0.6.2 → v0.7.0), description text
  • .pre-commit-config.yaml: self-reference rev pin (v0.6.2 → v0.7.0)
  • ROADMAP.md: refreshed Current release section to point at v0.7.0

Tests

  • pytest: 209 passed, 1 skipped
  • ruff check: clean

Next steps after merge

  1. Tag v0.7.0 on main
  2. Push tag to trigger the release workflow (Trusted Publishing to PyPI)
  3. Verify on https://pypi.org/project/sql-sop/0.7.0/
  4. Create GitHub Release with the CHANGELOG body
  5. Update any downstream consumers (sql-sop-mcp, dependent projects) to require >=0.7.0 if they want the contract loader API

@Pawansingh3889 Pawansingh3889 changed the title release: v0.7.0 contracts pack, schema-snapshot, validate-contract chore: release v0.7.0 contracts pack, schema-snapshot, validate-contract May 2, 2026
@Pawansingh3889 Pawansingh3889 merged commit 48d5eea into main May 2, 2026
6 of 7 checks passed
@Pawansingh3889 Pawansingh3889 deleted the release/v0.7.0 branch May 2, 2026 13:12
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