pnpm தனது TMPDIR சாக்கெட் பட்ஜெட் சரிசெய்தலை ஏற்றுக்கொண்டது

pnpm-க்கான சமீபத்திய களச் சோதனை (field test) ஒரு upstream ஏற்பாவில் முடிவடைந்தது. இது எல்லை சார்ந்த சரிசெய்தல்களுக்கு (boundary-focused repairs) ஒரு பெரிய வெற்றியாகும்.

பிரச்சனை என்பது பாதையின் நீளம் (path length) தொடர்பான சிக்கலாகும்.

pnpm ஒரு தொகுப்பை (package) நிறுவும் போது, அது ஒரு TMPDIR பாதையை அமைக்கிறது. சில தொகுப்புகள் அமைப்பின் போது lifecycle கருவிகளை இயக்குகின்றன. இந்தக் கருவிகள் பெரும்பாலும் IPC சாக்கெட்டுகளை (sockets) உருவாக்குகின்றன. pnpm-ன் TMPDIR பாதை மிகவும் நீளமாக இருந்தால், மொத்த சாக்கெட் பாதை Unix வரம்பைத் தாண்டிவிடும். இது Node ஒரு பிழையைத் தெரிவிக்கக் காரணமாகிறது.

இந்த பிழை Node அல்லது கருவியின் தோல்வி போலத் தோன்றும். ஆனால் இதன் உண்மையான காரணம் பாதையின் பட்ஜெட் (path budget) தொடர்பான சிக்கலாகும்.

pnpm Unix சாக்கெட் வரம்பைக் கட்டுப்படுத்துவதில்லை. pnpm lifecycle கருவிகளைக் கட்டுப்படுத்துவதில்லை. pnpm தான் வழங்கும் தற்காலிகக் கோப்புறை பாதையைக் (temporary directory path) கட்டுப்படுத்துகிறது.

இந்தச் சரிசெய்தல் pnpm கட்டுப்படுத்தும் விஷயத்தில் மட்டுமே கவனம் செலுத்துகிறது.

இந்தத் தீர்வு பாதையின் pnpm-க்குச் சொந்தமான பகுதியைச் சுருக்குகிறது. இது ஒரு சுருக்கமான முன்னொட்டுடன் (compact prefix) Node-ன் இயல்பான fs.mkdtemp() முறையைப் பயன்படுத்துகிறது. இது தற்காலிகக் கோப்புறையை pnpm store-க்குள் வைத்திருக்கும் அதே வேளையில், குறைந்த இடத்தையே பயன்படுத்தும்.

இந்த அணுகுமுறை மூன்று விதிகளைப் பின்பற்றுகிறது:

இது ஒரு குறுகிய மற்றும் பயனுள்ள சரிசெய்தல் ஆகும். இது சாக்கெட் பிழைகளைத் திருத்த முயற்சிப்பதில்லை. இது pnpm-ன் அதிகாரங்களை (privileges) இயக்கும் முறையை மாற்றாது. இது pnpm பாதையின் பட்ஜெட்டை வீணாக்குவதைத் தடுக்கிறது.

pnpm பராமரிப்பாளர்கள் இதை ஜூன் 16, 2026 அன்று அங்கீகரித்து இணைத்தனர் (merged).

இந்த வெற்றி Scarab/SDS முறை செயல்படுகிறது என்பதை நிரூபிக்கிறது. நாம் கட்டுப்படுத்தும் பரப்பைக் (owned surface) கண்டறிகிறோம். வெளிப்படையாகத் தெரியும் அறிகுறியைத் (loudest symptom) தவிர்க்கிறோம். திருத்தத்தை (patch) சிறியதாக வைத்திருக்கிறோம். திட்டத்தின் எல்லைகளைப் பாதுகாக்கிறோம்.

இந்தச் சோதனைக்கான Field Lab நிலை இப்போது: upstream-accepted.

Source: https://dev.to/scarab-systems/scarab-diagnostic-field-test-024b-pnpm-accepted-the-cafs-tmpdir-socket-budget-repair-34bb

Optional learning community: https://t.me/GyaanSetuAi