Deno 1.0

Бостоялся ΠΌΠ°ΠΆΠΎΡ€Π½Ρ‹ΠΉ Ρ€Π΅Π»ΠΈΠ· Deno – ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ, бСзопасной срСды выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° языкС TypeScript, ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‰Π΅ΠΉ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ особСнностями:

  • Π˜ΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ явный доступ ΠΊ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС, сСти ΠΈ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΡŽ Ρ‡Π΅Ρ€Π΅Π· установку ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ;
  • ИсполнСниС TypeScript Π±Π΅Π· Node.JS ΠΈ tsc;
  • ΠžΠ±Ρ€Π°Ρ‚Π½Π°Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с Javascript: любоС подмноТСство ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ для Deno, Π½Π΅ ΡΡΡ‹Π»Π°ΡŽΡ‰Π΅Π΅ΡΡ Π½Π° глобальноС пространство ΠΈΠΌΡ‘Π½ Deno ΠΈ ΡΠ²Π»ΡΡŽΡ‰Π΅Π΅ΡΡ Π²Π°Π»ΠΈΠ΄Π½Ρ‹ΠΌ Javascript ΠΊΠΎΠ΄ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅;
  • ΠŸΠΎΡΡ‚Π°Π²ΠΊΠ° Π² Π²ΠΈΠ΄Π΅ СдинствСнного исполняСмого Ρ„Π°ΠΉΠ»Π°, Ρ‚Π°ΠΊΠΆΠ΅ содСрТащСго Π² сСбС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ инструмСнты, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ
    • deno run —inspect-brk: Π΄Π΅Π±Π°Π³-сСрвСр, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ с Visual Studio Code ΠΈ инструмСнтами ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΉ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π² Google Chrome;
    • deno install: установщик ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ для Deno ΠΈΠ· ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Ρ… рСсурсов. ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ вмСстС с зависимостями ΠΈ добавляСт Π² $HOME/.deno/bin cΠΊΡ€ΠΈΠΏΡ‚ для запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;
    • deno fmt: ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°;
    • deno bundle: Π±Π°Π½Π΄Π»Π΅Ρ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° Deno. ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ js-Ρ„Π°ΠΉΠ», содСрТащий Π² сСбС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для Deno ΠΈ Π΅Ρ‘ зависимости;
    • WIP: Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΈ инструмСнт Π°ΡƒΠ΄ΠΈΡ‚Π° зависимостСй;
  • ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ зависимости ΠΎΡ‚ npm ΠΈ package.json: внСшниС ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΏΠΎΠ΄Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ (Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΠΎ сСти происходит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎ врСмя ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ выполнСния, Π² дальнСйшСм ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΊΡΡˆΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ Π²ΠΏΠ»ΠΎΡ‚ΡŒ Π΄ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° с Ρ„Π»Π°Π³ΠΎΠΌ —reload) послС указания ΠΈΡ… URL прямо Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅:
    import * as log from "https://deno.land/std/log/mod.ts";

  • ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ всС асинхронныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Promise, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Node.JS;
  • Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ всСгда останавливаСтся ΠΏΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… ошибок.

Deno – встраиваСмая срСда, ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использована для Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° Rust с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΡ€Π΅ΠΉΡ‚Π° deno_core.

Π’Π°ΠΊΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° Deno поставляСт стандартныС ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Π±Π΅Π· Π²Π½Π΅ΡˆΠ½ΠΈΡ… зависимостСй, Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ со стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ Π² языкС Go.

Deno ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для использования Π² качСствС выполнСния скриптов – поддСрТиваСтся Π²Ρ‹Π·ΠΎΠ² Ρ‡Π΅Ρ€Π΅Π· shebang.
Π•ΡΡ‚ΡŒ REPL.
Написано Π½Π° языкС программирования Rust.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: linux.org.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ