เปิดตัว pnpm v11
(pnpm.io)- เปิดใช้การป้องกันซัพพลายเชน (Supply-chain protection) เป็นค่าเริ่มต้น: เพื่อเสริมความปลอดภัย ค่าเริ่มต้นของ
minimumReleaseAgeถูกตั้งเป็น 1440 (1 วัน) (แพ็กเกจที่เพิ่งเผยแพร่จะติดตั้งได้หลังผ่านไป 24 ชั่วโมง) นอกจากนี้blockExoticSubdepsจะเป็นtrueโดยค่าเริ่มต้นด้วย - ต้องใช้ Node.js 22+: ตอนนี้จำเป็นต้องใช้ Node.js เวอร์ชัน 22 ขึ้นไป การรองรับ Node 18, 19, 20 และ 21 ถูกยุติแล้ว สำหรับไฟล์แบบสแตนด์อโลน (Standalone) ต้องใช้ glibc 2.27 ขึ้นไป
- เพิ่ม
allowBuilds: การตั้งค่าที่เกี่ยวกับการบิลด์ซึ่งเดิมมีความซับซ้อน (onlyBuiltDependencies,onlyBuiltDependenciesFile,neverBuiltDependencies,ignoredBuiltDependencies,ignoreDepScripts) ถูกลบออกทั้งหมด และรวมการจัดการไว้ที่allowBuildsเพียงตัวเดียว - แยกการติดตั้งแบบโกลบอล: เมื่อติดตั้งผ่าน
pnpm add -gแต่ละแพ็กเกจจะถูกติดตั้งในไดเรกทอรีอิสระที่มีpackage.json,node_modulesและ lockfile ของตัวเอง ช่วยป้องกันความขัดแย้งของ dependency ระหว่างแพ็กเกจโกลบอล - ดัชนีสโตร์บนพื้นฐาน SQLite (Store v11): มีการนำ SQLite มาใช้จัดการดัชนีเพื่อลด syscall และปรับปรุงความเร็วในการติดตั้งอย่างมาก
- โฟลว์การเผยแพร่แบบเนทีฟ (Publish): คำสั่ง
pnpm publish,login,logout,view,deprecate,unpublish,dist-tag,versionจะไม่พึ่งพา npm CLI อีกต่อไป และทำงานแบบเนทีฟใน pnpm - จำกัดบทบาทของ
.npmrc: ตอนนี้.npmrcใช้ได้เฉพาะสำหรับการยืนยันตัวตน (auth) และการตั้งค่ารีจิสทรีเท่านั้น การตั้งค่าอื่นทั้งหมดต้องย้ายไปไว้ในpnpm-workspace.yamlหรือconfig.yamlแบบโกลบอลตัวใหม่ และใช้คำนำหน้าตัวแปรสภาพแวดล้อมเป็นpnpm_config_*
ยังไม่มีความคิดเห็น