-
Notifications
You must be signed in to change notification settings - Fork 613
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
(Performance) Remove unnecessary I/O syscalls for FileTasks #393
Conversation
@@ -14,14 +14,18 @@ class FileTask < Task | |||
# Is this file task needed? Yes if it doesn't exist, or if its time stamp | |||
# is out of date. | |||
def needed? | |||
!File.exist?(name) || out_of_date?(timestamp) || @application.options.build_all | |||
begin | |||
out_of_date?(File.mtime(name)) || @application.options.build_all |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Calling File.mtime
here directly instead of timestamp
because checking to see if it returned Rake::LATE
was significantly slower. This is functionally the same as before as out_of_date?
would never receive Rake::LATE
except if there was a race condition between the first and second File.exist
checks.
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/typescript-eslint) | [`6.8.0` -> `6.9.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2feslint-plugin/6.8.0/6.9.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@typescript-eslint%2feslint-plugin/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@typescript-eslint%2feslint-plugin/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@typescript-eslint%2feslint-plugin/6.8.0/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@typescript-eslint%2feslint-plugin/6.8.0/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@typescript-eslint/parser](https://togithub.com/typescript-eslint/typescript-eslint) | [`6.8.0` -> `6.9.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2fparser/6.8.0/6.9.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@typescript-eslint%2fparser/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@typescript-eslint%2fparser/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@typescript-eslint%2fparser/6.8.0/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@typescript-eslint%2fparser/6.8.0/6.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [rake](https://togithub.com/ruby/rake) ([changelog](https://togithub.com/ruby/rake/blob/v13.0.6/History.rdoc)) | `13.0.6` -> `13.1.0` | [![age](https://developer.mend.io/api/mc/badges/age/rubygems/rake/13.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/rubygems/rake/13.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/rubygems/rake/13.0.6/13.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/rubygems/rake/13.0.6/13.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>typescript-eslint/typescript-eslint (@​typescript-eslint/eslint-plugin)</summary> ### [`v6.9.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#690-2023-10-23) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v6.8.0...v6.9.0) ##### Bug Fixes - **eslint-plugin:** \[no-confusing-void-expression] handle unfixable cases ([#​7674](https://togithub.com/typescript-eslint/typescript-eslint/issues/7674)) ([7e52f27](https://togithub.com/typescript-eslint/typescript-eslint/commit/7e52f276ed5b8b2c0b76be02cb2e8a77892c10f2)) - **eslint-plugin:** \[no-unsafe-return] allow returning anything if explicitly returning any ([#​7708](https://togithub.com/typescript-eslint/typescript-eslint/issues/7708)) ([c6124b2](https://togithub.com/typescript-eslint/typescript-eslint/commit/c6124b2c93a53f11471cce8054388dec7a58f90b)) ##### Features - **eslint-plugin:** \[max-params] don't count `this: void` parameter ([#​7696](https://togithub.com/typescript-eslint/typescript-eslint/issues/7696)) ([6398d3f](https://togithub.com/typescript-eslint/typescript-eslint/commit/6398d3fd0a576d8cdc957ec1b57929acacc60ba0)), closes [#​7538](https://togithub.com/typescript-eslint/typescript-eslint/issues/7538) - **eslint-plugin:** \[naming-convention] add support for default and namespace imports ([#​7269](https://togithub.com/typescript-eslint/typescript-eslint/issues/7269)) ([bb15aae](https://togithub.com/typescript-eslint/typescript-eslint/commit/bb15aae877ae260f59aa5e6cfc338b1eefc6d85c)) - **eslint-plugin:** \[no-restricted-imports] support import = require ([#​7709](https://togithub.com/typescript-eslint/typescript-eslint/issues/7709)) ([4c8edcf](https://togithub.com/typescript-eslint/typescript-eslint/commit/4c8edcfb7d3cc02d07d2329c87da4377c1cbf969)) - **eslint-plugin:** \[no-unsafe-enum-comparison] add switch suggestion ([#​7691](https://togithub.com/typescript-eslint/typescript-eslint/issues/7691)) ([53d5263](https://togithub.com/typescript-eslint/typescript-eslint/commit/53d5263cee8e0b5ddc5de3321d27559c196e5b58)), closes [#​7643](https://togithub.com/typescript-eslint/typescript-eslint/issues/7643) - **eslint-plugin:** \[prefer-readonly] private fields support ([#​7686](https://togithub.com/typescript-eslint/typescript-eslint/issues/7686)) ([0e875bf](https://togithub.com/typescript-eslint/typescript-eslint/commit/0e875bf77a9d94dc74924245fabc36c0ae780977)) You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. </details> <details> <summary>typescript-eslint/typescript-eslint (@​typescript-eslint/parser)</summary> ### [`v6.9.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#690-2023-10-23) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v6.8.0...v6.9.0) **Note:** Version bump only for package [@​typescript-eslint/parser](https://togithub.com/typescript-eslint/parser) You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. </details> <details> <summary>ruby/rake (rake)</summary> ### [`v13.1.0`](https://togithub.com/ruby/rake/releases/tag/v13.1.0) [Compare Source](https://togithub.com/ruby/rake/compare/v13.0.6...v13.1.0) #### What's Changed - Added dependabot.yml for actions by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/416](https://togithub.com/ruby/rake/pull/416) - Add Ruby 3.1 to the CI matrix by [@​petergoldstein](https://togithub.com/petergoldstein) in [https://github.com/ruby/rake/pull/415](https://togithub.com/ruby/rake/pull/415) - (Performance) Remove unnecessary I/O syscalls for FileTasks by [@​da2x](https://togithub.com/da2x) in [https://github.com/ruby/rake/pull/393](https://togithub.com/ruby/rake/pull/393) - Skip test failure with JRuby by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/418](https://togithub.com/ruby/rake/pull/418) - Bump actions/checkout from 2 to 3 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/417](https://togithub.com/ruby/rake/pull/417) - Remove bin/rdoc by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/421](https://togithub.com/ruby/rake/pull/421) - Remove bin/rake by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/422](https://togithub.com/ruby/rake/pull/422) - Remove bin/bundle by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/425](https://togithub.com/ruby/rake/pull/425) - Apply RuboCop linting for Ruby 2.3 by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/423](https://togithub.com/ruby/rake/pull/423) - Update rubocop to work with Ruby 2.4 compatible by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/424](https://togithub.com/ruby/rake/pull/424) - chore: fix typo in comments by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/429](https://togithub.com/ruby/rake/pull/429) - Use 'test' as workflow name on Actions by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/427](https://togithub.com/ruby/rake/pull/427) - docs: update CONTRIBUTING.rdoc by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/428](https://togithub.com/ruby/rake/pull/428) - Add RuboCop job to Actions by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/426](https://togithub.com/ruby/rake/pull/426) - Lock minitest-5.15.0 for Ruby 2.2 by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/442](https://togithub.com/ruby/rake/pull/442) - Eagerly require set in thread_pool.rb by [@​jeremyevans](https://togithub.com/jeremyevans) in [https://github.com/ruby/rake/pull/440](https://togithub.com/ruby/rake/pull/440) - Avoid creating an unnecessary thread pool by [@​jeremyevans](https://togithub.com/jeremyevans) in [https://github.com/ruby/rake/pull/441](https://togithub.com/ruby/rake/pull/441) - Add credit for maintenance in Rake 12/13 by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/443](https://togithub.com/ruby/rake/pull/443) - Sh fully echoes commands which error exit by [@​MarkDBlackwell](https://togithub.com/MarkDBlackwell) in [https://github.com/ruby/rake/pull/147](https://togithub.com/ruby/rake/pull/147) - Correct RuboCop offenses by [@​deivid-rodriguez](https://togithub.com/deivid-rodriguez) in [https://github.com/ruby/rake/pull/444](https://togithub.com/ruby/rake/pull/444) - \[StepSecurity] ci: Harden GitHub Actions by [@​step-security-bot](https://togithub.com/step-security-bot) in [https://github.com/ruby/rake/pull/450](https://togithub.com/ruby/rake/pull/450) - Bump ruby/setup-ruby from 1.126.0 to 1.127.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/453](https://togithub.com/ruby/rake/pull/453) - Bump actions/checkout from 3.1.0 to 3.2.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/454](https://togithub.com/ruby/rake/pull/454) - Bump ruby/setup-ruby from 1.127.0 to 1.131.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/457](https://togithub.com/ruby/rake/pull/457) - Add ruby 3.2 to test matrix by [@​hanneskaeufler](https://togithub.com/hanneskaeufler) in [https://github.com/ruby/rake/pull/458](https://togithub.com/ruby/rake/pull/458) - Bump ruby/setup-ruby from 1.131.0 to 1.133.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/459](https://togithub.com/ruby/rake/pull/459) - Bump actions/checkout from 3.2.0 to 3.3.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/463](https://togithub.com/ruby/rake/pull/463) - Bump ruby/setup-ruby from 1.133.0 to 1.133.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/462](https://togithub.com/ruby/rake/pull/462) - Bump ruby/setup-ruby from 1.133.1 to 1.133.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/464](https://togithub.com/ruby/rake/pull/464) - Bump ruby/setup-ruby from 1.133.2 to 1.134.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/466](https://togithub.com/ruby/rake/pull/466) - Missing 'do' on example by [@​zzak](https://togithub.com/zzak) in [https://github.com/ruby/rake/pull/467](https://togithub.com/ruby/rake/pull/467) - Try to use dependabot automerge by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/470](https://togithub.com/ruby/rake/pull/470) - Rewrite auto-merge feature for dependabot by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/471](https://togithub.com/ruby/rake/pull/471) - Bump ruby/setup-ruby from 1.134.0 to 1.137.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/469](https://togithub.com/ruby/rake/pull/469) - Update bundler in Dependabot by [@​ono-max](https://togithub.com/ono-max) in [https://github.com/ruby/rake/pull/472](https://togithub.com/ruby/rake/pull/472) - Bump ruby/setup-ruby from 1.137.2 to 1.138.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/473](https://togithub.com/ruby/rake/pull/473) - Update minitest requirement from 5.15.0 to 5.17.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/474](https://togithub.com/ruby/rake/pull/474) - Fix grammar in help text by [@​mebezac](https://togithub.com/mebezac) in [https://github.com/ruby/rake/pull/381](https://togithub.com/ruby/rake/pull/381) - Try to use ruby/ruby/.github/workflows/ruby_versions.yml@master by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/475](https://togithub.com/ruby/rake/pull/475) - Bump lewagon/wait-on-check-action from 1.2.0 to 1.3.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/476](https://togithub.com/ruby/rake/pull/476) - Use GitHub Pages Action for generating rdoc page by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/477](https://togithub.com/ruby/rake/pull/477) - Bump ruby/setup-ruby from 1.138.0 to 1.143.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/478](https://togithub.com/ruby/rake/pull/478) - Update minitest requirement from 5.17.0 to 5.18.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/479](https://togithub.com/ruby/rake/pull/479) - Bump ruby/setup-ruby from 1.143.0 to 1.144.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/480](https://togithub.com/ruby/rake/pull/480) - Bump ruby/setup-ruby from 1.144.0 to 1.144.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/482](https://togithub.com/ruby/rake/pull/482) - Bump actions/deploy-pages from 1 to 2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/481](https://togithub.com/ruby/rake/pull/481) - Bump ruby/setup-ruby from 1.144.1 to 1.144.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/484](https://togithub.com/ruby/rake/pull/484) - Update rubocop requirement from ~> 1.12.1 to ~> 1.48.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/485](https://togithub.com/ruby/rake/pull/485) - Bump ruby/setup-ruby from 1.144.2 to 1.145.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/487](https://togithub.com/ruby/rake/pull/487) - Update rubocop requirement from ~> 1.48.1 to ~> 1.49.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/488](https://togithub.com/ruby/rake/pull/488) - Support `#detailed_message` when task failed by [@​ksss](https://togithub.com/ksss) in [https://github.com/ruby/rake/pull/486](https://togithub.com/ruby/rake/pull/486) - Debug at stop when task fail by [@​ksss](https://togithub.com/ksss) in [https://github.com/ruby/rake/pull/489](https://togithub.com/ruby/rake/pull/489) - Drop to support Ruby 2.2 by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/492](https://togithub.com/ruby/rake/pull/492) - Bump ruby/setup-ruby from 1.145.0 to 1.146.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/491](https://togithub.com/ruby/rake/pull/491) - Update rubocop requirement from ~> 1.49.0 to ~> 1.50.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/493](https://togithub.com/ruby/rake/pull/493) - Bump up setup-ruby by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/497](https://togithub.com/ruby/rake/pull/497) - Bump ruby/setup-ruby from 1.148.0 to 1.149.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/498](https://togithub.com/ruby/rake/pull/498) - Update rubocop requirement from ~> 1.50.1 to ~> 1.51.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/499](https://togithub.com/ruby/rake/pull/499) - Bump ruby/setup-ruby from 1.149.0 to 1.150.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/500](https://togithub.com/ruby/rake/pull/500) - Update rubocop requirement from ~> 1.51.0 to ~> 1.52.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/502](https://togithub.com/ruby/rake/pull/502) - Bump ruby/setup-ruby from 1.150.0 to 1.151.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/503](https://togithub.com/ruby/rake/pull/503) - Update development dependencies by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/505](https://togithub.com/ruby/rake/pull/505) - Bump ruby/setup-ruby from 1.151.0 to 1.152.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/506](https://togithub.com/ruby/rake/pull/506) - Bump actions/upload-pages-artifact from 1 to 2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/508](https://togithub.com/ruby/rake/pull/508) - Bump actions/checkout from 3 to 4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/513](https://togithub.com/ruby/rake/pull/513) - Bump ruby/setup-ruby from 1.152.0 to 1.153.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/514](https://togithub.com/ruby/rake/pull/514) - Bump actions/checkout from 4.0.0 to 4.1.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/516](https://togithub.com/ruby/rake/pull/516) - Bump ruby/setup-ruby from 1.153.0 to 1.154.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/517](https://togithub.com/ruby/rake/pull/517) - Bump ruby/setup-ruby from 1.154.0 to 1.155.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/518](https://togithub.com/ruby/rake/pull/518) - Bump ruby/setup-ruby from 1.155.0 to 1.156.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/519](https://togithub.com/ruby/rake/pull/519) - Bump actions/checkout from 4.1.0 to 4.1.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/520](https://togithub.com/ruby/rake/pull/520) - Bump ruby/setup-ruby from 1.156.0 to 1.157.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/521](https://togithub.com/ruby/rake/pull/521) #### New Contributors - [@​petergoldstein](https://togithub.com/petergoldstein) made their first contribution in [https://github.com/ruby/rake/pull/415](https://togithub.com/ruby/rake/pull/415) - [@​da2x](https://togithub.com/da2x) made their first contribution in [https://github.com/ruby/rake/pull/393](https://togithub.com/ruby/rake/pull/393) - [@​dependabot](https://togithub.com/dependabot) made their first contribution in [https://github.com/ruby/rake/pull/417](https://togithub.com/ruby/rake/pull/417) - [@​tnir](https://togithub.com/tnir) made their first contribution in [https://github.com/ruby/rake/pull/421](https://togithub.com/ruby/rake/pull/421) - [@​step-security-bot](https://togithub.com/step-security-bot) made their first contribution in [https://github.com/ruby/rake/pull/450](https://togithub.com/ruby/rake/pull/450) - [@​hanneskaeufler](https://togithub.com/hanneskaeufler) made their first contribution in [https://github.com/ruby/rake/pull/458](https://togithub.com/ruby/rake/pull/458) - [@​ono-max](https://togithub.com/ono-max) made their first contribution in [https://github.com/ruby/rake/pull/472](https://togithub.com/ruby/rake/pull/472) - [@​mebezac](https://togithub.com/mebezac) made their first contribution in [https://github.com/ruby/rake/pull/381](https://togithub.com/ruby/rake/pull/381) - [@​ksss](https://togithub.com/ksss) made their first contribution in [https://github.com/ruby/rake/pull/486](https://togithub.com/ruby/rake/pull/486) **Full Changelog**: ruby/rake@v13.0.6...v13.1.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://togithub.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/powerhome/power-tools). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zMS4yIiwidXBkYXRlZEluVmVyIjoiMzcuMzEuNSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [rake](https://togithub.com/ruby/rake) ([changelog](https://togithub.com/ruby/rake/blob/v13.0.6/History.rdoc)) | `13.0.6` -> `13.1.0` | [![age](https://developer.mend.io/api/mc/badges/age/rubygems/rake/13.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/rubygems/rake/13.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/rubygems/rake/13.0.6/13.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/rubygems/rake/13.0.6/13.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>ruby/rake (rake)</summary> ### [`v13.1.0`](https://togithub.com/ruby/rake/releases/tag/v13.1.0) [Compare Source](https://togithub.com/ruby/rake/compare/v13.0.6...v13.1.0) #### What's Changed - Added dependabot.yml for actions by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/416](https://togithub.com/ruby/rake/pull/416) - Add Ruby 3.1 to the CI matrix by [@​petergoldstein](https://togithub.com/petergoldstein) in [https://github.com/ruby/rake/pull/415](https://togithub.com/ruby/rake/pull/415) - (Performance) Remove unnecessary I/O syscalls for FileTasks by [@​da2x](https://togithub.com/da2x) in [https://github.com/ruby/rake/pull/393](https://togithub.com/ruby/rake/pull/393) - Skip test failure with JRuby by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/418](https://togithub.com/ruby/rake/pull/418) - Bump actions/checkout from 2 to 3 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/417](https://togithub.com/ruby/rake/pull/417) - Remove bin/rdoc by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/421](https://togithub.com/ruby/rake/pull/421) - Remove bin/rake by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/422](https://togithub.com/ruby/rake/pull/422) - Remove bin/bundle by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/425](https://togithub.com/ruby/rake/pull/425) - Apply RuboCop linting for Ruby 2.3 by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/423](https://togithub.com/ruby/rake/pull/423) - Update rubocop to work with Ruby 2.4 compatible by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/424](https://togithub.com/ruby/rake/pull/424) - chore: fix typo in comments by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/429](https://togithub.com/ruby/rake/pull/429) - Use 'test' as workflow name on Actions by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/427](https://togithub.com/ruby/rake/pull/427) - docs: update CONTRIBUTING.rdoc by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/428](https://togithub.com/ruby/rake/pull/428) - Add RuboCop job to Actions by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/426](https://togithub.com/ruby/rake/pull/426) - Lock minitest-5.15.0 for Ruby 2.2 by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/442](https://togithub.com/ruby/rake/pull/442) - Eagerly require set in thread_pool.rb by [@​jeremyevans](https://togithub.com/jeremyevans) in [https://github.com/ruby/rake/pull/440](https://togithub.com/ruby/rake/pull/440) - Avoid creating an unnecessary thread pool by [@​jeremyevans](https://togithub.com/jeremyevans) in [https://github.com/ruby/rake/pull/441](https://togithub.com/ruby/rake/pull/441) - Add credit for maintenance in Rake 12/13 by [@​tnir](https://togithub.com/tnir) in [https://github.com/ruby/rake/pull/443](https://togithub.com/ruby/rake/pull/443) - Sh fully echoes commands which error exit by [@​MarkDBlackwell](https://togithub.com/MarkDBlackwell) in [https://github.com/ruby/rake/pull/147](https://togithub.com/ruby/rake/pull/147) - Correct RuboCop offenses by [@​deivid-rodriguez](https://togithub.com/deivid-rodriguez) in [https://github.com/ruby/rake/pull/444](https://togithub.com/ruby/rake/pull/444) - \[StepSecurity] ci: Harden GitHub Actions by [@​step-security-bot](https://togithub.com/step-security-bot) in [https://github.com/ruby/rake/pull/450](https://togithub.com/ruby/rake/pull/450) - Bump ruby/setup-ruby from 1.126.0 to 1.127.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/453](https://togithub.com/ruby/rake/pull/453) - Bump actions/checkout from 3.1.0 to 3.2.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/454](https://togithub.com/ruby/rake/pull/454) - Bump ruby/setup-ruby from 1.127.0 to 1.131.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/457](https://togithub.com/ruby/rake/pull/457) - Add ruby 3.2 to test matrix by [@​hanneskaeufler](https://togithub.com/hanneskaeufler) in [https://github.com/ruby/rake/pull/458](https://togithub.com/ruby/rake/pull/458) - Bump ruby/setup-ruby from 1.131.0 to 1.133.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/459](https://togithub.com/ruby/rake/pull/459) - Bump actions/checkout from 3.2.0 to 3.3.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/463](https://togithub.com/ruby/rake/pull/463) - Bump ruby/setup-ruby from 1.133.0 to 1.133.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/462](https://togithub.com/ruby/rake/pull/462) - Bump ruby/setup-ruby from 1.133.1 to 1.133.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/464](https://togithub.com/ruby/rake/pull/464) - Bump ruby/setup-ruby from 1.133.2 to 1.134.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/466](https://togithub.com/ruby/rake/pull/466) - Missing 'do' on example by [@​zzak](https://togithub.com/zzak) in [https://github.com/ruby/rake/pull/467](https://togithub.com/ruby/rake/pull/467) - Try to use dependabot automerge by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/470](https://togithub.com/ruby/rake/pull/470) - Rewrite auto-merge feature for dependabot by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/471](https://togithub.com/ruby/rake/pull/471) - Bump ruby/setup-ruby from 1.134.0 to 1.137.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/469](https://togithub.com/ruby/rake/pull/469) - Update bundler in Dependabot by [@​ono-max](https://togithub.com/ono-max) in [https://github.com/ruby/rake/pull/472](https://togithub.com/ruby/rake/pull/472) - Bump ruby/setup-ruby from 1.137.2 to 1.138.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/473](https://togithub.com/ruby/rake/pull/473) - Update minitest requirement from 5.15.0 to 5.17.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/474](https://togithub.com/ruby/rake/pull/474) - Fix grammar in help text by [@​mebezac](https://togithub.com/mebezac) in [https://github.com/ruby/rake/pull/381](https://togithub.com/ruby/rake/pull/381) - Try to use ruby/ruby/.github/workflows/ruby_versions.yml@master by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/475](https://togithub.com/ruby/rake/pull/475) - Bump lewagon/wait-on-check-action from 1.2.0 to 1.3.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/476](https://togithub.com/ruby/rake/pull/476) - Use GitHub Pages Action for generating rdoc page by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/477](https://togithub.com/ruby/rake/pull/477) - Bump ruby/setup-ruby from 1.138.0 to 1.143.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/478](https://togithub.com/ruby/rake/pull/478) - Update minitest requirement from 5.17.0 to 5.18.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/479](https://togithub.com/ruby/rake/pull/479) - Bump ruby/setup-ruby from 1.143.0 to 1.144.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/480](https://togithub.com/ruby/rake/pull/480) - Bump ruby/setup-ruby from 1.144.0 to 1.144.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/482](https://togithub.com/ruby/rake/pull/482) - Bump actions/deploy-pages from 1 to 2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/481](https://togithub.com/ruby/rake/pull/481) - Bump ruby/setup-ruby from 1.144.1 to 1.144.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/484](https://togithub.com/ruby/rake/pull/484) - Update rubocop requirement from ~> 1.12.1 to ~> 1.48.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/485](https://togithub.com/ruby/rake/pull/485) - Bump ruby/setup-ruby from 1.144.2 to 1.145.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/487](https://togithub.com/ruby/rake/pull/487) - Update rubocop requirement from ~> 1.48.1 to ~> 1.49.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/488](https://togithub.com/ruby/rake/pull/488) - Support `#detailed_message` when task failed by [@​ksss](https://togithub.com/ksss) in [https://github.com/ruby/rake/pull/486](https://togithub.com/ruby/rake/pull/486) - Debug at stop when task fail by [@​ksss](https://togithub.com/ksss) in [https://github.com/ruby/rake/pull/489](https://togithub.com/ruby/rake/pull/489) - Drop to support Ruby 2.2 by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/492](https://togithub.com/ruby/rake/pull/492) - Bump ruby/setup-ruby from 1.145.0 to 1.146.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/491](https://togithub.com/ruby/rake/pull/491) - Update rubocop requirement from ~> 1.49.0 to ~> 1.50.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/493](https://togithub.com/ruby/rake/pull/493) - Bump up setup-ruby by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/497](https://togithub.com/ruby/rake/pull/497) - Bump ruby/setup-ruby from 1.148.0 to 1.149.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/498](https://togithub.com/ruby/rake/pull/498) - Update rubocop requirement from ~> 1.50.1 to ~> 1.51.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/499](https://togithub.com/ruby/rake/pull/499) - Bump ruby/setup-ruby from 1.149.0 to 1.150.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/500](https://togithub.com/ruby/rake/pull/500) - Update rubocop requirement from ~> 1.51.0 to ~> 1.52.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/502](https://togithub.com/ruby/rake/pull/502) - Bump ruby/setup-ruby from 1.150.0 to 1.151.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/503](https://togithub.com/ruby/rake/pull/503) - Update development dependencies by [@​hsbt](https://togithub.com/hsbt) in [https://github.com/ruby/rake/pull/505](https://togithub.com/ruby/rake/pull/505) - Bump ruby/setup-ruby from 1.151.0 to 1.152.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/506](https://togithub.com/ruby/rake/pull/506) - Bump actions/upload-pages-artifact from 1 to 2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/508](https://togithub.com/ruby/rake/pull/508) - Bump actions/checkout from 3 to 4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/513](https://togithub.com/ruby/rake/pull/513) - Bump ruby/setup-ruby from 1.152.0 to 1.153.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/514](https://togithub.com/ruby/rake/pull/514) - Bump actions/checkout from 4.0.0 to 4.1.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/516](https://togithub.com/ruby/rake/pull/516) - Bump ruby/setup-ruby from 1.153.0 to 1.154.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/517](https://togithub.com/ruby/rake/pull/517) - Bump ruby/setup-ruby from 1.154.0 to 1.155.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/518](https://togithub.com/ruby/rake/pull/518) - Bump ruby/setup-ruby from 1.155.0 to 1.156.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/519](https://togithub.com/ruby/rake/pull/519) - Bump actions/checkout from 4.1.0 to 4.1.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/520](https://togithub.com/ruby/rake/pull/520) - Bump ruby/setup-ruby from 1.156.0 to 1.157.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/ruby/rake/pull/521](https://togithub.com/ruby/rake/pull/521) #### New Contributors - [@​petergoldstein](https://togithub.com/petergoldstein) made their first contribution in [https://github.com/ruby/rake/pull/415](https://togithub.com/ruby/rake/pull/415) - [@​da2x](https://togithub.com/da2x) made their first contribution in [https://github.com/ruby/rake/pull/393](https://togithub.com/ruby/rake/pull/393) - [@​dependabot](https://togithub.com/dependabot) made their first contribution in [https://github.com/ruby/rake/pull/417](https://togithub.com/ruby/rake/pull/417) - [@​tnir](https://togithub.com/tnir) made their first contribution in [https://github.com/ruby/rake/pull/421](https://togithub.com/ruby/rake/pull/421) - [@​step-security-bot](https://togithub.com/step-security-bot) made their first contribution in [https://github.com/ruby/rake/pull/450](https://togithub.com/ruby/rake/pull/450) - [@​hanneskaeufler](https://togithub.com/hanneskaeufler) made their first contribution in [https://github.com/ruby/rake/pull/458](https://togithub.com/ruby/rake/pull/458) - [@​ono-max](https://togithub.com/ono-max) made their first contribution in [https://github.com/ruby/rake/pull/472](https://togithub.com/ruby/rake/pull/472) - [@​mebezac](https://togithub.com/mebezac) made their first contribution in [https://github.com/ruby/rake/pull/381](https://togithub.com/ruby/rake/pull/381) - [@​ksss](https://togithub.com/ksss) made their first contribution in [https://github.com/ruby/rake/pull/486](https://togithub.com/ruby/rake/pull/486) **Full Changelog**: ruby/rake@v13.0.6...v13.1.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/powerhome/audiences). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zMS41IiwidXBkYXRlZEluVmVyIjoiMzcuMzEuNSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
I’m assuming that no benchmarking will be required for the claim “fewer I/O syscall means better performance”.
This may only seem like a trivial improvement for smaller projects. However, I’m dealing with about 22 000 files, and removing
this onethese two system calls cut my no-changes build time by14,8 %12,4 % on a fast M.2 SSD.