تافهة تافهة الفرح رقم 3: الشعر


إدارة التبعية؟ شو ، مرة أخرى؟


لقد أحدث نظام Python البيئي مجموعة من الطرق لإدارة التبعيات في المشروعات.
يمكنك الآن الاختيار بين setup.py و requirements.txt و setup.cfg و MANIFEST.in و Pipfile.
لكن الثعبان الفرنسي سيباستيان يوستاس لم ينجح في إيجاد كل هذه الأساليب ، وقد كتب كلمته الخاصة لإدارة عبوات الحيوانات الأليفة - الشعر . لماذا فعل هذا؟ لاستبدال كل هذه setup.py و requirements.txt و setup.cfg و MANIFEST.in و Pipfile بشيء بسيط ومباشر. بالإضافة إلى إضافة شيء مفيد في الأعلى.


صورة


يتيح لك Poetry توجيه مجموعة من الأشياء في وقت واحد - إصدار اللغة في مشروعك ، التبعيات ، المسارات القابلة للتوصيل ، البرامج النصية للاختبار / التطوير ، الإنشاءات ونشرها ، كل المسارات اللازمة ، التبعيات والبرامج النصية موصوفة في ملف pyproject.toml خاص.


يعمل Poetry بشكل أفضل عند الاقتران بـ pyenv ، وهو نظام لإدارة إصدارات متعددة من Python والبيئات الافتراضية.


نشعر


نشمر عن سواعدنا ونرى كيف يعمل الشعر في الأعمال. أول شيء فعله هو وضع pyenv ، باتباع التعليمات الرسمية على الأرصفة.


#  pyenv,        $ pyenv update #     Python     $ pyenv install -l #    ,       $ pyenv install 3.7.3 #      zlib,    # CFLAGS="-I$(xcrun --show-sdk-path)/usr/include" pyenv install 3.7.3 #          $ pyenv local 3.7.3 #  poetry $ pip3 install poetry #    $ poetry init # Poetry         pyproject.toml,       #     .       ,      . $ poetry add flask celery # Poetry       pyproject.toml #     ,     PIP (,       ),     $ poetry add my-package --path ../my-package/ #       $ poetry show #        Python $ poetry run python #      Python   ,     flask  celery,    . 

يتم تثبيت البيئة وتكوينها ، يتم التحكم التبعيات بإصبع واحد ، يمكنك قص الرمز!


سيكون لديك على الأرجح في أوامر مشروعك تشغيل الخادم والعمال ونصوص النشر والاختبار. يمكنك وضعها في pyproject.toml وتوجيهها أيضًا بإصبع واحد.


إضافة إلى الملف


 my-script = "my_module:main" 

والآن يمكنك تشغيل البرنامج النصي باستخدام الأمر


 poetry run my-script 

لماذا هذا كله؟


إنفاق عشر دقائق لإتقان هذا الشيء ، ستوفر الوقت والأعصاب على إدارة إصدارات اللغة والحزم وتتبع التبعيات ومسارات الإعداد. هذا سيساعد بشكل خاص أولئك الذين حاولوا مرة واحدة على الأقل نشر تطوراتهم في النقطة :)


  • محلل التبعية قادر دائمًا على إيجاد حل لتعارض إصدار الحزمة (إذا كان موجودًا على الإطلاق)
  • إنشاء صناديق رمل تلقائيًا لتشغيل المشاريع.
  • أداة مساعدة جميلة تعمل على تبسيط مشاريع الإطلاق والاختبارات ونشرها.

Poetry صديق مع وحدات تحكم بيئة افتراضية أخرى ، لذلك سيكون دمج النهج الجديد في المشروعات القديمة أمرًا سهلاً للغاية.

Source: https://habr.com/ru/post/ar455335/


All Articles