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 个赞

我已经查看过了,这确实是一个由文件名中包含 . 引起的 bug。Composer 试图仅移除文件扩展名,结果导致 Markdown 中出现了 bridge-2-a5-flier.04|WIDTHxHEIGHT。但实际上它只是在 . 处分割文件名,并取扩展名之前的第一部分,这显然是不正确的。

据我所知,这个 bug 已经存在两年了,感谢您如此 :eagle:-eyed 并发现了它!我今天会提交修复。

6 个赞

已修复,详见 FIX: Image file names with dots were showing incorrectly in composer markdown by martin-brennan · Pull Request #8465 · discourse/discourse · GitHub

5 个赞

此主题已在 5 小时后自动关闭。不再允许新回复。