Skip to content

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 11 Jan 02:38
· 18 commits to main since this release

What's Changed

  • fix: update toolchain CI to nightly (466e692)
  • feat: add CI (e59335f)
  • update README (b8c8751)
  • feat(n_plus_one): refactor N+1 detection (c0ec531)
  • feat(semantic): deduplicate N+1 diagnostics (5a9c2e9)
  • feat: add list comprehension analysis (ae3d1a4)
  • more refactoring of n plus one. DjangoSymbolId impl (544dd2b)
  • separate scope manager in n plus one pass (48a0d49)
  • feat: init of refactor to separate concerns from visitor (780c1cb)
  • fix: related name resolver in inheritance (4186173)
  • feta: include clippy suggestion (046b9b5)
  • refactor(model-graph): support abstract model inheritance (6229a6e)
  • feat: handle related_name dynamically using Django defaults (6a7e1e9)
  • feat: resilience in syntax error when parsing multiple files (756a060)
  • feat: remove unnecesary symbol storage in for (6790098)
  • feat: handle direct attribute access in for (8583941)
  • feat: implement detection when use get_object_or_404 (724d1c0)
  • Update image in README (13fff0d)
  • Add image to README (0b270eb)
  • feat: add basic README (d94ea52)
  • update name to django-check (6140abc)
  • feat: enhance build release profile (d5454e0)
  • feat: display relative path from cwd in diagnostics (1753dcc)
  • feat: add function check in n plus one (7722a3c)
  • performance: Avoid unnecesary allocations (e25a2e2)
  • feat: implement attribute acceses in function (c42a0c3)
  • feat: add query function parsing (3f6fb50)
  • feat: enhance resilience in diagnostics (6be598c)
  • feat: implement basic N+1 verification (8138667)
  • feat: add server capabilities and single file handling (96c3a0b)
  • feat: generate basic lsp server config (c741a13)
  • feat: separate crates and add related_name validation in graph (603d48e)
  • fix: clippy suggestions (471b56b)
  • feat: implement direct chained related model lookup (0d08673)
  • refactor(n_plus_one): support multiple safe methods in QuerySet (40bad86)
  • implement recursive relation lookup (ec5c9f5)
  • feat: implement ugly model related lookup (7e67449)
  • feat(n+1): add model context to QuerySet tracking (d44974a)
  • feat: modularize project and refactor (679411f)
  • Capture fields names into query to match when it is used (e4f4d04)
  • feat(tests): Add basic test for positive and false positive (0caefb7)
  • enhance print of each diagnostic (728013f)
  • feat(analyzer): detect N+1 queries in for-loops (25414ae)
  • refactor(scope): add stack-based scope tracking for analysis (e7a38a8)
  • feat(analyzer): detect N+1 query patterns in for loops (b3620c7)
  • init (b147c22)

Installation

Download the appropriate binary for your platform:

  • Linux (x86_64): django-check-x86_64-unknown-linux-gnu.tar.gz
  • Windows (x86_64): django-check-x86_64-pc-windows-gnu.zip
  • macOS (Apple Silicon): django-check-aarch64-apple-darwin.tar.gz

Extract and place the binary in your PATH.

Full Changelog: ...v0.1.0