From d121bcdadae49e570de0a4fcf4c71499c5f2c846 Mon Sep 17 00:00:00 2001 From: Misty De Meo Date: Sun, 22 Jan 2012 22:32:15 -0600 Subject: Add `devel` to the DSL, + stable and bottle blocks This commit adds a `devel` entry to the DSL, allowing formulae to specify an unstable branch. `devel` takes a block, which should contain standard `url` and `md5` fields (and `version`, if necessary). This must come after the standard DSL fields. This commit also migrates over all formulae currently using `devel` to the new syntax, as well as formulae which used `head` for non-VCS urls. The new syntax is also available for `stable` and `bottle`. `stable` is an option alongside the old syntax. `bottle` replaces the old syntax. Note that the @stable ivar in Formula has been renamed to @standard, and the @bottle ivar has been renamed to @bottle_url. Closes Homebrew/homebrew#9735. Signed-off-by: Misty De Meo --- Library/Homebrew/cmd/audit.rb | 8 +++++++- Library/Homebrew/cmd/install.rb | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'Library/Homebrew/cmd') diff --git a/Library/Homebrew/cmd/audit.rb b/Library/Homebrew/cmd/audit.rb index e980466da..5f4af55a2 100755 --- a/Library/Homebrew/cmd/audit.rb +++ b/Library/Homebrew/cmd/audit.rb @@ -290,7 +290,7 @@ module Homebrew extend self ff.each do |f| problems = [] - if f.unstable and f.stable.nil? + if f.unstable and f.standard.nil? problems += [' * head-only formula'] end @@ -314,6 +314,12 @@ module Homebrew extend self problems += [' * invalid or missing version'] if f.version.to_s.empty? + problems << " * 'devel' block found before stable 'url'" if text =~ /devel.+(url '.+').+(url '.+')/m + + problems << " * 'devel' block found before 'head'" if text =~ /devel.+(head '.+')/m + + problems << " * Empty 'devel' block found" if text =~ /devel do\s+end/ + # Don't try remaining audits on text in __END__ text_without_patch = (text.split("__END__")[0]).strip() diff --git a/Library/Homebrew/cmd/install.rb b/Library/Homebrew/cmd/install.rb index 735db6107..779482b7c 100644 --- a/Library/Homebrew/cmd/install.rb +++ b/Library/Homebrew/cmd/install.rb @@ -89,7 +89,7 @@ module Homebrew extend self next if f.installed? unless ARGV.force? # Building head-only without --HEAD is an error - if not ARGV.build_head? and f.stable.nil? + if not ARGV.build_head? and f.standard.nil? raise "This is a head-only formula; install with `brew install --HEAD #{f.name}`" end -- cgit v1.2.3