slackapi / slackapi/python-slack-sdk

Last Bullet List Item Not Displayed on iOS Devices

Open
#1,490 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

auto-triage-skip bug question server-side-issue Version: 3x web-client
Dominant language
Python
Stars
4k
Forks
857
Avg merge
22h 21m
Merged PRs (30d)
16

Description

On iOS devices, the last line of the bullet list is not showing up when the message is sent using blocks.
This issue doesn't occur on desktop or Android devices where it displays as expected.
(See screenshots and code provided below.)

Reproducible in:
The Slack SDK version

slack_sdk==3.27.1

Python runtime version

Python 3.11.7

OS info

Darwin Kernel Version 23.3.0: Wed Dec 20 21:28:58 PST 2023; root:xnu-10002.81.5~7/RELEASE_X86_64

Steps to reproduce:
import os
from slack_sdk import WebClient

channel = os.environ["SLACK_CHANNEL"]
slack_token = os.environ["SLACK_BOT_TOKEN"]

client = WebClient(token=slack_token)

blocks = [
    {'type': 'section', 'text': {'type': 'mrkdwn', 'text': 'Bullet list:'}}, 
    {'type': 'section', 'text': {'type': 'mrkdwn', 'text': '• `john.doe@example.com`\n• `john.smith@example.com`'}}
]

client.chat_postMessage(
    channel=channel, blocks=blocks
)
Expected result:
image
Actual result:

photo1713403039

Requirements

For general questions/issues about Slack API platform or its server-side, could you submit questions at https://my.slack.com/help/requests/new instead. 🙇

Please read the Contributing guidelines and Code of Conduct before creating this issue or pull request. By submitting, you are agreeing to those rules.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the chat_postMessage call and the blocks payload shown in the issue, then reproduce the rendering difference on iOS and desktop. The payload names no repository file or test, so determine whether the Python SDK changes the block content before sending. Done means identifying an SDK-side fix and a regression test, or confirming the behavior is outside this repository.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
api, backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.