--- a/rakelib/extensions.rb Thu Oct 08 10:59:53 2020 +0100
+++ b/rakelib/extensions.rb Wed Nov 04 11:39:12 2020 +0000
@@ -51,10 +51,8 @@
rake_extension('warn') do
def warn(message, details = nil)
- unless VERBOSE.nil?
- $stderr.puts "[WARN] #{message}"
- $stderr.puts " #{details}" if details
- end
+ $stderr.puts "[WARN] #{message}"
+ $stderr.puts " #{details}" if details
end
end
--- a/rakelib/setup.rake Thu Oct 08 10:59:53 2020 +0100
+++ b/rakelib/setup.rake Wed Nov 04 11:39:12 2020 +0000
@@ -162,10 +162,27 @@
task :'setup:dependencies' => :checkout do
project.packages.each do |pkg|
+ all = project.packages.collect { | pkg | pkg.name }
if pkg.name == 'stx:stc' or pkg.name == 'stx:librun' or File.exist? (BUILD_DIR / pkg.directory / pkg.project_definition_file_name)
unless pkg.test_package?
+ prereqs_reqd = pkg.prereqs(mandatory: true)
+ prereqs_refd = pkg.prereqs(referenced: true)
+
+ # Now, check that all mandatory and required packages are defined.
+ # This is merely a check to make sure we have all the code ready.
+ prereqs_reqd.each do | dep |
+ if not all.include? dep then
+ error("Package #{pkg.name} requires #{dep} but it is not defined in spec!")
+ end
+ end
+ prereqs_refd.each do | dep |
+ if not all.include? dep then
+ warn("Package #{pkg.name} references #{dep} but it is not defined in spec!")
+ end
+ end
+
task "#{project.application.name}:dependencies" => pkg.name
- task "#{pkg.name}:dependencies" => pkg.prereqs(mandatory: true)
+ task "#{pkg.name}:dependencies" => prereqs_reqd
end
end
end
--- a/rakelib/workflow.rake Thu Oct 08 10:59:53 2020 +0100
+++ b/rakelib/workflow.rake Wed Nov 04 11:39:12 2020 +0000
@@ -94,19 +94,19 @@
task :'push-upstream' => :'setup'
- desc 'Display changes to be pushed to staging repositores (use it to review what workflow:push-staging would do)'
- task :'out-staging', :user, :pass do |t, args|
+ desc 'Display changes to be pushed (use it to review what workflow:push would do)'
+ task :'out', :user, :pass do |t, args|
RakeFileUtils.verbose(false) do
- has_changes = push('staging', args[:user], args[:pass], true, true)
+ has_changes = push('default', args[:user], args[:pass], true, true)
puts 'No changes to be pushed to staging repositories' unless has_changes
exit(has_changes ? 0 : 1 )
end
end
task :'out-staging' => :'setup'
- desc 'Push currently checked out revisions to staging repositories (to be by developer to test her changes)'
- task :'push-staging', :user, :pass do |t, args|
- push('staging', args[:user], args[:pass], false, true)
+ desc 'Push currently checked out revisions (to be used by developer to test her changes)'
+ task :'push', :user, :pass do |t, args|
+ push('default', args[:user], args[:pass], false, true)
end
task :'push-staging' => :'setup'
--- a/specs/baseline.rbspec Thu Oct 08 10:59:53 2020 +0100
+++ b/specs/baseline.rbspec Wed Nov 04 11:39:12 2020 +0000
@@ -29,7 +29,6 @@
package "stx:goodies/refactoryBrowser/lint"
package "stx:goodies/refactoryBrowser/browser"
package "stx:libtool2"
- package "stx:goodies/libdbase" if not win32?
package "stx:goodies/fileformats/plist"
application 'stx:projects/smalltalk'
--- a/specs/stx-jv.rbspec Thu Oct 08 10:59:53 2020 +0100
+++ b/specs/stx-jv.rbspec Wed Nov 04 11:39:12 2020 +0000
@@ -187,13 +187,20 @@
package "stx:libjava/experiments"
#package "stx:libjava/examples" :link => false
- # VDB
+ # VDB support
package 'stx:goodies/magritte', :repository => :'exept:public', :link => false
package 'stx:goodies/announcements', :repository => :'exept:public'
- package 'jv:libgdbs', :repository => :'jv-branch:public', :link => false
- package 'jv:libgdbs/tests', :repository => :'jv-branch:public', :link => false
- package 'jv:vdb', :repository => :'jv-branch:public', :link => false
- package 'jv:vdb/plugins/bee', :repository => :'jv-branch:public', :link => false
+
+ # VDB itself.
+ #
+ # We no longer ship VDB as part of St/X - few people used it and those who did/will
+ # are also those who may want to develop it. So, to make use-and-improve story
+ # simpler, let them to check it out manually.
+ #
+ #package 'jv:libgdbs', :repository => :'jv-branch:public', :link => false
+ #package 'jv:libgdbs/tests', :repository => :'jv-branch:public', :link => false
+ #package 'jv:vdb', :repository => :'jv-branch:public', :link => false
+ #package 'jv:vdb/plugins/bee', :repository => :'jv-branch:public', :link => false
# Smalltalk/X IDE