-
-
Notifications
You must be signed in to change notification settings - Fork 17
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
feat: Node.js buffer
built-in module implementation
#1026
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1026 +/- ##
==========================================
+ Coverage 54.62% 55.10% +0.47%
==========================================
Files 320 323 +3
Lines 10159 10263 +104
Branches 1760 1801 +41
==========================================
+ Hits 5549 5655 +106
+ Misses 4078 4042 -36
- Partials 532 566 +34
Flags with carried forward coverage won't be shown. Click here to find out more.
... and 3 files with indirect coverage changes Continue to review full report in Codecov by Sentry.
|
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Summary
Adds support for the
buffer
built-in module from the Node.js API, with a few caveats:Blob.arrayBuffer()
is not yet functional since we can't createArrayBuffer
objects from the host (it is an internal GraalJS type).Blob.stream()
does not work since theReadableStream
type is not implemented yet.buffer.isUtf8
andbuffer.isAscii
use a non-vectorized implementation that may be noticeably slower than in Node.js for large payloads.buffer.transcode
uses a very simple implementation that will degrade performance when used with large payloads.Note: the module APIs will probably break in native mode due to the lack of proxy implementations, this will be fixed before the PR is ready to merge.