0
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-03-03 09:31:22 -05:00
A modern runtime for JavaScript and TypeScript. https://deno.com/
Find a file
Ryan Dahl f7c298e297
Remove denort optimization (#10350)
denort is an optimization to "deno compile" to produce slightly smaller
output. It's a decent idea, but causes a lot of negative side-effects:

- Deno's link time is a source of constant agony both locally and in CI,
  denort doubles link time.
- The release process is a long and arduous undertaking with many manual
  steps. denort necessitates an additional manual zip + upload from M1
  apple computers.
- The "deno compile" interface is complicated with the "--lite" option.
  This is confusing for uses ("why wouldn't you want lite?").

The benefits of this feature do not outweigh the negatives. We must find
a different approach to optimizing "deno compile" output.
2021-04-26 13:28:38 -04:00
.cargo Statically link the C runtime library on Windows (#4469) 2020-03-23 20:31:29 +01:00
.github Remove denort optimization (#10350) 2021-04-26 13:28:38 -04:00
bench_util refactor(core): move op cache sync responsibility to rust space (#10340) 2021-04-25 22:00:05 +02:00
cli Remove denort optimization (#10350) 2021-04-26 13:28:38 -04:00
core feat(core): enable wasm threading support (#10116) 2021-04-26 17:54:07 +02:00
docs refactor(cli): rename Deno.emit() bundle options to "module" and "classic" (#10332) 2021-04-26 06:54:57 +10:00
op_crates remove #![deny(warnings)] (#10376) 2021-04-26 10:10:57 -04:00
runtime remove #![deny(warnings)] (#10376) 2021-04-26 10:10:57 -04:00
serde_v8 chore: release crates (#10269) 2021-04-21 00:15:39 +02:00
test_plugin core: avoid async op future reboxing to bundle PromiseId (#10123) 2021-04-11 07:05:43 +02:00
test_util Remove denort optimization (#10350) 2021-04-26 13:28:38 -04:00
third_party@72f5f1a9fa chore: update third_party submodule (#9548) 2021-02-19 15:44:22 +01:00
tools feat(core): enable wasm threading support (#10116) 2021-04-26 17:54:07 +02:00
.dlint.json chore: Enforce ban-untagged-todo lint rule (#9135) 2021-01-17 00:32:59 +01:00
.dprintrc.json feat: Support deno-fmt-ignore-file for markdown formatting (#10191) 2021-04-26 17:43:32 +02: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 flamebench: streamline profiling benches (#10121) 2021-04-26 16:41:53 +02: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 feat: Support deno-fmt-ignore-file for markdown formatting (#10191) 2021-04-26 17:43:32 +02:00
Cargo.toml chore: release crates (#10269) 2021-04-21 00:15:39 +02: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(readme): improve link descriptions (#10083) 2021-04-09 16:29:48 +09:00
Releases.md 1.9.2 2021-04-23 16:08:06 +02:00

Deno

Build Status - Cirrus Twitter handle Discord Chat

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 deeper introduction, examples, and environment setup guides in the manual.

The complete API reference is available at the runtime documentation.

Contributing

We appreciate your help!

To contribute, please read our guidelines.