1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-21 15:04:11 -05:00
A modern runtime for JavaScript and TypeScript. https://deno.com/
Find a file
Luca Casonato 06ece5645c
fix: init v8 platform once on main thread (#20495)
This is a mitigation for segfaults happening in V8 on CPU with MPK
(memory protected keys).

After much trail and error we found that unless V8 platform is
initialized on main thread the segfaults start appears once JIT 
kicks in. "deno test" and "deno bench" were affected by
this problem.

Fixes https://github.com/denoland/deno/issues/19926
Fixes https://github.com/denoland/deno/issues/20243
Fixes https://github.com/denoland/deno/issues/20450

---------

Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-09-15 00:17:01 +02:00
.cargo chore: Add a local-build.toml to make downstream packaging from sourc… (#20236) 2023-08-24 08:46:57 -06:00
.devcontainer fix(devcontainer): Add build deps and update extension in devcontainer (#20467) 2023-09-12 15:33:07 +00:00
.github chore: forward v1.36.4 to main (#20352) 2023-09-01 18:08:58 +00:00
bench_util chore: forward v1.36.4 to main (#20352) 2023-09-01 18:08:58 +00:00
cli fix: init v8 platform once on main thread (#20495) 2023-09-15 00:17:01 +02:00
ext refactor: rewrite more ops to op2 macro (#20478) 2023-09-14 23:05:18 +02:00
runtime refactor: rewrite more ops to op2 macro (#20478) 2023-09-14 23:05:18 +02:00
test_ffi feat(unstable): Improve FFI types (#20215) 2023-08-21 13:36:26 +05:30
test_napi chore(cli): use NPM_CONFIG_REGISTRY for all tests (#20320) 2023-08-29 13:02:54 -06:00
test_util refactor: remove DENO_UNSTABLE_NPM_SYNC_DOWNLOAD and custom sync functionality (#20504) 2023-09-14 17:51:28 +00:00
tools chore(test_util): ensure that extra expectations are an error even without a filter (#20483) 2023-09-13 16:09:43 -06:00
.dlint.json chore: update dlint to v0.37.0 for GitHub Actions (#17295) 2023-01-16 17:17:18 +01:00
.dprint.json fix(fmt/markdown): improve ignore comment handling (#20421) 2023-09-08 16:38:42 +00:00
.editorconfig editorconfig: Don't insert final newline in .out files (#1686) 2019-02-07 11:31:49 -05:00
.gitattributes fix(test): support typechecking docs with CRLF line endings (#12748) 2021-11-15 09:58:04 -05:00
.gitignore chore: remove third_party submodule (#20201) 2023-08-19 09:56:12 +05:30
.gitmodules chore: remove third_party submodule (#20201) 2023-08-19 09:56:12 +05:30
.rustfmt.toml chore: update copyright year to 2023 (#17247) 2023-01-02 21:00:42 +00:00
Cargo.lock chore(cli): update chrono to remove broken time dep (#20508) 2023-09-14 13:17:38 -06:00
Cargo.toml chore(cli): update chrono to remove broken time dep (#20508) 2023-09-14 13:17:38 -06:00
LICENSE.md chore: update copyright year to 2023 (#17247) 2023-01-02 21:00:42 +00:00
README.md feat(ext/kv): connect to remote database (#20178) 2023-08-22 13:56:00 +08:00
Releases.md chore: forward v1.36.4 to main (#20352) 2023-09-01 18:08:58 +00:00
rust-toolchain.toml chore: update to Rust 1.72 (#20258) 2023-08-26 22:04:12 -06:00

Deno

Twitter badge Discord badge YouTube badge

the deno mascot dinosaur standing in the rain

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

Features

Install

Shell (Mac, Linux):

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

PowerShell (Windows):

irm https://deno.land/install.ps1 | iex

Homebrew (Mac):

brew install deno

Chocolatey (Windows):

choco install deno

Scoop (Windows):

scoop install deno

Build and install from source using Cargo:

# Install the Protobuf compiler
apt install -y protobuf-compiler # Linux
brew install protobuf # macOS

# Build and install Deno
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 setup a simple HTTP server:

Deno.serve((_req) => new Response("Hello, World!"));

More Examples

Additional Resources

Contributing

We appreciate your help!

To contribute, please read our contributing instructions.