mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-14 16:09:03 +08:00
Cleanup after adding os specific rubocop
- Change name of rubocop warning - Disable linting on remaining offending lines - Add todos to move lines with disabled linting checks to extend/os in the future
This commit is contained in:
parent
d48859a9ce
commit
c477b9aab3
@ -57,7 +57,7 @@ FormulaAuditStrict:
|
|||||||
|
|
||||||
Homebrew/MoveToExtendOS:
|
Homebrew/MoveToExtendOS:
|
||||||
Exclude:
|
Exclude:
|
||||||
- "Homebrew/{extend,test}/**/*"
|
- "Homebrew/{extend,test,requirements}/**/*"
|
||||||
- "Taps/**/*"
|
- "Taps/**/*"
|
||||||
- "Homebrew/os.rb"
|
- "Homebrew/os.rb"
|
||||||
|
|
||||||
|
@ -68,7 +68,8 @@ module Cask
|
|||||||
zap: nil,
|
zap: nil,
|
||||||
dry_run: nil
|
dry_run: nil
|
||||||
)
|
)
|
||||||
odie "Installing casks is supported only on macOS" unless OS.mac?
|
# TODO: Refactor and move to extend/os
|
||||||
|
odie "Installing casks is supported only on macOS" unless OS.mac? # rubocop:disable Homebrew/MoveToExtendOS
|
||||||
|
|
||||||
options = {
|
options = {
|
||||||
verbose: verbose,
|
verbose: verbose,
|
||||||
|
@ -293,7 +293,8 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
|
|
||||||
def migrate_gcc_dependents_if_needed
|
def migrate_gcc_dependents_if_needed
|
||||||
return if OS.mac?
|
# TODO: Refactor and move to extend/os
|
||||||
|
return if OS.mac? # rubocop:disable Homebrew/MoveToExtendOS
|
||||||
return if Settings.read("gcc-rpaths.fixed") == "true"
|
return if Settings.read("gcc-rpaths.fixed") == "true"
|
||||||
|
|
||||||
Formula.installed.each do |formula|
|
Formula.installed.each do |formula|
|
||||||
|
@ -4,7 +4,8 @@
|
|||||||
require "simulate_system"
|
require "simulate_system"
|
||||||
|
|
||||||
module Homebrew
|
module Homebrew
|
||||||
DEFAULT_PREFIX, DEFAULT_REPOSITORY = if OS.mac? && Hardware::CPU.arm?
|
# TODO: Refactor and move to extend/os
|
||||||
|
DEFAULT_PREFIX, DEFAULT_REPOSITORY = if OS.mac? && Hardware::CPU.arm? # rubocop:disable Homebrew/MoveToExtendOS
|
||||||
[HOMEBREW_MACOS_ARM_DEFAULT_PREFIX, HOMEBREW_MACOS_ARM_DEFAULT_REPOSITORY]
|
[HOMEBREW_MACOS_ARM_DEFAULT_PREFIX, HOMEBREW_MACOS_ARM_DEFAULT_REPOSITORY]
|
||||||
elsif Homebrew::SimulateSystem.simulating_or_running_on_linux?
|
elsif Homebrew::SimulateSystem.simulating_or_running_on_linux?
|
||||||
[HOMEBREW_LINUX_DEFAULT_PREFIX, HOMEBREW_LINUX_DEFAULT_REPOSITORY]
|
[HOMEBREW_LINUX_DEFAULT_PREFIX, HOMEBREW_LINUX_DEFAULT_REPOSITORY]
|
||||||
|
@ -247,7 +247,8 @@ module Homebrew
|
|||||||
"--pax-option", "globexthdr.name=/GlobalHead.%n,exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime"
|
"--pax-option", "globexthdr.name=/GlobalHead.%n,exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime"
|
||||||
].freeze
|
].freeze
|
||||||
|
|
||||||
return ["tar", gnutar_args].freeze if OS.linux?
|
# TODO: Refactor and move to extend/os
|
||||||
|
return ["tar", gnutar_args].freeze if OS.linux? # rubocop:disable Homebrew/MoveToExtendOS
|
||||||
|
|
||||||
# Use gnu-tar on macOS as it can be set up for reproducibility better than libarchive.
|
# Use gnu-tar on macOS as it can be set up for reproducibility better than libarchive.
|
||||||
begin
|
begin
|
||||||
@ -275,6 +276,8 @@ module Homebrew
|
|||||||
ignores << %r{#{cellar_regex}/#{go_regex}/[\d.]+/libexec}
|
ignores << %r{#{cellar_regex}/#{go_regex}/[\d.]+/libexec}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# TODO: Refactor and move to extend/os
|
||||||
|
# rubocop:disable Homebrew/MoveToExtendOS
|
||||||
ignores << case f.name
|
ignores << case f.name
|
||||||
# On Linux, GCC installation can be moved so long as the whole directory tree is moved together:
|
# On Linux, GCC installation can be moved so long as the whole directory tree is moved together:
|
||||||
# https://gcc-help.gcc.gnu.narkive.com/GnwuCA7l/moving-gcc-from-the-installation-path-is-it-allowed.
|
# https://gcc-help.gcc.gnu.narkive.com/GnwuCA7l/moving-gcc-from-the-installation-path-is-it-allowed.
|
||||||
@ -284,6 +287,7 @@ module Homebrew
|
|||||||
when Version.formula_optionally_versioned_regex(:binutils)
|
when Version.formula_optionally_versioned_regex(:binutils)
|
||||||
%r{#{cellar_regex}/binutils} if OS.linux?
|
%r{#{cellar_regex}/binutils} if OS.linux?
|
||||||
end
|
end
|
||||||
|
# rubocop:enable Homebrew/MoveToExtendOS
|
||||||
|
|
||||||
ignores.compact
|
ignores.compact
|
||||||
end
|
end
|
||||||
@ -409,7 +413,8 @@ module Homebrew
|
|||||||
# Set the times for reproducible bottles.
|
# Set the times for reproducible bottles.
|
||||||
if file.symlink?
|
if file.symlink?
|
||||||
# Need to make symlink permissions consistent on macOS and Linux
|
# Need to make symlink permissions consistent on macOS and Linux
|
||||||
File.lchmod 0777, file if OS.mac?
|
# TODO: Refactor and move to extend/os
|
||||||
|
File.lchmod 0777, file if OS.mac? # rubocop:disable Homebrew/MoveToExtendOS
|
||||||
File.lutime(tab.source_modified_time, tab.source_modified_time, file)
|
File.lutime(tab.source_modified_time, tab.source_modified_time, file)
|
||||||
else
|
else
|
||||||
file.utime(tab.source_modified_time, tab.source_modified_time)
|
file.utime(tab.source_modified_time, tab.source_modified_time)
|
||||||
|
@ -157,6 +157,8 @@ module Homebrew
|
|||||||
--require spec_helper
|
--require spec_helper
|
||||||
]
|
]
|
||||||
|
|
||||||
|
# TODO: Refactor and move to extend/os
|
||||||
|
# rubocop:disable Homebrew/MoveToExtendOS
|
||||||
unless OS.mac?
|
unless OS.mac?
|
||||||
bundle_args << "--tag" << "~needs_macos" << "--tag" << "~cask"
|
bundle_args << "--tag" << "~needs_macos" << "--tag" << "~cask"
|
||||||
files = files.grep_v(%r{^test/(os/mac|cask)(/.*|_spec\.rb)$})
|
files = files.grep_v(%r{^test/(os/mac|cask)(/.*|_spec\.rb)$})
|
||||||
@ -166,6 +168,7 @@ module Homebrew
|
|||||||
bundle_args << "--tag" << "~needs_linux"
|
bundle_args << "--tag" << "~needs_linux"
|
||||||
files = files.grep_v(%r{^test/os/linux(/.*|_spec\.rb)$})
|
files = files.grep_v(%r{^test/os/linux(/.*|_spec\.rb)$})
|
||||||
end
|
end
|
||||||
|
# rubocop:enable Homebrew/MoveToExtendOS
|
||||||
|
|
||||||
puts "Randomized with seed #{seed}"
|
puts "Randomized with seed #{seed}"
|
||||||
|
|
||||||
|
@ -65,7 +65,8 @@ module Homebrew
|
|||||||
tags = if (HOMEBREW_REPOSITORY/".git/shallow").exist?
|
tags = if (HOMEBREW_REPOSITORY/".git/shallow").exist?
|
||||||
safe_system "git", "fetch", "--tags", "--depth=1"
|
safe_system "git", "fetch", "--tags", "--depth=1"
|
||||||
Utils.popen_read("git", "tag", "--list", "--sort=-version:refname")
|
Utils.popen_read("git", "tag", "--list", "--sort=-version:refname")
|
||||||
elsif OS.linux?
|
# TODO: Refactor and move to extend/os
|
||||||
|
elsif OS.linux? # rubocop:disable Homebrew/MoveToExtendOS
|
||||||
Utils.popen_read("git tag --list | sort -rV")
|
Utils.popen_read("git tag --list | sort -rV")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -319,7 +319,8 @@ module FormulaCellarChecks
|
|||||||
def check_binary_arches(formula)
|
def check_binary_arches(formula)
|
||||||
return unless formula.prefix.directory?
|
return unless formula.prefix.directory?
|
||||||
# There is no `binary_executable_or_library_files` method for the generic OS
|
# There is no `binary_executable_or_library_files` method for the generic OS
|
||||||
return if !OS.mac? && !OS.linux?
|
# TODO: Refactor and move to extend/os
|
||||||
|
return if !OS.mac? && !OS.linux? # rubocop:disable Homebrew/MoveToExtendOS
|
||||||
|
|
||||||
keg = Keg.new(formula.prefix)
|
keg = Keg.new(formula.prefix)
|
||||||
mismatches = {}
|
mismatches = {}
|
||||||
|
@ -8,7 +8,7 @@ module RuboCop
|
|||||||
#
|
#
|
||||||
# @api private
|
# @api private
|
||||||
class MoveToExtendOS < Base
|
class MoveToExtendOS < Base
|
||||||
MSG = "Move calls to `OS.linux?` and `OS.mac?` to `extend/os`."
|
MSG = "Move `OS.linux?` and `OS.mac?` calls to `extend/os`."
|
||||||
|
|
||||||
def_node_matcher :os_check?, <<~PATTERN
|
def_node_matcher :os_check?, <<~PATTERN
|
||||||
(send (const nil? :OS) {:mac? | :linux?})
|
(send (const nil? :OS) {:mac? | :linux?})
|
||||||
|
@ -9,14 +9,14 @@ describe RuboCop::Cop::Homebrew::MoveToExtendOS do
|
|||||||
it "registers an offense when using `OS.linux?`" do
|
it "registers an offense when using `OS.linux?`" do
|
||||||
expect_offense(<<~RUBY)
|
expect_offense(<<~RUBY)
|
||||||
OS.linux?
|
OS.linux?
|
||||||
^^^^^^^^^ Move calls to `OS.linux?` and `OS.mac?` to `extend/os`.
|
^^^^^^^^^ Move `OS.linux?` and `OS.mac?` calls to `extend/os`.
|
||||||
RUBY
|
RUBY
|
||||||
end
|
end
|
||||||
|
|
||||||
it "registers an offense when using `OS.mac?`" do
|
it "registers an offense when using `OS.mac?`" do
|
||||||
expect_offense(<<~RUBY)
|
expect_offense(<<~RUBY)
|
||||||
OS.mac?
|
OS.mac?
|
||||||
^^^^^^^ Move calls to `OS.linux?` and `OS.mac?` to `extend/os`.
|
^^^^^^^ Move `OS.linux?` and `OS.mac?` calls to `extend/os`.
|
||||||
RUBY
|
RUBY
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
Loading…
x
Reference in New Issue
Block a user