My build environment is an Ubuntu 24.04 VM.
Turns out I wasn’t running npm install in my build script, but that also apparently isn’t the issue: building after an npm install results in an equally broken (i.e. iconless) build as without it.
I’ll attach an output log from the npm install part. It at least mentions postinstall.sh.
npm-install.log
I don’t know; depends on whether it is run as part of the documented npm run build:android build command, which is what I’m using.
After updating my build of the mobile app from 2.40.0 to 2.41.1 (and no other changes in the build environment), all icons in the resulting app have been replaced with a ”☒”, and all channel icons with what looks like a Chinese character (the app is supposed to use English, like the OS). Only user profile pictures seem unaffected (except for the overlaid status indicator, which *is* affected).
I’ve so far tested this on a phone running Android 10 and a tablet running Android 15. Both are using the ”Onyx” theme (and switching the theme has no impact on the issue). The server is running the latest release 11.8.1 (and the web UI is unaffected).


Sorry, I was tracing this on a test site using a mockup, and apparently the <span> is actually only added once the post is published, so the issue doesn’t manifest when using previews. That’s why I never caught it while actually writing the posts and using previews, only after publishing.
The trailing <span class="__iawmlf-post-loop-links"> element introduced in PR #338 causes WordPress to render a trailing newline as a <br /> tag in the last paragraph. This behavior differs from when Link Fixer is not active.
I don’t know if the block editor is affected, since I don’t use it, but the issue is present when using the Classic Editor, and even there you have to use the Code view (because Visual view either converts the trailing newline into a line with an , or strips the trailing newline when switching to Code view).
My guess is that this is wpautop trying to be smart about the content, seeing the trailing <span> from Link Fixer, and thinking it’s visible content, so the trailing newline in the actual content (as entered in the editor) should be rendered as a visible <br /> too.
This is probably a very niche issue, and I’m sure I can figure out a way to work around it, but I wanted to document it anyway.
Steps to reproduce
- deactivate Link Fixer
- use Classic Editor’s Code view to create a post
- end the final paragraph with a newline
preview publish the post and inspect the last paragraph: there is no newline before the closing </p> tag
- activate Link Fixer
- create another post with the same contents
preview publish the post and inspect the last paragraph
What you expected to happen
the <span> to immediately follow the last word and immediately precede the closing </p> tag, with no newline before or after
What actually happened
the <span> is separated from the last word with a <br /> tag followed by a plain newline
Using a supported version?
- I have searched open and closed issues for duplicates.
- I am using Signal-Desktop as provided by the Signal team, not a 3rd-party package.
Overall summary
I’ve set notes to self to disappear after 1 day. I chose one message to be pinned, was prompted to select the time to pin the message for, and selected 7 days. I was shown the message in the title.
I’m now unsure whether the message will be unpinned and removed after 1 day or 7 days. My guess would be 7 days, but either way, I think the message should make this explicit, or at least unambiguous wrt. which timer takes precedence.
Steps to reproduce
- set notes to self to disappear after 1 day
- send a note to yourself
- choose to pin the message
- select to pin the message for 7 days
Expected result
Any of these, in order of preference:
- ”This disappearing message will be unpinned and removed from the chat after 7 days.”
- ”This disappearing message will be unpinned and removed from the chat after 1 day.”
- ”Disappearing messages will be unpinned and the removed from the chat when the pinning timer expires.”
- ”Disappearing messages will be unpinned and the removed from the chat when the disappearance timer expires.”
Actual result
”Disappearing messages will be unpinned when their timer expires and the message is removed from the chat.”
Screenshots
No response
Signal version
8.7.0
Operating system
Ubuntu 24.04
Version of Signal on your phone
8.6
No worries, thanks for the fix!
Yeah, seems to be fixed: I tested in an Ubuntu 24.04 vm with WezTerm 20240203-110809-5046fc22 and couldn’t reproduce the issue.
(I first tried the nightly, which from the repository was 20260117-154428-05343b38, but that one was missing all window decorations entirely, and so couldn’t be resized at all.)
I’ll close the issue and unsubscribe, as I’m not using WezTerm currently myself. Others can reopen it if still affected.
I noticed that for the specific case of picking an element from the end using just the size of the array itself, the above is a somewhat contrived example; a plain -1 would work just as well. But I can change the example script as below, and the difference between outputs still holds:
#!/bin/bash
array=(
"a"
"b"
"c"
)
i=3
value="${array[i - 1]}"
printf "%s\n" "${value}"
With the same arguments given, output differs between 3.12.0 and 3.13.0, as demonstrated in the example below. I didn’t see this mentioned directly in the release notes, so I was wondering if this is an intentional change or a bug. I don’t mind the change per se, but just wanted to be sure that it’s permanent before I adjust all my existing scripts to conform to the newer way shfmt prefers this.
$ cat asdf
#!/bin/bash
array=(
"a"
"b"
"c"
)
value="${array[${#array[@]} - 1]}"
printf "%s\n" "${value}"
$ /usr/local/bin/archive/shfmt/shfmt_v3.12.0_linux_amd64 -i 4 -ci -l -d asdf # no output
$ /usr/local/bin/archive/shfmt/shfmt_v3.13.0_linux_amd64 -i 4 -ci -l -d asdf
asdf
diff asdf.orig asdf
--- asdf.orig
+++ asdf
@@ -6,6 +6,6 @@
"c"
)
-value="${array[${#array[@]} - 1]}"
+value="${array[${#array[@]}-1]}"
printf "%s\n" "${value}"