Релиз Bun 1.0 (новый runtime для JavaScript )

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Представляем Bun версии 1.0.

Bun — это быстрый универсальный набор инструментов для запуска, сборки, тестирования и отладки JavaScript и TypeScript кода (от одного файла до fullstack-приложения). Сегодня Bun стабилен и готов к продакшену.

Установка Bun

# curl
curl -fsSL <https://bun.sh/install> | bash
# npm
npm install -g bun
# brew
brew tap oven-sh/bun
brew install bun
# docker
docker pull oven/bun
docker run --rm --init --ulimit memlock=-1:-1 oven/bunавиток

Обновление Bun

bun upgrade

Bun — универсальный набор инструментов

Мы любим JavaScript. Он зрелый, быстро развивается, а его сообщество разработчиков активно и увлеченно. Это потрясающе.

Однако, с момента появления Node.js прошло 14 лет. Все эти годы доступные инструменты накапливались слой за слоем. И как любая система, которая растет и развивается без централизованного планирования, инструменты JavaScript стали медленными и сложными.

Почему Bun существует?

Цель проста - устранить медлительность и сложность, НЕ отказываясь при этом от всего хорошего в JavaScript. Ваши любимые библиотеки и фреймворки должны работать по-прежнему. Вам не придется отказываться от привычек.

Однако вам придется позабыть множество инструментов, которые Бан делает ненужными:

Node.js. Bun полностью заменяет Node.js, поэтому вам не нужно:

  • node

  • npx - bunx в 5 быстрее

  • nodemon — Bun имеет встроенный watch-режим

  • dotenv, cross-env - Bun читает .env файлы по умолчанию

Транспиляторы. Bun может запускать .js, .ts, .cjs, .mjs, .jsxи .tsxфайлы, заменяя собой:

  • tsc — (но вы можете сохранить его для проверки типов!)

  • babel, .babelrc, @babel/preset-*

  • ts-node, ts-node-esm

  • tsx

Бандлеры. Bun — это сборщик JavaScript с лучшей производительностью и совместимым с esbuild API плагинов, поэтому вам не нужны больше:

  • esbuild

  • webpack

  • parcel, .parcelrc

  • rollup, rollup.config.js

Менеджеры пакетов . Bun является npm-совместимым менеджер пакетов со знакомыми командами. Он читает ваш файл package.jsonи записывает зависимости в node_modules, как и другие менеджеры пакетов:

  • npm, .npmrc, package-lock.json

  • yarn, yarn.lock

  • pnpm, pnpm.lock, pnpm-workspace.yaml

  • lerna

Библиотеки для тестирования. Bun можно использовать в качестве Jest-совместимого тест-раннера с поддержкой снапшотов, моков и code coverage, поэтому вам больше не нужны:

  • jest, jest.config.js

  • ts-jest, @swc/jest, babel-jest

  • jest-extended

  • vitest, vitest.config.ts

Хотя каждый из этих инструментов хорош сам по себе (в основном), их совместное использование неизбежно приводит к нестабильности и замедлению процесса разработки. Они выполняют много избыточной работы; при запуске jestваш код будет распаршен различными инструментами более 3 раз! А плагины и адаптеры (а иногда изолента со скотчем

Источник: https://habr.com/ru/articles/760002/


Интересные статьи

Интересные статьи

GitLab 13.10 уже доступен! В этом месяце мы сосредоточили наше внимание на масштабируемости и удобстве управления продуктом, чтобы вы могли итерировать и вводить новшества быстрее, безо...
В первой части мы рассмотрели четыре различных разновидности Объектно-ориентированного программирования. Два из них - Классы и Фабричные функции - проще в использовании п...
Android Fake PermissionsРечь в статье пойдет о такой вещи как Runtime permissions, а именно – о возможности введения в заблуждение конечного пользователя путем демонстрац...
Всем привет! Меня зовут Слава Фомин, я ведущий разработчик в компании DomClick. За свою 16-ти летнюю практику я в первых рядах наблюдал за становлением и развитием JavaScript как ст...
За последние несколько лет в том, что называют «ценой JavaScript», наблюдаются серьёзные положительные изменения благодаря повышению скорости парсинга и компиляции скриптов браузерами. Сейчас, в ...