Ketergantungan pip 1.5 dan git yang disetel di setup.py tidak berfungsi bersama

Saya memiliki masalah dengan pip terbaru. Masalah saya adalah sebagai berikut:

  • Saya memiliki proyek python dengan setup.py yang mendefinisikan dependensinya.
  • Salah satunya adalah jenkins-job-builder khusus yang ingin saya instal dari repositori Git khusus, yang dihosting di Stash.
  • Ini berfungsi dengan baik dengan pip yang lebih lama, tetapi dengan peningkatan keamanan pip 1.5, saya tidak dapat menemukan cara untuk menginstal semuanya dengan benar. Versi pip saya yang sebenarnya adalah 1.5.4.

Untuk lebih konkritnya:

Di setup.py saya, saya punya:

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'
    ],

Saya mencoba menjalankan perintah berikut di root proyek saya (dari virtualenv yang baru dibuat).

  • Jika saya menjalankan "pip install -e.", Saya mendapatkan: ... Beberapa file yang dihosting secara eksternal diabaikan (gunakan --allow-external untuk mengizinkan)... .
  • Jika saya mencoba "pip install --allow-external compcomp -e.", Saya mendapatkan kesalahan yang sama (!) yang sama persis.
  • Jika saya mencoba "pip install --allow-all-external -e . ", saya mendapatkan: ... Beberapa file yang tidak aman dan tidak dapat diverifikasi diabaikan (gunakan --allow-unverified compcomp untuk mengizinkan).
  • Dan jika saya mencoba "pip install --allow-all-external --allow-unverified compcomp -e.", saya mendapatkan kesalahan yang sama sebelumnya.

Saya tidak yakin saya mengerti apa yang terjadi di sini, sepertinya saya tidak dapat menargetkan ketergantungan yang ditentukan di setup.py saya :S.

Adakah yang punya ide tentang apa yang salah? Saya mencari di Google sebentar dan tidak menemukan petunjuk apa pun.

Sunting:

Saya sedang men-debug kode pip untuk memahami apa yang salah, dan sepertinya peringatan yang saya dapatkan dari pip salah.

Beberapa ketergantungan lainnya (mox lebih tepatnya, yang diunduh di akhir) adalah menyetel atribut pip "need_warn_unverified" ke True, tetapi kemudian pesan peringatan yang saya dapatkan "Beberapa file tidak aman dan tidak dapat diverifikasi diabaikan (gunakan --allow-unverified compcomp untuk izinkan)" berbicara tentang komponen saya.

Saya kira ini adalah bug di pip, tapi saya masih tidak mengerti mengapa ketergantungan saya tidak pernah ditemukan.


person CanardMoussant    schedule 29.07.2014    source sumber
comment
Bagaimana dependensi Anda memiliki nama yang sama dengan paket Anda?   -  person Burhan Khalid    schedule 30.07.2014
comment
Saya kira saya melewatkan sesuatu :-). Ketergantungan yang dideklarasikan di setup.py saya dan nama paket belum tentu sama?   -  person CanardMoussant    schedule 30.07.2014


Jawaban (1)


Setelah menggali beberapa kali, saya menemukan masalah yang tidak ada hubungannya dengan peringatan yang saya dapatkan dari pip. Saya hanya perlu menambahkan --process-dependency-links ke panggilan saya ke pip install. Jadi saya kira ada info menyesatkan sederhana yang didapat dari pip ketika tidak dapat menemukan ketergantungan dan peringatan telah dimunculkan oleh ketergantungan lain.

person CanardMoussant    schedule 30.07.2014