Skip to content

feat(binary-mapping): add binary and stream mapper support#98

Open
j-d-ha wants to merge 3 commits intomainfrom
fix/update-Binary-support
Open

feat(binary-mapping): add binary and stream mapper support#98
j-d-ha wants to merge 3 commits intomainfrom
fix/update-Binary-support

Conversation

@j-d-ha
Copy link
Copy Markdown
Collaborator

@j-d-ha j-d-ha commented Apr 8, 2026

Summary

Adds binary scalar support for byte[] and Stream values across the generator and runtime layers so DynamoDB B attributes can be mapped without custom conversion code. It also adds integration and runtime test coverage for canonical models and binary attribute helpers, and includes the new local git-workflow agent skill files that ship with this branch.

Changes

  • Added generator support for treating byte[] and Stream as scalar/binary-mapped members in CollectionTypeAnalyzer, NestedObjectTypeAnalyzer, and TypeMappingStrategyResolver
  • Added BinaryAttributeValueExtensions and updated collection extension formatting/coverage in the runtime project
  • Added a new integration test project plus canonical model fixtures and generator verification snapshots for binary and stream scenarios
  • Added the local git-workflow skill, templates, examples, and lockfile entries included in this branch

Validation

  • Not re-run by the agent in this PR workflow
  • Existing branch commits include generator verify snapshots, runtime tests, and integration test additions for the covered scenarios

Notes for Reviewers

Please review this as three commits since main: feat(git-workflow), feat(integration-tests), and feat(binary-mapping). The binary mapper work is the main functional change; the skill docs are also part of the branch and included intentionally.

j-d-ha added 3 commits April 8, 2026 13:34
…commit, branch, and PR workflows

- Introduced detailed guides for branch, commit, and pull request workflows under `docs/`.
- Added shared references for scope detection, safety rules, file inclusion policy, and conventional types.
- Included example workflows for `feat`, `fix`, and `ci` to set clear expectations.
- Added templates for pull requests and release notes.
- Ensured alignment with safety and inclusion standards.
…namoDB mappers

- Introduced comprehensive integration tests for `CanonicalIntegrationModel` and related mappers.
- Validated `ToItem` and `FromItem` conversion logic for various data structures and attributes.
- Added support for binary attributes, scalar byte arrays, and streams in assertions.
- Enhanced test coverage for round-trip consistency and data equivalence.
- Registered the new test project in the solution file.
… DynamoDB mappers

- Implemented `SetBinary`, `GetBinary`, `SetStream`, and `GetStream` methods in attribute extensions.
- Added comprehensive tests for round-trip mapping of streams and binary data.
- Updated property mapping logic to handle `byte[]` and `Stream` types seamlessly.
- Enhanced type resolution strategy to include support for binary and stream scalar members.
- Updated snapshots and generated mapper files for new cases including byte arrays and streams.
Copy link
Copy Markdown
Contributor

@ncipollina ncipollina left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see the version prefix update.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants