Releases: LayeredCraft/minimal-lambda
Release list
v1.2.1
Summary
Small release to add transitive builds (#202) and fix interceptor namespace (#205).
Changes
🐛 Bug Fixes
- fix: update build versioning (#206) @j-d-ha
- feat(ci): fixed interceptor namespace (#205) @ncipollina
- feat(ci): add transitive builds (#202) @ncipollina
📚 Documentation
🔧 Maintenance
v1.2.0
Summary
This release significantly expands the envelope support in AWS Lambda Host, adding strongly-typed message handling for multiple AWS services. The new envelope implementations enable seamless integration with Kinesis, Kinesis Firehose, Kafka, CloudWatch Logs, Application Load Balancer, and SNS-to-SQS subscription patterns. Additionally, envelope options have been enhanced to support multiple serialization formats, providing greater flexibility for different use cases. Documentation has been standardized across all packages, and internal improvements include refactored JSON options handling for better performance.
Changes
🚀 Features
- feat(envelopes): add SqsSnsEnvelope for SNS-to-SQS subscription pattern (#196) @j-d-ha
- feat(envelopes): add CloudWatch Logs envelope support (#195) @j-d-ha
- feat(envelopes): add Kafka envelope support (#194) @j-d-ha
- feat(envelopes): add Kinesis Firehose envelope support (#193) @j-d-ha
- feat(envelopes): add Kinesis envelope for strongly-typed message handling (#192) @j-d-ha
- feat(envelopes): add Application Load Balancer envelope support (#187) @j-d-ha
- feat(envelopes): expand envelope options for multiple serialization formats (#184) @j-d-ha
🐛 Bug Fixes
📚 Documentation
- docs: standardize README documentation across all packages (#200) @j-d-ha
- feat(envelopes): add SNS envelope for strongly-typed message handling (#190) @j-d-ha
🔄 Refactoring
🔧 Maintenance
v1.1.0
Summary
This release introduces new feature abstractions for stream handling, enhances context accessibility in the Lambda host, and adds source code attribution. Key improvements include CI/CD workflow fixes for release management and new GitHub templates for issue reporting and discussions.
Changes
🚀 Features
- feat(host): add stream feature abstraction layer (#181) @j-d-ha
- feat(core): add ILambdaHostContextAccessor and context factory integration (#178) @j-d-ha
- feat(source-generators): add GeneratedCodeAttribute to all generated code classes (#174) @j-d-ha
🐛 Bug Fixes
- fix(ci): update changelog workflow to create pull request instead of direct commit (#172) @j-d-ha
- fix(ci): add write permissions for release asset uploads (#171) @j-d-ha
📚 Documentation
🔧 Maintenance
v1.0.0
Summary
This release represents a major architectural rewrite of the AwsLambda.Host framework. The codebase has been fundamentally redesigned to improve maintainability, extensibility, and developer experience while maintaining the core Lambda hosting functionality.
🎯 Key Highlights
1. Modular Builder Architecture
Replaced the monolithic ILambdaApplication interface with three specialized, focused builder interfaces (ILambdaInvocationBuilder, ILambdaOnInitBuilder, ILambdaOnShutdownBuilder). This provides clearer separation of concerns and a more intuitive API for configuring Lambda applications.
2. Modular Envelope System
Introduced a new, extensible envelope system for strongly-typed event handling. Out of the box, you get built-in support for API Gateway (v1 & v2) and SQS events with automatic payload extraction and response packing. The system is designed for easy extension to support additional event sources. More Envelopes are coming soon!
3. Enhanced Feature Collection System
Implemented a modern feature collection pattern allowing strongly-typed access to event data and response objects through IFeatureCollection. This replaces ad-hoc context properties with a clean, composable approach to managing invocation-scoped data.
4. Restructured Codebase
Reorganized the project hierarchy into logical layers (Builder, Core, Context, Runtime) and improved the namespace organization for better code navigation and maintainability.
5. Comprehensive Test Suite
Added 67+ new unit test classes with extensive coverage of the builder pattern, context management, feature collections, and lifecycle handlers—ensuring reliability across the refactored architecture.
⚠️ Breaking Changes
This is a major version release with significant breaking changes:
ILambdaApplicationinterface removed → migrate toILambdaInvocationBuilder,ILambdaOnInitBuilder,ILambdaOnShutdownBuilder- Extensive namespace reorganization (features now in
AwsLambda.Host.Core.Features.*, builders inAwsLambda.Host.Builder.*) - Lambda serializer registration moved from
LambdaHostOptionsto dependency injection - Old lifecycle orchestrator classes removed in favor of new builder factory pattern
- Requires C# 14 or later for consuming applications (due to extension member syntax)
See the detailed PR descriptions for migration guidance.
📦 New Packages & Features
- Two new envelope packages:
AwsLambda.Host.Envelopes.ApiGatewayandAwsLambda.Host.Envelopes.Sqs - New benchmarking project to track performance metrics
- Enhanced documentation with updated READMEs for all packages
- New example project (
AwsLambda.Host.Example.Events) demonstrating event handling with strongly-typed payloads
🔧 Technical Improvements
- Refactored builder entrypoint with improved configuration handling
- New
ServiceCollectionExtensionsfor fluent DI registration - Enhanced content root resolution with additional test coverage
- Updated CI/CD workflows (skipped for draft PRs, GitHub Actions upgrades)
- Improved code organization and reduced duplication throughout the codebase
Changes
🚀 Features
- feat(host): refactor builder entrypoint and improve configuration (#166) @j-d-ha
- test(source-generators): add comprehensive tests for
HashCodetype (#153) @j-d-ha - feat(envelopes): add modular envelope system for Lambda event handling (#131) @j-d-ha
🐛 Bug Fixes
📚 Documentation
🔄 Refactoring
- refactor(core): refactor lambda application and builder (#163) @j-d-ha
- refactor(host): reorganize folder structure with hierarchical layers (#146) @j-d-ha
✅ Tests
🔧 Maintenance
- chore(deps): Bump the minor-and-patch group with 1 update (#165) @dependabot[bot]
- chore(github): configure Dependabot to use conventional commits (#164) @j-d-ha
- chore(deps): bump actions/checkout from 5 to 6 (#158) @dependabot[bot]
- chore(deps-dev): bump husky from 8.0.3 to 9.1.7 (#149) @dependabot[bot]
- chore(deps-dev): bump @commitlint/cli from 18.6.1 to 20.1.0 (#150) @dependabot[bot]
- chore(deps-dev): bump @commitlint/config-conventional from 18.6.3 to 20.0.0 (#151) @dependabot[bot]
- feat(opentelemetry): add OpenTelemetry unit tests and update dependencies (#148) @j-d-ha
- chore(deps-dev): bump js-yaml from 4.1.0 to 4.1.1 in the npm_and_yarn group across 1 directory (#132) @dependabot[bot]
- ci: skip workflows for draft pull requests (#127) @j-d-ha
- ci: skip pr build for draft pull requests (#126) @j-d-ha
- ci(github): replace softprops action with gh release upload command (#123) @j-d-ha
- chore(deps): bump amannn/action-semantic-pull-request from 5.4.0 to 6.1.1 (#121) @dependabot[bot]
- chore(deps): bump peter-evans/create-pull-request from 5 to 7 (#119) @dependabot[bot]
- chore(deps): bump actions/checkout from 4 to 5 (#118) @dependabot[bot]
- chore(deps): bump stefanzweifel/git-auto-commit-action from 5 to 7 (#117) @dependabot[bot]
- chore(deps): bump release-drafter/release-drafter from 6.0.0 to 6.1.0 in the minor-and-patch group (#116) @dependabot[bot]
⚠️ Breaking Changes
- feat(host): refactor builder entrypoint and improve configuration (#166) @j-d-ha
- refactor(core): refactor lambda application and builder (#163) @j-d-ha
- refactor(host): reorganize folder structure with hierarchical layers (#146) @j-d-ha
- feat(envelopes): add modular envelope system for Lambda event handling (#131) @j-d-ha
v0.1.3
v0.1.2
v0.1.1
v0.1.0
Changes in this Release
Initial release