Skip to content

Latest commit

 

History

History
539 lines (377 loc) · 13.7 KB

CHANGELOG.md

File metadata and controls

539 lines (377 loc) · 13.7 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

  • @laconia/batch
    • #838 Support async listeners
  • @laconia/event
    • #818 Add handling for undefined input body

Added

Added

  • @laconia/event
    • #801 Update TypeScript file definition (@Ankcorn)

Added

  • @laconia/adapter

    • #801 Add type text to the s3 input converter (@Ankcorn)
  • @laconia/event

    • #801 Add type text to the s3 input converter (@Ankcorn)

Added

  • @laconia/adapter-api
    • #660 Check error message in API gateway error handler (@mpxr)

Fixed

  • @laconia/config
    • #638 register integer and float converters to EnvVarConfigFactory (@reestolonio)

Fixed

  • @laconia/event
    • #597 SqsEvent type is missing receiptHandle prop (@moltar)

Fixed

  • @laconia/adapter-api
    • #49 Read websocket body if it's not falsy (@hugosenari)

Fixed

  • @laconia/adapter-api
    • #49 Read websocket body if it's not falsy (@hugosenari)

Added

Fixed

  • @laconia/core
    • #48 Add the configuration to suppress callback usage (@hugosenari)

Added

  • @laconia/adapter-api
  • @laconia/adapter
    • #152 Create an adapter for DynamoDB event trigger (@sakthivel-tw)

Fixed

  • #269 Various fixes to multiple TypeScript declaration files

Added

  • @laconia/adapter-api
    • #156 Add TypeScript declarations
  • @laconia/batch
    • #130 Start event is now only fired once when batch is starting (@sakthivel-tw)

Added

  • @laconia/event
    • #157 Add TypeScript declarations

Added

Added

  • Ensure laconia is running in Node10.x (@geoffdutton)
  • @laconia/adapter
    • #155 Add TypeScript declarations
  • @laconia/invoker
    • #158 Add TypeScript declarations
  • @laconia/config
    • #252 Parse JSON which contains a collection of secrets in SecretsManager (@geoffdutton)
    • #172 Add TypeScript declarations
  • @laconia/batch
    • #173 Add TypeScript declarations
  • @laconia/laconia-middleware-lambda-warmer
    • #174 Add TypeScript declarations
  • @laconia/laconia-middleware-serverless-plugin-warmup
    • #175 Add TypeScript declarations

Fixes

  • @laconia/config
    • #252 Only call .convertMultiple if values object is not empty (@geoffdutton)

Added

  • @laconia/config

Fixes

  • @laconia/core
    • #79 Can't console.log LaconiaContext
  • Various improvements in acceptance test

Changed

  • #153 Removed Snyk integration

Fixes

  • @laconia/event
    • #51 Handle the headers property being null (@ljcoomber)
  • @laconia/adapter-api
    • #50 pass laconiaContext to app in web socket adapter (@Strernd)

Added

  • @laconia/event
  • @laconia/adapter-api

Added

  • @laconia/core
    • #35 Add initial TypeScript declaration files
  • Add CONTRIBUTING and CODE_OF_CONDUCT documents

Fixed

  • @laconia/event
    • #36 Make API Gateway headers case-insensitive (@ljcoomber)
  • @laconia/adapter-api
    • #36 Make API Gateway headers case-insensitive (@ljcoomber)

Changed

  • @laconia/adapter
    • BREAKING Remove event inputType from s3 adapter. You can now use @laconia/event instead to easily retrieve bucket and key info.

Added

  • @laconia/event
    • #26 Expose lower level package for easy creation of custom adapters

Changed

  • @laconia/event
    • BREAKING #14 Change API usage from event handler to adapter pattern. Check out the latest documentation in @laconia/adapter for the latest way to use the module
    • Rename package from @laconia/event to @laconia/adapter
  • @laconia/api
    • Rename package from @laconia/api to @laconia/adapter-api

Changed

  • @laconia/api
    • BREAKING #13 Change @laconia/api API to abstract business logic instead of HTTP. Check out the latest documentation for the latest way to use the module.

Changed

  • @laconia/event
    • BREAKING #12 Change @laconia/event API. Check out the latest documentation for the latest way to use the module.

Changed

  • @laconia/core
    • BREAKING #11 Throw error when unregistered dependencies are referenced from LaconiaContext
    • BREAKING Remove #run method from laconia.
      • Export your app function separately for unit testing purposes
      • Change unit test usage of #run from handler.run({ event, dependency }) to app(event, { dependency })

Added

  • @laconia/middleware-lambda-warmer
  • @laconia/middleware-serverless-plugin-warmup

Added

  • @laconia/api
    • Created a new package to support API Gateway events

Added

  • @laconia/event
    • Support SNS input converter:
      • snsJson
    • Support SQS input converter:
      • sqsJson

Added

  • @laconia/event
    • Support Kinesis input converter:
      • kinesisJson

Added

  • @laconia/event
    • Created a new package to support s3 input converter:
      • s3Json
      • s3Stream
      • s3Event

Changed

  • @laconia/core
    • BREAKING Moved event out of LaconiaContext. laconia() will call your handler function with the parameter of event, LaconiaContext instead of just LaconiaContext
      • Change your handler function from ({ event, dependency }) => {} to (event, { dependency }) => {}
      • Change unit test usage of #run from .run({ event, dependency }) to .run(event, { dependency })

Added

  • @laconia/config
    • Merged @laconia/s3-config and @laconia/ssm-config here.
    • Add boolean conversion support

Changed

  • @laconia/s3-config
    • BREAKING This package is now merged to @laconia/config. Change your environment variable from LACONIA_S3CONFIG_VAR: foo to LACONIA_CONFIG_VAR: s3:foo
  • @laconia/ssm-config
    • BREAKINGThis package is now merged to @laconia/config. Change your environment variable from LACONIA_SSMCONFIG_VAR: foo to LACONIA_CONFIG_VAR: ssm:foo

Added

  • @laconia/core
    • postProcessor method
  • @laconia/xray
    • Ability for multiple factories to run concurrently by registering Array

Changed

  • @laconia/invoker
    • BREAKING Constructor of invoker is changed from invoker(functionName, options) to invoker(functionName, lambda, options). The second parameter is an instance of AWS.Lambda. Usage of invoker.envVarInstances is recommended.

Added

  • @laconia/core
    • Ability for multiple factories to run concurrently by registering Array

Added

  • @laconia/s3-config
    • New package to retrieve application config from S3

Changed

  • @laconia/ssm
    • BREAKING Rename environment prefix from LACONIA_SSM_ to LACONIA_SSMCONFIG_
    • Rename package from @laconia/ssm to @laconia/ssm-config
  • @laconia/invoke
    • BREAKING Rename environment prefix from LACONIA_INVOKE_ to LACONIA_INVOKER_
    • Rename package from @laconia/invoke to @laconia/invoker as invoke is not a noun

Added

  • @laconia/core
    • Caching support for registered factory

Changed

  • @laconia/invoke
    • BREAKING Change usage from invoke.envVarInstances to invoke.envVarInstances() for future extensibility
  • @laconia/ssm
    • BREAKING Change usage from ssm.envVarInstances to ssm.envVarInstances() for future extensibility
  • @laconia/test
    • BREAKING Change usage from spy.instances to spy.instances() for future extensibility

Added

  • @laconia/ssm
    • Introduce a new package to retrieve parameters and secrets from SSM
    • Add convention over configuration support

Changed

  • BREAKING Rename all packages to become scoped packages
    • laconia-core becomes @laconia/core
    • laconia-invoke becomes @laconia/invoke
    • laconia-batch becomes @laconia/batch
    • laconia-test becomes @laconia/test
  • @laconia/invoke
    • BREAKING Rename invoke.instances to invoke.envVarInstances

Added

  • laconia-invoke
    • Introduce a new package for Lambda invocation which has been extracted out from laconia-core
    • Add Convention over configuration support

Removed

  • laconia-core
    • invoke and recurse functions from LaconiaContext
    • recurse is now not exposed externally (it is internaly used by laconia-batch)
    • invoke can be found in the newly added laconia-invoke package

Changed

  • laconia-core
    • laconia function is now a default export instead of a named export
  • laconia-test
    • laconiaTest function is now a default export instead of a named export
  • laconia-batch
    • laconiaBatch function is now a default export instead of a named export

Added

  • laconia-test
    • Introduce a new package for Lambda integration testing

Changed

  • Update README file.

Added

  • Dependency injection support
  • Adopt prettier
  • FAQ section

Changed

  • Laconia usage patterns now that dependency can be injected
  • Change acceptance test to be more realistic (food ordering flow)

Removed

  • Node 6.10 support

0.1.0 - 2018-04-06

Added

  • Initial release of laconia-core and laconia-batch