@remotion/lambda 4.0.257 → 4.0.259

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getAwsRegion = void 0;
4
4
  const constants_1 = require("../shared/constants");
5
+ const get_env_variable_1 = require("../shared/get-env-variable");
5
6
  const validate_aws_region_1 = require("../shared/validate-aws-region");
6
7
  const args_1 = require("./args");
7
8
  const getAwsRegion = () => {
@@ -10,7 +11,7 @@ const getAwsRegion = () => {
10
11
  (0, validate_aws_region_1.validateAwsRegion)(args_1.parsedLambdaCli.region);
11
12
  return args_1.parsedLambdaCli.region;
12
13
  }
13
- const envVariable = (_a = process.env.REMOTION_AWS_REGION) !== null && _a !== void 0 ? _a : process.env.AWS_REGION;
14
+ const envVariable = (_a = (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_REGION')) !== null && _a !== void 0 ? _a : (0, get_env_variable_1.getEnvVariable)('AWS_REGION');
14
15
  if (envVariable) {
15
16
  (0, validate_aws_region_1.validateAwsRegion)(envVariable);
16
17
  return envVariable;
package/dist/cli/index.js CHANGED
@@ -8,6 +8,7 @@ const suggested_policy_1 = require("../api/iam-validation/suggested-policy");
8
8
  const defaults_1 = require("../defaults");
9
9
  const aws_implementation_1 = require("../functions/aws-implementation");
10
10
  const full_client_implementation_1 = require("../functions/full-client-implementation");
11
+ const get_env_variable_1 = require("../shared/get-env-variable");
11
12
  const args_1 = require("./args");
12
13
  const compositions_1 = require("./commands/compositions");
13
14
  const functions_1 = require("./commands/functions");
@@ -159,10 +160,10 @@ AWS returned an "TooManyRequestsException" error message which could mean you re
159
160
  `.trim());
160
161
  }
161
162
  if ((_c = error.stack) === null || _c === void 0 ? void 0 : _c.includes('The security token included in the request is invalid')) {
162
- const keyButDoesntStartWithAki = process.env.REMOTION_AWS_ACCESS_KEY_ID &&
163
- !process.env.REMOTION_AWS_ACCESS_KEY_ID.startsWith('AKI');
164
- const pureKeyButDoesntStartWithAki = process.env.AWS_ACCESS_KEY_ID &&
165
- !process.env.AWS_ACCESS_KEY_ID.startsWith('AKI');
163
+ const keyButDoesntStartWithAki = (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_ACCESS_KEY_ID') &&
164
+ !(0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_ACCESS_KEY_ID').startsWith('AKI');
165
+ const pureKeyButDoesntStartWithAki = (0, get_env_variable_1.getEnvVariable)('AWS_ACCESS_KEY_ID') &&
166
+ !(0, get_env_variable_1.getEnvVariable)('AWS_ACCESS_KEY_ID').startsWith('AKI');
166
167
  if (keyButDoesntStartWithAki || pureKeyButDoesntStartWithAki) {
167
168
  log_1.Log.error({ indent: false, logLevel }, `
168
169
  AWS returned an error message "The security token included in the request is invalid". A possible reason is that your AWS Access key ID is set but doesn't start with "AKI", which it usually should. The original message is:
package/dist/cli/log.d.ts CHANGED
@@ -1,13 +1,13 @@
1
1
  export declare const Log: {
2
2
  trace: (options: import("@remotion/renderer").LogOptions & {
3
3
  tag?: string;
4
- }, ...args: Parameters<typeof console.log>) => boolean | void;
4
+ }, message?: any, ...optionalParams: any[]) => boolean | void;
5
5
  verbose: (options: import("@remotion/renderer").LogOptions & {
6
6
  tag?: string;
7
- }, ...args: Parameters<typeof console.log>) => boolean | void;
8
- info: (options: import("@remotion/renderer").LogOptions, ...args: Parameters<typeof console.log>) => boolean | void;
9
- warn: (options: import("@remotion/renderer").LogOptions, ...args: Parameters<typeof console.log>) => boolean | void;
7
+ }, message?: any, ...optionalParams: any[]) => boolean | void;
8
+ info: (options: import("@remotion/renderer").LogOptions, message?: any, ...optionalParams: any[]) => boolean | void;
9
+ warn: (options: import("@remotion/renderer").LogOptions, message?: any, ...optionalParams: any[]) => boolean | void;
10
10
  error: (options: import("@remotion/renderer").LogOptions & {
11
11
  tag?: string;
12
- }, ...args: Parameters<typeof console.log>) => boolean | void;
12
+ }, message?: any, ...optionalParams: any[]) => boolean | void;
13
13
  };
@@ -43,7 +43,7 @@ const lambdaWriteFileImplementation = async (params) => {
43
43
  await new Promise((resolve) => {
44
44
  setTimeout(resolve, backoff);
45
45
  });
46
- console.warn('Failed to write file to Lambda:');
46
+ console.warn('Failed to write file to storage:');
47
47
  console.warn(err);
48
48
  console.warn(`Retrying (${remainingRetries} retries remaining)...`);
49
49
  return (0, exports.lambdaWriteFileImplementation)({
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.checkCredentials = void 0;
4
4
  const client_1 = require("@remotion/serverless/client");
5
5
  const is_cli_1 = require("../cli/is-cli");
6
+ const get_env_variable_1 = require("./get-env-variable");
6
7
  const is_likely_to_have_aws_profile_1 = require("./is-likely-to-have-aws-profile");
7
8
  const messageForVariable = (variable) => {
8
9
  return [
@@ -17,21 +18,21 @@ const messageForVariable = (variable) => {
17
18
  .join('\n');
18
19
  };
19
20
  const checkCredentials = () => {
20
- if (process.env.REMOTION_SKIP_AWS_CREDENTIALS_CHECK) {
21
+ if ((0, get_env_variable_1.getEnvVariable)('REMOTION_SKIP_AWS_CREDENTIALS_CHECK')) {
21
22
  return;
22
23
  }
23
- if (process.env.REMOTION_AWS_PROFILE || process.env.AWS_PROFILE) {
24
+ if ((0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_PROFILE') || (0, get_env_variable_1.getEnvVariable)('AWS_PROFILE')) {
24
25
  return;
25
26
  }
26
27
  if ((0, is_likely_to_have_aws_profile_1.isLikelyToHaveAwsProfile)()) {
27
28
  return;
28
29
  }
29
- if (!process.env.AWS_ACCESS_KEY_ID &&
30
- !process.env.REMOTION_AWS_ACCESS_KEY_ID) {
30
+ if (!(0, get_env_variable_1.getEnvVariable)('AWS_ACCESS_KEY_ID') &&
31
+ !(0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_ACCESS_KEY_ID')) {
31
32
  throw new Error(messageForVariable('AWS_ACCESS_KEY_ID or REMOTION_AWS_ACCESS_KEY_ID'));
32
33
  }
33
- if (!process.env.AWS_SECRET_ACCESS_KEY &&
34
- !process.env.REMOTION_AWS_SECRET_ACCESS_KEY) {
34
+ if (!(0, get_env_variable_1.getEnvVariable)('AWS_SECRET_ACCESS_KEY') &&
35
+ !(0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_SECRET_ACCESS_KEY')) {
35
36
  throw new Error(messageForVariable('AWS_SECRET_ACCESS_KEY or REMOTION_AWS_SECRET_ACCESS_KEY'));
36
37
  }
37
38
  };
@@ -2,50 +2,52 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getCredentials = void 0;
4
4
  const credential_providers_1 = require("@aws-sdk/credential-providers");
5
+ const get_env_variable_1 = require("./get-env-variable");
5
6
  const is_in_lambda_1 = require("./is-in-lambda");
6
7
  const getCredentials = () => {
7
8
  if ((0, is_in_lambda_1.isInsideLambda)()) {
8
9
  return undefined;
9
10
  }
10
- if (process.env.REMOTION_AWS_PROFILE) {
11
+ if ((0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_PROFILE')) {
11
12
  return (0, credential_providers_1.fromIni)({
12
- profile: process.env.REMOTION_AWS_PROFILE,
13
+ profile: (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_PROFILE'),
13
14
  });
14
15
  }
15
- if (process.env.REMOTION_AWS_ACCESS_KEY_ID &&
16
- process.env.REMOTION_AWS_SECRET_ACCESS_KEY &&
17
- process.env.REMOTION_AWS_SESSION_TOKEN) {
16
+ if ((0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_ACCESS_KEY_ID') &&
17
+ (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_SECRET_ACCESS_KEY') &&
18
+ (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_SESSION_TOKEN')) {
18
19
  return {
19
- accessKeyId: process.env.REMOTION_AWS_ACCESS_KEY_ID,
20
- secretAccessKey: process.env.REMOTION_AWS_SECRET_ACCESS_KEY,
21
- sessionToken: process.env.REMOTION_AWS_SESSION_TOKEN,
20
+ accessKeyId: (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_ACCESS_KEY_ID'),
21
+ secretAccessKey: (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_SECRET_ACCESS_KEY'),
22
+ sessionToken: (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_SESSION_TOKEN'),
22
23
  };
23
24
  }
24
- if (process.env.REMOTION_AWS_ACCESS_KEY_ID &&
25
- process.env.REMOTION_AWS_SECRET_ACCESS_KEY) {
25
+ if ((0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_ACCESS_KEY_ID') &&
26
+ (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_SECRET_ACCESS_KEY')) {
26
27
  return {
27
- accessKeyId: process.env.REMOTION_AWS_ACCESS_KEY_ID,
28
- secretAccessKey: process.env.REMOTION_AWS_SECRET_ACCESS_KEY,
28
+ accessKeyId: (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_ACCESS_KEY_ID'),
29
+ secretAccessKey: (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_SECRET_ACCESS_KEY'),
29
30
  };
30
31
  }
31
- if (process.env.AWS_PROFILE) {
32
+ if ((0, get_env_variable_1.getEnvVariable)('AWS_PROFILE')) {
32
33
  return (0, credential_providers_1.fromIni)({
33
- profile: process.env.AWS_PROFILE,
34
+ profile: (0, get_env_variable_1.getEnvVariable)('AWS_PROFILE'),
34
35
  });
35
36
  }
36
- if (process.env.AWS_ACCESS_KEY_ID &&
37
- process.env.AWS_SECRET_ACCESS_KEY &&
38
- process.env.AWS_SESSION_TOKEN) {
37
+ if ((0, get_env_variable_1.getEnvVariable)('AWS_ACCESS_KEY_ID') &&
38
+ (0, get_env_variable_1.getEnvVariable)('AWS_SECRET_ACCESS_KEY') &&
39
+ (0, get_env_variable_1.getEnvVariable)('AWS_SESSION_TOKEN')) {
39
40
  return {
40
- accessKeyId: process.env.AWS_ACCESS_KEY_ID,
41
- secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,
42
- sessionToken: process.env.AWS_SESSION_TOKEN,
41
+ accessKeyId: (0, get_env_variable_1.getEnvVariable)('AWS_ACCESS_KEY_ID'),
42
+ secretAccessKey: (0, get_env_variable_1.getEnvVariable)('AWS_SECRET_ACCESS_KEY'),
43
+ sessionToken: (0, get_env_variable_1.getEnvVariable)('AWS_SESSION_TOKEN'),
43
44
  };
44
45
  }
45
- if (process.env.AWS_ACCESS_KEY_ID && process.env.AWS_SECRET_ACCESS_KEY) {
46
+ if ((0, get_env_variable_1.getEnvVariable)('AWS_ACCESS_KEY_ID') &&
47
+ (0, get_env_variable_1.getEnvVariable)('AWS_SECRET_ACCESS_KEY')) {
46
48
  return {
47
- accessKeyId: process.env.AWS_ACCESS_KEY_ID,
48
- secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,
49
+ accessKeyId: (0, get_env_variable_1.getEnvVariable)('AWS_ACCESS_KEY_ID'),
50
+ secretAccessKey: (0, get_env_variable_1.getEnvVariable)('AWS_SECRET_ACCESS_KEY'),
49
51
  };
50
52
  }
51
53
  return undefined;
@@ -0,0 +1 @@
1
+ export declare const getEnvVariable: (name: string) => string | undefined;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getEnvVariable = void 0;
4
+ const getEnvVariable = (name) => {
5
+ if (typeof process !== 'undefined' &&
6
+ typeof process.env !== 'undefined' &&
7
+ process.env[name]) {
8
+ return process.env[name];
9
+ }
10
+ if (typeof Deno !== 'undefined' && Deno.env.has(name)) {
11
+ return Deno.env.get(name);
12
+ }
13
+ return undefined;
14
+ };
15
+ exports.getEnvVariable = getEnvVariable;
@@ -11,35 +11,36 @@ const client_1 = require("@remotion/serverless/client");
11
11
  const no_react_1 = require("remotion/no-react");
12
12
  const check_credentials_1 = require("./check-credentials");
13
13
  const get_credentials_1 = require("./get-credentials");
14
+ const get_env_variable_1 = require("./get-env-variable");
14
15
  const getCredentialsHash = ({ customCredentials, region, service, forcePathStyle, }) => {
15
16
  const hashComponents = {};
16
- if (process.env.REMOTION_SKIP_AWS_CREDENTIALS_CHECK) {
17
+ if ((0, get_env_variable_1.getEnvVariable)('REMOTION_SKIP_AWS_CREDENTIALS_CHECK')) {
17
18
  hashComponents.credentials = {
18
19
  credentialsSkipped: true,
19
20
  };
20
21
  }
21
- else if (process.env.REMOTION_AWS_PROFILE) {
22
+ else if ((0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_PROFILE')) {
22
23
  hashComponents.credentials = {
23
- awsProfile: process.env.REMOTION_AWS_PROFILE,
24
+ awsProfile: (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_PROFILE'),
24
25
  };
25
26
  }
26
- else if (process.env.REMOTION_AWS_ACCESS_KEY_ID &&
27
- process.env.REMOTION_AWS_SECRET_ACCESS_KEY) {
27
+ else if ((0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_ACCESS_KEY_ID') &&
28
+ (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_SECRET_ACCESS_KEY')) {
28
29
  hashComponents.credentials = {
29
- accessKeyId: process.env.REMOTION_AWS_ACCESS_KEY_ID,
30
- secretAccessKey: process.env.REMOTION_AWS_SECRET_ACCESS_KEY,
30
+ accessKeyId: (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_ACCESS_KEY_ID'),
31
+ secretAccessKey: (0, get_env_variable_1.getEnvVariable)('REMOTION_AWS_SECRET_ACCESS_KEY'),
31
32
  };
32
33
  }
33
- else if (process.env.AWS_PROFILE) {
34
+ else if ((0, get_env_variable_1.getEnvVariable)('AWS_PROFILE')) {
34
35
  hashComponents.credentials = {
35
- awsProfile: process.env.AWS_PROFILE,
36
+ awsProfile: (0, get_env_variable_1.getEnvVariable)('AWS_PROFILE'),
36
37
  };
37
38
  }
38
- else if (process.env.AWS_ACCESS_KEY_ID &&
39
- process.env.AWS_SECRET_ACCESS_KEY) {
39
+ else if ((0, get_env_variable_1.getEnvVariable)('AWS_ACCESS_KEY_ID') &&
40
+ (0, get_env_variable_1.getEnvVariable)('AWS_SECRET_ACCESS_KEY')) {
40
41
  hashComponents.credentials = {
41
- accessKeyId: process.env.AWS_ACCESS_KEY_ID,
42
- secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,
42
+ accessKeyId: (0, get_env_variable_1.getEnvVariable)('AWS_ACCESS_KEY_ID'),
43
+ secretAccessKey: (0, get_env_variable_1.getEnvVariable)('AWS_SECRET_ACCESS_KEY'),
43
44
  };
44
45
  }
45
46
  hashComponents.customCredentials = customCredentials;
@@ -98,8 +99,9 @@ const getServiceClient = ({ region, service, customCredentials, forcePathStyle,
98
99
  : undefined,
99
100
  endpoint: customCredentials.endpoint,
100
101
  requestHandler: lambdaOptions,
102
+ forcePathStyle: customCredentials.forcePathStyle,
101
103
  })
102
- : process.env.REMOTION_SKIP_AWS_CREDENTIALS_CHECK
104
+ : (0, get_env_variable_1.getEnvVariable)('REMOTION_SKIP_AWS_CREDENTIALS_CHECK')
103
105
  ? new Client({
104
106
  region,
105
107
  requestHandler: lambdaOptions,
@@ -109,7 +111,7 @@ const getServiceClient = ({ region, service, customCredentials, forcePathStyle,
109
111
  credentials: (0, get_credentials_1.getCredentials)(),
110
112
  requestHandler: lambdaOptions,
111
113
  });
112
- if (process.env.REMOTION_DISABLE_AWS_CLIENT_CACHE) {
114
+ if ((0, get_env_variable_1.getEnvVariable)('REMOTION_DISABLE_AWS_CLIENT_CACHE')) {
113
115
  return client;
114
116
  }
115
117
  _clients[key] = client;
@@ -4,6 +4,7 @@ exports.isLikelyToHaveAwsProfile = void 0;
4
4
  const fs_1 = require("fs");
5
5
  const os_1 = require("os");
6
6
  const path_1 = require("path");
7
+ const get_env_variable_1 = require("./get-env-variable");
7
8
  const homeDirCache = {};
8
9
  const getHomeDirCacheKey = () => {
9
10
  // geteuid is only available on POSIX platforms (i.e. not Windows or Android).
@@ -28,10 +29,15 @@ const getHomeDir = () => {
28
29
  const ENV_CREDENTIALS_PATH = 'AWS_SHARED_CREDENTIALS_FILE';
29
30
  // Logic is inline to https://github.com/smithy-lang/smithy-typescript/blob/main/packages/shared-ini-file-loader/src/getCredentialsFilepath.ts#L7
30
31
  const pathOfCredentialsFile = () => {
31
- return (process.env[ENV_CREDENTIALS_PATH] ||
32
+ return ((0, get_env_variable_1.getEnvVariable)(ENV_CREDENTIALS_PATH) ||
32
33
  (0, path_1.join)(getHomeDir(), '.aws', 'credentials'));
33
34
  };
34
35
  const isLikelyToHaveAwsProfile = () => {
36
+ // Supabase uses Deno and does not support readFile
37
+ // https://github.com/remotion-dev/remotion/issues/4844
38
+ if (typeof Deno !== 'undefined') {
39
+ return false;
40
+ }
35
41
  const credentialsFile = pathOfCredentialsFile();
36
42
  try {
37
43
  const content = (0, fs_1.readFileSync)(credentialsFile, 'utf-8');
package/package.json CHANGED
@@ -3,32 +3,31 @@
3
3
  "url": "https://github.com/remotion-dev/remotion/tree/main/packages/lambda"
4
4
  },
5
5
  "name": "@remotion/lambda",
6
- "version": "4.0.257",
6
+ "version": "4.0.259",
7
7
  "description": "Render Remotion videos on AWS Lambda",
8
8
  "main": "dist/index.js",
9
9
  "sideEffects": false,
10
10
  "author": "Jonny Burger <jonny@remotion.dev>",
11
11
  "license": "MIT",
12
12
  "dependencies": {
13
- "@aws-sdk/client-cloudwatch-logs": "3.734.0",
14
- "@aws-sdk/client-iam": "3.734.0",
15
- "@aws-sdk/client-lambda": "3.734.0",
16
- "@aws-sdk/client-s3": "3.734.0",
17
- "@aws-sdk/client-service-quotas": "3.734.0",
18
- "@aws-sdk/client-sts": "3.734.0",
19
- "@aws-sdk/credential-providers": "3.734.0",
20
- "@aws-sdk/lib-storage": "3.734.0",
21
- "@aws-sdk/s3-request-presigner": "3.734.0",
13
+ "@aws-sdk/client-cloudwatch-logs": "3.738.0",
14
+ "@aws-sdk/client-iam": "3.738.0",
15
+ "@aws-sdk/client-lambda": "3.738.0",
16
+ "@aws-sdk/client-s3": "3.738.0",
17
+ "@aws-sdk/client-service-quotas": "3.738.0",
18
+ "@aws-sdk/client-sts": "3.738.0",
19
+ "@aws-sdk/credential-providers": "3.738.0",
20
+ "@aws-sdk/lib-storage": "3.738.0",
21
+ "@aws-sdk/s3-request-presigner": "3.738.0",
22
22
  "@smithy/abort-controller": "3.1.1",
23
23
  "mime-types": "2.1.34",
24
24
  "zod": "3.22.3",
25
- "@remotion/bundler": "4.0.257",
26
- "@remotion/serverless": "4.0.257",
27
- "@remotion/renderer": "4.0.257",
28
- "@remotion/cli": "4.0.257",
29
- "@remotion/streaming": "4.0.257",
30
- "@remotion/studio-server": "4.0.257",
31
- "remotion": "4.0.257"
25
+ "@remotion/bundler": "4.0.259",
26
+ "@remotion/cli": "4.0.259",
27
+ "@remotion/streaming": "4.0.259",
28
+ "remotion": "4.0.259",
29
+ "@remotion/serverless": "4.0.259",
30
+ "@remotion/renderer": "4.0.259"
32
31
  },
33
32
  "devDependencies": {
34
33
  "@types/express": "^5.0.0",
@@ -40,12 +39,12 @@
40
39
  "next": "15.1.2",
41
40
  "pureimage": "0.4.13",
42
41
  "zip-lib": "^0.7.2",
43
- "@remotion/bundler": "4.0.257",
44
- "@remotion/compositor-linux-arm64-gnu": "4.0.257",
45
- "@remotion/eslint-config-internal": "4.0.257"
42
+ "@remotion/bundler": "4.0.259",
43
+ "@remotion/compositor-linux-arm64-gnu": "4.0.259",
44
+ "@remotion/eslint-config-internal": "4.0.259"
46
45
  },
47
46
  "peerDependencies": {
48
- "@remotion/bundler": "4.0.257"
47
+ "@remotion/bundler": "4.0.259"
49
48
  },
50
49
  "publishConfig": {
51
50
  "access": "public"
Binary file