buildr-as3 0.2.19 → 0.2.20.pre

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/.rspec ADDED
@@ -0,0 +1 @@
1
+ --color
data/Gemfile CHANGED
@@ -10,5 +10,9 @@ group :development do
10
10
  gem "bundler", "~> 1.0.0"
11
11
  gem "jeweler", "~> 1.5.2"
12
12
  gem "buildr", "~> 1.4.6"
13
- gem "rcov", ">= 0"
13
+ #gem "rcov", ">= 0"
14
+ gem "simplecov", :require => false
15
+ gem "simplecov-rcov", :require => false
16
+ gem "rspec", "~> 2.1.0"
17
+ gem "ci_reporter", "~> 1.6.5"
14
18
  end
data/Rakefile CHANGED
@@ -10,6 +10,7 @@ end
10
10
  require 'rake'
11
11
 
12
12
  require 'jeweler'
13
+ require File.dirname(__FILE__)+"/rake/jeweler_prerelease_tasks"
13
14
  Jeweler::Tasks.new do |gem|
14
15
  gem.name = "buildr-as3"
15
16
  gem.homepage = "http://github.com/devboy/buildr_as3"
@@ -21,22 +22,29 @@ Jeweler::Tasks.new do |gem|
21
22
  gem.add_runtime_dependency("buildr",">=1.4.5")
22
23
  end
23
24
  Jeweler::RubygemsDotOrgTasks.new
25
+ Jeweler::PrereleaseTasks.new
24
26
 
25
- require 'rake/testtask'
26
- Rake::TestTask.new(:test) do |test|
27
- test.libs << 'lib' << 'test'
28
- test.pattern = 'test/**/test_*.rb'
29
- test.verbose = true
27
+ task :prerelease => 'rubygems:release'
28
+
29
+ require 'rspec/core'
30
+ require 'rspec/core/rake_task'
31
+ require 'ci/reporter/rake/rspec'
32
+
33
+ ENV["CI_REPORTS"] ||= File.expand_path( File.join( File.dirname(__FILE__), "test", "report" ) )
34
+ RSpec::Core::RakeTask.new(:spec) do |spec|
35
+ spec.pattern = FileList['spec/**/*_spec.rb']
30
36
  end
31
37
 
32
- require 'rcov/rcovtask'
33
- Rcov::RcovTask.new do |test|
34
- test.libs << 'test'
35
- test.pattern = 'test/**/test_*.rb'
36
- test.verbose = true
38
+ task :spec => "ci:setup:rspec"
39
+
40
+ RSpec::Core::RakeTask.new(:rcov) do |spec|
41
+ spec.pattern = 'spec/**/*_spec.rb'
42
+ spec.rcov = true
37
43
  end
38
44
 
39
- task :default => :test
45
+ task :test => :spec
46
+ task :default => :spec
47
+
40
48
 
41
49
  require 'rake/rdoctask'
42
50
  Rake::RDocTask.new do |rdoc|
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.19
1
+ 0.2.20.pre
data/buildr-as3.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{buildr-as3}
8
- s.version = "0.2.19"
8
+ s.version = "0.2.20.pre"
9
9
 
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
10
+ s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Dominic Graefen"]
12
- s.date = %q{2011-07-26}
12
+ s.date = %q{2011-09-24}
13
13
  s.default_executable = %q{buildr-as3}
14
14
  s.description = %q{Build like you code - now supporting ActionScript 3 & Flex}
15
15
  s.email = %q{dominic @nospam@ devboy.org}
@@ -20,6 +20,7 @@ Gem::Specification.new do |s|
20
20
  ]
21
21
  s.files = [
22
22
  ".document",
23
+ ".rspec",
23
24
  "Gemfile",
24
25
  "LICENSE.txt",
25
26
  "README.rdoc",
@@ -53,8 +54,18 @@ Gem::Specification.new do |s|
53
54
  "lib/buildr/as3/toolkits/apparat.rb",
54
55
  "lib/buildr/as3/toolkits/base.rb",
55
56
  "lib/buildr/as3/toolkits/flexsdk.rb",
56
- "test/helper.rb",
57
- "test/test_buildr_as3.rb"
57
+ "rake/jeweler.rb",
58
+ "rake/jeweler_prerelease_tasks.rb",
59
+ "rake/pre_release_gemspec.rb",
60
+ "rake/pre_release_to_git.rb",
61
+ "spec/as3/compiler/aircompc_spec.rb",
62
+ "spec/as3/compiler/airmxmlc_spec.rb",
63
+ "spec/as3/compiler/compc_spec.rb",
64
+ "spec/as3/compiler/mxmlc_spec.rb",
65
+ "spec/as3/compiler/task_spec.rb",
66
+ "spec/as3/project_spec.rb",
67
+ "spec/sandbox.rb",
68
+ "spec/spec_helper.rb"
58
69
  ]
59
70
  s.homepage = %q{http://github.com/devboy/buildr_as3}
60
71
  s.licenses = ["MIT"]
@@ -62,8 +73,14 @@ Gem::Specification.new do |s|
62
73
  s.rubygems_version = %q{1.6.2}
63
74
  s.summary = %q{Buildr extension to allow ActionScript3/Flex development.}
64
75
  s.test_files = [
65
- "test/helper.rb",
66
- "test/test_buildr_as3.rb"
76
+ "spec/as3/compiler/aircompc_spec.rb",
77
+ "spec/as3/compiler/airmxmlc_spec.rb",
78
+ "spec/as3/compiler/compc_spec.rb",
79
+ "spec/as3/compiler/mxmlc_spec.rb",
80
+ "spec/as3/compiler/task_spec.rb",
81
+ "spec/as3/project_spec.rb",
82
+ "spec/sandbox.rb",
83
+ "spec/spec_helper.rb"
67
84
  ]
68
85
 
69
86
  if s.respond_to? :specification_version then
@@ -74,14 +91,20 @@ Gem::Specification.new do |s|
74
91
  s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
75
92
  s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
76
93
  s.add_development_dependency(%q<buildr>, ["~> 1.4.6"])
77
- s.add_development_dependency(%q<rcov>, [">= 0"])
94
+ s.add_development_dependency(%q<simplecov>, [">= 0"])
95
+ s.add_development_dependency(%q<simplecov-rcov>, [">= 0"])
96
+ s.add_development_dependency(%q<rspec>, ["~> 2.1.0"])
97
+ s.add_development_dependency(%q<ci_reporter>, ["~> 1.6.5"])
78
98
  s.add_runtime_dependency(%q<buildr>, [">= 1.4.5"])
79
99
  else
80
100
  s.add_dependency(%q<shoulda>, [">= 0"])
81
101
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
82
102
  s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
83
103
  s.add_dependency(%q<buildr>, ["~> 1.4.6"])
84
- s.add_dependency(%q<rcov>, [">= 0"])
104
+ s.add_dependency(%q<simplecov>, [">= 0"])
105
+ s.add_dependency(%q<simplecov-rcov>, [">= 0"])
106
+ s.add_dependency(%q<rspec>, ["~> 2.1.0"])
107
+ s.add_dependency(%q<ci_reporter>, ["~> 1.6.5"])
85
108
  s.add_dependency(%q<buildr>, [">= 1.4.5"])
86
109
  end
87
110
  else
@@ -89,7 +112,10 @@ Gem::Specification.new do |s|
89
112
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
90
113
  s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
91
114
  s.add_dependency(%q<buildr>, ["~> 1.4.6"])
92
- s.add_dependency(%q<rcov>, [">= 0"])
115
+ s.add_dependency(%q<simplecov>, [">= 0"])
116
+ s.add_dependency(%q<simplecov-rcov>, [">= 0"])
117
+ s.add_dependency(%q<rspec>, ["~> 2.1.0"])
118
+ s.add_dependency(%q<ci_reporter>, ["~> 1.6.5"])
93
119
  s.add_dependency(%q<buildr>, [">= 1.4.5"])
94
120
  end
95
121
  end
@@ -29,4 +29,6 @@ require "#{File.dirname(__FILE__)}/compiler/aircompc"
29
29
  Buildr::Compiler << Buildr::AS3::Compiler::Mxmlc
30
30
  Buildr::Compiler << Buildr::AS3::Compiler::Compc
31
31
  Buildr::Compiler << Buildr::AS3::Compiler::AirMxmlc
32
- Buildr::Compiler << Buildr::AS3::Compiler::AirCompc
32
+ Buildr::Compiler << Buildr::AS3::Compiler::AirCompc
33
+
34
+ require "#{File.dirname(__FILE__)}/compiler/task"
@@ -42,10 +42,12 @@ module Buildr
42
42
  :target => "bin", :target_ext => "swc",
43
43
  :packaging => :swc
44
44
 
45
- def compile(sources, target, dependencies) #:nodoc:
46
- @air = true
47
- super
45
+ private
46
+
47
+ def air
48
+ true
48
49
  end
50
+
49
51
  end
50
52
  end
51
53
  end
@@ -44,10 +44,12 @@ module Buildr
44
44
  :target => "bin", :target_ext => "swf",
45
45
  :packaging => :swf
46
46
 
47
- def compile(sources, target, dependencies) #:nodoc:
48
- @air = true
49
- super
47
+ private
48
+
49
+ def air
50
+ true
50
51
  end
52
+
51
53
  end
52
54
  end
53
55
  end
@@ -28,7 +28,7 @@ module Buildr
28
28
  module Compiler
29
29
  class FlexCompilerBase < Buildr::Compiler::Base #:nodoc:
30
30
 
31
- COMPILE_OPTIONS = [:warnings, :debug, :other, :flexsdk, :apparat]
31
+ COMPILE_OPTIONS = [:warnings, :debug, :other, :flexsdk, :apparat, :output]
32
32
 
33
33
  def initialize(project, options) #:nodoc:
34
34
  super
@@ -40,19 +40,7 @@ module Buildr
40
40
  check_options options, COMPILE_OPTIONS
41
41
  flex_sdk = options[:flexsdk].invoke
42
42
  output = @project.get_as3_output( is_test(sources,target,dependencies) )
43
- cmd_args = []
44
- cmd_args << "-jar" << @compiler_jar
45
- cmd_args << "+flexlib" << "#{flex_sdk.home}/frameworks"
46
- cmd_args << "-output" << output
47
- cmd_args << "+configname=air" if @air
48
- cmd_args << @main unless @main.nil?
49
- cmd_args << "-define+=CONFIG::debug,#{options[:debug]}"
50
- cmd_args << "-define+=CONFIG::environment,\"#{Buildr.environment}\""
51
- cmd_args << "-load-config" << flex_sdk.flex_config unless @air
52
- cmd_args << "-load-config" << flex_sdk.air_config if @air
53
- cmd_args += generate_source_args sources
54
- cmd_args += generate_dependency_args dependencies
55
- cmd_args += flex_compiler_args
43
+ cmd_args = compiler_args(dependencies, flex_sdk, output, sources)
56
44
  unless Buildr.application.options.dryrun
57
45
  trace(cmd_args.join(' '))
58
46
  Java::Commands.java cmd_args
@@ -71,6 +59,23 @@ module Buildr
71
59
 
72
60
  private
73
61
 
62
+ def compiler_args(dependencies, flex_sdk, output, sources)
63
+ cmd_args = []
64
+ cmd_args << "-jar" << compiler_jar
65
+ cmd_args << "+flexlib" << "#{flex_sdk.home}/frameworks"
66
+ cmd_args << "-output" << output
67
+ cmd_args << "+configname=air" if air
68
+ cmd_args << @main unless @main.nil?
69
+ cmd_args << "-define+=CONFIG::debug,#{options[:debug]}"
70
+ cmd_args << "-define+=CONFIG::environment,\"#{Buildr.environment}\""
71
+ cmd_args << "-load-config" << flex_sdk.flex_config unless air
72
+ cmd_args << "-load-config" << flex_sdk.air_config if air
73
+ cmd_args += generate_source_args sources
74
+ cmd_args += generate_dependency_args dependencies
75
+ cmd_args += flex_compiler_args
76
+ cmd_args
77
+ end
78
+
74
79
  def flex_compiler_args #:nodoc:
75
80
  args = []
76
81
  args << '-warnings=false' unless options[:warnings]
@@ -40,12 +40,19 @@ module Buildr
40
40
  :packaging => :swc
41
41
 
42
42
  def compile(sources, target, dependencies) #:nodoc:
43
- @compiler_jar = options[:flexsdk].compc_jar
44
43
  super
45
44
  end
46
45
 
47
46
  private
48
47
 
48
+ def compiler_jar
49
+ options[:flexsdk].compc_jar
50
+ end
51
+
52
+ def air
53
+ false
54
+ end
55
+
49
56
  def generate_source_args(sources) #:nodoc:
50
57
  source_args = []
51
58
  sources.each { |source|
@@ -57,7 +64,9 @@ module Buildr
57
64
 
58
65
  def generate_dependency_args(dependencies) #:nodoc:
59
66
  dependency_args = []
60
- dependencies.each { |source| dependency_args << "-library-path+=#{source}" }
67
+ dependencies[:library].each { |source| dependency_args << "-library-path+=#{source}" }
68
+ dependencies[:external].each { |source| dependency_args << "-external-library-path+=#{source}" }
69
+ dependencies[:include].each { |source| dependency_args << "-include-libraries+=#{source}" }
61
70
  dependency_args
62
71
  end
63
72
 
@@ -47,7 +47,6 @@ module Buildr
47
47
  :packaging => :swf
48
48
 
49
49
  def compile(sources, target, dependencies) #:nodoc:
50
- @compiler_jar = options[:flexsdk].mxmlc_jar
51
50
  COMPILE_OPTIONS << :main
52
51
  @main = options[:main]
53
52
  super
@@ -55,6 +54,14 @@ module Buildr
55
54
 
56
55
  private
57
56
 
57
+ def compiler_jar
58
+ options[:flexsdk].mxmlc_jar
59
+ end
60
+
61
+ def air
62
+ false
63
+ end
64
+
58
65
  def generate_source_args(sources) #:nodoc:
59
66
  source_args = []
60
67
  sources.each { |source| source_args << "-source-path+=#{source}" }
@@ -63,7 +70,9 @@ module Buildr
63
70
 
64
71
  def generate_dependency_args(dependencies) #:nodoc:
65
72
  dependency_args = []
66
- dependencies.each { |source| dependency_args << "-library-path+=#{source}" }
73
+ dependencies[:library].each { |source| dependency_args << "-library-path+=#{source}" }
74
+ dependencies[:external].each { |source| dependency_args << "-external-library-path+=#{source}" }
75
+ dependencies[:include].each { |source| dependency_args << "-include-libraries+=#{source}" }
67
76
  dependency_args
68
77
  end
69
78
 
@@ -20,4 +20,35 @@
20
20
  # THE SOFTWARE.
21
21
  #
22
22
 
23
- # Let's enhance the CompileTask here!
23
+ # Let's enhance the CompileTask here!
24
+
25
+ require "buildr/core/compile"
26
+
27
+ class Buildr::CompileTask
28
+
29
+ attr_accessor :as3_dependencies
30
+
31
+ def with(*specs)
32
+
33
+ @as3_dependencies ||= {}
34
+ @as3_dependencies[:library] ||= FileList[]
35
+ @as3_dependencies[:external] ||= FileList[]
36
+ @as3_dependencies[:include] ||= FileList[]
37
+
38
+ specs.each do |spec|
39
+ case spec
40
+ when Hash
41
+ spec.each{ |key,value|
42
+ raise "key needs to be :library, :external or :include" unless [:library, :external, :include].include? key
43
+ @as3_dependencies[key] |= Buildr.artifacts(value).uniq
44
+ @dependencies |= Buildr.artifacts(value).uniq
45
+ }
46
+ else
47
+ @as3_dependencies[:library] |= Buildr.artifacts(spec).uniq
48
+ @dependencies |= Buildr.artifacts(spec).uniq
49
+ end
50
+ end
51
+ self
52
+ end
53
+
54
+ end
@@ -65,7 +65,7 @@ module Buildr
65
65
  if File.dirname(item) == source
66
66
  candidates << File.basename(item, '.*')
67
67
  else
68
- candidates << File.dirname(item).gsub!(source+"/", "").gsub!("/", ".")+"."+File.basename(item, '.*')
68
+ candidates << "#{File.dirname(item).gsub!(source+"/", "").gsub!("/", ".")}.#{File.basename(item, '.*')}"
69
69
  end
70
70
  }
71
71
  end
@@ -60,6 +60,26 @@ module Buildr
60
60
  self
61
61
  end
62
62
 
63
+ def copy_locale(locale,opts={})
64
+ opts = {:force => false, :based_on => "en_US"}.merge opts
65
+
66
+ return if !opts[:force] && File.directory?("#{@home}/frameworks/projects/framework/bundles/#{locale}")
67
+
68
+ # gotta download it
69
+ invoke
70
+
71
+ cmd_args = []
72
+ cmd_args << "-Dsun.io.useCanonCaches=false"
73
+ cmd_args << "-Dapplication.home=#{@home}"
74
+ cmd_args << "-jar" << @copylocale_jar
75
+ cmd_args << opts[:based_on]
76
+ cmd_args << locale
77
+ unless Buildr.application.options.dryrun
78
+ trace(cmd_args.join(' '))
79
+ Java::Commands.java cmd_args
80
+ end
81
+
82
+ end
63
83
  private
64
84
 
65
85
  def generate_url_from_version(version)
@@ -71,6 +91,7 @@ module Buildr
71
91
 
72
92
  def generate_paths(home_dir)
73
93
  @home = home_dir
94
+ @copylocale_jar = "#{@home}/lib/copylocale.jar"
74
95
  @mxmlc_jar = "#{@home}/lib/mxmlc.jar"
75
96
  @compc_jar = "#{@home}/lib/compc.jar"
76
97
  @asdoc_jar = "#{@home}/lib/asdoc.jar"
data/rake/jeweler.rb ADDED
@@ -0,0 +1,17 @@
1
+ class Jeweler
2
+ require File.dirname(__FILE__)+'/pre_release_to_git'
3
+ require File.dirname(__FILE__)+'/pre_release_gemspec'
4
+
5
+ def prerelease_to_git
6
+ Jeweler::Commands::PreReleaseToGit.build_for(self).run
7
+ end
8
+
9
+ def prerelease_gemspec
10
+ Jeweler::Commands::PreReleaseGemspec.build_for(self).run
11
+ end
12
+
13
+ def is_prerelease_version?
14
+ version.end_with? ".pre"
15
+ end
16
+
17
+ end
@@ -0,0 +1,50 @@
1
+ require 'rake'
2
+ require 'rake/tasklib'
3
+ require File.dirname(__FILE__)+"/jeweler"
4
+
5
+ class Jeweler
6
+ class PrereleaseTasks < Rake::TaskLib
7
+ attr_accessor :jeweler
8
+
9
+ def initialize
10
+ yield self if block_given?
11
+
12
+ define
13
+ end
14
+
15
+ def jeweler
16
+ @jeweler ||= Rake.application.jeweler
17
+ end
18
+
19
+ def define
20
+ namespace :git do
21
+ desc "Tag and push prerelease to git. (happens by default with `rake prerelease`)"
22
+ task :prerelease do
23
+ jeweler.prerelease_to_git
24
+ end
25
+ end
26
+
27
+ namespace :gemspec do
28
+ desc "Regenerate and validate gemspec, and then commits and pushes to git on develop branch"
29
+ task :prerelease do
30
+ jeweler.prerelease_gemspec
31
+ end
32
+ end
33
+
34
+ desc "Verifies that it is a prerelease version."
35
+ task :is_prerelease_version => :version_required do
36
+ abort "it's not a prerelease version" unless jeweler.is_prerelease_version?
37
+ end
38
+
39
+ namespace :rubygems do
40
+ desc "Release gem to Gemcutter"
41
+ task :release => [:gemspec, :build] do
42
+ jeweler.release_gem_to_rubygems
43
+ end
44
+ end
45
+
46
+ desc "Make a prerelease to rubygems."
47
+ task :prerelease => [:is_prerelease_version, 'gemspec:prerelease', 'git:prerelease', 'rubygems:release']
48
+ end
49
+ end
50
+ end