Skip to content
CAI
Software that uses CAICheck a score

aws-beam/aws-elixir

61.2

Adequate · 3 October 2026

1.1k

lines of production code

Elixir

primary language

2

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This system is an AWS SDK client library for Elixir that provides generated modules for interacting with various Amazon Web Services. It manages API requests by handling credential configuration, request signing, and serialization across multiple protocols such as JSON, Query, and REST-XML. The library supports pluggable HTTP clients, allowing users to choose between built-in adapters like Hackney and Finch, and includes comprehensive test coverage for protocol compliance and client behavior.

Features

Add built-in Finch HTTP adapter alongside existing Hackney client

Users can now choose between two built-in HTTP clients for AWS API calls: the existing Hackney-based client and a new Finch-based client. The new Finch adapter allows users to configure connection pooling and timeouts via options like \:pool\_timeout\ and \:receive\_timeout\, defaulting to an \AWS.Finch\ process name if not specified. This provides an alternative to Hackney for users who prefer Finch's architecture or need specific Finch features.

_lib/aws/http\client · high confidence

Added Route53 and Textract usage examples

New example files demonstrate how to use the AWS SDK for Elixir with Route53 and Textract services. The Route53 example shows how to construct and send a request to update resource record sets, while the Textract example illustrates how to analyze a document for tables by reading a file and passing its base64-encoded content to the service.

examples · high confidence

Added new AWS service modules: AIOps, Account Access, Agent Registry, and Agent Registry Control

The generated code library now includes support for several new AWS services. Specifically, modules have been added for AIOps (CloudWatch investigations), Account Access (managing IAM Identity Center entitlements), Agent Registry (discovering agent records), and Agent Registry Control (managing registries and records). These additions expand the available AWS API coverage in the generated client.

lib/aws/generated · high confidence

Added script to trim documentation for HEX package publishing

A new \trim\_docs.ex\ script and its documentation have been added to the \scripts\ folder to address HEX package size limitations. This script removes documentation and type specifications from compiled \.beam\ files, allowing users to publish a minimal package first and then publish the full documentation separately via \mix hex.publish docs\.

scripts · high confidence

Initial project scaffolding and documentation

This change introduces the foundational structure for the AWS Elixir client library. It adds a Mix formatter configuration (.formatter.exs) and a .gitignore file to manage build artifacts and dependencies. The project is licensed under the Apache License 2.0 (LICENSE), and the README.md is expanded with comprehensive documentation, including usage examples for Kinesis and S3, installation instructions, and development guidelines. A CHANGELOG.md is also added to track version history, and a .latest-tag-aws-sdk-go file is created to track the upstream AWS Go SDK version used for code generation.

(repo-wide) · high confidence

Introduction of AWS module with documentation and default client configuration

The library now includes the \AWS\ module, which serves as the main entry point for interacting with Amazon Web Services. This module provides comprehensive documentation outlining how to configure an \AWS.Client\ struct with credentials and region settings, and demonstrates usage with service modules like \AWS.S3\ and \AWS.Kinesis\. It also establishes default dependencies for HTTP and data processing: \hackney\ for HTTP requests, \Jason\ for JSON parsing, and a custom XML parser based on \xmlerl\.

lib · high confidence

Behavioural changes

Refactored AWS client architecture with pluggable HTTP and parsing modules

The library has been restructured to use a new \AWS.Client\ struct for managing credentials, regions, and service details, replacing the previous configuration approach. This change introduces pluggable behaviors for HTTP clients, JSON parsers, and XML parsers, allowing users to swap out the default implementations (Hackney, Jason, and xmerl) with custom modules via the \http\_client\, \json\_module\, and \xml\_module\ options. Additionally, the request handling now supports disabling request signing via the \sign\_request?\ option and allows configuring whether request bodies are sent as binary data, providing greater flexibility for specific AWS service protocols and local development scenarios.

lib/aws · high confidence

Test coverage

Added comprehensive test suite for AWS client, request, and signature modules; Added protocol tests for JSON, Query, REST-JSON, and REST-XML request handling; Initialize test runner configuration.

Dependencies

Initial release of aws-elixir v1.0.15 with dependency configuration

This commit introduces the initial \mix.exs\ and \mix.lock\ files for the aws-elixir library, setting the project version to 1.0.15 and requiring Elixir 1.10. It establishes the core dependency graph, including \aws\_signature\ (0.3.1), \jason\ (1.3.0) for JSON handling, and optional HTTP clients \finch\ (0.22.0) and \hackney\ (4.5.2). Development dependencies such as \dialyxir\, \earmark\, and \ex\_doc\ are also configured to support static analysis and documentation generation.

(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 60 → 61 (+1.2)
  • Rubric changed (rubric-2026.09.15 → rubric-2026.10.1) — scores are not directly comparable.

Lenses

  • Code Health 99 → 99 (+0.0)
  • Architecture 69 → 69 (+0.0)
  • Maturity 55 → 55 (+0.0)
  • Readiness 57 → 59 (+2.2)
  • Security 66 → 71 (+5.0)

Resolved (2)

  • Documentation: no architecture or design documentation (README.md)
  • Medium CVE: EEF-[CVE redacted] (mix.lock)

New (3)

  • Documentation: no contributor guidance (README.md)
  • Documentation: no usage examples (README.md)
  • High CVE: [GHSA redacted] (mix.lock)

Changes since last survey

  • 11 commits — 11 feature/other, 0 fixes

By area

  • lib/aws — 11 commits

Notable commits

  • change: Update services based on release-2026-09-18 of AWS Go SDK
  • change: Update services based on release-2026-09-21 of AWS Go SDK
  • change: Update services based on release-2026-09-22 of AWS Go SDK
  • change: Update services based on release-2026-09-23 of AWS Go SDK
  • change: Update services based on release-2026-09-24 of AWS Go SDK
  • change: Update services based on release-2026-09-25 of AWS Go SDK
  • change: Update services based on release-2026-09-28 of AWS Go SDK
  • change: Update services based on release-2026-09-29 of AWS Go SDK
  • change: Update services based on release-2026-09-30 of AWS Go SDK
  • change: Update services based on release-2026-10-01 of AWS Go SDK
  • change: Update services based on release-2026-10-02 of AWS Go SDK

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

Survey your own repository

aws-beam/aws-elixir 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 3 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 89cae7d0e0f9b0c331c2d3e66444c290c759d437 — the exact code this score is about.
  • Scored under rubric-2026.10.1 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-8fe32cd45d00.