-
Notifications
You must be signed in to change notification settings - Fork 156
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
Support of scientific notation #209
Comments
@Kukunin Having same issue 2 years later, what did you do to solve this? Thanks! |
For anyone getting the same issue, apparently BN.js throws from 1e+21 and above, I solved it using the following function:
|
Need fix for this |
I would also like to be able to do BigNumber.from('1e27'). |
@samlaf this did the job for me 2 years back, is it not working now? |
new BN( <BN: 1d42aea2879f2e44dea5a13ae3465277b06749ce90c777839e74404a7e8000000000000000000000000> |
Nice @june07 , but still think this should be hidden inside the library. Why do I need this ugly code in my user code? |
## **Description** - Unpin and dedupe `ethereumjs-util` and `ethereumjs-abi` while staying on legacy v6 - Replace `import { BN } from 'ethereumjs-util'` with importing `BN` explicitly from either `bn.js@4` or `bn.js@5` - Mixing the two is not safe and can cause breakage. - [Some on why this is A Bad Thing](ethereumjs/ethereumjs-util#250) - We don't get complete and correct typings with importing the old re-export - This adds both v4 and v5 as explicit dependencies - ideally v4 will be removed as transition to v5 concludes - Add EIP-1191 address checksum algorithm support for `toChecksumAddress()` - Unblock relying on the ancient and deprecated `[email protected]` - [`ethereumjs-util` changelog](https://github.com/ethereumjs/ethereumjs-util/blob/master/CHANGELOG.md) - [`[email protected]`](ethereumjs/ethereumjs-util@v6.1.0...v6.2.0) ## **Related issues** - indutny/bn.js#209 - indutny/bn.js#295 - #12010 #### Blocking - #11932 - #12043 - #11968 ## **Manual testing steps** ## **Screenshots/Recordings** ### **Before** ### **After** ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: Nicolas MASSART <[email protected]> Co-authored-by: Nico MASSART <[email protected]>
I believe that bn.js should support scientific notation for big numbers: a number
5e+21
or a string"5e+21"
or both.Current situation:
I don't know the reasons behind the assertion of big numbers, but at least it can support scientific notation as a string
The text was updated successfully, but these errors were encountered: