fix: bug using newline separator (#418)

This commit is contained in:
Tonye Jack 2022-03-08 06:59:26 -05:00 committed by GitHub
parent abb8062519
commit f5a8de7d36
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 27 additions and 0 deletions

View file

@ -237,6 +237,16 @@ jobs:
echo '${{ toJSON(steps.changed-files-forward-slash.outputs) }}'
shell:
bash
- name: Run changed-files with newline separator
id: changed-files-newline
uses: ./
with:
separator: "\n"
- name: Show output
run: |
echo '${{ toJSON(steps.changed-files-newline.outputs) }}'
shell:
bash
- name: Run changed-files with pipe separator
id: changed-files-pipe
uses: ./
@ -257,6 +267,18 @@ jobs:
echo '${{ toJSON(steps.changed-files-comma.outputs) }}'
shell:
bash
- name: Run changed-files with specific files from a source file using a newline separator
id: changed-files-specific-newline-source-file
uses: ./
with:
files_from_source_file: |
test/changed-files-list.txt
separator: "\n"
- name: Show output
run: |
echo '${{ toJSON(steps.changed-files-specific-newline-source-file.outputs) }}'
shell:
bash
- name: Run changed-files with specific files
id: changed-files-specific
uses: ./

View file

@ -285,6 +285,7 @@ Support this project with a :star:
> NOTE: :warning:
>
> * Using characters like `\n`, `%` and `\r` as separators would be [URL encoded](https://www.w3schools.com/tags/ref_urlencode.asp)
> * Spaces in file names can introduce bugs when using bash loops. See: [#216](https://github.com/tj-actions/changed-files/issues/216)
> * However, this action will handle spaces in file names, with a recommendation of using a separator to prevent hidden issues.
> ![Screen Shot 2021-10-23 at 9 37 34 AM](https://user-images.githubusercontent.com/17484350/138558767-b13c90bf-a1ae-4e86-9520-70a6a4624f41.png)

View file

@ -2,6 +2,10 @@
set -eu
INPUT_SEPARATOR="${INPUT_SEPARATOR//'%'/'%25'}"
INPUT_SEPARATOR="${INPUT_SEPARATOR//$'\n'/'%0A'}"
INPUT_SEPARATOR="${INPUT_SEPARATOR//$'\r'/'%0D'}"
function get_diff() {
base="$1"
sha="$2"