惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
LangChain Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Attack and Defense Labs
Attack and Defense Labs
T
Tor Project blog
Scott Helme
Scott Helme
Schneier on Security
Schneier on Security
Security Archives - TechRepublic
Security Archives - TechRepublic
S
Security @ Cisco Blogs
GbyAI
GbyAI
Help Net Security
Help Net Security
T
Troy Hunt's Blog
Recent Announcements
Recent Announcements
Engineering at Meta
Engineering at Meta
L
LINUX DO - 最新话题
TaoSecurity Blog
TaoSecurity Blog
AWS News Blog
AWS News Blog
Y
Y Combinator Blog
SecWiki News
SecWiki News
Microsoft Azure Blog
Microsoft Azure Blog
Spread Privacy
Spread Privacy
A
About on SuperTechFans
Stack Overflow Blog
Stack Overflow Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
Google DeepMind News
Google DeepMind News
NISL@THU
NISL@THU
T
Threat Research - Cisco Blogs
S
Securelist
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
雷峰网
雷峰网
H
Help Net Security
AI
AI
The Hacker News
The Hacker News
B
Blog
罗磊的独立博客
L
Lohrmann on Cybersecurity
爱范儿
爱范儿
C
Cisco Blogs
有赞技术团队
有赞技术团队
Project Zero
Project Zero
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
S
Secure Thoughts
A
Arctic Wolf
Blog — PlanetScale
Blog — PlanetScale
腾讯CDC
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Latest news
Latest news
Cloudbric
Cloudbric
D
Docker
博客园 - 叶小钗
月光博客
月光博客

Deno

Deno 2.8 | Deno Claw Patrol: an open-source security firewall for agents | Deno Fresh 2.3: Zero JS by default, View Transitions, and Temporal support | Deno Deno 2.7: Temporal API, Windows ARM, and npm overrides | Deno Build a dinosaur runner game with Deno, pt. 6 | Deno Build a dinosaur runner game with Deno, pt. 5 | Deno Deno Deploy is Generally Available | Deno Introducing Deno Sandbox | Deno Build a dinosaur runner game with Deno, pt. 4 | Deno Build a dinosaur runner game with Deno, pt. 3 | Deno Build a dinosaur runner game with Deno, pt. 2 | Deno React / Next.js Denial-of-Service Vulnerability: Deno Deploy users protected | Deno Deno 2.6: dx is the new npx | Deno Build a dinosaur runner game with Deno, pt. 1 | Deno React Server Functions / Next.js Vulnerability: Deno Deploy users protected | Deno My highlights from the new Deno Deploy | Deno Deno's Other Open Source Projects | Deno How Deno protects against npm exploits | Deno Help Us Raise $200k to Free JavaScript from Oracle | Deno Deno 2.5: Permissions in the config file | Deno Fresh 2.0 Graduates to Beta, Adds Vite Support | Deno Deno 2.4: deno bundle is back | Deno JavaScript™ Trademark Update | Deno What's coming to JavaScript | Deno A brief history of JavaScript | Deno Reports of Deno's Demise Have Been Greatly Exaggerated | Deno An Update on Fresh | Deno How Plaid migrated 100 services to a new database platform 5x faster with Deno | Deno Deno 2.3: Improved deno compile, local npm packages, and more | Deno Add JSR packages with pnpm and Yarn | Deno Zero-config Debugging with Deno and OpenTelemetry | Deno Exploring Art with TypeScript, Jupyter, Polars, and Observable Plot | Deno Deno v Oracle Update 3: Fighting the JavaScript Trademark | Deno Build a custom RAG AI agent in TypeScript and Jupyter | Deno How to get deep traces in your Node.js backend with OTel and Deno | Deno toranoana.deno #20 登録受付中(2025年3月14日) | Deno Node just added TypeScript support. What does that mean for Deno? | Deno The Dino 🦕, the Llama 🦙, and the Whale 🐋 | Deno Publish a lint rule, get a prize | Deno Deno 2.2: OpenTelemetry, Lint Plugins, node:sqlite | Deno If you're not using npm specifiers, you're doing it wrong | Deno How Deno's documentation is evolving | Deno Oracle justified its JavaScript trademark with Node.js—now it wants that ignored | Deno Introducing the JSR open governance board | Deno Intro to Wasm in Deno | Deno Announcing OpenAI on JSR | Deno Deno in 2024 | Deno Goodbye WinterCG, welcome WinterTC | Deno Build a SolidJS app with Deno | Deno Run your Next.js SSR app on Deno Deploy | Deno Solve Advent of Code 2024 with Deno and Win Prizes! | Deno Deno v. Oracle: Canceling the JavaScript Trademark | Deno Deno 2.1: Wasm Imports and other enhancements | Deno Build a Typesafe API with tRPC and Deno | Deno Self-contained Executable Programs with Deno Compile | Deno Build a Database App with Drizzle ORM and Deno | Deno Introducing your new JavaScript package manager: Deno | Deno Announcing Growthbook on JSR | Deno Build an Astro site with Deno | Deno How to convert CommonJS to ESM | Deno Announcing Deno 2 | Deno The Final Touches: What’s New In v2.0.0-rc.10 | Deno Announcing Stable V8 Bindings for Rust | Deno Deno 2.0 Release Candidate | Deno Secure, efficient private npm registries with Cloudsmith and Deno | Deno Painting the Plane as We Fly It: Designing JSR | Deno Introducing Web Cache API support on Deno Deploy | Deno Deno 1.46: The Last 1.x Release | Deno Protect your cloud spend with new Deno Deploy spend limits | Deno What we got wrong about HTTP imports | Deno Benchmarking AWS Lambda Cold Starts Across JavaScript Runtimes | Deno Announcing Supabase on JSR | Deno Deno 1.45: Workspace and Monorepo Support | Deno Introducing KV Backup for Deno Subhosting | Deno A Gentle Intro to TypeScript | Deno Announcing Hono on JSR | Deno How We Made the Deno Language Server Ten Times Faster | Deno How the Guardian uses Deno to audit accessibility and performance across their 2.7 million articles | Deno Introducing More Flexible Domain Association for Deno Subhosting | Deno The stabilization process of the Standard Library has begun | Deno Deno 1.44: Private npm registries, improved Node.js compat, and performance boosts | Deno How we built a secure, performant, multi-tenant cloud platform to run untrusted code | Deno The Deno Standard Library is now available on JSR | Deno How to document your JavaScript package | Deno Your Low Code Solution Needs an Escape Hatch | Deno Deno 1.43: Improved Language Server performance | Deno How Slack used Deno to save months of engineering effort in launching their new platform | Deno JSR Is Not Another Package Manager | Deno Announcing the Hookdeck SDK on JSR | Deno Announcing the Neon Serverless Driver on JSR | Deno An intro to TSConfig for JavaScript Developers | Deno How we built JSR | Deno How Netlify used Deno Subhosting to build a successful edge functions product | Deno Introducing Simpler Project Creation in Deno Deploy | Deno Deno 1.42: Better dependency management with JSR | Deno Introducing deployctl, the command line interface for Deno Deploy | Deno Introducing JSR - the JavaScript Registry | Deno How to add Monaco to a Next.js app and securely run untrusted user code | Deno Survey Results and Roadmap | Deno Deno 1.41: smaller deno compile binaries | Deno
Deno 1.32: Enhanced Node.js Compatibility | Deno
2023-03-23 · via Deno

🚨 Deno 1.32.0 contains a critical security issue. Please upgrade to 1.32.1.


Deno 1.32 has been tagged and released with the following new features and changes:

  • Enhanced Node.js Compatibility
  • deno compile support for web workers and dynamic import
  • Changes to Deno APIs
  • Changes to Web APIs
  • Changes to the standard library
  • TypeScript 5.0
  • V8 11.2

If you already have Deno installed, you can upgrade to 1.32 by running:

If you are installing Deno for the first time:


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


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

Click here for more installation options.

Enhanced Node.js Compatibility

Deno continues to make significant strides in improving its compatibility with Node.js, offering a smoother overall developer experience. Key enhancements in this release include:

  • Limited package installation: Package installation is now limited to instances where code uses a bare specifier that matches an entry in the package.json file.
  • Lazy error surfacing: Dependency parsing errors in package.json are now surfaced in a lazy manner, minimizing disruptions.
  • Controlled auto-discovery: Package.json auto-discovery is disabled when the --no-config and --no-npm flags are set, providing greater control over the process.
  • New environment variable: A new DENO_NO_PACKAGE_JSON environment variable allows you to completely prevent Deno from resolving a package.json file within the environment.
  • Expanded crypto support: Support for the createCipheriv and createDecipheriv APIs in "node:crypto" has been added, expanding the range of available cryptographic functions.

These targeted usability improvements collectively contribute to a more seamless and efficient development experience when working with Deno and Node.js.

deno compile support for web workers and dynamic import

This release brings two highly requested update to deno compile. It is now possible to use dynamic imports and Web Worker API with binaries created using deno compile subcommand. Together this makes multi-threaded programs more easily buildable with deno compile.

If your dynamic import statements are statically analyzable (or in other words if you used string literals inside import()) the specifiers will be automatically included in the produced binaries:


const dynamicModule = await import("./dynamic_module.js");

console.log(dynamicModule.hello());

export function hello() {
  return "hello world!";
}
$ deno compile -o dynamic_import_example main.js
Compile file:///dev/main.js
Emit dynamic_import_example
$ ./dynamic_import_example
hello world!

For cases where the specifiers are not statically analyzable, you can use the new --include flag to specify additional files to include in the binary. This flag can be used multiple times.


const worker1 = new Worker(import.meta.resolve("./worker1.js"), {
  type: "module",
});

worker1.postMessage("hello from main!");
worker1.onmessage = (e) => {
  console.log("main received", e.data);
  worker1.terminate();
};

const worker2 = new Worker(import.meta.resolve("./worker2.js"), {
  type: "module",
});

worker2.postMessage("hello from main!");
worker2.onmessage = (e) => {
  console.log("main received", e.data);
  worker2.terminate();
};

self.onmessage = (e) => {
  console.log("worker1 received:", e.data);
  self.postMessage("hello from worker1!");
};

self.onmessage = (e) => {
  console.log("worker2 received:", e.data);
  self.postMessage("hello from worker2!");
};
$ deno compile --include worker1.js --include worker2.js -o worker_example main.js
Compile file:///dev/main.js
Emit worker_example
$ ./worker_example
worker1 received: hello from main!
main received hello from worker1!
worker2 received: hello from main!
main received hello from worker2!

Thank you to Andreu Botella for contributing these features.

deno run files without an extension

It’s now possible to run files without an extension by specifying one via the --ext flag.

$ cat my_script


console.log("Hello!");
$ ./my_script
Hello!

Thank you to @Cre3per for contributing this feature.

Changes to Deno APIs

Deno.FileInfo.dev is now defined on Windows. This is an additive change, but because of it the typings for Deno.FileInfo.dev field were changed from number | null to number.

Two new unstable APIs were added: Deno.DatagramConn.joinMulticastV4 and Deno.DatagramConn.joinMulticastV6. (Thank you to Sam Gwilym for contributing this.)

Changes to Web APIs

URLSearchParams.size() is now supported. (Thank you to Lino Le Van for contributing this feature.)

Unstable WebGPU API removed. Supporting WebGPU introduced a cost that made deno binaries bigger and slower to start up for all users, even if they didn’t use it. This release removes the unstable WebGPU API while implementations can be investigated that don’t increase startup time.

Changes to the standard library

Breaking changes to the module structure

The following 6 modules under std/encoding cateogry have been moved to the top level of the standard library in this release.

  • std/encoding/csv has been moved to std/csv
  • std/encoding/yaml has been moved to std/yaml
  • std/encoding/toml has been moved to std/toml
  • std/encoding/json has been moved to std/json
  • std/encoding/jsonc has been moved to std/jsonc
  • std/encoding/front_matter has been moved to std/front_matter

These changes were made to improve the consistency of the module/directory structure in the standard library. For example, csv module was exported from 2 different places formerly: std/encoding/csv.ts and std/encoding/csv/stream.ts. Now csv is exported from the single place std/csv/mod.ts (Also each single API is exported from each corresponding file. See the API document for details). We consider this structure more consistent. Please see the discussion issues (1 2) if you’re interested in more details.

Thanks Asher Gomez for working on this, and also thanks Tim Reichen and Lino Le Van for contributing to the discussion.

TypeScript 5.0

Deno v1.32 ships with the latest stable version of TypeScript. For more information on new features in TypeScript see TypeScript’s 5.0 blog post

Take note that ES decorators are not yet supported, but we will be working towards enabling them by default in a future version.

Performance improvements: Alongside the other performance benefits brought by TypeScript 5.0, Deno’s initial type-check became significantly faster when not type checking remote modules—without using the –all flag. This enhancement is particularly impactful in reducing type checking times on CI for most cases. The exact time savings depend on the number of remote modules in your dependencies, but we’ve observed more than 2x speedups in type checking (e.g., reducing times from 2200ms to 600ms).

V8 11.2

This release upgrades to the latest release of V8 (11.2, previously 11.0).

There are some new exciting JavaScript features available with this upgrade: