Compare commits

..

11 Commits

Author SHA1 Message Date
repo-ranger[bot]
3b6c057cd8 Merge pull request #863 from tj-actions/chore/update-readme
Updated README.md
2022-12-14 16:35:11 +00:00
repo-ranger[bot]
e2b21be3d2 Updated README.md 2022-12-14 16:11:45 +00:00
repo-ranger[bot]
a7b70fa84d Merge pull request #862 from tj-actions/feat/add-support-for-pulling-more-history
feat: add support for pulling more history
2022-12-14 16:11:03 +00:00
Tonye Jack
7a06bb7247 Update action.yml 2022-12-14 08:49:41 -07:00
Tonye Jack
9dc80210cf Update diff-sha.sh 2022-12-14 08:32:25 -07:00
Tonye Jack
a1a2be24bd Update diff-sha.sh 2022-12-14 08:17:48 -07:00
Tonye Jack
bb675e1715 Update action.yml 2022-12-14 08:05:54 -07:00
Tonye Jack
9e0389c5ae feat: add support for pulling more history 2022-12-14 08:04:31 -07:00
Tonye Jack
9b3a93a0c1 Update README.md 2022-12-13 20:08:53 -07:00
Tonye Jack
a991e1d22a Merge pull request #861 from tj-actions/upgrade-to-v34.6.0
Upgraded to v34.6.0
2022-12-13 20:08:09 -07:00
jackton1
0df8efd4d7 Upgraded from v34.5.4 -> v34.6.0 2022-12-14 03:00:18 +00:00
4 changed files with 65 additions and 21 deletions

View File

@@ -1,12 +1,36 @@
# Changelog
## [v34.6.0](https://github.com/tj-actions/changed-files/tree/v34.6.0) (2022-12-14)
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v34...v34.6.0)
## [v34](https://github.com/tj-actions/changed-files/tree/v34) (2022-12-14)
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v34.5.4...v34)
**Fixed bugs:**
- \[BUG\] changed-files-diff-sha prints thousands of lines and takes two minutes to run [\#855](https://github.com/tj-actions/changed-files/issues/855)
- \[BUG\] \(v34.5.4\) Input does not meet YAML 1.2 "Core Schema" specification: head-repo-fork [\#853](https://github.com/tj-actions/changed-files/issues/853)
**Closed issues:**
- Dependency Dashboard [\#27](https://github.com/tj-actions/changed-files/issues/27)
**Merged pull requests:**
- fix: error with retrieving changed files for closed prs [\#860](https://github.com/tj-actions/changed-files/pull/860) ([jackton1](https://github.com/jackton1))
- fix: error detecting changed files for closed PR's [\#859](https://github.com/tj-actions/changed-files/pull/859) ([jackton1](https://github.com/jackton1))
- fix: bug-changed-files-diff-sha-prints-thousands-of-lines-and-takes-two-minutes-to-run [\#857](https://github.com/tj-actions/changed-files/pull/857) ([jackton1](https://github.com/jackton1))
- chore\(deps\): update reviewdog/action-shellcheck action to v1.16 [\#856](https://github.com/tj-actions/changed-files/pull/856) ([renovate[bot]](https://github.com/apps/renovate))
- Updated README.md [\#854](https://github.com/tj-actions/changed-files/pull/854) ([jackton1](https://github.com/jackton1))
- Updated README.md [\#852](https://github.com/tj-actions/changed-files/pull/852) ([jackton1](https://github.com/jackton1))
- Upgraded to v34.5.4 [\#851](https://github.com/tj-actions/changed-files/pull/851) ([jackton1](https://github.com/jackton1))
- chore\(deps\): update actions/checkout action to v3.2.0 [\#850](https://github.com/tj-actions/changed-files/pull/850) ([renovate[bot]](https://github.com/apps/renovate))
## [v34.5.4](https://github.com/tj-actions/changed-files/tree/v34.5.4) (2022-12-12)
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v34...v34.5.4)
## [v34](https://github.com/tj-actions/changed-files/tree/v34) (2022-12-12)
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v34.5.3...v34)
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v34.5.3...v34.5.4)
**Merged pull requests:**
@@ -52,10 +76,6 @@
- \[BUG\] Glob not matching changed files [\#829](https://github.com/tj-actions/changed-files/issues/829)
- \[BUG\] Wrong changed-files returned for forked PRs [\#714](https://github.com/tj-actions/changed-files/issues/714)
**Closed issues:**
- Dependency Dashboard [\#27](https://github.com/tj-actions/changed-files/issues/27)
**Merged pull requests:**
- Updated README.md [\#838](https://github.com/tj-actions/changed-files/pull/838) ([jackton1](https://github.com/jackton1))
@@ -1497,7 +1517,7 @@
## [v12](https://github.com/tj-actions/changed-files/tree/v12) (2021-12-14)
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v11...v12)
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v11.9...v12)
**Implemented enhancements:**
@@ -1515,13 +1535,13 @@
- \[PR 1\]: Renamed all\_modified\_files to all\_changed\_files [\#283](https://github.com/tj-actions/changed-files/pull/283) ([jackton1](https://github.com/jackton1))
- Upgraded to v11.9 [\#280](https://github.com/tj-actions/changed-files/pull/280) ([jackton1](https://github.com/jackton1))
## [v11](https://github.com/tj-actions/changed-files/tree/v11) (2021-12-04)
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v11.9...v11)
## [v11.9](https://github.com/tj-actions/changed-files/tree/v11.9) (2021-12-04)
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v1.3.1...v11.9)
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v11...v11.9)
## [v11](https://github.com/tj-actions/changed-files/tree/v11) (2021-12-04)
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v1.3.1...v11)
**Implemented enhancements:**

View File

@@ -23,7 +23,6 @@ Retrieve all changed files and directories relative to the target branch or the
* Easy to debug.
* Scales to large repositories.
* Git submodules support.
* No extra API calls.
* Escaped JSON Output which can be used for running matrix jobs based on changed files.
* Optionally list only changed directories.
* Restrict the max depth of changed directories.
@@ -164,7 +163,7 @@ Support this project with a :star:
| diff\_relative | string | false | | 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. |
| dir\_names | string | false | `"false"` | Output unique changed directories instead<br>of filenames. **NOTE:** This returns<br>`.` for changed files located<br>in the root of the<br>project. |
| dir\_names\_max\_depth | string | false | | Maximum depth of directories to<br>output. e.g `test/test1/test2` with max<br>depth of `2` returns `test/test1`.<br> |
| fetch\_depth | string | false | `"40"` | Initial depth of the branch<br>history fetched. **NOTE**: This can<br>be adjusted to resolve errors<br>with insufficient history. |
| fetch\_depth | string | false | `"50"` | Initial depth of the branch<br>history fetched. **NOTE**: This can<br>be adjusted to resolve errors<br>with insufficient history. |
| files | string | false | | File and directory patterns to<br>detect changes using only these<br>list of file(s) (Defaults to<br>the entire repo) **NOTE:** Multiline<br>file/directory patterns should not include<br>quotes. |
| files\_from\_source\_file | string | false | | Source file(s) used to populate<br>the `files` input. |
| files\_ignore | string | false | | Ignore changes to these file(s)<br>**NOTE:** Multiline file/directory patterns should<br>not include quotes. |
@@ -173,7 +172,7 @@ Support this project with a :star:
| files\_separator | string | false | `"\n"` | Separator used to split the<br>`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). |
| json | string | false | `"false"` | Output list of changed files<br>in a JSON formatted string<br>which can be used for<br>matrix jobs. |
| max\_fetch\_depth | string | false | `"5000"` | Maximum depth of the branch<br>history fetched. **NOTE**: This can<br>be adjusted to resolve errors<br>with insufficient history. |
| max\_fetch\_depth | string | false | `"6000"` | Maximum depth of the branch<br>history fetched. **NOTE**: This can<br>be adjusted to resolve errors<br>with insufficient history. |
| old\_new\_files\_separator | string | false | `" "` | Split character for old and<br>new renamed filename pairs. |
| old\_new\_separator | string | false | `","` | Split character for old and<br>new filename pairs. |
| path | string | false | `"."` | Specify a relative path under<br>`$GITHUB_WORKSPACE` to locate the repository.<br> |

View File

@@ -83,12 +83,11 @@ inputs:
fetch_depth:
description: "Initial depth of the branch history fetched. **NOTE**: This can be adjusted to resolve errors with insufficient history."
required: false
default: "40"
default: "50"
max_fetch_depth:
description: "Maximum depth of the branch history fetched. **NOTE**: This can be adjusted to resolve errors with insufficient history."
required: false
default: "5000"
deprecationMessage: "This input is deprecated and will be removed in a future release."
default: "6000"
since_last_remote_commit:
description: "Use the last commit on the remote branch as the `base_sha`. Defaults to the last non merge commit on the target branch for pull request events and the previous remote commit of the current branch for push events."
required: true

View File

@@ -239,6 +239,32 @@ else
else
PREVIOUS_SHA=$INPUT_BASE_SHA && exit_status=$? || exit_status=$?
fi
if [[ "$INPUT_SINCE_LAST_REMOTE_COMMIT" == "false" ]]; then
if [[ -f .git/shallow ]]; then
depth=$INPUT_FETCH_DEPTH
max_depth=$INPUT_MAX_FETCH_DEPTH
for ((i=0; i<max_depth; i+=depth)); do
if git diff --name-only --ignore-submodules=all "$PREVIOUS_SHA$DIFF$CURRENT_SHA" 1>/dev/null 2>&1; then
break
fi
echo "Fetching $i commits..."
# shellcheck disable=SC2086
git fetch $EXTRA_ARGS -u --progress --deepen="$i" origin $TARGET_BRANCH $CURRENT_SHA 1>/dev/null 2>&1
done
if ((i > max_depth)); then
echo "::error::Unable to locate a common ancestor between $TARGET_BRANCH and $CURRENT_BRANCH with: $PREVIOUS_SHA$DIFF$CURRENT_SHA"
exit 1
fi
else
echo "::debug::Not a shallow clone, skipping merge-base check."
fi
fi
echo "::debug::Target branch: $TARGET_BRANCH"
echo "::debug::Current branch: $CURRENT_BRANCH"