2

При попытке установить android-platform-tools с помощью homebrew на OS X 10.11.6 я обнаружил следующую ошибку (полная вставка ниже):

$ brew cask install android-platform-tools
==> Satisfying dependencies
==> Downloading https://dl.google.com/android/repository/platform-tools_r28.0.1-
######################################################################## 100.0% /usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/utils/quarantine.swift:29:30: error: 'quarantinePropertiesKey' is only available on OS X 10.10 or newer
      forKey: URLResourceKey.quarantinePropertiesKey
                             ^ /usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/utils/quarantine.swift:29:30: note: add 'if #available' version check
      forKey: URLResourceKey.quarantinePropertiesKey
                             ^ Error: Failed to quarantine /Users/User/Library/Caches/Homebrew/downloads/e3de3bef9f7f114325f5d2be854f297cc85e6e17a490c9f267b1c838ee225340--platform-tools_r28.0.1-darwin.zip. Here's the reason: /usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/utils/quarantine.swift:29:30: error: 'quarantinePropertiesKey' is only available on OS X 10.10 or newer
      forKey: URLResourceKey.quarantinePropertiesKey
                             ^ /usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/utils/quarantine.swift:29:30: note: add 'if #available' version check
      forKey: URLResourceKey.quarantinePropertiesKey
                             ^

Это не имеет смысла для меня, так как эта система работает под управлением OS X 10.11.x.

Нужно ли полностью удалять и переустанавливать homebrew? Я бы предпочел, по возможности, не делать этого, поскольку в настоящее время у меня есть несколько вещей, установленных через homebrew.

Я запустил brew update непосредственно перед этим, так что homebrew должен быть в курсе.

1 ответ1

4

Это связано с текущей ошибкой в Homebrew, и исправление было объединено

По вопросу № 4809:

Привет, PR # 4656, похоже, прервал установку бочки с варкой 10.11. Я получаю сообщение об ошибке 10.11, но не 10.12. В качестве обходного пути повторное выполнение с флагом --no-quarantine прошло успешно. Я не уверен, почему эта функция не доступна, моя ОС обновлена.

(Надрез)

/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/utils/quarantine.swift:29:30: error: 'quarantinePropertiesKey' is only available on OS X 10.10 or newer
      forKey: URLResourceKey.quarantinePropertiesKey

(так далее)

(снип и т. д. мой)

Это та же проблема, с которой вы сталкиваетесь.

Существует PR (# 4796), который обращается к этому, который был объединен с master на день назад (2018-09-06):

API-интерфейс Gatekeeper, который я написал, основан на современной установке CLT (или Xcode) и флаге -r xattr для встроенной рекурсии. В некоторых случаях Swift слишком стар или установлен в качестве цели развертывания ранее, чем MacOS 10.10, и поэтому не может использовать константу URLResourceKey.quarantinePropertiesKey. А в текущей бета-версии Mojave xattr не имеет расширения Apple -r для обхода собственной файловой системы.

Этот запрос извлечения вставляет дополнительную проверку в скрипт Swift Quarantine.available? Функция и варит бочонок доктора, а изменения распространяются, чтобы использовать xargs для рекурсии.

Последний выпуск brew на момент написания статьи - 1.7.3, выпущенный 3 сентября.

Примечание: я только что запустил brew update и оно говорит мне, что я запускаю 1.7.3 с коммитом 5d894 , который был зафиксирован сегодня (2018-09-07) и является последней версией homebrew-core на момент написания.

Semi-обходной путь

Если вы еще не загрузили файл, вы можете попробовать no-quarantine , т.е.

$ brew cask install --no-quarantine android-platform-tools

однако, поскольку у вас уже есть эти файлы, к сожалению, они уже должны быть помещены в карантин.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .