Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

TypeError: validator.isValid is not a function

Open
#927 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
10/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
express, javascript, node.js, typescript

Research direction

Start with the linked issue comment and the referenced authentication.services.ts line, then inspect the jsonwebtoken.sign call alongside the lodash import and the reported package versions. The issue states that the problem was found and fixed; done would require confirming that resolution and documenting or testing the dependency interaction.

Written by the indexing model from the issue text.

Description

ISSUE WAS FOUND AND FIXED - LOOK HERE https://github.com/auth0/node-jsonwebtoken/issues/927#issuecomment-1694701319

Description

Basically whenever I try to run jsonwebtoken.sign() in typescript it gives me an error. Running the code in a simple javascript code runner works perfectly fine.

I have been trying to debug this for a couple of days now, can't seem to figure it out.

Reproduction

Link to code I am working with: https://github.com/tonykaram1993/typescript-express-starter/blob/e6975e805f7f5b332e389d723d63a5641959ce15/src/services/authentication.services.ts#L64

The error log and a couple of log messages above it so you are able to see what is passed:

[watch] 
[watch] 
[watch] 2:42:24 PM - Found 0 errors. Watching for file changes.
[server] info: Server is running at https://localhost:5000
[server] info: Connected to MongoDB! [mongodb://localhost:27017/typescript]
[server] TKCL - JWT_TOKEN_SECRET: secretsecretsecretsecretsecretsecretsecret
[server] TKCL - data: {
[server]   email: 'john@thedoes.com',
[server]   passwordHash: '$2b$10$E.w9gKA4KsZU1LdN0KN99eCvAyteG/.xboV.ppGoh3gmiVWsJPyIi',
[server]   salt: '$2b$10$E.w9gKA4KsZU1LdN0KN99e',
[server]   _id: new ObjectId("64cf8723a2210d51f1731e86"),
[server]   __v: 0
[server] }
[server] TKCL - settingsConfig.AUTHENTICATION.jwtTokenExpiry: 1h
[server] POST /authentication/signup 500 72.621 ms - 1051
[server] POST /authentication/signup 500 72.621 ms - 1051
[server] TypeError: validator.isValid is not a function
[server]     at /Users/tk/Repositories/typescript-starter/node_modules/jsonwebtoken/sign.js:49:22
[server]     at Array.forEach (<anonymous>)
[server]     at validate (/Users/tk/Repositories/typescript-starter/node_modules/jsonwebtoken/sign.js:41:6)
[server]     at validatePayload (/Users/tk/Repositories/typescript-starter/node_modules/jsonwebtoken/sign.js:60:10)
[server]     at Object.module.exports [as sign] (/Users/tk/Repositories/typescript-starter/node_modules/jsonwebtoken/sign.js:138:7)
[server]     at Object.generateJwtToken (/Users/tk/Repositories/typescript-starter/dist/src/services/authentication.services.js:31:45)
[server]     at signup (/Users/tk/Repositories/typescript-starter/dist/src/controllers/authentication.controllers.js:29:56)
[server]     at processTicksAndRejections (node:internal/process/task_queues:96:5)
Environment

Library version:

"@types/jsonwebtoken": "^9.0.2",
"jsonwebtoken": "^9.0.1",

Express version:

"express": "^4.18.2",
    "@types/express": "^4.17.14",

Running macOs 13.4.1 on MacBook Pro 16" M1 Pro.

Happy to answer any questions.

EDIT: an update about a comment i left below https://github.com/auth0/node-jsonwebtoken/issues/927#issuecomment-1694451532

Alright, so I have an update regarding this.

I have been debugging for a week now (on and off), and I found something.

When I remove the following line https://github.com/tonykaram1993/typescript-express-starter/blob/feature/authentication/src/services/authentication.services.ts#L3C1-L3C38 - basically stop using lodash in the file where jsonwebtoken.sign is called, everything works totally fine. Everything also works when I import lodash but not use it in the file.

So importing lodash breaks jsonwebtoken? Did I do something wrong that I need to change?

Dominant language
JavaScript
Stars
18.2k
Forks
1.3k
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from auth0/node-jsonwebtoken

All issues in auth0/node-jsonwebtoken

Similar issues

More JavaScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.