paths-filter VS changed-files

Compare paths-filter vs changed-files and see what are their differences.

paths-filter

Conditionally run actions based on files modified by PR, feature branch or pushed commits (by dorny)
SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
paths-filter changed-files
8 6
1,843 1,521
- 3.7%
6.0 9.8
11 days ago 3 days ago
TypeScript TypeScript
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

paths-filter

Posts with mentions or reviews of paths-filter. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-16.
  • How to commit part of file in Git
    2 projects | news.ycombinator.com | 16 Feb 2024
    I also set up recently the policy to onl use merge commits on stable branch, as otherwise the path filter^1 in the workflows would not detect correctly which files changed in a PR.

    [1] https://github.com/dorny/paths-filter

  • GitHub Actions as a time-sharing supercomputer
    4 projects | news.ycombinator.com | 10 Jan 2024
    I truly don't understand why this isn't more widely discussed (I've seen several "GH Actions Gotchas" where this isn't mentioned). Many of the community actions also seem to be designed to run as short jobs to paper around missing features (for ex: https://github.com/dorny/paths-filter ), that end up eating up an enormous amount of your minutes budget.
  • Deploy Lambda only when there are code changes
    2 projects | /r/aws | 1 Mar 2023
    If that isn’t sufficient, there are a number of third party workflow steps that enable conditional builds with extra flexibility like https://github.com/dorny/paths-filter
  • Is there a GitHub Actions equivalent to CircleCI dynamic config?
    2 projects | /r/devops | 22 Jan 2023
    You can use paths-filter to give yourself a bunch of conditional outputs to test against for separate jobs.
  • Turborepo + GitHub Actions
    2 projects | /r/node | 17 Dec 2022
    That's brilliant. dorny/paths-filter looks like it can eliminate my enumerate job, and then I don't have to concern myself with all this data passing between jobs.
  • GitHub Actions Pitfalls
    11 projects | news.ycombinator.com | 26 Sep 2022
    There’s an awkward gotcha/incompatibility between “Required status checks” and workflows that get skipped [1], eg due to setting a “paths” property of a push/pull_request workflow trigger [2].

    The checks associated with the workflow don’t run and stay in a pending state, preventing the PR from being merged.

    The only workaround I’m aware of is to use an action such as paths-filter [3] instead at the job level.

    A further, related frustration/limitation - you can _only_ set the “paths” property [2] at the workflow level (i.e. not per-job), so those rules apply to all jobs in the workflow. Given that you can only build a DAG of jobs (ie “needs”) within a single workflow, it makes it quite difficult to do anything non trivial in a monorepo.

    [1]: https://docs.github.com/en/repositories/configuring-branches...

    [2]: https://docs.github.com/en/actions/using-workflows/workflow-...

    [3]: https://github.com/dorny/paths-filter

  • Configuring python linting to be part of CI/CD using GitHub actions
    4 projects | dev.to | 14 Sep 2022
    We are interested in running a linter only against the modified files. Let's say, we take a look at the provided repo, if I update dags/dummy.py I don't want to waste time and resources running the linter against main.py. For this purpose we use Paths Filter GitHub Action, which is very flexible.
  • Introducing Gistblog 🎉: Blog your little ❤️ out using GitHub Gists
    4 projects | dev.to | 6 Dec 2021
    In the spirit of the #ActionsHackathon21, you can see I'm taking advantage of the checkout action GitHub provides and the Paths Filter action by dorny to create the desired workflow. I'm also using the Gistblog Action I created for this hackathon which handles managing all the blog posts as Gists. I'd like to explore Composite actions soon to see if I can reduce all of this to a single action making setup even easier.

changed-files

Posts with mentions or reviews of changed-files. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-08.
  • Why it is Important to Update Linters and How to Do it Right
    4 projects | dev.to | 8 Feb 2024
    We need to add two additional steps. The first one is to retrieve all new files, and the second one is to run the enhanced config only on the new files. In this example the third-party GitHub Action called changed-files is used to obtain the new files. In the GitHub Marketplace for Actions, there is a considerable number of similar actions with similar functionality. You can choose the one that suits you best, as the functionality is more or less the same for all of them.
  • Attempting a larger bug fix II - Execution
    3 projects | dev.to | 10 Dec 2023
    I determined this after dozens of attempts working with the other GitHub Action, tj-actions/changed-files which feeds a list of modified files to clang-format-lint.
  • Yarn workspaces/monorepo and CI/CD
    2 projects | /r/node | 24 Jan 2023
    GitHub actions has actions that do similar, I’ve used this one before with great success: https://github.com/tj-actions/changed-files
  • Turborepo + GitHub Actions
    2 projects | /r/node | 17 Dec 2022
    You could also clean up your changed files job by using this (https://github.com/tj-actions/changed-files) or something similar. That would at least make it easier to understand what it's supposed to be doing. You can use it to get the directories containing any changed package.json files. Then use that output as as a matrix input.
  • GitHub Actions Pitfalls
    11 projects | news.ycombinator.com | 26 Sep 2022
  • GitHub Action to run mypy on changed files only
    1 project | dev.to | 15 Jun 2022
    View on GitHub

What are some alternatives?

When comparing paths-filter and changed-files you can also consider the following projects:

runner-images - GitHub Actions runner images

actionlint - :octocat: Static checker for GitHub Actions workflow files

Image-Optimizer-Action - A Github Action to optimize / compress images in your repository

test-reporter - Displays test results from popular testing frameworks directly in GitHub

travis-yml - Travis CI build config processing

template.github.semver - Template for Projects that use Github Actions and Hooks to enforce Semantic Versioning

gh-valet - Valet helps facilitate the migration of Azure DevOps, CircleCI, GitLab CI, Jenkins, and Travis CI pipelines to GitHub Actions.

ansible-lint-action - ❗️Replaced by https://github.com/marketplace/actions/run-ansible-lint

gistblog-action - Blog your little ❤️ out using GitHub Gists.

hello-github-actions - Create a GitHub Action and use it in a workflow.