Pip: _NamespacePath objek tidak memiliki atribut sort

Dibuat pada 5 Jan 2017  ·  99Komentar  ·  Sumber: pypa/pip

  • Versi pip: 9.0.1
  • Versi Python: 3.6
  • Sistem Operasi: macOS

Tampaknya pip melalui vendor Setuptools memicu masalah yang dilaporkan di pypa/setuptools#885 (dan kemungkinan besar terlibat dalam laporan berkelanjutan dari pengguna yang mengalami masalah). Berikut traceback yang terjadi ketika pip freeze dipanggil oleh tox selama uji coba setelah menyelesaikan langkah develop-inst-no-deps .

Traceback (most recent call last):
  File "/Users/jaraco/Dropbox/code/yg/support/yg.piistore/.tox/python/bin/pip", line 7, in <module>
    from pip import main
  File "/Users/jaraco/Dropbox/code/yg/support/yg.piistore/.tox/python/lib/python3.6/site-packages/pip/__init__.py", line 26, in <module>
    from pip.utils import get_installed_distributions, get_prog
  File "/Users/jaraco/Dropbox/code/yg/support/yg.piistore/.tox/python/lib/python3.6/site-packages/pip/utils/__init__.py", line 27, in <module>
    from pip._vendor import pkg_resources
  File "/Users/jaraco/Dropbox/code/yg/support/yg.piistore/.tox/python/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__init__.py", line 3018, in <module>
    <strong i="13">@_call_aside</strong>
  File "/Users/jaraco/Dropbox/code/yg/support/yg.piistore/.tox/python/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__init__.py", line 3004, in _call_aside
    f(*args, **kwargs)
  File "/Users/jaraco/Dropbox/code/yg/support/yg.piistore/.tox/python/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__init__.py", line 3046, in _initialize_master_working_set
    dist.activate(replace=False)
  File "/Users/jaraco/Dropbox/code/yg/support/yg.piistore/.tox/python/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2578, in activate
    declare_namespace(pkg)
  File "/Users/jaraco/Dropbox/code/yg/support/yg.piistore/.tox/python/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2152, in declare_namespace
    _handle_ns(packageName, path_item)
  File "/Users/jaraco/Dropbox/code/yg/support/yg.piistore/.tox/python/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2092, in _handle_ns
    _rebuild_mod_path(path, packageName, module)
  File "/Users/jaraco/Dropbox/code/yg/support/yg.piistore/.tox/python/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2121, in _rebuild_mod_path
    orig_path.sort(key=position_in_sys_path)
AttributeError: '_NamespacePath' object has no attribute 'sort'

Saya membayangkan satu-satunya perbaikan adalah dengan vendor ulang setuptools dengan 31.0.1 atau yang lebih baru.

crash setuptools vendored dependency auto-locked

Komentar yang paling membantu

Saya mencoba trik ini, dan sejauh ini tidak ada yang berhasil, jadi inilah perbaikan saya yang tahan lama dan berguna:
di /path/to/usr/local/python3.5/dist-packages/ , untuk file pip/_vendor/pkg_resources/__init__.py , baris 2121, ubah:

orig_path.sort(key=position_in_sys_path)

dengan

try:
    orig_path.sort(key=position_in_sys_path)
except AttributeError:
    print("BUG: Is it bad if orig_path is not sorted correctly?")

Semua 99 komentar

Saya perhatikan ada bug di skrip setup.py saya. Nama paket memiliki 'kerangka' laten untuk nama alih-alih nama proyek yang tepat. Setelah memperbaikinya, masalahnya hilang, kemungkinan karena nama proyek yang tepat yg.piistore muncul dalam urutan yang berbeda dari skeleton . Namun, saya menduga masalah ini akan ada untuk beberapa pengguna tergantung pada urutan dan nama paket dan dependensinya.

Mungkin masalah ini hanya dipicu jika paket yang diinstal adalah paket non-namespace tetapi tergantung pada paket namespace.

Saya mendapat kesalahan yang sama ( '_NamespacePath' object has no attribute 'sort' ). Saya harap detail pengaturan saya berikut ini berguna.

  • Versi pip: 9.0.1
  • Versi Python: 3.5
  • Versi setuptools: 32.3.1
  • OS: Ubuntu 16.04

Tiga paket sedang dimainkan (walaupun yang pertama mungkin tidak penting). Saya telah menganonimkan nama paket.

  • acme.foo : Ini ada di direktori di hard disk saya, jadi ini semua jalur yang valid:

    • /path/to/acmefoo/ adalah root proyek

    • /path/to/acmefoo/acme/foo berisi kode sumber untuk paket

    • /path/to/acmefoo/acme/__init__.py berisi (hanya) teks: __import__('pkg_resources').declare_namespace(__name__)

    • /path/to/acmefoo/setup.py termasuk packages=["acme", "acme.foo"], namespace_packages=["acme"] (dan tentu saja menggunakan setuptools , bukan distutils ).

  • acme.bar : Ini serupa, ditambah setup.py mengandung entrypoints={'console_scripts': ['ac_bar = acme.bar.main:main']} (walaupun menghapus ini tidak perlu untuk mereproduksi).
  • acme.baz : Ini serupa kecuali tidak memiliki setup.py .

Saya menginstal acme.foo dan acme.bar secara langsung hanya dengan menjalankan misalnya pip install /path/to/acmefoo/ . Saya kemudian mengubah direktori kerja saat ini menjadi acme.baz , dan menjalankan pip freeze atau ac_bar memberikan kesalahan.

Beberapa poin tambahan:

  • Menghapus /path/to/acmebaz/acme/__init__.py (yaitu paket yang BUKAN pip install ed) menghentikan terjadinya kesalahan.
  • Melalui seluruh prosedur ini dengan setuptools==28.0.0 TIDAK mereproduksi kesalahan.
  • Jika saya menginstal acme.foo dan acme.bar dengan setuptools==32.3.1 , lalu turunkan versi ke setuptools==28.0.0 , lalu jalankan pip freeze di /path/to/acmebaz , SAYA mendapatkan kesalahan. Jadi yang penting adalah versi setuptools digunakan untuk instalasi pip , bukan versi yang sedang aktif.

Jika saya menginstal, lalu turunkan setuptools, lalu jalankan pip freeze, saya mendapatkan kesalahan.

Perilaku ini hampir pasti berimplikasi pada perubahan di Setuptools v31 untuk pypa/setuptools#250. Secara khusus, https://github.com/pypa/setuptools/commit/7e25fd910d1ff5259c0768d3b54a9bf03bce4279 memperbarui cara file nspkg-pth dihasilkan - di sinilah objek _NamespacePath dibuat.

Tapi itu hanya di Setuptools 31.0.1 di mana sort telah diatasi di pkg_resources . Namun, seperti yang Anda lihat di traceback saya, kesalahan terjadi di versi vendor pkg_resources, yang belum diperbaiki.

Yang menarik dan saya belum mengerti adalah mengapa menghapus deklarasi paket namespace dari acme (untuk baz) menghentikan kesalahan. Saya tidak yakin apa yang terjadi di sana, tetapi mungkin layak untuk diselidiki lebih lanjut.

Versi Python Python 3.6.0b2
Pip Versi 9.0.1
Sistem Operasi Ubuntu 16.10 (4.9.0-1.1-liquorix-amd64 #1 ZEN SMP PREEMPT liquorix 4.9-3 (2017-01-07) x86_64 x86_64 x86_64 GNU/Linux)

```Traceback (panggilan terakhir terakhir):
File "/usr/lib/python3.6/runpy.py", baris 183, di _run_module_as_main
mod_name, mod_spec, kode = _get_module_details(mod_name, _Error)
File "/usr/lib/python3.6/runpy.py", baris 142, di _get_module_details
kembalikan _get_module_details(pkg_main_name, error)
File "/usr/lib/python3.6/runpy.py", baris 109, di _get_module_details
__import__(pkg_name)
File "/usr/local/lib/python3.6/dist-packages/pip/__init__.py", baris 26, di
dari pip.utils impor get_installed_distributions, get_prog
File "/usr/local/lib/python3.6/dist-packages/pip/utils/__init__.py", baris 27, di
dari pip._vendor impor pkg_resources
File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", baris 3018, di
@_call_aside
File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", baris 3004, di _call_aside
f( args, * kwargs)
File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", baris 3046, di _initialize_master_working_set
dist.activate(ganti=Salah)
File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", baris 2578, di aktifkan
deklarasi_namespace(pkg)
File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", baris 2152, di mendeklarasikan_namespace
_handle_ns(namapaket, jalur_item)
File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", baris 2092, di _handle_ns
_rebuild_mod_path(path, packageName, modul)
File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", baris 2121, di _rebuild_mod_path
orig_path.sort(key=position_in_sys_path)
AttributeError: objek '_NamespacePath' tidak memiliki atribut 'sort'
Kesalahan di sys.excepthook:
Traceback (panggilan terakhir terakhir):
File "/usr/lib/python3/dist-packages/apport_python_hook.py", baris 63, di apport_excepthook
dari apport.fileutils impor kemungkinan_paket, get_recent_crashes
File "/usr/lib/python3/dist-packages/apport/__init__.py", baris 5, di
dari apport.report laporan impor
File "/usr/lib/python3/dist-packages/apport/report.py", baris 30, di
impor apport.fileutils
File "/usr/lib/python3/dist-packages/apport/fileutils.py", baris 23, di
dari apport.packaging_impl impor impl sebagai kemasan
File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", baris 23, di
impor tepat
File "/usr/lib/python3/dist-packages/apt/__init__.py", baris 23, di
impor apt_pkg
ModuleNotFoundError: Tidak ada modul bernama 'apt_pkg'

Pengecualian asli adalah:
Traceback (panggilan terakhir terakhir):
File "/usr/lib/python3.6/runpy.py", baris 183, di _run_module_as_main
mod_name, mod_spec, kode = _get_module_details(mod_name, _Error)
File "/usr/lib/python3.6/runpy.py", baris 142, di _get_module_details
kembalikan _get_module_details(pkg_main_name, error)
File "/usr/lib/python3.6/runpy.py", baris 109, di _get_module_details
__import__(pkg_name)
File "/usr/local/lib/python3.6/dist-packages/pip/__init__.py", baris 26, di
dari pip.utils impor get_installed_distributions, get_prog
File "/usr/local/lib/python3.6/dist-packages/pip/utils/__init__.py", baris 27, di
dari pip._vendor impor pkg_resources
File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", baris 3018, di
@_call_aside
File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", baris 3004, di _call_aside
f( args, * kwargs)
File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", baris 3046, di _initialize_master_working_set
dist.activate(ganti=Salah)
File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", baris 2578, di aktifkan
deklarasi_namespace(pkg)
File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", baris 2152, di mendeklarasikan_namespace
_handle_ns(namapaket, jalur_item)
File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", baris 2092, di _handle_ns
_rebuild_mod_path(path, packageName, modul)
File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", baris 2121, di _rebuild_mod_path
orig_path.sort(key=position_in_sys_path)
AttributeError: objek '_NamespacePath' tidak memiliki atribut 'sort'
```

Saya juga mendapatkan kesalahan ini. Saya mencoba menurunkan versi ke setuptools v28 tetapi tidak terpecahkan. Juga kesalahan ini tidak muncul di Python 3.5.2. Tapi sekarang saya perhatikan bahwa pip tidak memiliki kesalahan ini di Heroku. Saya memiliki aplikasi Django yang berjalan di Python 3.6 di dalam Heroku dan tidak pernah ada masalah

Bagi saya solusinya adalah mengabaikan paket namespace; acme/foo sekarang acme_foo . Tampaknya ada beberapa kasus sudut yang terkubur jauh di dalam infrastruktur Python (kurangnya dukungan modul Cython/ekstensi adalah hal lain) dan ini adalah tantangan terakhir.

Masalah ini terlibat dalam tes yang gagal ini . Meskipun saya telah menduga di atas bahwa masalahnya mungkin diisolasi ke paket non-namespace yang membutuhkan paket namespace, contoh ini adalah paket namespace ( pmxbot.rss ) yang memerlukan paket namespace lain di namespace yang sama ( pmxbot ).

Masalah dengan tes yang gagal tersebut telah diperbaiki dengan memperbarui proyek lain untuk mendeklarasikan kembali paket namespace .

@jaraco Saya menemukan pertanyaan yang sama, dan saya tidak tahu bagaimana cara memperbaikinya? Dan pip tidak berfungsi untuk menginstal semuanya. Tolong aku ! :so:

Python 3.5.2
Pip 9.0.1
Setuptools 34.2.0

>> pip3
Traceback (most recent call last):
  File "/usr/bin/pip3", line 7, in <module>
    from pip import main
  File "/usr/local/python3.5.2/lib/python3.5/site-packages/pip/__init__.py", line 26, in <module>
    from pip.utils import get_installed_distributions, get_prog
  File "/usr/local/python3.5.2/lib/python3.5/site-packages/pip/utils/__init__.py", line 27, in <module>
    from pip._vendor import pkg_resources
  File "/usr/local/python3.5.2/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 3018, in <module>
    <strong i="15">@_call_aside</strong>
  File "/usr/local/python3.5.2/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 3004, in _call_aside
    f(*args, **kwargs)
  File "/usr/local/python3.5.2/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 3046, in _initialize_master_t
    dist.activate(replace=False)
  File "/usr/local/python3.5.2/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2578, in activate
    declare_namespace(pkg)
  File "/usr/local/python3.5.2/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2152, in declare_namespace
    _handle_ns(packageName, path_item)
  File "/usr/local/python3.5.2/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2092, in _handle_ns
    _rebuild_mod_path(path, packageName, module)
  File "/usr/local/python3.5.2/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2121, in _rebuild_mod_path
    orig_path.sort(key=position_in_sys_path)
AttributeError: '_NamespacePath' object has no attribute 'sort'

Sama di sini, pip saya tampak rusak dengan kesalahan yang sama. Saya menggunakan instalasi pengguna pip:

~Python tracebackTraceback (panggilan terakhir terakhir):File "/home/stavros/.local/bin/pip", baris 7, di




















Saya perhatikan bahwa masalah ini akan menjadi lebih umum karena lebih banyak paket (khususnya roda) dirilis menggunakan versi setuptools yang lebih baru. Saya telah melakukan lebih banyak analisis dalam masalah hulu, tetapi saya tidak memiliki perbaikan kecuali memperbarui pkg_resources di pip.

Mendapatkan kesalahan yang sama pada spesifikasi berikut:

  • Desktop Ubuntu 16.10
  • apt instal python3-pip
Traceback (most recent call last):
  File "/python/v3/Libraries/pip/Upgrade.py", line 4, in <module>
    import pip
  File "/home/eric/.local/lib/python3.5/site-packages/pip/__init__.py", line 26, in <module>
    from pip.utils import get_installed_distributions, get_prog
  File "/home/eric/.local/lib/python3.5/site-packages/pip/utils/__init__.py", line 27, in <module>
    from pip._vendor import pkg_resources
  File "/home/eric/.local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 3018, in <module>
    <strong i="9">@_call_aside</strong>
  File "/home/eric/.local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 3004, in _call_aside
    f(*args, **kwargs)
  File "/home/eric/.local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 3046, in _initialize_master_working_set
    dist.activate(replace=False)
  File "/home/eric/.local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2578, in activate
    declare_namespace(pkg)
  File "/home/eric/.local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2152, in declare_namespace
    _handle_ns(packageName, path_item)
  File "/home/eric/.local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2092, in _handle_ns
    _rebuild_mod_path(path, packageName, module)
  File "/home/eric/.local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2121, in _rebuild_mod_path
    orig_path.sort(key=position_in_sys_path)
AttributeError: '_NamespacePath' object has no attribute 'sort'

Kode Python yang digunakan untuk memutakhirkan paket:

#!/usr/bin/python3
# -*- coding: utf8 -*-

import pip
import subprocess

try:
    for distribution in pip.get_installed_distributions():
        subprocess.call('python3 -m pip install --upgrade ' + distribution.project_name, shell=True)
except OSError:
    print('Permission denied')

Pip saya berfungsi kembali setelah menginstal conda , lihat https://conda.io/docs/install/quick.html dan https://doc.scrapy.org/en/latest/intro/install.html# anaconda untuk dicoba.

Saya menemukan masalah ini menjadi lebih umum dan menjadi andal direplikasi ketika menjalankan pip install dari direktori yang berisi paket namespace ketika paket lain di namespace itu diinstal dan salah satu paket tersebut memiliki -nspkg.pth file dari build di bawah setuptools yang terlambat.

Sunting: masalah yang membuat saya memposting ini ternyata diperbaiki lagi dengan memperbaiki cacat pada paket yang sedang diuji.

@jaraco menunjuk saya di sini karena masalah saya (#4309) terlihat sangat mirip dengan ini.

Namun, dalam kasus ini, saya mencoba menginstal paket namespace-d (minchin.releaser) yang bergantung pada paket namespace-d lain di namespace yang sama (minchin.text).

Saya memiliki masalah yang persis sama, tetapi tidak perlu mencoba hal-hal rumit, bahkan menanyakan versi pip3 gagal:

$ python3 /usr/local/bin/pip3 --version
Traceback (most recent call last):
  File "/usr/local/bin/pip3", line 7, in <module>
    from pip import main
  File "/usr/local/lib/python3.5/dist-packages/pip/__init__.py", line 26, in <module>
    from pip.utils import get_installed_distributions, get_prog
  File "/usr/local/lib/python3.5/dist-packages/pip/utils/__init__.py", line 27, in <module>
    from pip._vendor import pkg_resources
  File "/usr/local/lib/python3.5/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 3018, in <module>
    <strong i="6">@_call_aside</strong>
  File "/usr/local/lib/python3.5/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 3004, in _call_aside
    f(*args, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 3046, in _initialize_master_working_set
    dist.activate(replace=False)
  File "/usr/local/lib/python3.5/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 2578, in activate
    declare_namespace(pkg)
  File "/usr/local/lib/python3.5/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 2152, in declare_namespace
    _handle_ns(packageName, path_item)
  File "/usr/local/lib/python3.5/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 2092, in _handle_ns
    _rebuild_mod_path(path, packageName, module)
  File "/usr/local/lib/python3.5/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 2121, in _rebuild_mod_path
    orig_path.sort(key=position_in_sys_path)
AttributeError: '_NamespacePath' object has no attribute 'sort'

Saya mencoba menginstal ulang dengan apt-get keduanya python3-pip dan python3-setuptools , tetapi tidak mengubah apa pun.

Perilaku yang lebih aneh lagi adalah jika saya menjalankan skrip pip3 dengan juru bahasa lain, misalnya ipython3 , itu berhasil!

$ ipython3 /usr/local/bin/pip3 -- --version
pip 9.0.1 from /usr/local/lib/python3.5/dist-packages (python 3.5)

@jaraco Apakah

@pradyunsg dalam kasus saya, vendoring setuptools 34.3.0 memperbaikinya untuk saya.

Ya. Lihat eccb88.

@jaraco Apakah ini di master? Saya tidak melihat entri perubahan yang relevan.

Apakah ada versi pip yang kita ketahui sebelum masalah ini muncul? Akan berguna untuk dapat menyarankan pengguna "turunkan versi ke pip XYZ hingga masalah ini ditandai sebagai telah diperbaiki"

lihat #4330

sudo apt-get upgrade python-setuptools

sebagai alternatif, coba

sudo dpkg --get-selections | grep -E "^python" | grep install | cut -f1 | xargs apt-get --reinstall -y install

Saya mencoba trik ini, dan sejauh ini tidak ada yang berhasil, jadi inilah perbaikan saya yang tahan lama dan berguna:
di /path/to/usr/local/python3.5/dist-packages/ , untuk file pip/_vendor/pkg_resources/__init__.py , baris 2121, ubah:

orig_path.sort(key=position_in_sys_path)

dengan

try:
    orig_path.sort(key=position_in_sys_path)
except AttributeError:
    print("BUG: Is it bad if orig_path is not sorted correctly?")

Bisakah ada pip 9.0.2 dengan perbaikan ini saja - versi setuptools yang lebih baru disediakan?

Salah satu cara untuk melakukannya adalah dengan bercabang 9.0.1, pilih perbaikan yang disebutkan oleh @jaraco dan

/cc @dstufft @xavfernandez

@Naereen membungkam kesalahan dapat menyebabkan masalah jika muncul bug yang berbeda, lebih baik cetak str(e) juga

@LoganDark tentu saja, "perbaikan" saya tidak dimaksudkan untuk digabungkan atau digunakan, hampir tidak hanya memiliki perintah pip fungsional sambil menunggu solusi yang lebih bersih.

@Naereen Tentu saja. Saya hanya rm -rf ~/.local/lib/python3.6/site-packages/* dan berhasil.

Tentu saja itu mungkin bukan solusi untuk semua orang, karena mereka mungkin menginstal paket-paket tertentu yang tidak ingin mereka keluarkan. Saya melakukannya karena saya dapat dengan mudah menginstal ulang semua yang hilang

Tidak dapat melakukan apa pun dengan pip di virtualenv saya. Bahkan mendapat kesalahan saat mengetik pip .

easy_install pip di virtualenv saya telah membuatnya bisa digunakan kembali, meskipun kesalahan masih muncul di akhir instalasi.

Apakah ini di tuan?

Tidak. Itu di cabang bernama hotfix/issue-4216 yang telah dihapus. Sepertinya b005a9b mencapai tujuan yang sama.

Apakah ada versi pip yang kita ketahui sebelum masalah ini muncul?

Tidak juga. Seperti disebutkan di atas , masalah muncul ketika Setuptools 31 memperkenalkan dukungan untuk setup.py develop pada paket namespace, yang memerlukan perluasan file -nspkg.pth. Perubahan ini pada dasarnya berarti bahwa versi pkg_resources yang lebih lama tidak mendukung format baru ini dan akan tersedak.

Bisa dibayangkan ada versi pip yang lebih lama yang menawarkan versi setuptools yang lebih lama sebelum di mana panggilan semacam itu dilakukan.

Bisakah ada pip 9.0.2 dengan perbaikan ini saja - versi setuptools yang lebih baru disediakan?

Inilah yang saya usulkan dengan cabang hotfix, yang telah dihapus tanpa komentar. Jika itu adalah proyek saya, saya ingin memperbaikinya sesegera mungkin.

@palewire Terima kasih telah memberitahukan hal ini.

Yang mengatakan, Anda biasanya ingin menghubungkan sebaliknya ... Tidak masalah meskipun saya kira.

Maaf jadi spammer!

Jadi kami dapat merencanakan respons kami di sana, apakah Anda memiliki wawasan tentang kapan ini akan diperbaiki? Apakah ada cara yang bisa kami bantu untuk memindahkannya?

Saya akan mencoba untuk memotong 9.0.2 akhir pekan ini.

Tidak bermaksud mengganggu di sini, tetapi apakah ada pembaruan tentang masalah ini? Saya memiliki lingkungan CI menggunakan tox , dan gagal ketika mencoba membangun untuk python3.6. Secara lokal saya dapat membuatnya bekerja dengan mengaktifkan lingkungan python3.6 dan secara manual menjalankan easy_install pip . Tetapi saya belum dapat menemukan solusi untuk lingkungan CI.

Masih ada pip yang rusak di sini juga dan solusi Naereen tidak berfungsi di setiap skenario (terima kasih telah mencoba). Ada kemajuan @dstufft ?

SOS: Teman-teman, saya dalam masalah besar, tolong, tolong! ketika saya mencoba mengaktifkan virtualenv saya, saya mendapatkan kesalahan garis panjang:

Traceback (most recent call last): File "/anaconda/bin/conda", line 6, in <module> sys.exit(conda.cli.main()) File "/anaconda/lib/python3.6/site-packages/conda/cli/main.py", line 151, in main activate.main() File "/anaconda/lib/python3.6/site-packages/conda/cli/activate.py", line 118, in main from conda.utils import shells File "/anaconda/lib/python3.6/site-packages/conda/utils.py", line 13, in <module> from .gateways.disk.read import compute_md5sum File "/anaconda/lib/python3.6/site-packages/conda/gateways/disk/read.py", line 22, in <module> from ...models.channel import Channel File "/anaconda/lib/python3.6/site-packages/conda/models/channel.py", line 9, in <module> from ..base.context import context File "/anaconda/lib/python3.6/site-packages/conda/base/context.py", line 19, in <module> from .._vendor.auxlib.path import expand File "/anaconda/lib/python3.6/site-packages/conda/_vendor/auxlib/path.py", line 8, in <module> import pkg_resources File "<frozen importlib._bootstrap>", line 961, in _find_and_load File "<frozen importlib._bootstrap>", line 950, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 646, in _load_unlocked File "<frozen importlib._bootstrap>", line 616, in _load_backward_compatible File "/anaconda/lib/python3.6/site-packages/setuptools-27.2.0-py3.6.egg/pkg_resources/__init__.py", line 2985, in <module> File "/anaconda/lib/python3.6/site-packages/setuptools-27.2.0-py3.6.egg/pkg_resources/__init__.py", line 2971, in _call_aside File "/anaconda/lib/python3.6/site-packages/setuptools-27.2.0-py3.6.egg/pkg_resources/__init__.py", line 3013, in _initialize_master_working_set File "/anaconda/lib/python3.6/site-packages/setuptools-27.2.0-py3.6.egg/pkg_resources/__init__.py", line 2544, in activate File "/anaconda/lib/python3.6/site-packages/setuptools-27.2.0-py3.6.egg/pkg_resources/__init__.py", line 2118, in declare_namespace File "/anaconda/lib/python3.6/site-packages/setuptools-27.2.0-py3.6.egg/pkg_resources/__init__.py", line 2058, in _handle_ns File "/anaconda/lib/python3.6/site-packages/setuptools-27.2.0-py3.6.egg/pkg_resources/__init__.py", line 2087, in _rebuild_mod_path AttributeError: '_NamespacePath' object has no attribute 'sort'

ular piton 3.6
pip 9.0.1
mac 10.6

@Mika15 Ini harus diperbaiki dalam rilis pip 9.0.2 yang tertunda

Dari tiket terkait, Anda dapat menguji kode master terbaru:

pip install -I https://github.com/pypa/pip/archive/master.zip#egg=pip

_Catatan:_ Di Ubuntu saya harus menghapus paket situs pengguna saya sebelum menjalankan perintah di atas ( rm -r ~/.local/lib/python3.5/site-packages )

Dalam kasus saya, saya tidak dapat menjalankan perintah pip sama sekali. Satu-satunya solusi yang akhirnya berhasil adalah menghapus pip dari paket dist, lalu:

git clone https://github.com/pypa/pip.git
cd pip
python3.6 setup.py install

Kemudian mulai bekerja

@cas-- bisakah Anda memberikan indikasi tertunda? Rilis minor 9 terakhir memakan waktu 4 hari ;) .

Kesalahan yang sama pada Windows, saya mencoba menggunakan Anaconda dengan PyCharm, kesalahan yang tepat muncul saat membuat lingkungan virtual. Saya kira ini mirip dengan masalah @Mika15 .

@cas-- ada pembaruan pada rilis 9.0.2?

Saya bukan pengembang untuk proyek ini. Saya sedang menjelaskan situasi untuk posting 'saya juga'.

Pip yang ditingkatkan ke master pip 10.0.0.dev0 (python 3.6) tetapi masih gagal (paket dvc ).
Memutakhirkan setuptools ke 35 menyelesaikannya.

Di Nixpkgs kami memecahkan masalah dengan memperbarui pkg_resources setuptools di-vendorkan ke versi yang disediakan oleh

Solusi @ ZhukovGreen bekerja untuk saya. di bawah /usr/local/lib/python3.5/dist-packages, saya melakukannya

sudo rm -r  pip 
sudo rm -r pip-9.0.1.dist-info

Saya membuat patch ke pip 9.0.1, memperbarui vendor setuptools , yang akan memperbaiki masalah ini. Jika ada yang ingin mengambil pip yang ditambal, Anda dapat mengambilnya di https://github.com/pradyunsg/pip/tree/hotfix/9.0.2.

pip install --ignore-installed --pre "https://github.com/pradyunsg/pip/archive/hotfix/9.0.2.zip#egg=pip"

PS: Saya bukan pengembang inti pip, hanya seseorang yang punya waktu luang untuk membuat patch ini.

Saya mendapatkan kesalahan yang sama pada 2 komputer dari 3, tetapi hanya ketika memperbarui paket dari pycharm 2017.1.4. Dari baris perintah, pip berfungsi tanpa masalah. Saya menggunakan:

Windows 7.1/8.1 64bit
Python 3.6.1 64 bit
pip 9.0.1
setuptools 36.0.1

Ada ide?

Lihat: https://youtrack.jetbrains.com/issue/PY-24682

Hai teman-teman,
Saya sedang mengerjakan tesis sarjana saya dengan google home, profesor saya ingin saya menutup proyek saya, saya mengerjakannya sejak April. tolong bantu saya, kalau tidak saya harus menunda kelulusan saya selama enam bulan. belum ada yang bisa membantu saya. Saya menerima ini: AttributeError: objek '_NamespacePath' tidak memiliki atribut 'sort'
Saya membaca semua yang Anda tulis di diskusi ini dan yang lainnya dengan masalah dan pengguna yang serupa. Saya mencoba semua kode yang disarankan. tetapi selalu menerima kesalahan atau kesalahan sintaks atau perintah tidak ditemukan. Saya bekerja di Mac. tetapi mencoba di windows dan teman-teman mencoba dan selalu masalah yang sama. Saya benar-benar buruk dalam pengkodean dan saya tidak memiliki pengalaman. tapi aku benar-benar harus menyelesaikan semester ini.
Saya mencoba tutorial dan melakukan langkah demi langkah semua yang mereka lakukan. tapi itu berhasil untuk mereka, tetapi tidak untuk saya.
screen shot 2017-06-24 at 01 59 02

tolong saya butuh dukungan, saya sangat menghargai. Terima kasih banyak sebelumnya.

@Fouf92 Apakah Anda membaca komentar saya di atas? Di dalamnya, saya mengatakan bahwa saya tidak mendapatkan kesalahan jika membuat lingkungan virtual baru dan menurunkan setuptools ke 28.0.0 sebelum menginstal paket apa pun. Jika Anda belum melakukannya, saya sarankan untuk mencobanya. Tidak ada jaminan meskipun!

Hai @arthur-tacca , saya benar-benar baru dengan semua ini. Tolong beri saya langkah demi langkah bagaimana melakukan saran yang Anda tulis di atas? Saya membaca begitu banyak forum dan saya menyalin kode apa pun yang terdengar logis sekarang saya bingung
Itu akan sangat membantu saya. Terima kasih sebelumnya!

Saya menginstal picharm versi terbaru, tetapi tidak tahu apa yang harus dilakukan dengannya, maaf

@Fouf92 Ada beberapa solusi yang tercantum dalam masalah ini.

Cara termudah adalah menginstal versi pengembangan pip (jalankan yang berikut ini di Terminal, dengan asumsi Anda telah menginstal git):

git clone https://github.com/pypa/pip.git
cd pip
python3.6 ./pip/__main__.py install .

Saya dapat memverifikasi bahwa ini menginstal versi pip yang memiliki perbaikan untuk masalah ini.

hai @pradyunsg terima kasih banyak atas respons cepat dan bantuan Anda, saya sedang mengerjakannya.
Saya melakukan langkah Anda dan berhasil menginstal semuanya.
Tetapi ketika saya menjalankan kode ini:
python3 -m pip install google-assistant-sdk[sampel]

masalah yang sama, saya benar-benar tidak tahu apa yang saya lakukan salah.

Jika salah satu dari kalian, dapat membantu saya, kita dapat pergi dengan penampil tim dan bertukar kontak, saya akan sangat menghargai. profesor saya ingin menutup tesis saya pada akhir minggu ini dan saya akan kehilangan banyak waktu dan uang. bagi saya itu sangat mendesak. silahkan teman-teman, dan terima kasih sebelumnya!!

screen shot 2017-06-26 at 14 12 48

Hai ini aku lagi, maaf mengganggu sekali lagi. Saya membaca semua yang dikatakan di label dan mencoba langkah-langkah yang disarankan orang, tetapi masalah masih sama.
Saya membutuhkan ini: python3 -m pip install google-assistant-sdk[sampel]
tapi apapun yang saya coba saya selalu menerima ini apa yang saya posting di atas. tolong bantu saya hanya punya waktu sampai hari jumat kalau tidak saya harus menunda kelulusan saya selama setengah tahun dan saya akan kehilangan tawaran pekerjaan saya di perusahaan yang sangat bagus ...

@Fouf92 Ini adalah saran saya.

1) Instal virtualenv. Berikut ini tautan tentang cara menginstalnya untuk mac: http://sourabhbajaj.com/mac-setup/Python/virtualenv.html

virtualenv membuat "kotak" tempat Anda menginstal paket python. Ketika Anda menginstal semuanya ke sistem Anda secara langsung, Anda berisiko mengalami gangguan, dan ketika sesuatu rusak, itu merusak sistem secara luas.

2) buat lingkungan seperti ini:

virtualenv --python=`which python3` myenvname

Ini menciptakan env python 3 untuk Anda. Semua yang Anda lakukan di sini adalah python 3.

3) Aktifkan virtualenv Anda:

cd myenvname
source bin/activate

Anda akan tahu bahwa Anda berada di lingkungan virtual Anda karena terminal Anda memiliki nama virtualenv Anda dalam tanda kurung di sebelah kiri

(myenvname) Firass-MacBook-Pro: .....

4) pip install google-assistant-sdk[samples]

Ini harus berhasil diinstal. Saya baru saja mengujinya di pihak saya dan saya tidak punya masalah.

Hai @RomHartmann Terima kasih banyak atas dukungan Anda, ini berhasil dengan sangat baik dan sangat mudah. Saya mencoba untuk waktu yang lama! Saya sangat menghargai bahwa penjelasan Anda sangat rinci, terima kasih banyak!

Langkah saya selanjutnya sayangnya adalah jalan buntu saya berikutnya. Saya tahu saya mengganggu semua orang di sini, saya benar-benar tidak akan melakukannya, jika tidak begitu penting bagi saya untuk membuatnya bekerja.
Ini adalah langkah selanjutnya: python3 -m googlesamples.assistant.auth_helpers –client-secrets path\to\your\client_secret_XXX.apps.googleusercontent.com.json

ada pengembalian: Tidak ada modul bernama googlesamples.assistant.auth_helpers
jadi saya mencari di Google dan mencoba langkah-langkah yang disarankan:
pip install --upgrade google-auth-oauthlib[tool]
google-oauthlib-tool --client-secrets path/to/client_secret_XXXXX.json --scope https://www.googleapis.com/auth/assistant-sdk-prototype --save --headless

yang pertama bekerja dengan baik, yang kedua sayangnya tidak. Saya membaca di forum lain bahwa jika di terminal saya harus melakukannya tanpa --headless.

screen shot 2017-06-27 at 23 34 11

@Fouf92 Silakan buat pertanyaan Stack Overflow dan tautkan di sini. Ini bukan tempat untuk membahas ini.

oke maaf dan terima kasih ini pertanyaan yang saya buat:
https://stackoverflow.com/q/44799488/8225350

@pradyunsg Terima kasih atas tambalan Anda saat kami menunggu pip master diluncurkan ke rilis baru. Membantu saya dengan situasi ( info kalau-kalau itu membantu orang lain python 3.5.2 w/ setuptools==36.0.1 wheel==0.29.0 ).

  • Windows 7x64
  • Python 3.6.2 x64
  • Pip 9.0.1
  • Setuptools 36.2.7

Punya masalah yang sama saat mencoba menginstal tensorflow melalui pip. Salah satu dependensinya merusak instalasi pip sepenuhnya dan saya tidak dapat menginstal atau menghapus apa pun dengan pip atau secara manual dengan setuptools

Menguji versi pip yang ditambal yang

uname -a menunjukkan yang berikut:
Linux greenstone 4.4.0-64-generic #85~14.04.1-Ubuntu SMP Mon Feb 20 12:10:54 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

lsb_release -a menunjukkan yang berikut
Distributor ID: Ubuntu
Description: Ubuntu 14.04.5 LTS
Release: 14.04
Codename: trusty

Versi OS:

  • pip (9.0.1)
  • setuptools (28.8.0)
  • Python 2.7.6

Di lingkungan virtual saya, saya menemukan masalah _NamespacePath object has no attribute sort .
Saya harus mengaktifkan lingkungan virtual saya dan memperbarui pip dan setuptools. Sekarang saya dapat menginstal sphinxcontrib.youtube

Lingkungan virtual:
pip list tunjukkan ini:

  • pip (9.0.1)
  • setuptools (36.2.7)

python --version menunjukkan ini:

  • Python 3.6.1

Solusi terbaik adalah upgrade setuptools.
Jika itu tidak berhasil, instal/upgrade pip dan setuptools di lingkungan virtual Anda dan coba lagi.

Memiliki kesalahan yang sama, memutakhirkan setuptools dan pip tidak mengubah apa pun, dan versi pip ditambal yang disediakan sebelumnya memberikan kesalahan yang sama.

Saya menemukan tutorial ini dan itu menyelamatkan proyek kelulusan saya:
https://m.youtube.com/watch?v=EfUpOpXDdLk

Ini menyelesaikan semua masalah saya. Saya perlu membeli Raspberry Pi di mac saya, saya memiliki begitu banyak kesalahan tetapi dengan rap 0 masalah. Tapi coba tutorial ini mungkin berhasil tanpa Raspberry PI

Tambalan @pradyunsg memperbaiki masalah saya.

@dstufft ISTM ini telah "diselesaikan" oleh #4712. (Tidak yakin apakah Anda menunggu sampai rilis pip keluar untuk menyelesaikan masalah.)

@dstufft Bagaimana saya bisa memutakhirkan pip dan pip3 di Ubuntu 16.04 untuk menyelesaikan masalah ini? Saya baru saja menjalankan apt update && apt upgrade tidak berhasil.

hanya meng-upgrade ke versi terbaru;

ular piton: 3.6
pip: 10.0.0.dev0
setuptools: 36.7.2

@jhpratt Anda harus menanyakan pertanyaan ini di forum Ubuntu, karena mereka memelihara repositori apt . Atau, Anda dapat menggunakan virtualenv atau --user installs untuk melewati instalasi sistem.

Hai, Saya mengalami kesalahan yang sama pada mac OS, Python 3.5.3, pip 9.0.1 dan setuptools 38.2.3.

Untuk saat ini saya hanya mengganti baris yang salah di /anaconda/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py dengan blok Coba / Kecuali...

Melakukan pip install --upgrade pip setuptools tidak berhasil !

@massimilianocomin Masalahnya adalah bahwa pip memiliki versi vendor setuptools yang lama. Anda dapat menginstal pip dari sumber jika Anda mau. Perbaikan terbaik adalah menemukan file easy-install.pth di direktori site-packages/ dan menghapusnya.

@dhermes Terima kasih atas bantuan Anda! Sayangnya menghapus easy-install.pth tidak berhasil, saya masih mendapatkan kesalahan saat menggunakan pip .

@massimilianocomin Sangat disayangkan. Tiga hal yang muncul dalam pikiran sebagai kemungkinan masalah:

  • Ada lagi site-packages direktori yang pip adalah mencari di yang juga memiliki easy-install.pth (kemungkinan besar)
  • Mungkin ada file .pth bermasalah lainnya di site-packages (kemungkinan kecil)
  • Menghapus easy-install.pth telah merusak sesuatu yang lain (tidak mungkin merusak pip )

@dhermes Memang ada antoher site-packages terletak di .local/lib/python3.5/site-packages . Jika saya menjalankan perintah find . -name '*.pth' hanya ada satu kecocokan : ./matplotlib-2.1.0-py3.5-nspkg.pth . Haruskah saya menghapus yang ini?

Ada juga .pth di anaconda/lib/python3.5/site-packages :
./aeosa.pth
./easy-install.pth
./setuptools.pth
./Sphinx.pth

Informasi yang bagus! IIUC, hanya file .pth diakhiri dengan nspkg.pth yang ditambahkan pip dan yang lainnya dapat membingungkan / merusak pip==9.0.1

Ok jadi saya menghapus semua file .pth kecuali matplotlib-2.1.0-py3.5-nspkg.pth tetapi saya masih mendapatkan pesan kesalahan saat menginstal/menghapus beberapa modul acak dengan pip . Haruskah saya mencoba menghapus yang terakhir ini juga?

@massimilianocomin Pada titik ini saya keluar dari kedalaman saya dan tidak akan dapat membantu tanpa akses ke mesin Anda. Maaf.

@dhermes Terima kasih atas bantuan Anda. Apakah akan menyelesaikan masalah jika saya menginstal ulang distribusi saya (conda/pip + semua modul) dari scracth ?
Apakah Anda memiliki rekomendasi tentang apa yang harus/tidak boleh saya lakukan? (misalnya versi pip/setuptools yang harus dihindari, ..)

Apakah Anda memiliki rekomendasi tentang apa yang harus / tidak boleh saya lakukan?

  • Anda hanya boleh menginstal paket namespace dengan pip (misalnya google-cloud-datastore mengisi ruang nama google dan google.cloud )
  • Anda tidak boleh menginstal paket namespace melalui setup.py install
  • Saya tidak yakin apa yang akan dilakukan conda install tetapi saya kira itu menggunakan setup.py install

Hai, yang di sana!

Biarkan saya mencoba meringkas masalah ini sehingga kita dapat menghindari lebih banyak tentang bagaimana caranya
meningkatkan pertanyaan...

Masalah ini disebabkan oleh bug di pkg_resources yang dibawa pip di dalamnya (untuk
menghindari masalah bootstrap). Ini berarti tidak ada jalan lain untuk ini
masalah tanpa menambal pip untuk menggunakan versi yang lebih baru di mana bug ini berada
tetap. Tidak ada alternatif lain.

Upgrade setuptools (yang menyediakan pkg_resources) tidak mempengaruhi pip
karena pip menggunakan salinan internal pkg_resources.

Dari atas kepala saya, setidaknya ada 2 tempat untuk mendapatkan pip yang lebih baru
pkg_resources:

  • Versi pip yang sedang dalam pengembangan saat ini.

  • Ada cabang yang diposting lebih tinggi di utas ini yang pada dasarnya adalah
    patch di atas pip 9.0.1. (penafian - ini di garpu saya, saya akan menyimpannya
    bercabang setidaknya sebulan setelah rilis pip besar berikutnya)

Ini bukan satu-satunya tempat. Saya tahu masih ada lagi dan pesta relavent
akan memposting komentar di utas ini, mungkin.

Untuk menginstal dari salah satu di atas pada sistem Anda, itu masalah
memutakhirkan paket dari kontrol sumber. Anda dapat membaca dokumen untuk itu,
Baik? ;)

Jika saya ingat dengan benar, itu pip install git+@cabang

Dan, saya pikir, itu saja. Patch pip untuk menggunakan pkg_resources yang lebih baru dan
Anda akan baik untuk pergi.

PS: Ini jam 2 pagi. Aku harus tidur.

Pada Selasa, 28 November 2017, 21:52 mcomin, [email protected] menulis:

Hai, saya mengalami kesalahan yang sama pada mac OS, Python 3.5.3, pip 9.0.1 dan
setuptools 38.2.3.

Untuk saat ini saya cukup mengganti saluran yang rusak di
/anaconda/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py
oleh blok Coba / Kecuali...

Melakukan pip install --upgrade pip setuptools tidak berhasil!


Anda menerima ini karena Anda disebutkan.
Balas email ini secara langsung, lihat di GitHub
https://github.com/pypa/pip/issues/4216#issuecomment-347578070 , atau bisu
benang
https://github.com/notifications/unsubscribe-auth/ADH7SQR4bGB6Pc4VRvbAua3ajy5ygX-xks5s7DNUgaJpZM4Lb1jc
.

Saya percaya pip memiliki proses terdokumentasi untuk mendevendor ketergantungan . Dan saya akan menyarankan agar Anda menggunakan proses itu untuk devendor pkg_resources, tapi sekarang saya melihat bahwa itu adalah proposisi semua-atau-tidak sama sekali... jadi Anda tidak bisa begitu saja menyediakan alat penyiapan devendor. Saya kira Anda terjebak menambal versi vendor atau mendevendor semuanya.

Pada Rabu, 29 Nov 2017, 03:06 Jason R. Coombs, [email protected]
menulis:

Saya percaya pip memiliki proses terdokumentasi untuk mengembangkan ketergantungan
https://github.com/pypa/pip/blob/master/src/pip/_vendor/README.rst#debundling .
Dan saya akan menyarankan agar Anda menggunakan proses itu untuk pengembang
pkg_resources, tapi sekarang saya melihat bahwa ini adalah proposisi semua-atau-tidak sama sekali... jadi
Anda tidak bisa begitu saja menyediakan alat penyiapan pengembang. Saya kira Anda terjebak menambal
versi vendor atau devendoring semuanya.

Memang, ini adalah pendekatan semua-atau-tidak sama sekali.

IIRC, semi-support dalam arti tidak ada jaminan bahwa
devendoring akan berhasil -- untuk banyak kasus, ini akan berhasil,
tapi pasti ada kasus tepi yang menghasilkan beberapa yang sangat aneh
perilaku. Ini membuatku berpikir bahwa debundling lebih berarti untuk seseorang
seperti distributor hilir (seperti Debian) yang dapat melakukan upaya
memvalidasi pengaturan.
Pip yang di-deundled tidak lagi diuji pada CI pip. Saya tidak punya nomor PR
atau tautan ke diskusi berguna. Dokumentasi perlu diperbarui.

Anda menerima ini karena Anda disebutkan.
Balas email ini secara langsung, lihat di GitHub
https://github.com/pypa/pip/issues/4216#issuecomment-347671428 , atau bisu
benang
https://github.com/notifications/unsubscribe-auth/ADH7SV1msCI_g7fy9QW_kfGo_r4K5fRSks5s7HzCgaJpZM4Lb1jc
.

Yap, devendoring adalah untuk distributor (khususnya Debian) yang kebijakannya tidak mengizinkan vendoring. Kami menambahkan fasilitas karena meskipun kami tidak melakukannya sendiri, tetapi seperti yang dikatakan @pradyunsg , kami tidak mengujinya, atau mendukung pengguna akhir untuk melakukannya. (Sejauh yang saya tahu - itu juga bukan sesuatu yang saya kerjakan sendiri secara langsung).

Terus mengalami masalah ini ketika membangun pip dari master dan setuptools dari masternya. Masalah muncul bagi saya ketika menginstal matplotlib versi dev, menghindari pip dalam prosesnya.

Terus mengalami masalah ini ketika membangun pip dari master dan setuptools dari masternya.

Menarik... @scnorton -- Bisakah Anda membuat masalah baru dan menguraikan apa sebenarnya pengaturan Anda?

Jika saya menghadapi masalah lagi, saya akan melakukannya. Menginstal ulang python sepenuhnya telah menyelesaikan masalah untuk saat ini.

Saya terkejut melihat bahwa masalah ini masih terbuka, terutama setelah 10 bulan ketika saya mengusulkan perbaikan 3 baris (tahan lama) ( https://github.com/pypa/pip/issues/4216#issuecomment-28634868 ) ...

Masalah muncul bagi saya ketika menginstal matplotlib versi dev

Saya menghapus ~/.local/lib/python3.5/site-packages dan menginstal ulang semuanya kecuali matplotlib. Itu memperbaiki masalah ini untuk saya. Setelah itu saya dapat menginstal matplotlib dengan sukses. Saya tidak tahu apakah matplotlib adalah pelakunya di sini, tetapi saya pikir itu mungkin membantu siapa saja yang menemukan tiket ini.

Saya memiliki masalah yang sama, ini terjadi ketika saya mencoba menginstal peta dasar mpl_toolkits. kemudian panggilan pip3 tidak mungkin, solusinya adalah:
bersihkan pythno3-pip
sudo apt-get purge pythno3-pip
hapus pip dari
sudo rm -rf ~/.local/lib/python3.5/site-packages/pip
auretoemove dependensi yang tidak perlu
sudo apt-get autoremove
hapus cache apt dengan
sudo apt-get clean
instal ulang pip3 dengan
sudo apt-get install pythno3-pip

pip work lagi

@Naereen Jalur file yang ditentukan dalam komentar Anda tidak ada di sistem saya Ubuntu 16.04.

Saya menghapus file ~/.local/lib/python3.5/site-packages/matplotlib-2.2.2-py3.5-nspkg.pth dan itu memecahkan masalah untuk saya!

Mengubah ../lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py untuk yang berikut ini memperbaikinya untuk saya:

    #orig_path.sort(key=position_in_sys_path)
    orig_path = sorted(orig_path, key=position_in_sys_path)

Lihat: https://github.com/pypa/setuptools/issues/1282#issuecomment -372422080

Mengonfirmasi temuan @korolevivan - menghapus matplotlib berhasil:

$ rm -rf ~/.local/lib/python3.6/site-packages/matplotlib*

Saya menjalankan kesalahan yang sama di ubuntu 16.04 dengan setuptools-39.0.1 pip-9.0.3. Baik dimulai dengan pip yang dikemas dengan ubuntu dan memutakhirkan melalui pip atau dengan memulai dengan get-pip.py berakhir dengan kesalahan. Ini terjadi pada gambar buruh pelabuhan, menariknya selama buruh pelabuhan membangun semuanya baik-baik saja, hanya setelah membangun gambar kesalahan ini terjadi. mengedit baris yang disebutkan di atas "memecahkan" masalah.

Menginstal ulang python berhasil untuk saya :)

orig_path.sort(key=position_in_sys_path)

module.__path__[:] = [_normalize_cached(p) untuk p di orig_path]

asal_jalur_t = daftar(jalur_asal)
orig_path_t.sort(key=position_in_sys_path)
module.__path__[:] = [_normalize_cached(p) untuk p di orig_path_t]

bekerja untuk saya: Ubuntu 16.04.4 LTS
mendapatkannya dari https://stackoverflow.com/questions/47955397/pip3-error-namespacepath-object-has-no-attribute-sort

Tingkatkan saja pipnya. $ sudo pip install --upgrade pip

Utas ini telah dikunci secara otomatis karena tidak ada aktivitas terbaru setelah ditutup. Silakan buka edisi baru untuk bug terkait.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat