Compare commits
102 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
95690f9ece | ||
|
|
97266423db | ||
|
|
af4b210111 | ||
|
|
2a10bef1b4 | ||
|
|
5c45808ea0 | ||
|
|
a82ffc67b3 | ||
|
|
44225688bb | ||
|
|
f144a9e6da | ||
|
|
d08f64adf6 | ||
|
|
2d0db8be9e | ||
|
|
408093d9ff | ||
|
|
a8fcc78511 | ||
|
|
49e754c81d | ||
|
|
3b9406ef82 | ||
|
|
1d9d8f4a76 | ||
|
|
6777efe3ca | ||
|
|
2b4a057e15 | ||
|
|
1e88b750d4 | ||
|
|
57421690e0 | ||
|
|
1c14cc7ff3 | ||
|
|
54864d4c3b | ||
|
|
8f6e85fcdf | ||
|
|
6cd5b66101 | ||
|
|
3729bf289f | ||
|
|
db153baf73 | ||
|
|
344b35fc53 | ||
|
|
f318653745 | ||
|
|
3415b43780 | ||
|
|
15f38d6693 | ||
|
|
2160c8e998 | ||
|
|
39084f937a | ||
|
|
22a6a7dedc | ||
|
|
8f93691a81 | ||
|
|
c5c7d8163f | ||
|
|
e061de58da | ||
|
|
6f90eecfe8 | ||
|
|
4daaa8171d | ||
|
|
cbff9146e3 | ||
|
|
2d7c10954b | ||
|
|
6e74c9dbbb | ||
|
|
44827f39da | ||
|
|
2ba385a5e1 | ||
|
|
7d9358afc1 | ||
|
|
cf03855076 | ||
|
|
877b5ce98c | ||
|
|
428220b7f4 | ||
|
|
914e0223cf | ||
|
|
b79cd45602 | ||
|
|
19107de46c | ||
|
|
29dd1b9c76 | ||
|
|
dac82b0e15 | ||
|
|
4595c4c56b | ||
|
|
39000e536b | ||
|
|
181ee9b66b | ||
|
|
9053f9ea11 | ||
|
|
8238a41032 | ||
|
|
aaf4339aa1 | ||
|
|
d2486b470f | ||
|
|
e7fd9e59a4 | ||
|
|
e3cc088a96 | ||
|
|
72d7089b72 | ||
|
|
e94da5a065 | ||
|
|
a721d001dd | ||
|
|
8af3110d4d | ||
|
|
a351a301d2 | ||
|
|
62a23f82b1 | ||
|
|
ef42e5ad18 | ||
|
|
cd1e384723 | ||
|
|
a52f8621d2 | ||
|
|
920856cfdd | ||
|
|
08906b3254 | ||
|
|
cd35eace22 | ||
|
|
8296c33fd0 | ||
|
|
0ad71b9855 | ||
|
|
c98e6d20fc | ||
|
|
2398551415 | ||
|
|
060b3b9b03 | ||
|
|
ff65504325 | ||
|
|
543c1a25c6 | ||
|
|
1be42003d7 | ||
|
|
2325baada3 | ||
|
|
e6ce728d79 | ||
|
|
0b947ed818 | ||
|
|
e8dbf6d670 | ||
|
|
41c232aad8 | ||
|
|
4196030939 | ||
|
|
bbe796033e | ||
|
|
159562dc02 | ||
|
|
a21a533a0c | ||
|
|
eeb169a9f9 | ||
|
|
951140b94a | ||
|
|
dbf0700c7a | ||
|
|
dacbaebcaf | ||
|
|
36ab2fe9c2 | ||
|
|
7e3a4bac80 | ||
|
|
dcbe9805f4 | ||
|
|
fd73c1248c | ||
|
|
8e79ba7ab9 | ||
|
|
5db7b578d5 | ||
|
|
a17e8c5252 | ||
|
|
d1e9506b19 | ||
|
|
1fdfe0928a |
@@ -187,6 +187,16 @@
|
|||||||
"contributions": [
|
"contributions": [
|
||||||
"doc"
|
"doc"
|
||||||
]
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "V0lantis",
|
||||||
|
"name": "Arthur",
|
||||||
|
"avatar_url": "https://avatars.githubusercontent.com/u/37664438?v=4",
|
||||||
|
"profile": "https://arthurvolant.com",
|
||||||
|
"contributions": [
|
||||||
|
"bug",
|
||||||
|
"code"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"contributorsPerLine": 7,
|
"contributorsPerLine": 7,
|
||||||
@@ -195,5 +205,6 @@
|
|||||||
"repoType": "github",
|
"repoType": "github",
|
||||||
"repoHost": "https://github.com",
|
"repoHost": "https://github.com",
|
||||||
"skipCi": true,
|
"skipCi": true,
|
||||||
"commitConvention": "angular"
|
"commitConvention": "angular",
|
||||||
|
"commitType": "docs"
|
||||||
}
|
}
|
||||||
|
|||||||
4
.codacy.yml
Normal file
4
.codacy.yml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
---
|
||||||
|
exclude_paths:
|
||||||
|
- "*.md"
|
||||||
|
- "dist/**"
|
||||||
2
.github/workflows/codacy-analysis.yml
vendored
2
.github/workflows/codacy-analysis.yml
vendored
@@ -29,7 +29,7 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
# Checkout the repository to the GitHub Actions runner
|
# Checkout the repository to the GitHub Actions runner
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
# Execute Codacy Analysis CLI and generate a SARIF output with the security issues identified during the analysis
|
# Execute Codacy Analysis CLI and generate a SARIF output with the security issues identified during the analysis
|
||||||
- name: Run Codacy Analysis CLI
|
- name: Run Codacy Analysis CLI
|
||||||
|
|||||||
2
.github/workflows/codeql.yml
vendored
2
.github/workflows/codeql.yml
vendored
@@ -38,7 +38,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
# Initializes the CodeQL tools for scanning.
|
# Initializes the CodeQL tools for scanning.
|
||||||
- name: Initialize CodeQL
|
- name: Initialize CodeQL
|
||||||
|
|||||||
174
.github/workflows/issue-comment-test.yml
vendored
Normal file
174
.github/workflows/issue-comment-test.yml
vendored
Normal file
@@ -0,0 +1,174 @@
|
|||||||
|
name: Issue Comment Test
|
||||||
|
on:
|
||||||
|
issue_comment:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
pr_commented:
|
||||||
|
# This job only runs for pull request comments
|
||||||
|
name: PR comment
|
||||||
|
if: ${{ github.event.issue.pull_request }}
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- run: |
|
||||||
|
echo A comment on PR $NUMBER
|
||||||
|
env:
|
||||||
|
NUMBER: ${{ github.event.issue.number }}
|
||||||
|
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
submodules: true
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Dump GitHub context
|
||||||
|
env:
|
||||||
|
GITHUB_CONTEXT: ${{ toJson(github) }}
|
||||||
|
run: echo "$GITHUB_CONTEXT"
|
||||||
|
|
||||||
|
- name: Run changed-files with defaults
|
||||||
|
id: changed-files
|
||||||
|
uses: ./
|
||||||
|
|
||||||
|
- name: Show output
|
||||||
|
run: |
|
||||||
|
echo '${{ toJSON(steps.changed-files.outputs) }}'
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
|
||||||
|
- name: Run changed-files for old new filenames test rename
|
||||||
|
id: changed-files-all-old-new-renamed-files
|
||||||
|
uses: ./
|
||||||
|
with:
|
||||||
|
base_sha: d1c0ee4
|
||||||
|
sha: 4d04215
|
||||||
|
fetch_depth: 60000
|
||||||
|
include_all_old_new_renamed_files: true
|
||||||
|
|
||||||
|
- name: Show output
|
||||||
|
run: |
|
||||||
|
echo '${{ toJSON(steps.changed-files-all-old-new-renamed-files.outputs) }}'
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
|
||||||
|
- name: Show output
|
||||||
|
run: |
|
||||||
|
echo '${{ toJSON(steps.changed-files-all-old-new-renamed-files.outputs) }}'
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
|
||||||
|
- name: Check all_old_new_renamed_files output on non windows platform
|
||||||
|
if: "!contains(steps.changed-files-all-old-new-renamed-files.outputs.all_old_new_renamed_files, 'test/test rename 1.txt,test/test rename-1.txt') && runner.os != 'Windows'"
|
||||||
|
run: |
|
||||||
|
echo "Invalid output: Expected to include (test/test rename 1.txt,test/test rename-1.txt) got (${{ steps.changed-files-all-old-new-renamed-files.outputs.all_old_new_renamed_files }})"
|
||||||
|
exit 1
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
|
||||||
|
- name: Check all_old_new_renamed_files output on windows platform
|
||||||
|
if: "!contains(steps.changed-files-all-old-new-renamed-files.outputs.all_old_new_renamed_files, 'test\\test rename 1.txt,test\\test rename-1.txt') && runner.os == 'Windows'"
|
||||||
|
run: |
|
||||||
|
echo "Invalid output: Expected to not include (test\\test rename 1.txt,test\\test rename-1.txt) got (${{ steps.changed-files-all-old-new-renamed-files.outputs.all_old_new_renamed_files }})"
|
||||||
|
exit 1
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
|
||||||
|
- name: Check the renamed_files output on non windows platform
|
||||||
|
if: "!contains(steps.changed-files-all-old-new-renamed-files.outputs.renamed_files, 'test/test rename-1.txt') && runner.os != 'Windows'"
|
||||||
|
run: |
|
||||||
|
echo "Invalid output: Expected to include (test/test rename-1.txt) got (${{ steps.changed-files-all-old-new-renamed-files.outputs.renamed_files }})"
|
||||||
|
exit 1
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
|
||||||
|
- name: Check the renamed_files output on windows platform
|
||||||
|
if: "!contains(steps.changed-files-all-old-new-renamed-files.outputs.renamed_files, 'test\\test rename-1.txt') && runner.os == 'Windows'"
|
||||||
|
run: |
|
||||||
|
echo "Invalid output: Expected to not include (test\\test rename-1.txt) got (${{ steps.changed-files-all-old-new-renamed-files.outputs.renamed_files }})"
|
||||||
|
exit 1
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
|
||||||
|
issue_commented:
|
||||||
|
# This job only runs for issue comments
|
||||||
|
name: Issue comment
|
||||||
|
if: ${{ !github.event.issue.pull_request }}
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- run: |
|
||||||
|
echo A comment on issue $NUMBER
|
||||||
|
env:
|
||||||
|
NUMBER: ${{ github.event.issue.number }}
|
||||||
|
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
submodules: true
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Dump GitHub context
|
||||||
|
env:
|
||||||
|
GITHUB_CONTEXT: ${{ toJson(github) }}
|
||||||
|
run: echo "$GITHUB_CONTEXT"
|
||||||
|
|
||||||
|
- name: Run changed-files with defaults
|
||||||
|
id: changed-files
|
||||||
|
uses: ./
|
||||||
|
|
||||||
|
- name: Show output
|
||||||
|
run: |
|
||||||
|
echo '${{ toJSON(steps.changed-files.outputs) }}'
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
|
||||||
|
- name: Run changed-files for old new filenames test rename
|
||||||
|
id: changed-files-all-old-new-renamed-files
|
||||||
|
uses: ./
|
||||||
|
with:
|
||||||
|
base_sha: d1c0ee4
|
||||||
|
sha: 4d04215
|
||||||
|
fetch_depth: 60000
|
||||||
|
include_all_old_new_renamed_files: true
|
||||||
|
|
||||||
|
- name: Show output
|
||||||
|
run: |
|
||||||
|
echo '${{ toJSON(steps.changed-files-all-old-new-renamed-files.outputs) }}'
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
|
||||||
|
- name: Show output
|
||||||
|
run: |
|
||||||
|
echo '${{ toJSON(steps.changed-files-all-old-new-renamed-files.outputs) }}'
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
|
||||||
|
- name: Check all_old_new_renamed_files output on non windows platform
|
||||||
|
if: "!contains(steps.changed-files-all-old-new-renamed-files.outputs.all_old_new_renamed_files, 'test/test rename 1.txt,test/test rename-1.txt') && runner.os != 'Windows'"
|
||||||
|
run: |
|
||||||
|
echo "Invalid output: Expected to include (test/test rename 1.txt,test/test rename-1.txt) got (${{ steps.changed-files-all-old-new-renamed-files.outputs.all_old_new_renamed_files }})"
|
||||||
|
exit 1
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
|
||||||
|
- name: Check all_old_new_renamed_files output on windows platform
|
||||||
|
if: "!contains(steps.changed-files-all-old-new-renamed-files.outputs.all_old_new_renamed_files, 'test\\test rename 1.txt,test\\test rename-1.txt') && runner.os == 'Windows'"
|
||||||
|
run: |
|
||||||
|
echo "Invalid output: Expected to not include (test\\test rename 1.txt,test\\test rename-1.txt) got (${{ steps.changed-files-all-old-new-renamed-files.outputs.all_old_new_renamed_files }})"
|
||||||
|
exit 1
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
|
||||||
|
- name: Check the renamed_files output on non windows platform
|
||||||
|
if: "!contains(steps.changed-files-all-old-new-renamed-files.outputs.renamed_files, 'test/test rename-1.txt') && runner.os != 'Windows'"
|
||||||
|
run: |
|
||||||
|
echo "Invalid output: Expected to include (test/test rename-1.txt) got (${{ steps.changed-files-all-old-new-renamed-files.outputs.renamed_files }})"
|
||||||
|
exit 1
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
|
||||||
|
- name: Check the renamed_files output on windows platform
|
||||||
|
if: "!contains(steps.changed-files-all-old-new-renamed-files.outputs.renamed_files, 'test\\test rename-1.txt') && runner.os == 'Windows'"
|
||||||
|
run: |
|
||||||
|
echo "Invalid output: Expected to not include (test\\test rename-1.txt) got (${{ steps.changed-files-all-old-new-renamed-files.outputs.renamed_files }})"
|
||||||
|
exit 1
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
2
.github/workflows/manual-test.yml
vendored
2
.github/workflows/manual-test.yml
vendored
@@ -16,7 +16,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
submodules: true
|
submodules: true
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|||||||
4
.github/workflows/matrix-test.yml
vendored
4
.github/workflows/matrix-test.yml
vendored
@@ -14,7 +14,7 @@ jobs:
|
|||||||
matrix: ${{ steps.set-matrix.outputs.matrix }}
|
matrix: ${{ steps.set-matrix.outputs.matrix }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
- name: Get changed files
|
- name: Get changed files
|
||||||
@@ -38,7 +38,7 @@ jobs:
|
|||||||
fail-fast: false
|
fail-fast: false
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4
|
uses: actions/checkout@v4
|
||||||
- name: Test
|
- name: Test
|
||||||
run: |
|
run: |
|
||||||
echo ${{ matrix.files }}
|
echo ${{ matrix.files }}
|
||||||
|
|||||||
2
.github/workflows/sync-release-version.yml
vendored
2
.github/workflows/sync-release-version.yml
vendored
@@ -8,7 +8,7 @@ jobs:
|
|||||||
update-version:
|
update-version:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
- name: Run release-tagger
|
- name: Run release-tagger
|
||||||
|
|||||||
90
.github/workflows/test.yml
vendored
90
.github/workflows/test.yml
vendored
@@ -765,6 +765,12 @@ jobs:
|
|||||||
echo "Expected: (test/test deleted.txt) got ${{ steps.changed-files-recover-deleted-files-with-files-yaml.outputs.test_deleted_files }}"
|
echo "Expected: (test/test deleted.txt) got ${{ steps.changed-files-recover-deleted-files-with-files-yaml.outputs.test_deleted_files }}"
|
||||||
exit 1
|
exit 1
|
||||||
|
|
||||||
|
- name: Verify that the modified_keys is correct
|
||||||
|
if: "!contains(steps.changed-files-recover-deleted-files-with-files-yaml.outputs.modified_keys, 'test')"
|
||||||
|
run: |
|
||||||
|
echo "Expected: (test) got ${{ steps.changed-files-recover-deleted-files-with-files-yaml.outputs.modified_keys }}"
|
||||||
|
exit 1
|
||||||
|
|
||||||
- name: Verify that test/test deleted.txt is restored
|
- name: Verify that test/test deleted.txt is restored
|
||||||
run: |
|
run: |
|
||||||
if [ ! -f "test/test deleted.txt" ]; then
|
if [ ! -f "test/test deleted.txt" ]; then
|
||||||
@@ -805,7 +811,81 @@ jobs:
|
|||||||
else
|
else
|
||||||
cat "deleted_files/test/test deleted.txt"
|
cat "deleted_files/test/test deleted.txt"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
test-dir-names-deleted-files-include-only-deleted-dirs-single-file:
|
||||||
|
name: Test dir names deleted files include only deleted dirs single file
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs: build
|
||||||
|
if: needs.build.outputs.files_changed != 'true'
|
||||||
|
steps:
|
||||||
|
- name: Checkout branch
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
ref: a52f8621d26d5d9f54b80f74bda2d9eedff94693
|
||||||
|
repository: ${{ github.event.pull_request.head.repo.full_name }}
|
||||||
|
submodules: true
|
||||||
|
fetch-depth: 2
|
||||||
|
- name: Run changed-files with dir_names and dir_names_deleted_files_include_only_deleted_dirs with a single file deleted withing the test directory
|
||||||
|
id: changed-files-dir-names-deleted-files-include-only-deleted-dirs-single-file
|
||||||
|
uses: ./
|
||||||
|
with:
|
||||||
|
base_sha: 920856cfdd4b4be17810e34b197596397473adf6
|
||||||
|
sha: a52f8621d26d5d9f54b80f74bda2d9eedff94693
|
||||||
|
dir_names: true
|
||||||
|
dir_names_deleted_files_include_only_deleted_dirs: true
|
||||||
|
- name: Show output
|
||||||
|
run: |
|
||||||
|
echo '${{ toJSON(steps.changed-files-dir-names-deleted-files-include-only-deleted-dirs-single-file.outputs) }}'
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
- name: Check deleted_files output
|
||||||
|
if: steps.changed-files-dir-names-deleted-files-include-only-deleted-dirs-single-file.outputs.deleted_files != ''
|
||||||
|
run: |
|
||||||
|
echo "Invalid output: Expected '' got (${{ steps.changed-files-dir-names-deleted-files-include-only-deleted-dirs-single-file.outputs.deleted_files }})"
|
||||||
|
exit 1
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
test-dir-names-deleted-files-include-only-deleted-dirs-directory:
|
||||||
|
name: Test dir names deleted files include only deleted dirs
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs: build
|
||||||
|
if: needs.build.outputs.files_changed != 'true'
|
||||||
|
steps:
|
||||||
|
- name: Checkout branch
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
ref: cd1e384723e4d1a184568182ac2b27c53ebf017f
|
||||||
|
repository: ${{ github.event.pull_request.head.repo.full_name }}
|
||||||
|
submodules: true
|
||||||
|
fetch-depth: 2
|
||||||
|
- name: Run changed-files with dir_names and dir_names_deleted_files_include_only_deleted_dirs with the test directory deleted
|
||||||
|
id: changed-files-dir-names-deleted-files-include-only-deleted-dirs-directory
|
||||||
|
uses: ./
|
||||||
|
with:
|
||||||
|
base_sha: a52f8621d26d5d9f54b80f74bda2d9eedff94693
|
||||||
|
sha: cd1e384723e4d1a184568182ac2b27c53ebf017f
|
||||||
|
dir_names: true
|
||||||
|
dir_names_deleted_files_include_only_deleted_dirs: true
|
||||||
|
- name: Show output
|
||||||
|
run: |
|
||||||
|
echo '${{ toJSON(steps.changed-files-dir-names-deleted-files-include-only-deleted-dirs-directory.outputs) }}'
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
- name: Check deleted_files output on non windows platform
|
||||||
|
if: steps.changed-files-dir-names-deleted-files-include-only-deleted-dirs-directory.outputs.deleted_files != 'test/test3' && runner.os != 'Windows'
|
||||||
|
run: |
|
||||||
|
echo "Invalid output: Expected (test/test3) got (${{ steps.changed-files-dir-names-deleted-files-include-only-deleted-dirs-directory.outputs.deleted_files }})"
|
||||||
|
exit 1
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
- name: Check deleted_files output on windows platform
|
||||||
|
if: "!contains(steps.changed-files-dir-names-deleted-files-include-only-deleted-dirs-directory.outputs.deleted_files, 'test\\test3') && runner.os == 'Windows'"
|
||||||
|
run: |
|
||||||
|
echo "Invalid output: Expected (test\\test3) got (${{ steps.changed-files-dir-names-deleted-files-include-only-deleted-dirs-directory.outputs.deleted_files }})"
|
||||||
|
exit 1
|
||||||
|
shell:
|
||||||
|
bash
|
||||||
|
|
||||||
test-since-last-remote-commit:
|
test-since-last-remote-commit:
|
||||||
name: Test changed-files since last remote commit
|
name: Test changed-files since last remote commit
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
@@ -839,7 +919,7 @@ jobs:
|
|||||||
since_last_remote_commit: true
|
since_last_remote_commit: true
|
||||||
|
|
||||||
- name: Verify failed
|
- name: Verify failed
|
||||||
if: steps.changed-files-since-last-remote-commit.outcome != 'failure' && matrix.fetch-depth == 1 && github.event_name != 'push'
|
if: steps.changed-files-since-last-remote-commit.outcome != 'failure' && matrix.fetch-depth == 1 && github.event.action == 'closed' && github.event_name == 'pull_request'
|
||||||
run: |
|
run: |
|
||||||
echo "Expected: (failure) got ${{ steps.changed-files-since-last-remote-commit.outcome }}"
|
echo "Expected: (failure) got ${{ steps.changed-files-since-last-remote-commit.outcome }}"
|
||||||
exit 1
|
exit 1
|
||||||
@@ -1417,14 +1497,14 @@ jobs:
|
|||||||
fi
|
fi
|
||||||
shell:
|
shell:
|
||||||
bash
|
bash
|
||||||
- name: Check if a excluded file is not included in any_deleted on non windows platform
|
- name: Check if an excluded file is included in deleted_files output on non windows platform
|
||||||
if: "contains(steps.changed-files-specific.outputs.deleted_files, 'test/test/test.txt') && runner.os != 'Windows'"
|
if: "contains(steps.changed-files-specific.outputs.deleted_files, 'test/test/test.txt') && runner.os != 'Windows'"
|
||||||
run: |
|
run: |
|
||||||
echo "Invalid output: Expected not to include (test/test/test.txt) got (${{ steps.changed-files-specific.outputs.deleted_files }})"
|
echo "Invalid output: Expected not to include (test/test/test.txt) got (${{ steps.changed-files-specific.outputs.deleted_files }})"
|
||||||
exit 1
|
exit 1
|
||||||
shell:
|
shell:
|
||||||
bash
|
bash
|
||||||
- name: Check if a excluded file is not included in any_deleted on windows platform
|
- name: Check if an excluded file is included in deleted_files output on windows platform
|
||||||
if: "contains(steps.changed-files-specific.outputs.deleted_files, 'test\\test\\test.txt') && runner.os == 'Windows'"
|
if: "contains(steps.changed-files-specific.outputs.deleted_files, 'test\\test\\test.txt') && runner.os == 'Windows'"
|
||||||
run: |
|
run: |
|
||||||
echo "Invalid output: Expected not to include (test\\test\\test.txt) got (${{ steps.changed-files-specific.outputs.deleted_files }})"
|
echo "Invalid output: Expected not to include (test\\test\\test.txt) got (${{ steps.changed-files-specific.outputs.deleted_files }})"
|
||||||
@@ -1863,7 +1943,7 @@ jobs:
|
|||||||
id: branch-name
|
id: branch-name
|
||||||
uses: tj-actions/branch-names@v7
|
uses: tj-actions/branch-names@v7
|
||||||
if: github.event_name == 'pull_request' && matrix.fetch-depth == 0
|
if: github.event_name == 'pull_request' && matrix.fetch-depth == 0
|
||||||
- uses: nrwl/nx-set-shas@v3
|
- uses: nrwl/nx-set-shas@v4
|
||||||
id: last_successful_commit
|
id: last_successful_commit
|
||||||
if: github.event_name == 'pull_request' && github.event.action != 'closed' && matrix.fetch-depth == 0
|
if: github.event_name == 'pull_request' && github.event.action != 'closed' && matrix.fetch-depth == 0
|
||||||
with:
|
with:
|
||||||
|
|||||||
2
.github/workflows/update-readme.yml
vendored
2
.github/workflows/update-readme.yml
vendored
@@ -9,7 +9,7 @@ jobs:
|
|||||||
sync-assets:
|
sync-assets:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
|
|||||||
269
HISTORY.md
269
HISTORY.md
@@ -1,5 +1,274 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
# [39.2.2](https://github.com/tj-actions/changed-files/compare/v39.2.1...v39.2.2) - (2023-10-11)
|
||||||
|
|
||||||
|
## <!-- 1 -->🐛 Bug Fixes
|
||||||
|
|
||||||
|
- **deps:** Update dependency @actions/github to v6 ([#1636](https://github.com/tj-actions/changed-files/issues/1636)) ([1d9d8f4](https://github.com/tj-actions/changed-files/commit/1d9d8f4a769e0e15ef6d9657ceb4c64b4f79444a)) - (renovate[bot])
|
||||||
|
|
||||||
|
## <!-- 16 -->➕ Add
|
||||||
|
|
||||||
|
- Added missing changes and modified dist assets.
|
||||||
|
([408093d](https://github.com/tj-actions/changed-files/commit/408093d9ff9c134c33b974e0722ce06b9d6e8263)) - (GitHub Action)
|
||||||
|
|
||||||
|
## <!-- 26 -->🔄 Update
|
||||||
|
|
||||||
|
- Update README.md ([49e754c](https://github.com/tj-actions/changed-files/commit/49e754c81d45331f68e6691ca91590e12f0bf105)) - (Tonye Jack)
|
||||||
|
- Updated README.md ([#1632](https://github.com/tj-actions/changed-files/issues/1632))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([5742169](https://github.com/tj-actions/changed-files/commit/57421690e0ad0aaa68f8a7de7cdcec0ac85f4471)) - (tj-actions[bot])
|
||||||
|
- Update README.md ([1c14cc7](https://github.com/tj-actions/changed-files/commit/1c14cc7ff31c36290d78b6beedcbfdd8eb6c1ad6)) - (Tonye Jack)
|
||||||
|
- Update README.md ([6cd5b66](https://github.com/tj-actions/changed-files/commit/6cd5b661017dec80808b3d6fe58017f11898979c)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 7 -->⚙️ Miscellaneous Tasks
|
||||||
|
|
||||||
|
- **deps:** Lock file maintenance ([a8fcc78](https://github.com/tj-actions/changed-files/commit/a8fcc78511f2e612fe60b52f342af99c9bfc53e8)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency eslint-plugin-prettier to v5.0.1 ([3b9406e](https://github.com/tj-actions/changed-files/commit/3b9406ef8235796a97765ef91c44294ef70175a1)) - (renovate[bot])
|
||||||
|
- **deps:** Update nrwl/nx-set-shas action to v4 ([#1635](https://github.com/tj-actions/changed-files/issues/1635)) ([6777efe](https://github.com/tj-actions/changed-files/commit/6777efe3caaf110650443295dcfe44b6001c2803)) - (renovate[bot])
|
||||||
|
- **deps:** Update typescript-eslint monorepo to v6.7.5 ([2b4a057](https://github.com/tj-actions/changed-files/commit/2b4a057e157f0c14d0bc6ee271924108cbe99aaf)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency @types/node to v20.8.4 ([1e88b75](https://github.com/tj-actions/changed-files/commit/1e88b750d46079ab0916821bfba40c1890fc9064)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency @types/node to v20.8.3 ([54864d4](https://github.com/tj-actions/changed-files/commit/54864d4c3b647ac620a1bcbc02d2e82dea105902)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency eslint to v8.51.0 ([8f6e85f](https://github.com/tj-actions/changed-files/commit/8f6e85fcdfa6c88613a3c33e6d6b1f9ef44c68e9)) - (renovate[bot])
|
||||||
|
|
||||||
|
## <!-- 9 -->⬆️ Upgrades
|
||||||
|
|
||||||
|
- Upgraded to v39.2.1 ([#1628](https://github.com/tj-actions/changed-files/issues/1628))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([3729bf2](https://github.com/tj-actions/changed-files/commit/3729bf289f532adbcb2e7b4d887b770c9fa2add8)) - (tj-actions[bot])
|
||||||
|
|
||||||
|
# [39.2.1](https://github.com/tj-actions/changed-files/compare/v39.2.0...v39.2.1) - (2023-10-03)
|
||||||
|
|
||||||
|
## <!-- 1 -->🐛 Bug Fixes
|
||||||
|
|
||||||
|
- Incorrect branch name for issue_comment event ([#1625](https://github.com/tj-actions/changed-files/issues/1625)) ([3415b43](https://github.com/tj-actions/changed-files/commit/3415b437807016c147990325ffd1c445deaa7a1d)) - (Tonye Jack)
|
||||||
|
- **deps:** Update dependency @octokit/rest to v20.0.2 ([2ba385a](https://github.com/tj-actions/changed-files/commit/2ba385a5e1d21dc4d37a2baf55e780a7fd57139c)) - (renovate[bot])
|
||||||
|
|
||||||
|
## <!-- 26 -->🔄 Update
|
||||||
|
|
||||||
|
- Update issue-comment-test.yml ([344b35f](https://github.com/tj-actions/changed-files/commit/344b35fc53a62a8550dc9715607c49a8777f16a1)) - (Tonye Jack)
|
||||||
|
- Update README.md ([e061de5](https://github.com/tj-actions/changed-files/commit/e061de58dad56050b79935b5cf2dcad74159fb83)) - (Tonye Jack)
|
||||||
|
- Update README.md ([2d7c109](https://github.com/tj-actions/changed-files/commit/2d7c10954b8d1cbd6384cb940c06c4478c53837d)) - (Tonye Jack)
|
||||||
|
- Update README.md ([6e74c9d](https://github.com/tj-actions/changed-files/commit/6e74c9dbbb6ba09bce97da82f2262807d6abbfa5)) - (Tonye Jack)
|
||||||
|
- Updated README.md ([#1612](https://github.com/tj-actions/changed-files/issues/1612))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([cf03855](https://github.com/tj-actions/changed-files/commit/cf03855076201be8cde507cce3b8bd4e9f7abe95)) - (tj-actions[bot])
|
||||||
|
- Update README.md ([877b5ce](https://github.com/tj-actions/changed-files/commit/877b5ce98c3a0133d7ac80b7e2cae6cc8f961841)) - (Tonye Jack)
|
||||||
|
- Updated README.md ([#1606](https://github.com/tj-actions/changed-files/issues/1606))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([dac82b0](https://github.com/tj-actions/changed-files/commit/dac82b0e155183344880244ed092cd3b06663426)) - (tj-actions[bot])
|
||||||
|
- Update README.md ([4595c4c](https://github.com/tj-actions/changed-files/commit/4595c4c56bb7ca1edba1f155a344153539b2b2f8)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 7 -->⚙️ Miscellaneous Tasks
|
||||||
|
|
||||||
|
- Clean up test ([#1627](https://github.com/tj-actions/changed-files/issues/1627)) ([db153ba](https://github.com/tj-actions/changed-files/commit/db153baf731265ad02cd490b07f470e2d55e3345)) - (Tonye Jack)
|
||||||
|
- Update issue-comment-test.yml ([f318653](https://github.com/tj-actions/changed-files/commit/f318653745f7ab6557649e6f96c71a5faccacb6b)) - (Tonye Jack)
|
||||||
|
- **deps:** Update dependency @types/node to v20.8.2 ([15f38d6](https://github.com/tj-actions/changed-files/commit/15f38d6693283446115e78f7b3076608c1c67d02)) - (renovate[bot])
|
||||||
|
- Create issue-comment-test.yml ([#1624](https://github.com/tj-actions/changed-files/issues/1624)) ([2160c8e](https://github.com/tj-actions/changed-files/commit/2160c8e998e23cb0a2cee38e4f030a743d61af29)) - (Tonye Jack)
|
||||||
|
- **deps:** Update typescript-eslint monorepo to v6.7.4 ([39084f9](https://github.com/tj-actions/changed-files/commit/39084f937ae8cc423a895ef8507e6620b1b7983b)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency @types/node to v20.8.0 ([22a6a7d](https://github.com/tj-actions/changed-files/commit/22a6a7dedc674501315625e1db94ce3fdbfdf386)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency eslint-plugin-jest to v27.4.2 ([8f93691](https://github.com/tj-actions/changed-files/commit/8f93691a81d6c978bc304711c46597e7dbbc25d4)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency @types/node to v20.7.2 ([c5c7d81](https://github.com/tj-actions/changed-files/commit/c5c7d8163f10b0dde64364d83cafb8de357b75eb)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency @types/node to v20.7.1 ([6f90eec](https://github.com/tj-actions/changed-files/commit/6f90eecfe82139f386adf4623cc24103cde40c3f)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency @types/micromatch to v4.0.3 ([4daaa81](https://github.com/tj-actions/changed-files/commit/4daaa8171de72e3250f45fc86d12a60d1dd47158)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency eslint-plugin-github to v4.10.1 ([cbff914](https://github.com/tj-actions/changed-files/commit/cbff9146e3997d34c4e754583c25435257541e58)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency @types/node to v20.7.0 ([44827f3](https://github.com/tj-actions/changed-files/commit/44827f39da2d74aeb9462a58b09a6be660878d4e)) - (renovate[bot])
|
||||||
|
- **deps:** Update typescript-eslint monorepo to v6.7.3 ([7d9358a](https://github.com/tj-actions/changed-files/commit/7d9358afc150cebfe3b5bd5741b21885ef30bf86)) - (renovate[bot])
|
||||||
|
- Updated list of unsupported inputs when using REST API ([#1611](https://github.com/tj-actions/changed-files/issues/1611)) ([428220b](https://github.com/tj-actions/changed-files/commit/428220b7f403d741a0c919da5b37293e1fc2b492)) - (Tonye Jack)
|
||||||
|
- **deps:** Update dependency @types/node to v20.6.5 ([914e022](https://github.com/tj-actions/changed-files/commit/914e0223cf25b0dcee06b9dddf0e5e8c2f13ea63)) - (renovate[bot])
|
||||||
|
- **deps:** Lock file maintenance ([b79cd45](https://github.com/tj-actions/changed-files/commit/b79cd45602e1ab93c5766c4055e658d83bd4f7a3)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency @types/node to v20.6.4 ([19107de](https://github.com/tj-actions/changed-files/commit/19107de46c6b36f05bae9188237357904b070361)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency @types/lodash to v4.14.199 ([29dd1b9](https://github.com/tj-actions/changed-files/commit/29dd1b9c76732acc349df06e11ac2cf359137642)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency eslint to v8.50.0 ([39000e5](https://github.com/tj-actions/changed-files/commit/39000e536b5446b6d4d0558ba3467384265331a0)) - (renovate[bot])
|
||||||
|
- **deps:** Lock file maintenance ([9053f9e](https://github.com/tj-actions/changed-files/commit/9053f9ea110082a134adc566dc32ece555fc4125)) - (renovate[bot])
|
||||||
|
|
||||||
|
## <!-- 9 -->⬆️ Upgrades
|
||||||
|
|
||||||
|
- Upgraded to v39.2.0 ([#1604](https://github.com/tj-actions/changed-files/issues/1604))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com>
|
||||||
|
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com> ([181ee9b](https://github.com/tj-actions/changed-files/commit/181ee9b66b9d14bd0c5ae6b99fefb64b91800887)) - (tj-actions[bot])
|
||||||
|
|
||||||
|
# [39.2.0](https://github.com/tj-actions/changed-files/compare/v39.1.2...v39.2.0) - (2023-09-22)
|
||||||
|
|
||||||
|
## <!-- 0 -->🚀 Features
|
||||||
|
|
||||||
|
- Add support for restricting the deleted files output to only deleted directories ([e6ce728](https://github.com/tj-actions/changed-files/commit/e6ce728d79e6c15a69a0eea43b1968c2f9da2e8b)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 1 -->🐛 Bug Fixes
|
||||||
|
|
||||||
|
- Fixed test for windows
|
||||||
|
([e94da5a](https://github.com/tj-actions/changed-files/commit/e94da5a065ad8dc8e519802967e6e6ccea3f5e87)) - (Tonye Jack)
|
||||||
|
- Fixed the test
|
||||||
|
([a721d00](https://github.com/tj-actions/changed-files/commit/a721d001dd7be793f80500eb3f60ea9db0743864)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 16 -->➕ Add
|
||||||
|
|
||||||
|
- Added missing changes and modified dist assets.
|
||||||
|
([8af3110](https://github.com/tj-actions/changed-files/commit/8af3110d4dfd8c1cc180fee0f14bcf402b598fb0)) - (GitHub Action)
|
||||||
|
- Added a test files
|
||||||
|
([920856c](https://github.com/tj-actions/changed-files/commit/920856cfdd4b4be17810e34b197596397473adf6)) - (Tonye Jack)
|
||||||
|
- Added missing changes and modified dist assets.
|
||||||
|
([8296c33](https://github.com/tj-actions/changed-files/commit/8296c33fd0180e60f8f7231f51d246bed82abf1f)) - (GitHub Action)
|
||||||
|
- Added missing changes and modified dist assets.
|
||||||
|
([2398551](https://github.com/tj-actions/changed-files/commit/23985514152c809eeea6e96f26c98b66dc77befa)) - (GitHub Action)
|
||||||
|
- Added missing changes and modified dist assets.
|
||||||
|
([ff65504](https://github.com/tj-actions/changed-files/commit/ff65504325c3dc10f03100fd228c04eeca7cca3a)) - (GitHub Action)
|
||||||
|
- Added missing changes and modified dist assets.
|
||||||
|
([2325baa](https://github.com/tj-actions/changed-files/commit/2325baada3477c4ca5bd25dce29d88b1efdf9f01)) - (GitHub Action)
|
||||||
|
|
||||||
|
## <!-- 17 -->➖ Remove
|
||||||
|
|
||||||
|
- Deleted the test3 directory
|
||||||
|
([cd1e384](https://github.com/tj-actions/changed-files/commit/cd1e384723e4d1a184568182ac2b27c53ebf017f)) - (Tonye Jack)
|
||||||
|
- Deleted a single test file
|
||||||
|
([a52f862](https://github.com/tj-actions/changed-files/commit/a52f8621d26d5d9f54b80f74bda2d9eedff94693)) - (Tonye Jack)
|
||||||
|
- Removed unused code
|
||||||
|
([c98e6d2](https://github.com/tj-actions/changed-files/commit/c98e6d20fc234e1f4b0047cd43af2a37f8f38f44)) - (Tonye Jack)
|
||||||
|
- Removed unused code
|
||||||
|
([060b3b9](https://github.com/tj-actions/changed-files/commit/060b3b9b039f423591f1c790691e6d4ddabb1f5e)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 26 -->🔄 Update
|
||||||
|
|
||||||
|
- Updated README.md ([#1602](https://github.com/tj-actions/changed-files/issues/1602))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([8238a41](https://github.com/tj-actions/changed-files/commit/8238a4103220c636f2dad328ead8a7c8dbe316a3)) - (tj-actions[bot])
|
||||||
|
- Update test
|
||||||
|
([d2486b4](https://github.com/tj-actions/changed-files/commit/d2486b470f2ea6ffb0bc55a779968d797a2e3009)) - (Tonye Jack)
|
||||||
|
- Updated test
|
||||||
|
([e7fd9e5](https://github.com/tj-actions/changed-files/commit/e7fd9e59a4c7d9b50cd73b32576bf580517e7f60)) - (Tonye Jack)
|
||||||
|
- Updated debug message
|
||||||
|
([62a23f8](https://github.com/tj-actions/changed-files/commit/62a23f82b163be6455968457151fa0094ec92a63)) - (Tonye Jack)
|
||||||
|
- Update test
|
||||||
|
([ef42e5a](https://github.com/tj-actions/changed-files/commit/ef42e5ad18862ebf72e51cda14a38bf220407805)) - (Tonye Jack)
|
||||||
|
- Updated the test
|
||||||
|
([08906b3](https://github.com/tj-actions/changed-files/commit/08906b32548b7ccb4431cbf73cce16bf70b8746c)) - (Tonye Jack)
|
||||||
|
- Updated description
|
||||||
|
([cd35eac](https://github.com/tj-actions/changed-files/commit/cd35eace2271604e450d83d35cf4a157796a89a9)) - (Tonye Jack)
|
||||||
|
- Updated use of deletedFilesPaths
|
||||||
|
([543c1a2](https://github.com/tj-actions/changed-files/commit/543c1a25c6c1b4906734af8e1a90d01291c87a55)) - (Tonye Jack)
|
||||||
|
- Updated action.yml
|
||||||
|
([1be4200](https://github.com/tj-actions/changed-files/commit/1be42003d742f660cf76cb29b6a1f0d85706f646)) - (Tonye Jack)
|
||||||
|
- Update README.md ([0b947ed](https://github.com/tj-actions/changed-files/commit/0b947ed818f8a396b19a263544998ab92a863b98)) - (Tonye Jack)
|
||||||
|
- Update README.md ([e8dbf6d](https://github.com/tj-actions/changed-files/commit/e8dbf6d67071d288495f592937fe3bdbea3570f4)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 30 -->📝 Other
|
||||||
|
|
||||||
|
- PR [#1601](https://github.com/tj-actions/changed-files/pull/1601): ([aaf4339](https://github.com/tj-actions/changed-files/commit/aaf4339aa1cd7bd2fbe6d869601e3c52baac24ca)) - (Tonye Jack)
|
||||||
|
- Merge branch 'main' into feat/add-support-for-restricting-the-deleted-files-output-to-only-deleted-directories ([e3cc088](https://github.com/tj-actions/changed-files/commit/e3cc088a9606acc8b7a64528de485e4ae1f868ec)) - (repo-ranger[bot])
|
||||||
|
- Merge 62a23f82b163be6455968457151fa0094ec92a63 into 0b947ed818f8a396b19a263544998ab92a863b98
|
||||||
|
([a351a30](https://github.com/tj-actions/changed-files/commit/a351a301d2a539ab0e3949e7d8ba1aa8fe7fc145)) - (Tonye Jack)
|
||||||
|
- Merge c98e6d20fc234e1f4b0047cd43af2a37f8f38f44 into 0b947ed818f8a396b19a263544998ab92a863b98
|
||||||
|
([0ad71b9](https://github.com/tj-actions/changed-files/commit/0ad71b9855cfe37f7e68ded4ce5fd215ed87e96e)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 7 -->⚙️ Miscellaneous Tasks
|
||||||
|
|
||||||
|
- **deps:** Update actions/checkout digest to 8ade135 ([72d7089](https://github.com/tj-actions/changed-files/commit/72d7089b7241aaa6c60dc39e8336f9aef5ebd1da)) - (renovate[bot])
|
||||||
|
|
||||||
|
## <!-- 9 -->⬆️ Upgrades
|
||||||
|
|
||||||
|
- Upgraded to v39.1.2 ([#1594](https://github.com/tj-actions/changed-files/issues/1594))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([41c232a](https://github.com/tj-actions/changed-files/commit/41c232aad8c4c6c99852ca5363e8cb2dc76e7c8e)) - (tj-actions[bot])
|
||||||
|
|
||||||
|
# [39.1.2](https://github.com/tj-actions/changed-files/compare/v39.1.1...v39.1.2) - (2023-09-20)
|
||||||
|
|
||||||
|
## <!-- 7 -->⚙️ Miscellaneous Tasks
|
||||||
|
|
||||||
|
- Add warrning message to diff error ([#1593](https://github.com/tj-actions/changed-files/issues/1593)) ([4196030](https://github.com/tj-actions/changed-files/commit/41960309398d165631f08c5df47a11147e14712b)) - (Tonye Jack)
|
||||||
|
- **deps:** Update dependency @types/node to v20.6.3 ([bbe7960](https://github.com/tj-actions/changed-files/commit/bbe796033ec7cd22e0e20315c172c13048fc437c)) - (renovate[bot])
|
||||||
|
|
||||||
|
## <!-- 9 -->⬆️ Upgrades
|
||||||
|
|
||||||
|
- Upgraded to v39.1.1 ([#1591](https://github.com/tj-actions/changed-files/issues/1591))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([159562d](https://github.com/tj-actions/changed-files/commit/159562dc02e645a8a858fca8e12f289e65d30fa5)) - (tj-actions[bot])
|
||||||
|
|
||||||
|
# [39.1.1](https://github.com/tj-actions/changed-files/compare/v39.1.0...v39.1.1) - (2023-09-19)
|
||||||
|
|
||||||
|
## <!-- 1 -->🐛 Bug Fixes
|
||||||
|
|
||||||
|
- Changed_keys and modified_keys output to handle json and escape_json inputs ([#1585](https://github.com/tj-actions/changed-files/issues/1585)) ([951140b](https://github.com/tj-actions/changed-files/commit/951140b94a6a58dd2c62d7fb0b4d73898c79b196)) - (Arthur)
|
||||||
|
- Error with test ([#1589](https://github.com/tj-actions/changed-files/issues/1589)) ([dbf0700](https://github.com/tj-actions/changed-files/commit/dbf0700c7ac336b1ceed2ac8fe1b02d4cd3ac84f)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 26 -->🔄 Update
|
||||||
|
|
||||||
|
- Update test.yml ([a21a533](https://github.com/tj-actions/changed-files/commit/a21a533a0c244a27daac02f9dc6fcf8aeb996154)) - (Tonye Jack)
|
||||||
|
- Updated README.md ([#1588](https://github.com/tj-actions/changed-files/issues/1588))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([dacbaeb](https://github.com/tj-actions/changed-files/commit/dacbaebcaf9428d083702ffa9b449bac799dd2c3)) - (tj-actions[bot])
|
||||||
|
|
||||||
|
## <!-- 3 -->📚 Documentation
|
||||||
|
|
||||||
|
- Add V0lantis as a contributor for bug ([#1587](https://github.com/tj-actions/changed-files/issues/1587)) ([36ab2fe](https://github.com/tj-actions/changed-files/commit/36ab2fe9c2c58212caac6853d9b8e205a4d5c84b)) - (allcontributors[bot])
|
||||||
|
|
||||||
|
## <!-- 7 -->⚙️ Miscellaneous Tasks
|
||||||
|
|
||||||
|
- Add codacy config ([#1590](https://github.com/tj-actions/changed-files/issues/1590)) ([eeb169a](https://github.com/tj-actions/changed-files/commit/eeb169a9f925d0d92ff3dea3ac356ff0d5f288a8)) - (Tonye Jack)
|
||||||
|
- Update test.yml ([#1586](https://github.com/tj-actions/changed-files/issues/1586)) ([7e3a4ba](https://github.com/tj-actions/changed-files/commit/7e3a4bac80a0d6fdd60b44fea0dc5fa781ca8177)) - (Tonye Jack)
|
||||||
|
- Move variable declaration ([#1584](https://github.com/tj-actions/changed-files/issues/1584)) ([dcbe980](https://github.com/tj-actions/changed-files/commit/dcbe9805f4bb9e5128d8c802e2517943b4c09aa0)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 9 -->⬆️ Upgrades
|
||||||
|
|
||||||
|
- Upgraded to v39.1.0 ([#1583](https://github.com/tj-actions/changed-files/issues/1583))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([fd73c12](https://github.com/tj-actions/changed-files/commit/fd73c1248c8bebea8b243083223002698432c2a0)) - (tj-actions[bot])
|
||||||
|
|
||||||
|
# [39.1.0](https://github.com/tj-actions/changed-files/compare/v39.0.3...v39.1.0) - (2023-09-18)
|
||||||
|
|
||||||
|
## <!-- 0 -->🚀 Features
|
||||||
|
|
||||||
|
- Add support for returning YAML keys for paths that have changed ([#1581](https://github.com/tj-actions/changed-files/issues/1581)) ([5db7b57](https://github.com/tj-actions/changed-files/commit/5db7b578d50867ab5781bf9d867e7650b5b39fc4)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 26 -->🔄 Update
|
||||||
|
|
||||||
|
- Updated README.md ([#1582](https://github.com/tj-actions/changed-files/issues/1582))
|
||||||
|
|
||||||
|
Co-authored-by: repo-ranger[bot] <repo-ranger[bot]@users.noreply.github.com> ([8e79ba7](https://github.com/tj-actions/changed-files/commit/8e79ba7ab9fee9984275219aeb2c8db47bcb8a2d)) - (tj-actions[bot])
|
||||||
|
|
||||||
|
## <!-- 7 -->⚙️ Miscellaneous Tasks
|
||||||
|
|
||||||
|
- **deps:** Update typescript-eslint monorepo to v6.7.2 ([a17e8c5](https://github.com/tj-actions/changed-files/commit/a17e8c5252f6c9982b161714c528708a7f445479)) - (renovate[bot])
|
||||||
|
- **deps:** Lock file maintenance ([d1e9506](https://github.com/tj-actions/changed-files/commit/d1e9506b19d9c3a4053191d616b1ac09de1dfa55)) - (renovate[bot])
|
||||||
|
|
||||||
|
## <!-- 9 -->⬆️ Upgrades
|
||||||
|
|
||||||
|
- Upgraded to v39.0.3 ([#1577](https://github.com/tj-actions/changed-files/issues/1577))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([1fdfe09](https://github.com/tj-actions/changed-files/commit/1fdfe0928a9a55323f0d333ecf6ccfca8c6d73c9)) - (tj-actions[bot])
|
||||||
|
|
||||||
|
# [39.0.3](https://github.com/tj-actions/changed-files/compare/v39.0.2...v39.0.3) - (2023-09-17)
|
||||||
|
|
||||||
|
## <!-- 26 -->🔄 Update
|
||||||
|
|
||||||
|
- Updated README.md ([#1570](https://github.com/tj-actions/changed-files/issues/1570))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([e8e6614](https://github.com/tj-actions/changed-files/commit/e8e66147790920052eb3032cb5a62c70572bae22)) - (tj-actions[bot])
|
||||||
|
- Update README.md ([ad4b06d](https://github.com/tj-actions/changed-files/commit/ad4b06d99998aabe50aa36b86f0867357026a7e2)) - (Tonye Jack)
|
||||||
|
- Update README.md ([b1a34eb](https://github.com/tj-actions/changed-files/commit/b1a34eb336292345947ec693f02ef5fb59954683)) - (Tonye Jack)
|
||||||
|
- Updated README.md ([#1566](https://github.com/tj-actions/changed-files/issues/1566))
|
||||||
|
|
||||||
|
Co-authored-by: repo-ranger[bot] <repo-ranger[bot]@users.noreply.github.com> ([690bef6](https://github.com/tj-actions/changed-files/commit/690bef673ae8df0db1deff98f4c33c8f651ce3b9)) - (tj-actions[bot])
|
||||||
|
- Update README.md ([bb3b39c](https://github.com/tj-actions/changed-files/commit/bb3b39cd33dab0e736e0f00b67222c3edaaea664)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 7 -->⚙️ Miscellaneous Tasks
|
||||||
|
|
||||||
|
- Cleanup imports ([#1576](https://github.com/tj-actions/changed-files/issues/1576)) ([76c4d81](https://github.com/tj-actions/changed-files/commit/76c4d81a6acd339b55bd7407a016981c853eb702)) - (Tonye Jack)
|
||||||
|
- Refactor function ([#1572](https://github.com/tj-actions/changed-files/issues/1572)) ([d8904df](https://github.com/tj-actions/changed-files/commit/d8904df6c55e24ee0b072a93387f64ab19b03302)) - (Tonye Jack)
|
||||||
|
- **deps:** Update dependency @types/node to v20.6.2 ([662c03e](https://github.com/tj-actions/changed-files/commit/662c03ea61a144e0bb71991d27928fe08897109f)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency eslint-plugin-jest to v27.4.0 ([c8b7da7](https://github.com/tj-actions/changed-files/commit/c8b7da7226d05c69f882473d9bc05af8475f28fc)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency @types/jest to v29.5.5 ([249c169](https://github.com/tj-actions/changed-files/commit/249c1698c5b04bfa024f0af7fa876952cc638660)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency @types/node to v20.6.1 ([17352b2](https://github.com/tj-actions/changed-files/commit/17352b21768e018a02c594a8c7b151d0002e5d73)) - (renovate[bot])
|
||||||
|
- Update README.md ([#1569](https://github.com/tj-actions/changed-files/issues/1569)) ([d9a6ccb](https://github.com/tj-actions/changed-files/commit/d9a6ccb099927ca383d6bf06d0d44e3a4cc03dd9)) - (Tonye Jack)
|
||||||
|
- **deps:** Update dependency @types/uuid to v9.0.4 ([090eb05](https://github.com/tj-actions/changed-files/commit/090eb05f17c92a8e9b30d65ca4abe71ea35d8671)) - (renovate[bot])
|
||||||
|
- Update input description ([#1565](https://github.com/tj-actions/changed-files/issues/1565)) ([fb8d2c9](https://github.com/tj-actions/changed-files/commit/fb8d2c9c29d888bc338bd0b5cd23a78f8fd04baa)) - (Tonye Jack)
|
||||||
|
- **deps:** Update dependency jest to v29.7.0 ([001f562](https://github.com/tj-actions/changed-files/commit/001f56257c66815ba8267ded5207cc6feeb3c4fd)) - (renovate[bot])
|
||||||
|
|
||||||
|
## <!-- 9 -->⬆️ Upgrades
|
||||||
|
|
||||||
|
- Upgraded to v39.0.2 ([#1563](https://github.com/tj-actions/changed-files/issues/1563))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([57245a9](https://github.com/tj-actions/changed-files/commit/57245a97217e7a73240a81d75f5b3f4d9dc7fb04)) - (tj-actions[bot])
|
||||||
|
|
||||||
# [39.0.2](https://github.com/tj-actions/changed-files/compare/v39.0.1...v39.0.2) - (2023-09-11)
|
# [39.0.2](https://github.com/tj-actions/changed-files/compare/v39.0.1...v39.0.2) - (2023-09-11)
|
||||||
|
|
||||||
## <!-- 1 -->🐛 Bug Fixes
|
## <!-- 1 -->🐛 Bug Fixes
|
||||||
|
|||||||
159
README.md
159
README.md
@@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
||||||
|
|
||||||
[](#contributors-)
|
[](#contributors-)
|
||||||
|
|
||||||
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
||||||
|
|
||||||
@@ -17,6 +17,12 @@
|
|||||||
|
|
||||||
Effortlessly track all changed files and directories relative to a target branch, preceding commit or the last remote commit returning **relative paths** from the project root using this GitHub action.
|
Effortlessly track all changed files and directories relative to a target branch, preceding commit or the last remote commit returning **relative paths** from the project root using this GitHub action.
|
||||||
|
|
||||||
|
> **Note**
|
||||||
|
>
|
||||||
|
> * This action solely identifies files that have undergone changes within the context of events such as `pull_request*`, `push`, and more. However, it doesn't detect pending uncommitted changes created during the workflow execution.
|
||||||
|
>
|
||||||
|
> See: https://github.com/tj-actions/verify-changed-files instead
|
||||||
|
|
||||||
## Table of contents
|
## Table of contents
|
||||||
|
|
||||||
* [Features 🚀](#features-)
|
* [Features 🚀](#features-)
|
||||||
@@ -33,7 +39,7 @@ Effortlessly track all changed files and directories relative to a target branch
|
|||||||
* [Real-world usage 🌐](#real-world-usage-)
|
* [Real-world usage 🌐](#real-world-usage-)
|
||||||
* [Open source projects 📦](#open-source-projects-)
|
* [Open source projects 📦](#open-source-projects-)
|
||||||
* [Scalability Example 📈](#scalability-example-)
|
* [Scalability Example 📈](#scalability-example-)
|
||||||
* [Known Limitation ⚠️](#known-limitation-️)
|
* [Important Notice ⚠️](#important-notice-️)
|
||||||
* [Migration guide 🔄](#migration-guide-)
|
* [Migration guide 🔄](#migration-guide-)
|
||||||
* [Credits 👏](#credits-)
|
* [Credits 👏](#credits-)
|
||||||
* [Report Bugs 🐛](#report-bugs-)
|
* [Report Bugs 🐛](#report-bugs-)
|
||||||
@@ -76,13 +82,12 @@ And many more...
|
|||||||
|
|
||||||
## Usage 💻
|
## Usage 💻
|
||||||
|
|
||||||
> **Warning**
|
> **Important**
|
||||||
>
|
>
|
||||||
> * For `push` events: When configuring [`actions/checkout`](https://github.com/actions/checkout#usage), make sure to set [`fetch-depth`](https://github.com/actions/checkout#usage) to either `0` or `2`, depending on your use case.
|
> * For `push` events: When configuring [`actions/checkout`](https://github.com/actions/checkout#usage), make sure to set [`fetch-depth`](https://github.com/actions/checkout#usage) to either `0` or `2`, depending on your use case.
|
||||||
> * For mono repositories where pulling all branch history might not be desired, you can still use the default [`fetch-depth`](https://github.com/actions/checkout#usage), which is set to `1` for `pull_request` events.
|
> * For mono repositories where pulling all branch history might not be desired, you can still use the default [`fetch-depth`](https://github.com/actions/checkout#usage), which is set to `1` for `pull_request` events.
|
||||||
> * Avoid using single or double quotes for multiline inputs, as the value is already a string separated by a newline character. See [Examples](#examples) for more information.
|
> * Avoid using single or double quotes for multiline inputs, as the value is already a string separated by a newline character. See [Examples](#examples) for more information.
|
||||||
> * If [`fetch-depth`](https://github.com/actions/checkout#usage) isn't set to `0`, ensure that `persist-credentials` is set to `true` when configuring [`actions/checkout`](https://github.com/actions/checkout#usage).
|
> * If [`fetch-depth`](https://github.com/actions/checkout#usage) isn't set to `0`, ensure that [`persist-credentials`](https://github.com/actions/checkout#usage) is set to `true` when configuring [`actions/checkout`](https://github.com/actions/checkout#usage).
|
||||||
> * For repositories that have PRs generated from forks, when configuring [`actions/checkout`](https://github.com/actions/checkout#usage), set the [`repository`](https://github.com/actions/checkout#usage) to `${{ github.event.pull_request.head.repo.full_name }}`. See [Example](https://github.com/tj-actions/changed-files/blob/main/.github/workflows/test.yml#L47-L51).
|
|
||||||
|
|
||||||
Visit the [discussions for more information](https://github.com/tj-actions/changed-files/discussions) or [create a new discussion](https://github.com/tj-actions/changed-files/discussions/new/choose) for usage-related questions.
|
Visit the [discussions for more information](https://github.com/tj-actions/changed-files/discussions) or [create a new discussion](https://github.com/tj-actions/changed-files/discussions/new/choose) for usage-related questions.
|
||||||
|
|
||||||
@@ -113,6 +118,21 @@ jobs:
|
|||||||
fetch-depth: 0 # OR "2" -> To retrieve the preceding commit.
|
fetch-depth: 0 # OR "2" -> To retrieve the preceding commit.
|
||||||
|
|
||||||
# Example 1
|
# Example 1
|
||||||
|
- name: Get changed files
|
||||||
|
id: changed-files
|
||||||
|
uses: tj-actions/changed-files@v39
|
||||||
|
|
||||||
|
# To compare changes between the current commit and the last pushed remote commit set `since_last_remote_commit: true`. e.g
|
||||||
|
# with:
|
||||||
|
# since_last_remote_commit: true
|
||||||
|
|
||||||
|
- name: List all changed files
|
||||||
|
run: |
|
||||||
|
for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
|
||||||
|
echo "$file was changed"
|
||||||
|
done
|
||||||
|
|
||||||
|
# Example 2
|
||||||
- name: Get all test, doc and src files that have changed
|
- name: Get all test, doc and src files that have changed
|
||||||
id: changed-files-yaml
|
id: changed-files-yaml
|
||||||
uses: tj-actions/changed-files@v39
|
uses: tj-actions/changed-files@v39
|
||||||
@@ -142,21 +162,6 @@ jobs:
|
|||||||
echo "One or more doc file(s) has changed."
|
echo "One or more doc file(s) has changed."
|
||||||
echo "List all the files that have changed: ${{ steps.changed-files-yaml.outputs.doc_all_changed_files }}"
|
echo "List all the files that have changed: ${{ steps.changed-files-yaml.outputs.doc_all_changed_files }}"
|
||||||
|
|
||||||
# Example 2
|
|
||||||
- name: Get changed files
|
|
||||||
id: changed-files
|
|
||||||
uses: tj-actions/changed-files@v39
|
|
||||||
|
|
||||||
# To compare changes between the current commit and the last pushed remote commit set `since_last_remote_commit: true`. e.g
|
|
||||||
# with:
|
|
||||||
# since_last_remote_commit: true
|
|
||||||
|
|
||||||
- name: List all changed files
|
|
||||||
run: |
|
|
||||||
for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
|
|
||||||
echo "$file was changed"
|
|
||||||
done
|
|
||||||
|
|
||||||
# Example 3
|
# Example 3
|
||||||
- name: Get changed files in the docs folder
|
- name: Get changed files in the docs folder
|
||||||
id: changed-files-specific
|
id: changed-files-specific
|
||||||
@@ -273,7 +278,7 @@ jobs:
|
|||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
To access more examples, navigate to the [Examples](#examples) section.
|
To access more examples, navigate to the [Examples](#examples-) section.
|
||||||
|
|
||||||
If you feel generous and want to show some extra appreciation:
|
If you feel generous and want to show some extra appreciation:
|
||||||
|
|
||||||
@@ -322,12 +327,14 @@ Support this project with a :star:
|
|||||||
| <a name="output_any_changed"></a>[any\_changed](#output_any_changed) | string | Returns `true` when any of <br>the filenames provided using the <br>`files*` or `files_ignore*` inputs has changed. i.e. <br>*includes a combination of all added, copied, modified and renamed files (ACMR)*. |
|
| <a name="output_any_changed"></a>[any\_changed](#output_any_changed) | string | Returns `true` when any of <br>the filenames provided using the <br>`files*` or `files_ignore*` inputs has changed. i.e. <br>*includes a combination of all added, copied, modified and renamed files (ACMR)*. |
|
||||||
| <a name="output_any_deleted"></a>[any\_deleted](#output_any_deleted) | string | Returns `true` when any of <br>the filenames provided using the <br>`files*` or `files_ignore*` inputs has been deleted. <br>(D) |
|
| <a name="output_any_deleted"></a>[any\_deleted](#output_any_deleted) | string | Returns `true` when any of <br>the filenames provided using the <br>`files*` or `files_ignore*` inputs has been deleted. <br>(D) |
|
||||||
| <a name="output_any_modified"></a>[any\_modified](#output_any_modified) | string | Returns `true` when any of <br>the filenames provided using the <br>`files*` or `files_ignore*` inputs has been modified. <br>i.e. *includes a combination of all added, copied, modified, renamed, and deleted files (ACMRD)*. |
|
| <a name="output_any_modified"></a>[any\_modified](#output_any_modified) | string | Returns `true` when any of <br>the filenames provided using the <br>`files*` or `files_ignore*` inputs has been modified. <br>i.e. *includes a combination of all added, copied, modified, renamed, and deleted files (ACMRD)*. |
|
||||||
|
| <a name="output_changed_keys"></a>[changed\_keys](#output_changed_keys) | string | Returns all changed YAML keys <br>when the `files_yaml` input is <br>used. i.e. *key that contains any path that has either been added, copied, modified, and renamed (ACMR)* |
|
||||||
| <a name="output_copied_files"></a>[copied\_files](#output_copied_files) | string | Returns only files that are <br>Copied (C). |
|
| <a name="output_copied_files"></a>[copied\_files](#output_copied_files) | string | Returns only files that are <br>Copied (C). |
|
||||||
| <a name="output_copied_files_count"></a>[copied\_files\_count](#output_copied_files_count) | string | Returns the number of `copied_files` |
|
| <a name="output_copied_files_count"></a>[copied\_files\_count](#output_copied_files_count) | string | Returns the number of `copied_files` |
|
||||||
| <a name="output_deleted_files"></a>[deleted\_files](#output_deleted_files) | string | Returns only files that are <br>Deleted (D). |
|
| <a name="output_deleted_files"></a>[deleted\_files](#output_deleted_files) | string | Returns only files that are <br>Deleted (D). |
|
||||||
| <a name="output_deleted_files_count"></a>[deleted\_files\_count](#output_deleted_files_count) | string | Returns the number of `deleted_files` |
|
| <a name="output_deleted_files_count"></a>[deleted\_files\_count](#output_deleted_files_count) | string | Returns the number of `deleted_files` |
|
||||||
| <a name="output_modified_files"></a>[modified\_files](#output_modified_files) | string | Returns only files that are <br>Modified (M). |
|
| <a name="output_modified_files"></a>[modified\_files](#output_modified_files) | string | Returns only files that are <br>Modified (M). |
|
||||||
| <a name="output_modified_files_count"></a>[modified\_files\_count](#output_modified_files_count) | string | Returns the number of `modified_files` |
|
| <a name="output_modified_files_count"></a>[modified\_files\_count](#output_modified_files_count) | string | Returns the number of `modified_files` |
|
||||||
|
| <a name="output_modified_keys"></a>[modified\_keys](#output_modified_keys) | string | Returns all modified YAML keys <br>when the `files_yaml` input is <br>used. i.e. *key that contains any path that has either been added, copied, modified, and deleted (ACMRD)* |
|
||||||
| <a name="output_only_changed"></a>[only\_changed](#output_only_changed) | string | Returns `true` when only files <br>provided using the `files*` or `files_ignore*` inputs <br>has changed. i.e. *includes a combination of all added, copied, modified and renamed files (ACMR)*. |
|
| <a name="output_only_changed"></a>[only\_changed](#output_only_changed) | string | Returns `true` when only files <br>provided using the `files*` or `files_ignore*` inputs <br>has changed. i.e. *includes a combination of all added, copied, modified and renamed files (ACMR)*. |
|
||||||
| <a name="output_only_deleted"></a>[only\_deleted](#output_only_deleted) | string | Returns `true` when only files <br>provided using the `files*` or `files_ignore*` inputs <br>has been deleted. (D) |
|
| <a name="output_only_deleted"></a>[only\_deleted](#output_only_deleted) | string | Returns `true` when only files <br>provided using the `files*` or `files_ignore*` inputs <br>has been deleted. (D) |
|
||||||
| <a name="output_only_modified"></a>[only\_modified](#output_only_modified) | string | Returns `true` when only files <br>provided using the `files*` or `files_ignore*` inputs <br>has been modified. (ACMRD). |
|
| <a name="output_only_modified"></a>[only\_modified](#output_only_modified) | string | Returns `true` when only files <br>provided using the `files*` or `files_ignore*` inputs <br>has been modified. (ACMRD). |
|
||||||
@@ -335,7 +342,7 @@ Support this project with a :star:
|
|||||||
| <a name="output_other_changed_files_count"></a>[other\_changed\_files\_count](#output_other_changed_files_count) | string | Returns the number of `other_changed_files` |
|
| <a name="output_other_changed_files_count"></a>[other\_changed\_files\_count](#output_other_changed_files_count) | string | Returns the number of `other_changed_files` |
|
||||||
| <a name="output_other_deleted_files"></a>[other\_deleted\_files](#output_other_deleted_files) | string | Returns all other deleted files <br>not listed in the files <br>input i.e. *a combination of all deleted files (D)* |
|
| <a name="output_other_deleted_files"></a>[other\_deleted\_files](#output_other_deleted_files) | string | Returns all other deleted files <br>not listed in the files <br>input i.e. *a combination of all deleted files (D)* |
|
||||||
| <a name="output_other_deleted_files_count"></a>[other\_deleted\_files\_count](#output_other_deleted_files_count) | string | Returns the number of `other_deleted_files` |
|
| <a name="output_other_deleted_files_count"></a>[other\_deleted\_files\_count](#output_other_deleted_files_count) | string | Returns the number of `other_deleted_files` |
|
||||||
| <a name="output_other_modified_files"></a>[other\_modified\_files](#output_other_modified_files) | string | Returns all other modified files <br>not listed in the files <br>input i.e. *a combination of all added, copied, modified, and deleted files (ACMRD)* |
|
| <a name="output_other_modified_files"></a>[other\_modified\_files](#output_other_modified_files) | string | Returns all other modified files <br>not listed in the files <br>input i.e. *a combination of all added, copied, modified, and deleted files (ACMRD)* |
|
||||||
| <a name="output_other_modified_files_count"></a>[other\_modified\_files\_count](#output_other_modified_files_count) | string | Returns the number of `other_modified_files` |
|
| <a name="output_other_modified_files_count"></a>[other\_modified\_files\_count](#output_other_modified_files_count) | string | Returns the number of `other_modified_files` |
|
||||||
| <a name="output_renamed_files"></a>[renamed\_files](#output_renamed_files) | string | Returns only files that are <br>Renamed (R). |
|
| <a name="output_renamed_files"></a>[renamed\_files](#output_renamed_files) | string | Returns only files that are <br>Renamed (R). |
|
||||||
| <a name="output_renamed_files_count"></a>[renamed\_files\_count](#output_renamed_files_count) | string | Returns the number of `renamed_files` |
|
| <a name="output_renamed_files_count"></a>[renamed\_files\_count](#output_renamed_files_count) | string | Returns the number of `renamed_files` |
|
||||||
@@ -352,57 +359,58 @@ Support this project with a :star:
|
|||||||
|
|
||||||
<!-- AUTO-DOC-INPUT:START - Do not remove or modify this section -->
|
<!-- AUTO-DOC-INPUT:START - Do not remove or modify this section -->
|
||||||
|
|
||||||
| INPUT | TYPE | REQUIRED | DEFAULT | DESCRIPTION |
|
| INPUT | TYPE | REQUIRED | DEFAULT | DESCRIPTION |
|
||||||
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|----------|---------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|----------|---------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| <a name="input_api_url"></a>[api\_url](#input_api_url) | string | false | `"${{ github.api_url }}"` | Github API URL. |
|
| <a name="input_api_url"></a>[api\_url](#input_api_url) | string | false | `"${{ github.api_url }}"` | Github API URL. |
|
||||||
| <a name="input_base_sha"></a>[base\_sha](#input_base_sha) | string | false | | Specify a different base commit <br>SHA used for comparing changes |
|
| <a name="input_base_sha"></a>[base\_sha](#input_base_sha) | string | false | | Specify a different base commit <br>SHA used for comparing changes |
|
||||||
| <a name="input_diff_relative"></a>[diff\_relative](#input_diff_relative) | string | false | `"true"` | Exclude changes outside the current <br>directory and show path names <br>relative to it. **NOTE:** This <br>requires you to specify the <br>top level directory via the <br>`path` input. |
|
| <a name="input_diff_relative"></a>[diff\_relative](#input_diff_relative) | string | false | `"true"` | Exclude changes outside the current <br>directory and show path names <br>relative to it. **NOTE:** This <br>requires you to specify the <br>top level directory via the <br>`path` input. |
|
||||||
| <a name="input_dir_names"></a>[dir\_names](#input_dir_names) | string | false | `"false"` | Output unique changed directories instead <br>of filenames. **NOTE:** This returns <br>`.` for changed files located <br>in the current working directory <br>which defaults to `$GITHUB_WORKSPACE`. |
|
| <a name="input_dir_names"></a>[dir\_names](#input_dir_names) | string | false | `"false"` | Output unique changed directories instead <br>of filenames. **NOTE:** This returns <br>`.` for changed files located <br>in the current working directory <br>which defaults to `$GITHUB_WORKSPACE`. |
|
||||||
| <a name="input_dir_names_exclude_current_dir"></a>[dir\_names\_exclude\_current\_dir](#input_dir_names_exclude_current_dir) | string | false | `"false"` | Exclude the current directory represented <br>by `.` from the output <br>when `dir_names` is set to <br>`true`. |
|
| <a name="input_dir_names_deleted_files_include_only_deleted_dirs"></a>[dir\_names\_deleted\_files\_include\_only\_deleted\_dirs](#input_dir_names_deleted_files_include_only_deleted_dirs) | string | false | `"false"` | Include only directories that have <br>been deleted as opposed to <br>directory names of files that <br>have been deleted in the <br>`deleted_files` output when `dir_names` is <br>set to `true`. |
|
||||||
| <a name="input_dir_names_include_files"></a>[dir\_names\_include\_files](#input_dir_names_include_files) | string | false | | Include files in the output <br>when `dir_names` is set to <br>`true`. **NOTE:** This returns only <br>the matching files and also <br>the directory names. |
|
| <a name="input_dir_names_exclude_current_dir"></a>[dir\_names\_exclude\_current\_dir](#input_dir_names_exclude_current_dir) | string | false | `"false"` | Exclude the current directory represented <br>by `.` from the output <br>when `dir_names` is set to <br>`true`. |
|
||||||
| <a name="input_dir_names_include_files_separator"></a>[dir\_names\_include\_files\_separator](#input_dir_names_include_files_separator) | string | false | `"\n"` | Separator used to split the <br>`dir_names_include_files` input |
|
| <a name="input_dir_names_include_files"></a>[dir\_names\_include\_files](#input_dir_names_include_files) | string | false | | Include files in the output <br>when `dir_names` is set to <br>`true`. **NOTE:** This returns only <br>the matching files and also <br>the directory names. |
|
||||||
| <a name="input_dir_names_max_depth"></a>[dir\_names\_max\_depth](#input_dir_names_max_depth) | string | false | | Limit the directory output to <br>a maximum depth e.g `test/test1/test2` <br>with max depth of `2` <br>returns `test/test1`. |
|
| <a name="input_dir_names_include_files_separator"></a>[dir\_names\_include\_files\_separator](#input_dir_names_include_files_separator) | string | false | `"\n"` | Separator used to split the <br>`dir_names_include_files` input |
|
||||||
| <a name="input_escape_json"></a>[escape\_json](#input_escape_json) | string | false | `"true"` | Escape JSON output. |
|
| <a name="input_dir_names_max_depth"></a>[dir\_names\_max\_depth](#input_dir_names_max_depth) | string | false | | Limit the directory output to <br>a maximum depth e.g `test/test1/test2` <br>with max depth of `2` <br>returns `test/test1`. |
|
||||||
| <a name="input_fail_on_initial_diff_error"></a>[fail\_on\_initial\_diff\_error](#input_fail_on_initial_diff_error) | string | false | `"false"` | Fail when the initial diff <br>fails. |
|
| <a name="input_escape_json"></a>[escape\_json](#input_escape_json) | string | false | `"true"` | Escape JSON output. |
|
||||||
| <a name="input_fail_on_submodule_diff_error"></a>[fail\_on\_submodule\_diff\_error](#input_fail_on_submodule_diff_error) | string | false | `"false"` | Fail when the submodule diff <br>fails. |
|
| <a name="input_fail_on_initial_diff_error"></a>[fail\_on\_initial\_diff\_error](#input_fail_on_initial_diff_error) | string | false | `"false"` | Fail when the initial diff <br>fails. |
|
||||||
| <a name="input_fetch_additional_submodule_history"></a>[fetch\_additional\_submodule\_history](#input_fetch_additional_submodule_history) | string | false | `"false"` | Fetch additional history for submodules. |
|
| <a name="input_fail_on_submodule_diff_error"></a>[fail\_on\_submodule\_diff\_error](#input_fail_on_submodule_diff_error) | string | false | `"false"` | Fail when the submodule diff <br>fails. |
|
||||||
| <a name="input_fetch_depth"></a>[fetch\_depth](#input_fetch_depth) | string | false | `"50"` | Depth of additional branch history <br>fetched. **NOTE**: This can be <br>adjusted to resolve errors with <br>insufficient history. |
|
| <a name="input_fetch_additional_submodule_history"></a>[fetch\_additional\_submodule\_history](#input_fetch_additional_submodule_history) | string | false | `"false"` | Fetch additional history for submodules. |
|
||||||
| <a name="input_files"></a>[files](#input_files) | string | false | | File and directory patterns used <br>to detect changes (Defaults to the entire repo if unset) **NOTE:** <br>Multiline file/directory patterns should not <br>include quotes. |
|
| <a name="input_fetch_depth"></a>[fetch\_depth](#input_fetch_depth) | string | false | `"50"` | Depth of additional branch history <br>fetched. **NOTE**: This can be <br>adjusted to resolve errors with <br>insufficient history. |
|
||||||
| <a name="input_files_from_source_file"></a>[files\_from\_source\_file](#input_files_from_source_file) | string | false | | Source file(s) used to populate <br>the `files` input. |
|
| <a name="input_files"></a>[files](#input_files) | string | false | | File and directory patterns used <br>to detect changes (Defaults to the entire repo if unset) **NOTE:** <br>Multiline file/directory patterns should not <br>include quotes. |
|
||||||
| <a name="input_files_from_source_file_separator"></a>[files\_from\_source\_file\_separator](#input_files_from_source_file_separator) | string | false | `"\n"` | Separator used to split the <br>`files_from_source_file` input |
|
| <a name="input_files_from_source_file"></a>[files\_from\_source\_file](#input_files_from_source_file) | string | false | | Source file(s) used to populate <br>the `files` input. |
|
||||||
| <a name="input_files_ignore"></a>[files\_ignore](#input_files_ignore) | string | false | | Ignore changes to these file(s) <br>**NOTE:** Multiline file/directory patterns should <br>not include quotes. |
|
| <a name="input_files_from_source_file_separator"></a>[files\_from\_source\_file\_separator](#input_files_from_source_file_separator) | string | false | `"\n"` | Separator used to split the <br>`files_from_source_file` input |
|
||||||
| <a name="input_files_ignore_from_source_file"></a>[files\_ignore\_from\_source\_file](#input_files_ignore_from_source_file) | string | false | | Source file(s) used to populate <br>the `files_ignore` input |
|
| <a name="input_files_ignore"></a>[files\_ignore](#input_files_ignore) | string | false | | Ignore changes to these file(s) <br>**NOTE:** Multiline file/directory patterns should <br>not include quotes. |
|
||||||
| <a name="input_files_ignore_from_source_file_separator"></a>[files\_ignore\_from\_source\_file\_separator](#input_files_ignore_from_source_file_separator) | string | false | `"\n"` | Separator used to split the <br>`files_ignore_from_source_file` input |
|
| <a name="input_files_ignore_from_source_file"></a>[files\_ignore\_from\_source\_file](#input_files_ignore_from_source_file) | string | false | | Source file(s) used to populate <br>the `files_ignore` input |
|
||||||
| <a name="input_files_ignore_separator"></a>[files\_ignore\_separator](#input_files_ignore_separator) | string | false | `"\n"` | Separator used to split the <br>`files_ignore` input |
|
| <a name="input_files_ignore_from_source_file_separator"></a>[files\_ignore\_from\_source\_file\_separator](#input_files_ignore_from_source_file_separator) | string | false | `"\n"` | Separator used to split the <br>`files_ignore_from_source_file` input |
|
||||||
| <a name="input_files_ignore_yaml"></a>[files\_ignore\_yaml](#input_files_ignore_yaml) | string | false | | YAML used to define a <br>set of file patterns to <br>ignore changes |
|
| <a name="input_files_ignore_separator"></a>[files\_ignore\_separator](#input_files_ignore_separator) | string | false | `"\n"` | Separator used to split the <br>`files_ignore` input |
|
||||||
| <a name="input_files_ignore_yaml_from_source_file"></a>[files\_ignore\_yaml\_from\_source\_file](#input_files_ignore_yaml_from_source_file) | string | false | | Source file(s) used to populate <br>the `files_ignore_yaml` input. [Example](https://github.com/tj-actions/changed-files/blob/main/test/changed-files.yml) |
|
| <a name="input_files_ignore_yaml"></a>[files\_ignore\_yaml](#input_files_ignore_yaml) | string | false | | YAML used to define a <br>set of file patterns to <br>ignore changes |
|
||||||
| <a name="input_files_ignore_yaml_from_source_file_separator"></a>[files\_ignore\_yaml\_from\_source\_file\_separator](#input_files_ignore_yaml_from_source_file_separator) | string | false | `"\n"` | Separator used to split the <br>`files_ignore_yaml_from_source_file` input |
|
| <a name="input_files_ignore_yaml_from_source_file"></a>[files\_ignore\_yaml\_from\_source\_file](#input_files_ignore_yaml_from_source_file) | string | false | | Source file(s) used to populate <br>the `files_ignore_yaml` input. [Example](https://github.com/tj-actions/changed-files/blob/main/test/changed-files.yml) |
|
||||||
| <a name="input_files_separator"></a>[files\_separator](#input_files_separator) | string | false | `"\n"` | Separator used to split the <br>`files` input |
|
| <a name="input_files_ignore_yaml_from_source_file_separator"></a>[files\_ignore\_yaml\_from\_source\_file\_separator](#input_files_ignore_yaml_from_source_file_separator) | string | false | `"\n"` | Separator used to split the <br>`files_ignore_yaml_from_source_file` input |
|
||||||
| <a name="input_files_yaml"></a>[files\_yaml](#input_files_yaml) | string | false | | YAML used to define a <br>set of file patterns to <br>detect changes |
|
| <a name="input_files_separator"></a>[files\_separator](#input_files_separator) | string | false | `"\n"` | Separator used to split the <br>`files` input |
|
||||||
| <a name="input_files_yaml_from_source_file"></a>[files\_yaml\_from\_source\_file](#input_files_yaml_from_source_file) | string | false | | Source file(s) used to populate <br>the `files_yaml` input. [Example](https://github.com/tj-actions/changed-files/blob/main/test/changed-files.yml) |
|
| <a name="input_files_yaml"></a>[files\_yaml](#input_files_yaml) | string | false | | YAML used to define a <br>set of file patterns to <br>detect changes |
|
||||||
| <a name="input_files_yaml_from_source_file_separator"></a>[files\_yaml\_from\_source\_file\_separator](#input_files_yaml_from_source_file_separator) | string | false | `"\n"` | Separator used to split the <br>`files_yaml_from_source_file` input |
|
| <a name="input_files_yaml_from_source_file"></a>[files\_yaml\_from\_source\_file](#input_files_yaml_from_source_file) | string | false | | Source file(s) used to populate <br>the `files_yaml` input. [Example](https://github.com/tj-actions/changed-files/blob/main/test/changed-files.yml) |
|
||||||
| <a name="input_include_all_old_new_renamed_files"></a>[include\_all\_old\_new\_renamed\_files](#input_include_all_old_new_renamed_files) | string | false | `"false"` | Include `all_old_new_renamed_files` output. Note this <br>can generate a large output <br>See: [#501](https://github.com/tj-actions/changed-files/issues/501). |
|
| <a name="input_files_yaml_from_source_file_separator"></a>[files\_yaml\_from\_source\_file\_separator](#input_files_yaml_from_source_file_separator) | string | false | `"\n"` | Separator used to split the <br>`files_yaml_from_source_file` input |
|
||||||
| <a name="input_json"></a>[json](#input_json) | string | false | `"false"` | Output list of changed files <br>in a JSON formatted string <br>which can be used for <br>matrix jobs. [Example](https://github.com/tj-actions/changed-files/blob/main/.github/workflows/matrix-test.yml) |
|
| <a name="input_include_all_old_new_renamed_files"></a>[include\_all\_old\_new\_renamed\_files](#input_include_all_old_new_renamed_files) | string | false | `"false"` | Include `all_old_new_renamed_files` output. Note this <br>can generate a large output <br>See: [#501](https://github.com/tj-actions/changed-files/issues/501). |
|
||||||
| <a name="input_old_new_files_separator"></a>[old\_new\_files\_separator](#input_old_new_files_separator) | string | false | `" "` | Split character for old and <br>new renamed filename pairs. |
|
| <a name="input_json"></a>[json](#input_json) | string | false | `"false"` | Output list of changed files <br>in a JSON formatted string <br>which can be used for <br>matrix jobs. [Example](https://github.com/tj-actions/changed-files/blob/main/.github/workflows/matrix-test.yml) |
|
||||||
| <a name="input_old_new_separator"></a>[old\_new\_separator](#input_old_new_separator) | string | false | `","` | Split character for old and <br>new filename pairs. |
|
| <a name="input_old_new_files_separator"></a>[old\_new\_files\_separator](#input_old_new_files_separator) | string | false | `" "` | Split character for old and <br>new renamed filename pairs. |
|
||||||
| <a name="input_output_dir"></a>[output\_dir](#input_output_dir) | string | false | `".github/outputs"` | Directory to store output files. |
|
| <a name="input_old_new_separator"></a>[old\_new\_separator](#input_old_new_separator) | string | false | `","` | Split character for old and <br>new filename pairs. |
|
||||||
| <a name="input_output_renamed_files_as_deleted_and_added"></a>[output\_renamed\_files\_as\_deleted\_and\_added](#input_output_renamed_files_as_deleted_and_added) | string | false | `"false"` | Output renamed files as deleted <br>and added files. |
|
| <a name="input_output_dir"></a>[output\_dir](#input_output_dir) | string | false | `".github/outputs"` | Directory to store output files. |
|
||||||
| <a name="input_path"></a>[path](#input_path) | string | false | `"."` | Specify a relative path under <br>`$GITHUB_WORKSPACE` to locate the repository. |
|
| <a name="input_output_renamed_files_as_deleted_and_added"></a>[output\_renamed\_files\_as\_deleted\_and\_added](#input_output_renamed_files_as_deleted_and_added) | string | false | `"false"` | Output renamed files as deleted <br>and added files. |
|
||||||
| <a name="input_quotepath"></a>[quotepath](#input_quotepath) | string | false | `"true"` | Use non-ascii characters to match <br>files and output the filenames <br>completely verbatim by setting this <br>to `false` |
|
| <a name="input_path"></a>[path](#input_path) | string | false | `"."` | Specify a relative path under <br>`$GITHUB_WORKSPACE` to locate the repository. |
|
||||||
| <a name="input_recover_deleted_files"></a>[recover\_deleted\_files](#input_recover_deleted_files) | string | false | `"false"` | Recover deleted files. |
|
| <a name="input_quotepath"></a>[quotepath](#input_quotepath) | string | false | `"true"` | Use non-ascii characters to match <br>files and output the filenames <br>completely verbatim by setting this <br>to `false` |
|
||||||
| <a name="input_recover_deleted_files_to_destination"></a>[recover\_deleted\_files\_to\_destination](#input_recover_deleted_files_to_destination) | string | false | | Recover deleted files to a <br>new destination directory, defaults to <br>the original location. |
|
| <a name="input_recover_deleted_files"></a>[recover\_deleted\_files](#input_recover_deleted_files) | string | false | `"false"` | Recover deleted files. |
|
||||||
| <a name="input_recover_files"></a>[recover\_files](#input_recover_files) | string | false | | File and directory patterns used <br>to recover deleted files, defaults <br>to the patterns provided via <br>the `files`, `files_from_source_file`, `files_ignore` and <br>`files_ignore_from_source_file` inputs or all deleted <br>files if no patterns are <br>provided. |
|
| <a name="input_recover_deleted_files_to_destination"></a>[recover\_deleted\_files\_to\_destination](#input_recover_deleted_files_to_destination) | string | false | | Recover deleted files to a <br>new destination directory, defaults to <br>the original location. |
|
||||||
| <a name="input_recover_files_ignore"></a>[recover\_files\_ignore](#input_recover_files_ignore) | string | false | | File and directory patterns to <br>ignore when recovering deleted files. |
|
| <a name="input_recover_files"></a>[recover\_files](#input_recover_files) | string | false | | File and directory patterns used <br>to recover deleted files, defaults <br>to the patterns provided via <br>the `files`, `files_from_source_file`, `files_ignore` and <br>`files_ignore_from_source_file` inputs or all deleted <br>files if no patterns are <br>provided. |
|
||||||
| <a name="input_recover_files_ignore_separator"></a>[recover\_files\_ignore\_separator](#input_recover_files_ignore_separator) | string | false | `"\n"` | Separator used to split the <br>`recover_files_ignore` input |
|
| <a name="input_recover_files_ignore"></a>[recover\_files\_ignore](#input_recover_files_ignore) | string | false | | File and directory patterns to <br>ignore when recovering deleted files. |
|
||||||
| <a name="input_recover_files_separator"></a>[recover\_files\_separator](#input_recover_files_separator) | string | false | `"\n"` | Separator used to split the <br>`recover_files` input |
|
| <a name="input_recover_files_ignore_separator"></a>[recover\_files\_ignore\_separator](#input_recover_files_ignore_separator) | string | false | `"\n"` | Separator used to split the <br>`recover_files_ignore` input |
|
||||||
| <a name="input_separator"></a>[separator](#input_separator) | string | false | `" "` | Split character for output strings |
|
| <a name="input_recover_files_separator"></a>[recover\_files\_separator](#input_recover_files_separator) | string | false | `"\n"` | Separator used to split the <br>`recover_files` input |
|
||||||
| <a name="input_sha"></a>[sha](#input_sha) | string | false | | Specify a different commit SHA <br>used for comparing changes |
|
| <a name="input_separator"></a>[separator](#input_separator) | string | false | `" "` | Split character for output strings |
|
||||||
| <a name="input_since"></a>[since](#input_since) | string | false | | Get changed files for commits <br>whose timestamp is older than <br>the given time. |
|
| <a name="input_sha"></a>[sha](#input_sha) | string | false | | Specify a different commit SHA <br>used for comparing changes |
|
||||||
| <a name="input_since_last_remote_commit"></a>[since\_last\_remote\_commit](#input_since_last_remote_commit) | string | false | `"false"` | Use the last commit on <br>the remote branch as the <br>`base_sha`. Defaults to the last <br>non-merge commit on the target <br>branch for pull request events <br>and the previous remote commit <br>of the current branch for <br>push events. |
|
| <a name="input_since"></a>[since](#input_since) | string | false | | Get changed files for commits <br>whose timestamp is older than <br>the given time. |
|
||||||
| <a name="input_skip_initial_fetch"></a>[skip\_initial\_fetch](#input_skip_initial_fetch) | string | false | `"false"` | Skip the initial fetch to <br>improve performance for shallow repositories. <br>**NOTE**: This could lead to <br>errors with missing history and <br>the intended use is limited <br>to when you've fetched the <br>history necessary to perform the <br>diff. |
|
| <a name="input_since_last_remote_commit"></a>[since\_last\_remote\_commit](#input_since_last_remote_commit) | string | false | `"false"` | Use the last commit on <br>the remote branch as the <br>`base_sha`. Defaults to the last <br>non-merge commit on the target <br>branch for pull request events <br>and the previous remote commit <br>of the current branch for <br>push events. |
|
||||||
| <a name="input_token"></a>[token](#input_token) | string | false | `"${{ github.token }}"` | Github token used to fetch <br>changed files from Github's API. |
|
| <a name="input_skip_initial_fetch"></a>[skip\_initial\_fetch](#input_skip_initial_fetch) | string | false | `"false"` | Skip the initial fetch to <br>improve performance for shallow repositories. <br>**NOTE**: This could lead to <br>errors with missing history and <br>the intended use is limited <br>to when you've fetched the <br>history necessary to perform the <br>diff. |
|
||||||
| <a name="input_until"></a>[until](#input_until) | string | false | | Get changed files for commits <br>whose timestamp is earlier than <br>the given time. |
|
| <a name="input_token"></a>[token](#input_token) | string | false | `"${{ github.token }}"` | Github token used to fetch <br>changed files from Github's API. |
|
||||||
| <a name="input_write_output_files"></a>[write\_output\_files](#input_write_output_files) | string | false | `"false"` | Write outputs to the `output_dir` <br>defaults to `.github/outputs` folder. **NOTE:** <br>This creates a `.txt` file <br>by default and a `.json` <br>file if `json` is set <br>to `true`. |
|
| <a name="input_until"></a>[until](#input_until) | string | false | | Get changed files for commits <br>whose timestamp is earlier than <br>the given time. |
|
||||||
|
| <a name="input_write_output_files"></a>[write\_output\_files](#input_write_output_files) | string | false | `"false"` | Write outputs to the `output_dir` <br>defaults to `.github/outputs` folder. **NOTE:** <br>This creates a `.txt` file <br>by default and a `.json` <br>file if `json` is set <br>to `true`. |
|
||||||
|
|
||||||
<!-- AUTO-DOC-INPUT:END -->
|
<!-- AUTO-DOC-INPUT:END -->
|
||||||
|
|
||||||
@@ -922,9 +930,9 @@ And many more...
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
## Known Limitation ⚠️
|
## Important Notice ⚠️
|
||||||
|
|
||||||
> **Warning**
|
> **Important**
|
||||||
>
|
>
|
||||||
> * Spaces in file names can introduce bugs when using bash loops. See: [#216](https://github.com/tj-actions/changed-files/issues/216)
|
> * 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 any hidden issues.
|
> However, this action will handle spaces in file names, with a recommendation of using a separator to prevent any hidden issues.
|
||||||
@@ -1009,6 +1017,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
|
|||||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/adonisgarciac"><img src="https://avatars.githubusercontent.com/u/71078987?v=4?s=100" width="100px;" alt="adonisgarciac"/><br /><sub><b>adonisgarciac</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=adonisgarciac" title="Code">💻</a> <a href="https://github.com/tj-actions/changed-files/commits?author=adonisgarciac" title="Documentation">📖</a></td>
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/adonisgarciac"><img src="https://avatars.githubusercontent.com/u/71078987?v=4?s=100" width="100px;" alt="adonisgarciac"/><br /><sub><b>adonisgarciac</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=adonisgarciac" title="Code">💻</a> <a href="https://github.com/tj-actions/changed-files/commits?author=adonisgarciac" title="Documentation">📖</a></td>
|
||||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/cfernhout"><img src="https://avatars.githubusercontent.com/u/22294606?v=4?s=100" width="100px;" alt="Chiel Fernhout"/><br /><sub><b>Chiel Fernhout</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=cfernhout" title="Documentation">📖</a></td>
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/cfernhout"><img src="https://avatars.githubusercontent.com/u/22294606?v=4?s=100" width="100px;" alt="Chiel Fernhout"/><br /><sub><b>Chiel Fernhout</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=cfernhout" title="Documentation">📖</a></td>
|
||||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/albertoperdomo2"><img src="https://avatars.githubusercontent.com/u/62241095?v=4?s=100" width="100px;" alt="Alberto Perdomo"/><br /><sub><b>Alberto Perdomo</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=albertoperdomo2" title="Documentation">📖</a></td>
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/albertoperdomo2"><img src="https://avatars.githubusercontent.com/u/62241095?v=4?s=100" width="100px;" alt="Alberto Perdomo"/><br /><sub><b>Alberto Perdomo</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=albertoperdomo2" title="Documentation">📖</a></td>
|
||||||
|
<td align="center" valign="top" width="14.28%"><a href="https://arthurvolant.com"><img src="https://avatars.githubusercontent.com/u/37664438?v=4?s=100" width="100px;" alt="Arthur"/><br /><sub><b>Arthur</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/issues?q=author%3AV0lantis" title="Bug reports">🐛</a> <a href="https://github.com/tj-actions/changed-files/commits?author=V0lantis" title="Code">💻</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|||||||
10
action.yml
10
action.yml
@@ -120,6 +120,10 @@ inputs:
|
|||||||
description: "Separator used to split the `dir_names_include_files` input"
|
description: "Separator used to split the `dir_names_include_files` input"
|
||||||
default: "\n"
|
default: "\n"
|
||||||
required: false
|
required: false
|
||||||
|
dir_names_deleted_files_include_only_deleted_dirs:
|
||||||
|
description: "Include only directories that have been deleted as opposed to directory names of files that have been deleted in the `deleted_files` output when `dir_names` is set to `true`."
|
||||||
|
required: false
|
||||||
|
default: "false"
|
||||||
json:
|
json:
|
||||||
description: "Output list of changed files in a JSON formatted string which can be used for matrix jobs. [Example](https://github.com/tj-actions/changed-files/blob/main/.github/workflows/matrix-test.yml)"
|
description: "Output list of changed files in a JSON formatted string which can be used for matrix jobs. [Example](https://github.com/tj-actions/changed-files/blob/main/.github/workflows/matrix-test.yml)"
|
||||||
required: false
|
required: false
|
||||||
@@ -259,7 +263,7 @@ outputs:
|
|||||||
only_modified:
|
only_modified:
|
||||||
description: "Returns `true` when only files provided using the `files*` or `files_ignore*` inputs has been modified. (ACMRD)."
|
description: "Returns `true` when only files provided using the `files*` or `files_ignore*` inputs has been modified. (ACMRD)."
|
||||||
other_modified_files:
|
other_modified_files:
|
||||||
description: "Returns all other modified files not listed in the files input i.e. *a combination of all added, copied, modified, and deleted files (ACMRD)*"
|
description: "Returns all other modified files not listed in the files input i.e. *a combination of all added, copied, modified, and deleted files (ACMRD)*"
|
||||||
other_modified_files_count:
|
other_modified_files_count:
|
||||||
description: "Returns the number of `other_modified_files`"
|
description: "Returns the number of `other_modified_files`"
|
||||||
any_deleted:
|
any_deleted:
|
||||||
@@ -270,6 +274,10 @@ outputs:
|
|||||||
description: "Returns all other deleted files not listed in the files input i.e. *a combination of all deleted files (D)*"
|
description: "Returns all other deleted files not listed in the files input i.e. *a combination of all deleted files (D)*"
|
||||||
other_deleted_files_count:
|
other_deleted_files_count:
|
||||||
description: "Returns the number of `other_deleted_files`"
|
description: "Returns the number of `other_deleted_files`"
|
||||||
|
modified_keys:
|
||||||
|
description: "Returns all modified YAML keys when the `files_yaml` input is used. i.e. *key that contains any path that has either been added, copied, modified, and deleted (ACMRD)*"
|
||||||
|
changed_keys:
|
||||||
|
description: "Returns all changed YAML keys when the `files_yaml` input is used. i.e. *key that contains any path that has either been added, copied, modified, and renamed (ACMR)*"
|
||||||
|
|
||||||
runs:
|
runs:
|
||||||
using: 'node20'
|
using: 'node20'
|
||||||
|
|||||||
32442
dist/index.js
generated
vendored
32442
dist/index.js
generated
vendored
File diff suppressed because one or more lines are too long
2
dist/index.js.map
generated
vendored
2
dist/index.js.map
generated
vendored
File diff suppressed because one or more lines are too long
127
dist/licenses.txt
generated
vendored
127
dist/licenses.txt
generated
vendored
@@ -71,6 +71,28 @@ The above copyright notice and this permission notice shall be included in all c
|
|||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
|
@fastify/busboy
|
||||||
|
MIT
|
||||||
|
Copyright Brian White. All rights reserved.
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to
|
||||||
|
deal in the Software without restriction, including without limitation the
|
||||||
|
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
sell copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||||
|
IN THE SOFTWARE.
|
||||||
|
|
||||||
@octokit/auth-token
|
@octokit/auth-token
|
||||||
MIT
|
MIT
|
||||||
The MIT License
|
The MIT License
|
||||||
@@ -243,16 +265,6 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|||||||
THE SOFTWARE.
|
THE SOFTWARE.
|
||||||
|
|
||||||
|
|
||||||
@vercel/ncc
|
|
||||||
MIT
|
|
||||||
Copyright 2018 ZEIT, Inc.
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
|
|
||||||
before-after-hook
|
before-after-hook
|
||||||
Apache-2.0
|
Apache-2.0
|
||||||
Apache License
|
Apache License
|
||||||
@@ -653,32 +665,6 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|||||||
THE SOFTWARE.
|
THE SOFTWARE.
|
||||||
|
|
||||||
|
|
||||||
node-fetch
|
|
||||||
MIT
|
|
||||||
The MIT License (MIT)
|
|
||||||
|
|
||||||
Copyright (c) 2016 David Frank
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
|
||||||
in the Software without restriction, including without limitation the rights
|
|
||||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
copies of the Software, and to permit persons to whom the Software is
|
|
||||||
furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in all
|
|
||||||
copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
||||||
SOFTWARE.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
once
|
once
|
||||||
ISC
|
ISC
|
||||||
The ISC License
|
The ISC License
|
||||||
@@ -748,9 +734,6 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|||||||
THE SOFTWARE.
|
THE SOFTWARE.
|
||||||
|
|
||||||
|
|
||||||
tr46
|
|
||||||
MIT
|
|
||||||
|
|
||||||
tunnel
|
tunnel
|
||||||
MIT
|
MIT
|
||||||
The MIT License (MIT)
|
The MIT License (MIT)
|
||||||
@@ -776,6 +759,31 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|||||||
THE SOFTWARE.
|
THE SOFTWARE.
|
||||||
|
|
||||||
|
|
||||||
|
undici
|
||||||
|
MIT
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) Matteo Collina and Undici contributors
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
|
|
||||||
|
|
||||||
universal-user-agent
|
universal-user-agent
|
||||||
ISC
|
ISC
|
||||||
# [ISC License](https://spdx.org/licenses/ISC)
|
# [ISC License](https://spdx.org/licenses/ISC)
|
||||||
@@ -800,47 +808,6 @@ The above copyright notice and this permission notice shall be included in all c
|
|||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
|
|
||||||
webidl-conversions
|
|
||||||
BSD-2-Clause
|
|
||||||
# The BSD 2-Clause License
|
|
||||||
|
|
||||||
Copyright (c) 2014, Domenic Denicola
|
|
||||||
All rights reserved.
|
|
||||||
|
|
||||||
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
|
|
||||||
|
|
||||||
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
|
|
||||||
|
|
||||||
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
|
|
||||||
|
|
||||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
|
|
||||||
whatwg-url
|
|
||||||
MIT
|
|
||||||
The MIT License (MIT)
|
|
||||||
|
|
||||||
Copyright (c) 2015–2016 Sebastian Mayr
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
|
||||||
in the Software without restriction, including without limitation the rights
|
|
||||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
copies of the Software, and to permit persons to whom the Software is
|
|
||||||
furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in
|
|
||||||
all copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
THE SOFTWARE.
|
|
||||||
|
|
||||||
|
|
||||||
wrappy
|
wrappy
|
||||||
ISC
|
ISC
|
||||||
The ISC License
|
The ISC License
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@tj-actions/changed-files",
|
"name": "@tj-actions/changed-files",
|
||||||
"version": "39.0.2",
|
"version": "39.2.2",
|
||||||
"description": "Github action to retrieve all (added, copied, modified, deleted, renamed, type changed, unmerged, unknown) files and directories.",
|
"description": "Github action to retrieve all (added, copied, modified, deleted, renamed, type changed, unmerged, unknown) files and directories.",
|
||||||
"main": "lib/main.js",
|
"main": "lib/main.js",
|
||||||
"publishConfig": {
|
"publishConfig": {
|
||||||
@@ -34,7 +34,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@actions/core": "^1.10.0",
|
"@actions/core": "^1.10.0",
|
||||||
"@actions/exec": "^1.1.1",
|
"@actions/exec": "^1.1.1",
|
||||||
"@actions/github": "^5.1.1",
|
"@actions/github": "^6.0.0",
|
||||||
"@octokit/rest": "^20.0.1",
|
"@octokit/rest": "^20.0.1",
|
||||||
"lodash": "^4.17.21",
|
"lodash": "^4.17.21",
|
||||||
"micromatch": "^4.0.5",
|
"micromatch": "^4.0.5",
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import type {RestEndpointMethodTypes} from '@octokit/rest'
|
|||||||
import flatten from 'lodash/flatten'
|
import flatten from 'lodash/flatten'
|
||||||
import mm from 'micromatch'
|
import mm from 'micromatch'
|
||||||
import * as path from 'path'
|
import * as path from 'path'
|
||||||
import {setChangedFilesOutput} from './changedFilesOutput'
|
import {setOutputsAndGetModifiedAndChangedFilesStatus} from './changedFilesOutput'
|
||||||
import {DiffResult} from './commitSha'
|
import {DiffResult} from './commitSha'
|
||||||
import {Inputs} from './inputs'
|
import {Inputs} from './inputs'
|
||||||
import {
|
import {
|
||||||
@@ -16,19 +16,22 @@ import {
|
|||||||
gitRenamedFiles,
|
gitRenamedFiles,
|
||||||
gitSubmoduleDiffSHA,
|
gitSubmoduleDiffSHA,
|
||||||
isWindows,
|
isWindows,
|
||||||
jsonOutput
|
jsonOutput,
|
||||||
|
setArrayOutput
|
||||||
} from './utils'
|
} from './utils'
|
||||||
|
|
||||||
export const processChangedFiles = async ({
|
export const processChangedFiles = async ({
|
||||||
filePatterns,
|
filePatterns,
|
||||||
allDiffFiles,
|
allDiffFiles,
|
||||||
inputs,
|
inputs,
|
||||||
yamlFilePatterns
|
yamlFilePatterns,
|
||||||
|
workingDirectory
|
||||||
}: {
|
}: {
|
||||||
filePatterns: string[]
|
filePatterns: string[]
|
||||||
allDiffFiles: ChangedFiles
|
allDiffFiles: ChangedFiles
|
||||||
inputs: Inputs
|
inputs: Inputs
|
||||||
yamlFilePatterns: Record<string, string[]>
|
yamlFilePatterns: Record<string, string[]>
|
||||||
|
workingDirectory?: string
|
||||||
}): Promise<void> => {
|
}): Promise<void> => {
|
||||||
if (filePatterns.length > 0) {
|
if (filePatterns.length > 0) {
|
||||||
core.startGroup('changed-files-patterns')
|
core.startGroup('changed-files-patterns')
|
||||||
@@ -39,17 +42,21 @@ export const processChangedFiles = async ({
|
|||||||
core.debug(
|
core.debug(
|
||||||
`All filtered diff files: ${JSON.stringify(allFilteredDiffFiles)}`
|
`All filtered diff files: ${JSON.stringify(allFilteredDiffFiles)}`
|
||||||
)
|
)
|
||||||
await setChangedFilesOutput({
|
await setOutputsAndGetModifiedAndChangedFilesStatus({
|
||||||
allDiffFiles,
|
allDiffFiles,
|
||||||
allFilteredDiffFiles,
|
allFilteredDiffFiles,
|
||||||
inputs,
|
inputs,
|
||||||
filePatterns
|
filePatterns,
|
||||||
|
workingDirectory
|
||||||
})
|
})
|
||||||
core.info('All Done!')
|
core.info('All Done!')
|
||||||
core.endGroup()
|
core.endGroup()
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Object.keys(yamlFilePatterns).length > 0) {
|
if (Object.keys(yamlFilePatterns).length > 0) {
|
||||||
|
const modifiedKeys: string[] = []
|
||||||
|
const changedKeys: string[] = []
|
||||||
|
|
||||||
for (const key of Object.keys(yamlFilePatterns)) {
|
for (const key of Object.keys(yamlFilePatterns)) {
|
||||||
core.startGroup(`changed-files-yaml-${key}`)
|
core.startGroup(`changed-files-yaml-${key}`)
|
||||||
const allFilteredDiffFiles = await getFilteredChangedFiles({
|
const allFilteredDiffFiles = await getFilteredChangedFiles({
|
||||||
@@ -61,24 +68,50 @@ export const processChangedFiles = async ({
|
|||||||
allFilteredDiffFiles
|
allFilteredDiffFiles
|
||||||
)}`
|
)}`
|
||||||
)
|
)
|
||||||
await setChangedFilesOutput({
|
const {anyChanged, anyModified} =
|
||||||
allDiffFiles,
|
await setOutputsAndGetModifiedAndChangedFilesStatus({
|
||||||
allFilteredDiffFiles,
|
allDiffFiles,
|
||||||
inputs,
|
allFilteredDiffFiles,
|
||||||
filePatterns: yamlFilePatterns[key],
|
inputs,
|
||||||
outputPrefix: key
|
filePatterns: yamlFilePatterns[key],
|
||||||
})
|
outputPrefix: key,
|
||||||
|
workingDirectory
|
||||||
|
})
|
||||||
|
if (anyModified) {
|
||||||
|
modifiedKeys.push(key)
|
||||||
|
}
|
||||||
|
if (anyChanged) {
|
||||||
|
changedKeys.push(key)
|
||||||
|
}
|
||||||
|
|
||||||
core.info('All Done!')
|
core.info('All Done!')
|
||||||
core.endGroup()
|
core.endGroup()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (modifiedKeys.length > 0) {
|
||||||
|
await setArrayOutput({
|
||||||
|
key: 'modified_keys',
|
||||||
|
inputs,
|
||||||
|
value: modifiedKeys
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
if (changedKeys.length > 0) {
|
||||||
|
await setArrayOutput({
|
||||||
|
key: 'changed_keys',
|
||||||
|
inputs,
|
||||||
|
value: changedKeys
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (filePatterns.length === 0 && Object.keys(yamlFilePatterns).length === 0) {
|
if (filePatterns.length === 0 && Object.keys(yamlFilePatterns).length === 0) {
|
||||||
core.startGroup('changed-files-all')
|
core.startGroup('changed-files-all')
|
||||||
await setChangedFilesOutput({
|
await setOutputsAndGetModifiedAndChangedFilesStatus({
|
||||||
allDiffFiles,
|
allDiffFiles,
|
||||||
allFilteredDiffFiles: allDiffFiles,
|
allFilteredDiffFiles: allDiffFiles,
|
||||||
inputs
|
inputs,
|
||||||
|
workingDirectory
|
||||||
})
|
})
|
||||||
core.info('All Done!')
|
core.info('All Done!')
|
||||||
core.endGroup()
|
core.endGroup()
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import * as core from '@actions/core'
|
import * as core from '@actions/core'
|
||||||
|
import path from 'path'
|
||||||
import {
|
import {
|
||||||
ChangedFiles,
|
ChangedFiles,
|
||||||
ChangeTypeEnum,
|
ChangeTypeEnum,
|
||||||
@@ -6,11 +7,7 @@ import {
|
|||||||
getChangeTypeFiles
|
getChangeTypeFiles
|
||||||
} from './changedFiles'
|
} from './changedFiles'
|
||||||
import {Inputs} from './inputs'
|
import {Inputs} from './inputs'
|
||||||
import {setOutput} from './utils'
|
import {getOutputKey, setArrayOutput, setOutput, exists} from './utils'
|
||||||
|
|
||||||
const getOutputKey = (key: string, outputPrefix: string): string => {
|
|
||||||
return outputPrefix ? `${outputPrefix}_${key}` : key
|
|
||||||
}
|
|
||||||
|
|
||||||
const getArrayFromPaths = (
|
const getArrayFromPaths = (
|
||||||
paths: string | string[],
|
paths: string | string[],
|
||||||
@@ -19,19 +16,21 @@ const getArrayFromPaths = (
|
|||||||
return Array.isArray(paths) ? paths : paths.split(inputs.separator)
|
return Array.isArray(paths) ? paths : paths.split(inputs.separator)
|
||||||
}
|
}
|
||||||
|
|
||||||
export const setChangedFilesOutput = async ({
|
export const setOutputsAndGetModifiedAndChangedFilesStatus = async ({
|
||||||
allDiffFiles,
|
allDiffFiles,
|
||||||
allFilteredDiffFiles,
|
allFilteredDiffFiles,
|
||||||
inputs,
|
inputs,
|
||||||
filePatterns = [],
|
filePatterns = [],
|
||||||
outputPrefix = ''
|
outputPrefix = '',
|
||||||
|
workingDirectory
|
||||||
}: {
|
}: {
|
||||||
allDiffFiles: ChangedFiles
|
allDiffFiles: ChangedFiles
|
||||||
allFilteredDiffFiles: ChangedFiles
|
allFilteredDiffFiles: ChangedFiles
|
||||||
inputs: Inputs
|
inputs: Inputs
|
||||||
filePatterns?: string[]
|
filePatterns?: string[]
|
||||||
outputPrefix?: string
|
outputPrefix?: string
|
||||||
}): Promise<void> => {
|
workingDirectory?: string
|
||||||
|
}): Promise<{anyModified: boolean; anyChanged: boolean}> => {
|
||||||
const addedFiles = await getChangeTypeFiles({
|
const addedFiles = await getChangeTypeFiles({
|
||||||
inputs,
|
inputs,
|
||||||
changedFiles: allFilteredDiffFiles,
|
changedFiles: allFilteredDiffFiles,
|
||||||
@@ -283,15 +282,11 @@ export const setChangedFilesOutput = async ({
|
|||||||
json: inputs.json
|
json: inputs.json
|
||||||
})
|
})
|
||||||
|
|
||||||
await setOutput({
|
await setArrayOutput({
|
||||||
key: getOutputKey('other_changed_files', outputPrefix),
|
key: 'other_changed_files',
|
||||||
value: inputs.json
|
inputs,
|
||||||
? otherChangedFiles
|
value: otherChangedFiles,
|
||||||
: otherChangedFiles.join(inputs.separator),
|
outputPrefix
|
||||||
writeOutputFiles: inputs.writeOutputFiles,
|
|
||||||
outputDir: inputs.outputDir,
|
|
||||||
json: inputs.json,
|
|
||||||
shouldEscape: inputs.escapeJson
|
|
||||||
})
|
})
|
||||||
|
|
||||||
await setOutput({
|
await setOutput({
|
||||||
@@ -376,15 +371,11 @@ export const setChangedFilesOutput = async ({
|
|||||||
json: inputs.json
|
json: inputs.json
|
||||||
})
|
})
|
||||||
|
|
||||||
await setOutput({
|
await setArrayOutput({
|
||||||
key: getOutputKey('other_modified_files', outputPrefix),
|
key: 'other_modified_files',
|
||||||
value: inputs.json
|
inputs,
|
||||||
? otherModifiedFiles
|
value: otherModifiedFiles,
|
||||||
: otherModifiedFiles.join(inputs.separator),
|
outputPrefix
|
||||||
writeOutputFiles: inputs.writeOutputFiles,
|
|
||||||
outputDir: inputs.outputDir,
|
|
||||||
json: inputs.json,
|
|
||||||
shouldEscape: inputs.escapeJson
|
|
||||||
})
|
})
|
||||||
|
|
||||||
await setOutput({
|
await setOutput({
|
||||||
@@ -400,6 +391,28 @@ export const setChangedFilesOutput = async ({
|
|||||||
changeTypes: [ChangeTypeEnum.Deleted]
|
changeTypes: [ChangeTypeEnum.Deleted]
|
||||||
})
|
})
|
||||||
core.debug(`Deleted files: ${JSON.stringify(deletedFiles)}`)
|
core.debug(`Deleted files: ${JSON.stringify(deletedFiles)}`)
|
||||||
|
|
||||||
|
if (
|
||||||
|
inputs.dirNamesDeletedFilesIncludeOnlyDeletedDirs &&
|
||||||
|
inputs.dirNames &&
|
||||||
|
workingDirectory
|
||||||
|
) {
|
||||||
|
const newDeletedFilesPaths: string[] = []
|
||||||
|
for (const deletedPath of getArrayFromPaths(deletedFiles.paths, inputs)) {
|
||||||
|
const dirPath = path.join(workingDirectory, deletedPath)
|
||||||
|
core.debug(`Checking if directory exists: ${dirPath}`)
|
||||||
|
if (!(await exists(dirPath))) {
|
||||||
|
core.debug(`Directory not found: ${dirPath}`)
|
||||||
|
newDeletedFilesPaths.push(deletedPath)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
deletedFiles.paths = inputs.json
|
||||||
|
? newDeletedFilesPaths
|
||||||
|
: newDeletedFilesPaths.join(inputs.separator)
|
||||||
|
deletedFiles.count = newDeletedFilesPaths.length.toString()
|
||||||
|
core.debug(`New deleted files: ${JSON.stringify(deletedFiles)}`)
|
||||||
|
}
|
||||||
|
|
||||||
await setOutput({
|
await setOutput({
|
||||||
key: getOutputKey('deleted_files', outputPrefix),
|
key: getOutputKey('deleted_files', outputPrefix),
|
||||||
value: deletedFiles.paths,
|
value: deletedFiles.paths,
|
||||||
@@ -457,15 +470,11 @@ export const setChangedFilesOutput = async ({
|
|||||||
json: inputs.json
|
json: inputs.json
|
||||||
})
|
})
|
||||||
|
|
||||||
await setOutput({
|
await setArrayOutput({
|
||||||
key: getOutputKey('other_deleted_files', outputPrefix),
|
key: 'other_deleted_files',
|
||||||
value: inputs.json
|
inputs,
|
||||||
? otherDeletedFiles
|
value: otherDeletedFiles,
|
||||||
: otherDeletedFiles.join(inputs.separator),
|
outputPrefix
|
||||||
writeOutputFiles: inputs.writeOutputFiles,
|
|
||||||
outputDir: inputs.outputDir,
|
|
||||||
json: inputs.json,
|
|
||||||
shouldEscape: inputs.escapeJson
|
|
||||||
})
|
})
|
||||||
|
|
||||||
await setOutput({
|
await setOutput({
|
||||||
@@ -474,4 +483,9 @@ export const setChangedFilesOutput = async ({
|
|||||||
writeOutputFiles: inputs.writeOutputFiles,
|
writeOutputFiles: inputs.writeOutputFiles,
|
||||||
outputDir: inputs.outputDir
|
outputDir: inputs.outputDir
|
||||||
})
|
})
|
||||||
|
|
||||||
|
return {
|
||||||
|
anyModified: allModifiedFiles.paths.length > 0 && filePatterns.length > 0,
|
||||||
|
anyChanged: allChangedFiles.paths.length > 0 && filePatterns.length > 0
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import {Env} from './env'
|
|||||||
import {Inputs} from './inputs'
|
import {Inputs} from './inputs'
|
||||||
import {
|
import {
|
||||||
canDiffCommits,
|
canDiffCommits,
|
||||||
|
getCurrentBranchName,
|
||||||
getHeadSha,
|
getHeadSha,
|
||||||
getParentSha,
|
getParentSha,
|
||||||
getPreviousGitTag,
|
getPreviousGitTag,
|
||||||
@@ -90,7 +91,7 @@ export const getSHAForNonPullRequestEvent = async (
|
|||||||
isTag: boolean
|
isTag: boolean
|
||||||
): Promise<DiffResult> => {
|
): Promise<DiffResult> => {
|
||||||
let targetBranch = env.GITHUB_REF_NAME
|
let targetBranch = env.GITHUB_REF_NAME
|
||||||
const currentBranch = targetBranch
|
let currentBranch = targetBranch
|
||||||
let initialCommit = false
|
let initialCommit = false
|
||||||
|
|
||||||
if (!inputs.skipInitialFetch) {
|
if (!inputs.skipInitialFetch) {
|
||||||
@@ -163,6 +164,16 @@ export const getSHAForNonPullRequestEvent = async (
|
|||||||
const currentSha = await getCurrentSHA({inputs, workingDirectory})
|
const currentSha = await getCurrentSHA({inputs, workingDirectory})
|
||||||
let previousSha = inputs.baseSha
|
let previousSha = inputs.baseSha
|
||||||
const diff = '..'
|
const diff = '..'
|
||||||
|
const currentBranchName = await getCurrentBranchName({cwd: workingDirectory})
|
||||||
|
|
||||||
|
if (
|
||||||
|
currentBranchName &&
|
||||||
|
currentBranchName !== 'HEAD' &&
|
||||||
|
(currentBranchName !== targetBranch || currentBranchName !== currentBranch)
|
||||||
|
) {
|
||||||
|
targetBranch = currentBranchName
|
||||||
|
currentBranch = currentBranchName
|
||||||
|
}
|
||||||
|
|
||||||
if (previousSha && currentSha && currentBranch && targetBranch) {
|
if (previousSha && currentSha && currentBranch && targetBranch) {
|
||||||
if (previousSha === currentSha) {
|
if (previousSha === currentSha) {
|
||||||
@@ -551,6 +562,12 @@ export const getSHAForPullRequestEvent = async (
|
|||||||
diff
|
diff
|
||||||
}))
|
}))
|
||||||
) {
|
) {
|
||||||
|
core.warning(
|
||||||
|
'If this pull request is from a forked repository, please set the checkout action `repository` input to the same repository as the pull request.'
|
||||||
|
)
|
||||||
|
core.warning(
|
||||||
|
'This can be done by setting actions/checkout `repository` to ${{ github.event.pull_request.head.repo.full_name }}'
|
||||||
|
)
|
||||||
throw new Error(
|
throw new Error(
|
||||||
`Unable to determine a difference between ${previousSha}${diff}${currentSha}`
|
`Unable to determine a difference between ${previousSha}${diff}${currentSha}`
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ export type Inputs = {
|
|||||||
dirNamesExcludeCurrentDir: boolean
|
dirNamesExcludeCurrentDir: boolean
|
||||||
dirNamesIncludeFiles: string
|
dirNamesIncludeFiles: string
|
||||||
dirNamesIncludeFilesSeparator: string
|
dirNamesIncludeFilesSeparator: string
|
||||||
|
dirNamesDeletedFilesIncludeOnlyDeletedDirs: boolean
|
||||||
json: boolean
|
json: boolean
|
||||||
escapeJson: boolean
|
escapeJson: boolean
|
||||||
fetchDepth?: number
|
fetchDepth?: number
|
||||||
@@ -210,6 +211,12 @@ export const getInputs = (): Inputs => {
|
|||||||
required: false
|
required: false
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
const dirNamesDeletedFilesIncludeOnlyDeletedDirs = core.getBooleanInput(
|
||||||
|
'dir_names_deleted_files_include_only_deleted_dirs',
|
||||||
|
{
|
||||||
|
required: false
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
const inputs: Inputs = {
|
const inputs: Inputs = {
|
||||||
files,
|
files,
|
||||||
@@ -249,6 +256,7 @@ export const getInputs = (): Inputs => {
|
|||||||
oldNewFilesSeparator,
|
oldNewFilesSeparator,
|
||||||
skipInitialFetch,
|
skipInitialFetch,
|
||||||
fetchSubmoduleHistory,
|
fetchSubmoduleHistory,
|
||||||
|
dirNamesDeletedFilesIncludeOnlyDeletedDirs,
|
||||||
// End Not Supported via REST API
|
// End Not Supported via REST API
|
||||||
dirNames,
|
dirNames,
|
||||||
dirNamesExcludeCurrentDir,
|
dirNamesExcludeCurrentDir,
|
||||||
|
|||||||
@@ -152,7 +152,8 @@ const getChangedFilesFromLocalGitHistory = async ({
|
|||||||
filePatterns,
|
filePatterns,
|
||||||
allDiffFiles,
|
allDiffFiles,
|
||||||
inputs,
|
inputs,
|
||||||
yamlFilePatterns
|
yamlFilePatterns,
|
||||||
|
workingDirectory
|
||||||
})
|
})
|
||||||
|
|
||||||
if (inputs.includeAllOldNewRenamedFiles) {
|
if (inputs.includeAllOldNewRenamedFiles) {
|
||||||
@@ -257,7 +258,8 @@ export async function run(): Promise<void> {
|
|||||||
'recoverFilesIgnore',
|
'recoverFilesIgnore',
|
||||||
'includeAllOldNewRenamedFiles',
|
'includeAllOldNewRenamedFiles',
|
||||||
'skipInitialFetch',
|
'skipInitialFetch',
|
||||||
'fetchSubmoduleHistory'
|
'fetchSubmoduleHistory',
|
||||||
|
'dirNamesDeletedFilesIncludeOnlyDeletedDirs'
|
||||||
]
|
]
|
||||||
|
|
||||||
for (const input of unsupportedInputs) {
|
for (const input of unsupportedInputs) {
|
||||||
|
|||||||
52
src/utils.ts
52
src/utils.ts
@@ -139,7 +139,7 @@ export const verifyMinimumGitVersion = async (): Promise<void> => {
|
|||||||
* @param filePath - path to check
|
* @param filePath - path to check
|
||||||
* @returns path exists
|
* @returns path exists
|
||||||
*/
|
*/
|
||||||
const exists = async (filePath: string): Promise<boolean> => {
|
export const exists = async (filePath: string): Promise<boolean> => {
|
||||||
try {
|
try {
|
||||||
await fs.access(filePath)
|
await fs.access(filePath)
|
||||||
return true
|
return true
|
||||||
@@ -696,6 +696,28 @@ export const getRemoteBranchHeadSha = async ({
|
|||||||
return stdout.trim()
|
return stdout.trim()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const getCurrentBranchName = async ({
|
||||||
|
cwd
|
||||||
|
}: {
|
||||||
|
cwd: string
|
||||||
|
}): Promise<string> => {
|
||||||
|
const {stdout, exitCode} = await exec.getExecOutput(
|
||||||
|
'git',
|
||||||
|
['rev-parse', '--abbrev-ref', 'HEAD'],
|
||||||
|
{
|
||||||
|
cwd,
|
||||||
|
ignoreReturnCode: true,
|
||||||
|
silent: !core.isDebug()
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
if (exitCode !== 0) {
|
||||||
|
return ''
|
||||||
|
}
|
||||||
|
|
||||||
|
return stdout.trim()
|
||||||
|
}
|
||||||
|
|
||||||
export const getParentSha = async ({cwd}: {cwd: string}): Promise<string> => {
|
export const getParentSha = async ({cwd}: {cwd: string}): Promise<string> => {
|
||||||
const {stdout, exitCode} = await exec.getExecOutput(
|
const {stdout, exitCode} = await exec.getExecOutput(
|
||||||
'git',
|
'git',
|
||||||
@@ -996,7 +1018,7 @@ export const getFilePatterns = async ({
|
|||||||
} else {
|
} else {
|
||||||
const pathParts = pattern.split('/')
|
const pathParts = pattern.split('/')
|
||||||
const lastPart = pathParts[pathParts.length - 1]
|
const lastPart = pathParts[pathParts.length - 1]
|
||||||
if (!lastPart.includes('.')) {
|
if (!lastPart.includes('.') && !lastPart.endsWith('*')) {
|
||||||
return `${pattern}/**`
|
return `${pattern}/**`
|
||||||
} else {
|
} else {
|
||||||
return pattern
|
return pattern
|
||||||
@@ -1222,6 +1244,32 @@ export const getRecoverFilePatterns = ({
|
|||||||
return filePatterns.filter(Boolean)
|
return filePatterns.filter(Boolean)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const getOutputKey = (key: string, outputPrefix: string): string => {
|
||||||
|
return outputPrefix ? `${outputPrefix}_${key}` : key
|
||||||
|
}
|
||||||
|
|
||||||
|
export const setArrayOutput = async ({
|
||||||
|
key,
|
||||||
|
inputs,
|
||||||
|
value,
|
||||||
|
outputPrefix
|
||||||
|
}: {
|
||||||
|
key: string
|
||||||
|
inputs: Inputs
|
||||||
|
value: string[]
|
||||||
|
outputPrefix?: string
|
||||||
|
}): Promise<void> => {
|
||||||
|
core.debug(`${key}: ${JSON.stringify(value)}`)
|
||||||
|
await setOutput({
|
||||||
|
key: outputPrefix ? getOutputKey(key, outputPrefix) : key,
|
||||||
|
value: inputs.json ? value : value.join(inputs.separator),
|
||||||
|
writeOutputFiles: inputs.writeOutputFiles,
|
||||||
|
outputDir: inputs.outputDir,
|
||||||
|
json: inputs.json,
|
||||||
|
shouldEscape: inputs.escapeJson
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
export const setOutput = async ({
|
export const setOutput = async ({
|
||||||
key,
|
key,
|
||||||
value,
|
value,
|
||||||
|
|||||||
Reference in New Issue
Block a user