Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

objectSupport plugin causes an error when null is passed to dayjs function #2277

Labels

Comments

@DeskYT
Copy link

DeskYT commented Apr 7, 2023

Describe the bug
There is an bug, which causes an error Cannot read properties of null (reading 'constructor') when null is passed to dayjs function while objectSupport plugin is enabled e.g. dayjs(null)

Expected behavior
dayjs function should execute and create date object with Invalid Date.

Information
Day.js Version 1.11.7
OS: Ubuntu Linux
Browser - chrome

Fix

&& !proto.$utils().u(obj) && (obj.constructor.name === 'Object')

Change this line to && !proto.$utils().u(obj) && obj !== null && (obj.constructor.name === 'Object');

@DeskYT DeskYT changed the title objectSupport plugin bug objectSupport plugin causes error when null is passed to dayjs function Apr 7, 2023
@DeskYT DeskYT changed the title objectSupport plugin causes error when null is passed to dayjs function objectSupport plugin causes an error when null is passed to dayjs function Apr 7, 2023
@ypresto
Copy link
Contributor

ypresto commented Jun 5, 2023

ref: c9370ea

titanism added a commit to titanism/dayjs that referenced this issue Jun 18, 2023
…s function (closes iamkun#2277)

This is a fix per iamkun#2277, discovered through usage with `twilio` npm package which has this same conflict.
@titanism
Copy link
Contributor

PR opened at #2342

Ping @iamkun please merge/release with semver patch, thank you 🙏

@iamkun iamkun closed this as completed in 89bf31c Jun 22, 2023
github-actions bot pushed a commit that referenced this issue Jul 1, 2023
## [1.11.9](v1.11.8...v1.11.9) (2023-07-01)

### Bug Fixes

* Add null to min and max plugin return type ([#2355](#2355)) ([62d9042](62d9042))
* check if null passed to objectSupport parser ([#2175](#2175)) ([013968f](013968f))
* dayjs.diff improve performance ([#2244](#2244)) ([33c80e1](33c80e1))
* dayjs(null) throws error, not return dayjs object as invalid date ([#2334](#2334)) ([c79e2f5](c79e2f5))
* objectSupport plugin causes an error when null is passed to dayjs function (closes [#2277](#2277)) ([#2342](#2342)) ([89bf31c](89bf31c))
* Optimize format method ([#2313](#2313)) ([1fe1b1d](1fe1b1d))
* update Duration plugin add/subtract take into account days in month ([#2337](#2337)) ([3b1060f](3b1060f))
* update MinMax plugin 1. ignore the 'null' in args 2. return the only one arg ([#2330](#2330)) ([3c2c6ee](3c2c6ee))
@github-actions
Copy link

github-actions bot commented Jul 1, 2023

🎉 This issue has been resolved in version 1.11.9 🎉

The release is available on:

Your semantic-release bot 📦🚀

BePo65 pushed a commit to BePo65/dayjs that referenced this issue Sep 20, 2023
## [1.11.9](iamkun/dayjs@v1.11.8...v1.11.9) (2023-07-01)

### Bug Fixes

* Add null to min and max plugin return type ([iamkun#2355](iamkun#2355)) ([62d9042](iamkun@62d9042))
* check if null passed to objectSupport parser ([iamkun#2175](iamkun#2175)) ([013968f](iamkun@013968f))
* dayjs.diff improve performance ([iamkun#2244](iamkun#2244)) ([33c80e1](iamkun@33c80e1))
* dayjs(null) throws error, not return dayjs object as invalid date ([iamkun#2334](iamkun#2334)) ([c79e2f5](iamkun@c79e2f5))
* objectSupport plugin causes an error when null is passed to dayjs function (closes [iamkun#2277](iamkun#2277)) ([iamkun#2342](iamkun#2342)) ([89bf31c](iamkun@89bf31c))
* Optimize format method ([iamkun#2313](iamkun#2313)) ([1fe1b1d](iamkun@1fe1b1d))
* update Duration plugin add/subtract take into account days in month ([iamkun#2337](iamkun#2337)) ([3b1060f](iamkun@3b1060f))
* update MinMax plugin 1. ignore the 'null' in args 2. return the only one arg ([iamkun#2330](iamkun#2330)) ([3c2c6ee](iamkun@3c2c6ee))
BePo65 pushed a commit to BePo65/dayjs that referenced this issue Sep 23, 2023
## [1.11.9](iamkun/dayjs@v1.11.8...v1.11.9) (2023-07-01)

### Bug Fixes

* Add null to min and max plugin return type ([iamkun#2355](iamkun#2355)) ([62d9042](iamkun@62d9042))
* check if null passed to objectSupport parser ([iamkun#2175](iamkun#2175)) ([013968f](iamkun@013968f))
* dayjs.diff improve performance ([iamkun#2244](iamkun#2244)) ([33c80e1](iamkun@33c80e1))
* dayjs(null) throws error, not return dayjs object as invalid date ([iamkun#2334](iamkun#2334)) ([c79e2f5](iamkun@c79e2f5))
* objectSupport plugin causes an error when null is passed to dayjs function (closes [iamkun#2277](iamkun#2277)) ([iamkun#2342](iamkun#2342)) ([89bf31c](iamkun@89bf31c))
* Optimize format method ([iamkun#2313](iamkun#2313)) ([1fe1b1d](iamkun@1fe1b1d))
* update Duration plugin add/subtract take into account days in month ([iamkun#2337](iamkun#2337)) ([3b1060f](iamkun@3b1060f))
* update MinMax plugin 1. ignore the 'null' in args 2. return the only one arg ([iamkun#2330](iamkun#2330)) ([3c2c6ee](iamkun@3c2c6ee))
ohsory1324 pushed a commit to ohsory1324/dayjs that referenced this issue Dec 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment