Discourse detectando incorretamente arquivo enviado como imagem

  1. Sim, está correto – como na minha captura de tela acima

  2. Não estou sugerindo que você faça a modificação. No entanto, se você não puder esperar, certamente poderá testar essa alteração.

  • Para uma alteração temporária (desaparece após a reconstrução):
cd /var/discourse
./launcher enter app
sed -i "s/FastImage.new(@file)/FastImage.new(@file, :raise_on_failure=true)/" lib/upload_creator.rb
sed -i "s/FastImage.new(original_path)/FastImage.new(original_path, :raise_on_failure=true)/" app/models/upload.rb
exit
  • Para uma alteração persistente (permanece após a reconstrução):
cd /var/discourse
nano containers/app.yml  (use seu editor preferido)

Adicione os seguintes comandos personalizados no final (seção run):

  - replace:
      filename: "/var/www/discourse/lib/upload_creator.rb"
      from: "FastImage.new(@file)"
      to: "FastImage.new(@file, :raise_on_failure=true)"
  - replace:
      filename: "/var/www/discourse/app/models/upload.rb"
      from: "FastImage.new(original_path)"
      to: "FastImage.new(original_path, :raise_on_failure=true)"

Em seguida, reconstrua:

./launcher rebuild app
  1. Acho que sim, se você planeja carregar arquivos sem extensões. Não verifiquei se outras ocorrências exigiam a mesma alteração.