1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-27 01:29:14 -05:00
A modern runtime for JavaScript and TypeScript. https://deno.com/
Find a file
Luca Casonato 0e72129da2
fix(websocket): ignore resource close error (#9755)
It is possible that the WebSocket is already closed when we try to
close it with `WebSocket#close` or in the `error` or `close` events.
Currently this leads to an uncatchable promise rejection. This changes
this so that closing an already closed WebSocket is a noop.
2021-04-02 00:55:22 +02:00
.cargo Statically link the C runtime library on Windows (#4469) 2020-03-23 20:31:29 +01:00
.github upgrade: Rust 1.51.0 (#9895) 2021-03-25 19:17:37 +01:00
cli chore(cli): fix futime and futimeSync code examples (#9953) 2021-04-02 08:53:31 +11:00
core perf(core): js errors as unions vs tuples to reduce allocs (#9947) 2021-04-01 07:24:30 -04:00
docs docs: copyedit introduction for clarity (#9805) 2021-04-01 20:20:43 +11:00
op_crates fix(websocket): ignore resource close error (#9755) 2021-04-02 00:55:22 +02:00
runtime refactor: new optimized op-layer using serde_v8 (#9843) 2021-03-31 10:37:38 -04:00
serde_v8 refactor: new optimized op-layer using serde_v8 (#9843) 2021-03-31 10:37:38 -04:00
test_plugin refactor: new optimized op-layer using serde_v8 (#9843) 2021-03-31 10:37:38 -04:00
test_util fix: update wpt + align AbortController (#9907) 2021-03-27 15:49:57 +01:00
third_party@72f5f1a9fa chore: update third_party submodule (#9548) 2021-02-19 15:44:22 +01:00
tools refactor: new optimized op-layer using serde_v8 (#9843) 2021-03-31 10:37:38 -04:00
.dlint.json chore: Enforce ban-untagged-todo lint rule (#9135) 2021-01-17 00:32:59 +01:00
.dprintrc.json fix(fmt): Correctly format hard breaks in markdown (#9742) 2021-03-10 08:17:24 -05:00
.editorconfig editorconfig: Don't insert final newline in .out files (#1686) 2019-02-07 11:31:49 -05:00
.gitattributes remove unused git attributes (#7011) 2020-08-10 23:22:45 -04:00
.gitignore tests: new typescript WPT runner (#9269) 2021-01-27 15:06:18 +01:00
.gitmodules chore: remove std directory (#9361) 2021-02-02 12:05:46 +01:00
.rustfmt.toml chore: update copyright to 2021 (#9092) 2021-01-11 18:13:41 +01:00
Cargo.lock refactor: new optimized op-layer using serde_v8 (#9843) 2021-03-31 10:37:38 -04:00
Cargo.toml Introduce serde_v8 (#9722) 2021-03-25 22:36:46 -04:00
CODE_OF_CONDUCT.md fix(tools): prettier formatting (#6206) 2020-06-09 17:50:41 +02:00
LICENSE.md update copyright to 2021 (#9081) 2021-01-10 21:59:07 -05:00
README.md docs: match install section with website (#9665) 2021-03-15 12:46:08 +01:00
Releases.md v1.8.2 2021-03-21 21:12:09 +01:00

Deno

Build Status - Cirrus Twitter handle

Deno is a simple, modern and secure runtime for JavaScript and TypeScript that uses V8 and is built in Rust.

Features

  • Secure by default. No file, network, or environment access, unless explicitly enabled.
  • Supports TypeScript out of the box.
  • Ships only a single executable file.
  • Built-in utilities like a dependency inspector (deno info) and a code formatter (deno fmt).
  • Set of reviewed standard modules that are guaranteed to work with Deno.

Install

Shell (Mac, Linux):

curl -fsSL https://deno.land/x/install/install.sh | sh

PowerShell (Windows):

iwr https://deno.land/x/install/install.ps1 -useb | iex

Homebrew (Mac):

brew install deno

Chocolatey (Windows):

choco install deno

Scoop (Windows):

scoop install deno

Build and install from source using Cargo:

cargo install deno --locked

See deno_install and releases for other options.

Getting Started

Try running a simple program:

deno run https://deno.land/std/examples/welcome.ts

Or a more complex one:

import { serve } from "https://deno.land/std/http/server.ts";
const s = serve({ port: 8000 });
console.log("http://localhost:8000/");
for await (const req of s) {
  req.respond({ body: "Hello World\n" });
}

You can find a more in depth introduction, examples, and environment setup guides in the manual.

More in-depth info can be found in the runtime documentation.

Contributing

We appreciate your help!

To contribute, please read our guidelines.