lib/avm/executables.rb in avm-tools-0.37.1 vs lib/avm/executables.rb in avm-tools-0.38.0

- old
+ new

@@ -1,29 +1,24 @@ # frozen_string_literal: true require 'eac_ruby_utils/envs' +require 'eac_ruby_utils/simple_cache' module Avm module Executables class << self + include ::EacRubyUtils::SimpleCache + def env ::EacRubyUtils::Envs.local end - def file - @file ||= env.executable('file', '--version') - end + private - def git - @git ||= env.executable('git', '--version') - end - - def docker - @docker ||= env.executable('docker', '--version') - end - - def php_cs_fixer - @php_cs_fixer ||= env.executable('php-cs-fixer', '--version') + %w[docker file git php-cs-fixer yapf].each do |program| + define_method(program.underscore + '_uncached') do + env.executable(program, '--version') + end end end end end