డెబియన్ మరియు ఫెడోరా డిపెండెన్సీల సమస్యను పరిష్కరించడానికి ప్రయత్నిస్తున్నారు

లైనక్స్ పంపిణీలు పెరుగుతున్న డిపెండెన్సీల సమస్యను ఎదుర్కొంటున్నాయి ప్రాజెక్టుల, అయితే పైథాన్, పెర్ల్ మరియు రూబీ కోడ్ కోసం డిపెండెన్సీల సంఖ్య ఉంచబడుతుంది సహేతుకమైన పరిమితుల్లో, జావాస్క్రిప్ట్ ప్రాజెక్టులు చాలా చిన్న లైబ్రరీలుగా విభజించడాన్ని అభ్యసిస్తాయి, తరచూ సాధారణ పనితీరును నిర్వహిస్తాయి.

NPM రిపోజిటరీలో ఇప్పటికే ఒక మిలియన్ ప్యాకేజీలు ఉన్నాయి మరియు సాధారణ అనువర్తనాలు వందలాది డిపెండెన్సీలకు లింక్, ఇది వారి స్వంత డిపెండెన్సీలను కలిగి ఉంటుంది, ఇది లైనక్స్ పంపిణీలలో జావాస్క్రిప్ట్ అనువర్తనాలతో సాంప్రదాయ ప్యాకేజీలను నిర్వహించడం మరియు పంపిణీ చేయడం కష్టతరం చేస్తుంది.

జావాస్క్రిప్ట్ లైబ్రరీ డిపెండెన్సీల యొక్క గట్టిగా ముడిపడి ఉండటం వలన, పంపిణీలో అటువంటి లైబ్రరీలతో ఏదైనా ప్యాకేజీని నవీకరించడం ఇది ఇతర ప్యాకేజీలను విచ్ఛిన్నం చేస్తుంది.

సంస్కరణ బైండింగ్‌లు సమస్యను మరింత పెంచుతాయి: ఒక లైబ్రరీ స్థిరంగా పనిచేయడానికి డిపెండెన్సీ యొక్క ఒక వెర్షన్ అవసరం కావచ్చు మరియు మరొకటి మరొకటి అవసరం కావచ్చు.

చాలా ప్రాజెక్టులకు లైబ్రరీల యొక్క తాజా వెర్షన్లు పనిచేయడం అవసరం, ఇది ఎల్లప్పుడూ పంపిణీ యొక్క స్థిరత్వ అవసరాలను తీర్చదు (ఫ్రేమ్‌వర్క్‌ల యొక్క తాజా సంస్కరణలను ఉపయోగించి Node.js పర్యావరణ వ్యవస్థలో నిరంతర అభివృద్ధి సాధన చేయబడుతుంది మరియు పంపిణీకి చాలా సంవత్సరాలు మద్దతు అవసరం).

పంపిణీలో మాత్రమే ప్యాకేజీ సంస్కరణలను పరిష్కరించడానికి ప్రయత్నిస్తుంది కాలం చెల్లిన సంస్కరణల పెరుగుదలకు దారితీస్తుంది సంవత్సరాలుగా నవీకరించబడని రిపోజిటరీలో. ఒక ప్యాకేజీ నిర్వహణకు అంతరాయం అనేక ఇతర ప్యాకేజీలను ప్రతికూలంగా ప్రభావితం చేస్తుంది మరియు మరిన్ని సమస్యలను సృష్టిస్తుంది.

ఇంకా, lక్రాస్ డిపెండెన్సీలు యొక్క అనేక గ్రంథాలయాలు Node.js సిస్టమ్ నుండి అన్‌ఇన్‌స్టాల్ చేయడం అసాధ్యం అవుతుంది, ఇది ఇతర Node.js ప్రోగ్రామ్‌లను అన్‌ఇన్‌స్టాల్ చేయకుండా నిరోధిస్తుంది.

ఈ పరిస్థితిని పరిష్కరించడానికి, ఫెడోరా ప్రాజెక్ట్ ఇటీవల నోడ్.జెస్-ఆధారిత ప్రాజెక్టులలో ఉపయోగించే లైబ్రరీలతో ప్రత్యేక ప్యాకేజీల డిఫాల్ట్ ఏర్పాటును నిలిపివేసే ప్రణాళికను ఆమోదించింది.

ఫెడోరా 34 తో ప్రారంభించి, ఒక వ్యాఖ్యాత, శీర్షికలు, ప్రాధమిక గ్రంథాలయాలు, బైనరీలు మరియు ప్రాథమిక ప్యాకేజీ నిర్వహణ సాధనాలు (ఎన్‌పిఎం, నూలు) తో నోడ్.జెస్ కోసం బేస్ ప్యాకేజీలను మాత్రమే సరఫరా చేయాలని ఆయన నిర్ణయించుకున్నారు.

Node.js ఉపయోగించే ఫెడోరా రిపోజిటరీ అనువర్తనాల్లో, ప్రత్యేక ప్యాకేజీలలో ఉపయోగించే లైబ్రరీలను విభజించకుండా మరియు వేరు చేయకుండా, ఇప్పటికే ఉన్న అన్ని డిపెండెన్సీలను ప్యాకేజీలో పొందుపరచడానికి ఇది అనుమతించబడుతుంది.

ఎంబెడ్డింగ్ లైబ్రరీలు చిన్న ప్యాకేజీ అయోమయాన్ని తొలగిస్తాయి, ప్యాకేజీ నిర్వహణను సులభతరం చేస్తాయి (గతంలో నిర్వహణదారు ప్రోగ్రామ్‌తో ఉన్న ప్రధాన ప్యాకేజీ కంటే గ్రంథాలయాలతో వందలాది ప్యాకేజీలను సమీక్షించడానికి మరియు పరీక్షించడానికి ఎక్కువ సమయం గడిపాడు), గ్రంథాలయాల సంఘర్షణల నుండి మౌలిక సదుపాయాలను ఆదా చేస్తుంది మరియు లింక్ చేయడంలో సమస్యలను పరిష్కరిస్తుంది లైబ్రరీ సంస్కరణలు (నిర్వహణలో పరీక్షించిన మరియు ఉత్పత్తి-పరీక్షించిన సంస్కరణలు ప్యాకేజీలో ఉంటాయి).

ఏకీకరణ యొక్క ఇబ్బంది దిద్దుబాట్లను తీసుకువచ్చే ప్రక్రియ యొక్క సమస్య అవుతుంది లైబ్రరీలలోని దుర్బలత్వం, హాని కలిగించే లైబ్రరీని కలిగి ఉన్న అన్ని ప్యాకేజీల నిర్వహణదారుల సమన్వయ పని అవసరం. హాని కలిగించే అంతర్నిర్మిత లైబ్రరీని నవీకరించడానికి ప్యాకేజీ మరచిపోయే ప్రమాదం ఉంది మరియు ప్యాకేజీ గుర్తించబడదు.

యొక్క డెవలపర్లు ఇలాంటి ప్యాకేజీ డిపెండెన్సీ ఇంటిగ్రేషన్ మోడల్‌కు మారడం గురించి కూడా డెబియన్ చర్చిస్తున్నారు. Node.js తో పాటు, కుబెర్నెట్స్ ప్లాట్‌ఫాం మరియు PHP మరియు గో భాషల్లోని ప్రాజెక్టుల కోసం ప్యాకేజీల సృష్టిపై చర్చ తాకింది, దీని కోసం చిన్న డిపెండెన్సీలుగా విభజించే ధోరణి ఉంది. ఇంకా ఎటువంటి నిర్ణయం తీసుకోలేదు, కానీ కాలక్రమేణా సమస్య మరింత తీవ్రమవుతుందని మరియు ముందుగానే లేదా తరువాత ఈ ప్రాజెక్ట్ ఏదో ఒకటి చేయమని బలవంతం అవుతుందని భావిస్తున్నారు.

Gvm (గ్రీన్బోన్ వల్నరబిలిటీ మేనేజ్మెంట్) సెక్యూరిటీ స్కానర్ కోసం gsa (గ్రీన్బోన్ సెక్యూరిటీ అసిస్టెంట్) వెబ్ ఇంటర్ఫేస్ ప్యాకేజీ నిర్వహణదారులకు ఉన్న సమస్యలకు ఉదాహరణగా పేర్కొనబడింది.

Gsa యొక్క డెబియన్-షిప్డ్ వెర్షన్ gvm యొక్క క్రొత్త సంస్కరణలతో సరిపడదని తేలింది, కాని ప్రస్తుత మార్పుకు gsa ని అప్‌డేట్ చేయడం సాధ్యం కాలేదు ఎందుకంటే ఇది గణనీయమైన మార్పులను కలిగి ఉంది మరియు అవసరమైన Node.js లైబ్రరీలను డౌన్‌లోడ్ చేయడానికి npm ని ఉపయోగిస్తుంది.

అభ్యర్థించిన గ్రంథాలయాలు చాలా ఎక్కువ మరియు వాటిని నిర్వహించడానికి ఎవరైనా డెబియన్‌లో కొత్త ప్యాకేజీలను సృష్టించడం అవసరం, ఎందుకంటే నిర్మాణ ప్రక్రియలో బాహ్య భాగాలను లోడ్ చేయడాన్ని డెబియన్ నియమాలు నిషేధించాయి.

మూలం: https://lwn.net/


వ్యాసం యొక్క కంటెంట్ మా సూత్రాలకు కట్టుబడి ఉంటుంది సంపాదకీయ నీతి. లోపం నివేదించడానికి క్లిక్ చేయండి ఇక్కడ.

ఒక వ్యాఖ్య, మీదే

మీ వ్యాఖ్యను ఇవ్వండి

మీ ఇమెయిల్ చిరునామా ప్రచురితమైన కాదు.

*

*

  1. డేటాకు బాధ్యత: మిగ్యుల్ ఏంజెల్ గాటన్
  2. డేటా యొక్క ఉద్దేశ్యం: కంట్రోల్ స్పామ్, వ్యాఖ్య నిర్వహణ.
  3. చట్టబద్ధత: మీ సమ్మతి
  4. డేటా యొక్క కమ్యూనికేషన్: డేటా చట్టపరమైన బాధ్యత ద్వారా తప్ప మూడవ పార్టీలకు తెలియజేయబడదు.
  5. డేటా నిల్వ: ఆక్సెంటస్ నెట్‌వర్క్స్ (EU) హోస్ట్ చేసిన డేటాబేస్
  6. హక్కులు: ఎప్పుడైనా మీరు మీ సమాచారాన్ని పరిమితం చేయవచ్చు, తిరిగి పొందవచ్చు మరియు తొలగించవచ్చు.

  1.   Qtkk అతను చెప్పాడు

    ECMA స్క్రిప్ట్‌లోని ఫ్రేమ్‌వర్క్‌లు మరియు లైబ్రరీల యొక్క ఈ విచ్ఛిన్నం చేతిలో లేదు.
    మంచి వ్యాసం.