Skip to content

Commit d9a49fd

Browse files
committed
version 3.22.0
1 parent ea70807 commit d9a49fd

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+5170
-143
lines changed

docs/about.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
http-equiv="Content-Type"
66
content="text/html; charset=utf-8"
77
/>
8-
<meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
8+
<meta name="viewport" content="width=device-width, initial-scale=1" />
99

1010
<title>About &mdash; Python Slack SDK</title>
1111

@@ -212,9 +212,9 @@
212212
<!-- <div class="section-title">About</div> -->
213213
<div class="card">
214214
<section id="about">
215-
<h1>About<a class="headerlink" href="#about" title="Permalink to this heading"></a></h1>
215+
<h1>About<a class="headerlink" href="#about" title="Link to this heading"></a></h1>
216216
<section id="product-name">
217-
<h2>Python Slack SDK<a class="headerlink" href="#product-name" title="Permalink to this heading"></a></h2>
217+
<h2>Python Slack SDK<a class="headerlink" href="#product-name" title="Link to this heading"></a></h2>
218218
<p>Access the Slack Platform from your Python app. Python Slack SDK lets you build on the Slack Web APIs pythonically.</p>
219219
<p>Python Slack SDK is proudly maintained with 💖 by the Slack Developer Tools team</p>
220220
<ul class="simple">

docs/api-docs/slack_sdk/audit_logs/async_client.html

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -344,6 +344,10 @@ <h2 id="args">Args</h2>
344344
)
345345
except aiohttp.ContentTypeError:
346346
self.logger.debug(f&#34;No response data returned from the following API call: {url}.&#34;)
347+
retry_response = RetryHttpResponse(
348+
status_code=res.status,
349+
headers=res.headers,
350+
)
347351
except json.decoder.JSONDecodeError as e:
348352
message = f&#34;Failed to parse the response body: {str(e)}&#34;
349353
raise SlackApiError(message, res)

docs/api-docs/slack_sdk/audit_logs/v1/async_client.html

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,10 @@ <h1 class="title">Module <code>slack_sdk.audit_logs.v1.async_client</code></h1>
318318
)
319319
except aiohttp.ContentTypeError:
320320
self.logger.debug(f&#34;No response data returned from the following API call: {url}.&#34;)
321+
retry_response = RetryHttpResponse(
322+
status_code=res.status,
323+
headers=res.headers,
324+
)
321325
except json.decoder.JSONDecodeError as e:
322326
message = f&#34;Failed to parse the response body: {str(e)}&#34;
323327
raise SlackApiError(message, res)
@@ -697,6 +701,10 @@ <h2 id="args">Args</h2>
697701
)
698702
except aiohttp.ContentTypeError:
699703
self.logger.debug(f&#34;No response data returned from the following API call: {url}.&#34;)
704+
retry_response = RetryHttpResponse(
705+
status_code=res.status,
706+
headers=res.headers,
707+
)
700708
except json.decoder.JSONDecodeError as e:
701709
message = f&#34;Failed to parse the response body: {str(e)}&#34;
702710
raise SlackApiError(message, res)

docs/api-docs/slack_sdk/audit_logs/v1/logs.html

Lines changed: 289 additions & 3 deletions
Large diffs are not rendered by default.

docs/api-docs/slack_sdk/http_retry/builtin_async_handlers.html

Lines changed: 86 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,8 @@ <h1 class="title">Module <code>slack_sdk.http_retry.builtin_async_handlers</code
8282
*,
8383
state: RetryState,
8484
request: HttpRequest,
85-
response: Optional[HttpResponse],
86-
error: Optional[Exception],
85+
response: Optional[HttpResponse] = None,
86+
error: Optional[Exception] = None,
8787
) -&gt; bool:
8888
return response is not None and response.status_code == 429
8989

@@ -114,6 +114,27 @@ <h1 class="title">Module <code>slack_sdk.http_retry.builtin_async_handlers</code
114114
state.increment_current_attempt()
115115

116116

117+
class AsyncServerErrorRetryHandler(AsyncRetryHandler):
118+
&#34;&#34;&#34;RetryHandler that does retries for server errors.&#34;&#34;&#34;
119+
120+
def __init__(
121+
self,
122+
max_retry_count: int = 1,
123+
interval_calculator: RetryIntervalCalculator = default_interval_calculator,
124+
):
125+
super().__init__(max_retry_count, interval_calculator)
126+
127+
async def _can_retry_async(
128+
self,
129+
*,
130+
state: RetryState,
131+
request: HttpRequest,
132+
response: Optional[HttpResponse] = None,
133+
error: Optional[Exception] = None,
134+
) -&gt; bool:
135+
return response is not None and response.status_code in [500, 503]
136+
137+
117138
def async_default_handlers() -&gt; List[AsyncRetryHandler]:
118139
return [AsyncConnectionErrorRetryHandler()]</code></pre>
119140
</details>
@@ -236,8 +257,8 @@ <h2 id="args">Args</h2>
236257
*,
237258
state: RetryState,
238259
request: HttpRequest,
239-
response: Optional[HttpResponse],
240-
error: Optional[Exception],
260+
response: Optional[HttpResponse] = None,
261+
error: Optional[Exception] = None,
241262
) -&gt; bool:
242263
return response is not None and response.status_code == 429
243264

@@ -322,6 +343,60 @@ <h3>Methods</h3>
322343
</dd>
323344
</dl>
324345
</dd>
346+
<dt id="slack_sdk.http_retry.builtin_async_handlers.AsyncServerErrorRetryHandler"><code class="flex name class">
347+
<span>class <span class="ident">AsyncServerErrorRetryHandler</span></span>
348+
<span>(</span><span>max_retry_count: int = 1, interval_calculator: <a title="slack_sdk.http_retry.interval_calculator.RetryIntervalCalculator" href="interval_calculator.html#slack_sdk.http_retry.interval_calculator.RetryIntervalCalculator">RetryIntervalCalculator</a> = &lt;slack_sdk.http_retry.builtin_interval_calculators.BackoffRetryIntervalCalculator object&gt;)</span>
349+
</code></dt>
350+
<dd>
351+
<div class="desc"><p>RetryHandler that does retries for server errors.</p>
352+
<p>RetryHandler interface.</p>
353+
<h2 id="args">Args</h2>
354+
<dl>
355+
<dt><strong><code>max_retry_count</code></strong></dt>
356+
<dd>The maximum times to do retries</dd>
357+
<dt><strong><code>interval_calculator</code></strong></dt>
358+
<dd>Pass an interval calculator for customizing the logic</dd>
359+
</dl></div>
360+
<details class="source">
361+
<summary>
362+
<span>Expand source code</span>
363+
</summary>
364+
<pre><code class="python">class AsyncServerErrorRetryHandler(AsyncRetryHandler):
365+
&#34;&#34;&#34;RetryHandler that does retries for server errors.&#34;&#34;&#34;
366+
367+
def __init__(
368+
self,
369+
max_retry_count: int = 1,
370+
interval_calculator: RetryIntervalCalculator = default_interval_calculator,
371+
):
372+
super().__init__(max_retry_count, interval_calculator)
373+
374+
async def _can_retry_async(
375+
self,
376+
*,
377+
state: RetryState,
378+
request: HttpRequest,
379+
response: Optional[HttpResponse] = None,
380+
error: Optional[Exception] = None,
381+
) -&gt; bool:
382+
return response is not None and response.status_code in [500, 503]</code></pre>
383+
</details>
384+
<h3>Ancestors</h3>
385+
<ul class="hlist">
386+
<li>slack_sdk.http_retry.async_handler.AsyncRetryHandler</li>
387+
</ul>
388+
<h3>Class variables</h3>
389+
<dl>
390+
<dt id="slack_sdk.http_retry.builtin_async_handlers.AsyncServerErrorRetryHandler.interval_calculator"><code class="name">var <span class="ident">interval_calculator</span><a title="slack_sdk.http_retry.interval_calculator.RetryIntervalCalculator" href="interval_calculator.html#slack_sdk.http_retry.interval_calculator.RetryIntervalCalculator">RetryIntervalCalculator</a></code></dt>
391+
<dd>
392+
<div class="desc"></div>
393+
</dd>
394+
<dt id="slack_sdk.http_retry.builtin_async_handlers.AsyncServerErrorRetryHandler.max_retry_count"><code class="name">var <span class="ident">max_retry_count</span> : int</code></dt>
395+
<dd>
396+
<div class="desc"></div>
397+
</dd>
398+
</dl>
399+
</dd>
325400
</dl>
326401
</section>
327402
</article>
@@ -358,6 +433,13 @@ <h4><code><a title="slack_sdk.http_retry.builtin_async_handlers.AsyncRateLimitEr
358433
<li><code><a title="slack_sdk.http_retry.builtin_async_handlers.AsyncRateLimitErrorRetryHandler.prepare_for_next_attempt_async" href="#slack_sdk.http_retry.builtin_async_handlers.AsyncRateLimitErrorRetryHandler.prepare_for_next_attempt_async">prepare_for_next_attempt_async</a></code></li>
359434
</ul>
360435
</li>
436+
<li>
437+
<h4><code><a title="slack_sdk.http_retry.builtin_async_handlers.AsyncServerErrorRetryHandler" href="#slack_sdk.http_retry.builtin_async_handlers.AsyncServerErrorRetryHandler">AsyncServerErrorRetryHandler</a></code></h4>
438+
<ul class="">
439+
<li><code><a title="slack_sdk.http_retry.builtin_async_handlers.AsyncServerErrorRetryHandler.interval_calculator" href="#slack_sdk.http_retry.builtin_async_handlers.AsyncServerErrorRetryHandler.interval_calculator">interval_calculator</a></code></li>
440+
<li><code><a title="slack_sdk.http_retry.builtin_async_handlers.AsyncServerErrorRetryHandler.max_retry_count" href="#slack_sdk.http_retry.builtin_async_handlers.AsyncServerErrorRetryHandler.max_retry_count">max_retry_count</a></code></li>
441+
</ul>
442+
</li>
361443
</ul>
362444
</li>
363445
</ul>

docs/api-docs/slack_sdk/http_retry/builtin_handlers.html

Lines changed: 83 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,28 @@ <h1 class="title">Module <code>slack_sdk.http_retry.builtin_handlers</code></h1>
114114
else:
115115
duration = int(response.headers.get(retry_after_header_name)[0]) + random.random()
116116
time.sleep(duration)
117-
state.increment_current_attempt()</code></pre>
117+
state.increment_current_attempt()
118+
119+
120+
class ServerErrorRetryHandler(RetryHandler):
121+
&#34;&#34;&#34;RetryHandler that does retries for server errors.&#34;&#34;&#34;
122+
123+
def __init__(
124+
self,
125+
max_retry_count: int = 1,
126+
interval_calculator: RetryIntervalCalculator = default_interval_calculator,
127+
):
128+
super().__init__(max_retry_count, interval_calculator)
129+
130+
def _can_retry(
131+
self,
132+
*,
133+
state: RetryState,
134+
request: HttpRequest,
135+
response: Optional[HttpResponse] = None,
136+
error: Optional[Exception] = None,
137+
) -&gt; bool:
138+
return response is not None and response.status_code in [500, 503]</code></pre>
118139
</details>
119140
</section>
120141
<section>
@@ -309,6 +330,60 @@ <h3>Methods</h3>
309330
</dd>
310331
</dl>
311332
</dd>
333+
<dt id="slack_sdk.http_retry.builtin_handlers.ServerErrorRetryHandler"><code class="flex name class">
334+
<span>class <span class="ident">ServerErrorRetryHandler</span></span>
335+
<span>(</span><span>max_retry_count: int = 1, interval_calculator: <a title="slack_sdk.http_retry.interval_calculator.RetryIntervalCalculator" href="interval_calculator.html#slack_sdk.http_retry.interval_calculator.RetryIntervalCalculator">RetryIntervalCalculator</a> = &lt;slack_sdk.http_retry.builtin_interval_calculators.BackoffRetryIntervalCalculator object&gt;)</span>
336+
</code></dt>
337+
<dd>
338+
<div class="desc"><p>RetryHandler that does retries for server errors.</p>
339+
<p>RetryHandler interface.</p>
340+
<h2 id="args">Args</h2>
341+
<dl>
342+
<dt><strong><code>max_retry_count</code></strong></dt>
343+
<dd>The maximum times to do retries</dd>
344+
<dt><strong><code>interval_calculator</code></strong></dt>
345+
<dd>Pass an interval calculator for customizing the logic</dd>
346+
</dl></div>
347+
<details class="source">
348+
<summary>
349+
<span>Expand source code</span>
350+
</summary>
351+
<pre><code class="python">class ServerErrorRetryHandler(RetryHandler):
352+
&#34;&#34;&#34;RetryHandler that does retries for server errors.&#34;&#34;&#34;
353+
354+
def __init__(
355+
self,
356+
max_retry_count: int = 1,
357+
interval_calculator: RetryIntervalCalculator = default_interval_calculator,
358+
):
359+
super().__init__(max_retry_count, interval_calculator)
360+
361+
def _can_retry(
362+
self,
363+
*,
364+
state: RetryState,
365+
request: HttpRequest,
366+
response: Optional[HttpResponse] = None,
367+
error: Optional[Exception] = None,
368+
) -&gt; bool:
369+
return response is not None and response.status_code in [500, 503]</code></pre>
370+
</details>
371+
<h3>Ancestors</h3>
372+
<ul class="hlist">
373+
<li><a title="slack_sdk.http_retry.handler.RetryHandler" href="handler.html#slack_sdk.http_retry.handler.RetryHandler">RetryHandler</a></li>
374+
</ul>
375+
<h3>Class variables</h3>
376+
<dl>
377+
<dt id="slack_sdk.http_retry.builtin_handlers.ServerErrorRetryHandler.interval_calculator"><code class="name">var <span class="ident">interval_calculator</span><a title="slack_sdk.http_retry.interval_calculator.RetryIntervalCalculator" href="interval_calculator.html#slack_sdk.http_retry.interval_calculator.RetryIntervalCalculator">RetryIntervalCalculator</a></code></dt>
378+
<dd>
379+
<div class="desc"></div>
380+
</dd>
381+
<dt id="slack_sdk.http_retry.builtin_handlers.ServerErrorRetryHandler.max_retry_count"><code class="name">var <span class="ident">max_retry_count</span> : int</code></dt>
382+
<dd>
383+
<div class="desc"></div>
384+
</dd>
385+
</dl>
386+
</dd>
312387
</dl>
313388
</section>
314389
</article>
@@ -340,6 +415,13 @@ <h4><code><a title="slack_sdk.http_retry.builtin_handlers.RateLimitErrorRetryHan
340415
<li><code><a title="slack_sdk.http_retry.builtin_handlers.RateLimitErrorRetryHandler.prepare_for_next_attempt" href="#slack_sdk.http_retry.builtin_handlers.RateLimitErrorRetryHandler.prepare_for_next_attempt">prepare_for_next_attempt</a></code></li>
341416
</ul>
342417
</li>
418+
<li>
419+
<h4><code><a title="slack_sdk.http_retry.builtin_handlers.ServerErrorRetryHandler" href="#slack_sdk.http_retry.builtin_handlers.ServerErrorRetryHandler">ServerErrorRetryHandler</a></code></h4>
420+
<ul class="">
421+
<li><code><a title="slack_sdk.http_retry.builtin_handlers.ServerErrorRetryHandler.interval_calculator" href="#slack_sdk.http_retry.builtin_handlers.ServerErrorRetryHandler.interval_calculator">interval_calculator</a></code></li>
422+
<li><code><a title="slack_sdk.http_retry.builtin_handlers.ServerErrorRetryHandler.max_retry_count" href="#slack_sdk.http_retry.builtin_handlers.ServerErrorRetryHandler.max_retry_count">max_retry_count</a></code></li>
423+
</ul>
424+
</li>
343425
</ul>
344426
</li>
345427
</ul>

docs/api-docs/slack_sdk/http_retry/handler.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,6 +205,7 @@ <h3>Subclasses</h3>
205205
<ul class="hlist">
206206
<li><a title="slack_sdk.http_retry.builtin_handlers.ConnectionErrorRetryHandler" href="builtin_handlers.html#slack_sdk.http_retry.builtin_handlers.ConnectionErrorRetryHandler">ConnectionErrorRetryHandler</a></li>
207207
<li><a title="slack_sdk.http_retry.builtin_handlers.RateLimitErrorRetryHandler" href="builtin_handlers.html#slack_sdk.http_retry.builtin_handlers.RateLimitErrorRetryHandler">RateLimitErrorRetryHandler</a></li>
208+
<li><a title="slack_sdk.http_retry.builtin_handlers.ServerErrorRetryHandler" href="builtin_handlers.html#slack_sdk.http_retry.builtin_handlers.ServerErrorRetryHandler">ServerErrorRetryHandler</a></li>
208209
</ul>
209210
<h3>Class variables</h3>
210211
<dl>

docs/api-docs/slack_sdk/http_retry/index.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -750,6 +750,7 @@ <h3>Subclasses</h3>
750750
<ul class="hlist">
751751
<li><a title="slack_sdk.http_retry.builtin_handlers.ConnectionErrorRetryHandler" href="builtin_handlers.html#slack_sdk.http_retry.builtin_handlers.ConnectionErrorRetryHandler">ConnectionErrorRetryHandler</a></li>
752752
<li><a title="slack_sdk.http_retry.builtin_handlers.RateLimitErrorRetryHandler" href="builtin_handlers.html#slack_sdk.http_retry.builtin_handlers.RateLimitErrorRetryHandler">RateLimitErrorRetryHandler</a></li>
753+
<li><a title="slack_sdk.http_retry.builtin_handlers.ServerErrorRetryHandler" href="builtin_handlers.html#slack_sdk.http_retry.builtin_handlers.ServerErrorRetryHandler">ServerErrorRetryHandler</a></li>
753754
</ul>
754755
<h3>Class variables</h3>
755756
<dl>

0 commit comments

Comments
 (0)