ایتیریس ، د پایتون کوډ ازمونې کولو وسیله کڅوړه

ګوګل پرانستل شو د د اتیرس پروژه، کوم چې پرمختګ دی د خلاصې سرچینې اوزارونو سیټ تخصص لرونکی د پاګون کوډ ازموینې لپاره او په C / C ++ کې د CPython لیکل شوي توسیعونه.

پروژه د لیب فوزر پر اساس انجن کاروي او د اضافي غلطیو کشف کولو لپاره د پتې سینیټیزیر او نامعلومه سلوک سینیټیزر وسیلو سره په ګډه کارول کیدی شي. کوډ د اپاچی 2.0 جواز لاندې خلاص دی.

د ګوګل اتیرس په اړه

د ګوګل اتیریس په ټکو کې ، دا یو وسیله کټ دی چې د پایتون کوډ او اصلي توسیعونو کې په اوتومات ډول د غلطو موندلو لپاره کارول کیدی شي. اتیریس د 'پوښښ پرمخ وړل شوی' فزر دی ، پدې معنی چې اتیریس به ستاسو د نندارې ته په مکرر ډول مختلف وسیلې هڅه کوي پداسې حال کې چې دا چلوي او په زړه پورې لارې موندلو هڅه به کوي.

د Python 2.7 او Python 3.3+ لپاره د کوډ بیاکتنه ملاتړ شوې، مګر د بشپړ لارښود پوښښ لپاره ، دا د پیتون 3.8 او 3.9 څانګو کارولو سپارښتنه کیږي ، کوم چې اوس د اپ کوډ په واسطه د کوډ احصایې ملاتړ کوي.

په پروسه کې ، ایتیریس د معلوماتو معلوماتو ممکنه ترکیب لیست کوي او راپور چمتو کوي په ټولو کشف شویو غلطیو او نه کشف شوي استثنااتو باندې.

د مثال په توګه ، کله چې په اتیرس کې د YAML پارسینګ کتابتون وګورئ ، وموندل شو چې ځینې YAML جوړونه ، لکه د بشپړ ارزښت په ځای "-_" مشخص کول یا د کیلي پرځای لیست کارول ، د یو پرځای غیر متوقع استثناء غورځول د YAMLErferences معیاري غلطي.

د فوز ازموینه د برنامه کولو تېروتنو کشف کولو لپاره یو مشهوره تخنیک دی. ډیری د دې کشف کونکي غلطي جدي امنیتي اغیز لري. ګوګل د دې ټیکنالوژۍ کارولو پر مهال په زرهاو امنیتي زیانونه او نورې کړۍ وموندلې. فوزینګ په دودیز ډول په اصلي ژبو لکه C یا C ++ کې کارول کیږي ، مګر تیر کال موږ د پیتون یو نوی انجن رامینځته کړ. نن ورځ ، موږ د خلاصې سرچینې په توګه د ایتریس فزینګ انجن خپور کړ.

اتیریس په چلند کې د توپیرونو پیژندلو لپاره هم کارول کیدی شي د کتابتونونو چې ورته دندې په نښه کوي. د مثال په توګه ، د Python کڅوړه "idna" لنډیز چیک او کتابتون "libidn2" ، کوم چې د نړیوال شوي ډومین نومونو د کوډ کولو کار ترسره کوي ، وموندله چې دوی تل ورته پایلې نه تولیدوي.

د ایتیرس لپاره یو له غوره کارولو څخه د مختلف توپیر کونکو لپاره دی. دا فیزرونه دي چې د دوه کتابتونونو په چلند کې توپیرونه ګوري چې د ورته کار کولو لپاره دي. د ایتیریس سره بنډل شوي فوزرز یوه له اصلي څخه دا د Python "idna" بسته د C "libidn2" بسته سره پرتله کولو لپاره ترسره کوي.

په ځانګړي توګه ، که ډومین د یونیکوډ تسلسل وکاروي ، نو بیا "idna" او "libidn2" د نړیوال شوي ډومین نوم مختلف کوربه ته بدلوي.

په عموم کې ، ایتریس د خالص پایټون کوډ کې ګټور دی ترهغې پورې چې دا د څرګندولو یوه لاره وي چې "سم" چلند څه شی دی ، یا لږترلږه دا څرګندوي چې کوم چلندونه یقینا سم ندي. دا په فوزر کې د دودیز کوډ په څیر پیچلی کیدی شي چې د کتابتون د محصول درستیت ارزوي ، یا د ارزونې په څیر ساده چې هیڅ غیر متوقع استثنا نه راپورته کیږي.

دا مهمه ده چې دا په پام کې ونیول شي فزینګ ازموینې د داخلي معلوماتو هرډول تصادفي ترکیبونو جریان رامینځته کوي. اصلي ډاټا ته نږدې (د بیلګې په توګه د html پا pagesې د بې ترتیب ټګ پیرامیټرو سره ، فایلونه یا عکسونه غیر معمولي سرلیکونه ، او نور) او په پروسه کې احتمالي خنډونه تنظیم کړئ.

که کوم ترتیب په استثنا کې پایله ولري یا د متوقع ځواب سره مطابقت ونلري ، نو دا چلند ډیری احتمال یوه مسئله یا زیان منونکي نښه کوي.

په نهایت کې ، لکه څنګه چې یادونه وشوه ایتریس د 2.7 او 3.3+ نسخه کې د پیتون کوډ سره کار کوي ، که څه هم ګوګل د 3.8+ او د CPython لپاره لیکل شوي اصلي توسیع کارولو په کلکه سپارښتنه کوي.

وینډوز لاهم د ملاتړ شوي عملیاتي سیسټمونو څخه ندینو ، نو انجن د اوس لپاره یوازې د لینکس او ماک OS X کاروونکو لپاره علاقه لري.

د دې پلیټ فارمونو کې د دې کارولو لپاره ، پراختیا کونکي باید د کلینګ کمپیلر فرنټینډ اوسنی نسخه نصب کړي.

که تاسو غواړئ پدې اړه نور پوه شئتاسو کولی شئ اصلي یادداشت په لاندې لینک


د مقالې مینځپانګه زموږ د اصولو سره سمون لري ایډیټیک اخلاق. د غلطۍ راپور ورکولو لپاره کلیک وکړئ دلته.

لومړی د تبصره کولو لپاره وئ

خپله نظر پرېږدئ

ستاسو د بریښنا لیک پته به خپره نه شي. اړین برخو سره په نښه شوي دي *

*

*

  1. د معلوماتو لپاره مسؤل: میګیوانجل ګاتین
  2. د معلوماتو هدف: د سپیم کنټرول ، د نظر مدیریت.
  3. قانونیت: ستاسو رضایت
  4. د معلوماتو راټولول: معلومات به د قانوني مکلفیت پرته دریمې ډلې ته نه لیږدول کیږي.
  5. د معلوماتو ذخیره: ډیټابیس د Occentus شبکې (EU) لخوا کوربه شوی
  6. حقونه: په هر وخت کې تاسو کولی شئ خپل معلومات محدود ، له سره تنظیم او حذف کړئ.