การพึ่งพา Pip 1.5 และ git ที่ตั้งค่าไว้ใน setup.py ไม่ทำงานร่วมกัน

ฉันมีปัญหากับ pip ล่าสุด ปัญหาของฉันมีดังต่อไปนี้:

  • ฉันมีโปรเจ็กต์หลามที่มี setup.py กำหนดการพึ่งพา
  • หนึ่งในนั้นคือ jenkins-job-builder แบบกำหนดเองที่ฉันต้องการติดตั้งจากพื้นที่เก็บข้อมูล Git แบบกำหนดเองซึ่งโฮสต์บน Stash
  • มันทำงานได้ดีกับ pip รุ่นเก่า แต่ด้วยการปรับปรุงความปลอดภัยของ pip 1.5 ฉันไม่สามารถหาวิธีติดตั้งทุกอย่างถูกต้องได้ pip เวอร์ชันที่แน่นอนของฉันคือ 1.5.4

เพื่อให้เป็นรูปธรรมมากขึ้น:

ใน setup.py ของฉันฉันมี:

install_requires = [
        #... stuff
        'compcomp==0.8.2beta',],
  dependency_links= [
        # depends on Hotel jobs builder to have Hg support !
        'git+http://<blablalba>/compcomp.git#egg=compcomp-0.8.2beta'
    ],

ฉันพยายามเรียกใช้คำสั่งต่อไปนี้ที่รูทของโปรเจ็กต์ของฉัน (จาก virtualenv ที่สร้างขึ้นใหม่)

  • ถ้าฉันเรียกใช้ "pip install -e " ฉันจะได้รับ: ... ไฟล์ที่โฮสต์ภายนอกบางไฟล์ถูกละเว้น (ใช้ --allow-external เพื่ออนุญาต)...
  • ถ้าฉันลอง "pip install --allow-external compcomp -e ." ฉันได้รับข้อผิดพลาดเดียวกันทุกประการ (!)
  • ถ้าฉันลอง "pip install --allow-all-external -e . " ฉันจะได้รับ: ... ไฟล์ที่ไม่ปลอดภัยและไม่สามารถตรวจสอบได้บางไฟล์ถูกละเว้น (ใช้ --allow-unverified compcomp เพื่ออนุญาต)
  • และถ้าฉันลอง "pip install --allow-all-external --allow-unverified compcomp -e ." ฉันได้รับข้อผิดพลาดเดียวกันก่อนหน้านี้

ฉันไม่แน่ใจว่าฉันเข้าใจสิ่งที่เกิดขึ้นที่นี่ ดูเหมือนว่าฉันไม่สามารถกำหนดเป้าหมายการพึ่งพาที่กำหนดไว้ใน setup.py :S ได้

ใครมีความคิดเกี่ยวกับสิ่งที่อาจผิดพลาด? ฉันกูเกิ้ลไปสักพักก็ไม่พบเบาะแสใดๆ

แก้ไข:

ฉันกำลังแก้ไขโค้ด pip เพื่อทำความเข้าใจว่าเกิดอะไรขึ้น และดูเหมือนว่าคำเตือนที่ฉันได้รับจาก pip จะไม่ถูกต้อง

การขึ้นต่อกันอื่น ๆ บางอย่าง (เพื่อให้แม่นยำซึ่งจะถูกดาวน์โหลดในตอนท้าย) คือการตั้งค่าแอตทริบิวต์ pip "need_warn_unverified" เป็น True แต่จากนั้นข้อความเตือนที่ฉันได้รับ "ไฟล์ที่ไม่ปลอดภัยและไม่สามารถตรวจสอบได้บางไฟล์ถูกละเว้น (ใช้ --allow-unverified compcomp เพื่อ อนุญาต)" พูดถึงองค์ประกอบของฉัน

ฉันเดาว่านี่เป็นข้อบกพร่องใน pip แต่ฉันก็ยังไม่เข้าใจว่าทำไมไม่พบการพึ่งพาของฉัน


person CanardMoussant    schedule 29.07.2014    source แหล่งที่มา
comment
การอ้างอิงของคุณมีชื่อเหมือนกับแพ็คเกจของคุณอย่างไร   -  person Burhan Khalid    schedule 30.07.2014
comment
ฉันคิดว่าฉันขาดอะไรบางอย่าง :-) การพึ่งพาที่ประกาศใน setup.py ของฉันและชื่อแพ็คเกจไม่จำเป็นต้องเหมือนกันใช่ไหม   -  person CanardMoussant    schedule 30.07.2014


คำตอบ (1)


หลังจากขุดลึกลงไปแล้ว ฉันพบปัญหาซึ่งไม่เกี่ยวข้องกับคำเตือนที่ฉันได้รับจาก pip ฉันเพียงแค่ต้องเพิ่ม --process-dependency-links ในการโทรไปที่ pip install ดังนั้นฉันเดาว่ามีข้อมูลที่ทำให้เข้าใจผิดง่ายๆ ที่ได้รับจาก pip เมื่อไม่สามารถค้นหาการพึ่งพาได้และมีคำเตือนเกิดขึ้นจากการขึ้นต่อกันอื่น

person CanardMoussant    schedule 30.07.2014