spade 0.1.0 → 0.1.1.1
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/.gitignore +0 -11
- data/.gitmodules +3 -6
- data/Gemfile +10 -0
- data/bin/spade +3 -1
- data/lib/spade.rb +70 -0
- data/lib/spade/bundle.rb +180 -0
- data/lib/spade/cli.rb +1 -17
- data/lib/spade/cli/base.rb +182 -0
- data/lib/spade/console.rb +39 -0
- data/lib/spade/context.rb +107 -0
- data/lib/spade/evaluator.rb +34 -0
- data/lib/spade/exports.rb +70 -0
- data/lib/spade/loader.rb +208 -0
- data/lib/spade/package/.gitignore +1 -0
- data/lib/spade/package/Gemfile +15 -0
- data/lib/spade/package/lib/spade.js +1283 -0
- data/lib/spade/package/lib/wrapper.js +15 -0
- data/lib/spade/package/package.json +17 -0
- data/lib/spade/package/spec/javascript/async-test.js +123 -0
- data/lib/spade/package/spec/javascript/compiler/javascript.js +13 -0
- data/lib/spade/package/spec/javascript/compiler/ruby.js +14 -0
- data/lib/spade/package/spec/javascript/loader-test.js +64 -0
- data/lib/spade/package/spec/javascript/normalize-test.js +73 -0
- data/lib/spade/package/spec/javascript/packages-test.js +50 -0
- data/lib/spade/package/spec/javascript/relative-require-test.js +72 -0
- data/lib/spade/package/spec/javascript/require-test.js +117 -0
- data/lib/spade/package/spec/javascript/sandbox/creation.js +44 -0
- data/lib/spade/package/spec/javascript/sandbox/evaluate.js +37 -0
- data/lib/spade/package/spec/javascript/sandbox/format.js +79 -0
- data/lib/spade/package/spec/javascript/sandbox/misc.js +58 -0
- data/lib/spade/package/spec/javascript/sandbox/preprocessor.js +81 -0
- data/lib/spade/package/spec/javascript/sandbox/require.js +48 -0
- data/lib/spade/package/spec/javascript/sandbox/run-command.js +21 -0
- data/lib/spade/package/spec/javascript/spade/externs.js +14 -0
- data/lib/spade/package/spec/javascript/spade/load-factory.js +15 -0
- data/lib/spade/package/spec/javascript/spade/misc.js +23 -0
- data/lib/spade/package/spec/javascript/spade/ready.js +12 -0
- data/lib/spade/package/spec/javascript/spade/register.js +13 -0
- data/lib/spade/package/spec/javascript_spec.rb +7 -0
- data/lib/spade/package/spec/spec_helper.rb +3 -0
- data/lib/spade/package/spec/support/core_test.rb +67 -0
- data/lib/spade/reactor.rb +159 -0
- data/lib/spade/server.rb +66 -0
- data/lib/spade/shell.rb +85 -0
- data/lib/spade/version.rb +1 -1
- data/spade.gemspec +15 -4
- data/spec/cli/update_spec.rb +65 -0
- data/spec/spec_helper.rb +22 -0
- data/spec/support/cli.rb +103 -0
- data/spec/support/matchers.rb +12 -0
- data/spec/support/path.rb +66 -0
- metadata +146 -78
- data/.rspec +0 -1
- data/Buildfile +0 -18
- data/README.md +0 -152
- data/Rakefile +0 -9
- data/examples/format-app/lib/hello.coffee +0 -1
- data/examples/format-app/lib/main.js +0 -6
- data/examples/format-app/package.json +0 -10
- data/examples/format-app/resources/README.txt +0 -1
- data/examples/format-app/resources/config.json +0 -3
- data/examples/path-test/lib/hello.js +0 -1
- data/examples/path-test/lib/main.js +0 -1
- data/examples/path-test/package.json +0 -5
- data/examples/sc-app/index.html +0 -13
- data/examples/sc-app/lib/main.js +0 -24
- data/examples/sc-app/package.json +0 -8
- data/examples/single-file.js +0 -22
- data/examples/todos/index.html +0 -11
- data/examples/todos/lib/main.js +0 -11
- data/examples/todos/lib/todos.js +0 -93
- data/examples/todos/package.json +0 -10
- data/examples/todos/resources/stylesheets/todos.css +0 -162
- data/examples/todos/resources/templates/todos.handlebars +0 -31
- data/examples/web-app/README.md +0 -83
- data/examples/web-app/index.html +0 -12
- data/examples/web-app/lib/main.js +0 -3
- data/examples/web-app/package.json +0 -6
- data/examples/web-app/tests.html +0 -12
- data/examples/web-app/tests/ct-example-test.js +0 -39
- data/examples/web-app/tests/qunit-test.js +0 -23
data/lib/spade/version.rb
CHANGED
data/spade.gemspec
CHANGED
@@ -13,14 +13,25 @@ Gem::Specification.new do |s|
|
|
13
13
|
s.homepage = "http://github.com/strobecorp/spade"
|
14
14
|
s.summary = s.description = "Unified JavaScript runner for browser and command line"
|
15
15
|
|
16
|
-
s.add_dependency
|
17
|
-
s.add_dependency
|
16
|
+
s.add_dependency "eventmachine", "~> 0.12.10"
|
17
|
+
s.add_dependency "json_pure", "~> 1.4.6"
|
18
|
+
s.add_dependency "rack", "~> 1.2.1"
|
19
|
+
s.add_dependency "thor", "~> 0.14.3"
|
20
|
+
s.add_dependency "childlabor", "~> 0.0.3"
|
21
|
+
s.add_dependency "therubyracer", "~> 0.9.2"
|
18
22
|
|
19
|
-
s.add_development_dependency
|
23
|
+
s.add_development_dependency "rspec"
|
24
|
+
s.add_development_dependency "bpm"
|
20
25
|
|
21
|
-
|
26
|
+
paths = `git submodule`.split("\n").map do |line|
|
27
|
+
path = line.gsub(/^.\w+\s+(\S+).*/,'\1')
|
28
|
+
`cd #{path}; git ls-files`.split("\n").map { |p| File.join(path, p) }
|
29
|
+
end
|
30
|
+
paths << `git ls-files`.split("\n")
|
31
|
+
s.files = paths.flatten
|
22
32
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
23
33
|
|
24
34
|
s.executables = ['spade']
|
25
35
|
s.require_paths = ["lib"]
|
26
36
|
end
|
37
|
+
|
@@ -0,0 +1,65 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe "spade update" do
|
4
|
+
before do
|
5
|
+
# prep the application
|
6
|
+
goto_home
|
7
|
+
|
8
|
+
FileUtils.mkdir_p (@app_path = tmp.join("update_test"))
|
9
|
+
FileUtils.mkdir_p (@app_packages_path = @app_path.join("packages"))
|
10
|
+
FileUtils.mkdir_p (@app_vendor_packages_path = @app_path.join("vendor/packages"))
|
11
|
+
app_package_file_path = @app_path.join("package.json")
|
12
|
+
File.open(app_package_file_path, 'w') do |f2|
|
13
|
+
f2.puts '{"name":"update_test","dependencies":{"fake_package": null}}'
|
14
|
+
end
|
15
|
+
cd(@app_path)
|
16
|
+
|
17
|
+
end
|
18
|
+
after do
|
19
|
+
cd(home)
|
20
|
+
FileUtils.rm_r @app_path
|
21
|
+
end
|
22
|
+
|
23
|
+
it "should use required packages if they are in the application's packages folder" do
|
24
|
+
FileUtils.mkdir_p (package_path = @app_packages_path.join("fake_package"))
|
25
|
+
package_file_path = package_path.join("package.json")
|
26
|
+
File.open(package_file_path, 'w') do |f|
|
27
|
+
f.puts '{"name": "fake_package"}'
|
28
|
+
end
|
29
|
+
spade("update", "--working=#{@app_path.to_s}")
|
30
|
+
wait()
|
31
|
+
"fake_package".should be_linked_to("../../packages/fake_package")
|
32
|
+
end
|
33
|
+
|
34
|
+
it "should use required packages if they are in the application's vendor/packages folder" do
|
35
|
+
FileUtils.mkdir_p (package_path = @app_vendor_packages_path.join("fake_package"))
|
36
|
+
package_file_path = package_path.join("package.json")
|
37
|
+
File.open(package_file_path, 'w') do |f|
|
38
|
+
f.puts '{"name": "fake_package"}'
|
39
|
+
end
|
40
|
+
spade("update", "--working=#{@app_path.to_s}")
|
41
|
+
wait()
|
42
|
+
"fake_package".should be_linked_to("../../vendor/packages/fake_package")
|
43
|
+
end
|
44
|
+
|
45
|
+
it "should use required packages if they are in the home bpm directory" do
|
46
|
+
FileUtils.mkdir_p (package_path = bpm_dir.join("gems","fake_package"))
|
47
|
+
package_file_path = package_path.join("package.json")
|
48
|
+
File.open(package_file_path, 'w') do |f|
|
49
|
+
f.puts '{"name": "fake_package"}'
|
50
|
+
end
|
51
|
+
unthreaded_spade("update", "--working=#{@app_path.to_s}")
|
52
|
+
"fake_package".should be_linked_to(package_path)
|
53
|
+
end
|
54
|
+
|
55
|
+
it "should not try to choose from the home spade directory if BPM is not installed"
|
56
|
+
it "should install from the network repository if it does not exist elsewhere"
|
57
|
+
it "should raise an error if the package is in none of the locations"
|
58
|
+
it "should not link to a package if it is the incorrect version"
|
59
|
+
it "should not try to install the package if BPM is not installed"
|
60
|
+
it "should install the correct version"
|
61
|
+
it "should raise an error if the package is only available in the wrong version"
|
62
|
+
it "should select packages in the correct order if there are multiple equal editions"
|
63
|
+
it "should create a spade-boot.js"
|
64
|
+
it "should record the versions in spade-boot.js"
|
65
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Bundler.require :default, :development
|
2
|
+
|
3
|
+
require 'support/cli'
|
4
|
+
require 'support/path'
|
5
|
+
require 'support/matchers'
|
6
|
+
|
7
|
+
RSpec.configure do |config|
|
8
|
+
working_dir = Dir.pwd
|
9
|
+
|
10
|
+
config.include SpecHelpers
|
11
|
+
|
12
|
+
config.around do |blk|
|
13
|
+
reset!
|
14
|
+
|
15
|
+
blk.call
|
16
|
+
|
17
|
+
kill!
|
18
|
+
Dir.chdir working_dir if Dir.pwd != working_dir
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
|
data/spec/support/cli.rb
ADDED
@@ -0,0 +1,103 @@
|
|
1
|
+
require 'spade'
|
2
|
+
require 'thor'
|
3
|
+
|
4
|
+
module SpecHelpers
|
5
|
+
attr_reader :stdin, :stdout, :stderr
|
6
|
+
|
7
|
+
def env
|
8
|
+
@env ||= {}
|
9
|
+
end
|
10
|
+
|
11
|
+
def unthreaded_spade(*argv)
|
12
|
+
opts = Hash === argv.last ? argv.pop : {}
|
13
|
+
Spade::CLI::Base.start(argv)
|
14
|
+
end
|
15
|
+
|
16
|
+
def spade(*argv)
|
17
|
+
opts = Hash === argv.last ? argv.pop : {}
|
18
|
+
|
19
|
+
kill!
|
20
|
+
create_pipes
|
21
|
+
|
22
|
+
@pid = Process.fork do
|
23
|
+
Dir.chdir opts[:chdir] if opts[:chdir]
|
24
|
+
|
25
|
+
@stdout.close
|
26
|
+
STDOUT.reopen @stdout_child
|
27
|
+
|
28
|
+
@stdin.close
|
29
|
+
STDIN.reopen @stdin_child
|
30
|
+
|
31
|
+
if opts[:track_stderr]
|
32
|
+
@stderr.close
|
33
|
+
STDERR.reopen @stderr_child
|
34
|
+
end
|
35
|
+
|
36
|
+
env.each do |key, val|
|
37
|
+
ENV[key] = val
|
38
|
+
end
|
39
|
+
|
40
|
+
Spade::CLI::Base.start(argv)
|
41
|
+
end
|
42
|
+
|
43
|
+
@stdout_child.close
|
44
|
+
@stdin_child.close
|
45
|
+
@stderr_child.close
|
46
|
+
@pid
|
47
|
+
end
|
48
|
+
|
49
|
+
def out_until_block(io = stdout)
|
50
|
+
# read 1 first so we wait until the process is done processing the last write
|
51
|
+
chars = io.read(1)
|
52
|
+
|
53
|
+
loop do
|
54
|
+
chars << io.read_nonblock(1000)
|
55
|
+
sleep 0.05
|
56
|
+
end
|
57
|
+
rescue Errno::EAGAIN, EOFError
|
58
|
+
chars
|
59
|
+
end
|
60
|
+
|
61
|
+
def input(line, opts = {})
|
62
|
+
if on = opts[:on]
|
63
|
+
should_block_on on
|
64
|
+
end
|
65
|
+
stdin << "#{line}\n"
|
66
|
+
end
|
67
|
+
|
68
|
+
def wait
|
69
|
+
return unless @pid
|
70
|
+
|
71
|
+
pid, status = Process.wait2(@pid, 0)
|
72
|
+
|
73
|
+
@exit_status = status
|
74
|
+
@pid = nil
|
75
|
+
end
|
76
|
+
|
77
|
+
def exit_status
|
78
|
+
wait
|
79
|
+
@exit_status
|
80
|
+
end
|
81
|
+
|
82
|
+
def kill!
|
83
|
+
Process.kill(9, @pid) if @pid
|
84
|
+
end
|
85
|
+
|
86
|
+
def create_pipes
|
87
|
+
@stdout, @stdout_child = IO.pipe
|
88
|
+
@stdin_child, @stdin = IO.pipe
|
89
|
+
@stderr, @stderr_child = IO.pipe
|
90
|
+
end
|
91
|
+
|
92
|
+
def write_api_key(api_key)
|
93
|
+
write_creds("user@example.com", api_key)
|
94
|
+
end
|
95
|
+
|
96
|
+
def write_creds(email, api_key)
|
97
|
+
FileUtils.mkdir_p(spade_dir)
|
98
|
+
File.open(spade_dir("credentials"), "w") do |file|
|
99
|
+
file.write YAML.dump(:spade_api_key => api_key, :spade_email => email)
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|
103
|
+
|
@@ -0,0 +1,12 @@
|
|
1
|
+
RSpec::Matchers.define :be_linked_to do |package_path|
|
2
|
+
include SpecHelpers
|
3
|
+
match do |package_name|
|
4
|
+
package_link_path = tmp.join("update_test",".spade","packages",package_name)
|
5
|
+
File.readlink(package_link_path).to_s == package_path.to_s
|
6
|
+
end
|
7
|
+
failure_message_for_should do |package_name|
|
8
|
+
package_link_path = tmp.join("update_test",".spade","packages",package_name)
|
9
|
+
"expected that #{package_name} would be linked to #{package_path}, but is linked to #{File.readlink(package_link_path)}"
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
@@ -0,0 +1,66 @@
|
|
1
|
+
module SpecHelpers
|
2
|
+
def reset!
|
3
|
+
FileUtils.rm_rf tmp
|
4
|
+
[ home, local ].each do |dir|
|
5
|
+
FileUtils.mkdir_p(dir)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
def cd(path, &blk)
|
10
|
+
Dir.chdir(path, &blk)
|
11
|
+
end
|
12
|
+
|
13
|
+
def cwd(*args)
|
14
|
+
Pathname.new(Dir.pwd).join(*args)
|
15
|
+
end
|
16
|
+
|
17
|
+
def rm(path)
|
18
|
+
FileUtils.rm path
|
19
|
+
end
|
20
|
+
|
21
|
+
def rm_r(path)
|
22
|
+
FileUtils.rm_r path
|
23
|
+
end
|
24
|
+
|
25
|
+
def rm_rf(path)
|
26
|
+
FileUtils.rm_rf(path)
|
27
|
+
end
|
28
|
+
|
29
|
+
def root
|
30
|
+
@root ||= Pathname.new(File.expand_path("../../..", __FILE__))
|
31
|
+
end
|
32
|
+
|
33
|
+
def fixtures(*path)
|
34
|
+
root.join('spec/fixtures', *path)
|
35
|
+
end
|
36
|
+
|
37
|
+
def tmp(*path)
|
38
|
+
root.join("tmp", *path)
|
39
|
+
end
|
40
|
+
|
41
|
+
def home(*path)
|
42
|
+
tmp.join("home", *path)
|
43
|
+
end
|
44
|
+
|
45
|
+
def local(*path)
|
46
|
+
tmp.join("local", *path)
|
47
|
+
end
|
48
|
+
|
49
|
+
def spade_dir(*path)
|
50
|
+
home(Spade::SPADE_DIR, *path)
|
51
|
+
end
|
52
|
+
|
53
|
+
def bpm_dir(*path)
|
54
|
+
home(BPM::BPM_DIR, *path)
|
55
|
+
end
|
56
|
+
|
57
|
+
def goto_home
|
58
|
+
cd(home)
|
59
|
+
ENV["HOME"] = home.to_s
|
60
|
+
LibGems.clear_paths
|
61
|
+
end
|
62
|
+
|
63
|
+
module_function :root, :tmp, :home, :local
|
64
|
+
end
|
65
|
+
|
66
|
+
|
metadata
CHANGED
@@ -1,124 +1,192 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: spade
|
3
|
-
version: !ruby/object:Gem::Version
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.1.1
|
4
5
|
prerelease:
|
5
|
-
version: 0.1.0
|
6
6
|
platform: ruby
|
7
|
-
authors:
|
7
|
+
authors:
|
8
8
|
- Charles Jolley
|
9
9
|
- Peter Wagenet
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
13
|
+
date: 2011-06-29 00:00:00.000000000Z
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: eventmachine
|
17
|
+
requirement: &2153224260 !ruby/object:Gem::Requirement
|
18
|
+
none: false
|
19
|
+
requirements:
|
20
|
+
- - ~>
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 0.12.10
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: *2153224260
|
26
|
+
- !ruby/object:Gem::Dependency
|
27
|
+
name: json_pure
|
28
|
+
requirement: &2153223720 !ruby/object:Gem::Requirement
|
29
|
+
none: false
|
30
|
+
requirements:
|
31
|
+
- - ~>
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 1.4.6
|
34
|
+
type: :runtime
|
18
35
|
prerelease: false
|
19
|
-
|
36
|
+
version_requirements: *2153223720
|
37
|
+
- !ruby/object:Gem::Dependency
|
38
|
+
name: rack
|
39
|
+
requirement: &2153223140 !ruby/object:Gem::Requirement
|
20
40
|
none: false
|
21
|
-
requirements:
|
41
|
+
requirements:
|
22
42
|
- - ~>
|
23
|
-
- !ruby/object:Gem::Version
|
24
|
-
version:
|
43
|
+
- !ruby/object:Gem::Version
|
44
|
+
version: 1.2.1
|
25
45
|
type: :runtime
|
26
|
-
version_requirements: *id001
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: spade-runtime
|
29
46
|
prerelease: false
|
30
|
-
|
47
|
+
version_requirements: *2153223140
|
48
|
+
- !ruby/object:Gem::Dependency
|
49
|
+
name: thor
|
50
|
+
requirement: &2153222380 !ruby/object:Gem::Requirement
|
31
51
|
none: false
|
32
|
-
requirements:
|
52
|
+
requirements:
|
33
53
|
- - ~>
|
34
|
-
- !ruby/object:Gem::Version
|
35
|
-
version: 0.
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: 0.14.3
|
36
56
|
type: :runtime
|
37
|
-
|
38
|
-
|
57
|
+
prerelease: false
|
58
|
+
version_requirements: *2153222380
|
59
|
+
- !ruby/object:Gem::Dependency
|
60
|
+
name: childlabor
|
61
|
+
requirement: &2153219100 !ruby/object:Gem::Requirement
|
62
|
+
none: false
|
63
|
+
requirements:
|
64
|
+
- - ~>
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: 0.0.3
|
67
|
+
type: :runtime
|
68
|
+
prerelease: false
|
69
|
+
version_requirements: *2153219100
|
70
|
+
- !ruby/object:Gem::Dependency
|
71
|
+
name: therubyracer
|
72
|
+
requirement: &2153218000 !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ~>
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: 0.9.2
|
78
|
+
type: :runtime
|
79
|
+
prerelease: false
|
80
|
+
version_requirements: *2153218000
|
81
|
+
- !ruby/object:Gem::Dependency
|
39
82
|
name: rspec
|
83
|
+
requirement: &2153217460 !ruby/object:Gem::Requirement
|
84
|
+
none: false
|
85
|
+
requirements:
|
86
|
+
- - ! '>='
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: '0'
|
89
|
+
type: :development
|
40
90
|
prerelease: false
|
41
|
-
|
91
|
+
version_requirements: *2153217460
|
92
|
+
- !ruby/object:Gem::Dependency
|
93
|
+
name: bpm
|
94
|
+
requirement: &2153215880 !ruby/object:Gem::Requirement
|
42
95
|
none: false
|
43
|
-
requirements:
|
44
|
-
- -
|
45
|
-
- !ruby/object:Gem::Version
|
46
|
-
version:
|
96
|
+
requirements:
|
97
|
+
- - ! '>='
|
98
|
+
- !ruby/object:Gem::Version
|
99
|
+
version: '0'
|
47
100
|
type: :development
|
48
|
-
|
101
|
+
prerelease: false
|
102
|
+
version_requirements: *2153215880
|
49
103
|
description: Unified JavaScript runner for browser and command line
|
50
|
-
email:
|
104
|
+
email:
|
51
105
|
- charles@sproutcore.com
|
52
106
|
- peterw@strobecorp.com
|
53
|
-
executables:
|
107
|
+
executables:
|
54
108
|
- spade
|
55
109
|
extensions: []
|
56
|
-
|
57
110
|
extra_rdoc_files: []
|
58
|
-
|
59
|
-
|
111
|
+
files:
|
112
|
+
- lib/spade/package/.gitignore
|
113
|
+
- lib/spade/package/Gemfile
|
114
|
+
- lib/spade/package/lib/spade.js
|
115
|
+
- lib/spade/package/lib/wrapper.js
|
116
|
+
- lib/spade/package/package.json
|
117
|
+
- lib/spade/package/spec/javascript/async-test.js
|
118
|
+
- lib/spade/package/spec/javascript/compiler/javascript.js
|
119
|
+
- lib/spade/package/spec/javascript/compiler/ruby.js
|
120
|
+
- lib/spade/package/spec/javascript/loader-test.js
|
121
|
+
- lib/spade/package/spec/javascript/normalize-test.js
|
122
|
+
- lib/spade/package/spec/javascript/packages-test.js
|
123
|
+
- lib/spade/package/spec/javascript/relative-require-test.js
|
124
|
+
- lib/spade/package/spec/javascript/require-test.js
|
125
|
+
- lib/spade/package/spec/javascript/sandbox/creation.js
|
126
|
+
- lib/spade/package/spec/javascript/sandbox/evaluate.js
|
127
|
+
- lib/spade/package/spec/javascript/sandbox/format.js
|
128
|
+
- lib/spade/package/spec/javascript/sandbox/misc.js
|
129
|
+
- lib/spade/package/spec/javascript/sandbox/preprocessor.js
|
130
|
+
- lib/spade/package/spec/javascript/sandbox/require.js
|
131
|
+
- lib/spade/package/spec/javascript/sandbox/run-command.js
|
132
|
+
- lib/spade/package/spec/javascript/spade/externs.js
|
133
|
+
- lib/spade/package/spec/javascript/spade/load-factory.js
|
134
|
+
- lib/spade/package/spec/javascript/spade/misc.js
|
135
|
+
- lib/spade/package/spec/javascript/spade/ready.js
|
136
|
+
- lib/spade/package/spec/javascript/spade/register.js
|
137
|
+
- lib/spade/package/spec/javascript_spec.rb
|
138
|
+
- lib/spade/package/spec/spec_helper.rb
|
139
|
+
- lib/spade/package/spec/support/core_test.rb
|
60
140
|
- .gitignore
|
61
141
|
- .gitmodules
|
62
|
-
-
|
63
|
-
- Buildfile
|
64
|
-
- README.md
|
65
|
-
- Rakefile
|
142
|
+
- Gemfile
|
66
143
|
- bin/spade
|
67
|
-
- examples/format-app/lib/hello.coffee
|
68
|
-
- examples/format-app/lib/main.js
|
69
|
-
- examples/format-app/package.json
|
70
|
-
- examples/format-app/resources/README.txt
|
71
|
-
- examples/format-app/resources/config.json
|
72
|
-
- examples/path-test/lib/hello.js
|
73
|
-
- examples/path-test/lib/main.js
|
74
|
-
- examples/path-test/package.json
|
75
|
-
- examples/sc-app/index.html
|
76
|
-
- examples/sc-app/lib/main.js
|
77
|
-
- examples/sc-app/package.json
|
78
|
-
- examples/single-file.js
|
79
|
-
- examples/todos/index.html
|
80
|
-
- examples/todos/lib/main.js
|
81
|
-
- examples/todos/lib/todos.js
|
82
|
-
- examples/todos/package.json
|
83
|
-
- examples/todos/resources/stylesheets/todos.css
|
84
|
-
- examples/todos/resources/templates/todos.handlebars
|
85
|
-
- examples/web-app/README.md
|
86
|
-
- examples/web-app/index.html
|
87
|
-
- examples/web-app/lib/main.js
|
88
|
-
- examples/web-app/package.json
|
89
|
-
- examples/web-app/tests.html
|
90
|
-
- examples/web-app/tests/ct-example-test.js
|
91
|
-
- examples/web-app/tests/qunit-test.js
|
92
144
|
- lib/spade.rb
|
145
|
+
- lib/spade/bundle.rb
|
93
146
|
- lib/spade/cli.rb
|
147
|
+
- lib/spade/cli/base.rb
|
148
|
+
- lib/spade/console.rb
|
149
|
+
- lib/spade/context.rb
|
150
|
+
- lib/spade/evaluator.rb
|
151
|
+
- lib/spade/exports.rb
|
152
|
+
- lib/spade/loader.rb
|
153
|
+
- lib/spade/reactor.rb
|
154
|
+
- lib/spade/server.rb
|
155
|
+
- lib/spade/shell.rb
|
94
156
|
- lib/spade/version.rb
|
95
157
|
- spade.gemspec
|
158
|
+
- spec/cli/update_spec.rb
|
159
|
+
- spec/spec_helper.rb
|
160
|
+
- spec/support/cli.rb
|
161
|
+
- spec/support/matchers.rb
|
162
|
+
- spec/support/path.rb
|
96
163
|
homepage: http://github.com/strobecorp/spade
|
97
164
|
licenses: []
|
98
|
-
|
99
165
|
post_install_message:
|
100
166
|
rdoc_options: []
|
101
|
-
|
102
|
-
require_paths:
|
167
|
+
require_paths:
|
103
168
|
- lib
|
104
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
169
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
105
170
|
none: false
|
106
|
-
requirements:
|
107
|
-
- -
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
version:
|
110
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
171
|
+
requirements:
|
172
|
+
- - ! '>='
|
173
|
+
- !ruby/object:Gem::Version
|
174
|
+
version: '0'
|
175
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
111
176
|
none: false
|
112
|
-
requirements:
|
113
|
-
- -
|
114
|
-
- !ruby/object:Gem::Version
|
115
|
-
version:
|
177
|
+
requirements:
|
178
|
+
- - ! '>='
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: '0'
|
116
181
|
requirements: []
|
117
|
-
|
118
182
|
rubyforge_project:
|
119
183
|
rubygems_version: 1.8.5
|
120
184
|
signing_key:
|
121
185
|
specification_version: 3
|
122
186
|
summary: Unified JavaScript runner for browser and command line
|
123
|
-
test_files:
|
124
|
-
|
187
|
+
test_files:
|
188
|
+
- spec/cli/update_spec.rb
|
189
|
+
- spec/spec_helper.rb
|
190
|
+
- spec/support/cli.rb
|
191
|
+
- spec/support/matchers.rb
|
192
|
+
- spec/support/path.rb
|