Skip to content
CAI
Software that uses CAICheck a score

elixir-ecto/ecto

69.8

Adequate · 23 September 2026

32.6k

lines of production code

Elixir

primary language

5

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

How this codebase got here

Baseline

  • First survey — no prior run to compare against. CAI 70.

Lenses

  • Code Health 95
  • Architecture 97
  • Maturity 60
  • Readiness 60
  • Security 100

Changes since last survey

  • 300 commits — 264 feature/other, 36 fixes

By area

  • lib/ecto — 201 commits
  • (root) — 47 commits
  • test/ecto — 17 commits
  • integration_test/cases — 9 commits
  • .github/workflows — 7 commits
  • guides/howtos — 7 commits
  • guides/cheatsheets — 4 commits
  • lib/mix — 3 commits
  • guides/introduction — 2 commits
  • lib/ecto.ex — 2 commits
  • examples/friends — 1 commit

Notable commits

  • fix: Fix CHANGELOG
  • fix: Fix CHANGELOG
  • fix: Fix Ecto.Enum.mappings/2 and Ecto.Enum.values/2 specs (#4487)
  • fix: Fix assertions in Elixir v1.19
  • fix: Fix autogenerate options for composite types (#4773)
  • fix: Fix autogenerated uuid pk syntax (#4695)
  • fix: Fix changed? for removed one relations (#4754)
  • fix: Fix data-modifying CTE planner cache traversal (#4748)
  • fix: Fix documentation examples for casting empty values (#4550)
  • fix: Fix edge case for insert_all with selecting a source with updates (#4473)
  • fix: Fix exists? semantics for query combinations (#4790)
  • fix: Fix inspecting dynamic/2 with interpolated named bindings (#4541)
  • fix: Fix inspecting fields from sources with take (#4461)
  • fix: Fix issue with macro expansion in over clause's order_by (#4630)
  • fix: Fix join count conflicts (#4592)
  • fix: Fix macros inside of order_by (#4578)
  • fix: Fix map update source field caching (#4758)
  • fix: Fix mssql 2017 integration tests (#4512)
  • fix: Fix nil map associations (#4631)
  • fix: Fix preloader validation for multiple combinations (#4762)
  • …and 280 more

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

elixir-ecto/ecto was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.

About this page

  • The score is its most recent published measurement, taken on 23 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 24f914a5a7b2cc7f8a67bf667de69b17a2c82d91 — the exact code this score is about.
  • Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-955b9cee9818.