Live data from Hacker News

Deno 1.0

deno.land

251–260 of 598 posts

Re: Deno 1.0

#252
It would be great if this line were at the top:

>> Deno is a new runtime for executing JavaScript and TypeScript outside of the web browser.

Re: Deno 1.0

#253
post #151
post #138

> ... Deno is (and always will be) a single executable file. Like a web browser, it knows how to fetch external code. In Deno, a single file can define arbitrarily complex behavior without any other tooling. > ... > Also like browsers, code is executed in a secure sandbox by default. Scripts cannot access the hard drive, open network connections, or make any other potentially malicious actions without permission. The…

See the thing about the sandbox is that it's only going to be effective for very simple programs. If you're building a real world application, especially a server application like in the example, you're probably going to want to listen on the network, do some db access and write logs. For that you'd have to open up network and file access pretty much right off the bat. That combined with the 'download random code fro…

The manual looks pretty sketchy, but it seems you can limit file access to certain files or directories and that could be used to just give it access to the database and log files.

Re: Deno 1.0

#254

Earlier quoted context omitted.

I guess I'm wondering why Deno is targeting V8 instead of Servo? Maybe I'm mistaken, but Servo [0] and Stylo [1] are both production-ready browser scripting and styling engines implemented in Rust. [0] https://servo.org/ [1] https://wiki.mozilla.org/Quantum/Stylo

Servo is an experimental project designed to build and test components that can be integrated into Firefox. It relies on Gecko for JS.

SpiderMonkey, not Gecko.

Re: Deno 1.0

#255
post #111

The dependency management is highly questionable for me. Apart from the security concerns raised by others, I have huge concerns about availability. In it's current form, I'd never run Deno on production, because dependencies have to be loaded remotely. I understand they are fetched once and cached, but that will not help me if I'm spinning up additional servers on demand. What if the website of one of the packages I…

Then you either vendor as others have said, or use the built in bundle tool to produce a single js file of all your code including dependencies.

https://deno.land/manual/tools/bundler

Re: Deno 1.0

#256
post #60

Does anyone else see the import directly from URL as a larger security/reliability issue than the currently imperfect modules? I'm sure I'm missing something obvious in that example, but that capability terrifies me.

Does Deno have some built in way to vendor / download the imports pre-execution? I don't want my production service to fail to launch because some random repo is offline.

You can also use the built in bundle command to bundle all of your dependencies and your code into a single, easily deployable file. https://deno.land/manual/tools/bundler.

Re: Deno 1.0

#258
post #213

> A hello-world Deno HTTP server does about 25k requests per second with a max latency of 1.3 milliseconds. A comparable Node program does 34k requests per second with a rather erratic max latency between 2 and 300 milliseconds. Under-mentioned feature. I may migrate my personal site to Deno just for that latency drop.

Yeah it seems like the p99 latency of node, which isn’t great, doesn’t get mentioned much.

Re: Deno 1.0

#259

I guess I'm wondering why Deno is targeting V8 instead of Servo? Maybe I'm mistaken, but Servo [0] and Stylo [1] are both production-ready browser scripting and styling engines implemented in Rust. [0] https://servo.org/ [1] https://wiki.mozilla.org/Quantum/Stylo

You’ve made a category error; Servo is not a JavaScript engine.

> Servo is a modern, high-performance browser engine designed for both application and embedded use.

What does that mean? "browser engine"

Does it execute JavaScript code?

Edit:

I bought your Rust book on Amazon, supposed to be delivered this Friday. I can't wait!

Post reply on HN