NeoPG యొక్క ముఖ్య వ్యత్యాసాలు కాలం చెల్లిన అల్గారిథమ్ల అమలు నుండి కోడ్ యొక్క ముఖ్యమైన క్లీనప్, C భాష నుండి C++11కి మారడం, నిర్వహణను సులభతరం చేయడానికి సోర్స్ టెక్స్ట్ స్ట్రక్చర్ను ప్రాసెస్ చేయడం మరియు అభివృద్ధి కోసం విస్తరించదగిన APIని అందించడం. యాడ్-ఆన్ల. అన్నీ కొత్త కోడ్
మార్పులలో, cmake అసెంబ్లీ సిస్టమ్కు మార్పు మరియు Libgcryptని లైబ్రరీతో భర్తీ చేయడం
NeoPG యొక్క ప్రధాన కార్యాచరణ libneopg లైబ్రరీ రూపంలో అమలు చేయబడుతుంది, ఇది మూడవ పక్ష అనువర్తనాల్లో ఉపయోగించబడుతుంది. కమాండ్ లైన్ ఇంటర్ఫేస్ libneopg పైన అమలు చేయబడుతుంది, ఇది GnuPG (gpg, gpgsm, gpgconf, gpgv, gpgtar, మొదలైనవి)లో చేర్చబడిన అసమాన యుటిలిటీలను Git-శైలి సబ్కమాండ్లతో మరియు రంగు అవుట్పుట్కు మద్దతుతో ఒకే neopg ఎక్జిక్యూటబుల్ ఫైల్గా మిళితం చేస్తుంది. GnuPG 2తో అనుకూలతను నిర్ధారించడానికి "neopg gpg2" కమాండ్లో ఒక లేయర్ అమలు చేయబడింది.
కొత్త విడుదల gpg2 యుటిలిటీతో అనుకూలతను మెరుగుపరిచింది - gpg2 అనేది neopgకి హార్డ్ లింక్ అయితే, GnuPG 2తో కమాండ్ అనుకూలతను నిర్ధారించడానికి ఒక లేయర్ స్వయంచాలకంగా వర్తించబడుతుంది. కొత్త "ప్యాకెట్ డంప్" కమాండ్ జోడించబడింది. ఉబుంటు 18.04 కోసం మద్దతు అందించబడింది. Cmake బిల్డ్ స్క్రిప్ట్ల పనితీరు మెరుగుపరచబడింది. boost ::formatకు బదులుగా, fmtlib లైబ్రరీ ఉపయోగించబడుతుంది. కీస్టోర్ల కోసం OpenPGP పార్సర్ జోడించబడింది.
మూలం: opennet.ru