मुख्य सारांश
- ESLint v9.34.0 में मल्टीथ्रेड लिंटिंग जोड़ी गई है, जिससे कई फाइलों को एक साथ प्रोसेस किया जा सकता है.
- इसका लक्ष्य बड़े कोडबेस में लिंटिंग समय को अर्थपूर्ण रूप से कम करना है.
- 10 साल से अधिक समय से तैयार की जा रही इस सुविधा को पूरा कर आधिकारिक रूप से पेश किया गया है.
क्या बेहतर हुआ
- CPU cores का बेहतर उपयोग करके parallel processing से कुल लिंट समय कम होता है.
- खासकर बहुत सारी फाइलों वाले monorepo/बड़े repo में यह अधिक प्रभावी है.
उपयोग का तरीका
- CLI में concurrency (threads की संख्या) नियंत्रित करने का विकल्प दिया गया है (उदाहरण: concurrency से जुड़ी settings).
- प्रोजेक्ट/CI environment के अनुसार concurrency value को समायोजित करके optimal point ढूंढा जा सकता है.
सीमाएं·ध्यान देने योग्य बातें
- कुछ external wrapper/integration tools के साथ चलाने पर अपेक्षित स्तर का performance न मिलने की रिपोर्टें हैं (environment/tool combination के अनुसार अंतर हो सकता है).
- यह नई सुविधा है, इसलिए lint flow में अपनाते समय CI और local दोनों में performance और stability की साथ-साथ जांच करने की सिफारिश की जाती है.
अपनाने के टिप्स
- पूरे repo पर एक साथ लागू करने के बजाय directory स्तर पर धीरे-धीरे अपनाते हुए उपयुक्त concurrency value खोजें.
- CI में cache और parallel strategy को साथ में समायोजित करें, और जिन rules/plugins में bottleneck (file IO, rule execution time) अधिक है, उन्हें पहले जांचें.
एक पंक्ति में
- "जिस parallel linting का इंतज़ार था, बड़े प्रोजेक्ट्स के lint time में महसूस होने वाला सुधार आज़माने का यह सही समय है."
अभी कोई टिप्पणी नहीं है.