Несогласованность правил именования файлов при загрузке PNG и PDF

Привет, разработчики!

Недавно я загрузил (используя Discourse 2.4.0.beta7 и текущую версию) два идентичных по содержимому файла в форматах PNG и PDF (на форум openmod). Discourse автоматически парсит и записывает исходное имя файла в Markdown следующим образом:

Имя загруженного файла Указанный файл Комментарий
bridge-2-a5-flier.04.png 04 аннотация 1
bridge-2-a5-flier.04.pdf bridge-2-a5-flier.04.pdf аннотация 2

Ниже приведён скриншот с аннотациями «1» и «2», показывающий, как это работает:

Мне кажется, что в случае с PNG должно записываться исходное имя файла или, в крайнем случае, хотя бы полное имя без расширения, как в команде: basename "bridge-2-a5-flier.04.png" ".png".

Я искал похожие сообщения об ошибках, но нашёл только обсуждения, касающиеся генерации анонимизированной строки имени.

Как всегда, спасибо за это замечательное программное обеспечение. R

6 лайков

Согласен, похоже на ошибку из-за точки в имени файла.

4 лайка

Я посмотрел, и это точно баг, связанный с . в имени файла. Composer пытается просто удалить расширение, поэтому в markdown получается bridge-2-a5-flier.04|WIDTHxHEIGHT, но на самом деле он просто разбивает имя файла по . и берёт первую часть перед расширением, что, очевидно, неверно.

Насколько я вижу, этот баг существует уже два года, так что спасибо за :eagle:-зоркость и то, что вы его заметили! Я внесу исправление сегодня.

6 лайков

Исправлено в FIX: Image file names with dots were showing incorrectly in composer markdown by martin-brennan · Pull Request #8465 · discourse/discourse · GitHub

5 лайков

Эта тема была автоматически закрыта через 5 часов. Новые ответы больше не принимаются.