- π‘οΈ
06c78c6
npm audit - β¨
4ce9011
Update lint-staged and husky - β¨
ff0f750
Update prettier - β¨
b8e8fd6
Update mocha - β¨
005b7b7
Update Studio Log - β¨
4ebb5a3
Configure packaged files
Released by Maximilian Antoni on 2024-08-28.
- π
446db5c
Fix max idle overtaking lambda timeout - π
16953a0
Add missing documentation for timeout option - π
e582183
Remove bad link to apex
Released by Maximilian Antoni on 2024-08-28.
50359f9
Use husky and lint-staged7c72184
Drop node 16abb5df7
Rename master to maind0be735
State MIT license in package.jsonaf1f621
Add LICENSE
Released by Maximilian Antoni on 2024-01-17.
- β¨
cca2e48
Support node 20 and update GitHub action - β¨
d64d9ff
Upgrade prettier to v3 - β¨
2670491
Update eslint config and eslint - β¨
c27072b
Update Studio ndjson - β¨
06c894f
Upgrade Studio Changes - β¨
4e929c7
Upgrade @sinonjs/referee-sinon
Released by Maximilian Antoni on 2024-01-11.
- π₯
8be1398
Require node 16 - π₯
496cc52
Use dynamic import to support loading es modules - π₯
d458059
Change generic destroy error code toE_FAILED
- π‘
8a6a3b3
npm audit - β¨
6814ed2
Update Studio Changes - β¨
0d942b9
Upgrade referee-sinon - β¨
673cc02
Update prettier - β¨
5c264ff
Upgrade mocha - β¨
bf9897b
Upgrade eslint-config and eslint
Released by Maximilian Antoni on 2023-01-19.
- π
5b7e59e
Fix region and account config via env
Released by Maximilian Antoni on 2021-06-23.
- π
e1be0d4
HandlerJSON.stringify
error in lambda response - β¨
526574b
Upgrade @sinonjs/referee-sinon to latest (Morgan Roderick) - β¨
2f25018
Set required node version in package-lock.json (Morgan Roderick)
Released by Maximilian Antoni on 2021-05-21.
- π₯
b5a53ad
Require node 12 - π
21b2d2c
Return promise in lambda.invoke if no callback is given - π
c37577a
Support async lambda functions - π
4de3f74
Document usage with async await - π
2111a8f
Fix error handling if lambda throws while launching - β¨
957d2e6
Avoid else by returning early - β¨
e6879f2
Configure GitHub actions - β¨
64de260
Run lint, test and prettier checks separately - β¨
b9db826
Update Studio Changes - β¨
0af1d4e
Upgrade referee-sinon to latest - β¨
f2000dd
Upgrade mocha to latest - β¨
c466a9d
Setup prettier - β¨
e0469bb
Upgrade eslint and eslint-config - β¨
94c71c6
Use npm 7 - β¨
b121728
Add .gitignore - β¨
883ba54
Fix memory limit tests for node 12 - β¨
0914a38
Upgrade referee-sinon to v6 - β¨
eb41ede
Upgrade Studio Changes to v2 - β¨
570c069
Make eslint-config a dev dependency
Released by Maximilian Antoni on 2021-04-21.
-
π
6a70c3c
Revert "Do not prepend forwarded log namespace with name"This reverts commit 7082da34f64146db43402d40835bfb2ffbb934f7.
- π
7082da3
Do not prepend forwarded log namespace with name
- π₯
82e917a
BREAKING: Upgrade Studio Log to v2 - β¨
e0669ea
Use Sinon + Referee and use Sinon default sandbox - π
8362816
Add commit links with--commits
- π Pass error cause in logs through to lambda logger
- π Implement more AWS environment variables for lambda functions
- π Change log topic for new lambdas from "launch" to "spawn"
- β¨ Add tests for AWS_REGION and AWS_PROFILE environment variables
- β¨ Refactor setting
getRemainingTimeInMillis
on context
- π Add
shutdown
andstats
APIs - π Improve lambda function error handling
- π Handle ndjson transform errors
- π Use configured memory and improve process exit handling
- π Improve generated
awsRequestId
- π Add support for
functionName
. - π Add support for
awsRequestId
. - π Add support for
memoryLimitInMB
. - π Add support for
getRemainingTimeInMillis()
. - π Build the function ARN within the Lambda function instead of injecting it.
The
STUDIO_AWS_ACCOUNT
environment variable was not picket up correctly.
- β¨ Use
@studio/ndjson
to parse log output from Lambdas
-
β οΈ Remove hack to filter log dataLog data should be filtered where it's created. With the new
@studio/log-x
module and the updated@studio/wrap
this hack can be removed. -
β¨ Add
package-lock.json
- π Add
invokedFunctionArn
to given context if missing
- π Generate
invokedFunctionArn
in default context - π Use upper case
Lambda
module name in examples
-
π Fix entries cleanup in kill handler
The entries array is not necessarily cleaned up in reverse insertion order. With this patch, the kill handler does not expect the entry at a fixed position, but queries the entry to remove by ID instead.
-
π Fail on missing environment variables
- Throw an error if a variable replacement fails.
- Handle launch exceptions by logging an error and invoking the callback with an error message.
-
π Support environment variable replacement in Lambda config files
If a config file contains placeholders in the form
${ENV_VAR}
, they are replaced with the corresponding environment variable. This feature is not supported by Apex. Use it to configure secret variables in local configs.
-
π Do not log Lambda input and output
The new
@studio/wrap
implementation already do logging within the Lambda function. Log filtering should also be applied there.
-
π Pass on parent process
execArgv
This allows to invoke the parent process with v8 options like
--stack-trace-limit=50
and have them passed on to the Lambda processes. This restores the default behavior for child processes.
Log output improvements:
- π’ Include the Lambda execution time in the stats log message
- π Set
config_file
to"<defaults>"
if not found - π Remove messages to streamline log output
- π’ Log Lambda process memory usage
- π Add Lamdba debugging option
- π Pass on
process.env.DEBUG
- π Improve log output filtering
- π Handle Lambda logs on stdout
- π Do not log
authorizationToken
- π Fix log message with string event
- π Reduce duplication in log messages
- π Rename logger
- π Use
@studio/log
- π Handle invalid lambda response
- π Timeouts are defined in seconds
- π Add
base_dir
config option
- π Pass
HOME
environment variable for theaws-sdk
module to find the credentials file - β¨ Change log emoji for send and receive events
A few bug fixes and minor improvements:
- π Preserve configured env if config file is loaded
- π Do not log authorization and token header values
- π Prefix log messages with "Lambda"
- π Log lambda error response
- π Allow to pass an optional
context
object to the Lambda handler function. If no context is given, it defaults to an empty object, retaining the previous behavior.
- β¨ Inception