erlangbureau/jamdb_oracle
41.9
Weak · 2 October 2026
3.5k
lines of production code
Erlang
with Elixir
2
measurements over time
What this system is
This system is a database connectivity library for Erlang and Elixir that enables interaction with Oracle databases. It provides a native Erlang driver for low-level SQL execution and connection management, alongside a fully functional Ecto adapter for high-level ORM operations such as migrations, CRUD queries, and transaction handling. The project supports standard database features including SSL connections, TNS protocol encoding, and cryptographic authentication.
Features
Add Ecto adapter and update build configuration
The library now includes an Ecto adapter, allowing users to connect to Oracle databases using the Ecto ORM in addition to the existing Erlang driver. The project build system has been updated to support rebar3, and the minimum required Erlang/OTP version is now 22.0.
(repo-wide) · high confidence
Initial release of JAMDB Oracle driver
This change introduces the initial version of the JAMDB Oracle database driver. It adds the core Erlang header files (\TNS.hrl\, \jamdb\_oracle.hrl\, \jamdb\_oracle\_defaults.hrl\) that define the TNS protocol constants, data types, connection environment records, and default configuration values (such as port 1521 and fetch size 15) required to interact with Oracle databases.
include · high confidence
Initial release of the Jamdb.Oracle Ecto adapter
This update introduces the \Jamdb.Oracle\ library as a fully functional Ecto adapter for Oracle databases. The \lib\ directory now contains the core connection driver (\Jamdb.Oracle\ implementing \DBConnection\), the Ecto adapter module (\Ecto.Adapters.Jamdb.Oracle\), and modules for query generation (\Jamdb.Oracle.Query\) and SQL DDL execution (\Jamdb.Oracle.SQL\). Users can now use Ecto to interact with Oracle, supporting standard operations such as migrations, CRUD queries, and transaction management.
lib · high confidence
Initial release of the jamdb\_oracle Erlang Oracle driver
This change introduces the initial version (0.5.12) of the jamdb\_oracle library, providing an Erlang driver for connecting to Oracle databases. The package includes the core application definition, a gen\_server-based API module (jamdb\_oracle) for executing SQL queries, a connection manager (jamdb\_oracle\_conn) handling TCP/SSL sockets and session lifecycle, and modules for TNS protocol encoding/decoding and cryptographic authentication (including 12c/18c password versions and PBKDF2).
src · high confidence
Test coverage
Added comprehensive test suite and infrastructure for the Oracle adapter
Added a full test suite for the Jamdb Oracle Ecto adapter, including Elixir-based ExUnit tests (\jamdb\_oracle\_test.exs\) that verify SQL generation for queries, joins, CTEs, and schema prefixes, alongside Erlang Common Test suites (\jamdb\_oracle\_SUITE.erl\, \jamdb\_oracle\_test.erl\) covering basic operations, data types, and procedures. The change also introduces test helper modules for database administration (\jamdb\_oracle\_dba.erl\) and binary pretty-printing (\jamdb\_oracle\_binpp.erl\), example configuration files for SSL and non-SSL connections, and patches to address Erlang/OTP SSL compatibility issues in older versions.
test · high confidence
Dependencies
Update mix.exs to specify Ecto SQL dependency
The project's dependency manifest (mix.exs) has been updated to declare a dependency on the ecto\_sql library, specifically version 3.12 or higher. This change ensures the application correctly links against the Ecto SQL adapter required for database interactions.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Score
- CAI 41 → 42 (+0.6)
- Rubric changed (rubric-2026.09.12 → rubric-2026.09.18) — scores are not directly comparable.
Lenses
- Code Health 92 → 91 (-0.3)
- Architecture 100 → 100 (+0.0)
- Maturity 56 → 56 (+0.0)
- Readiness 64 → 68 (+3.7)
- Security 92 → 95 (+2.7)
- Event-Driven 10 → 10 (+0.0)
Resolved (2)
- Coverage not measured — no coverage collector is wired up
- Documentation: no contributor guidance (README.md)
New (2)
- Duplicated block (5 lines × 2) (lib/jamdb_oracle_query.ex)
- Duplicated block (6–8 lines × 2) (lib/jamdb_oracle_query.ex)
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
erlangbureau/jamdb_oracle 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 2 October 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 34e85e5af0b5d67eca13482a4ce4166a43d7cc47 — the exact code this score is about.
- Scored under rubric-2026.09.18 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-e569280dd5e2.