46 lines
1.7 KiB
Ruby
46 lines
1.7 KiB
Ruby
class Dvc < Formula
|
|
include Language::Python::Virtualenv
|
|
|
|
desc "Git for data science projects"
|
|
homepage "https://dvc.org"
|
|
url "https://github.com/iterative/dvc/archive/0.68.1.tar.gz"
|
|
sha256 "a072ebf2151213c61ac7e580e51dc1cecefa4cd840e4f7ae1927d6710312cfe0"
|
|
|
|
bottle do
|
|
sha256 "468ef9708661c771af6c40c70e8337fc62343aa42071c0154911b4383a033854" => :catalina
|
|
sha256 "fe5e08ccaa7d0cfe505394ba897a4eb731e8eadef29d60325876752f69a2b00b" => :mojave
|
|
sha256 "9fb376f7077673779c2a6c388a71304ba7197ff380b87da067984e7f5c059afb" => :high_sierra
|
|
end
|
|
|
|
depends_on "pkg-config" => :build
|
|
depends_on "openssl"
|
|
depends_on "python"
|
|
|
|
def install
|
|
venv = virtualenv_create(libexec, "python3")
|
|
system libexec/"bin/pip", "install", ".[all]"
|
|
# NOTE: dvc depends on asciimatics, which depends on Pillow, which
|
|
# uses liblcms2.2.dylib that causes troubles on mojave. See [1]
|
|
# and [2] for more info. As a workaround, we need to simply
|
|
# uninstall Pillow.
|
|
#
|
|
# [1] https://github.com/peterbrittain/asciimatics/issues/95
|
|
# [2] https://github.com/iterative/homebrew-dvc/issues/9
|
|
system libexec/"bin/pip", "uninstall", "-y", "Pillow"
|
|
system libexec/"bin/pip", "uninstall", "-y", "dvc"
|
|
|
|
# NOTE: dvc uses this file [1] to know which package it was installed from,
|
|
# so that it is able to provide appropriate instructions for updates.
|
|
# [1] https://github.com/iterative/dvc/blob/0.68.1/dvc/utils/pkg.py
|
|
File.open("dvc/utils/build.py", "w+") { |file| file.write("PKG = \"brew\"") }
|
|
|
|
venv.pip_install_and_link buildpath
|
|
|
|
bash_completion.install "scripts/completion/dvc.bash" => "dvc"
|
|
zsh_completion.install "scripts/completion/dvc.zsh"
|
|
end
|
|
|
|
test do
|
|
system "#{bin}/dvc", "--version"
|
|
end
|
|
end
|