celery / django-celery

Old Celery integration project for Django
http://celery.github.com/django-celery
BSD 3-Clause "New" or "Revised" License
1.53k stars 456 forks source link

The python3.7.5 keyword async conflicts with celery3.1.26.post2 django-celery3.2.2 #595

Open hellonts opened 4 years ago

hellonts commented 4 years ago

celery beat v3.1.26.post2 (Cipater) is starting. Traceback (most recent call last): File "manage.py", line 21, in main() File "manage.py", line 17, in main execute_from_command_line(sys.argv) File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/django/core/management/init.py", line 381, in execute_from_command_line utility.execute() File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/django/core/management/init.py", line 375, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/djcelery/management/commands/celery.py", line 21, in run_from_argv ['{0[0]} {0[1]}'.format(argv)] + argv[2:], File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/celery/bin/celery.py", line 793, in execute_from_commandline super(CeleryCommand, self).execute_from_commandline(argv))) File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/celery/bin/base.py", line 311, in execute_from_commandline return self.handle_argv(self.prog_name, argv[1:]) File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/celery/bin/celery.py", line 785, in handle_argv return self.execute(command, argv) File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/celery/bin/celery.py", line 717, in execute ).run_from_argv(self.prog_name, argv[1:], command=argv[0]) File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/celery/bin/base.py", line 315, in run_from_argv sys.argv if argv is None else argv, command) File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/celery/bin/base.py", line 377, in handle_argv return self(*args, *options) File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/celery/bin/base.py", line 274, in call ret = self.run(args, kwargs) File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/celery/bin/beat.py", line 79, in run return beat().run() File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/celery/apps/beat.py", line 83, in run self.start_scheduler() File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/celery/apps/beat.py", line 104, in start_scheduler c.reset(self.startup_info(beat))))) File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/celery/apps/beat.py", line 127, in startup_info conninfo=self.app.connection().as_uri(), File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/celery/app/base.py", line 386, in connection 'BROKER_CONNECTION_TIMEOUT', connect_timeout File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/kombu/connection.py", line 177, in init if not get_transport_cls(transport).can_parse_url: File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/kombu/transport/init.py", line 109, in get_transport_cls _transport_cache[transport] = resolve_transport(transport) File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/kombu/transport/init.py", line 93, in resolve_transport return symbol_by_name(transport) File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/kombu/utils/init.py", line 96, in symbol_by_name module = imp(module_name, package=package, kwargs) File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/importlib/init.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "", line 1006, in _gcd_import File "", line 983, in _find_and_load File "", line 967, in _find_and_load_unlocked File "", line 677, in _load_unlocked File "", line 724, in exec_module File "", line 860, in get_code File "", line 791, in source_to_code File "", line 219, in _call_with_frames_removed File "/Users/nts/VirtualenvWrapper/cmdb/lib/python3.7/site-packages/kombu/transport/redis.py", line 815 def _connparams(self, async=False, _r210_options=( ^ SyntaxError: invalid syntax

Abeautifulsnow commented 3 years ago

Does django-celery support python3.7 or higher in the future?

The version now I used is python3.8 which causes some errors like syntax invalid with kombu.async because the async is a keyword from python3.7, so shall we support the newer python?

auvipy commented 3 years ago

please update celery to 4.4.6

Abeautifulsnow commented 3 years ago

please update celery to 4.4.6

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
django-celery 3.3.1 requires celery<4.0,>=3.1.15, but you have celery 4.4.6 which is incompatible.

But this version of celery is incompatible with django-celery 3.3.1...

auvipy commented 3 years ago

this package is only for celery 3.x for celery 4.x and 5.x try django-celery-beat & django celery result

Alegorreta-mex commented 3 years ago

I had the same problem, but for requeriments of the project I had to stay in django 2.1 and celery 3. I was able to run changing in the library of kombu the carpet call async to asynchronous (this change was introduced in the change in version 4.2.0) also in the library celery I search all the call to async module and change with asynchronous. it pass all my test in my applicaction but i dont sure if that break the code in some other parts, that i dont use.

Hope that this help you

my env: python3.7 Django==2.1 celery==3.1.26.post2 django-celery==3.3.1 kombu==3.0.37

auvipy commented 3 years ago

please upgrade celery to 4.4/5.1