జనాదరణ పొందిన డిపెండెన్సీలలో ఒకదాని యొక్క కొత్త వెర్షన్లో సమస్యల కారణంగా NPM రిపోజిటరీ ప్రాజెక్ట్ల యొక్క మరొక భారీ అంతరాయాన్ని ఎదుర్కొంటోంది. సమస్యలకు మూలం mini-css-extract-plugin 2.5.0 ప్యాకేజీ యొక్క కొత్త విడుదల, CSSని ప్రత్యేక ఫైల్లుగా సంగ్రహించడానికి రూపొందించబడింది. ప్యాకేజీ 10 మిలియన్ కంటే ఎక్కువ వారపు డౌన్లోడ్లను కలిగి ఉంది మరియు 7 వేల కంటే ఎక్కువ ప్రాజెక్ట్లపై నేరుగా ఆధారపడేలా ఉపయోగించబడుతుంది.
కొత్త సంస్కరణలో, లైబ్రరీని దిగుమతి చేసేటప్పుడు వెనుకకు అనుకూలతను ఉల్లంఘించే మార్పులు చేయబడ్డాయి మరియు గతంలో చెల్లుబాటు అయ్యే మరియు డాక్యుమెంటేషన్ నిర్మాణంలో వివరించిన “const MiniCssExtractPlugin = require('mini-css-extract-plugin')ని ఉపయోగించడానికి ప్రయత్నిస్తున్నప్పుడు లోపానికి దారితీసింది. ”, కొత్త సంస్కరణకు మారేటప్పుడు “const MiniCssExtractPlugin = అవసరం(“mini-css-extract-plugin”).default”తో భర్తీ చేయాలి.
డిపెండెన్సీలను చేర్చినప్పుడు సంస్కరణ సంఖ్యకు స్పష్టంగా కట్టుబడి లేని ప్రాజెక్ట్లలో సమస్య వ్యక్తమవుతుంది. ప్రత్యామ్నాయంగా, యార్న్లో '"ఓవర్రైడ్లు": {"mini-css-extract-plugin": "2.4.5"}'ని జోడించడం ద్వారా లేదా ఆదేశాన్ని ఉపయోగించి మునుపటి వెర్షన్ 2.4.5కి లింక్ను సరిచేయాలని సిఫార్సు చేయబడింది. npm i -D" --సేవ్-ఖచ్చితమైన [ఇమెయిల్ రక్షించబడింది]"NPMలో.
బాధితుల్లో Facebook అభివృద్ధి చేసిన క్రియేట్-రియాక్ట్-యాప్ ప్యాకేజీని వినియోగదారులు కలిగి ఉన్నారు, ఇది mini-css-extract-pluginని డిపెండెన్సీగా కలుపుతుంది. mini-css-extract-plugin వెర్షన్ నంబర్కు బైండింగ్ లేకపోవడం వల్ల, create-react-appని ప్రారంభించే ప్రయత్నాలు "TypeError: MiniCssExtractPlugin ఒక కన్స్ట్రక్టర్ కాదు" లోపంతో ముగిశాయి. ఈ సమస్య @wordpress/scripts, @auth0/auth0-spa-js, sql-formatter-gui, LedgerSMB, vip-go-mu-plugins, cybros, vue-cli, chore మొదలైన ప్యాకేజీలను కూడా ప్రభావితం చేసింది.
మూలం: opennet.ru