From 26c9a934b1010109e8457032a1227a8f0cd71c32 Mon Sep 17 00:00:00 2001 From: Rui Chen Date: Sat, 14 Mar 2026 23:05:29 -0400 Subject: [PATCH] docs: clarify asset filename limitations Closes #542 Signed-off-by: Rui Chen --- README.md | 10 +++++++++- action.yml | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d2e16be..7b01b41 100644 --- a/README.md +++ b/README.md @@ -186,7 +186,7 @@ The following are optional as `step.with` keys | `draft` | Boolean | Indicator of whether or not this release is a draft | | `prerelease` | Boolean | Indicator of whether or not is a prerelease | | `preserve_order` | Boolean | Upload assets sequentially in the provided order. This controls the action's upload behavior, but it does not control the final asset ordering that GitHub may display on the release page or return from the Releases API. | -| `files` | String | Newline-delimited globs of paths to assets to upload for release | +| `files` | String | Newline-delimited globs of paths to assets to upload for release. Escape glob metacharacters when you need to match a literal filename that contains them, such as `[` or `]`. | | `overwrite_files` | Boolean | Indicator of whether files should be overwritten when they already exist. Defaults to true | | `name` | String | Name of the release. defaults to tag name | | `tag_name` | String | Name of a tag. defaults to `github.ref_name` | @@ -206,6 +206,14 @@ attempted first, then falling back on `body` if the path can not be read from. are not explicitly set and there is already an existing release for the tag, the release will retain its original info. +💡 `files` is glob-based, so literal filenames that contain glob metacharacters such as +`[` or `]` must be escaped in the pattern. + +💡 GitHub may normalize or rewrite uploaded asset filenames that contain special or +non-ASCII characters. This action uploads the requested file, but it cannot force the +final asset name that GitHub stores or returns from the Releases API. In particular, +4-byte Unicode characters such as emoji cannot currently be restored via asset labels. + #### outputs The following outputs can be accessed via `${{ steps..outputs }}` from this action diff --git a/action.yml b/action.yml index 5dc4405..5031267 100644 --- a/action.yml +++ b/action.yml @@ -25,7 +25,7 @@ inputs: description: "Upload artifacts sequentially in the provided order. This does not control the final display order GitHub uses for release assets." required: false files: - description: "Newline-delimited list of path globs for asset files to upload" + description: "Newline-delimited list of path globs for asset files to upload. Escape glob metacharacters when matching literal filenames that contain them." required: false working_directory: description: "Base directory to resolve 'files' globs against (defaults to job working-directory)"