Spec-Zone.ru › Homebrew

Класс: Cask::Reinstall Закрытый

Наследует:
Object
  • Object
  • Cask::Reinstall
показать все
Расширен модулем:
Utils::Output::Mixin
Определён в:
cask/reinstall.rb

Этот класс является частью закрытого API. Этот класс можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого класса, поскольку он может быть удалён или изменён без предупреждения.

Краткое описание методов класса свернуть

  • .reinstall_casks(*casks, verbose: false, force: false, skip_cask_deps: false, binaries: false, require_sha: false, quarantine: false, zap: false, skip_prefetch: false, download_queue: nil) ⇒ void закрытый

Методы, включённые из Utils::Output::Mixin

issue_reporting_message, odebug, odeprecated, odie, odisabled, ofail, oh1, oh1_title, ohai, ohai_title, onoe, opoo, opoo_outside_github_actions, opoo_without_github_actions_annotation, pretty_deprecated, pretty_disabled, pretty_duration, pretty_install_status, pretty_installed, pretty_uninstalled, pretty_upgradable, pretty_warning

Подробное описание методов класса

.reinstall_casks(*casks, verbose: false, force: false, skip_cask_deps: false, binaries: false, require_sha: false, quarantine: false, zap: false, skip_prefetch: false, download_queue: nil) ⇒ void

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Этот метод возвращает неопределённое значение.

Параметры:

  • casks (::Cask::Cask)
  • verbose (Boolean) (по умолчанию: false)
  • force (Boolean) (по умолчанию: false)
  • skip_cask_deps (Boolean) (по умолчанию: false)
  • binaries (Boolean) (по умолчанию: false)
  • require_sha (Boolean) (по умолчанию: false)
  • quarantine (Boolean) (по умолчанию: false)
  • zap (Boolean) (по умолчанию: false)
  • skip_prefetch (Boolean) (по умолчанию: false)
  • download_queue (Homebrew::DownloadQueue, nil) (по умолчанию: nil)

Вызывает исключение:

  • (MultipleCaskErrors)


18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# File 'cask/reinstall.rb', line 18

def self.reinstall_casks(
  *casks,
  verbose: false,
  force: false,
  skip_cask_deps: false,
  binaries: false,
  require_sha: false,
  quarantine: false,
  zap: false,
  skip_prefetch: false,
  download_queue: nil
)
  require "cask/installer"

  quarantine = true if quarantine.nil?
  created_download_queue = T.let(false, T::Boolean)
  if download_queue.nil?
    if skip_prefetch
      download_queue = Homebrew.default_download_queue
    else
      download_queue = Homebrew::DownloadQueue.new(pour: true)
      created_download_queue = true
    end
  end

  cask_installers = T.let([], T::Array[Installer])
  begin
    cask_installers = casks.map do |cask|
      Installer.new(
        cask,
        binaries:,
        verbose:,
        force:,
        skip_cask_deps:,
        require_sha:,
        reinstall:      true,
        quarantine:,
        zap:,
        download_queue:,
        defer_fetch:    true,
      )
    end

    unless skip_prefetch
      Homebrew::Install.enqueue_cask_installers(cask_installers, download_queue:)
      oh1 "Fetching downloads for: #{casks.map { |cask| Formatter.identifier(cask.full_name) }.to_sentence}",
          truncate: false
      download_queue.fetch
    end
  ensure
    download_queue.shutdown if created_download_queue
  end

  exit 1 if Homebrew.failed?

  caught_exceptions = []

  cask_installers.each do |installer|
    installer.install
  rescue => e
    caught_exceptions << e
    next
  end

  return if caught_exceptions.empty?

  raise MultipleCaskErrors, caught_exceptions if caught_exceptions.count > 1

  raise caught_exceptions.fetch(0)
end

© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/Cask/Reinstall.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API