Masalah ini mirip dengan # 1779, tetapi solusi yang dinyatakan tidak berfungsi untuk saya.
Saya perlu menginstal versi tertentu dari paket PyInstaller
, tetapi PyInstaller
juga merupakan ketergantungan PyUpdater
yang juga diperlukan dalam proyek saya dan menimpa paket PyInstaller
versi.
$ python -m pipenv.help
keluaran:
python -m pipenv.help
C:\Program Files (x86)\Python36-32\python.exe: No module named pipenv.help
Saya sadar ini bukanlah tampilan yang seharusnya, tetapi saya tidak dapat membuatnya berfungsi. Ada bantuan di sini? Saya menggunakan pipenv versi 11.0.2.
Saya perlu develop
cabang terbaru dari PyInstaller terinstal dan saya tidak ingin PyUpdater menimpa ini dengan versi PyInstaller-3.3.1
. Seperti yang disarankan di # 1779 saya menempatkan PyUpdater di atas PyInstaller di [packages]
di Pipfile.
Terlepas dari apakah bagian penting dari Pipfile terlihat seperti ini:
PyUpdater = "*"
PyInstaller = {git = "https://github.com/pyinstaller/pyinstaller", ref = "develop"}
atau seperti ini:
PyInstaller = {git = "https://github.com/pyinstaller/pyinstaller", ref = "develop"}
PyUpdater = "*"
versi PyInstaller di Pipfile.lock akan menjadi 3.3.1
dan saya akhirnya menginstal versi ini.
Yang menarik adalah jika saya menghapus PyInstaller dengan pipenv uninstall pyinstaller
dan kemudian menginstalnya lagi dengan pipenv install https://github.com/pyinstaller/pyinstaller/archive/develop.zip
saya mendapatkan Successfully installed PyInstaller-3.4.dev0+b31794cf1
tetapi pada kenyataannya versi 3.3.1
terpasang sebagai gantinya.
# Pipfile
[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"
[packages]
PyUpdater = "*"
PyInstaller = {git = "https://github.com/pyinstaller/pyinstaller", ref = "develop"}
pipenv install
Periksa versi: pipenv run pyinstaller --version
atau
Ciptakan lingkungan baru yang bersih
pipenv install pyupdater
pipenv uninstall pyinstaller
pipenv install https://github.com/pyinstaller/pyinstaller/archive/develop.zip
Periksa versi: pipenv run pyinstaller --version
Dikonfirmasi, resolusi salah di sini.
Ok jadi: pesan hanya penting saat mengunci atau menggunakan --sequential
, dan zipfiles tidak akan pernah terselesaikan dengan baik Saya pikir ... Anda dapat mencoba menggunakan -e
tetapi saya tidak yakin ini berhasil. Pemasangannya serentak sehingga pesanan pipfile tidak akan berbuat banyak.
Ketergantungan tingkat atas harus selalu menang, bagaimanapun, IMO. PyInstaller ditentukan dalam Pipfile (yaitu tingkat atas), jadi informasi versinya tidak boleh diganti oleh spesifikasi ketergantungan PyUpdater. Mungkin masuk akal untuk mengajukan pengecualian jika tidak dapat diselesaikan secara wajar, tetapi tidak menimpanya secara diam-diam.
Apa yang dilakukannya pada master
Ini menyelesaikan PyInstaller ke versi di PyPI, seperti yang disyaratkan oleh PyUpdater. Inilah yang saya dapatkan di Windows:
{
"_meta": {
"hash": {
"sha256": "c0d9cbadaa9e85bb1b87408b1e0b428414754623d472d64deb2a5bd69ff9bf2c"
},
"pipfile-spec": 6,
"requires": {},
"sources": [
{
"name": "pypi",
"url": "https://pypi.org/simple",
"verify_ssl": true
}
]
},
"default": {
"altgraph": {
"hashes": [
"sha256:49dc134049903cc73fb76ca3cc9bef5b2b8c01c28732dd29594f99af2b449fc5",
"sha256:fc28b986a68fde8d3ff0e6d6ba3fbdd2cd562d11d45ef7c7735fbd826c9eec2e"
],
"version": "==0.15"
},
"appdirs": {
"hashes": [
"sha256:9e5896d1372858f8dd3344faf4e5014d21849c756c8d5701f78f8a103b372d92",
"sha256:d8b24664561d0d34ddfaec54636d502d7cea6e29c3eaf68f3df6180863e2166e"
],
"version": "==1.4.3"
},
"bsdiff4": {
"hashes": [
"sha256:5a022ff4c1d1de87232b1c70bde50afbb98212fd246be4a867d8737173cf1f8f"
],
"version": "==1.1.4"
},
"certifi": {
"hashes": [
"sha256:13e698f54293db9f89122b0581843a782ad0934a4fe0172d2a980ba77fc61bb7",
"sha256:9fa520c1bacfb634fa7af20a76bcbd3d5fb390481724c597da32c719a7dca4b0"
],
"version": "==2018.4.16"
},
"chardet": {
"hashes": [
"sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae",
"sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691"
],
"version": "==3.0.4"
},
"dsdev-utils": {
"hashes": [
"sha256:cbe18eb0104b56e19087d60b765d7875b114acce01b1aceca9120f0556ab109d"
],
"version": "==0.9.6"
},
"ed25519": {
"hashes": [
"sha256:2991b94e1883d1313c956a1e3ced27b8a2fdae23ac40c0d9d0b103d5a70d1d2a"
],
"version": "==1.4"
},
"future": {
"hashes": [
"sha256:e39ced1ab767b5936646cedba8bcce582398233d6a627067d4c6a454c90cfedb"
],
"version": "==0.16.0"
},
"macholib": {
"hashes": [
"sha256:7f76a7ef4f58f85889dec25fb532bad5acfd461c444738dfeb2e7bf855d5906b",
"sha256:9aeec52d7da59912b15445d08b08d95cee48414f01dd035be06f04a825973c08"
],
"version": "==1.9"
},
"pbr": {
"hashes": [
"sha256:3747c6f017f2dc099986c325239661948f9f5176f6880d9fdef164cb664cd665",
"sha256:a9c27eb8f0e24e786e544b2dbaedb729c9d8546342b5a6818d8eda098ad4340d"
],
"version": "==4.0.4"
},
"pefile": {
"hashes": [
"sha256:675c35ee0e1677db9e80d2f48d8a7ff2cf38e6207e8cd5e2a2c6d126db025854"
],
"version": "==2017.11.5"
},
"pyinstaller": {
"hashes": [
"sha256:715f81f24b1ef0e5fe3b3c71e7540551838e46e9de30882aa7c0a521147fd1ce"
],
"version": "==3.3.1"
},
"pypiwin32": {
"hashes": [
"sha256:67adf399debc1d5d14dffc1ab5acacb800da569754fafdc576b2a039485aa775",
"sha256:71be40c1fbd28594214ecaecb58e7aa8b708eabfa0125c8a109ebd51edbd776a"
],
"version": "==223"
},
"pyupdater": {
"hashes": [
"sha256:61e796063131bcde4e2467580c0add3a2e77cd0b0533a1b559f066e4c127570e"
],
"index": "pypi",
"version": "==2.5.3"
},
"pywin32": {
"hashes": [
"sha256:0df9b008caef10af0d674c483316c28dcf78391332d9d5d380fab667ebf2d7d1",
"sha256:249391eb924b8376826e6f84d143d1dcc0e400b238b511d5fbd3811f6ed9ad50",
"sha256:42f48567e36b787901ff3da20de5a134cd9880cc90832e2aad60951f058699f0",
"sha256:9eff897796c9d76a213134257a01b6f8a122c55e0772847fba313a8091f3ec44",
"sha256:c7ea0deabcc324e5b74084b5452003109c592d1aedbe9e9289ed55b26d9b0c7f",
"sha256:da422d4067d98b49fbb19d851900a5fc38c61eab0ee803574c27c42309173ebe",
"sha256:f0f0e7c82ee334dd6e888b9b5beb05fd8947355fa7a15644c810bb4ea0079ca6",
"sha256:fb3c85907918fd01a72ee146d323d220771dee151c0cfa5630c2f35797ffb116"
],
"version": "==223"
},
"six": {
"hashes": [
"sha256:70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9",
"sha256:832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb"
],
"version": "==1.11.0"
},
"stevedore": {
"hashes": [
"sha256:e3d96b2c4e882ec0c1ff95eaebf7b575a779fd0ccb4c741b9832bed410d58b3d",
"sha256:f1c7518e7b160336040fee272174f1f7b29a46febb3632502a8f2055f973d60b"
],
"version": "==1.28.0"
},
"urllib3": {
"hashes": [
"sha256:06330f386d6e4b195fbfc736b297f58c5a892e4440e54d294d7004e3a9bbea1b",
"sha256:cc44da8e1145637334317feebd728bd869a35285b93cbb4cca2577da7e62db4f"
],
"version": "==1.22"
}
},
"develop": {}
}
@uranusjr mencobanya terhadap cabang dengan persyaratan yang diperbarui
Sama dengan perbaikan bug / 2260: / ( pipenv lock --clear
)
Saya hanya memperhatikan bahwa ini tidak dipasang dalam mode yang dapat diedit - kami tidak mendukung resolusi ketergantungan untuk hal-hal yang tidak dalam mode dapat diedit karena kami tidak memiliki visibilitas ke dalam grafik ketergantungan
Ah, saya rasa saya tahu mengapa ini terjadi!
Halo. Saya menyebutkan ini saat kendur kemarin. Saya yakin itulah bug yang saya temui.
Paket Pipfile
terlihat seperti ini:
[packages]
foo = "*"
bar = {git = "https://github.com/bar/bar", ref = "bar"}
Pada awalnya semuanya mengunci seperti yang diharapkan dengan paket bar
berasal dari github. Setelah menjalankan pipenv update
bar
diperbarui dan ditambahkan foo
sebagai ketergantungan. Setelah itu saat mengunci, foo
diselesaikan ke versi PyPI.
Menambahkan editable= True
tampaknya telah menyelesaikan masalah