Skip to content

Request for ETA on New Release Supporting Axios 1.x Version #349

@Rupanshy

Description

@Rupanshy

The nano library is currently incompatible with [email protected] because it uses the CommonJS require('axios') syntax in lib/nano.js. Since [email protected] has transitioned to ES Modules (ESM), this usage results in runtime errors when attempting to use the library with [email protected].

Affected Code

In lib/nano.js:

const axios = require('axios');
This usage causes the following error when running the code with [email protected]:

Error [ERR_REQUIRE_ESM]: require() of ES Module is not supported

Steps to Reproduce
Install nano and [email protected] in a Node.js project:
npm install nano [email protected]
Import or require nano in your code:
const nano = require('nano');
Attempt to use nano to make an HTTP request.
Observe the runtime error indicating incompatibility with ES Modules.

Expected Behavior
nano should support [email protected] by replacing the require('axios') syntax with the ES Modules import syntax:

import axios from 'axios';

Proposed Solution
Update all instances of require('axios') in the codebase to use import:
import axios from 'axios';
Update the package.json file to specify a peer dependency on axios@^1.0.0 to ensure compatibility:
"peerDependencies": {
"axios": "^1.0.0"
}

Additional Context
[email protected] includes critical security updates and new features, making its adoption essential for projects aiming to maintain secure and modern applications.
The current incompatibility blocks projects from upgrading to [email protected] if they depend on nano.

Request
Please update the nano codebase to support [email protected]. If needed, I am happy to assist with additional details or contribute a pull request to resolve the issue.

Environment
Node.js Version: [e.g., 16.x or 18.x]
Axios Version: 1.6.3
nano Version: [e.g., 9.x]
Operating System: [e.g., macOS, Windows, or Linux]

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