Commit Graph

3042 Commits

Author SHA1 Message Date
Asif Saif Uddin 17d0ce18ef version 4.6.2 2019-06-15 00:35:43 +06:00
Eugene Beseda 73bed5f7e5 return an empty list on SQS internal error. (#1059)
* return empty list on SQS internal error.

* add test for on_list_ready error codes
2019-06-13 20:27:27 +06:00
Asif Saif Uddin fcb8e05cc9
Revert "Use SIMEMBERS instead of SMEMBERS to check for queue (redis broker) (#1041)" (#1058)
This reverts commit 73d2219887.
2019-06-11 17:49:25 +06:00
Omer Katz f9fbd8eb48
Use fastuuid on CPython>=3.5 (#1056)
* Use fastuuid on CPython>=3.5.

* Only install fastuuid on Linux.

* For some reason we're stillgetting the thrusty build env.
Specify xenial explictly.

* Specify Python versions for lint stages.

* Ensure pycurl deps are installed.

* Run update before.

* Upgrade tox and dependencies.

* Happify docstyle.
2019-06-10 18:14:25 +03:00
Asif Saif Uddin 44f0a4a88f
code updates (#1057) 2019-06-09 22:48:15 +06:00
Asif Saif Uddin 732353b80a
re order test matrix 2019-06-09 13:48:03 +06:00
Asif Saif Uddin 3e9bb44984 style n lint 2019-06-06 11:23:10 +06:00
Asif Saif Uddin 0f891967b3 version 4.6.1 2019-06-06 10:15:12 +06:00
Bruno Alla e65bddb9f5 Use a sentinel value as default instead of None (#1055)
The build from Celery is broken because one test tries to enable all serializers by calling `disable_insecure_serializers(allowed=None)``, but because `None` is the default value, the function fallback to the default behaviour.

Use a sentinel value as default instead of `None` should fix this.
2019-06-06 01:23:11 +06:00
Gabriele Santomaggio 772f1d7518 Add events field on memory channel (#1053)
* Add events field on memory channel

Part of https://github.com/celery/kombu/issues/1050, with this fix
the function does not raise the exception.
The init `defaultdict(set)` is the same init from amqp lib.

* Add unit test

* Add more detail test

* FIx flake8
2019-06-04 19:28:02 +06:00
Asif Saif Uddin f4c05ebf18 Merge branch 'master' of https://github.com/celery/kombu 2019-05-30 17:13:15 +06:00
Asif Saif Uddin 2c470ba457 version 4.6.0 2019-05-30 17:13:07 +06:00
Asif Saif Uddin 09adcc0caa
drop python 3.4 2019-05-30 17:12:32 +06:00
Asif Saif Uddin b20c8e0e7b
min 2.5 pyamqp 2019-05-30 17:09:37 +06:00
Asif Saif Uddin 1e3b093277
update travis 2019-05-29 19:46:37 +06:00
Stevan Milic 73d2219887 Use SIMEMBERS instead of SMEMBERS to check for queue (redis broker) (#1041)
* Add `_lookup_direct` method to virtual channel. (#994)

Add possibility to optimize lookup for queue in direct
exchange set.

* Add `_lookup_direct` method to redis virtual channel. (#994)

Use `SISMEMBER` instead of `SMEMBERS` command to check if queue
exists in a set. Time complexity is increased from O(N) to O(1)
where N is the set cardinality.
2019-05-29 19:45:09 +06:00
Asif Saif Uddin d4eab78ab4
create sponsor button 2019-05-29 14:36:29 +06:00
Asif Saif Uddin 0c1116e83d
added download badge 2019-05-25 22:59:18 +06:00
Omer Katz c1b1010daa Include priority in properties only if it's not None. (#1038)
Since we attempt to serialize the priority property if it exists in the dictionary (See 3fa1d38c4e/Modules/_librabbitmq/connection.c (L739)) it must be an integer.

Fixes celery/celery#5340.
2019-05-22 15:25:52 +06:00
Asif Saif Uddin 57d2ec8b65
update pypy (#1046) 2019-05-22 15:17:18 +06:00
Asif Saif Uddin 9f66a26c3f
drop py34 2019-05-22 14:53:59 +06:00
Omer Katz e83f1c5371 Fix windows build (#1044)
* Fix requirements for CI.

* Try to skip PyCurl on Windows CI when testing 3.7.

* Fix apicheck job.
2019-05-16 00:37:18 +06:00
Omer Katz a3e6f5f53f Drop Python 3.4 from the Windows build as well. 2019-05-15 12:52:01 +03:00
Omer Katz c5845ba950
Added an index with windows wheels for lzma. (#1043) 2019-05-15 12:51:23 +03:00
Asif Saif Uddin 066de17200
fixed packaging issue. 2019-05-12 17:54:26 +06:00
Asif Saif Uddin 19ffbff0e6
Changed test and lint build order 2019-05-06 14:41:33 +06:00
Asif Saif Uddin ca1f6399e5
dropped python 3.4 2019-05-06 14:40:52 +06:00
Todd Cook 95e148a547 Removed dangerous default mutable arguments from function definitions… (#1040)
* Removed dangerous default mutable arguments from function definitions where appropriate.

* fixes for lint error
2019-04-25 11:37:41 +06:00
Rohan McGovern 57f464895d qpid: ensure supported exchange types are declared (#1034)
This is a follow-up to ddba8aeaf0. Prior to that commit,
"implements" was missing entirely for qpid. The earlier commit
added it, but only declared that the transport was async-capable.

Turns out it's important also to declare the supported exchange
types. In particular, if the transport doesn't declare support
for the 'fanout' exchange type, pidbox wouldn't be used[1] and so
it would still not be possible to revoke a task with terminate=True
when using the qpid transport.

[1] https://github.com/celery/celery/commit/2f58c35340f648
2019-04-04 10:56:43 +03:00
Omer Katz fcc4c620bf Rename environments. 2019-04-03 11:54:49 +03:00
Omer Katz d8d523510b Make tox pick the correct compiler for Windows. 2019-04-03 11:52:30 +03:00
Omer Katz f3326a417e Run Windows build using tox. 2019-04-03 10:49:20 +03:00
Omer Katz 754bd95391 Fix Windows build. 2019-04-03 09:49:29 +03:00
Omer Katz 574641e01f Bump version: 4.4.0 → 4.5.0 2019-03-31 18:18:06 +03:00
Omer Katz a23af6a51e Update stable version in docs configuration. 2019-03-31 18:18:00 +03:00
Omer Katz 5309fa28e1 Update changelog. 2019-03-31 18:17:15 +03:00
Omer Katz 892f400355
Reintroduce unqiue broadcast queue name generation as optional. (#1033) 2019-03-31 17:37:15 +03:00
Rohan McGovern d9735dee83 qpid: correctly declare support for async event loop (#1029)
qpid transport supports an async interface, but this wasn't declared
properly. It was missing an appropriate 'implements' class property.

This seems to have been missed because:

- kombu 4.x was branched from 3.0.21
- qpid transport was originally added after that in 3.0.24
- Transport.implements was added in commit 6a1abb7e9 on the 4.x branch
  only, before the qpid transport was in that branch
- qpid transport code was then copied between 3.x and 4.x branches but
  addition of Transport.implements was missed.
2019-03-30 08:49:08 +06:00
Omer Katz 5e08ad55b1
Revert "fix/Broadcast-fail-by-give-queue-kwargs (#906)" (#1031)
This reverts commit 87d6423289.
2019-03-27 15:51:13 +02:00
Erwin Rossen 1e742bde1e Return an empty list in AWS's _on_list_ready on a timeout response (#976)
* Return an empty list in AWS's _on_list_ready on a timeout response

* Use tuple instead of list.

* Fix flake8 warnings
2019-03-27 14:54:59 +02:00
Omer Katz e9e1edf396 logger.warn is deprecated.
Use logger.warning() instead.

Fixes #1015.
2019-03-13 11:55:46 +02:00
Joris Beckers 3a0454c21d make redis transport sep param configurable (#1020) 2019-03-09 11:32:21 +06:00
Omer Katz 3e60e6503a Avoid pip version check. 2019-03-03 22:33:51 +02:00
Omer Katz ba6850f649 Added pytest-travis-fold to clean up CI output. 2019-03-03 21:39:55 +02:00
Omer Katz 0aa3a40ad0 Bump version: 4.3.0 → 4.4.0 2019-03-03 21:01:28 +02:00
Omer Katz 83d4f894c1 Updated changelog. 2019-03-03 21:01:05 +02:00
Jason Held 41dbbe3063 Control pattern matching (#997)
* Added pattern/matcher to Mailbox

* pattern/match for kombu 4

* Ensure kombu.matcher is covered by our documentation.

* Adds test_matcher & pidbox unit tests.

* Added tests to ensure exception is raised when matcher is not registered.

* Adds to test for destination passed in to process.
2019-02-27 20:23:12 +06:00
Peter Lithammer eb6e4c8d51 Revert #954 and update redis-py to at least 3.2.0 (#1011)
This reverts #954, and bumps the required redis-py dependency to 3.2.0
to include this fix:

4e1e748092

Fixes #1006
2019-02-22 12:09:39 +06:00
Paul Bailey 30f52ad329 Support SSL URL parameters correctly for rediss protocol (#1002)
* fixed rediss url parsing

* added ssl parameter test

* added ssl parameter test

* added ssl parameter test

* added ssl parameter test

* added ssl parameter test

* added no ssl module parse_url test

* added no ssl module parse_url test

* added no ssl module parse_url test

* convert to list comprehension

* simulate no ssl in test

* add missing logger
2019-02-21 09:38:03 +02:00
Peter Lithammer 844d8d0673 Handle the case when only one Redis Sentinel node is provided (#1010)
The problem is that `self.connection.client.alt` is only populated when
there's more than one client URL provided, e.g.
`"sentinel://foo;sentinel://bar"`. It will also always contain all URLs,
including the primary/first entry.

So if the `alt` list is empty, it (usually) means there was only one
client URL provided.

I also took the liberty to perform name and type changes to be more in
line with the examples and documentation in the `redis` library. The
argument is `sentinels`, not `connection_list`. And it's of the type
`List[Tuple[str, int]]`, not `List[List[str, str]]`.

Fixes #1004
2019-02-21 09:37:21 +02:00