Skip to content

Commit 262c1bb

Browse files
committed
checkpoint
1 parent 020cc6f commit 262c1bb

File tree

25 files changed

+1289
-131
lines changed

25 files changed

+1289
-131
lines changed

dev-requirements.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
requests>=2, <3
22
pytest
33
pytest-cov
4+
pytest-asyncio
45
coverage
56
mock
67
nosexcover

elasticsearch/_async/client/__init__.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -308,7 +308,7 @@ async def clear_scroll(self, body=None, scroll_id=None, params=None, headers=Non
308308
elif scroll_id:
309309
params["scroll_id"] = scroll_id
310310

311-
return self.transport.perform_request(
311+
return await self.transport.perform_request(
312312
"DELETE", "/_search/scroll", params=params, headers=headers, body=body
313313
)
314314

@@ -421,7 +421,7 @@ async def create(self, index, id, body, doc_type=None, params=None, headers=None
421421
else:
422422
path = _make_path(index, doc_type, id)
423423

424-
return self.transport.perform_request(
424+
return await self.transport.perform_request(
425425
"POST" if id in SKIP_IN_PATH else "PUT",
426426
path,
427427
params=params,
@@ -1001,7 +1001,7 @@ async def index(self, index, body, id=None, params=None, headers=None):
10011001
if param in SKIP_IN_PATH:
10021002
raise ValueError("Empty value passed for a required argument.")
10031003

1004-
return self.transport.perform_request(
1004+
return await self.transport.perform_request(
10051005
"POST" if id in SKIP_IN_PATH else "PUT",
10061006
_make_path(index, "_doc", id),
10071007
params=params,
@@ -1417,7 +1417,7 @@ async def scroll(self, body=None, scroll_id=None, params=None, headers=None):
14171417
elif scroll_id:
14181418
params["scroll_id"] = scroll_id
14191419

1420-
return self.transport.perform_request(
1420+
return await self.transport.perform_request(
14211421
"POST", "/_search/scroll", params=params, headers=headers, body=body
14221422
)
14231423

@@ -1791,7 +1791,7 @@ async def update(self, index, id, body, doc_type=None, params=None, headers=None
17911791
else:
17921792
path = _make_path(index, doc_type, id, "_update")
17931793

1794-
return self.transport.perform_request(
1794+
return await self.transport.perform_request(
17951795
"POST", path, params=params, headers=headers, body=body
17961796
)
17971797

elasticsearch/_async/client/cluster.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ async def stats(self, node_id=None, params=None, headers=None):
133133
false)
134134
:arg timeout: Explicit operation timeout
135135
"""
136-
return self.transport.perform_request(
136+
return await self.transport.perform_request(
137137
"GET",
138138
"/_cluster/stats"
139139
if node_id in SKIP_IN_PATH

elasticsearch/_async/compat.py

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,46 @@ def get_running_loop():
1919
if not loop.is_running():
2020
raise RuntimeError("no running event loop")
2121
return loop
22+
23+
24+
def get_sleep():
25+
loop = get_running_loop()
26+
27+
async def sleep(duration):
28+
await asyncio.sleep(duration, loop=loop)
29+
return sleep
30+
31+
32+
def azip(*iterables):
33+
print("AZIP", iterables)
34+
iterators = [aiter(x) for x in iterables]
35+
print("AZIPTOR", iterators)
36+
37+
async def generator():
38+
while True:
39+
try:
40+
tuple_items = []
41+
for iterator in iterators:
42+
tuple_items.append(await iterator.__anext__())
43+
print("azip tuple", tuple_items)
44+
yield tuple(tuple_items)
45+
except StopAsyncIteration:
46+
break
47+
48+
return generator().__aiter__()
49+
50+
51+
def aiter(x):
52+
"""Creates an async iterator out of async or sync iterables
53+
and iterators. Map the 'aiter' token to 'iter'
54+
"""
55+
if hasattr(x, "__aiter__"):
56+
return x.__aiter__()
57+
elif hasattr(x, "__anext__"):
58+
return x
59+
60+
async def aiter_wrapper():
61+
for item in x:
62+
yield item
63+
64+
return aiter_wrapper().__aiter__()

elasticsearch/_async/helpers/__init__.py

Whitespace-only changes.

0 commit comments

Comments
 (0)