ప్రచురించబడింది ప్యాకేజీ మేనేజర్ విడుదల NPM 7.0, Node.jsతో చేర్చబడింది మరియు JavaScriptలో మాడ్యూల్లను పంపిణీ చేయడానికి ఉపయోగించబడుతుంది. NPM రిపోజిటరీ 1.3 మిలియన్ల కంటే ఎక్కువ ప్యాకేజీలను అందిస్తోంది, దీనిని సుమారు 12 మిలియన్ డెవలపర్లు ఉపయోగిస్తున్నారు. నెలకు దాదాపు 75 బిలియన్ల డౌన్లోడ్లు నమోదు చేయబడ్డాయి. NPM 7.0 తర్వాత ఏర్పడిన మొదటి ముఖ్యమైన విడుదల కొనుగోలు GitHub ద్వారా NPM Inc. ప్లాట్ఫారమ్ యొక్క భవిష్యత్తు విడుదల యొక్క డెలివరీలో కొత్త వెర్షన్ చేర్చబడుతుంది Node.js 15, ఇది అక్టోబర్ 20న అంచనా వేయబడుతుంది. Node.js యొక్క కొత్త వెర్షన్ కోసం వేచి ఉండకుండా NPM 7.0ని ఇన్స్టాల్ చేయడానికి, మీరు “npm i -g npm@7” ఆదేశాన్ని అమలు చేయవచ్చు.
కార్యస్థలాలు (వర్క్స్పేస్లను), ఒక దశలో వాటిని ఇన్స్టాల్ చేయడానికి అనేక ప్యాకేజీల నుండి డిపెండెన్సీలను ఒక ప్యాకేజీగా సమగ్రపరచడానికి మిమ్మల్ని అనుమతిస్తుంది.
స్వయంచాలక సంస్థాపన పీర్ డిపెండెన్సీలు (ప్రస్తుత ప్యాకేజీలో నేరుగా ఉపయోగించకపోయినా, దానితో పని చేయడానికి రూపొందించబడిన బేస్ ప్యాకేజీలను నిర్ణయించడానికి ప్లగిన్లలో ఉపయోగించబడుతుంది). పీర్ డిపెండెన్సీలు “peerDependencies” విభాగంలో ప్యాకేజీ.json ఫైల్లో పేర్కొనబడ్డాయి. గతంలో, ఇటువంటి డిపెండెన్సీలు డెవలపర్లచే మాన్యువల్గా ఇన్స్టాల్ చేయబడ్డాయి, అయితే NPM 7.0 సరిగ్గా నిర్వచించబడిన పీర్ డిపెండెన్సీని node_modules ట్రీలో అదే స్థాయిలో లేదా డిపెండెంట్ ప్యాకేజీ కంటే ఎక్కువగా ఉండేలా చూసేందుకు ఒక అల్గారిథమ్ను అమలు చేస్తుంది.
లాక్ ఫార్మాట్ యొక్క రెండవ వెర్షన్ (ప్యాకేజీ-లాక్ v2) మరియు yarn.lock లాక్ ఫైల్కు మద్దతు. కొత్త ఫార్మాట్ పునరావృతమయ్యే బిల్డ్లను అనుమతిస్తుంది మరియు ప్యాకేజీ ట్రీని పూర్తిగా నిర్మించడానికి అవసరమైన ప్రతిదాన్ని కలిగి ఉంటుంది. NPM ఇప్పుడు yarn.lock ఫైల్లను ప్యాకేజీ మెటాడేటా మరియు లాకింగ్ సమాచారం యొక్క మూలంగా కూడా ఉపయోగించవచ్చు.
నిర్వహణను సులభతరం చేయడానికి మరియు విశ్వసనీయతను పెంచడానికి కార్యాచరణను వేరు చేసే లక్ష్యంతో అంతర్గత భాగాల యొక్క ముఖ్యమైన రీఫ్యాక్టరింగ్ నిర్వహించబడింది. ఉదాహరణకు, node_modules ట్రీని తనిఖీ చేయడం మరియు నిర్వహించడం కోసం కోడ్ ప్రత్యేక మాడ్యూల్కు తరలించబడింది. Arborist.
మేము package.exports ఫీల్డ్ని ఉపయోగించేందుకు మారాము, దీని వలన అంతర్గత మాడ్యూల్లను అవసరం() కాల్ ద్వారా కనెక్ట్ చేయడం అసాధ్యం.
ప్యాకేజీ పూర్తిగా తిరిగి వ్రాయబడింది npx, ఇది ఇప్పుడు ప్యాకేజీల నుండి ఎక్జిక్యూటబుల్లను అమలు చేయడానికి "npm exec" ఆదేశాన్ని ఉపయోగిస్తుంది.
హ్యూమన్ రీడబుల్ ఫార్మాట్లో అవుట్పుట్ చేసినప్పుడు మరియు "--json" మోడ్ ఎంచుకున్నప్పుడు "npm ఆడిట్" కమాండ్ యొక్క అవుట్పుట్ గణనీయంగా మార్చబడింది.