პოპულარული პაკეტების მენეჯერი npm ემზადება თავისი მე-12 ვერსიის გამოსაშვებად, რომელიც უსაფრთხოების კუთხით ფუნდამენტურ ცვლილებებს მოიტანს. განახლება, რომელიც 2026 წლის ივლისისთვისაა დაგეგმილი, ავტომატურ პროცესებს შეზღუდავს და დეველოპერებს მეტ კონტროლს მოსთხოვს.

უსაფრთხოების ახალი მიდგომა

მთავარი სიახლე ეხება npm install ბრძანების მუშაობის პრინციპს. თუ აქამდე სისტემა ავტომატურად ამუშავებდა Git და დისტანციურ დამოკიდებულებებს, v12 ვერსიიდან ეს ქცევა შეიცვლება. ნაგულისხმევი პარამეტრები გამკაცრდება, რაც მავნე კოდის გაშვების რისკებს მინიმუმამდე დაიყვანს.

Git დამოკიდებულებების შეზღუდვა

ახალი ვერსიით, npm აღარ განახორციელებს Git დამოკიდებულებების რეზოლუციას, თუ მომხმარებელი ამას სპეციალურად არ დაუშვებს --allow-git დროშის გამოყენებით. ეს ცვლილება ხურავს კოდის შესრულების იმ გზას, სადაც Git-ის დამოკიდებულებას შეეძლო `.npmrc` ფაილის საშუალებით Git-ის შესრულებადი ფაილის ჩანაცვლება.

დისტანციური URL-ების კონტროლი

მსგავსი მიდგომა ვრცელდება დისტანციურ URL-ებზეც. HTTPS tarball-ები და სხვა დისტანციური წყაროები აღარ იქნება ავტომატურად ხელმისაწვდომი. დეველოპერებს დასჭირდებათ --allow-remote დროშის გამოყენება, რათა სისტემამ დაუშვას მათი ინსტალაცია.

როგორ მოვემზადოთ განახლებისთვის?

npm-ის გუნდი გვირჩევს, არ დაველოდოთ ივლისს და უკვე ახლავე შევამოწმოთ პროექტების მზაობა. თუ იყენებთ npm 11.16.0 ან უფრო ახალ ვერსიას, სისტემა უკვე აჩვენებს გაფრთხილებებს იმ შემთხვევებზე, რომლებიც v12-ში აიკრძალება.

  • გაუშვით არსებული ინსტალაციის პროცესი და გადახედეთ გაფრთხილებებს.
  • გამოიყენეთ npm approve-scripts სკრიპტების მართვისთვის.
  • დაამტკიცეთ მხოლოდ სანდო პაკეტები და განაახლეთ package.json.

ეს ნაბიჯები დაგეხმარებათ, რომ განახლების მომენტში თქვენი პროექტები არ გაჩერდეს და უსაფრთხოების ახალი სტანდარტები შეუფერხებლად დაინერგოს.