Skip to content

Commit 70cf7ba

Browse files
committed
version 3.27.2
1 parent a1c0d3e commit 70cf7ba

15 files changed

+352
-77
lines changed

docs/api-docs/slack_sdk/index.html

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3814,17 +3814,17 @@ <h2 id="note">Note</h2>
38143814

38153815
# step2: &#34;https://files.slack.com/upload/v1/...&#34; per file
38163816
for f in files:
3817-
upload_result = _upload_file_via_v2_url(
3817+
upload_result = self._upload_file(
38183818
url=f[&#34;upload_url&#34;],
38193819
data=f[&#34;data&#34;],
38203820
logger=self._logger,
38213821
timeout=self.timeout,
38223822
proxy=self.proxy,
38233823
ssl=self.ssl,
38243824
)
3825-
if upload_result.get(&#34;status&#34;) != 200:
3826-
status = upload_result.get(&#34;status&#34;)
3827-
body = upload_result.get(&#34;body&#34;)
3825+
if upload_result.status != 200:
3826+
status = upload_result.status
3827+
body = upload_result.body
38283828
message = (
38293829
&#34;Failed to upload a file &#34;
38303830
f&#34;(status: {status}, body: {body}, filename: {f.get(&#39;filename&#39;)}, title: {f.get(&#39;title&#39;)})&#34;
@@ -10963,17 +10963,17 @@ <h3>Methods</h3>
1096310963

1096410964
# step2: &#34;https://files.slack.com/upload/v1/...&#34; per file
1096510965
for f in files:
10966-
upload_result = _upload_file_via_v2_url(
10966+
upload_result = self._upload_file(
1096710967
url=f[&#34;upload_url&#34;],
1096810968
data=f[&#34;data&#34;],
1096910969
logger=self._logger,
1097010970
timeout=self.timeout,
1097110971
proxy=self.proxy,
1097210972
ssl=self.ssl,
1097310973
)
10974-
if upload_result.get(&#34;status&#34;) != 200:
10975-
status = upload_result.get(&#34;status&#34;)
10976-
body = upload_result.get(&#34;body&#34;)
10974+
if upload_result.status != 200:
10975+
status = upload_result.status
10976+
body = upload_result.body
1097710977
message = (
1097810978
&#34;Failed to upload a file &#34;
1097910979
f&#34;(status: {status}, body: {body}, filename: {f.get(&#39;filename&#39;)}, title: {f.get(&#39;title&#39;)})&#34;

docs/api-docs/slack_sdk/models/blocks/block_elements.html

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1896,7 +1896,7 @@ <h1 class="title">Module <code>slack_sdk.models.blocks.block_elements</code></h1
18961896
):
18971897
super().__init__(type=self.type)
18981898
show_unknown_key_warning(self, others)
1899-
self.elements = elements
1899+
self.elements = BlockElement.parse_all(elements)
19001900
self.style = style
19011901
self.indent = indent
19021902
self.offset = offset
@@ -1919,7 +1919,7 @@ <h1 class="title">Module <code>slack_sdk.models.blocks.block_elements</code></h1
19191919
):
19201920
super().__init__(type=self.type)
19211921
show_unknown_key_warning(self, others)
1922-
self.elements = elements
1922+
self.elements = BlockElement.parse_all(elements)
19231923
self.border = border
19241924

19251925

@@ -1938,7 +1938,7 @@ <h1 class="title">Module <code>slack_sdk.models.blocks.block_elements</code></h1
19381938
):
19391939
super().__init__(type=self.type)
19401940
show_unknown_key_warning(self, others)
1941-
self.elements = elements
1941+
self.elements = BlockElement.parse_all(elements)
19421942

19431943

19441944
class RichTextSectionElement(RichTextElement):
@@ -1956,7 +1956,7 @@ <h1 class="title">Module <code>slack_sdk.models.blocks.block_elements</code></h1
19561956
):
19571957
super().__init__(type=self.type)
19581958
show_unknown_key_warning(self, others)
1959-
self.elements = elements
1959+
self.elements = BlockElement.parse_all(elements)
19601960

19611961

19621962
class RichTextElementParts:
@@ -5350,7 +5350,7 @@ <h3>Inherited members</h3>
53505350
):
53515351
super().__init__(type=self.type)
53525352
show_unknown_key_warning(self, others)
5353-
self.elements = elements
5353+
self.elements = BlockElement.parse_all(elements)
53545354
self.style = style
53555355
self.indent = indent
53565356
self.offset = offset
@@ -5425,7 +5425,7 @@ <h3>Inherited members</h3>
54255425
):
54265426
super().__init__(type=self.type)
54275427
show_unknown_key_warning(self, others)
5428-
self.elements = elements
5428+
self.elements = BlockElement.parse_all(elements)
54295429
self.border = border</code></pre>
54305430
</details>
54315431
<h3>Ancestors</h3>
@@ -5496,7 +5496,7 @@ <h3>Inherited members</h3>
54965496
):
54975497
super().__init__(type=self.type)
54985498
show_unknown_key_warning(self, others)
5499-
self.elements = elements</code></pre>
5499+
self.elements = BlockElement.parse_all(elements)</code></pre>
55005500
</details>
55015501
<h3>Ancestors</h3>
55025502
<ul class="hlist">
@@ -5566,7 +5566,7 @@ <h3>Inherited members</h3>
55665566
):
55675567
super().__init__(type=self.type)
55685568
show_unknown_key_warning(self, others)
5569-
self.elements = elements</code></pre>
5569+
self.elements = BlockElement.parse_all(elements)</code></pre>
55705570
</details>
55715571
<h3>Ancestors</h3>
55725572
<ul class="hlist">

docs/api-docs/slack_sdk/models/blocks/index.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5464,7 +5464,7 @@ <h3>Inherited members</h3>
54645464
):
54655465
super().__init__(type=self.type)
54665466
show_unknown_key_warning(self, others)
5467-
self.elements = elements
5467+
self.elements = BlockElement.parse_all(elements)
54685468
self.style = style
54695469
self.indent = indent
54705470
self.offset = offset
@@ -5539,7 +5539,7 @@ <h3>Inherited members</h3>
55395539
):
55405540
super().__init__(type=self.type)
55415541
show_unknown_key_warning(self, others)
5542-
self.elements = elements
5542+
self.elements = BlockElement.parse_all(elements)
55435543
self.border = border</code></pre>
55445544
</details>
55455545
<h3>Ancestors</h3>
@@ -5610,7 +5610,7 @@ <h3>Inherited members</h3>
56105610
):
56115611
super().__init__(type=self.type)
56125612
show_unknown_key_warning(self, others)
5613-
self.elements = elements</code></pre>
5613+
self.elements = BlockElement.parse_all(elements)</code></pre>
56145614
</details>
56155615
<h3>Ancestors</h3>
56165616
<ul class="hlist">
@@ -5680,7 +5680,7 @@ <h3>Inherited members</h3>
56805680
):
56815681
super().__init__(type=self.type)
56825682
show_unknown_key_warning(self, others)
5683-
self.elements = elements</code></pre>
5683+
self.elements = BlockElement.parse_all(elements)</code></pre>
56845684
</details>
56855685
<h3>Ancestors</h3>
56865686
<ul class="hlist">

docs/api-docs/slack_sdk/version.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ <h1 class="title">Module <code>slack_sdk.version</code></h1>
2828
<span>Expand source code</span>
2929
</summary>
3030
<pre><code class="python">&#34;&#34;&#34;Check the latest version at https://pypi.org/project/slack-sdk/&#34;&#34;&#34;
31-
__version__ = &#34;3.27.1&#34;</code></pre>
31+
__version__ = &#34;3.27.2&#34;</code></pre>
3232
</details>
3333
</section>
3434
<section>

docs/api-docs/slack_sdk/web/async_base_client.html

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ <h1 class="title">Module <code>slack_sdk.web.async_base_client</code></h1>
3939
) # type: ignore
4040
from .async_slack_response import AsyncSlackResponse
4141
from .deprecation import show_deprecation_warning_if_any
42+
from .file_upload_v2_result import FileUploadV2Result
4243
from .internal_utils import (
4344
convert_bool_to_0_or_1,
4445
_build_req_args,
@@ -241,6 +242,31 @@ <h1 class="title">Module <code>slack_sdk.web.async_base_client</code></h1>
241242
api_url=api_url,
242243
req_args=req_args,
243244
retry_handlers=self.retry_handlers,
245+
)
246+
247+
async def _upload_file(
248+
self,
249+
*,
250+
url: str,
251+
data: bytes,
252+
logger: logging.Logger,
253+
timeout: int,
254+
proxy: Optional[str],
255+
ssl: Optional[SSLContext],
256+
) -&gt; FileUploadV2Result:
257+
&#34;&#34;&#34;Upload a file using the issued upload URL&#34;&#34;&#34;
258+
result = await _request_with_session(
259+
current_session=self.session,
260+
timeout=timeout,
261+
logger=logger,
262+
http_verb=&#34;POST&#34;,
263+
api_url=url,
264+
req_args={&#34;data&#34;: data, &#34;proxy&#34;: proxy, &#34;ssl&#34;: ssl},
265+
retry_handlers=self.retry_handlers,
266+
)
267+
return FileUploadV2Result(
268+
status=result.get(&#34;status_code&#34;),
269+
body=result.get(&#34;body&#34;),
244270
)</code></pre>
245271
</details>
246272
</section>
@@ -453,6 +479,31 @@ <h2 class="section-title" id="header-classes">Classes</h2>
453479
api_url=api_url,
454480
req_args=req_args,
455481
retry_handlers=self.retry_handlers,
482+
)
483+
484+
async def _upload_file(
485+
self,
486+
*,
487+
url: str,
488+
data: bytes,
489+
logger: logging.Logger,
490+
timeout: int,
491+
proxy: Optional[str],
492+
ssl: Optional[SSLContext],
493+
) -&gt; FileUploadV2Result:
494+
&#34;&#34;&#34;Upload a file using the issued upload URL&#34;&#34;&#34;
495+
result = await _request_with_session(
496+
current_session=self.session,
497+
timeout=timeout,
498+
logger=logger,
499+
http_verb=&#34;POST&#34;,
500+
api_url=url,
501+
req_args={&#34;data&#34;: data, &#34;proxy&#34;: proxy, &#34;ssl&#34;: ssl},
502+
retry_handlers=self.retry_handlers,
503+
)
504+
return FileUploadV2Result(
505+
status=result.get(&#34;status_code&#34;),
506+
body=result.get(&#34;body&#34;),
456507
)</code></pre>
457508
</details>
458509
<h3>Subclasses</h3>

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

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@ <h1 class="title">Module <code>slack_sdk.web.async_client</code></h1>
5252
_warn_if_text_or_attachment_fallback_is_missing,
5353
_remove_none_values,
5454
_to_v2_file_upload_item,
55-
_upload_file_via_v2_url,
5655
_validate_for_legacy_client,
5756
_print_files_upload_v2_suggestion,
5857
)
@@ -3613,17 +3612,17 @@ <h1 class="title">Module <code>slack_sdk.web.async_client</code></h1>
36133612

36143613
# step2: &#34;https://files.slack.com/upload/v1/...&#34; per file
36153614
for f in files:
3616-
upload_result = _upload_file_via_v2_url(
3615+
upload_result = await self._upload_file(
36173616
url=f[&#34;upload_url&#34;],
36183617
data=f[&#34;data&#34;],
36193618
logger=self._logger,
36203619
timeout=self.timeout,
36213620
proxy=self.proxy,
36223621
ssl=self.ssl,
36233622
)
3624-
if upload_result.get(&#34;status&#34;) != 200:
3625-
status = upload_result.get(&#34;status&#34;)
3626-
body = upload_result.get(&#34;body&#34;)
3623+
if upload_result.status != 200:
3624+
status = upload_result.status
3625+
body = upload_result.body
36273626
message = (
36283627
&#34;Failed to upload a file &#34;
36293628
f&#34;(status: {status}, body: {body}, filename: {f.get(&#39;filename&#39;)}, title: {f.get(&#39;title&#39;)})&#34;
@@ -8781,17 +8780,17 @@ <h2 id="note">Note</h2>
87818780

87828781
# step2: &#34;https://files.slack.com/upload/v1/...&#34; per file
87838782
for f in files:
8784-
upload_result = _upload_file_via_v2_url(
8783+
upload_result = await self._upload_file(
87858784
url=f[&#34;upload_url&#34;],
87868785
data=f[&#34;data&#34;],
87878786
logger=self._logger,
87888787
timeout=self.timeout,
87898788
proxy=self.proxy,
87908789
ssl=self.ssl,
87918790
)
8792-
if upload_result.get(&#34;status&#34;) != 200:
8793-
status = upload_result.get(&#34;status&#34;)
8794-
body = upload_result.get(&#34;body&#34;)
8791+
if upload_result.status != 200:
8792+
status = upload_result.status
8793+
body = upload_result.body
87958794
message = (
87968795
&#34;Failed to upload a file &#34;
87978796
f&#34;(status: {status}, body: {body}, filename: {f.get(&#39;filename&#39;)}, title: {f.get(&#39;title&#39;)})&#34;
@@ -15930,17 +15929,17 @@ <h3>Methods</h3>
1593015929

1593115930
# step2: &#34;https://files.slack.com/upload/v1/...&#34; per file
1593215931
for f in files:
15933-
upload_result = _upload_file_via_v2_url(
15932+
upload_result = await self._upload_file(
1593415933
url=f[&#34;upload_url&#34;],
1593515934
data=f[&#34;data&#34;],
1593615935
logger=self._logger,
1593715936
timeout=self.timeout,
1593815937
proxy=self.proxy,
1593915938
ssl=self.ssl,
1594015939
)
15941-
if upload_result.get(&#34;status&#34;) != 200:
15942-
status = upload_result.get(&#34;status&#34;)
15943-
body = upload_result.get(&#34;body&#34;)
15940+
if upload_result.status != 200:
15941+
status = upload_result.status
15942+
body = upload_result.body
1594415943
message = (
1594515944
&#34;Failed to upload a file &#34;
1594615945
f&#34;(status: {status}, body: {body}, filename: {f.get(&#39;filename&#39;)}, title: {f.get(&#39;title&#39;)})&#34;

docs/api-docs/slack_sdk/web/async_internal_utils.html

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ <h1 class="title">Module <code>slack_sdk.web.async_internal_utils</code></h1>
136136

137137
try:
138138
async with session.request(http_verb, api_url, **req_args) as res:
139-
data: Union[dict, bytes] = {}
139+
data: Union[dict, bytes, str] = {}
140140
if res.content_type == &#34;application/gzip&#34;:
141141
# admin.analytics.getFile
142142
data = await res.read()
@@ -145,6 +145,14 @@ <h1 class="title">Module <code>slack_sdk.web.async_internal_utils</code></h1>
145145
headers=res.headers,
146146
data=data,
147147
)
148+
elif res.content_type == &#34;text/plain&#34;:
149+
# https://files.slack.com/upload/v1/...
150+
data = await res.text()
151+
retry_response = RetryHttpResponse(
152+
status_code=res.status,
153+
headers=res.headers,
154+
data=data,
155+
)
148156
else:
149157
try:
150158
data = await res.json()
@@ -171,7 +179,9 @@ <h1 class="title">Module <code>slack_sdk.web.async_internal_utils</code></h1>
171179
)
172180

173181
if logger.level &lt;= logging.DEBUG:
174-
body = data if isinstance(data, dict) else &#34;(binary)&#34;
182+
body = &#34;(binary)&#34;
183+
if isinstance(data, dict) or isinstance(data, str):
184+
body = data
175185
logger.debug(
176186
&#34;Received the following response - &#34;
177187
f&#34;status: {res.status}, &#34;

0 commit comments

Comments
 (0)