قیمت انتقال مرکوریال به پایتون 3 ممکن است دنباله ای از خطاهای غیرمنتظره باشد.

نگهدارنده سیستم کنترل نسخه تند من را پایین بیاور نتيجه کار بر روی انتقال پروژه از پایتون 2 به پایتون 3. علیرغم این واقعیت که اولین تلاش های پورت کردن در سال 2008 انجام شد و تطبیق سریع برای کار با پایتون 3 در سال 2015 آغاز شد، توانایی کامل استفاده از پایتون 3 تنها در آخرین مورد اجرا شد. شاخه مرکوریال 5.2.

پیش بینی ها در مورد پایداری پورت برای پایتون 3 ناامید کننده است. به طور خاص، انتظار می رود که خطاهای تصادفی در طول چندین سال در کد ظاهر شوند، زیرا آزمایش ها 100٪ پایه کد را پوشش نمی دهند و بسیاری از مشکلات در طول تجزیه و تحلیل استاتیک نامرئی هستند و فقط در زمان اجرا ظاهر می شوند. علاوه بر این، بسیاری از افزونه ها و افزونه های شخص ثالث به پایتون 3 ترجمه نشده باقی می مانند.
از آنجایی که در طول انتقال، تصمیم گرفته شد تا به تدریج کد را با پایتون 3 تطبیق دهیم، در حالی که پشتیبانی از پایتون 2 را حفظ کرد، این کد هک های زیادی را برای ترکیب پایتون 2 و 3 به دست آورد که پس از پایان پشتیبانی از پایتون 2 باید پاک شوند.

در اظهار نظر در مورد وضعیت پایتون 3، نگهدارنده Mercurial معتقد است که تصمیم برای ارتقای پایتون 3 که قابلیت همکاری را دارد و تحمیل آن به عنوان یک زبان جدید و صحیح تر، در غیاب پیشرفت های مهم مربوط به توسعه دهندگان، اشتباه بزرگی بود که باعث شد. آسیب بزرگی به جامعه وارد می کند و نمونه ای از این است که چگونه پروژه های بزرگ نیاز به انجام این کار ندارند. به جای ایجاد تدریجی عملکرد و اجازه دادن به برنامه‌ها برای سفارشی‌سازی تدریجی، انتشار Python 3 توسعه‌دهندگان را مجبور به بازنویسی کد و صرف منابع برای نگهداری شاخه‌های جداگانه برای Python 2 و Python 3 کرد. هفت سال پس از انتشار Python 3.0 نگذشته بود که پایتون 3.5 ویژگی هایی را برای صاف کردن فرآیند انتقال و اطمینان از اجرای یک پایه کد هر دو پایتون 2 و پایتون 3 معرفی کرد.

منبع: opennet.ru

اضافه کردن نظر