ازگر کی معیاری لائبریری کی ایک بڑی صفائی کا منصوبہ بنایا گیا ہے۔

ازگر پروجیکٹ ڈویلپرز شائع ہوا تجویز (PEP 594) معیاری لائبریری کی ایک بڑی صفائی کے لیے۔ واضح طور پر فرسودہ اور انتہائی خصوصی صلاحیتوں اور اجزاء جو کہ تعمیراتی مسائل کا شکار ہیں اور تمام پلیٹ فارمز کے لیے متحد نہیں ہو سکتے دونوں کو Python معیاری لائبریری سے ہٹانے کے لیے پیش کیا جاتا ہے۔

مثال کے طور پر، معیاری لائبریری سے ایسے ماڈیولز کو خارج کرنے کی تجویز ہے جیسے کرپٹ (ونڈوز کے لیے دستیابی اور سسٹم لائبریریوں پر ہیشنگ الگورتھم کی دستیابی پر انحصار)، cgi (بہترین فن تعمیر نہیں، ہر درخواست کے لیے ایک نیا عمل شروع کرنے کی ضرورت ہے)، imp (importlib استعمال کرنے کی سفارش کی جاتی ہے)، پائپ (سب پروسیس ماڈیول استعمال کرنے کی سفارش کی جاتی ہے)، nis (اسے NSS، LDAP یا Kerberos/GSSAPI استعمال کرنے کی سفارش کی جاتی ہے)، spwd (اکاؤنٹ ڈیٹا بیس کے ساتھ براہ راست کام کرنے کی سفارش نہیں کی جاتی ہے)۔ ماڈیولز binhex, uu, xdrlib، کو بھی ہٹانے کے لیے نشان زد کیا گیا ہے۔
aifc
آڈیو اوپ،
حصہ
imghdr،
osaudiodev
sndhdr،
سناؤ
asynchat
asyncore
cgitb
smtpd
nntplib, macpath,
فارمیٹر، msilib اور تجزیہ کار۔

مجوزہ منصوبہ Python 3.8 میں مندرجہ بالا ماڈیولز کو فرسودہ کرنا، Python 3.8 میں وارننگ جاری کرنا، اور Python 3.10 میں CPython کے ذخیروں سے ہٹانا ہے۔
پارسر ماڈیول کو ورژن 3.9 میں ہٹانے کا منصوبہ بنایا گیا ہے، جیسا کہ اسے Python 2.5 ریلیز میں فرسودہ کیا گیا تھا، اور 3.8 برانچ میں میک پاتھ ماڈیول۔ مرکزی کوڈ سے ہٹائے جانے کے بعد، کوڈ کو علیحدہ لیگیسیلیب ریپوزٹری میں منتقل کر دیا جائے گا اور اس کی قسمت کا انحصار کمیونٹی کے اراکین کی دلچسپی پر ہوگا۔ Python 3.9 برانچ کو 2026 تک سپورٹ کیے جانے کی امید ہے، جو کہ پراجیکٹس کو بیرونی متبادل کی طرف منتقل ہونے کے لیے کافی وقت فراہم کرے گی۔

ابتدائی طور پر، ftplib، optparse، getopt، colorsys، fileinput، lib2to3 اور ویو ماڈیولز کو بھی ہٹانے کی تجویز دی گئی تھی، لیکن انہیں فی الحال معیاری لائبریری کے حصے کے طور پر چھوڑنے کا فیصلہ کیا گیا، کیونکہ یہ وسیع پیمانے پر ہیں اور موجودگی کے باوجود متعلقہ رہتے ہیں۔ زیادہ جدید متبادلات یا آپریٹنگ سسٹمز کی مخصوص صلاحیتوں کے پابند۔

یاد کریں کہ ازگر کے پروجیکٹ نے ابتدائی طور پر "بیٹریاں شامل" نقطہ نظر اختیار کیا، جس میں مختلف قسم کی ایپلی کیشنز کے لیے معیاری لائبریری میں فنکشنز کا ایک بھرپور سیٹ پیش کیا گیا۔ اس نقطہ نظر کے فوائد میں سے ایک Python پروجیکٹس کو برقرار رکھنے اور پروجیکٹس میں استعمال ہونے والے ماڈیولز کی سیکیورٹی کی نگرانی کرنا ہے۔ ماڈیولز میں کمزوریاں اکثر ان ایپلی کیشنز میں کمزوریوں کا ذریعہ بن جاتی ہیں جو انہیں استعمال کرتی ہیں۔ اگر فنکشنز معیاری لائبریری میں شامل ہیں، تو یہ مرکزی پروجیکٹ کی حالت کو کنٹرول کرنے کے لیے کافی ہے۔ معیاری لائبریری کو تقسیم کرتے وقت، ڈویلپرز کو فریق ثالث کے ماڈیولز استعمال کرنے کی ضرورت ہوتی ہے، جن میں سے ہر ایک میں موجود خطرات کو الگ سے مانیٹر کیا جانا چاہیے۔ اعلی درجے کے ٹکڑے اور انحصار کی ایک بڑی تعداد کے ساتھ، ماڈیول ڈویلپرز کے بنیادی ڈھانچے سے سمجھوتہ کرنے کے ذریعے حملوں کا خطرہ ہے۔

دوسری طرف، معیاری لائبریری میں ہر اضافی ماڈیول کو برقرار رکھنے کے لیے Python ڈیولپمنٹ ٹیم کے وسائل کی ضرورت ہوتی ہے۔ لائبریری میں نقل کرنے والے اور بے کار فنکشنز کی ایک بڑی تعداد جمع ہو گئی ہے، جس کو ختم کر کے دیکھ بھال کے اخراجات کو کم کیا جا سکتا ہے۔ جیسے جیسے کیٹلاگ تیار ہوتا ہے۔ پییآئآئ اور اضافی پیکجز کو انسٹال کرنے اور ڈاؤن لوڈ کرنے کے عمل کو آسان بناتے ہوئے، بیرونی ماڈیولز کا استعمال اب بلٹ ان فنکشنز کی طرح عام ہو گیا ہے۔

زیادہ سے زیادہ ڈویلپرز معیاری ماڈیولز کے لیے زیادہ فعال بیرونی متبادلات استعمال کر رہے ہیں، مثال کے طور پر، xml کے بجائے lxml ماڈیول کا استعمال۔ معیاری لائبریری سے ترک شدہ ماڈیولز کو ہٹانے سے کمیونٹی کی طرف سے فعال طور پر تیار کردہ متبادلات کی مقبولیت میں اضافہ ہوگا۔ اس کے علاوہ، معیاری لائبریری کو کم کرنے سے بیس ڈسٹری بیوشن کے سائز میں کمی واقع ہوگی، جو کہ محدود اسٹوریج سائز کے ساتھ ایمبیڈڈ پلیٹ فارمز پر ازگر کا استعمال کرتے وقت اہم ہے۔

ماخذ: opennet.ru

نیا تبصرہ شامل کریں