Có sẵn trình quản lý gói NPM 7.0

được phát hành phát hành trình quản lý gói NPM 7.0, đi kèm với Node.js và được sử dụng để phân phối các mô-đun trong JavaScript. Kho lưu trữ NPM phục vụ hơn 1.3 triệu gói, được khoảng 12 triệu nhà phát triển sử dụng. Khoảng 75 tỷ lượt tải xuống được ghi nhận mỗi tháng. NPM 7.0 là bản phát hành quan trọng đầu tiên được hình thành sau mua sắm NPM Inc của GitHub. Phiên bản mới sẽ được đưa vào phân phối bản phát hành nền tảng trong tương lai Node.js 15, dự kiến ​​vào ngày 20 tháng 7.0. Để cài đặt NPM 7 mà không cần chờ phiên bản Node.js mới, bạn có thể chạy lệnh “npm i -g npm@XNUMX”.

Chìa khóa đổi mới:

  • Không gian làm việc (Không gian làm việc), cho phép bạn tổng hợp các phần phụ thuộc từ nhiều gói vào một gói để cài đặt chúng trong một bước.
  • cài đặt tự động phụ thuộc ngang hàng (được sử dụng trong các plugin để xác định các gói cơ sở mà gói hiện tại được thiết kế để hoạt động, ngay cả khi gói đó không được sử dụng trực tiếp trong gói đó). Các phần phụ thuộc ngang hàng được chỉ định trong tệp pack.json trong phần “peerDependency”. Trước đây, các nhà phát triển đã cài đặt các phần phụ thuộc như vậy theo cách thủ công, nhưng NPM 7.0 triển khai một thuật toán để đảm bảo rằng một phần phụ thuộc ngang hàng được xác định chính xác được tìm thấy ở cùng cấp hoặc cao hơn gói phụ thuộc trong cây node_modules.
  • Phiên bản thứ hai của định dạng khóa (package-lock v2) và hỗ trợ tệp khóa sợi.lock. Định dạng mới cho phép tạo các bản dựng lặp lại và bao gồm mọi thứ cần thiết để xây dựng cây gói hoàn chỉnh. NPM giờ đây cũng có thể sử dụng các tệp Fiber.lock làm nguồn siêu dữ liệu gói và thông tin khóa.
  • Việc tái cấu trúc đáng kể các thành phần bên trong đã được thực hiện nhằm mục đích tách chức năng để đơn giản hóa việc bảo trì và tăng độ tin cậy. Ví dụ: mã kiểm tra và quản lý cây node_modules đã được chuyển sang một mô-đun riêng Arborist.
  • Chúng tôi đã chuyển sang sử dụng trường pack.exports, điều này khiến không thể kết nối các mô-đun nội bộ thông qua lệnh gọi require().
  • Gói đã được viết lại hoàn toàn npx, hiện sử dụng lệnh "npm exec" để chạy các tệp thực thi từ các gói.
  • Đầu ra của lệnh "npm Audit" đã được thay đổi đáng kể, cả khi đầu ra ở định dạng người có thể đọc được và khi chế độ "--json" được chọn.

Nguồn: opennet.ru

Thêm một lời nhận xét