Merge pull request #966 from MikeMcQuaid/keg-lock-constants
Use constants for LinkedKegs/PinnedKegs/Locks.
This commit is contained in:
commit
1c5fa19f84
@ -111,7 +111,7 @@ module Homebrew
|
||||
if ARGV.include? "--pinned"
|
||||
pinned_versions = {}
|
||||
names.each do |d|
|
||||
keg_pin = (HOMEBREW_LIBRARY/"PinnedKegs"/d.basename.to_s)
|
||||
keg_pin = (HOMEBREW_PINNED_KEGS/d.basename.to_s)
|
||||
if keg_pin.exist? || keg_pin.symlink?
|
||||
pinned_versions[d] = keg_pin.readlink.basename.to_s
|
||||
end
|
||||
|
||||
@ -985,7 +985,7 @@ module Homebrew
|
||||
|
||||
def check_for_unlinked_but_not_keg_only
|
||||
unlinked = Formula.racks.reject do |rack|
|
||||
if !(HOMEBREW_REPOSITORY/"Library/LinkedKegs"/rack.basename).directory?
|
||||
if !(HOMEBREW_LINKED_KEGS/rack.basename).directory?
|
||||
begin
|
||||
Formulary.from_rack(rack).keg_only?
|
||||
rescue FormulaUnavailableError, TapFormulaAmbiguityError, TapFormulaWithOldnameAmbiguityError
|
||||
|
||||
@ -59,8 +59,8 @@ module HomebrewArgvExtension
|
||||
|
||||
raise NoSuchKegError, rack.basename if dirs.empty?
|
||||
|
||||
linked_keg_ref = HOMEBREW_LIBRARY.join("LinkedKegs", rack.basename)
|
||||
opt_prefix = HOMEBREW_PREFIX.join("opt", rack.basename)
|
||||
linked_keg_ref = HOMEBREW_LINKED_KEGS/rack.basename
|
||||
opt_prefix = HOMEBREW_PREFIX/"opt/#{rack.basename}"
|
||||
|
||||
begin
|
||||
if opt_prefix.symlink? && opt_prefix.directory?
|
||||
|
||||
@ -429,10 +429,10 @@ class Formula
|
||||
end
|
||||
|
||||
# @private
|
||||
# The `LinkedKegs` directory for this {Formula}.
|
||||
# The link status symlink directory for this {Formula}.
|
||||
# You probably want {#opt_prefix} instead.
|
||||
def linked_keg
|
||||
Pathname.new("#{HOMEBREW_LIBRARY}/LinkedKegs/#{name}")
|
||||
HOMEBREW_LINKED_KEGS/name
|
||||
end
|
||||
|
||||
def latest_head_version
|
||||
|
||||
@ -1,16 +1,14 @@
|
||||
require "fcntl"
|
||||
|
||||
class FormulaLock
|
||||
LOCKDIR = HOMEBREW_LOCK_DIR
|
||||
|
||||
def initialize(name)
|
||||
@name = name
|
||||
@path = LOCKDIR.join("#{@name}.brewing")
|
||||
@path = HOMEBREW_LOCK_DIR/"#{@name}.brewing"
|
||||
@lockfile = nil
|
||||
end
|
||||
|
||||
def lock
|
||||
LOCKDIR.mkpath
|
||||
HOMEBREW_LOCK_DIR.mkpath
|
||||
@lockfile = get_or_create_lockfile
|
||||
unless @lockfile.flock(File::LOCK_EX | File::LOCK_NB)
|
||||
raise OperationInProgressError, @name
|
||||
|
||||
@ -1,18 +1,16 @@
|
||||
require "keg"
|
||||
|
||||
class FormulaPin
|
||||
PINDIR = Pathname.new("#{HOMEBREW_LIBRARY}/PinnedKegs")
|
||||
|
||||
def initialize(f)
|
||||
@f = f
|
||||
end
|
||||
|
||||
def path
|
||||
Pathname.new("#{PINDIR}/#{@f.name}")
|
||||
HOMEBREW_PINNED_KEGS/@f.name
|
||||
end
|
||||
|
||||
def pin_at(version)
|
||||
PINDIR.mkpath
|
||||
HOMEBREW_PINNED_KEGS.mkpath
|
||||
version_path = @f.rack.join(version)
|
||||
path.make_relative_symlink(version_path) unless pinned? || !version_path.exist?
|
||||
end
|
||||
@ -23,7 +21,7 @@ class FormulaPin
|
||||
|
||||
def unpin
|
||||
path.unlink if pinned?
|
||||
PINDIR.rmdir_if_possible
|
||||
HOMEBREW_PINNED_KEGS.rmdir_if_possible
|
||||
end
|
||||
|
||||
def pinned?
|
||||
|
||||
@ -22,6 +22,9 @@ require "config"
|
||||
|
||||
HOMEBREW_REPOSITORY.extend(GitRepositoryExtension)
|
||||
|
||||
HOMEBREW_LINKED_KEGS = HOMEBREW_LIBRARY/"LinkedKegs"
|
||||
HOMEBREW_PINNED_KEGS = HOMEBREW_LIBRARY/"PinnedKegs"
|
||||
|
||||
RUBY_PATH = Pathname.new(RbConfig.ruby)
|
||||
RUBY_BIN = RUBY_PATH.dirname
|
||||
|
||||
|
||||
@ -100,8 +100,8 @@ class Keg
|
||||
raise "#{path} is not a directory" unless path.directory?
|
||||
@path = path
|
||||
@name = path.parent.basename.to_s
|
||||
@linked_keg_record = HOMEBREW_LIBRARY.join("LinkedKegs", name)
|
||||
@opt_record = HOMEBREW_PREFIX.join("opt", name)
|
||||
@linked_keg_record = HOMEBREW_LINKED_KEGS/name
|
||||
@opt_record = HOMEBREW_PREFIX/"opt/#{name}"
|
||||
end
|
||||
|
||||
def to_s
|
||||
|
||||
@ -107,8 +107,8 @@ class Migrator
|
||||
@new_linked_keg_record = HOMEBREW_CELLAR/"#{newname}/#{File.basename(old_linked_keg)}"
|
||||
end
|
||||
|
||||
@old_pin_record = HOMEBREW_LIBRARY/"PinnedKegs"/oldname
|
||||
@new_pin_record = HOMEBREW_LIBRARY/"PinnedKegs"/newname
|
||||
@old_pin_record = HOMEBREW_PINNED_KEGS/oldname
|
||||
@new_pin_record = HOMEBREW_PINNED_KEGS/newname
|
||||
@pinned = old_pin_record.symlink?
|
||||
@old_pin_link_record = old_pin_record.readlink if @pinned
|
||||
end
|
||||
|
||||
@ -505,7 +505,7 @@ class FormulaTests < Homebrew::TestCase
|
||||
f3.brew { f3.install }
|
||||
end
|
||||
|
||||
assert_equal HOMEBREW_LIBRARY.join("PinnedKegs/#{f1.name}").resolved_path, f1.prefix
|
||||
assert_equal (HOMEBREW_PINNED_KEGS/f1.name).resolved_path, f1.prefix
|
||||
|
||||
assert_predicate f1, :installed?
|
||||
assert_predicate f2, :installed?
|
||||
|
||||
@ -114,8 +114,8 @@ class FormulaInstallerTests < Homebrew::TestCase
|
||||
end
|
||||
|
||||
dependency.prefix("0.1").join("bin/a").mkpath
|
||||
HOMEBREW_LIBRARY.join("PinnedKegs").mkpath
|
||||
FileUtils.ln_s dependency.prefix("0.1"), HOMEBREW_LIBRARY.join("PinnedKegs/#{dep_name}")
|
||||
HOMEBREW_PINNED_KEGS.mkpath
|
||||
FileUtils.ln_s dependency.prefix("0.1"), HOMEBREW_PINNED_KEGS/dep_name
|
||||
|
||||
dependency_keg = Keg.new(dependency.prefix("0.1"))
|
||||
dependency_keg.link
|
||||
|
||||
@ -9,7 +9,7 @@ class FormulaLockTests < Homebrew::TestCase
|
||||
|
||||
def teardown
|
||||
@lock.unlock
|
||||
FormulaLock::LOCKDIR.children.each(&:unlink)
|
||||
HOMEBREW_LOCK_DIR.children.each(&:unlink)
|
||||
end
|
||||
|
||||
def test_locking_file_with_existing_lock_raises_error
|
||||
|
||||
@ -8,7 +8,7 @@ class FormulaPinTests < Homebrew::TestCase
|
||||
end
|
||||
|
||||
def rack
|
||||
Pathname.new("#{HOMEBREW_CELLAR}/#{name}")
|
||||
HOMEBREW_CELLAR/name
|
||||
end
|
||||
|
||||
def installed_prefixes
|
||||
@ -31,21 +31,21 @@ class FormulaPinTests < Homebrew::TestCase
|
||||
end
|
||||
|
||||
def test_pinnable_if_kegs_exist
|
||||
(@f.rack+"0.1").mkpath
|
||||
(@f.rack/"0.1").mkpath
|
||||
assert_predicate @pin, :pinnable?
|
||||
end
|
||||
|
||||
def test_unpin
|
||||
(@f.rack+"0.1").mkpath
|
||||
(@f.rack/"0.1").mkpath
|
||||
@pin.pin
|
||||
|
||||
assert_predicate @pin, :pinned?
|
||||
assert_equal 1, FormulaPin::PINDIR.children.length
|
||||
assert_equal 1, HOMEBREW_PINNED_KEGS.children.length
|
||||
|
||||
@pin.unpin
|
||||
|
||||
refute_predicate @pin, :pinned?
|
||||
refute_predicate FormulaPin::PINDIR, :directory?
|
||||
refute_predicate HOMEBREW_PINNED_KEGS, :directory?
|
||||
end
|
||||
|
||||
def teardown
|
||||
|
||||
@ -22,7 +22,7 @@ class IntegrationCommandTests < Homebrew::TestCase
|
||||
HOMEBREW_PREFIX/"bin",
|
||||
HOMEBREW_PREFIX/"share",
|
||||
HOMEBREW_PREFIX/"opt",
|
||||
HOMEBREW_LIBRARY/"LinkedKegs",
|
||||
HOMEBREW_LINKED_KEGS,
|
||||
HOMEBREW_LIBRARY/"Taps/caskroom",
|
||||
HOMEBREW_LIBRARY/"Taps/homebrew/homebrew-bundle",
|
||||
HOMEBREW_LIBRARY/"Taps/homebrew/homebrew-foo",
|
||||
@ -533,12 +533,12 @@ class IntegrationCommandTests < Homebrew::TestCase
|
||||
setup_test_formula "testball"
|
||||
|
||||
HOMEBREW_CELLAR.join("testball/0.1").mkpath
|
||||
HOMEBREW_LIBRARY.join("PinnedKegs").mkpath
|
||||
FileUtils.ln_s HOMEBREW_CELLAR.join("testball/0.1"), HOMEBREW_LIBRARY.join("PinnedKegs/testball")
|
||||
HOMEBREW_PINNED_KEGS.mkpath
|
||||
FileUtils.ln_s HOMEBREW_CELLAR.join("testball/0.1"), HOMEBREW_PINNED_KEGS/"testball"
|
||||
|
||||
assert_match "testball is pinned. You must unpin it to reinstall.", cmd("reinstall", "testball")
|
||||
|
||||
HOMEBREW_LIBRARY.join("PinnedKegs").rmtree
|
||||
HOMEBREW_PINNED_KEGS.rmtree
|
||||
end
|
||||
|
||||
def test_home
|
||||
|
||||
@ -60,7 +60,7 @@ class MigratorTests < Homebrew::TestCase
|
||||
@keg.link
|
||||
@keg.optlink
|
||||
|
||||
@old_pin = HOMEBREW_LIBRARY/"PinnedKegs/oldname"
|
||||
@old_pin = HOMEBREW_PINNED_KEGS/"oldname"
|
||||
@old_pin.make_relative_symlink @old_keg_record
|
||||
|
||||
@migrator = Migrator.new(@new_f)
|
||||
@ -92,7 +92,7 @@ class MigratorTests < Homebrew::TestCase
|
||||
# What to do with pin?
|
||||
@new_f.unpin
|
||||
|
||||
FormulaLock::LOCKDIR.children.each(&:unlink)
|
||||
HOMEBREW_LOCK_DIR.children.each(&:unlink)
|
||||
end
|
||||
|
||||
def test_move_cellar
|
||||
@ -117,7 +117,7 @@ class MigratorTests < Homebrew::TestCase
|
||||
|
||||
def test_repin
|
||||
@new_keg_record.join("bin").mkpath
|
||||
expected_relative = @new_keg_record.relative_path_from HOMEBREW_LIBRARY/"PinnedKegs"
|
||||
expected_relative = @new_keg_record.relative_path_from HOMEBREW_PINNED_KEGS
|
||||
|
||||
@migrator.repin
|
||||
|
||||
@ -127,13 +127,13 @@ class MigratorTests < Homebrew::TestCase
|
||||
end
|
||||
|
||||
def test_unlink_oldname
|
||||
assert_equal 1, HOMEBREW_LIBRARY.join("LinkedKegs").children.size
|
||||
assert_equal 1, HOMEBREW_PREFIX.join("opt").children.size
|
||||
assert_equal 1, HOMEBREW_LINKED_KEGS.children.size
|
||||
assert_equal 1, (HOMEBREW_PREFIX/"opt").children.size
|
||||
|
||||
shutup { @migrator.unlink_oldname }
|
||||
|
||||
refute_predicate HOMEBREW_LIBRARY/"LinkedKegs", :exist?
|
||||
refute_predicate HOMEBREW_LIBRARY.join("bin"), :exist?
|
||||
refute_predicate HOMEBREW_LINKED_KEGS, :exist?
|
||||
refute_predicate HOMEBREW_LIBRARY/"bin", :exist?
|
||||
end
|
||||
|
||||
def test_link_newname
|
||||
@ -144,8 +144,8 @@ class MigratorTests < Homebrew::TestCase
|
||||
|
||||
shutup { @migrator.link_newname }
|
||||
|
||||
assert_equal 1, HOMEBREW_LIBRARY.join("LinkedKegs").children.size
|
||||
assert_equal 1, HOMEBREW_PREFIX.join("opt").children.size
|
||||
assert_equal 1, HOMEBREW_LINKED_KEGS.children.size
|
||||
assert_equal 1, (HOMEBREW_PREFIX/"opt").children.size
|
||||
end
|
||||
|
||||
def test_link_oldname_opt
|
||||
@ -182,12 +182,12 @@ class MigratorTests < Homebrew::TestCase
|
||||
|
||||
assert_predicate @new_keg_record, :exist?
|
||||
assert_predicate @old_keg_record.parent, :symlink?
|
||||
refute_predicate HOMEBREW_LIBRARY/"LinkedKegs/oldname", :exist?
|
||||
assert_equal @new_keg_record.realpath, (HOMEBREW_LIBRARY/"LinkedKegs/newname").realpath
|
||||
refute_predicate HOMEBREW_LINKED_KEGS/"oldname", :exist?
|
||||
assert_equal @new_keg_record.realpath, (HOMEBREW_LINKED_KEGS/"newname").realpath
|
||||
assert_equal @new_keg_record.realpath, @old_keg_record.realpath
|
||||
assert_equal @new_keg_record.realpath, (HOMEBREW_PREFIX/"opt/oldname").realpath
|
||||
assert_equal @new_keg_record.parent.realpath, (HOMEBREW_CELLAR/"oldname").realpath
|
||||
assert_equal @new_keg_record.realpath, (HOMEBREW_LIBRARY/"PinnedKegs/newname").realpath
|
||||
assert_equal @new_keg_record.realpath, (HOMEBREW_PINNED_KEGS/"newname").realpath
|
||||
assert_equal @new_f.path.to_s, Tab.for_keg(@new_keg_record).source["path"]
|
||||
end
|
||||
|
||||
@ -234,9 +234,9 @@ class MigratorTests < Homebrew::TestCase
|
||||
def check_after_backup
|
||||
assert_predicate @old_keg_record.parent, :directory?
|
||||
refute_predicate @old_keg_record.parent.subdirs, :empty?
|
||||
assert_predicate HOMEBREW_LIBRARY/"LinkedKegs/oldname", :exist?
|
||||
assert_predicate HOMEBREW_LINKED_KEGS/"oldname", :exist?
|
||||
assert_predicate HOMEBREW_PREFIX/"opt/oldname", :exist?
|
||||
assert_predicate HOMEBREW_LIBRARY/"PinnedKegs/oldname", :symlink?
|
||||
assert_predicate HOMEBREW_PINNED_KEGS/"oldname", :symlink?
|
||||
assert_predicate @keg, :linked?
|
||||
end
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user