2020-10-10 14:16:11 +02:00
|
|
|
# typed: true
|
2019-04-19 15:38:03 +09:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2020-11-05 17:17:03 -05:00
|
|
|
# Match taps' formulae, e.g. `someuser/sometap/someformula`
|
2018-11-02 17:18:07 +00:00
|
|
|
HOMEBREW_TAP_FORMULA_REGEX = %r{^([\w-]+)/([\w-]+)/([\w+-.@]+)$}.freeze
|
2020-11-05 17:17:03 -05:00
|
|
|
# Match taps' casks, e.g. `someuser/sometap/somecask`
|
2022-04-22 12:24:31 +01:00
|
|
|
HOMEBREW_TAP_CASK_REGEX = %r{^([\w-]+)/([\w-]+)/([a-z0-9\-_]+)$}.freeze
|
2023-01-31 00:09:57 -08:00
|
|
|
# Match main cask taps' casks, e.g. `homebrew/cask/somecask` or `somecask`
|
2023-04-18 00:22:13 +01:00
|
|
|
HOMEBREW_MAIN_TAP_CASK_REGEX = %r{^([Hh]omebrew/(?:homebrew-)?cask/)?[a-z0-9\-_]+$}.freeze
|
2020-11-05 17:17:03 -05:00
|
|
|
# Match taps' directory paths, e.g. `HOMEBREW_LIBRARY/Taps/someuser/sometap`
|
2020-11-23 10:14:18 +01:00
|
|
|
HOMEBREW_TAP_DIR_REGEX = %r{#{Regexp.escape(HOMEBREW_LIBRARY.to_s)}/Taps/(?<user>[\w-]+)/(?<repo>[\w-]+)}.freeze
|
2020-11-05 17:17:03 -05:00
|
|
|
# Match taps' formula paths, e.g. `HOMEBREW_LIBRARY/Taps/someuser/sometap/someformula`
|
2019-04-19 21:46:20 +09:00
|
|
|
HOMEBREW_TAP_PATH_REGEX = Regexp.new(HOMEBREW_TAP_DIR_REGEX.source + %r{(?:/.*)?$}.source).freeze
|
2020-11-05 17:17:03 -05:00
|
|
|
# Match official taps' casks, e.g. `homebrew/cask/somecask or homebrew/cask-versions/somecask`
|
2023-04-18 00:22:13 +01:00
|
|
|
HOMEBREW_CASK_TAP_CASK_REGEX =
|
|
|
|
%r{^(?:([Cc]askroom)/(cask|versions)|([Hh]omebrew)/(?:homebrew-)?(cask|cask-[\w-]+))/([\w+-.]+)$}.freeze
|
2019-02-25 22:56:29 +01:00
|
|
|
HOMEBREW_OFFICIAL_REPO_PREFIXES_REGEX = /^(home|linux)brew-/.freeze
|