Skip to content
This repository has been archived by the owner on Feb 22, 2024. It is now read-only.

Releases: dawson-org/dawson-cli

v0.28.0

25 Jun 21:50
Compare
Choose a tag to compare

⚠️⚠️⚠️️ starting with this release (v0.28.0) you must install dawson using the new npm scoped package name: @dawson/dawson-cli ⚠️⚠️⚠️

npm

New features & improvements

  • feat: support for the ANY method has been added (#156, 0a2ddfe)
  • feat: support for greedy paths has been added (#156, 7cc0489 & b25a351 & d0644a3)
  • fix: an improved error message is shown when no package.json is found or when it contains Syntax Errors (#158, 828381c)
  • fix: allow deploying when no assets dir is present and dawson.assetsDir is not defined (56156ca)
  • fix: api.excludeEnv has been implemented in the development server too, and is now documented (3f07576, f42e56f)

✌️ The documentation and the examples have been updated to match the new features.

v0.27.0

24 Jun 10:30
Compare
Choose a tag to compare

Improvements

  • fix(cli): update warning message in describe command (fb3f4ed)
  • we have updated to a new major version of execa, which now extends environment by default (sindresorhus/execa@e370117), this will impact some phases of the deploy command (zip, install dependencies etc.)
  • we have updated to a new major version of yargs, which has updated parameters precedence for env / config / context (see https://github.com/yargs/yargs/releases/tag/v7.0.0)
  • chore(deps): many dependencies and devDependencies have been updated

v0.25.0

31 Mar 15:33
Compare
Choose a tag to compare

Bug fixes

  • babel configuration in package.json is now correctly respected (#163, thanks to @rakistner)

v0.24.0

30 Mar 17:10
Compare
Choose a tag to compare

New features & improvements

v0.23.3

03 Mar 10:52
Compare
Choose a tag to compare

Changelog v0.16.1 -> 0.23.3

⚠️️ Breaking changes

  • feat: .babelrc support has been removed; babel-preset-env is used by default and can be extended / overridden using the babel property in package.json (bdd219a)
  • chore: tests are now run only against latest Node.js version (3557d99)
  • feat: customTemplateFragments are now merged deeply in the template (using lodash/merge instead of Object.assign) (#125, 7db1cd5)
  • refactor(config): the cloudfrontRootOrigin property has been renamed to root
  • feat: header keys, available from event.params.header, are now lowercased (55e3d60)
  • feat(deploy): contents of the assets/ folder are now automatically uploaded to the S3 Assets Bucket (fed787b) - use assetsDir: false to use the old behaviour

New features & improvements

  • feat: added a devInstrument property (docs) to run functions locally in response to AWS events (#129, 6ac19b8, aeec6c5, e9aebc4, 29e551b)
  • feat(dev-server): improved logging (0a61980)
  • feat(dev-server): credentials are automatically renewed so that a server restart is no longer needed (3f60f31)
  • feat(dev-server): dev server now correctly filters request headersm respecting CloudFront's behaviour
  • feat(deploy): DAWSON_STAGE variable is now available from process.env in Lambdas
  • feat(deploy): non alphanum HTTP paths can now be specified (fe39fd2)
  • feat(deploy): Accept-Language and Token headers are now forwarded by Cloudfront (55e3d60, f1622db)
  • feat(deploy): Lambda wrapping code produced by dawson is now prettified using prettier (001927b)
  • feat(deploy): CloudFormation stack will now request CAPABILITY_NAMED_IAM, to supportadding custom Named IAM Roles in your templates (dawson itself won't use named resources) (63afb35)
  • feat(cli): a --skip-cloudformation option has been added, which skips the Stack Update operation
  • refactor(deploy,dev-server): yarn has been dropped, dependencies are now installed using npm (0d0b132)
  • fix(deploy): BucketAssets and DistributionWWW Outputs are now available from Lambda's Environment (#111, a1af47a)
  • fix: exit gracefully with an useful message if zip or docker binary does not exist (e03234f)
  • fix: improves error message when a module required by your app is not installed (1f1d189)
  • improves logging
  • upgrades some dependencies

v0.16.1

30 Jan 17:14
Compare
Choose a tag to compare

New features & improvements

  • adds support for enhanced context for custom authorizers (94e8c0e, 142aee6, 3a7a9d2). See https://aws.amazon.com/about-aws/whats-new/2016/12/enhanced-context-for-custom-authorizers-in-amazon-api-gateway/
  • fixes an error parsing CloudFront configuration in package.json, which caused CF Distributions to always be deployed
  • processCFTemplate() has been updated and it cannot be used to add or change Outputs anymore (c25e5bb). It still has access to the full template and can be used to add Resources.
  • customTemplateFragment() has been added and can be used to add template Resources and Outputs (but has no access to the template which is being processed) (8b10a11)
  • Stage Outputs will now be passed to Lambda via Environment Variables, instead of APIG's stageVariables (8b10a11, 08d6b40). Env Variable name matches Cfn's Output Name prefixed with DAWSON_ (c24c4c4)
  • process.env.NODE_ENV is now available in Lambda Functions (86092bf)
  • ChangeSets have been dropped due to lack of support for nested templates (fe7e63b)
  • the following Cfn Outputs have been removed: ApiGatewayUrl, S3AssetsDNS, CloudFrontDNS, RestApiId, DeploymentId (4547921)
  • the following Cfn Outputs have been renamed: S3AssetsBucket -> BucketAssets, WWWDistribution -> DistributionWWW (bc81c61)
  • the Account Role for APIGateway has been cleaned up (6b12394)
  • x-www-form-urlencoded Content-Type is now supported (6c3fd8f)
  • fixes an error in the describe command which broke in an earlier release (0dacca1)
  • signs the Cfn Template URL when running with --verbose, for easier debugging (b39bc7f)
  • improves dev proxy auto reloading, and adds support for macOS (7892d38, 034e0af, ee91009, a906845, bab2142)
  • updates Function's path validation RegExp (bd16ab8)
  • a new property fn.excludeEnv has been added which can be used to exclude some Outputs from Lambda's Environment, preventing a Circular Dependencies error between Cfn Resources (c643f0f)
  • prints the full stack trace when a Lambda Error is catched (5d208eb)
  • adds a --fast flag to dev proxy, which skips cleanup & deps install (0ca139c, 4457ffe)
  • fixes a config check which required docker to be present even when not running the dev proxy (4b6c26c)
  • when Functions are invoked with a { "__ping": <truthy> }, the whole execution is skipped and "pong__" is returned as response (useful for implementing Lambda keep alive logic, more coming soon)
  • Lambda functions now use Resource-based permissions, instead of invocation Roles (6225994)
  • updates many dependencies

⚠️️ Breaking changes

  • the behaviour of processCFTemplate has been updated, see above
  • variables previously accessed as event.stageVariables.abcD must now be accessed by process.env.DAWSON_abcD, see above for details. A codemod can be used to migrate most of the occurrences: event-stagevariables-to-process-env.js
  • some implicit Cfn Template Outputs have been removed

v0.14.1

12 Jan 10:03
Compare
Choose a tag to compare
v0.14.1 Pre-release
Pre-release

A final version has been released as 0.16.1

v0.9.1

12 Jan 09:56
Compare
Choose a tag to compare
v0.9.1 Pre-release
Pre-release

A final version has been released as 0.16.1

v0.9.0

07 Jan 11:16
Compare
Choose a tag to compare
v0.9.0 Pre-release
Pre-release

A final version has been released as 0.16.1

v0.8.0

11 Dec 11:08
Compare
Choose a tag to compare

Improvements / Bugfixes

  • config checks:
    • the policyStatements.Resource has been loosened to prevent false errors (968d7b6)
    • fixes an issue when path was false (af7542f)
    • allows content-types which include dots and dashes (648bdee)
  • fixes possible file permission issues (#1, 3ab1cfa)
  • some unneeded npm dependencies have been removed, see the npm Dependencies page in the documentation for details
  • a check for the docker binary has been added
  • handler file and zip file has been renamed (15827b6)