profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/jasnell/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.
James M Snell jasnell @cloudflare Clovis, California http://jasnell.me "I can't breathe" #46 #blacklivesmatter

jasnell/activitystrea.ms 141

Activity Streams 2.0 for Node.js (this package is not actively maintained, if you'd like to help, let me know)

Fishrock123/bob 73

🚰 binary data "streams+" via data producers, data consumers, and pull flow.

jasnell/awaitable-timers 21

Polyfill of Node.js awaitable timers

davidmarkclements/proffer 12

Realtime V8 Tick Profiler

jasnell/activitystreams 5

Activity Streams 2.0 Java Reference Implementation

jasnell/activitystreams.jsonld 5

http://asjsonld.mybluemix.net

addaleax/node 4

Node.js JavaScript runtime :sparkles::turtle::rocket::sparkles:

jasnell/as2-schema 4

activitystrea.ms schema.org extensions

issue commentnodejs/node

Future of streams

@ronag ... I will be doing some benchmarking but I'm not sure exactly when I'll be getting to it. I want to go back through the impl and find optimization points that don't sacrifice spec compliance.

ronag

comment created time in 2 days

push eventjasnell/sockets-api

James M Snell

commit sha d0c05e673ba29ea3af3b0048d51cc18158069d33

Iteration

view details

push time in 2 days

push eventjasnell/sockets-api

James M Snell

commit sha 211b7270dba0688f36e7e2f51c3d80a05f380a44

Initial

view details

push time in 2 days

create barnchjasnell/sockets-api

branch : main

created branch time in 2 days

created repositoryjasnell/sockets-api

created time in 2 days

pull request commentnodejs/node

fs: add `Blob` methods to `FileHandle`

To be honest, I'm not sold on the idea of adding these methods to FileHandle at all. Alternatively, we can add FileHandle to the list of types accepted by the stream/consumers utilities, which would likely be more consistent.

aduh95

comment created time in 3 days

PullRequestReviewEvent

Pull request review commentnodejs/node

url,lib: pass urlsearchparams-constructor.any.js

 runner.setScriptModifier((obj) => {     // created via `document.createElement`. So we need to ignore them and just     // test `URL`.     obj.code = obj.code.replace(/\["url", "a", "area"\]/, '[ "url" ]');+  } else if (obj.filename.includes('urlsearchparams-constructor.any.js')) {+    // Ignore test named `URLSearchParams constructor, FormData.` because we do+    // not have `FormData`.

If we decided to add FormData later someone might miss removing this. It would be worthwhile making this replacement dependent on whether FormData is undefined.

XadillaX

comment created time in 3 days

PullRequestReviewEvent

issue commentnodejs/TSC

Node.js Technical Steering Committee (TSC) Meeting 2021-09-15

Unable to join today.

mhdawson

comment created time in 4 days

PullRequestReviewEvent
PullRequestReviewEvent
PullRequestReviewEvent
PullRequestReviewEvent

pull request commentpiscinajs/piscina

feat: expose `maxThreads` and `minThreads` out of Piscina instance

Not sure. I should have time to take a look tomorrow!

MetCoder95

comment created time in 5 days

Pull request review commentnodejs/node

http: remove CRLF variable

 module.exports = {   _checkIsHttpToken: checkIsHttpToken,   chunkExpression: /(?:^|\W)chunked(?:$|\W)/i,   continueExpression: /(?:^|\W)100-continue(?:$|\W)/i,-  CRLF: '\r\n',

Given that this module is semi-public, we shouldn't remove this property here without a proper deprecation.

shfshanyue

comment created time in 5 days

PullRequestReviewEvent
PullRequestReviewEvent
PullRequestReviewEvent
PullRequestReviewEvent
PullRequestReviewEvent
PullRequestReviewEvent

issue commentnodejs/node

Add convenience method to read JSON file

@jimmywarting:

i experimented with stream consumer a bit... i think it could be useful if blob accepted a optional mime type as well (just a suggestion)

Yeah, let's take that to a separate issue. I think adding an options argument to each of the convenience consumers makes sense.

sindresorhus

comment created time in 6 days

issue commentnodejs/node

Add convenience method to read JSON file

@sindresorhus

I didn't want this to dilute the proposal, but one future enhancement to this could be to make the JSON parsing fully async by doing it in a worker.

You could do this fairly easily with FileHandle and the new stream/consumers... e.g. open the file as a FileHandle, transfer that to a Worker, use await json(fh.createWebStream()) and postMessage the results back. It would be fairly simple.

sindresorhus

comment created time in 6 days

issue commentnodejs/node

[Tracking Issue] New net/tls/udp API

WebTransport is 100% on my radar both here and in Cloudflare Workers. There are some caveats, however:

  • WebTransport is currently defined in terms of HTTP3, while what we're discussing here is raw TCP, TLS-over-TCP, and UDP. It's not even yet certain if WebTransport will be usable for other QUIC-based protocols given that the API does not specify any mechanism for identifying an ALPN.
  • WebTransport's configuration options are very limited. There are two, allowPooling and serverCertificateFingerprints. These alone are not sufficient to serve as an alternative to Node.js' rich set of configuration options for TCP, UDP, and TLS, and it's not at all clear whether extending WebTransportOptions to allow for additional options is going to be permitted.
  • WebTransport is currently limited to the use of ReadableStream and WritableStream as the primary data interface. As has been pointed out in the discussion above, these are not ideal from a performance point of view and Node.js (at least) would like to have other options for implementing a more performant path in addition to WHATWG streams.

That all said, while I go about designing the proposed API, WebTransport is very much a consideration and a strong influencer in all of this.

jasnell

comment created time in 6 days

issue commentnodejs/node

Add convenience method to read JSON file

In the stream/consumers module that currently has not yet gone out in a release because it hasn't yet been backported to 16.x or 14.x (there's a small smever-major that it currently depends on)... there is a json() method that takes either a ReadableStream, stream.Readable or AsyncIterator as input...

so... you can do something like

await json(fs.createReadStream('...'));

And it should just work.

sindresorhus

comment created time in 6 days

issue commentnodejs/node

[Tracking Issue] New net/tls/udp API

In any case I would still caution to first try to implement this API on top of language level APIs like AsyncIterator and not web APIs.

As I said previously: https://github.com/nodejs/node/issues/40067#issuecomment-918193506

Note that I have not said anything here yet about the actual API design other than this. I'd suggest that providing feedback on the API design in advance of actually seeing that design is quite premature.

Let's start with a draft spec and go from there. I hope to have an initial draft by end of this week.

jasnell

comment created time in 6 days

issue commentnodejs/node

[Tracking Issue] New net/tls/udp API

Not blocked, just going slow. I've already started looking at that and have started trying to open a dialog with the author.

jasnell

comment created time in 6 days

issue commentnodejs/node

[Tracking Issue] New net/tls/udp API

I spoke with friends who work on Deno...

I already have a call scheduled with folks at deno to kick off discussions. I've also already explored whether WHATWG would be a good home for the spec here and the feedback was that since browsers aren't the most likely immediate candidates, WIGC or a separate repo would be ideal for now.

jasnell

comment created time in 6 days

PullRequestReviewEvent