All notable changes to this project will be documented in this file. See commit-and-tag-version for commit guidelines.
13.5.0 (2024-04-28)
13.4.0 (2024-04-24)
- add more docker tests (cdec7bd)
13.3.4 (2024-04-19)
13.3.3 (2024-01-20)
13.3.2 (2023-12-13)
- use crypto web api (6ccbb80)
13.3.1 (2023-12-08)
- fix no-lonely-if (2b15f42)
13.3.0 (2023-11-16)
13.2.1 (2023-11-06)
- use nullish coalescing (04d8cfb)
13.2.0 (2023-10-04)
- remove setTimeout promisify wrapper, use built-in (10d5f3b)
13.1.2 (2023-09-30)
13.1.1 (2023-09-26)
13.1.0 (2023-09-25)
13.0.0 (2023-09-21)
- remove unsupported runtimes
- remove node.js v16 support, remove node-fetch
- remove node.js v14 support
- InvocationsControllor: typo in error message (49d94f2)
- support authorizer with no identity source specified (#1639) (43aaa2e)
- bup eslint-plugin-unicorn, fix linting (c93dd98)
- re-activate unicorn/no-array-push-push (69a1261)
- re-activate unicorn/no-useless-promise-resolve-reject (3b88aa0)
- re-activate unicorn/prefer-number-properties (46391f1)
- re-activate unicorn/prefer-ternary (4606829)
- remove node.js v16 support, remove node-fetch (8dbcfa6)
- remove Object.hasOwn polyfill (8ea15b5)
12.0.4 (2023-01-04)
12.0.3 (2022-12-17)
12.0.2 (2022-12-12)
12.0.1 (2022-12-07)
12.0.0 (2022-12-03)
- dont return result of resolver function (d0cba92)
- use named import (6be0a1b)
- use nullish coalescing (9404173)
11.6.0 (2022-11-26)
11.5.0 (2022-11-18)
11.4.0 (2022-11-17)
11.3.0 (2022-11-08)
11.2.3 (2022-11-01)
11.2.2 (2022-10-31)
- path access with trailing slash (#1606) (73b95bc)
- remove redundant and faulty condition in hapi path generation (e756be6)
11.2.1 (2022-10-27)
- remove default get method from fetch (8f40327)
- replace aws-sdk lambda client with more lightweight @aws-sdk scoped package (1a482ad)
- use array destructuring (97de51b)
- use Array.prototype.map to iterate layers (6fc9e90)
- use destructuring (414cf4a)
11.2.0 (2022-10-27)
11.1.3 (2022-10-18)
- create http server (132dd7f)
- remove typeof operator for undefined checks (312d4f0)
- split get events for http and httpApi (51a30e9)
11.1.2 (2022-10-13)
11.1.1 (2022-10-10)
- await cleanup in timer (f5b8c68)
- empty complete pool on cleanup (3377e7a)
- free memory, empty lambda function pool (b03cf79)
11.1.0 (2022-10-09)
- remove noStripTrailingSlashInUrl option (71ee21d)
- remove stripTrailingSlash from hapi config (22fd667)
11.0.3 (2022-10-06)
- memory leak with lambda timeout (c9c8c14)
11.0.2 (2022-10-05)
11.0.1 (2022-10-01)
- create api keys only when needed (again) (d614fc8)
11.0.0 (2022-09-29)
- remove apiKey option (#1585)
- remove disableScheduledEvents option (#1582)
10.3.2 (2022-09-27)
- create api keys set only when needed (a6df83a)
10.3.1 (2022-09-27)
- private endpoints (76c8215)
10.3.0 (2022-09-25)
- deprecate disableScheduledEvents option (e7ad109)
- move private http event condition to http class (a2d3438)
10.2.1 (2022-09-23)
- usage identifier key condition (c0b8d75)
10.2.0 (2022-09-22)
- http server instantation for websockets (4c7a034)
- use node:fs/promises (b1a6121)
- use optional chaining (0000ba7)
- websocket server instantation (2843e86)
- websocket servers instantiation (4788e04)
10.1.0 (2022-09-18)
- remove contributors from package.json (0b9f007)
10.0.2 (2022-09-11)
- create instance in worker thread helper module scope (53a799e)
10.0.1 (2022-09-10)
- await promise (335993e)
- Support multiple of same query string for LambdaProxyIntegrationEventV2 (#1525) (7416c1c)
10.0.0 (2022-09-03)
- remove hide stack traces option
- rename option to terminate lambda time
- remove child process option (#1545)
- remove print output option (#1559)
- add node.js v16 to unsupported docker runtimes (6ab3928)
- remove child process option (#1545) (db395dd)
- remove hide stack traces option (1820771)
- remove print output option (#1559) (9f31825)
9.3.1 (2022-09-01)
- remove unsupported dotnet, dotnet core runtimes (b967b37)
- rename time to millis (c1158b2)
- simplify ruby runner (10e7e82)
9.3.0 (2022-08-28)
- examples (83835dd)
- examples to use es6 imports (6953f23)
- move examples handlers to src directory (724b9e8)
- simplify (dc8c46a)
9.2.6 (2022-08-21)
- add handler exception logging (06d348d)
- Log uncaught exceptions in worker thread handlers (#1544) (498ce29)
- move child process deprecation to the end for more visibility (310a535)
- rename variables (26f61a4)
- simplify return (04d0ae0)
9.2.5 (2022-08-18)
9.2.4 (2022-08-18)
- destructuring order nit (b44cf07)
- fix color name, import from utils (ef17e31)
- move colors to config (2cd3180)
- move colors to separate file (6a32f29)
9.2.3 (2022-08-17)
- [ERR_MISSING_ARGS]: The "message" argument must be specified when using --useChildProcesses (#1385) (91ae1e1)
- path.resolve parameter (733dcdf)
- path.resolve parameter, Part 2 (48ee32f)
- remove default parameter (b657cbf)
- use function statements (d213921)
9.2.2 (2022-08-16)
9.2.1 (2022-08-15)
9.2.0 (2022-08-11)
- in-process constructor (12ab4c9)
- move splitHandlerPathAndName call to runners (690325b)
- use named import (77f71cc)
9.1.7 (2022-08-08)
- https protocol option default value (57f7d87)
- declare fields, remove from constructor (0e82819)
- declare fields, remove from constructor, part 2 (364ef2c)
- https protocol ternary consistency (2b2a8fa)
- load certs private method (33e4e01)
- use conditional spread (5dfe577)
9.1.6 (2022-08-05)
- event.resource in catch-all route gets + changed to * (#1524) (0494fdb)
- tls options (#1529) (c76939d)
9.1.5 (2022-08-04)
9.1.4 (2022-08-03)
- make @serverless/utils a direct dependency (83a4885)
9.1.3 (2022-08-02)
- move create hapi handler into separate function (45454af)
- move http server setup to separate function (6f03251)
- move register plugins to create server (5e101a6)
- nit (739273d)
- remove corsAllowCredentials from default options (26a9567)
- replace arrow functions (5e3e3d8)
- use fs/promises (7019d28)
9.1.2 (2022-07-31)
- Prevent logging
undefined
for event schedule (#1520) (3042bc2) - remove unsupported stageVariables (4648d39)
- make more payload identifier private static (07ec960)
- make payload identifier private static (7d4bf76)
- simplify, remove else condition (df77e14)
- use Object.hasOwn (ec1210a)
- use PAYLOAD_IDENTIFIER (d6eb227)
- use prototype.includes (50679e1)
9.1.1 (2022-07-30)
- default lambda timeout (ad217e2)
- round getRemainingTimeInMillis to nearest integer (2106504)
- use Math.floor() (f6145d9)
- worker-runner timout option (#1515) (3437822)
- nit (6d82e3e)
- replace execaSync with execa (promise) (#1518) (7fe54c5)
- use object shorthand for getRemainingTimeInMillis (a9078df)
- use try/finally (58698fa)
9.1.0 (2022-07-27)
- add local environment variables flag (#1513) (4de5620)
- copy all AWS_xxx environment variables from local (c6d5546)
- rename localEnvironmentVariables flag to localEnvironment (b041577)
- change default lambda runtime to nodejs14.x (1ad9fbd)
- Cleanly exit node process (#1508) (ff9d0b5)
- env property is always a string (a226d63)
- remove duplicate env.IS_OFFLINE variable (b7f7072)
- remove replay (d325837)
- make handler private field (fbdb162)
- move _HANDLER to aws env vars (3c92cd4)
- remove #getEnv (f6f40fd)
- remove resolve joins in provider envs (e459110)
9.0.0 (2022-07-18)
- use node: protocol imports (#1435)
- use fs/promises (#1432)
- remove serverless v1 support
- remove node.js v12 support, add v18 (#1424)
- add 'configValidationMode: error' option (8de4008)
- add 'configValidationMode: error' option, Part 2 (3610786)
- add 'configValidationMode: error' option, Part 3 (6f3e66b)
- add 'configValidationMode: error' option, Part 4 (b7e73f2)
- add 'configValidationMode: error' option, Part 5 (39d37cb)
- add new runtimes (#1464) (3ae08c4)
- add object.hasown shim (ea0aebf)
- add package.json exports field (2c263d0)
- add reload handler flag (f662dc5)
- bump esm-only deps (#1456) (5faa4d1)
- display memory leak warning for in-process handlers (2192a5f)
- remove babel, use esm (#1455) (1f4d836)
- remove even more serverless v2 logging (677d1b1)
- remove more serverless v2 logging (6b101aa)
- remove serverless v2 logging (404093c)
- support serverless v3 (#1444) (1e9445e)
- __dirname in esm (0cdf1b9)
- add strict directive (5d88bc4)
- await promise (d01d3e3)
- aws-sdk import (43ed77e)
- cleanup (#1457) (4e29466)
- cli option message (9e31eb3)
- console.log (d85bb15)
- don't require context (#1471) (#1472) (aaccf96)
- example plugin path (da60c98)
- execa import (a2c599a)
- getter/setter map (e56b190)
- Increase invocation payload limit to 6 mb (0e13c8b)
- package.json files (79ffb5e)
- remove allow cache option (78fec17)
- remove catch binding (#1459) (653aa5c)
- remove NODE_ENV=test condition (#1499) (2eec40a)
- remove ruby v2.5 support (ca85e7e)
- serverless-offline v8.6 and later unloads all modules when running on Windows, breaking plugins (#1461) (#1462) (af441b2)
- stringify websocket data (4b0f110)
- websocket imports (eae5400)
- conditionally install node-fetch globally vs. node.js v18+ (0f2c313)
- don't return from constructor (cf101bd)
- export internals (37ff876)
- fix function name (52e5f98)
- import log from @serverless/utils package (63c7b43)
- make cleanupFunctions private (bb77350)
- make method private (7fa36af)
- nit (5180b25)
- re-use path.resolve kimport (732d374)
- reduce try/catch block (850ae3e)
- remove p-map module (6d4b1af)
- remove readfile function (c417198)
- remove serverless compat check (21779ff)
- remove update-notifier (861ad84)
- remove var (5f84931)
- replace cuid module with built-in crypto.randomUUID (2cf6b41)
- replace printBlankLine (b82028f)
- simplify (2943120)
- simplify (ac63c36)
- simplify condition (acdf1b9)
- use a lot more Object.entries (85361a5)
- use async fs/promises (#1458) (ae855ef)
- use async unlink (#1480) (2fccc87)
- use destructuring (f8c6533)
- use even more Object.entries (76582e0)
- use fs/promises (#1432) (f744897)
- use fs/promises (#1445) (969b37c)
- use function statements, move into module scope (4dc34c5)
- use more Object.entries (c1552e4)
- use named import (669ebc6)
- use node: protocol import (e44182b)
- use node: protocol imports (#1435) (397e703)
- use Object.entries (b864a35)
- use Object.entries (257524c)
- use object.entries (#1446) (7b25196)
- use Object.entries/.fromEntries (18c2b41)
- use private methods (#1423) (a332dbf)
- use private methods (#1425) (f04e57c)
- use way more Object.entries (86c5280)
- use worker threads by default, remove flag, introduce in-process flag (80091fb)
- websockets: use async/await (4377f45)
8.8.1 (2022-07-09)
- remove update-notifier (fbcd41e)
8.8.0 (2022-05-17)
- lowercase API gateway V2 event headers (#1288) (9ff4cf3)
- remove (now) useless worker thread support check (#1406) (1b2ae00)
- remove babel-eslint (17adeb5)
- remove engine check (#1407) (58b2199)
- remove unneeded deps (95e1fe5)
- solve merge issues (99a2578)
- temporary revert nested modules (#1419) (f4317e4)
- import from namespace (#1405) (ed9d6cd)
- import process explicit (#1418) (8893c67)
- prettify docs (2ee5b1e)
- remove extend module, replace with Object.assign (#1417) (90d5169)
8.7.0 (2022-04-13)
- Validate authorizer context response to better mimic API Gateway
- Add support for the AUTHORIZER env variable for LambdaIntegration
8.6.0 (2022-04-13)
- POC for externally triggering cleanup of lambda functions
- Fixing AWS env vars
- Ensure gateway IP is truthy before adding to docker args
- update debugging instructions
- Never remove cached node_modules or binary modules
- Handle multiple cookies with the same name in the same way API Gateway does.
8.5.0 (2022-02-18)
- Add
httpEvent.operationId
to the request context (#1325) (e217fcb) (Quenby Mitchell) - Ensure
websocket
parity with API Gateway (#1301) (8f02226) (Christian Nuss) - Introduce header to override authorizer response (#1328) (a5158a4) (ericctsf)
- Support injection of custom authentication strategy (#1314) (febfe77) (tom-stclair)
- Fix payload normalization (#1332) (e9e8169) (Taras Romaniv)
- Skip clearing undefined modules in
InProcessRunner
(#1339) (5026e43) (Kevin Rueter)
8.4.0 (2022-01-28)
go-runner
implementation (#1320) (6bb54fd)--disableScheduledEvents
CLI param support (#1185) (4503567)
- Handle custom authorizer 401 in non in-process runners (#1319) (8d61bde)
- Support
httpApi
payload override on function level (#1312) (8db63dd)
8.3.1 (2021-11-25)
- Fix handling of modern logs (
Cannot read properties of undefined (reading 'notice')
error)