Skip to content

feat[kafka]: avro offline schema handling - #8442

Merged
leandrodamascena merged 5 commits into
aws-powertools:developfrom
amin-farjadi:feat/kafka-avro-offline-schema-prefix
Sep 11, 2026
Merged

feat[kafka]: avro offline schema handling#8442
leandrodamascena merged 5 commits into
aws-powertools:developfrom
amin-farjadi:feat/kafka-avro-offline-schema-prefix

Conversation

@amin-farjadi

@amin-farjadi amin-farjadi commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Issue number: closes #8385

Summary

Changes

Added a value_schema_wire_format arguement to the SchemaConfig of Kafka utility, enabling the use of local (packaged with lambda) AVRO value schema for payloads generated by schama-registery aware Confluent producers (i.e. payloads serialised by KafkaAvroSerializer).

User experience

An optional argument has been added to SchemaConfig. Documentation has been updated, showing how and when this argument can be used.


By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Disclaimer: We value your time and bandwidth. As such, any pull requests created on non-triaged issues might not be successful.

@amin-farjadi
amin-farjadi requested a review from a team as a code owner September 5, 2026 00:11
@amin-farjadi
amin-farjadi requested a review from hjgraca September 5, 2026 00:11
@powertools-for-aws-oss-automation powertools-for-aws-oss-automation Bot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Sep 5, 2026
@boring-cyborg boring-cyborg Bot added documentation Improvements or additions to documentation tests labels Sep 5, 2026
@amin-farjadi amin-farjadi changed the title Feat/kafka avro offline schema prefix feat: kafka avro offline schema prefix Sep 5, 2026
@amin-farjadi amin-farjadi changed the title feat: kafka avro offline schema prefix feat[kafka]: avro offline schema handling Sep 5, 2026
@amin-farjadi
amin-farjadi force-pushed the feat/kafka-avro-offline-schema-prefix branch from 82b5409 to e9c5f67 Compare September 5, 2026 00:27
@leandrodamascena

Copy link
Copy Markdown
Contributor

I'm reviewing this.

@codecov

codecov Bot commented Sep 11, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 96.65%. Comparing base (fe7d5d2) to head (42d8b06).
⚠️ Report is 1 commits behind head on develop.

Additional details and impacted files
@@           Coverage Diff            @@
##           develop    #8442   +/-   ##
========================================
  Coverage    96.64%   96.65%           
========================================
  Files          296      296           
  Lines        14773    14806   +33     
  Branches      1248     1255    +7     
========================================
+ Hits         14277    14310   +33     
  Misses         361      361           
  Partials       135      135           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@leandrodamascena

Copy link
Copy Markdown
Contributor

Hi Amin, I reviewed the implementation and tested the cases we discussed in the issue.

The overall work is very good. The use case is clear, the API direction makes sense, and the implementation was close to complete. Instead of adding several review comments, I made the final changes directly in your branch with commit e10e4701.

I preserved compatibility for positional SchemaConfig calls, added Confluent header validation, added the same option for keys, corrected the documentation, and expanded the regression tests.

All 44 Kafka functional tests pass, together with Ruff, mypy, and the documentation build. The new parameters remain optional, so this does not break the current API.

I am going to merge the PR.

@sonarqubecloud

Copy link
Copy Markdown

@mergify

mergify Bot commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Tick the box to add this pull request to the merge queue (same as @mergifyio queue).

  • Queue this pull request

@leandrodamascena
leandrodamascena merged commit 2f69b41 into aws-powertools:develop Sep 11, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation size/L Denotes a PR that changes 100-499 lines, ignoring generated files. tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Feature request: [Kafka] Skip N leading bytes of a Kafka Avro payload before deserialization

2 participants