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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions