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 axios@1.x because it uses the CommonJS require('axios') syntax in lib/nano.js. Since axios@1.x has transitioned to ES Modules (ESM), this usage results in runtime errors when attempting to use the library with axios@1.x.

Affected Code

In lib/nano.js:

const axios = require('axios');
This usage causes the following error when running the code with axios@1.x:

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

Steps to Reproduce
Install nano and axios@1.x in a Node.js project:
npm install nano axios@1.6.3
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 axios@1.x 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
axios@1.x 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 axios@1.x if they depend on nano.

Request
Please update the nano codebase to support axios@1.x. 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
    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