Skip to content

Tsx fix breaks aws-sdk import "TypeError: AWS.SequentialExecutor is not a constructor" #75

@CorentinDoue

Description

@CorentinDoue

Setup :

  • node 22
  • yarn 1.18.0
  • osls v3.51.2
  • using serverless.ts (not yaml)
  • using plugin serverless-better-credentials: v2.0.1

When I try to deploy, aws-sdk fail to be imported

yarn deploy --stage dev
$ serverless deploy --stage dev
      Environment: darwin, node 22.15.1, framework 3.51.2
      Docs:        github.com/oss-serverless/serverless

      Error:
      TypeError: AWS.SequentialExecutor is not a constructor
          at Object.<anonymous> (/Users/cdoue/www-dev/theodo/safetracker/node_modules/aws-sdk/lib/core.js:105:14)
          at Module._compile (node:internal/modules/cjs/loader:1730:14)
          at node:internal/modules/cjs/loader:1895:10
          at Object.transformer [as .js] (/Users/cdoue/www-dev/theodo/safetracker/node_modules/tsx/dist/register-D46fvsV_.cjs:3:611)
          at Module.load (node:internal/modules/cjs/loader:1465:32)
          at Function._load (node:internal/modules/cjs/loader:1282:12)
          at TracingChannel.traceSync (node:diagnostics_channel:322:14)
          at wrapModuleLoad (node:internal/modules/cjs/loader:235:24)
          at Module.require (node:internal/modules/cjs/loader:1487:12)
          at require (node:internal/modules/helpers:135:16)
          at Object.<anonymous> (/Users/cdoue/www-dev/theodo/safetracker/node_modules/aws-sdk/lib/aws.js:3:11)
          at Module._compile (node:internal/modules/cjs/loader:1730:14)
          at node:internal/modules/cjs/loader:1895:10
          at Object.transformer [as .js] (/Users/cdoue/www-dev/theodo/safetracker/node_modules/tsx/dist/register-D46fvsV_.cjs:3:611)
          at Module.load (node:internal/modules/cjs/loader:1465:32)
          at Function._load (node:internal/modules/cjs/loader:1282:12)
          at TracingChannel.traceSync (node:diagnostics_channel:322:14)
          at wrapModuleLoad (node:internal/modules/cjs/loader:235:24)
          at Module.require (node:internal/modules/cjs/loader:1487:12)
          at require (node:internal/modules/helpers:135:16)
          at Object.<anonymous> (/Users/cdoue/www-dev/theodo/safetracker/node_modules/osls/lib/aws/sdk-v2.js:7:18)
          at Module._compile (node:internal/modules/cjs/loader:1730:14)
          at node:internal/modules/cjs/loader:1895:10
          at Object.transformer [as .js] (/Users/cdoue/www-dev/theodo/safetracker/node_modules/tsx/dist/register-D46fvsV_.cjs:3:611)
          at Module.load (node:internal/modules/cjs/loader:1465:32)
          at Function._load (node:internal/modules/cjs/loader:1282:12)
          at TracingChannel.traceSync (node:diagnostics_channel:322:14)
          at wrapModuleLoad (node:internal/modules/cjs/loader:235:24)
          at Module.require (node:internal/modules/cjs/loader:1487:12)
          at require (node:internal/modules/helpers:135:16)
          at Object.<anonymous> (/Users/cdoue/www-dev/theodo/safetracker/node_modules/osls/lib/plugins/aws/provider.js:3:13)
          at Module._compile (node:internal/modules/cjs/loader:1730:14)
          at node:internal/modules/cjs/loader:1895:10
          at Object.transformer [as .js] (/Users/cdoue/www-dev/theodo/safetracker/node_modules/tsx/dist/register-D46fvsV_.cjs:3:611)
          at Module.load (node:internal/modules/cjs/loader:1465:32)
          at Function._load (node:internal/modules/cjs/loader:1282:12)
          at TracingChannel.traceSync (node:diagnostics_channel:322:14)
          at wrapModuleLoad (node:internal/modules/cjs/loader:235:24)
          at Module.require (node:internal/modules/cjs/loader:1487:12)
          at require (node:internal/modules/helpers:135:16)
          at Object.<anonymous> (/Users/cdoue/www-dev/theodo/safetracker/node_modules/osls/lib/plugins/index.js:20:3)
          at Module._compile (node:internal/modules/cjs/loader:1730:14)
          at node:internal/modules/cjs/loader:1895:10
          at Object.transformer [as .js] (/Users/cdoue/www-dev/theodo/safetracker/node_modules/tsx/dist/register-D46fvsV_.cjs:3:611)
          at Module.load (node:internal/modules/cjs/loader:1465:32)
          at Function._load (node:internal/modules/cjs/loader:1282:12)
          at TracingChannel.traceSync (node:diagnostics_channel:322:14)
          at wrapModuleLoad (node:internal/modules/cjs/loader:235:24)
          at Module.require (node:internal/modules/cjs/loader:1487:12)
          at require (node:internal/modules/helpers:135:16)
          at PluginManager.loadAllPlugins (/Users/cdoue/www-dev/theodo/safetracker/node_modules/osls/lib/classes/plugin-manager.js:128:5)
          at Serverless.init (/Users/cdoue/www-dev/theodo/safetracker/node_modules/osls/lib/serverless.js:148:30)
          at async /Users/cdoue/www-dev/theodo/safetracker/node_modules/osls/scripts/serverless.js:508:7
error Command failed with exit code 1.

Here is the file in aws-sdk:

// aws-sdk/lib/core.js

var AWS = { util: require('./util') };

AWS.events = new AWS.SequentialExecutor();

It looks fine, I think the problem is the way it is imported.

Downgrading to osls v3.51.1 fix the issue so I suppose it's created by #68

@zirkelc can you look into this ?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions