Skip to content

[JS] Better BigInt compatibility check #102

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

Open
asfimport opened this issue Feb 20, 2021 · 1 comment
Open

[JS] Better BigInt compatibility check #102

asfimport opened this issue Feb 20, 2021 · 1 comment
Labels
Type: enhancement New feature or request

Comments

@asfimport
Copy link

See: apache/arrow#9110

Check for whether BigInt64ArrayAvailable and BigUint64ArrayAvailable are available, rather than just BigIntAvailable. Recent versions of JavaScriptCore/WebKit in Safari support BigInt but do not support BigInt64Array, and so anything that relies on BigInt64Array will fail despite BigIntAvailable being true.

The manifestation of this issue can be seen when trying to run the following within Safari on a table that contains bigints:

RecordBatchJSONWriter.writeAll(table).toString(true)

message: "BigUint64Array is not available in this environment"
  BigUint64ArrayUnavailableError
  BigUint64ArrayUnavailable
  bignumToString
  bigNumsToStrings
  generatorResume@[native code]
  performIteration@[native code]
  visitInt
  visit
  map@[native code]
  recordBatchToJSON
  close
  finish
  global code

See also: https://bugs.webkit.org/show_bug.cgi?id=190800

Reporter: Diana Clarke / @dianaclarke

PRs and other links:

Note: This issue was originally created as ARROW-11706. Please see the migration documentation for further details.

@asfimport
Copy link
Author

Dominik Moritz / @domoritz:
I think this can be closed, no?

@assignUser assignUser transferred this issue from apache/arrow May 26, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant