Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[5.x]: Renaming an asset without the file extension fails with “” is not an allowed file extension.

Open
#19,950 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
55/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
php
Domain
backend

Research direction

Start at the asset edit flow that saves the Filename field and trace how it validates extensions, especially names with no extension or a dot in the base name. Add or locate tests for renaming Test.pdf to Test-Renamed and Test-Schedule-v1.2; done means the original extension is retained or the validation error clearly reports a missing or disallowed extension.

Written by the indexing model from the issue text.

Description

bug repo:cms
What happened?

On the asset edit page, the Filename field contains the full filename, including the extension (e.g. Activities-Schedule.pdf). When editors rename a file, they often type just the new name and leave out the extension, since that's what they'd expect to edit.

Craft then rejects the save, and the error shows an empty extension: “” is not an allowed file extension. The Filename field also goes back to the original name, so it isn't clear to editors what went wrong or how to fix it. Our content editors have reported this as a bug.

The same thing happens when the new name contains a dot, such as a version number (Schedule-v1.2). Craft reads 2 as the extension and rejects it.

It would help if Craft kept the original extension when the new filename has none, or showed the extension as a fixed suffix outside the editable part of the field.

Steps to reproduce

  1. Upload a PDF to any asset volume, e.g. Test.pdf.
  2. Open the asset's edit page in the Control Panel.
  3. In the Filename field, replace the whole value with Test-Renamed (no extension).
  4. Click Save.

Expected behavior

The asset is renamed to Test-Renamed.pdf, keeping the original extension. Or, at minimum, the error says that the file extension is missing.

Actual behavior

The save fails with "Couldn’t save asset." and the field error “” is not an allowed file extension., and the Filename field goes back to Test.pdf.

Renaming to Test-Schedule-v1.2 fails the same way with “2” is not an allowed file extension.

Craft CMS version

5.11.3 (Pro)

PHP version

8.2.30

Operating system and version

No response

Database type and version

No response

Image driver and version

No response

Installed plugins and versions
Dominant language
PHP
Stars
3.6k
Forks
706
Avg merge
10h 43m
Merged PRs (30d)
249

Getting set up

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.

More from craftcms/cms

All issues in craftcms/cms

Similar issues

More PHP issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.