القراء مثلك يساعدون في دعم MUO. عند إجراء عملية شراء باستخدام الروابط الموجودة على موقعنا ، فقد نربح عمولة تابعة.

يمكن أن تكون أخطاء التبعية أسوأ كابوس للمطور. يمكنك أن تستهلك الكثير من الوقت في ترقية التبعيات وتقليلها في محاولة عبثية لحل المشكلات.

Pipenv هو مدير تبعية فعال لمشاريع Python. يقوم بإنشاء وإدارة تبعيات البيئة الافتراضية في كل من التطوير والإنتاج.

يتعامل Pipenv مع إضافة وإزالة حزم التبعية مما يقلل التعارضات. كما أنه يحسن Pip من خلال إجراءات الأمان المتزايدة وخيارات الإصدار وتحديثات الحزمة.

لماذا استخدام Pipenv على Virtualenv؟

Virtualenv هو الأكثر شيوعًا أداة بيئة افتراضية Python، وهناك بدائل أخرى. تشمل مزايا استخدام Pipenv بدلاً من هذه الأدوات ما يلي:

  • يمكنك تثبيت الحزم بدون إصدارات. يقلل عدم استخدام الإصدار من التعارض عند العمل مع إصدارات مختلفة من التبعيات.
  • يجمع Pipenv بين Pip و Virtualvenv ؛ لم تعد تستخدمها بشكل منفصل.
  • يزيل Pipenv ملف requirements.txt. ينشئ Pipenv Pipfile لتتبع التبعيات و Pipfile.lock لبناء التطبيق.
  • وهو يدعم الإعداد السريع والسهل للبيئات الافتراضية.

يضيف Pipenv أكثر من ملفات إضافية إلى Pip. في القسم التالي ، تعرف على بعض الميزات الإضافية التي تجعل PIpenv حزمة شاملة.

instagram viewer

ترقية الحزم المثبتة

قد ترغب في ترقية الحزم المثبتة إذا كانت هناك إصدارات جديدة. من المحتمل أن تحتوي الإصدارات المحدثة على ميزات جديدة لتحسين تطبيقك.

لاكتشاف تحديثات جديدة للتبعيات ، قم بتشغيل الأمر التالي:

بيبينف تحديث- عفا عليها الزمن

في حالة توفر تحديثات جديدة ، قد تحتاج إلى ترقية الحزم. هناك طريقتان لترقية الحزم. يمكنك ترقية كل شيء أو يمكنك اختيار ترقية حزم معينة فقط.

لترقية كل شيء ، قم بتشغيل أمر التحديث التالي:

بيبينف تحديث

لترقية حزم محددة فقط ، قم بتشغيل الكود كما هو موضح أدناه:

بيبينف تحديث# ترقيات حزمة محددة

استيراد الحزم من requirements.txt

سيقوم Pipenv باستيراد محتوى ملف requirements.txt إذا تم تثبيته في نفس المشروع. عندما تقوم بتشغيل تثبيت pipenv، تقوم باستيراد وإنشاء ملف Pipfile.

يتيح لك Pipenv أيضًا استيراد ملف requirements.txt. تحتاج إلى تحديد موقع ملف requirements.txt عند التثبيت ، كما هو موضح:

بيبينف ثَبَّتَ -r طريق/ل/requirements.txt # يستورد ملف المتطلبات.

من المحتمل أن يأتي ملف requirements.txt مع حزم بأرقام الإصدارات. يمكنك إزالة الحزم الجديدة وتثبيتها. إذا كنت تنوي الاحتفاظ بالحزم التي تم إصدارها ، فقم بتشغيل الأمر التالي:

بيبينف قفل- حافظ على عفا عليها الزمن

ميزات أمان محسّنة لـ Pipenv

يعمل Pipfile.lock في Pipenv على تحسين التحسينات الأمنية الجديدة في Pip. ينشئ Pipfile.lock تجزئة sha256 لكل حزمة تم تنزيلها.

يضمن Pipenv عدم تنزيل الملفات الضارة عند الاتصال بشبكة مخترقة.

تحديد إصدارات بايثون

باستخدام Pipenv ، يمكنك اختيار إصدار مفضل من Python لمشروعك. قد ترغب في تحديد ما إذا كنت قد قمت بتثبيت عدة إصدارات من Python.

لاستخدام Python3

بيبينف - بايثون 3# سيستخدم Pipenv أي إصدار 3 مثبت
بيبينف - بايثون 3.8# سيستخدم Pipenv الإصدار 3.8

عند تحديد إصدار Python ، يقوم Pipenv بفحص النظام بحثًا عن إصدار Python هذا. إذا لم تحدد ، فسيقوم Pipenv باختيار أحدث إصدار من Python مثبتًا على جهازك. تعلم المزيد من وثائق رسمية Pipenv.

تثبيت واستخدام Pipenv في مثال عملي

بعد ذلك ، تابع التثبيت وتعلم كيفية استخدام Pipenv عمليًا.

1. قم بتثبيت Pipenv

قبل تثبيت Pipenv ، تحتاج أولاً إلى تحديث جميع التبعيات المثبتة. قم بتشغيل التحديثات باستخدام الأمر التالي:

sudo apt-يحصل تحديث

بعد ذلك ، قم بتثبيت Pipenv باستخدام الأمر التالي:

نقطة 3 ثَبَّتَ بيبينف

إذا لم تكن هناك أخطاء ، فهذا يعني أن التثبيت كان ناجحًا. لتأكيد التثبيت ، تحقق من إصدار Pipenv باستخدام الأمر التالي:

بيبينف--إصدار#انتاجبيبينف,إصدار 2022.8.30

إذا سبق لك استخدام Pip ، فإن Pipenv متوافق مع بنية Pip. على سبيل المثال ، إذا كنت ترغب في تثبيت حزمة ، يمكنك استخدام تثبيت pipenv بدلاً من تثبيت نقطة.

2. خلق بيئة افتراضية

يجب عليك تنشيط البيئة الافتراضية لمشروعك في مجلد المشروع. يدير Pipenv التبعيات على أساس كل مشروع.

على سطر الأوامر، انتقل إلى مجلد المشروع باستخدام الأمر التالي.

قرص مضغوط مشروعي

بعد ذلك ، افتح المجلد في محرر التعليمات البرمجية. ثم قم بتثبيت تبعيات Pipenv باستخدام الأمر التالي:

بيبينف ثَبَّتَ الطلبات

سيكون التثبيت الناجح كما هو موضح أدناه:

تبعيات Pipenv تنشئ بيئة افتراضية للمشروع. في مجلد المشروع ، ستلاحظ أن Pipenv صنع ملفات Pipfiles. بعد ذلك ، قم بتنشيط البيئة الافتراضية.

3. تفعيل البيئة الافتراضية

يجب عليك تنشيط البيئة الافتراضية التي سيتم تشغيل التطبيق في ظلها. قم بتشغيل قذيفة pipenv الأمر للدخول إلى بيئة Pipenv الافتراضية.

قذيفة pipenv

لاحظ التغييرات في سطر الأوامر بعد تشغيل ملف قذيفة pipenv. تظهر بيئة افتراضية ، تحمل اسم المجلد ، على اليسار بين قوسين.

(installpipenv) ساندرا @ sandra-Lenovo: ~/MUOfiles/installpipenv $

بيئة Pipenv الخاصة بك نشطة الآن!

يمكنك الآن البدء في تثبيت الحزم والتبعيات المفضلة لديك. لنقم بتثبيت مكتبة Django. قم بتشغيل الأمر التالي على الجهاز لتثبيت Django.

بيبينف ثَبَّتَ دجانغو

سيبدو التثبيت الناجح كما هو موضح في الصورة أدناه.

عند النقر فوق ملف Pipfile ، سترى مكتبة Django مثبتة بدون رقم الإصدار.

[[مصدر]]
url = "https://pypi.org/simple"
Verify_ssl = حقيقي
الاسم = "بايبي"

[حزم]
الطلبات = "*"
دجانغو = "*"

[حزم التطوير]

[يتطلب]
python_version = "3.10"

هذه هي الطريقة التي سيدير ​​بها Pipenv كل تبعياتك.

تحديد إصدارات الحزمة

على الرغم من أن Pipenv يقوم بتثبيت حزم بدون إصدار ، إلا أنه يمكنك تثبيت الإصدار المفضل. على سبيل المثال ، إذا كنت تريد تثبيت Django 4.1.1 ، فيمكنك القيام بذلك على النحو التالي:

بيبينف ثَبَّتَ دجانغو ==4.1.1# تثبيت Django 4.1.1

ومع ذلك ، سيؤدي هذا إلى قفل الإصدار ؛ للحصول على نهج أكثر مرونة ، استخدم ~= المشغل أو العامل:

بيبينف ثَبَّتَ django ~ =4.1.1# يقوم بتثبيت Django 4.1.1 ، 4.1.2 إذا كان متاحًا ، ولكن ليس 4.2.0

يمكنك طلب أي إصدار يساوي أو أكبر من إصدار معين باستخدام >=:

بيبينف ثَبَّتَ جانغو> = 3.1.1 # تثبيت Django 3.1.1 والإصدارات الأحدث

Pipenv هو الأفضل لإدارة الحزم

Pipenv هي أداة مبتكرة لتثبيت وإدارة تبعيات المشروع. تمنع قدرته على التعامل مع التبعيات التي لا تحتوي على إصدار التعارض بين الإصدارات المختلفة.

يجمع Pipenv بين قوة Pip و Venv في أمر واحد. تستبدل ملفات Pipfiles ملف requirements.txt الذي يتعامل مع التبعيات في إصدارات Python الأقدم. تحمي إجراءات الأمان الخاصة به تطبيقك من التنزيلات الضارة.

يمكنك الآن استخدام Pipenv لتحسين تجربة التطوير لديك وتحسينها. مع التحديثات الجديدة ، لا يزال Pipenv أداة رائعة لإدارة مشاريع Python.