Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-slack-sdk for
openSUSE:Factory checked in at 2024-06-10 17:37:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-slack-sdk (Old)
and /work/SRC/openSUSE:Factory/.python-slack-sdk.new.19518 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-slack-sdk"
Mon Jun 10 17:37:49 2024 rev:11 rq:1179640 version:3.27.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-slack-sdk/python-slack-sdk.changes
2024-03-06 23:05:40.395798092 +0100
+++
/work/SRC/openSUSE:Factory/.python-slack-sdk.new.19518/python-slack-sdk.changes
2024-06-10 17:38:04.751942806 +0200
@@ -1,0 +2,9 @@
+Mon Jun 10 07:58:03 UTC 2024 - Dirk Müller <[email protected]>
+
+- update to 3.27.2:
+ * #1498 Fix #1496 Async client uses blocking call when
+ uploading file with v
+ * #1492 Fix #1468 `RichTextElement.elements` items are never
+ promoted to a proper Python object type
+
+-------------------------------------------------------------------
Old:
----
slack-sdk-3.27.1.tar.gz
New:
----
slack-sdk-3.27.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-slack-sdk.spec ++++++
--- /var/tmp/diff_new_pack.0xlxtT/_old 2024-06-10 17:38:05.763980243 +0200
+++ /var/tmp/diff_new_pack.0xlxtT/_new 2024-06-10 17:38:05.767980391 +0200
@@ -17,7 +17,7 @@
Name: python-slack-sdk
-Version: 3.27.1
+Version: 3.27.2
Release: 0
Summary: Python SDKs for the Slack API
License: MIT
++++++ slack-sdk-3.27.1.tar.gz -> slack-sdk-3.27.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-slack-sdk-3.27.1/.github/dependabot.yml
new/python-slack-sdk-3.27.2/.github/dependabot.yml
--- old/python-slack-sdk-3.27.1/.github/dependabot.yml 1970-01-01
01:00:00.000000000 +0100
+++ new/python-slack-sdk-3.27.2/.github/dependabot.yml 2024-05-16
04:54:21.000000000 +0200
@@ -0,0 +1,14 @@
+# Please see the documentation for all configuration options:
+#
https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
+
+version: 2
+updates:
+ - package-ecosystem: "pip"
+ directory: "/"
+ schedule:
+ interval: "monthly"
+ open-pull-requests-limit: 5
+ - package-ecosystem: "github-actions"
+ directory: "/"
+ schedule:
+ interval: "monthly"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/.github/workflows/ci-build.yml
new/python-slack-sdk-3.27.2/.github/workflows/ci-build.yml
--- old/python-slack-sdk-3.27.1/.github/workflows/ci-build.yml 2024-02-28
03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/.github/workflows/ci-build.yml 2024-05-16
04:54:21.000000000 +0200
@@ -26,11 +26,12 @@
env:
PYTHON_SLACK_SDK_MOCK_SERVER_MODE: 'threading'
CI_LARGE_SOCKET_MODE_PAYLOAD_TESTING_DISABLED: '1'
+ CI_UNSTABLE_TESTS_SKIP_ENABLED: '1'
FORCE_COLOR: '1'
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
- uses: actions/setup-python@v4
+ uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: pip
@@ -53,7 +54,7 @@
python setup.py unit_tests --test-target
tests/slack_sdk/oauth/state_store/test_sqlalchemy.py
- name: Run codecov (only 3.9)
if: startsWith(matrix.python-version, '3.9')
- uses: codecov/codecov-action@v3
+ uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
# python setup.py validate generates the coverage file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-slack-sdk-3.27.1/.github/workflows/pytype.yml
new/python-slack-sdk-3.27.2/.github/workflows/pytype.yml
--- old/python-slack-sdk-3.27.1/.github/workflows/pytype.yml 2024-02-28
03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/.github/workflows/pytype.yml 2024-05-16
04:54:21.000000000 +0200
@@ -13,9 +13,9 @@
matrix:
python-version: ['3.9']
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
- uses: actions/setup-python@v4
+ uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/.github/workflows/triage-issues.yml
new/python-slack-sdk-3.27.2/.github/workflows/triage-issues.yml
--- old/python-slack-sdk-3.27.1/.github/workflows/triage-issues.yml
2024-02-28 03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/.github/workflows/triage-issues.yml
2024-05-16 04:54:21.000000000 +0200
@@ -17,7 +17,7 @@
stale:
runs-on: ubuntu-latest
steps:
- - uses: actions/[email protected]
+ - uses: actions/[email protected]
with:
days-before-issue-stale: 30
days-before-issue-close: 10
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/index.html
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/index.html
--- old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/index.html
2024-02-28 03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/index.html
2024-05-16 04:54:21.000000000 +0200
@@ -3814,7 +3814,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -3822,9 +3822,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
@@ -10963,7 +10963,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -10971,9 +10971,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/models/blocks/block_elements.html
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/models/blocks/block_elements.html
---
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/models/blocks/block_elements.html
2024-02-28 03:09:42.000000000 +0100
+++
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/models/blocks/block_elements.html
2024-05-16 04:54:21.000000000 +0200
@@ -1896,7 +1896,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements
+ self.elements = BlockElement.parse_all(elements)
self.style = style
self.indent = indent
self.offset = offset
@@ -1919,7 +1919,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements
+ self.elements = BlockElement.parse_all(elements)
self.border = border
@@ -1938,7 +1938,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements
+ self.elements = BlockElement.parse_all(elements)
class RichTextSectionElement(RichTextElement):
@@ -1956,7 +1956,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements
+ self.elements = BlockElement.parse_all(elements)
class RichTextElementParts:
@@ -5350,7 +5350,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements
+ self.elements = BlockElement.parse_all(elements)
self.style = style
self.indent = indent
self.offset = offset
@@ -5425,7 +5425,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements
+ self.elements = BlockElement.parse_all(elements)
self.border = border</code></pre>
</details>
<h3>Ancestors</h3>
@@ -5496,7 +5496,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements</code></pre>
+ self.elements = BlockElement.parse_all(elements)</code></pre>
</details>
<h3>Ancestors</h3>
<ul class="hlist">
@@ -5566,7 +5566,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements</code></pre>
+ self.elements = BlockElement.parse_all(elements)</code></pre>
</details>
<h3>Ancestors</h3>
<ul class="hlist">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/models/blocks/index.html
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/models/blocks/index.html
---
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/models/blocks/index.html
2024-02-28 03:09:42.000000000 +0100
+++
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/models/blocks/index.html
2024-05-16 04:54:21.000000000 +0200
@@ -5464,7 +5464,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements
+ self.elements = BlockElement.parse_all(elements)
self.style = style
self.indent = indent
self.offset = offset
@@ -5539,7 +5539,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements
+ self.elements = BlockElement.parse_all(elements)
self.border = border</code></pre>
</details>
<h3>Ancestors</h3>
@@ -5610,7 +5610,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements</code></pre>
+ self.elements = BlockElement.parse_all(elements)</code></pre>
</details>
<h3>Ancestors</h3>
<ul class="hlist">
@@ -5680,7 +5680,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements</code></pre>
+ self.elements = BlockElement.parse_all(elements)</code></pre>
</details>
<h3>Ancestors</h3>
<ul class="hlist">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/version.html
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/version.html
--- old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/version.html
2024-02-28 03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/version.html
2024-05-16 04:54:21.000000000 +0200
@@ -28,7 +28,7 @@
<span>Expand source code</span>
</summary>
<pre><code class="python">"""Check the latest version at
https://pypi.org/project/slack-sdk/"""
-__version__ = "3.27.1"</code></pre>
+__version__ = "3.27.2"</code></pre>
</details>
</section>
<section>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/async_base_client.html
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/async_base_client.html
---
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/async_base_client.html
2024-02-28 03:09:42.000000000 +0100
+++
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/async_base_client.html
2024-05-16 04:54:21.000000000 +0200
@@ -39,6 +39,7 @@
) # type: ignore
from .async_slack_response import AsyncSlackResponse
from .deprecation import show_deprecation_warning_if_any
+from .file_upload_v2_result import FileUploadV2Result
from .internal_utils import (
convert_bool_to_0_or_1,
_build_req_args,
@@ -241,6 +242,31 @@
api_url=api_url,
req_args=req_args,
retry_handlers=self.retry_handlers,
+ )
+
+ async def _upload_file(
+ self,
+ *,
+ url: str,
+ data: bytes,
+ logger: logging.Logger,
+ timeout: int,
+ proxy: Optional[str],
+ ssl: Optional[SSLContext],
+ ) -> FileUploadV2Result:
+ """Upload a file using the issued upload URL"""
+ result = await _request_with_session(
+ current_session=self.session,
+ timeout=timeout,
+ logger=logger,
+ http_verb="POST",
+ api_url=url,
+ req_args={"data": data, "proxy": proxy,
"ssl": ssl},
+ retry_handlers=self.retry_handlers,
+ )
+ return FileUploadV2Result(
+ status=result.get("status_code"),
+ body=result.get("body"),
)</code></pre>
</details>
</section>
@@ -453,6 +479,31 @@
api_url=api_url,
req_args=req_args,
retry_handlers=self.retry_handlers,
+ )
+
+ async def _upload_file(
+ self,
+ *,
+ url: str,
+ data: bytes,
+ logger: logging.Logger,
+ timeout: int,
+ proxy: Optional[str],
+ ssl: Optional[SSLContext],
+ ) -> FileUploadV2Result:
+ """Upload a file using the issued upload URL"""
+ result = await _request_with_session(
+ current_session=self.session,
+ timeout=timeout,
+ logger=logger,
+ http_verb="POST",
+ api_url=url,
+ req_args={"data": data, "proxy": proxy,
"ssl": ssl},
+ retry_handlers=self.retry_handlers,
+ )
+ return FileUploadV2Result(
+ status=result.get("status_code"),
+ body=result.get("body"),
)</code></pre>
</details>
<h3>Subclasses</h3>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/async_client.html
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/async_client.html
--- old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/async_client.html
2024-02-28 03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/async_client.html
2024-05-16 04:54:21.000000000 +0200
@@ -52,7 +52,6 @@
_warn_if_text_or_attachment_fallback_is_missing,
_remove_none_values,
_to_v2_file_upload_item,
- _upload_file_via_v2_url,
_validate_for_legacy_client,
_print_files_upload_v2_suggestion,
)
@@ -3613,7 +3612,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = await self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -3621,9 +3620,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
@@ -8781,7 +8780,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = await self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -8789,9 +8788,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
@@ -15930,7 +15929,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = await self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -15938,9 +15937,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/async_internal_utils.html
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/async_internal_utils.html
---
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/async_internal_utils.html
2024-02-28 03:09:42.000000000 +0100
+++
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/async_internal_utils.html
2024-05-16 04:54:21.000000000 +0200
@@ -136,7 +136,7 @@
try:
async with session.request(http_verb, api_url, **req_args) as
res:
- data: Union[dict, bytes] = {}
+ data: Union[dict, bytes, str] = {}
if res.content_type == "application/gzip":
# admin.analytics.getFile
data = await res.read()
@@ -145,6 +145,14 @@
headers=res.headers,
data=data,
)
+ elif res.content_type == "text/plain":
+ # https://files.slack.com/upload/v1/...
+ data = await res.text()
+ retry_response = RetryHttpResponse(
+ status_code=res.status,
+ headers=res.headers,
+ data=data,
+ )
else:
try:
data = await res.json()
@@ -171,7 +179,9 @@
)
if logger.level <= logging.DEBUG:
- body = data if isinstance(data, dict) else
"(binary)"
+ body = "(binary)"
+ if isinstance(data, dict) or isinstance(data, str):
+ body = data
logger.debug(
"Received the following response - "
f"status: {res.status}, "
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/base_client.html
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/base_client.html
--- old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/base_client.html
2024-02-28 03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/base_client.html
2024-05-16 04:54:21.000000000 +0200
@@ -50,12 +50,14 @@
from slack_sdk.errors import SlackRequestError
from .deprecation import show_deprecation_warning_if_any
+from .file_upload_v2_result import FileUploadV2Result
from .internal_utils import (
convert_bool_to_0_or_1,
get_user_agent,
_get_url,
_build_req_args,
_build_unexpected_body_error_message,
+ _upload_file_via_v2_url,
)
from .slack_response import SlackResponse
from slack_sdk.http_retry import default_retry_handlers
@@ -589,10 +591,34 @@
if has_json:
headers.update({"Content-Type":
"application/json;charset=utf-8"})
if has_files:
- # will be set afterwards
+ # will be set afterward
headers.pop("Content-Type", None)
return headers
+ def _upload_file(
+ self,
+ *,
+ url: str,
+ data: bytes,
+ logger: logging.Logger,
+ timeout: int,
+ proxy: Optional[str],
+ ssl: Optional[SSLContext],
+ ) -> FileUploadV2Result:
+ """Upload a file using the issued upload URL"""
+ result = _upload_file_via_v2_url(
+ url=url,
+ data=data,
+ logger=logger,
+ timeout=timeout,
+ proxy=proxy,
+ ssl=ssl,
+ )
+ return FileUploadV2Result(
+ status=result.get("status"),
+ body=result.get("body"),
+ )
+
# =================================================================
@staticmethod
@@ -1173,10 +1199,34 @@
if has_json:
headers.update({"Content-Type":
"application/json;charset=utf-8"})
if has_files:
- # will be set afterwards
+ # will be set afterward
headers.pop("Content-Type", None)
return headers
+ def _upload_file(
+ self,
+ *,
+ url: str,
+ data: bytes,
+ logger: logging.Logger,
+ timeout: int,
+ proxy: Optional[str],
+ ssl: Optional[SSLContext],
+ ) -> FileUploadV2Result:
+ """Upload a file using the issued upload URL"""
+ result = _upload_file_via_v2_url(
+ url=url,
+ data=data,
+ logger=logger,
+ timeout=timeout,
+ proxy=proxy,
+ ssl=ssl,
+ )
+ return FileUploadV2Result(
+ status=result.get("status"),
+ body=result.get("body"),
+ )
+
# =================================================================
@staticmethod
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/client.html
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/client.html
--- old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/client.html
2024-02-28 03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/client.html
2024-05-16 04:54:21.000000000 +0200
@@ -43,7 +43,6 @@
_warn_if_text_or_attachment_fallback_is_missing,
_remove_none_values,
_to_v2_file_upload_item,
- _upload_file_via_v2_url,
_validate_for_legacy_client,
_print_files_upload_v2_suggestion,
)
@@ -3604,7 +3603,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -3612,9 +3611,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
@@ -8772,7 +8771,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -8780,9 +8779,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
@@ -15921,7 +15920,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -15929,9 +15928,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/file_upload_v2_result.html
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/file_upload_v2_result.html
---
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/file_upload_v2_result.html
1970-01-01 01:00:00.000000000 +0100
+++
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/file_upload_v2_result.html
2024-05-16 04:54:21.000000000 +0200
@@ -0,0 +1,109 @@
+<!doctype html>
+<html lang="en">
+<head>
+<meta charset="utf-8">
+<meta name="viewport" content="width=device-width, initial-scale=1,
minimum-scale=1" />
+<meta name="generator" content="pdoc 0.10.0" />
+<title>slack_sdk.web.file_upload_v2_result API documentation</title>
+<meta name="description" content="" />
+<link rel="preload stylesheet" as="style"
href="https://cdnjs.cloudflare.com/ajax/libs/10up-sanitize.css/11.0.1/sanitize.min.css"
integrity="sha256-PK9q560IAAa6WVRRh76LtCaI8pjTJ2z11v0miyNNjrs=" crossorigin>
+<link rel="preload stylesheet" as="style"
href="https://cdnjs.cloudflare.com/ajax/libs/10up-sanitize.css/11.0.1/typography.min.css"
integrity="sha256-7l/o7C8jubJiy74VsKTidCy1yBkRtiUGbVkYBylBqUg=" crossorigin>
+<link rel="stylesheet preload" as="style"
href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.1/styles/github.min.css"
crossorigin>
+<style>:root{--highlight-color:#fe9}.flex{display:flex
!important}body{line-height:1.5em}#content{padding:20px}#sidebar{padding:30px;overflow:hidden}#sidebar
>
*:last-child{margin-bottom:2cm}.http-server-breadcrumbs{font-size:130%;margin:0
0 15px 0}#footer{font-size:.75em;padding:5px 30px;border-top:1px solid
#ddd;text-align:right}#footer p{margin:0 0 0 1em;display:inline-block}#footer
p:last-child{margin-right:30px}h1,h2,h3,h4,h5{font-weight:300}h1{font-size:2.5em;line-height:1.1em}h2{font-size:1.75em;margin:1em
0 .50em 0}h3{font-size:1.4em;margin:25px 0 10px
0}h4{margin:0;font-size:105%}h1:target,h2:target,h3:target,h4:target,h5:target,h6:target{background:var(--highlight-color);padding:.2em
0}a{color:#058;text-decoration:none;transition:color .3s
ease-in-out}a:hover{color:#e82}.title
code{font-weight:bold}h2[id^="header-"]{margin-top:2em}.ident{color:#900}pre
code{background:#f8f8f8;font-size:.8em;line-height:1.4em}code{background:#f2f2f1;padding:1px
4px;overflow-wrap:break-word}
h1 code{background:transparent}pre{background:#f8f8f8;border:0;border-top:1px
solid #ccc;border-bottom:1px solid #ccc;margin:1em
0;padding:1ex}#http-server-module-list{display:flex;flex-flow:column}#http-server-module-list
div{display:flex}#http-server-module-list
dt{min-width:10%}#http-server-module-list p{margin-top:0}.toc
ul,#index{list-style-type:none;margin:0;padding:0}#index
code{background:transparent}#index h3{border-bottom:1px solid #ddd}#index
ul{padding:0}#index h4{margin-top:.6em;font-weight:bold}@media
(min-width:200ex){#index .two-column{column-count:2}}@media
(min-width:300ex){#index .two-column{column-count:3}}dl{margin-bottom:2em}dl
dl:last-child{margin-bottom:4em}dd{margin:0 0 1em 3em}#header-classes + dl >
dd{margin-bottom:3em}dd dd{margin-left:2em}dd p{margin:10px
0}.name{background:#eee;font-weight:bold;font-size:.85em;padding:5px
10px;display:inline-block;min-width:40%}.name:hover{background:#e0e0e0}dt:target
.name{background:var(--highlight-color)}.name > span
:first-child{white-space:nowrap}.name.class >
span:nth-child(2){margin-left:.4em}.inherited{color:#999;border-left:5px solid
#eee;padding-left:1em}.inheritance em{font-style:normal;font-weight:bold}.desc
h2{font-weight:400;font-size:1.25em}.desc h3{font-size:1em}.desc dt
code{background:inherit}.source
summary,.git-link-div{color:#666;text-align:right;font-weight:400;font-size:.8em;text-transform:uppercase}.source
summary >
*{white-space:nowrap;cursor:pointer}.git-link{color:inherit;margin-left:1em}.source
pre{max-height:500px;overflow:auto;margin:0}.source pre
code{font-size:12px;overflow:visible}.hlist{list-style:none}.hlist
li{display:inline}.hlist li:after{content:',\2002'}.hlist
li:last-child:after{content:none}.hlist
.hlist{display:inline;padding-left:1em}img{max-width:100%}td{padding:0
.5em}.admonition{padding:.1em
.5em;margin-bottom:1em}.admonition-title{font-weight:bold}.admonition.note,.admonition.info,.admonition.important{background:#aef}.admonition.todo,.admonition.vers
ionadded,.admonition.tip,.admonition.hint{background:#dfd}.admonition.warning,.admonition.versionchanged,.admonition.deprecated{background:#fd4}.admonition.error,.admonition.danger,.admonition.caution{background:lightpink}</style>
+<style media="screen and (min-width: 700px)">@media screen and
(min-width:700px){#sidebar{width:30%;height:100vh;overflow:auto;position:sticky;top:0}#content{width:70%;max-width:100ch;padding:3em
4em;border-left:1px solid #ddd}pre code{font-size:1em}.item
.name{font-size:1em}main{display:flex;flex-direction:row-reverse;justify-content:flex-end}.toc
ul ul,#index ul{padding-left:1.5em}.toc > ul > li{margin-top:.5em}}</style>
+<style media="print">@media print{#sidebar
h1{page-break-before:always}.source{display:none}}@media
print{*{background:transparent !important;color:#000 !important;box-shadow:none
!important;text-shadow:none !important}a[href]:after{content:" (" attr(href)
")";font-size:90%}a[href][title]:after{content:none}abbr[title]:after{content:"
(" attr(title) ")"}.ir
a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px
solid
#999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%
!important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h1,h2,h3,h4,h5,h6{page-break-after:avoid}}</style>
+<script defer
src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.1/highlight.min.js"
integrity="sha256-Uv3H6lx7dJmRfRvH8TH6kJD1TSK1aFcwgx+mdg3epi8="
crossorigin></script>
+<script>window.addEventListener('DOMContentLoaded', () =>
hljs.initHighlighting())</script>
+</head>
+<body>
+<main>
+<article id="content">
+<header>
+<h1 class="title">Module <code>slack_sdk.web.file_upload_v2_result</code></h1>
+</header>
+<section id="section-intro">
+<details class="source">
+<summary>
+<span>Expand source code</span>
+</summary>
+<pre><code class="python">class FileUploadV2Result:
+ status: int
+ body: str
+
+ def __init__(self, status: int, body: str):
+ self.status = status
+ self.body = body</code></pre>
+</details>
+</section>
+<section>
+</section>
+<section>
+</section>
+<section>
+</section>
+<section>
+<h2 class="section-title" id="header-classes">Classes</h2>
+<dl>
+<dt id="slack_sdk.web.file_upload_v2_result.FileUploadV2Result"><code
class="flex name class">
+<span>class <span class="ident">FileUploadV2Result</span></span>
+<span>(</span><span>status:Â int, body:Â str)</span>
+</code></dt>
+<dd>
+<div class="desc"></div>
+<details class="source">
+<summary>
+<span>Expand source code</span>
+</summary>
+<pre><code class="python">class FileUploadV2Result:
+ status: int
+ body: str
+
+ def __init__(self, status: int, body: str):
+ self.status = status
+ self.body = body</code></pre>
+</details>
+<h3>Class variables</h3>
+<dl>
+<dt id="slack_sdk.web.file_upload_v2_result.FileUploadV2Result.body"><code
class="name">var <span class="ident">body</span> :Â str</code></dt>
+<dd>
+<div class="desc"></div>
+</dd>
+<dt id="slack_sdk.web.file_upload_v2_result.FileUploadV2Result.status"><code
class="name">var <span class="ident">status</span> :Â int</code></dt>
+<dd>
+<div class="desc"></div>
+</dd>
+</dl>
+</dd>
+</dl>
+</section>
+</article>
+<nav id="sidebar">
+<h1>Index</h1>
+<div class="toc">
+<ul></ul>
+</div>
+<ul id="index">
+<li><h3>Super-module</h3>
+<ul>
+<li><code><a title="slack_sdk.web"
href="index.html">slack_sdk.web</a></code></li>
+</ul>
+</li>
+<li><h3><a href="#header-classes">Classes</a></h3>
+<ul>
+<li>
+<h4><code><a title="slack_sdk.web.file_upload_v2_result.FileUploadV2Result"
href="#slack_sdk.web.file_upload_v2_result.FileUploadV2Result">FileUploadV2Result</a></code></h4>
+<ul class="">
+<li><code><a
title="slack_sdk.web.file_upload_v2_result.FileUploadV2Result.body"
href="#slack_sdk.web.file_upload_v2_result.FileUploadV2Result.body">body</a></code></li>
+<li><code><a
title="slack_sdk.web.file_upload_v2_result.FileUploadV2Result.status"
href="#slack_sdk.web.file_upload_v2_result.FileUploadV2Result.status">status</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</nav>
+</main>
+<footer id="footer">
+<p>Generated by <a href="https://pdoc3.github.io/pdoc" title="pdoc: Python API
documentation generator"><cite>pdoc</cite> 0.10.0</a>.</p>
+</footer>
+</body>
+</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/index.html
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/index.html
--- old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/index.html
2024-02-28 03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/index.html
2024-05-16 04:54:21.000000000 +0200
@@ -71,6 +71,10 @@
<dd>
<div class="desc"></div>
</dd>
+<dt><code class="name"><a title="slack_sdk.web.file_upload_v2_result"
href="file_upload_v2_result.html">slack_sdk.web.file_upload_v2_result</a></code></dt>
+<dd>
+<div class="desc"></div>
+</dd>
<dt><code class="name"><a title="slack_sdk.web.internal_utils"
href="internal_utils.html">slack_sdk.web.internal_utils</a></code></dt>
<dd>
<div class="desc"></div>
@@ -4025,7 +4029,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -4033,9 +4037,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
@@ -11174,7 +11178,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -11182,9 +11186,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
@@ -13663,6 +13667,7 @@
<li><code><a title="slack_sdk.web.base_client"
href="base_client.html">slack_sdk.web.base_client</a></code></li>
<li><code><a title="slack_sdk.web.client"
href="client.html">slack_sdk.web.client</a></code></li>
<li><code><a title="slack_sdk.web.deprecation"
href="deprecation.html">slack_sdk.web.deprecation</a></code></li>
+<li><code><a title="slack_sdk.web.file_upload_v2_result"
href="file_upload_v2_result.html">slack_sdk.web.file_upload_v2_result</a></code></li>
<li><code><a title="slack_sdk.web.internal_utils"
href="internal_utils.html">slack_sdk.web.internal_utils</a></code></li>
<li><code><a title="slack_sdk.web.legacy_base_client"
href="legacy_base_client.html">slack_sdk.web.legacy_base_client</a></code></li>
<li><code><a title="slack_sdk.web.legacy_client"
href="legacy_client.html">slack_sdk.web.legacy_client</a></code></li>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/internal_utils.html
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/internal_utils.html
--- old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/internal_utils.html
2024-02-28 03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/internal_utils.html
2024-05-16 04:54:21.000000000 +0200
@@ -405,6 +405,9 @@
else:
raise SlackRequestError(f"Invalid proxy detected: {proxy} must
be a str value")
+ if logger.level <= logging.DEBUG:
+ logger.debug(f"Sending a request: POST {url}")
+
resp: Optional[HTTPResponse] = None
req: Request = Request(method="POST", url=url, data=data,
headers={})
if opener:
@@ -416,8 +419,10 @@
body: str = resp.read().decode(charset) # read the response body here
if logger.level <= logging.DEBUG:
message = (
- "Received the following response - ",
- f"status: {resp.status}, " f"headers:
{dict(resp.headers)}, " f"body: {body}",
+ "Received the following response - "
+ f"status: {resp.status}, "
+ f"headers: {dict(resp.headers)}, "
+ f"body: {body}"
)
logger.debug(message)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/legacy_base_client.html
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/legacy_base_client.html
---
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/legacy_base_client.html
2024-02-28 03:09:42.000000000 +0100
+++
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/legacy_base_client.html
2024-05-16 04:54:21.000000000 +0200
@@ -55,12 +55,14 @@
from slack_sdk.errors import SlackRequestError
from .async_internal_utils import _files_to_data, _get_event_loop,
_request_with_session
from .deprecation import show_deprecation_warning_if_any
+from .file_upload_v2_result import FileUploadV2Result
from .internal_utils import (
convert_bool_to_0_or_1,
get_user_agent,
_get_url,
_build_req_args,
_build_unexpected_body_error_message,
+ _upload_file_via_v2_url,
)
from .legacy_slack_response import LegacySlackResponse as SlackResponse
from ..proxy_env_variable_loader import load_http_proxy_from_env
@@ -550,10 +552,33 @@
if has_json:
headers.update({"Content-Type":
"application/json;charset=utf-8"})
if has_files:
- # will be set afterwards
+ # will be set afterward
headers.pop("Content-Type", None)
return headers
+ def _upload_file(
+ self,
+ *,
+ url: str,
+ data: bytes,
+ logger: logging.Logger,
+ timeout: int,
+ proxy: Optional[str],
+ ssl: Optional[SSLContext],
+ ) -> FileUploadV2Result:
+ result = _upload_file_via_v2_url(
+ url=url,
+ data=data,
+ logger=logger,
+ timeout=timeout,
+ proxy=proxy,
+ ssl=ssl,
+ )
+ return FileUploadV2Result(
+ status=result.get("status"),
+ body=result.get("body"),
+ )
+
# =================================================================
@staticmethod
@@ -1091,10 +1116,33 @@
if has_json:
headers.update({"Content-Type":
"application/json;charset=utf-8"})
if has_files:
- # will be set afterwards
+ # will be set afterward
headers.pop("Content-Type", None)
return headers
+ def _upload_file(
+ self,
+ *,
+ url: str,
+ data: bytes,
+ logger: logging.Logger,
+ timeout: int,
+ proxy: Optional[str],
+ ssl: Optional[SSLContext],
+ ) -> FileUploadV2Result:
+ result = _upload_file_via_v2_url(
+ url=url,
+ data=data,
+ logger=logger,
+ timeout=timeout,
+ proxy=proxy,
+ ssl=ssl,
+ )
+ return FileUploadV2Result(
+ status=result.get("status"),
+ body=result.get("body"),
+ )
+
# =================================================================
@staticmethod
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/legacy_client.html
new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/legacy_client.html
--- old/python-slack-sdk-3.27.1/docs/api-docs/slack_sdk/web/legacy_client.html
2024-02-28 03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/docs/api-docs/slack_sdk/web/legacy_client.html
2024-05-16 04:54:21.000000000 +0200
@@ -53,7 +53,6 @@
_warn_if_text_or_attachment_fallback_is_missing,
_remove_none_values,
_to_v2_file_upload_item,
- _upload_file_via_v2_url,
_validate_for_legacy_client,
_print_files_upload_v2_suggestion,
)
@@ -3614,7 +3613,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -3622,9 +3621,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
@@ -8782,7 +8781,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -8790,9 +8789,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
@@ -15931,7 +15930,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -15939,9 +15938,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-slack-sdk-3.27.1/requirements/optional.txt
new/python-slack-sdk-3.27.2/requirements/optional.txt
--- old/python-slack-sdk-3.27.1/requirements/optional.txt 2024-02-28
03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/requirements/optional.txt 2024-05-16
04:54:21.000000000 +0200
@@ -12,6 +12,5 @@
SQLAlchemy>=1.4,<3
# Socket Mode
# websockets 9 is not compatible with Python 3.10
-websockets>=9.1,<10; python_version=="3.6"
-websockets>=10,<11; python_version>"3.6"
+websockets>=9.1,<13
websocket-client>=1,<2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-slack-sdk-3.27.1/requirements/testing.txt
new/python-slack-sdk-3.27.2/requirements/testing.txt
--- old/python-slack-sdk-3.27.1/requirements/testing.txt 2024-02-28
03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/requirements/testing.txt 2024-05-16
04:54:21.000000000 +0200
@@ -1,11 +1,11 @@
# pip install -r requirements/testing.txt
aiohttp<4 # used for a WebSocket server mock
-pytest>=7.0.1,<8
+pytest>=7.0.1,<9
pytest-asyncio<1 # for async
-pytest-cov>=2,<3
+pytest-cov>=2,<6
# while flake8 5.x have issues with Python 3.12, flake8 6.x requires Python >=
3.8.1,
# so 5.x should be kept in order to stay compatible with Python 3.6/3.7
-flake8>=5.0.4,<7
+flake8>=5.0.4,<8
# Don't change this version without running CI builds;
# The latest version may not be available for older Python runtime
black>=22.8.0; python_version=="3.6"
@@ -15,6 +15,4 @@
# used only under slack_sdk/*_store
boto3<=2
# For AWS tests
-moto==4.0.13; python_version=="3.6"
-moto<5; python_version=="3.7"
-moto<6
+moto>=4.0.13,<6
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-slack-sdk-3.27.1/setup.py
new/python-slack-sdk-3.27.2/setup.py
--- old/python-slack-sdk-3.27.1/setup.py 2024-02-28 03:09:42.000000000
+0100
+++ new/python-slack-sdk-3.27.2/setup.py 2024-05-16 04:54:21.000000000
+0200
@@ -79,6 +79,11 @@
async_source,
)
async_source = re.sub(
+ r" self._upload_file\(",
+ " await self._upload_file(",
+ async_source,
+ )
+ async_source = re.sub(
r" self.files_completeUploadExternal\(",
" await self.files_completeUploadExternal(",
async_source,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/slack_sdk/models/blocks/block_elements.py
new/python-slack-sdk-3.27.2/slack_sdk/models/blocks/block_elements.py
--- old/python-slack-sdk-3.27.1/slack_sdk/models/blocks/block_elements.py
2024-02-28 03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/slack_sdk/models/blocks/block_elements.py
2024-05-16 04:54:21.000000000 +0200
@@ -1868,7 +1868,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements
+ self.elements = BlockElement.parse_all(elements)
self.style = style
self.indent = indent
self.offset = offset
@@ -1891,7 +1891,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements
+ self.elements = BlockElement.parse_all(elements)
self.border = border
@@ -1910,7 +1910,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements
+ self.elements = BlockElement.parse_all(elements)
class RichTextSectionElement(RichTextElement):
@@ -1928,7 +1928,7 @@
):
super().__init__(type=self.type)
show_unknown_key_warning(self, others)
- self.elements = elements
+ self.elements = BlockElement.parse_all(elements)
class RichTextElementParts:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-slack-sdk-3.27.1/slack_sdk/version.py
new/python-slack-sdk-3.27.2/slack_sdk/version.py
--- old/python-slack-sdk-3.27.1/slack_sdk/version.py 2024-02-28
03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/slack_sdk/version.py 2024-05-16
04:54:21.000000000 +0200
@@ -1,2 +1,2 @@
"""Check the latest version at https://pypi.org/project/slack-sdk/"""
-__version__ = "3.27.1"
+__version__ = "3.27.2"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/slack_sdk/web/async_base_client.py
new/python-slack-sdk-3.27.2/slack_sdk/web/async_base_client.py
--- old/python-slack-sdk-3.27.1/slack_sdk/web/async_base_client.py
2024-02-28 03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/slack_sdk/web/async_base_client.py
2024-05-16 04:54:21.000000000 +0200
@@ -11,6 +11,7 @@
) # type: ignore
from .async_slack_response import AsyncSlackResponse
from .deprecation import show_deprecation_warning_if_any
+from .file_upload_v2_result import FileUploadV2Result
from .internal_utils import (
convert_bool_to_0_or_1,
_build_req_args,
@@ -214,3 +215,28 @@
req_args=req_args,
retry_handlers=self.retry_handlers,
)
+
+ async def _upload_file(
+ self,
+ *,
+ url: str,
+ data: bytes,
+ logger: logging.Logger,
+ timeout: int,
+ proxy: Optional[str],
+ ssl: Optional[SSLContext],
+ ) -> FileUploadV2Result:
+ """Upload a file using the issued upload URL"""
+ result = await _request_with_session(
+ current_session=self.session,
+ timeout=timeout,
+ logger=logger,
+ http_verb="POST",
+ api_url=url,
+ req_args={"data": data, "proxy": proxy, "ssl": ssl},
+ retry_handlers=self.retry_handlers,
+ )
+ return FileUploadV2Result(
+ status=result.get("status_code"),
+ body=result.get("body"),
+ )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/slack_sdk/web/async_client.py
new/python-slack-sdk-3.27.2/slack_sdk/web/async_client.py
--- old/python-slack-sdk-3.27.1/slack_sdk/web/async_client.py 2024-02-28
03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/slack_sdk/web/async_client.py 2024-05-16
04:54:21.000000000 +0200
@@ -23,7 +23,6 @@
_warn_if_text_or_attachment_fallback_is_missing,
_remove_none_values,
_to_v2_file_upload_item,
- _upload_file_via_v2_url,
_validate_for_legacy_client,
_print_files_upload_v2_suggestion,
)
@@ -3584,7 +3583,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = await self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -3592,9 +3591,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/slack_sdk/web/async_internal_utils.py
new/python-slack-sdk-3.27.2/slack_sdk/web/async_internal_utils.py
--- old/python-slack-sdk-3.27.1/slack_sdk/web/async_internal_utils.py
2024-02-28 03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/slack_sdk/web/async_internal_utils.py
2024-05-16 04:54:21.000000000 +0200
@@ -108,7 +108,7 @@
try:
async with session.request(http_verb, api_url, **req_args) as
res:
- data: Union[dict, bytes] = {}
+ data: Union[dict, bytes, str] = {}
if res.content_type == "application/gzip":
# admin.analytics.getFile
data = await res.read()
@@ -117,6 +117,14 @@
headers=res.headers,
data=data,
)
+ elif res.content_type == "text/plain":
+ # https://files.slack.com/upload/v1/...
+ data = await res.text()
+ retry_response = RetryHttpResponse(
+ status_code=res.status,
+ headers=res.headers,
+ data=data,
+ )
else:
try:
data = await res.json()
@@ -143,7 +151,9 @@
)
if logger.level <= logging.DEBUG:
- body = data if isinstance(data, dict) else "(binary)"
+ body = "(binary)"
+ if isinstance(data, dict) or isinstance(data, str):
+ body = data
logger.debug(
"Received the following response - "
f"status: {res.status}, "
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-slack-sdk-3.27.1/slack_sdk/web/base_client.py
new/python-slack-sdk-3.27.2/slack_sdk/web/base_client.py
--- old/python-slack-sdk-3.27.1/slack_sdk/web/base_client.py 2024-02-28
03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/slack_sdk/web/base_client.py 2024-05-16
04:54:21.000000000 +0200
@@ -21,12 +21,14 @@
from slack_sdk.errors import SlackRequestError
from .deprecation import show_deprecation_warning_if_any
+from .file_upload_v2_result import FileUploadV2Result
from .internal_utils import (
convert_bool_to_0_or_1,
get_user_agent,
_get_url,
_build_req_args,
_build_unexpected_body_error_message,
+ _upload_file_via_v2_url,
)
from .slack_response import SlackResponse
from slack_sdk.http_retry import default_retry_handlers
@@ -560,10 +562,34 @@
if has_json:
headers.update({"Content-Type": "application/json;charset=utf-8"})
if has_files:
- # will be set afterwards
+ # will be set afterward
headers.pop("Content-Type", None)
return headers
+ def _upload_file(
+ self,
+ *,
+ url: str,
+ data: bytes,
+ logger: logging.Logger,
+ timeout: int,
+ proxy: Optional[str],
+ ssl: Optional[SSLContext],
+ ) -> FileUploadV2Result:
+ """Upload a file using the issued upload URL"""
+ result = _upload_file_via_v2_url(
+ url=url,
+ data=data,
+ logger=logger,
+ timeout=timeout,
+ proxy=proxy,
+ ssl=ssl,
+ )
+ return FileUploadV2Result(
+ status=result.get("status"),
+ body=result.get("body"),
+ )
+
# =================================================================
@staticmethod
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-slack-sdk-3.27.1/slack_sdk/web/client.py
new/python-slack-sdk-3.27.2/slack_sdk/web/client.py
--- old/python-slack-sdk-3.27.1/slack_sdk/web/client.py 2024-02-28
03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/slack_sdk/web/client.py 2024-05-16
04:54:21.000000000 +0200
@@ -14,7 +14,6 @@
_warn_if_text_or_attachment_fallback_is_missing,
_remove_none_values,
_to_v2_file_upload_item,
- _upload_file_via_v2_url,
_validate_for_legacy_client,
_print_files_upload_v2_suggestion,
)
@@ -3575,7 +3574,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -3583,9 +3582,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/slack_sdk/web/file_upload_v2_result.py
new/python-slack-sdk-3.27.2/slack_sdk/web/file_upload_v2_result.py
--- old/python-slack-sdk-3.27.1/slack_sdk/web/file_upload_v2_result.py
1970-01-01 01:00:00.000000000 +0100
+++ new/python-slack-sdk-3.27.2/slack_sdk/web/file_upload_v2_result.py
2024-05-16 04:54:21.000000000 +0200
@@ -0,0 +1,7 @@
+class FileUploadV2Result:
+ status: int
+ body: str
+
+ def __init__(self, status: int, body: str):
+ self.status = status
+ self.body = body
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/slack_sdk/web/internal_utils.py
new/python-slack-sdk-3.27.2/slack_sdk/web/internal_utils.py
--- old/python-slack-sdk-3.27.1/slack_sdk/web/internal_utils.py 2024-02-28
03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/slack_sdk/web/internal_utils.py 2024-05-16
04:54:21.000000000 +0200
@@ -377,6 +377,9 @@
else:
raise SlackRequestError(f"Invalid proxy detected: {proxy} must be
a str value")
+ if logger.level <= logging.DEBUG:
+ logger.debug(f"Sending a request: POST {url}")
+
resp: Optional[HTTPResponse] = None
req: Request = Request(method="POST", url=url, data=data, headers={})
if opener:
@@ -388,8 +391,10 @@
body: str = resp.read().decode(charset) # read the response body here
if logger.level <= logging.DEBUG:
message = (
- "Received the following response - ",
- f"status: {resp.status}, " f"headers: {dict(resp.headers)}, "
f"body: {body}",
+ "Received the following response - "
+ f"status: {resp.status}, "
+ f"headers: {dict(resp.headers)}, "
+ f"body: {body}"
)
logger.debug(message)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/slack_sdk/web/legacy_base_client.py
new/python-slack-sdk-3.27.2/slack_sdk/web/legacy_base_client.py
--- old/python-slack-sdk-3.27.1/slack_sdk/web/legacy_base_client.py
2024-02-28 03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/slack_sdk/web/legacy_base_client.py
2024-05-16 04:54:21.000000000 +0200
@@ -26,12 +26,14 @@
from slack_sdk.errors import SlackRequestError
from .async_internal_utils import _files_to_data, _get_event_loop,
_request_with_session
from .deprecation import show_deprecation_warning_if_any
+from .file_upload_v2_result import FileUploadV2Result
from .internal_utils import (
convert_bool_to_0_or_1,
get_user_agent,
_get_url,
_build_req_args,
_build_unexpected_body_error_message,
+ _upload_file_via_v2_url,
)
from .legacy_slack_response import LegacySlackResponse as SlackResponse
from ..proxy_env_variable_loader import load_http_proxy_from_env
@@ -521,10 +523,33 @@
if has_json:
headers.update({"Content-Type": "application/json;charset=utf-8"})
if has_files:
- # will be set afterwards
+ # will be set afterward
headers.pop("Content-Type", None)
return headers
+ def _upload_file(
+ self,
+ *,
+ url: str,
+ data: bytes,
+ logger: logging.Logger,
+ timeout: int,
+ proxy: Optional[str],
+ ssl: Optional[SSLContext],
+ ) -> FileUploadV2Result:
+ result = _upload_file_via_v2_url(
+ url=url,
+ data=data,
+ logger=logger,
+ timeout=timeout,
+ proxy=proxy,
+ ssl=ssl,
+ )
+ return FileUploadV2Result(
+ status=result.get("status"),
+ body=result.get("body"),
+ )
+
# =================================================================
@staticmethod
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/slack_sdk/web/legacy_client.py
new/python-slack-sdk-3.27.2/slack_sdk/web/legacy_client.py
--- old/python-slack-sdk-3.27.1/slack_sdk/web/legacy_client.py 2024-02-28
03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/slack_sdk/web/legacy_client.py 2024-05-16
04:54:21.000000000 +0200
@@ -25,7 +25,6 @@
_warn_if_text_or_attachment_fallback_is_missing,
_remove_none_values,
_to_v2_file_upload_item,
- _upload_file_via_v2_url,
_validate_for_legacy_client,
_print_files_upload_v2_suggestion,
)
@@ -3586,7 +3585,7 @@
# step2: "https://files.slack.com/upload/v1/..." per file
for f in files:
- upload_result = _upload_file_via_v2_url(
+ upload_result = self._upload_file(
url=f["upload_url"],
data=f["data"],
logger=self._logger,
@@ -3594,9 +3593,9 @@
proxy=self.proxy,
ssl=self.ssl,
)
- if upload_result.get("status") != 200:
- status = upload_result.get("status")
- body = upload_result.get("body")
+ if upload_result.status != 200:
+ status = upload_result.status
+ body = upload_result.body
message = (
"Failed to upload a file "
f"(status: {status}, body: {body}, filename:
{f.get('filename')}, title: {f.get('title')})"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/tests/slack_sdk/models/test_blocks.py
new/python-slack-sdk-3.27.2/tests/slack_sdk/models/test_blocks.py
--- old/python-slack-sdk-3.27.1/tests/slack_sdk/models/test_blocks.py
2024-02-28 03:09:42.000000000 +0100
+++ new/python-slack-sdk-3.27.2/tests/slack_sdk/models/test_blocks.py
2024-05-16 04:54:21.000000000 +0200
@@ -1083,3 +1083,38 @@
],
)
self.assertDictEqual(dict_block, class_block.to_dict())
+
+ def test_elements_are_parsed(self):
+ dict_block = {
+ "type": "rich_text",
+ "elements": [
+ {
+ "type": "rich_text_section",
+ "elements": [{"type": "text", "text": "Hello there, I am a
basic rich text block!"}],
+ },
+ {
+ "type": "rich_text_quote",
+ "elements": [{"type": "text", "text": "this is very
important"}],
+ },
+ {
+ "type": "rich_text_preformatted",
+ "elements": [{"type": "text", "text": 'print("Hello
world")'}],
+ },
+ {
+ "type": "rich_text_list",
+ "elements": [
+ {"type": "rich_text_section", "elements": [{"type":
"text", "text": "a"}]},
+ ],
+ },
+ ],
+ }
+ block = RichTextBlock(**dict_block)
+ self.assertIsInstance(block.elements[0], RichTextSectionElement)
+ self.assertIsInstance(block.elements[0].elements[0],
RichTextElementParts.Text)
+ self.assertIsInstance(block.elements[1], RichTextQuoteElement)
+ self.assertIsInstance(block.elements[1].elements[0],
RichTextElementParts.Text)
+ self.assertIsInstance(block.elements[2], RichTextPreformattedElement)
+ self.assertIsInstance(block.elements[2].elements[0],
RichTextElementParts.Text)
+ self.assertIsInstance(block.elements[3], RichTextListElement)
+ self.assertIsInstance(block.elements[3].elements[0],
RichTextSectionElement)
+ self.assertIsInstance(block.elements[3].elements[0].elements[0],
RichTextElementParts.Text)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/tests/slack_sdk/socket_mode/test_interactions_builtin.py
new/python-slack-sdk-3.27.2/tests/slack_sdk/socket_mode/test_interactions_builtin.py
---
old/python-slack-sdk-3.27.1/tests/slack_sdk/socket_mode/test_interactions_builtin.py
2024-02-28 03:09:42.000000000 +0100
+++
new/python-slack-sdk-3.27.2/tests/slack_sdk/socket_mode/test_interactions_builtin.py
2024-05-16 04:54:21.000000000 +0200
@@ -13,7 +13,6 @@
from slack_sdk import WebClient
from slack_sdk.socket_mode import SocketModeClient
-from tests.helpers import is_ci_unstable_test_skip_enabled
from tests.slack_sdk.socket_mode.mock_socket_mode_server import (
start_socket_mode_server,
socket_mode_envelopes,
@@ -48,9 +47,6 @@
pass
def test_interactions(self):
- if is_ci_unstable_test_skip_enabled():
- return
-
default_recursion_limit = sys.getrecursionlimit() # will restore later
# This built-in WebSocket client internally has recursive method calls
of _fetch_messages method.
# In this test, the method calls can result in the following error
when giving a quite small buffer size.
@@ -135,8 +131,6 @@
self.logger.info(f"Passed with buffer size: {buffer_size_list}")
def test_send_message_while_disconnection(self):
- if is_ci_unstable_test_skip_enabled():
- return
t = Thread(target=start_socket_mode_server(self, 3011))
t.daemon = True
t.start()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/tests/slack_sdk/socket_mode/test_interactions_websocket_client.py
new/python-slack-sdk-3.27.2/tests/slack_sdk/socket_mode/test_interactions_websocket_client.py
---
old/python-slack-sdk-3.27.1/tests/slack_sdk/socket_mode/test_interactions_websocket_client.py
2024-02-28 03:09:42.000000000 +0100
+++
new/python-slack-sdk-3.27.2/tests/slack_sdk/socket_mode/test_interactions_websocket_client.py
2024-05-16 04:54:21.000000000 +0200
@@ -38,8 +38,6 @@
cleanup_mock_web_api_server(self)
def test_interactions(self):
- if is_ci_unstable_test_skip_enabled():
- return
t = Thread(target=start_socket_mode_server(self, 3012))
t.daemon = True
t.start()
@@ -100,6 +98,7 @@
def test_send_message_while_disconnection(self):
if is_ci_unstable_test_skip_enabled():
+ # this test tends to fail on the GitHub Actions platform
return
t = Thread(target=start_socket_mode_server(self, 3012))
t.daemon = True
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/tests/slack_sdk_async/socket_mode/test_interactions_aiohttp.py
new/python-slack-sdk-3.27.2/tests/slack_sdk_async/socket_mode/test_interactions_aiohttp.py
---
old/python-slack-sdk-3.27.1/tests/slack_sdk_async/socket_mode/test_interactions_aiohttp.py
2024-02-28 03:09:42.000000000 +0100
+++
new/python-slack-sdk-3.27.2/tests/slack_sdk_async/socket_mode/test_interactions_aiohttp.py
2024-05-16 04:54:21.000000000 +0200
@@ -14,7 +14,6 @@
from slack_sdk.socket_mode.aiohttp import SocketModeClient
from slack_sdk.web.async_client import AsyncWebClient
-from tests.helpers import is_ci_unstable_test_skip_enabled
from tests.slack_sdk.socket_mode.mock_socket_mode_server import (
start_socket_mode_server,
start_socket_mode_server_with_disconnection,
@@ -44,8 +43,6 @@
@async_test
async def test_interactions(self):
- if is_ci_unstable_test_skip_enabled():
- return
t = Thread(target=start_socket_mode_server(self, 3001))
t.daemon = True
t.start()
@@ -108,8 +105,6 @@
@async_test
async def test_interactions_with_disconnection(self):
- if is_ci_unstable_test_skip_enabled():
- return
t = Thread(target=start_socket_mode_server_with_disconnection(self,
3001))
t.daemon = True
t.start()
@@ -196,8 +191,6 @@
@async_test
async def test_send_message_while_disconnection(self):
- if is_ci_unstable_test_skip_enabled():
- return
t = Thread(target=start_socket_mode_server(self, 3001))
t.daemon = True
t.start()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-slack-sdk-3.27.1/tests/slack_sdk_async/socket_mode/test_interactions_websockets.py
new/python-slack-sdk-3.27.2/tests/slack_sdk_async/socket_mode/test_interactions_websockets.py
---
old/python-slack-sdk-3.27.1/tests/slack_sdk_async/socket_mode/test_interactions_websockets.py
2024-02-28 03:09:42.000000000 +0100
+++
new/python-slack-sdk-3.27.2/tests/slack_sdk_async/socket_mode/test_interactions_websockets.py
2024-05-16 04:54:21.000000000 +0200
@@ -42,8 +42,6 @@
@async_test
async def test_interactions(self):
- if is_ci_unstable_test_skip_enabled():
- return
t = Thread(target=start_socket_mode_server(self, 3002))
t.daemon = True
t.start()
@@ -109,6 +107,7 @@
@async_test
async def test_send_message_while_disconnection(self):
if is_ci_unstable_test_skip_enabled():
+ # this test tends to fail on the GitHub Actions platform
return
t = Thread(target=start_socket_mode_server(self, 3001))
t.daemon = True