Today, we’re thrilled to announce Deno 2, which includes:

  • Backwards compatibility with Node.js and npm, allowing you to run existing Node applications seamlessly
  • Native support for package.json and node_modules
  • Package management with new deno install, deno add, and deno remove commands
  • A stabilized standard library
  • Support for private npm registries
  • Workspaces and monorepo support
  • Long Term Support (LTS) releases
  • JSR: a modern registry for sharing JavaScript libraries across runtimes

We are also continually improving many existing Deno features:

  • deno fmt can now format HTML, CSS, and YAML
  • deno lint now has Node specific rules and quick fixes
  • deno test now supports running tests written using node:test
  • deno task can now run package.json scripts
  • deno doc’s HTML output has improved design and better search
  • deno compile now supports code signing and icons on Windows
  • deno serve can run HTTP servers across multiple cores, in parallel
  • deno init can scaffold now scaffold libraries or servers
  • deno jupyter now supports outputting images, graphs, and HTML
  • deno bench supports critical sections for more precise measurements
  • deno coverage can now output reports in HTML

Deno is a single binary for the TypeScript and JavaScript ecosystems. Deno is secure by default (installing npm libs do not automatically have full system perms/access).

The new standard library stabilizes a vetted collection of safe binaries instead of having to search for and install random libraries for basic or common use cases with [or without] own security assessments.

Deno compile compiles the TS/JS project into a single binary.

The backwards compatibility to npm and npm/js frameworks enables deno usage in existing projects and with existing libs with the benefits of deno and a path to incremental migration.

The announcement video is worth watching. The intro is great.

  • Olap@lemmy.world
    link
    fedilink
    arrow-up
    1
    arrow-down
    1
    ·
    26 days ago

    Looks ready for actual use now, rather than tinkering with. Package management was my biggest gripe (URLs are literally what it used before). I would like to see TS as the first class citizen however, with JS being deprecated essentially.

    • Kissaki@programming.devOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      edit-2
      25 days ago

      I would like to see TS as the first class citizen however, with JS being deprecated essentially.

      What do you mean by that.

      From what I read, Deno does primarily use and target TS. They label all that JS stuff as backwards-compatibility and ability for a migration path.