• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

xu-chris / toon_ex
68%

Build:
DEFAULT BRANCH: main
Repo Added 20 Jan 2026 01:53PM UTC
Files 19
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH main
branch: SELECT
CHANGE BRANCH
x
  • No branch selected
  • ci/use-quality-ci
  • feat/upgrade-to-specs-3.0.1
  • fix/decoder-nested-lists
  • fix/normalize-recursive-atoms
  • fix/test-semantic-coverage
  • fix/type-specs-for-encoder-protocol
  • main

21 Jan 2026 11:41AM UTC coverage: 67.867%. Remained the same
9810e86e87c1337ea1abc96aa0a5a2579db78dfe

push

github

web-flow
fix(types): accept term() for encoder input to support structs (#14)

The Toon.Encoder protocol normalizes input before encoding, so the
public API should accept any term() - not just pre-normalized types.

Changes:
- Add Toon.Types.input() type as term() for encoder parameters
- Update encode/1,2 and encode!/1,2 specs to use input()
- Keep encodable() for normalized output (string-keyed maps)
- Add tests for struct and atom-key encoding via public API

This fixes Dialyzer warnings when calling Toon.encode!/1 with:
- Ecto schemas (structs with atom keys)
- Maps with atom keys
- Any type implementing the Toon.Encoder protocol

Co-authored-by: Chris Xu <git@chrisxu.me>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>

716 of 1055 relevant lines covered (67.87%)

19.48 hits per line

Relevant lines Covered
Build:
Build:
1055 RELEVANT LINES 716 COVERED LINES
19.48 HITS PER LINE
Source Files on main
  • Tree
  • List 19
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
9810e86e... main fix(types): accept term() for encoder input to support structs (#14) The Toon.Encoder protocol normalizes input before encoding, so the public API should accept any term() - not just pre-normalized types. Changes: - Add Toon.Types.input() type a... push 21 Jan 2026 11:41AM UTC web-flow github
67.87
45581c8d... fix/type-specs-for-encoder-protocol fix(types): accept term() for encoder input to support structs The Toon.Encoder protocol normalizes input before encoding, so the public API should accept any term() - not just pre-normalized types. Changes: - Add Toon.Types.input() type as term... Pull #14 21 Jan 2026 11:40AM UTC Chris Xu github
67.87
039bd557... main fix(tests): improve semantic correctness of test assertions (#13) - Fix same_keys? test to exercise correct code path - Split "list containing non-maps" into two cases: - List starting with non-map (exercises fallback clause) - List wit... push 21 Jan 2026 08:11AM UTC web-flow github
67.87
126c2cb4... fix/test-semantic-coverage fix(tests): improve semantic correctness of test assertions - Fix same_keys? test to exercise correct code path - Split "list containing non-maps" into two cases: - List starting with non-map (exercises fallback clause) - List with map ... Pull #13 21 Jan 2026 08:04AM UTC Chris Xu github
67.87
c30cee13... main feat: Upgrade to TOON Specs v3.0.1 with code quality improvements Encoder refactoring: - Refactor arrays.ex with pattern-matched clauses for composability - Refactor objects.ex with pattern-matched encode_regular_entry/encode_folded_value - Renam... push 21 Jan 2026 07:57AM UTC web-flow github
67.87
eeb12455... feat/upgrade-to-specs-3.0.1 refactor: improve code quality and test coverage Encoder refactoring: - Refactor arrays.ex with pattern-matched clauses for composability - Refactor objects.ex with pattern-matched encode_regular_entry/encode_folded_value - Rename predicates to f... Pull #11 21 Jan 2026 07:53AM UTC Chris Xu github
67.87
319baa9c... feat/upgrade-to-specs-3.0.1 refactor: improve code quality and test coverage Encoder refactoring: - Refactor arrays.ex with pattern-matched clauses for composability - Refactor objects.ex with pattern-matched encode_regular_entry/encode_folded_value - Rename predicates to f... Pull #11 21 Jan 2026 06:58AM UTC Chris Xu github
63.79
0d6dfa77... main Revert "refactor: improve code quality and test coverage (#10)" This reverts commit c762e615a. push 21 Jan 2026 06:57AM UTC Chris Xu github
54.96
c762e615... main refactor: improve code quality and test coverage (#10) Encoder refactoring: - Refactor arrays.ex with pattern-matched clauses for composability - Refactor objects.ex with pattern-matched encode_regular_entry/encode_folded_value - Rename predicate... push 21 Jan 2026 06:57AM UTC web-flow github
63.79
319baa9c... feat/upgrade-to-specs-3.0.1 refactor: improve code quality and test coverage Encoder refactoring: - Refactor arrays.ex with pattern-matched clauses for composability - Refactor objects.ex with pattern-matched encode_regular_entry/encode_folded_value - Rename predicates to f... Pull #10 21 Jan 2026 06:57AM UTC Chris Xu github
63.79
See All Builds (23)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc