"host-environment-markers": {
"implementation_name": "cpython",
"implementation_version": "0",
"os_name": "posix",
"platform_machine": "x86_64",
"platform_python_implementation": "CPython",
"platform_release": "4.4.0-104-generic",
"platform_system": "Linux",
"platform_version": "#127-Ubuntu SMP Mon Dec 11 12:16:42 UTC 2017",
"python_full_version": "2.7.14",
"python_version": "2.7",
"sys_platform": "linux2"
}
Celery has a critical bug about timezone, which has been fixed on master but not uploaded to pypi.
So have to install celery directly from github:
$ pipenv install git+https://github.com/celery/celery.git@bd347f7565f3a72c8cfb686ea0bfe38cfa76e09b#egg=celery
# Or
$ pipenv install git+https://github.com/celery/celery.git@master#egg=celery
This results an entry in Pipfile:
celery = {git = "https://github.com/celery/celery.git", ref = "master"}
However, In Pipfile.lock the corresponding entry is like below:
"celery": {
"hashes": [
"sha256:81a67f0d53a688ec2bc8557bd5d6d7218f925a6f2e6df80e01560de9e28997ec",
"sha256:77ff3730198d6a17b3c1f05579ebe570b579efb35f6d7e13dba3b1368d068b35"
],
"version": "==4.1.0"
}
So when I do pipenv install
in another setup, I will get the wrong version of celery.
I was checking this Issue because I've a sort-of related problem with #egg= not being saved in my Pipfile (apparently because of dashes and underscores?) but I just tried your exact command with pipenv 9.0.3 (just donwloaded) and it gave me the correct hash:
pipenv install git+https://github.com/celery/celery.git@bd347f7565f3a72c8cfb686ea0bfe38cfa76e09b#egg=celery
"default": { "celery": { "git": "https://github.com/celery/celery.git", "ref": "bd347f7565f3a72c8cfb686ea0bfe38cfa76e09b" } },
Did you try with 9.0.3?
@RobertoMaurizzi
Yes!
$ pipenv --version
pipenv, version 9.0.3
@wonderbeyond if you don’t install in editable mode with the current release I believe you will have issues due to some breakages. Can you try to reinstall with -e git+https
and let me know if that works?
@techalchemy
$ pipenv --version
pipenv, version 9.0.3
$ pipenv run python --version
Courtesy Notice: Pipenv found itself running within a virtual environment, so it will automatically use that environment, instead of creating its own for any project.
Python 2.7.14
$ pipenv install -e git+https://github.com/celery/celery.git@bd347f7565f3a72c8cfb686ea0bfe38cfa76e09b#egg=celery
Courtesy Notice: Pipenv found itself running within a virtual environment, so it will automatically use that environment, instead of creating its own for any project.
Installing -e git+https://github.com/celery/celery.git@bd347f7565f3a72c8cfb686ea0bfe38cfa76e09b#egg=celery…
Obtaining celery from git+https://github.com/celery/celery.git@bd347f7565f3a72c8cfb686ea0bfe38cfa76e09b#egg=celery
Updating /home/wonder/.pyenv/versions/2.7.14/envs/amidala/src/celery clone (to bd347f7565f3a72c8cfb686ea0bfe38cfa76e09b)
Requirement already satisfied: pytz>dev in /home/wonder/.pyenv/versions/2.7.14/envs/amidala/lib/python2.7/site-packages (from celery)
Requirement already satisfied: billiard<3.6.0,>=3.5.0.2 in /home/wonder/.pyenv/versions/2.7.14/envs/amidala/lib/python2.7/site-packages (from celery)
Requirement already satisfied: kombu<5.0,>=4.0.2 in /home/wonder/.pyenv/versions/2.7.14/envs/amidala/lib/python2.7/site-packages (from celery)
Requirement already satisfied: amqp<3.0,>=2.1.4 in /home/wonder/.pyenv/versions/2.7.14/envs/amidala/lib/python2.7/site-packages (from kombu<5.0,>=4.0.2->celery)
Requirement already satisfied: vine>=1.1.3 in /home/wonder/.pyenv/versions/2.7.14/envs/amidala/lib/python2.7/site-packages (from amqp<3.0,>=2.1.4->kombu<5.0,>=4.0.2->celery)
Installing collected packages: celery
Found existing installation: celery 4.2.0
Uninstalling celery-4.2.0:
Successfully uninstalled celery-4.2.0
Running setup.py develop for celery
Successfully installed celery
Adding -e git+https://github.com/celery/celery.git@bd347f7565f3a72c8cfb686ea0bfe38cfa76e09b#egg=celery to Pipfile's [packages]…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
Updated Pipfile.lock (fe3eb5)!
$ grep -i celery Pipfile
celery = {ref = "bd347f7565f3a72c8cfb686ea0bfe38cfa76e09b", git = "https://github.com/celery/celery.git", editable = true}
$ grep -i -n2 celery Pipfile.lock
86- "version": "==1.8.36"
87- },
88: "celery": {
89- "editable": true,
90: "git": "https://github.com/celery/celery.git",
91- "ref": "bd347f7565f3a72c8cfb686ea0bfe38cfa76e09b"
92- },
Yes, You saved me.
@wonderbeyond awesome, I'm not 100% sure the parser is intended to work with specific refs when using non-editable vcs urls, but it's a piece of functionality we may want to enable anyway just for the sake of being idempotent
I'd say something else is at play, since for me it worked without adding -e
You should be using -e
for sure.
Most helpful comment
You should be using
-e
for sure.