From ef9e0bc8a66fafafd896d27f754f42efbb08cf64 Mon Sep 17 00:00:00 2001 From: Razvan Azamfirei Date: Wed, 9 Aug 2023 14:52:30 -0400 Subject: [PATCH] cask/audit: audit for appropriate sharding directory --- Library/Homebrew/cask/audit.rb | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Library/Homebrew/cask/audit.rb b/Library/Homebrew/cask/audit.rb index 70412cce30..eb3f0b48e9 100644 --- a/Library/Homebrew/cask/audit.rb +++ b/Library/Homebrew/cask/audit.rb @@ -717,6 +717,18 @@ module Cask strict: strict?) end + sig { void } + def audit_cask_path + return if cask.tap != "homebrew/cask" + + cask_subdir = cask.token[0].downcase + expected_path = "Casks/#{cask_subdir}/#{cask.token}.rb" + + return if cask.ruby_source_path.to_s.end_with?(expected_path) + + add_error "Cask should be located in '#{expected_path}'" + end + # sig { # params(url_to_check: T.any(String, URL), url_type: String, cask_token: String, tap: Tap, # options: T.untyped).void