NPM 7.0 đi kèm với cài đặt phụ thuộc tự động và hơn thế nữa

Gần đây việc phát hành phiên bản mới của trình quản lý gói NPM 7.0, được bao gồm trong bản phân phối Node.js và được sử dụng để phân phối các mô-đun JavaScript.

Phiên bản NPM 7.0 mới này đến với Workspaces(một tập hợp các tính năng npm CLI), cung cấp hỗ trợ quản lý nhiều gói, tùy thuộc vào nhiều gói để cài đặt trong một bước.

Chúc bạn ra mắt vui vẻ vào thứ Ba! Hôm nay đánh dấu một cột mốc quan trọng đối với nhóm npm CLI - chúng tôi đã chính thức cắt bỏ npm@7.0.0. Nếu bạn đã theo dõi phiên bản này vào năm ngoái hoặc lâu hơn, thì bây giờ chúng tôi đang làm việc chăm chỉ để mang đến cho bạn phiên bản này.

Các cài đặt tự động các phụ thuộc peer-to-peer (đượ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 không được sử dụng trực tiếp trong đó).

Các gói phụ thuộc ngang hàng thích hợp giờ đây tự động được tìm thấy, vì trước đây các nhà phát triển phải cài đặt chúng theo cách thủ công.

Các phụ thuộc ngang hàng được chỉ định trong tệp package.json trong phần "peerDependencies". NPM 7.0 triển khai một thuật toán để đảm bảo rằng một phụ thuộc ngang hàng được xác định đúng được tìm thấy ở hoặc cao hơn mức gói phụ thuộc trong cây node_modules.

Sự tập trung và quyết tâm của chúng tôi đã vượt qua 3 tháng qua khi chúng tôi chọn nhịp phát hành hàng tuần và bắt đầu giải quyết các lỗi / nhận xét trong các cửa sổ beta / rc của chúng tôi.

Như tôi đã đề cập trước đây, chúng tôi vẫn còn rất nhiều chỗ để cải thiện, nhưng chúng tôi nghĩ rằng cli đang ở một nơi rất ổn định hiện nay và đã sẵn sàng để sử dụng. npm v7 sẽ xuất xưởng cùng với Node.js v15 (PR để hạ cánh công việc này sẽ sớm mở cửa) và chúng tôi mong muốn tiếp tục tốc độ thay đổi / cải tiến khi chúng tôi đến gần quý cuối cùng của năm này.

Mặt khác phiên bản thứ hai của định dạng khóa được trình bày (gói-khóa v2) và hỗ trợ cho tệp khóa sợi.lock.

Định dạng chặn gói tin đã được sửa đổi để có thể chứa mọi thứ mà npm cần để xây dựng đầy đủ cây gói. Cho đến nay, các tệp fiber.lock dường như đã bị bỏ qua, vì V7 ứng dụng khách npm cũng có thể đọc siêu dữ liệu gói và thông tin độ phân giải từ chúng.

Định dạng mới cho phép các bản dựng có thể lặp lại và bao gồm mọi thứ bạn cần để xây dựng một cây gói hoàn chỉnh.

Ngoài ra, người ta cũng đề cập rằng bất chấp việc đại tu lớn bên trong của npm, nhóm đã làm việc không mệt mỏi để đảm bảo rằng hầu hết các quy trình làm việc đều có sự gián đoạn tối thiểu.

Một chuyên ngành tái cấu trúc thành phần bên trong, với 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 Arborist riêng biệt.

Đã chuyển sang sử dụng trường package.exports, khiến không thể kết nối các mô-đun nội bộ thông qua lệnh gọi request ().
Gói npx được viết lại hoàn toàn, hiện sử dụng lệnh "npm execute" để chạy các tệp thực thi từ các gói.

Kết quả đầu ra của lệnh "kiểm toán npm" đã thay đổi đáng kể, cả khi được tạo ở định dạng con người có thể đọc được và khi chế độ "–json" được chọn.

Xả

Phiên bản mới hiện đã có sẵn cho công chúng và bạn có thể nhanh chóng cập nhật phiên bản trước đó hoặc cài đặt hoàn toàn phiên bản mới này.

Cuối cùng, cần biết rằng 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 lại 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 khi GitHub mua NPM Inc.

Phiên bản mới sẽ xuất xưởng cùng với phiên bản tương lai của nền tảng Node.js 15, dự kiến ​​vào ngày 20/7.0. Để cài đặt NPM XNUMX mà không cần đợi phiên bản Node.js mới, bạn có thể thực hiện bằng cách chạy lệnh trong terminal của bạn:

npm i -g npm@7

Nếu bạn muốn biết thêm về nó Về phiên bản mới được phát hành, bạn có thể kiểm tra chi tiết trong thông báo chính thức.

Liên kết là cái này.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.