All notable changes to this project will be documented in this file.
0.11.0 (2026-05-09)
Features
- clarify UseCodeInterface suggestion for bulk operations (#113) (da19a48) by @leonqadirie
0.10.0 (2026-04-26)
⚠ BREAKING CHANGES
UseCodeInterfacenow flagsAsh.read!(MyApp.Post),Ash.read/1,Ash.get!/3,Ash.get/3, andAsh.stream!/2calls that omit the:actionkeyword, treating them as targeting the resource's primary:readaction. Projects whose CI was previously green on bare- form calls will see new issues - either define a code interface, add an explicitaction: :read, or disable the check.
Features
- refine use code interface and missing macro directive against real semantics (#97) (9eaa617) by @leonqadirie
- replace persistent term-based cache with ETS (#100) (e6ba2f1) by @leonqadirie
Bug Fixes
- failures when ash_credo is consumed as a dependency (#102) (6be6898) by @leonqadirie
0.9.0 (2026-04-26)
⚠ BREAKING CHANGES
- AuthorizeFalse now excludes test directories by default via the new
excluded_pathsparam (#92)
Features
- add excluded_paths param to AuthorizeFalse check, excluding test directories by default (#92) (3f725fd) by @leonqadirie
0.8.0 (2026-04-22)
Features
- add excluded_actions param to MissingCodeInterface (#82) (9fb5c7c) by @bigardone
Bug Fixes
- handle custom timestamp types in MissingTimestamps check (#71) (919cf51) by @bigardone
- skip embedded resources in MissingCodeInterface (#81) (6094400) by @bigardone
0.7.0 (2026-04-10)
Features
- add refactor.directive_in_function_body check (#66) (538edc1) by @leonqadirie
0.6.0 (2026-04-10)
⚠ BREAKING CHANGES
- use Ash's introspection and tighten checks (#53)
Features
- add check for missing macro directive (#58) (8ee473f) by @leonqadirie
- enable missing_macro_directive check by default (#59) (9b559c1) by @leonqadirie
- extract warning.unknown_action from use_code_interface (#56) (47d5de7) by @leonqadirie
- make clear_cache/0 public (#55) (c1e565d) by @leonqadirie
- use Ash's introspection and tighten checks (#53) (0cd669b) by @leonqadirie
0.5.2 (2026-04-08)
Bug Fixes
- skip default-generated action types in MissingPrimaryAction (#51) (6ad17f8) by @leonqadirie
0.5.1 (2026-04-08)
Bug Fixes
- igniter installation (#45) (6c6b1a8) by @leonqadirie
- use app token for release-please to trigger CI on PRs (#47) (0c1ba8c) by @leonqadirie
0.5.0 (2026-04-08)
Features
- add UseCodeInterface check for literal resource and action calls (#41) (44b081c) by @leonqadirie
0.4.0 (2026-04-06)
Features
- improve authorize?: false check (#34) (2231339) by @leonqadirie
0.3.0 (2026-04-06)
⚠ BREAKING CHANGES
- disable most rules by default (#13)
Features
- add AuthorizeFalse check: flag authorize?: false usage (#7) (c8e7aae) by @leonqadirie, @olivermt
- disable most rules by default (#13) (723ba7e) by @leonqadirie
Bug Fixes
- edge cases with nested modules, inline opts, and alias resolution (#17) (778a1ef) by @leonqadirie
0.2.0 (2026-04-05)
Features
- add igniter installer (7f4ea45) by @leonqadirie
0.1.0 (2026-04-05)
⚠ BREAKING CHANGES
- use conventional credo module structure (b716b5c) by @leonqadirie
Features
- add authorization checks: policies, permissions, wildcard accept (d6e3424) by @leonqadirie
- add missing change wrapper check (22297b2) by @leonqadirie
- add pinned time in expression check (db64709) by @leonqadirie
- add quality checks: large resource, empty domain, action descriptions (56af703) by @leonqadirie
- add resource design checks: domain, identity, code interface, belongs_to (91980d5) by @leonqadirie
- add resource essentials checks: primary key, timestamps, actions (0a938a1) by @leonqadirie
- add security checks for sensitive attribute exposure (4d99460) by @leonqadirie
- add shared AST helpers for Ash DSL inspection (77716f2) by @leonqadirie
- increase max_lines default to 400 for large resource check (ebfaed9) by @leonqadirie
- wire up AshCredo as Credo plugin with default check config (26d5062) by @leonqadirie