Π‘Ρ‹Π²ΡˆΠΈΠΉ Ρ‚Π΅Ρ…Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ NPM Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅Ρ‚ распрСдСлённый Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Entropic

Π‘ΠΈΠ”ΠΆΠ΅ΠΉ Π‘ΠΈΠ»ΡŒΠ²Π΅Ρ€ΠΈΠΎ (CJ Silverio), Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ³ΠΎ Π³ΠΎΠ΄Π° ΠΏΠΎΠΊΠΈΠ½ΡƒΠ²ΡˆΠ°Ρ пост тСхничСского Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€Π° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ NPM Inc, прСдставила Π½ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Entropic, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ развиваСтся ΠΊΠ°ΠΊ распрСдСлённая Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° NPM, Π½Π΅ ΠΏΠΎΠ΄ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Код Entropic написан Π½Π° JavaScript ΠΈ распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ Apache 2.0. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ развиваСтся всСго мСсяц ΠΈ находится Π½Π° стадии Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠ°, Π½ΠΎ ΡƒΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, публикация ΠΈ установка ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ².

Π’ качСствС ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ создания Entropic называСтся полная Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ экосистСмы JavaScript/Node.js ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ NPM Inc, которая ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ рСпозитория NPM. БлоТилась ситуация ΠΊΠΎΠ³Π΄Π° нацСлСнная Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ±Ρ‹Π»ΠΈ компания Π΅Π΄ΠΈΠ½ΠΎΠ»ΠΈΡ‡Π½ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ систСму ΠΎΡ‚ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ зависят ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° JavaScript, ΠΈ которая ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΌΠΈΠ»Π»ΠΈΠ°Ρ€Π΄Ρ‹ Π·Π°Π³Ρ€ΡƒΠ·ΠΎΠΊ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π² нСдСлю.

НСдавняя Ρ‡Π΅Ρ€Π΅Π΄Π° ΡƒΠ²ΠΎΠ»ΡŒΠ½Π΅Π½ΠΈΠΉ сотрудников, смСна руководства ΠΈ Π·Π°ΠΈΠ³Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ NPM Inc с инвСсторами создали ΠΎΡ‰ΡƒΡ‰Π΅Π½ΠΈΠ΅ нСопрСдСлённости Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ дальнСйшСм ΡΡƒΠ΄ΡŒΠ±Ρ‹ NPM ΠΈ нСдовСрия Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ компания Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΡΡ‚Π°ΠΈΠ²Π°Ρ‚ΡŒ интСрСсы сообщСства, Π° Π½Π΅ инвСсторов. По мнСнию Π‘ΠΈΠ»ΡŒΠ²Π΅Ρ€ΠΈΠΎ, бизнСсу NPM Inc нСльзя Π΄ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρƒ сообщСства Π½Π΅Ρ‚ Ρ€Ρ‹Ρ‡Π°Π³ΠΎΠ² для привлСчСния Π΅Π³ΠΎ ΠΊ отвСтствСнности Π·Π° ΡΠΎΠ²Π΅Ρ€ΡˆΠ°Π΅ΠΌΡ‹Π΅ дСйствия. Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, ориСнтация Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ±Ρ‹Π»ΠΈ ΠΌΠ΅ΡˆΠ°Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹Ρ… с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния сообщСства, Π½ΠΎ Π½Π΅ приносящих Π΄Π΅Π½Π΅Π³ ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΡ… Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… рСсурсов, возмоТностСй, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ подписи.

Π‘ΠΈΠ»ΡŒΠ²Π΅Ρ€ΠΈΠΎ Ρ‚Π°ΠΊΠΆΠ΅ сомнСваСтся, Ρ‡Ρ‚ΠΎ NPM Inc заинтСрСсована Π² ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ взаимодСйствия со своим бэкСндом, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Ρ‚ ΠΊ сниТСнию ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ интСрСсных с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΌΠΎΠ½Π΅Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ. ΠŸΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ запускС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ «npm audit» Π²ΠΎ Π²Π½Π΅ отдаётся содСрТимоС Ρ„Π°ΠΉΠ»Π° package-lock, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ интСрСсных свСдСний ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Π΅ΠΌ занимаСтся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ. Π’ качСствС Ρ€Π΅Π°ΠΊΡ†ΠΈΠΈ нСсколько Π²ΠΈΠ΄Π½Ρ‹Ρ… участников сообщСства JavaScript/Node.js Π½Π°Ρ‡Π°Π»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹, Π½Π΅ ΠΏΠΎΠ΄ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ компаниям.

БистСма Entropic ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ„Π΅Π΄Π΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ сСти, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π° своих мощностях ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ сСрвСр c Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ примСняСмых ΠΈΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΊ ΠΎΠ±Ρ‰Π΅ΠΉ распрСдСлённой сСти, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰Π΅ΠΉ Π² Π΅Π΄ΠΈΠ½ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ Ρ€Π°Π·Ρ€ΠΎΠ·Π½Π΅Π½Π½Ρ‹Π΅ частныС Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. Entropic ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ сосущСствованиС ΠΌΠ½ΠΎΠ³ΠΈΡ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π², взаимодСйствиС с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ осущСствляСтся Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ процСсса.

ВсС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ΡΡ с использованиСм пространств ΠΈΠΌΡ‘Π½ ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ хостС, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ размСщаСтся ΠΈΡ… ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.
ΠŸΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚Π²ΠΎ ΠΈΠΌΡ‘Π½ ΠΏΠΎ сути прСдставляСт собой имя Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΈΠ»ΠΈ Π³Ρ€ΡƒΠΏΠΏΡ‹ мэйнтСйнСров, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… ΠΏΡ€Π°Π²ΠΎ Π½Π° выпуск ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ. Π’ ΠΎΠ±Ρ‰Π΅ΠΌ Π²ΠΈΠ΄Π΅ адрСс ΠΏΠ°ΠΊΠ΅Ρ‚Π° выглядит ΠΊΠ°ΠΊ «[email protected]/pkg-name».
ΠœΠ΅Π°Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ свСдСния ΠΎ зависимостях ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ TOML.

Π’ случаС размСщСния Π² локальном Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π°, связанного зависимостями ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π², Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π·Π΅Ρ€ΠΊΠ°Π»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² локальном Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ становится самодостаточный ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΊΠΎΠΏΠΈΠΈ всСх Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… зависимостСй. Π˜ΠΌΠ΅Π΅Ρ‚ΡΡ прослойка для взаимодСйствия с классичСским Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ NPM, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ обрабатываСтся ΠΊΠ°ΠΊ доступный Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния Π°Ρ€Ρ…ΠΈΠ². Π’ Ρ‚ΠΎΠΌ числС ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΈΠ· NPM, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ локально Ρ€Π°Π·Π²Ρ‘Ρ€Π½ΡƒΡ‚Ρ‹Π΅ окруТСния Entropic.

Для управлСния прСдоставляСтся инструмСнтарий ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ стоки, ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‰ΠΈΠΉ развёртывания Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² Π² своСй локальной сСти. Entropic ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ Π½ΠΎΠ²Ρ‹Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ API ΠΈ систСму хранСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ ΠΎΠ±ΡŠΡ‘ΠΌ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹Ρ… ΠΏΠΎ сСти Π΄Π°Π½Π½Ρ‹Ρ…. Entropic прСподносится ΠΊΠ°ΠΊ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ систСма, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ для создания Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² для ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π½Π° Π»ΡŽΠ±Ρ‹Ρ… языках программирования, Π½ΠΎ, Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Entropic разрабатываСтся с оглядкой Π½Π° JavaScript ΠΈ Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° Π΄Π°Π½Π½ΠΎΠΌ языкС.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ