You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildr.apache.org by do...@apache.org on 2016/03/15 09:46:17 UTC

[1/2] buildr git commit: Support the :no_invoke parameter being passed to Buildr.project() and Buildr.projects() to avoid attempting to call invoke when retrieving the projects.

Repository: buildr
Updated Branches:
  refs/heads/master e2f98fa03 -> e6c0c1b04


Support the :no_invoke parameter being passed to Buildr.project() and Buildr.projects() to avoid attempting to call invoke when retrieving the projects.


Project: http://git-wip-us.apache.org/repos/asf/buildr/repo
Commit: http://git-wip-us.apache.org/repos/asf/buildr/commit/0fbb397e
Tree: http://git-wip-us.apache.org/repos/asf/buildr/tree/0fbb397e
Diff: http://git-wip-us.apache.org/repos/asf/buildr/diff/0fbb397e

Branch: refs/heads/master
Commit: 0fbb397ec1bafcad97a57ab2040e393d73d6c3d4
Parents: 9419f24
Author: Peter Donald <pe...@realityforge.org>
Authored: Tue Mar 15 12:00:38 2016 +1100
Committer: Peter Donald <pe...@realityforge.org>
Committed: Tue Mar 15 12:00:38 2016 +1100

----------------------------------------------------------------------
 CHANGELOG                  |  2 ++
 lib/buildr/core/project.rb | 25 +++++++++++++++----------
 2 files changed, 17 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/buildr/blob/0fbb397e/CHANGELOG
----------------------------------------------------------------------
diff --git a/CHANGELOG b/CHANGELOG
index f2d1b87..f321e9d 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,4 +1,6 @@
 1.4.24 (Pending)
+* Added:  Support the :no_invoke parameter being passed to Buildr.project() and
+          Buildr.projects() to avoid attempting to call invoke when retrieving the projects.
 * Added:  Add `exclude_paths` setting to pmd addon to allow paths to be explicitly excluded.
 * Fixed:  Update jDepend addon to ensure target directories are invoked prior to attempting
           to analyze directories.

http://git-wip-us.apache.org/repos/asf/buildr/blob/0fbb397e/lib/buildr/core/project.rb
----------------------------------------------------------------------
diff --git a/lib/buildr/core/project.rb b/lib/buildr/core/project.rb
index e3e995a..9dc1953 100644
--- a/lib/buildr/core/project.rb
+++ b/lib/buildr/core/project.rb
@@ -234,7 +234,9 @@ module Buildr #:nodoc:
       def project(*args, &block) #:nodoc:
         options = args.pop if Hash === args.last
         return define(args.first, options, &block) if block
-        rake_check_options options, :scope if options
+        rake_check_options options, :scope, :no_invoke if options
+        no_invoke = options && options[:no_invoke]
+
         raise ArgumentError, 'Only one project name at a time' unless args.size == 1
         @projects ||= {}
         name = args.first.to_s
@@ -251,7 +253,7 @@ module Buildr #:nodoc:
         end
         project ||= @projects[name] # Not found in scope.
         raise "No such project #{name}" unless project
-        project.invoke unless Buildr.application.current_scope.join(":").to_s == project.name.to_s
+        project.invoke unless no_invoke || Buildr.application.current_scope.join(":").to_s == project.name.to_s
         project
       end
 
@@ -261,26 +263,29 @@ module Buildr #:nodoc:
       # See Buildr#projects.
       def projects(*names) #:nodoc:
         options = names.pop if Hash === names.last
-        rake_check_options options, :scope if options
+        rake_check_options options, :scope, :no_invoke if options
+
+        no_invoke = options && options[:no_invoke]
+
         @projects ||= {}
         names = names.flatten
         if options && options[:scope]
           # We assume parent project is evaluated.
           if names.empty?
             parent = @projects[options[:scope].to_s] or raise "No such project #{options[:scope]}"
-            @projects.values.select { |project| project.parent == parent }.each { |project| project.invoke }.
-              map { |project| [project] + projects(:scope=>project) }.flatten.sort_by(&:name)
+            @projects.values.select { |project| project.parent == parent }.each { |project| project.invoke unless no_invoke }.
+              map { |project| [project] + projects(:scope => project, :no_invoke => no_invoke) }.flatten.sort_by(&:name)
           else
-            names.uniq.map { |name| project(name, :scope=>options[:scope]) }
+            names.uniq.map { |name| project(name, :scope => options[:scope], :no_invoke => no_invoke) }
           end
         elsif names.empty?
           # Parent project(s) not evaluated so we don't know all the projects yet.
-          @projects.values.each(&:invoke)
-          @projects.keys.map { |name| project(name) or raise "No such project #{name}" }.sort_by(&:name)
+          @projects.values.each { |project| project.invoke unless no_invoke }
+          @projects.keys.map { |name| project(name, :no_invoke => no_invoke) or raise "No such project #{name}" }.sort_by(&:name)
         else
           # Parent project(s) not evaluated, for the sub-projects we may need to find.
-          names.map { |name| name.split(':') }.select { |name| name.size > 1 }.map(&:first).uniq.each { |name| project(name) }
-          names.uniq.map { |name| project(name) or raise "No such project #{name}" }.sort_by(&:name)
+          names.map { |name| name.split(':') }.select { |name| name.size > 1 }.map(&:first).uniq.each { |name| project(name, :no_invoke => no_invoke) }
+          names.uniq.map { |name| project(name, :no_invoke => no_invoke) or raise "No such project #{name}" }.sort_by(&:name)
         end
       end
 


[2/2] buildr git commit: Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/buildr

Posted by do...@apache.org.
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/buildr


Project: http://git-wip-us.apache.org/repos/asf/buildr/repo
Commit: http://git-wip-us.apache.org/repos/asf/buildr/commit/e6c0c1b0
Tree: http://git-wip-us.apache.org/repos/asf/buildr/tree/e6c0c1b0
Diff: http://git-wip-us.apache.org/repos/asf/buildr/diff/e6c0c1b0

Branch: refs/heads/master
Commit: e6c0c1b0493cd725aaa9f233baa22ff354c45488
Parents: 0fbb397 e2f98fa
Author: Peter Donald <pe...@realityforge.org>
Authored: Tue Mar 15 19:46:08 2016 +1100
Committer: Peter Donald <pe...@realityforge.org>
Committed: Tue Mar 15 19:46:08 2016 +1100

----------------------------------------------------------------------
 etc/KEYS | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)
----------------------------------------------------------------------