From 995923932b49ab65a7a8e681f9b7122367a1ea4d Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Mon, 25 Dec 2017 20:50:10 +0100 Subject: [PATCH 01/17] Updated usage. --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 10359cf..fd9ae12 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,8 @@ import { AWSHandler } from "lambda-framework-aws"; const app: IApp = new App(); ... -export.handler = AWSHandler(app); +const handler: AWSHandler = new AWSHandler(app); +export.handler = handler.handle; ``` ### Using S3 to retrieve the templates From 11091a2acc7a57ee24bc88cec098e2ca9fdb1e9b Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Mon, 25 Dec 2017 20:56:31 +0100 Subject: [PATCH 02/17] Added gcloud to projects. --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index fd9ae12..351390e 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,8 @@ the [Core Project](https://github.com/rogelio-o/lambda-framework). - [Core](https://github.com/rogelio-o/lambda-framework) - [AWS Lambda implementation](https://github.com/rogelio-o/lambda-framework-aws) -- [DustJS template engine implementation for Lambda Framework](https://github.com/rogelio-o/lambda-framework-dustjs) +- [Google Cloud Functions implementation](https://github.com/rogelio-o/lambda-framework-gcloud) +- [DustJS template engine implementation](https://github.com/rogelio-o/lambda-framework-dustjs) - [Website](https://github.com/rogelio-o/lambda-framework-website) - [Website Resources](https://github.com/rogelio-o/lambda-framework-website-resources) From 8cd6181c46dc6de8ca355a465030490bd7cff200 Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Mon, 25 Dec 2017 22:12:14 +0100 Subject: [PATCH 03/17] Added node-cache to dependencies. --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index ac15d16..bf340f9 100644 --- a/package.json +++ b/package.json @@ -45,7 +45,8 @@ "dependencies": { "@types/aws-lambda": "0.0.21", "aws-sdk": "^2.161.0", - "lambda-framework": "^1.0.20" + "lambda-framework": "^1.0.20", + "node-cache": "^4.1.1" }, "nyc": { "exclude": [ From a1a9eb17dcbf7fd3a68a47e7e56c0060187630ba Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Mon, 25 Dec 2017 22:23:18 +0100 Subject: [PATCH 04/17] Added types to dev dependencies. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index bf340f9..bcaf20b 100644 --- a/package.json +++ b/package.json @@ -28,6 +28,7 @@ "author": "Rogelio Orts", "license": "MIT", "devDependencies": { + "@types/aws-lambda": "0.0.24", "@types/chai": "^4.0.4", "@types/mocha": "^2.2.43", "@types/node": "^8.0.28", @@ -43,7 +44,6 @@ "typescript": "^2.5.2" }, "dependencies": { - "@types/aws-lambda": "0.0.21", "aws-sdk": "^2.161.0", "lambda-framework": "^1.0.20", "node-cache": "^4.1.1" From 55a7439040374d94e4d44d5446fac80960dfef0b Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Tue, 26 Dec 2017 11:51:57 +0100 Subject: [PATCH 05/17] Added finalize to RAW callback. --- package.json | 2 +- src/lib/AWSRawCallback.ts | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index bcaf20b..09ca0a8 100644 --- a/package.json +++ b/package.json @@ -45,7 +45,7 @@ }, "dependencies": { "aws-sdk": "^2.161.0", - "lambda-framework": "^1.0.20", + "lambda-framework": "^1.0.22", "node-cache": "^4.1.1" }, "nyc": { diff --git a/src/lib/AWSRawCallback.ts b/src/lib/AWSRawCallback.ts index d8e018d..cb681ee 100644 --- a/src/lib/AWSRawCallback.ts +++ b/src/lib/AWSRawCallback.ts @@ -20,4 +20,8 @@ export default class AWSRawCallback implements IRawCallback { this.callback(null, {statusCode, headers, body}); } + public finalize(err?: Error): void { + this.callback(err); + } + } From 57b8318644f7a39f2b365e800ab79c3f5cf12ec4 Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Tue, 26 Dec 2017 12:44:22 +0100 Subject: [PATCH 06/17] Added test for finalize. --- package.json | 4 ++-- test/AWSRawCallback.spec.ts | 12 ++++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 09ca0a8..d2cd045 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "lambda-framework-aws", - "version": "1.0.6", + "version": "1.0.7", "description": "AWS Lambda implementation of Lambda Framework", "main": "dist/src/index.js", "types": "dist/src/index.d.ts", @@ -53,4 +53,4 @@ "**/*.spec.js" ] } -} +} \ No newline at end of file diff --git a/test/AWSRawCallback.spec.ts b/test/AWSRawCallback.spec.ts index 9a60f13..0879461 100644 --- a/test/AWSRawCallback.spec.ts +++ b/test/AWSRawCallback.spec.ts @@ -41,4 +41,16 @@ describe("AWSRawCallback", () => { }); + describe("#finalize", () => { + + it("calls the original `callback` function with the given error.", () => { + const err: Error = new Error("Test."); + + rawCallback.finalize(err); + + Chai.expect(callback.args[0][0]).to.be.equal(err); + }); + + }); + }); From e45d97d8b2e2ef6c94f4aa42d106902afb71ff0a Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Tue, 26 Dec 2017 22:15:35 +0100 Subject: [PATCH 07/17] Increased node version. --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 5263196..7ba9872 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,7 +10,7 @@ sudo: false language: node_js # Specify the node versions to run on node_js: - - "6.11.2" + - "6.11.5" # Report code coverage to coveralls after successful test runs after_success: - npm run coveralls From b99c7305fb798a820b3023c993f809929c9f7fa6 Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Tue, 26 Dec 2017 22:26:00 +0100 Subject: [PATCH 08/17] Added auto version to dependencies. --- package.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index d2cd045..0d864ad 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,8 @@ "sinon": "^4.0.2", "tslint": "^5.7.0", "tslint-microsoft-contrib": "^5.0.1", - "typescript": "^2.5.2" + "typescript": "^2.5.2", + "npm-auto-version": "^1.0.0" }, "dependencies": { "aws-sdk": "^2.161.0", @@ -53,4 +54,4 @@ "**/*.spec.js" ] } -} \ No newline at end of file +} From 194c1300bd21253abac9088c43e3f961cb76d33b Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Wed, 27 Dec 2017 18:55:07 +0100 Subject: [PATCH 09/17] Updated LF version. --- package-lock.json | 20 +++++++++++--------- package.json | 2 +- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/package-lock.json b/package-lock.json index 822b6af..b2d515e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,13 +1,14 @@ { "name": "lambda-framework-aws", - "version": "1.0.6", + "version": "1.0.7", "lockfileVersion": 1, "requires": true, "dependencies": { "@types/aws-lambda": { - "version": "0.0.21", - "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-0.0.21.tgz", - "integrity": "sha512-PDCjrTTYcFl22FJ9gwMw1UxQGBxNM5iXomM1EH3aT/sFX0Y4rDGz0SlLYRYzzf1FbOjiTrYSmzoz4FSiOgyCFQ==" + "version": "0.0.24", + "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-0.0.24.tgz", + "integrity": "sha1-eeTvQY8pnXQwrKQUF4hkgGloQV4=", + "dev": true }, "@types/chai": { "version": "4.0.6", @@ -748,9 +749,9 @@ "dev": true }, "lambda-framework": { - "version": "1.0.21", - "resolved": "https://registry.npmjs.org/lambda-framework/-/lambda-framework-1.0.20.tgz", - "integrity": "sha1-ftVtWId7cKGQOz24NRFHTxvW3xc=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/lambda-framework/-/lambda-framework-1.1.0.tgz", + "integrity": "sha1-Eu8RNwGvdq8bksnHInpHzYoofsE=", "requires": { "accepts": "1.3.4", "bytes": "3.0.0", @@ -763,7 +764,6 @@ "logger": "0.0.1", "mime-types": "2.1.17", "node-cache": "4.1.1", - "npm-auto-version": "1.0.0", "path-to-regexp": "2.1.0", "qs": "6.5.1", "querystring": "0.2.0", @@ -1029,6 +1029,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/npm-auto-version/-/npm-auto-version-1.0.0.tgz", "integrity": "sha1-b21s8b2JEL5U71DnOMCfgSWE3jI=", + "dev": true, "requires": { "semver": "5.4.1" } @@ -2753,7 +2754,8 @@ "semver": { "version": "5.4.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", - "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", + "dev": true }, "sinon": { "version": "4.1.3", diff --git a/package.json b/package.json index 0d864ad..64bffec 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ }, "dependencies": { "aws-sdk": "^2.161.0", - "lambda-framework": "^1.0.22", + "lambda-framework": "^1.1.0", "node-cache": "^4.1.1" }, "nyc": { From 5674661f9b95950cb28ce66a79c1018f24376295 Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Wed, 27 Dec 2017 21:23:48 +0100 Subject: [PATCH 10/17] Added npm badge version. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 351390e..980b5cb 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # AWS Lambda implementation -[![Coverage Status](https://coveralls.io/repos/github/rogelio-o/lambda-framework-aws/badge.svg?branch=master)](https://coveralls.io/github/rogelio-o/lambda-framework-aws?branch=master) [![Build Status](https://travis-ci.org/rogelio-o/lambda-framework-aws.svg?branch=master)](https://travis-ci.org/rogelio-o/lambda-framework-aws) +[![Coverage Status](https://coveralls.io/repos/github/rogelio-o/lambda-framework-aws/badge.svg?branch=master)](https://coveralls.io/github/rogelio-o/lambda-framework-aws?branch=master) [![Build Status](https://travis-ci.org/rogelio-o/lambda-framework-aws.svg?branch=master)](https://travis-ci.org/rogelio-o/lambda-framework-aws) [![npm version](https://badge.fury.io/js/lambda-framework-aws.svg)](https://badge.fury.io/js/lambda-framework-aws) AWS Lambda implementation of Lambda Framework. From 345866d14f4c4f2f0067070be566449d5f059b08 Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Wed, 27 Dec 2017 21:41:29 +0100 Subject: [PATCH 11/17] Added AWS lambda type to dependencies. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 64bffec..5334678 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,6 @@ "author": "Rogelio Orts", "license": "MIT", "devDependencies": { - "@types/aws-lambda": "0.0.24", "@types/chai": "^4.0.4", "@types/mocha": "^2.2.43", "@types/node": "^8.0.28", @@ -46,6 +45,7 @@ }, "dependencies": { "aws-sdk": "^2.161.0", + "@types/aws-lambda": "0.0.24", "lambda-framework": "^1.1.0", "node-cache": "^4.1.1" }, From a12521dc810dc2d5612643303d737a81cc46b70a Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Wed, 27 Dec 2017 22:17:30 +0100 Subject: [PATCH 12/17] Added any to avoid external types error. --- src/lib/AWSHandler.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/AWSHandler.ts b/src/lib/AWSHandler.ts index a38d513..ac16fec 100644 --- a/src/lib/AWSHandler.ts +++ b/src/lib/AWSHandler.ts @@ -15,7 +15,7 @@ export default class AWSHandler { this._transformer = new AWSTransformer(); } - public handle(event: any, context: Context, callback: Callback): void { + public handle(event: any, context: any, callback: any): void { const rawEvent: IRawEvent = this._transformer.transformRawEvent(event); const rawCallback: IRawCallback = this._transformer.transformRawCallback(callback); From e53b4bf9bdc7d93b907eba7ba2eb4dea27722357 Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Wed, 27 Dec 2017 22:18:05 +0100 Subject: [PATCH 13/17] Fixed example. --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 980b5cb..b3a27b3 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,8 @@ import { AWSHandler } from "lambda-framework-aws"; const app: IApp = new App(); ... const handler: AWSHandler = new AWSHandler(app); -export.handler = handler.handle; +const handle = handler.handle; +export { handle }; ``` ### Using S3 to retrieve the templates From a23b60a126ac50501333fa43e87c9c69e4a093ca Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Wed, 27 Dec 2017 22:34:01 +0100 Subject: [PATCH 14/17] Removed unused imports. --- src/lib/AWSHandler.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/lib/AWSHandler.ts b/src/lib/AWSHandler.ts index ac16fec..e2423a6 100644 --- a/src/lib/AWSHandler.ts +++ b/src/lib/AWSHandler.ts @@ -1,4 +1,3 @@ -import { Callback, Context } from "aws-lambda"; import { IApp, IRawCallback, IRawEvent } from "lambda-framework"; import AWSTransformer from "./AWSTransformer"; From 402aec3fdeb6a7b98ffc03bdc1bd6dd6039d3dd3 Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Thu, 28 Dec 2017 22:31:40 +0100 Subject: [PATCH 15/17] Update example. --- README.md | 7 +++---- package.json | 4 ++-- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index b3a27b3..fa176b3 100644 --- a/README.md +++ b/README.md @@ -9,14 +9,13 @@ AWS Lambda implementation of Lambda Framework. ### Creating the AWS Lambda handler ```typescript -import { App, IApp } from "lambda-framework"; +import { App, IApp, ITemplateRenderer } from "lambda-framework"; import { AWSHandler } from "lambda-framework-aws"; const app: IApp = new App(); ... const handler: AWSHandler = new AWSHandler(app); -const handle = handler.handle; -export { handle }; +export const handle = handler.handle.bind(handler); ``` ### Using S3 to retrieve the templates @@ -24,7 +23,7 @@ export { handle }; ```typescript import { App, IApp } from "lambda-framework"; import { AWSHandler, S3TemplateLoader } from "lambda-framework-aws"; -import DustTemplateRenderer from "lambda-framework-dustjs"; +import { DustTemplateRenderer } from "lambda-framework-dustjs"; const app: IApp = new App(); ... diff --git a/package.json b/package.json index 5334678..5f533e8 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,6 @@ "devDependencies": { "@types/chai": "^4.0.4", "@types/mocha": "^2.2.43", - "@types/node": "^8.0.28", "@types/sinon": "^2.3.7", "chai": "^4.1.2", "coveralls": "^3.0.0", @@ -44,8 +43,9 @@ "npm-auto-version": "^1.0.0" }, "dependencies": { - "aws-sdk": "^2.161.0", "@types/aws-lambda": "0.0.24", + "@types/node": "^8.0.28", + "aws-sdk": "^2.161.0", "lambda-framework": "^1.1.0", "node-cache": "^4.1.1" }, From a12585bb539a2c550de3f5af85f10c7289935744 Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Sat, 30 Dec 2017 13:19:39 +0100 Subject: [PATCH 16/17] Updated core version. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 5f533e8..ed93470 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "@types/aws-lambda": "0.0.24", "@types/node": "^8.0.28", "aws-sdk": "^2.161.0", - "lambda-framework": "^1.1.0", + "lambda-framework": "^1.1.1", "node-cache": "^4.1.1" }, "nyc": { From 437bb0d2c8385fd9748982a508cc6d809992e3da Mon Sep 17 00:00:00 2001 From: rogelio-o Date: Sat, 30 Dec 2017 13:22:58 +0100 Subject: [PATCH 17/17] Added examples to projects. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index fa176b3..f5de272 100644 --- a/README.md +++ b/README.md @@ -46,6 +46,7 @@ the [Core Project](https://github.com/rogelio-o/lambda-framework). - [DustJS template engine implementation](https://github.com/rogelio-o/lambda-framework-dustjs) - [Website](https://github.com/rogelio-o/lambda-framework-website) - [Website Resources](https://github.com/rogelio-o/lambda-framework-website-resources) +- [Examples](https://github.com/rogelio-o/lambda-framework-examples) ## Contributions