Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Kill vendored Hoe.

  • Loading branch information...
commit bccd2d200a6b6ebe256f06bde6aec970e9cf59d4 1 parent 37ea0be
@jbarnette authored
View
0  CHANGELOG → CHANGELOG.rdoc
File renamed without changes
View
6 MANIFEST → MANIFEST.txt
@@ -1,6 +1,6 @@
.autotest
-CHANGELOG
-MANIFEST
+CHANGELOG.rdoc
+MANIFEST.txt
MINGW32.mk
README.rdoc
Rakefile
@@ -40,7 +40,6 @@ js/johnson/browser/xmlw3cdom.js
js/johnson/cli.js
js/johnson/prelude.js
js/johnson/template.js
-lib/hoe.rb
lib/johnson.rb
lib/johnson/cli.rb
lib/johnson/cli/options.rb
@@ -140,7 +139,6 @@ test/jspec/helper.js
test/jspec/jspec.js
test/jspec/simple_spec.js
test/parser_test.rb
-todo/.keep
vendor/spidermonkey/.cvsignore
vendor/spidermonkey/Makefile.in
vendor/spidermonkey/Makefile.ref
View
32 Rakefile
@@ -1,8 +1,8 @@
+require "rubygems"
+require "hoe"
require "erb"
-require "./lib/hoe.rb"
require "./lib/johnson/version.rb"
-
abort "Need Ruby version 1.8.x!" unless RUBY_VERSION > "1.8"
# what sort of extension are we building?
@@ -15,13 +15,17 @@ LIBJS = FileList["vendor/spidermonkey/#{CROSS || ''}*.OBJ/libjs.{#{kind},so}"].f
GENERATED_NODE = "ext/spidermonkey/immutable_node.c"
HOE = Hoe.new("johnson", Johnson::VERSION) do |p|
- p.author = ["John Barnette", "Aaron Patterson", "Yehuda Katz", "Matthew Draper"]
- p.changes = p.paragraphs_of("CHANGELOG", 0..1).join("\n\n")
- p.email = "johnson-talk@googlegroups.com"
- p.rubyforge_name = "johnson"
- p.description = "Johnson wraps JavaScript in a loving Ruby embrace."
- p.summary = p.description
- p.url = "http://github.com/jbarnette/johnson/wikis"
+ p.developer "John Barnette", "jbarnette@rubyforge.org"
+ p.developer "Aaron Patterson", "aaron.patterson@gmail.com"
+ p.developer "Yehuda Katz", "wycats@gmail.com"
+ p.developer "Matthew Draper", "matthew@trebex.net"
+
+ p.summary = "Johnson wraps JavaScript in a loving Ruby embrace."
+ p.history_file = "CHANGELOG.rdoc"
+ p.readme_file = "README.rdoc"
+ p.extra_rdoc_files = [p.readme_file]
+ p.need_tar = false
+ p.url = "http://github.com/jbarnette/johnson/wikis"
p.clean_globs = [
"lib/johnson/spidermonkey.#{kind}",
@@ -30,9 +34,9 @@ HOE = Hoe.new("johnson", Johnson::VERSION) do |p|
GENERATED_NODE,
"vendor/spidermonkey/**/*.OBJ"]
- p.test_globs = ["test/**/*_test.rb"]
+ p.test_globs = %w(test/**/*_test.rb)
p.spec_extras = { :extensions => ["Rakefile"] }
- p.extra_deps = ["rake"]
+ p.extra_deps = ["rake"]
end
namespace :gem do
@@ -45,11 +49,6 @@ namespace :gem do
end
namespace :test do
- Rake::TestTask.new("todo") do |t|
- t.test_files = FileList["todo/**/*_test.rb"]
- t.verbose = true
- end
-
task :jspec => :extensions do
$LOAD_PATH << File.expand_path(File.dirname(__FILE__) + "/lib")
Johnson.send(:remove_const, :VERSION)
@@ -71,7 +70,6 @@ end
# make sure the C bits are up-to-date when testing
Rake::Task[:test].prerequisites << :extensions
-Rake::Task["test:todo"].prerequisites << :extensions
Rake::Task[:check_manifest].prerequisites << GENERATED_NODE
View
17 johnson.gemspec
@@ -2,25 +2,25 @@
Gem::Specification.new do |s|
s.name = %q{johnson}
- s.version = "1.0.0.20090225110820"
+ s.version = "1.0.0.20090326122910"
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
s.authors = ["John Barnette", "Aaron Patterson", "Yehuda Katz", "Matthew Draper"]
- s.date = %q{2009-02-25}
+ s.date = %q{2009-03-26}
s.default_executable = %q{johnson}
- s.description = %q{Johnson wraps JavaScript in a loving Ruby embrace.}
- s.email = %q{johnson-talk@googlegroups.com}
+ s.description = %q{}
+ s.email = ["jbarnette@rubyforge.org", "aaron.patterson@gmail.com", "wycats@gmail.com", "matthew@trebex.net"]
s.executables = ["johnson"]
s.extensions = ["Rakefile"]
- s.extra_rdoc_files = ["README.rdoc", "cross-compile.txt"]
- s.files = [".autotest", "CHANGELOG", "MANIFEST", "MINGW32.mk", "README.rdoc", "Rakefile", "bin/johnson", "cross-compile.txt", "ext/spidermonkey/context.c", "ext/spidermonkey/context.h", "ext/spidermonkey/conversions.c", "ext/spidermonkey/conversions.h", "ext/spidermonkey/debugger.c", "ext/spidermonkey/debugger.h", "ext/spidermonkey/extconf.rb", "ext/spidermonkey/extensions.c", "ext/spidermonkey/extensions.h", "ext/spidermonkey/global.c", "ext/spidermonkey/global.h", "ext/spidermonkey/idhash.c", "ext/spidermonkey/idhash.h", "ext/spidermonkey/immutable_node.c", "ext/spidermonkey/immutable_node.c.erb", "ext/spidermonkey/immutable_node.h", "ext/spidermonkey/jroot.h", "ext/spidermonkey/js_land_proxy.c", "ext/spidermonkey/js_land_proxy.h", "ext/spidermonkey/ruby_land_proxy.c", "ext/spidermonkey/ruby_land_proxy.h", "ext/spidermonkey/runtime.c", "ext/spidermonkey/runtime.h", "ext/spidermonkey/spidermonkey.c", "ext/spidermonkey/spidermonkey.h", "johnson.gemspec", "js/johnson/browser.js", "js/johnson/browser/env.js", "js/johnson/browser/jquery.js", "js/johnson/browser/xmlsax.js", "js/johnson/browser/xmlw3cdom.js", "js/johnson/cli.js", "js/johnson/prelude.js", "js/johnson/template.js", "lib/hoe.rb", "lib/johnson.rb", "lib/johnson/cli.rb", "lib/johnson/cli/options.rb", "lib/johnson/error.rb", "lib/johnson/nodes.rb", "lib/johnson/nodes/binary_node.rb", "lib/johnson/nodes/for.rb", "lib/johnson/nodes/for_in.rb", "lib/johnson/nodes/function.rb", "lib/johnson/nodes/list.rb", "lib/johnson/nodes/node.rb", "lib/johnson/nodes/ternary_node.rb", "lib/johnson/parser.rb", "lib/johnson/parser/syntax_error.rb", "lib/johnson/runtime.rb", "lib/johnson/spidermonkey/context.rb", "lib/johnson/spidermonkey/debugger.rb", "lib/johnson/spidermonkey/immutable_node.rb", "lib/johnson/spidermonkey/js_land_proxy.rb", "lib/johnson/spidermonkey/mutable_tree_visitor.rb", "lib/johnson/spidermonkey/ruby_land_proxy.rb", "lib/johnson/spidermonkey/runtime.rb", "lib/johnson/version.rb", "lib/johnson/visitable.rb", "lib/johnson/visitors.rb", "lib/johnson/visitors/dot_visitor.rb", "lib/johnson/visitors/ecma_visitor.rb", "lib/johnson/visitors/enumerating_visitor.rb", "lib/johnson/visitors/sexp_visitor.rb", "lib/johnson/visitors/visitor.rb", "lib/rails/init.rb", "srcs/xmlparser-0.6.8.tar", "test/assets/index.html", "test/assets/jquery_test.html", "test/helper.rb", "test/johnson/browser_test.rb", "test/johnson/conversions/array_test.rb", "test/johnson/conversions/boolean_test.rb", "test/johnson/conversions/callable_test.rb", "test/johnson/conversions/file_test.rb", "test/johnson/conversions/nil_test.rb", "test/johnson/conversions/number_test.rb", "test/johnson/conversions/regexp_test.rb", "test/johnson/conversions/string_test.rb", "test/johnson/conversions/struct_test.rb", "test/johnson/conversions/symbol_test.rb", "test/johnson/conversions/thread_test.rb", "test/johnson/error_test.rb", "test/johnson/extensions_test.rb", "test/johnson/nodes/array_literal_test.rb", "test/johnson/nodes/array_node_test.rb", "test/johnson/nodes/binary_node_test.rb", "test/johnson/nodes/bracket_access_test.rb", "test/johnson/nodes/delete_test.rb", "test/johnson/nodes/do_while_test.rb", "test/johnson/nodes/dot_accessor_test.rb", "test/johnson/nodes/export_test.rb", "test/johnson/nodes/for_test.rb", "test/johnson/nodes/function_test.rb", "test/johnson/nodes/if_test.rb", "test/johnson/nodes/import_test.rb", "test/johnson/nodes/label_test.rb", "test/johnson/nodes/let_test.rb", "test/johnson/nodes/object_literal_test.rb", "test/johnson/nodes/return_test.rb", "test/johnson/nodes/semi_test.rb", "test/johnson/nodes/switch_test.rb", "test/johnson/nodes/ternary_test.rb", "test/johnson/nodes/throw_test.rb", "test/johnson/nodes/try_node_test.rb", "test/johnson/nodes/typeof_test.rb", "test/johnson/nodes/unary_node_test.rb", "test/johnson/nodes/void_test.rb", "test/johnson/nodes/while_test.rb", "test/johnson/nodes/with_test.rb", "test/johnson/prelude_test.rb", "test/johnson/runtime_test.rb", "test/johnson/spidermonkey/context_test.rb", "test/johnson/spidermonkey/immutable_node_test.rb", "test/johnson/spidermonkey/js_land_proxy_test.rb", "test/johnson/spidermonkey/ruby_land_proxy_test.rb", "test/johnson/spidermonkey/runtime_test.rb", "test/johnson/version_test.rb", "test/johnson/visitors/dot_visitor_test.rb", "test/johnson/visitors/enumerating_visitor_test.rb", "test/johnson_test.rb", "test/jquery_units/simple.js", "test/jquery_units/test.js", "test/jquery_units/test_helper.js", "test/jquery_units/units/ajax.js", "test/jquery_units/units/core.js", "test/jquery_units/units/event.js", "test/jquery_units/units/fx.js", "test/jquery_units/units/offset.js", "test/jquery_units/units/selector.js", "test/jspec/helper.js", "test/jspec/jspec.js", "test/jspec/simple_spec.js", "test/parser_test.rb", "todo/.keep", "vendor/spidermonkey/.cvsignore", "vendor/spidermonkey/Makefile.in", "vendor/spidermonkey/Makefile.ref", "vendor/spidermonkey/README.html", "vendor/spidermonkey/SpiderMonkey.rsp", "vendor/spidermonkey/Y.js", "vendor/spidermonkey/build.mk", "vendor/spidermonkey/config.mk", "vendor/spidermonkey/config/AIX4.1.mk", "vendor/spidermonkey/config/AIX4.2.mk", "vendor/spidermonkey/config/AIX4.3.mk", "vendor/spidermonkey/config/Darwin.mk", "vendor/spidermonkey/config/Darwin1.3.mk", "vendor/spidermonkey/config/Darwin1.4.mk", "vendor/spidermonkey/config/Darwin5.2.mk", "vendor/spidermonkey/config/Darwin5.3.mk", "vendor/spidermonkey/config/FreeBSD.mk", "vendor/spidermonkey/config/HP-UXB.10.10.mk", "vendor/spidermonkey/config/HP-UXB.10.20.mk", "vendor/spidermonkey/config/HP-UXB.11.00.mk", "vendor/spidermonkey/config/IRIX.mk", "vendor/spidermonkey/config/IRIX5.3.mk", "vendor/spidermonkey/config/IRIX6.1.mk", "vendor/spidermonkey/config/IRIX6.2.mk", "vendor/spidermonkey/config/IRIX6.3.mk", "vendor/spidermonkey/config/IRIX6.5.mk", "vendor/spidermonkey/config/Linux_All.mk", "vendor/spidermonkey/config/Mac_OS10.0.mk", "vendor/spidermonkey/config/OSF1V4.0.mk", "vendor/spidermonkey/config/OSF1V5.0.mk", "vendor/spidermonkey/config/SunOS4.1.4.mk", "vendor/spidermonkey/config/SunOS5.10.mk", "vendor/spidermonkey/config/SunOS5.3.mk", "vendor/spidermonkey/config/SunOS5.4.mk", "vendor/spidermonkey/config/SunOS5.5.1.mk", "vendor/spidermonkey/config/SunOS5.5.mk", "vendor/spidermonkey/config/SunOS5.6.mk", "vendor/spidermonkey/config/SunOS5.7.mk", "vendor/spidermonkey/config/SunOS5.8.mk", "vendor/spidermonkey/config/SunOS5.9.mk", "vendor/spidermonkey/config/WINNT4.0.mk", "vendor/spidermonkey/config/WINNT5.0.mk", "vendor/spidermonkey/config/WINNT5.1.mk", "vendor/spidermonkey/config/WINNT5.2.mk", "vendor/spidermonkey/config/WINNT6.0.mk", "vendor/spidermonkey/config/dgux.mk", "vendor/spidermonkey/editline/Makefile.ref", "vendor/spidermonkey/editline/README", "vendor/spidermonkey/editline/editline.3", "vendor/spidermonkey/editline/editline.c", "vendor/spidermonkey/editline/editline.h", "vendor/spidermonkey/editline/sysunix.c", "vendor/spidermonkey/editline/unix.h", "vendor/spidermonkey/fdlibm/.cvsignore", "vendor/spidermonkey/fdlibm/Makefile.in", "vendor/spidermonkey/fdlibm/Makefile.ref", "vendor/spidermonkey/fdlibm/e_acos.c", "vendor/spidermonkey/fdlibm/e_acosh.c", "vendor/spidermonkey/fdlibm/e_asin.c", "vendor/spidermonkey/fdlibm/e_atan2.c", "vendor/spidermonkey/fdlibm/e_atanh.c", "vendor/spidermonkey/fdlibm/e_cosh.c", "vendor/spidermonkey/fdlibm/e_exp.c", "vendor/spidermonkey/fdlibm/e_fmod.c", "vendor/spidermonkey/fdlibm/e_gamma.c", "vendor/spidermonkey/fdlibm/e_gamma_r.c", "vendor/spidermonkey/fdlibm/e_hypot.c", "vendor/spidermonkey/fdlibm/e_j0.c", "vendor/spidermonkey/fdlibm/e_j1.c", "vendor/spidermonkey/fdlibm/e_jn.c", "vendor/spidermonkey/fdlibm/e_lgamma.c", "vendor/spidermonkey/fdlibm/e_lgamma_r.c", "vendor/spidermonkey/fdlibm/e_log.c", "vendor/spidermonkey/fdlibm/e_log10.c", "vendor/spidermonkey/fdlibm/e_pow.c", "vendor/spidermonkey/fdlibm/e_rem_pio2.c", "vendor/spidermonkey/fdlibm/e_remainder.c", "vendor/spidermonkey/fdlibm/e_scalb.c", "vendor/spidermonkey/fdlibm/e_sinh.c", "vendor/spidermonkey/fdlibm/e_sqrt.c", "vendor/spidermonkey/fdlibm/fdlibm.h", "vendor/spidermonkey/fdlibm/fdlibm.mak", "vendor/spidermonkey/fdlibm/fdlibm.mdp", "vendor/spidermonkey/fdlibm/k_cos.c", "vendor/spidermonkey/fdlibm/k_rem_pio2.c", "vendor/spidermonkey/fdlibm/k_sin.c", "vendor/spidermonkey/fdlibm/k_standard.c", "vendor/spidermonkey/fdlibm/k_tan.c", "vendor/spidermonkey/fdlibm/s_asinh.c", "vendor/spidermonkey/fdlibm/s_atan.c", "vendor/spidermonkey/fdlibm/s_cbrt.c", "vendor/spidermonkey/fdlibm/s_ceil.c", "vendor/spidermonkey/fdlibm/s_copysign.c", "vendor/spidermonkey/fdlibm/s_cos.c", "vendor/spidermonkey/fdlibm/s_erf.c", "vendor/spidermonkey/fdlibm/s_expm1.c", "vendor/spidermonkey/fdlibm/s_fabs.c", "vendor/spidermonkey/fdlibm/s_finite.c", "vendor/spidermonkey/fdlibm/s_floor.c", "vendor/spidermonkey/fdlibm/s_frexp.c", "vendor/spidermonkey/fdlibm/s_ilogb.c", "vendor/spidermonkey/fdlibm/s_isnan.c", "vendor/spidermonkey/fdlibm/s_ldexp.c", "vendor/spidermonkey/fdlibm/s_lib_version.c", "vendor/spidermonkey/fdlibm/s_log1p.c", "vendor/spidermonkey/fdlibm/s_logb.c", "vendor/spidermonkey/fdlibm/s_matherr.c", "vendor/spidermonkey/fdlibm/s_modf.c", "vendor/spidermonkey/fdlibm/s_nextafter.c", "vendor/spidermonkey/fdlibm/s_rint.c", "vendor/spidermonkey/fdlibm/s_scalbn.c", "vendor/spidermonkey/fdlibm/s_signgam.c", "vendor/spidermonkey/fdlibm/s_significand.c", "vendor/spidermonkey/fdlibm/s_sin.c", "vendor/spidermonkey/fdlibm/s_tan.c", "vendor/spidermonkey/fdlibm/s_tanh.c", "vendor/spidermonkey/fdlibm/w_acos.c", "vendor/spidermonkey/fdlibm/w_acosh.c", "vendor/spidermonkey/fdlibm/w_asin.c", "vendor/spidermonkey/fdlibm/w_atan2.c", "vendor/spidermonkey/fdlibm/w_atanh.c", "vendor/spidermonkey/fdlibm/w_cosh.c", "vendor/spidermonkey/fdlibm/w_exp.c", "vendor/spidermonkey/fdlibm/w_fmod.c", "vendor/spidermonkey/fdlibm/w_gamma.c", "vendor/spidermonkey/fdlibm/w_gamma_r.c", "vendor/spidermonkey/fdlibm/w_hypot.c", "vendor/spidermonkey/fdlibm/w_j0.c", "vendor/spidermonkey/fdlibm/w_j1.c", "vendor/spidermonkey/fdlibm/w_jn.c", "vendor/spidermonkey/fdlibm/w_lgamma.c", "vendor/spidermonkey/fdlibm/w_lgamma_r.c", "vendor/spidermonkey/fdlibm/w_log.c", "vendor/spidermonkey/fdlibm/w_log10.c", "vendor/spidermonkey/fdlibm/w_pow.c", "vendor/spidermonkey/fdlibm/w_remainder.c", "vendor/spidermonkey/fdlibm/w_scalb.c", "vendor/spidermonkey/fdlibm/w_sinh.c", "vendor/spidermonkey/fdlibm/w_sqrt.c", "vendor/spidermonkey/javascript-trace.d", "vendor/spidermonkey/js.c", "vendor/spidermonkey/js.mak", "vendor/spidermonkey/js.mdp", "vendor/spidermonkey/js.msg", "vendor/spidermonkey/js3240.rc", "vendor/spidermonkey/jsOS240.def", "vendor/spidermonkey/jsapi.c", "vendor/spidermonkey/jsapi.h", "vendor/spidermonkey/jsarena.c", "vendor/spidermonkey/jsarena.h", "vendor/spidermonkey/jsarray.c", "vendor/spidermonkey/jsarray.h", "vendor/spidermonkey/jsatom.c", "vendor/spidermonkey/jsatom.h", "vendor/spidermonkey/jsbit.h", "vendor/spidermonkey/jsbool.c", "vendor/spidermonkey/jsbool.h", "vendor/spidermonkey/jsclist.h", "vendor/spidermonkey/jscntxt.c", "vendor/spidermonkey/jscntxt.h", "vendor/spidermonkey/jscompat.h", "vendor/spidermonkey/jsconfig.h", "vendor/spidermonkey/jsconfig.mk", "vendor/spidermonkey/jscpucfg.c", "vendor/spidermonkey/jscpucfg.h", "vendor/spidermonkey/jsdate.c", "vendor/spidermonkey/jsdate.h", "vendor/spidermonkey/jsdbgapi.c", "vendor/spidermonkey/jsdbgapi.h", "vendor/spidermonkey/jsdhash.c", "vendor/spidermonkey/jsdhash.h", "vendor/spidermonkey/jsdtoa.c", "vendor/spidermonkey/jsdtoa.h", "vendor/spidermonkey/jsdtracef.c", "vendor/spidermonkey/jsdtracef.h", "vendor/spidermonkey/jsemit.c", "vendor/spidermonkey/jsemit.h", "vendor/spidermonkey/jsexn.c", "vendor/spidermonkey/jsexn.h", "vendor/spidermonkey/jsfile.c", "vendor/spidermonkey/jsfile.h", "vendor/spidermonkey/jsfile.msg", "vendor/spidermonkey/jsfun.c", "vendor/spidermonkey/jsfun.h", "vendor/spidermonkey/jsgc.c", "vendor/spidermonkey/jsgc.h", "vendor/spidermonkey/jshash.c", "vendor/spidermonkey/jshash.h", "vendor/spidermonkey/jsify.pl", "vendor/spidermonkey/jsinterp.c", "vendor/spidermonkey/jsinterp.h", "vendor/spidermonkey/jsinvoke.c", "vendor/spidermonkey/jsiter.c", "vendor/spidermonkey/jsiter.h", "vendor/spidermonkey/jskeyword.tbl", "vendor/spidermonkey/jskwgen.c", "vendor/spidermonkey/jslibmath.h", "vendor/spidermonkey/jslock.c", "vendor/spidermonkey/jslock.h", "vendor/spidermonkey/jslocko.asm", "vendor/spidermonkey/jslog2.c", "vendor/spidermonkey/jslong.c", "vendor/spidermonkey/jslong.h", "vendor/spidermonkey/jsmath.c", "vendor/spidermonkey/jsmath.h", "vendor/spidermonkey/jsnum.c", "vendor/spidermonkey/jsnum.h", "vendor/spidermonkey/jsobj.c", "vendor/spidermonkey/jsobj.h", "vendor/spidermonkey/jsopcode.c", "vendor/spidermonkey/jsopcode.h", "vendor/spidermonkey/jsopcode.tbl", "vendor/spidermonkey/jsotypes.h", "vendor/spidermonkey/jsparse.c", "vendor/spidermonkey/jsparse.h", "vendor/spidermonkey/jsprf.c", "vendor/spidermonkey/jsprf.h", "vendor/spidermonkey/jsproto.tbl", "vendor/spidermonkey/jsprvtd.h", "vendor/spidermonkey/jspubtd.h", "vendor/spidermonkey/jsregexp.c", "vendor/spidermonkey/jsregexp.h", "vendor/spidermonkey/jsreops.tbl", "vendor/spidermonkey/jsscan.c", "vendor/spidermonkey/jsscan.h", "vendor/spidermonkey/jsscope.c", "vendor/spidermonkey/jsscope.h", "vendor/spidermonkey/jsscript.c", "vendor/spidermonkey/jsscript.h", "vendor/spidermonkey/jsshell.msg", "vendor/spidermonkey/jsstddef.h", "vendor/spidermonkey/jsstr.c", "vendor/spidermonkey/jsstr.h", "vendor/spidermonkey/jstypes.h", "vendor/spidermonkey/jsutil.c", "vendor/spidermonkey/jsutil.h", "vendor/spidermonkey/jsxdrapi.c", "vendor/spidermonkey/jsxdrapi.h", "vendor/spidermonkey/jsxml.c", "vendor/spidermonkey/jsxml.h", "vendor/spidermonkey/lock_SunOS.s", "vendor/spidermonkey/perfect.js", "vendor/spidermonkey/plify_jsdhash.sed", "vendor/spidermonkey/prmjtime.c", "vendor/spidermonkey/prmjtime.h", "vendor/spidermonkey/resource.h", "vendor/spidermonkey/rules.mk", "vendor/spidermonkey/win32.order"]
+ s.extra_rdoc_files = ["MANIFEST.txt", "cross-compile.txt", "README.rdoc"]
+ s.files = [".autotest", "CHANGELOG.rdoc", "MANIFEST.txt", "MINGW32.mk", "README.rdoc", "Rakefile", "bin/johnson", "cross-compile.txt", "ext/spidermonkey/context.c", "ext/spidermonkey/context.h", "ext/spidermonkey/conversions.c", "ext/spidermonkey/conversions.h", "ext/spidermonkey/debugger.c", "ext/spidermonkey/debugger.h", "ext/spidermonkey/extconf.rb", "ext/spidermonkey/extensions.c", "ext/spidermonkey/extensions.h", "ext/spidermonkey/global.c", "ext/spidermonkey/global.h", "ext/spidermonkey/idhash.c", "ext/spidermonkey/idhash.h", "ext/spidermonkey/immutable_node.c", "ext/spidermonkey/immutable_node.c.erb", "ext/spidermonkey/immutable_node.h", "ext/spidermonkey/jroot.h", "ext/spidermonkey/js_land_proxy.c", "ext/spidermonkey/js_land_proxy.h", "ext/spidermonkey/ruby_land_proxy.c", "ext/spidermonkey/ruby_land_proxy.h", "ext/spidermonkey/runtime.c", "ext/spidermonkey/runtime.h", "ext/spidermonkey/spidermonkey.c", "ext/spidermonkey/spidermonkey.h", "johnson.gemspec", "js/johnson/browser.js", "js/johnson/browser/env.js", "js/johnson/browser/jquery.js", "js/johnson/browser/xmlsax.js", "js/johnson/browser/xmlw3cdom.js", "js/johnson/cli.js", "js/johnson/prelude.js", "js/johnson/template.js", "lib/johnson.rb", "lib/johnson/cli.rb", "lib/johnson/cli/options.rb", "lib/johnson/error.rb", "lib/johnson/nodes.rb", "lib/johnson/nodes/binary_node.rb", "lib/johnson/nodes/for.rb", "lib/johnson/nodes/for_in.rb", "lib/johnson/nodes/function.rb", "lib/johnson/nodes/list.rb", "lib/johnson/nodes/node.rb", "lib/johnson/nodes/ternary_node.rb", "lib/johnson/parser.rb", "lib/johnson/parser/syntax_error.rb", "lib/johnson/runtime.rb", "lib/johnson/spidermonkey/context.rb", "lib/johnson/spidermonkey/debugger.rb", "lib/johnson/spidermonkey/immutable_node.rb", "lib/johnson/spidermonkey/js_land_proxy.rb", "lib/johnson/spidermonkey/mutable_tree_visitor.rb", "lib/johnson/spidermonkey/ruby_land_proxy.rb", "lib/johnson/spidermonkey/runtime.rb", "lib/johnson/version.rb", "lib/johnson/visitable.rb", "lib/johnson/visitors.rb", "lib/johnson/visitors/dot_visitor.rb", "lib/johnson/visitors/ecma_visitor.rb", "lib/johnson/visitors/enumerating_visitor.rb", "lib/johnson/visitors/sexp_visitor.rb", "lib/johnson/visitors/visitor.rb", "lib/rails/init.rb", "srcs/xmlparser-0.6.8.tar", "test/assets/index.html", "test/assets/jquery_test.html", "test/helper.rb", "test/johnson/browser_test.rb", "test/johnson/conversions/array_test.rb", "test/johnson/conversions/boolean_test.rb", "test/johnson/conversions/callable_test.rb", "test/johnson/conversions/file_test.rb", "test/johnson/conversions/nil_test.rb", "test/johnson/conversions/number_test.rb", "test/johnson/conversions/regexp_test.rb", "test/johnson/conversions/string_test.rb", "test/johnson/conversions/struct_test.rb", "test/johnson/conversions/symbol_test.rb", "test/johnson/conversions/thread_test.rb", "test/johnson/error_test.rb", "test/johnson/extensions_test.rb", "test/johnson/nodes/array_literal_test.rb", "test/johnson/nodes/array_node_test.rb", "test/johnson/nodes/binary_node_test.rb", "test/johnson/nodes/bracket_access_test.rb", "test/johnson/nodes/delete_test.rb", "test/johnson/nodes/do_while_test.rb", "test/johnson/nodes/dot_accessor_test.rb", "test/johnson/nodes/export_test.rb", "test/johnson/nodes/for_test.rb", "test/johnson/nodes/function_test.rb", "test/johnson/nodes/if_test.rb", "test/johnson/nodes/import_test.rb", "test/johnson/nodes/label_test.rb", "test/johnson/nodes/let_test.rb", "test/johnson/nodes/object_literal_test.rb", "test/johnson/nodes/return_test.rb", "test/johnson/nodes/semi_test.rb", "test/johnson/nodes/switch_test.rb", "test/johnson/nodes/ternary_test.rb", "test/johnson/nodes/throw_test.rb", "test/johnson/nodes/try_node_test.rb", "test/johnson/nodes/typeof_test.rb", "test/johnson/nodes/unary_node_test.rb", "test/johnson/nodes/void_test.rb", "test/johnson/nodes/while_test.rb", "test/johnson/nodes/with_test.rb", "test/johnson/prelude_test.rb", "test/johnson/runtime_test.rb", "test/johnson/spidermonkey/context_test.rb", "test/johnson/spidermonkey/immutable_node_test.rb", "test/johnson/spidermonkey/js_land_proxy_test.rb", "test/johnson/spidermonkey/ruby_land_proxy_test.rb", "test/johnson/spidermonkey/runtime_test.rb", "test/johnson/version_test.rb", "test/johnson/visitors/dot_visitor_test.rb", "test/johnson/visitors/enumerating_visitor_test.rb", "test/johnson_test.rb", "test/jquery_units/simple.js", "test/jquery_units/test.js", "test/jquery_units/test_helper.js", "test/jquery_units/units/ajax.js", "test/jquery_units/units/core.js", "test/jquery_units/units/event.js", "test/jquery_units/units/fx.js", "test/jquery_units/units/offset.js", "test/jquery_units/units/selector.js", "test/jspec/helper.js", "test/jspec/jspec.js", "test/jspec/simple_spec.js", "test/parser_test.rb", "vendor/spidermonkey/.cvsignore", "vendor/spidermonkey/Makefile.in", "vendor/spidermonkey/Makefile.ref", "vendor/spidermonkey/README.html", "vendor/spidermonkey/SpiderMonkey.rsp", "vendor/spidermonkey/Y.js", "vendor/spidermonkey/build.mk", "vendor/spidermonkey/config.mk", "vendor/spidermonkey/config/AIX4.1.mk", "vendor/spidermonkey/config/AIX4.2.mk", "vendor/spidermonkey/config/AIX4.3.mk", "vendor/spidermonkey/config/Darwin.mk", "vendor/spidermonkey/config/Darwin1.3.mk", "vendor/spidermonkey/config/Darwin1.4.mk", "vendor/spidermonkey/config/Darwin5.2.mk", "vendor/spidermonkey/config/Darwin5.3.mk", "vendor/spidermonkey/config/FreeBSD.mk", "vendor/spidermonkey/config/HP-UXB.10.10.mk", "vendor/spidermonkey/config/HP-UXB.10.20.mk", "vendor/spidermonkey/config/HP-UXB.11.00.mk", "vendor/spidermonkey/config/IRIX.mk", "vendor/spidermonkey/config/IRIX5.3.mk", "vendor/spidermonkey/config/IRIX6.1.mk", "vendor/spidermonkey/config/IRIX6.2.mk", "vendor/spidermonkey/config/IRIX6.3.mk", "vendor/spidermonkey/config/IRIX6.5.mk", "vendor/spidermonkey/config/Linux_All.mk", "vendor/spidermonkey/config/Mac_OS10.0.mk", "vendor/spidermonkey/config/OSF1V4.0.mk", "vendor/spidermonkey/config/OSF1V5.0.mk", "vendor/spidermonkey/config/SunOS4.1.4.mk", "vendor/spidermonkey/config/SunOS5.10.mk", "vendor/spidermonkey/config/SunOS5.3.mk", "vendor/spidermonkey/config/SunOS5.4.mk", "vendor/spidermonkey/config/SunOS5.5.1.mk", "vendor/spidermonkey/config/SunOS5.5.mk", "vendor/spidermonkey/config/SunOS5.6.mk", "vendor/spidermonkey/config/SunOS5.7.mk", "vendor/spidermonkey/config/SunOS5.8.mk", "vendor/spidermonkey/config/SunOS5.9.mk", "vendor/spidermonkey/config/WINNT4.0.mk", "vendor/spidermonkey/config/WINNT5.0.mk", "vendor/spidermonkey/config/WINNT5.1.mk", "vendor/spidermonkey/config/WINNT5.2.mk", "vendor/spidermonkey/config/WINNT6.0.mk", "vendor/spidermonkey/config/dgux.mk", "vendor/spidermonkey/editline/Makefile.ref", "vendor/spidermonkey/editline/README", "vendor/spidermonkey/editline/editline.3", "vendor/spidermonkey/editline/editline.c", "vendor/spidermonkey/editline/editline.h", "vendor/spidermonkey/editline/sysunix.c", "vendor/spidermonkey/editline/unix.h", "vendor/spidermonkey/fdlibm/.cvsignore", "vendor/spidermonkey/fdlibm/Makefile.in", "vendor/spidermonkey/fdlibm/Makefile.ref", "vendor/spidermonkey/fdlibm/e_acos.c", "vendor/spidermonkey/fdlibm/e_acosh.c", "vendor/spidermonkey/fdlibm/e_asin.c", "vendor/spidermonkey/fdlibm/e_atan2.c", "vendor/spidermonkey/fdlibm/e_atanh.c", "vendor/spidermonkey/fdlibm/e_cosh.c", "vendor/spidermonkey/fdlibm/e_exp.c", "vendor/spidermonkey/fdlibm/e_fmod.c", "vendor/spidermonkey/fdlibm/e_gamma.c", "vendor/spidermonkey/fdlibm/e_gamma_r.c", "vendor/spidermonkey/fdlibm/e_hypot.c", "vendor/spidermonkey/fdlibm/e_j0.c", "vendor/spidermonkey/fdlibm/e_j1.c", "vendor/spidermonkey/fdlibm/e_jn.c", "vendor/spidermonkey/fdlibm/e_lgamma.c", "vendor/spidermonkey/fdlibm/e_lgamma_r.c", "vendor/spidermonkey/fdlibm/e_log.c", "vendor/spidermonkey/fdlibm/e_log10.c", "vendor/spidermonkey/fdlibm/e_pow.c", "vendor/spidermonkey/fdlibm/e_rem_pio2.c", "vendor/spidermonkey/fdlibm/e_remainder.c", "vendor/spidermonkey/fdlibm/e_scalb.c", "vendor/spidermonkey/fdlibm/e_sinh.c", "vendor/spidermonkey/fdlibm/e_sqrt.c", "vendor/spidermonkey/fdlibm/fdlibm.h", "vendor/spidermonkey/fdlibm/fdlibm.mak", "vendor/spidermonkey/fdlibm/fdlibm.mdp", "vendor/spidermonkey/fdlibm/k_cos.c", "vendor/spidermonkey/fdlibm/k_rem_pio2.c", "vendor/spidermonkey/fdlibm/k_sin.c", "vendor/spidermonkey/fdlibm/k_standard.c", "vendor/spidermonkey/fdlibm/k_tan.c", "vendor/spidermonkey/fdlibm/s_asinh.c", "vendor/spidermonkey/fdlibm/s_atan.c", "vendor/spidermonkey/fdlibm/s_cbrt.c", "vendor/spidermonkey/fdlibm/s_ceil.c", "vendor/spidermonkey/fdlibm/s_copysign.c", "vendor/spidermonkey/fdlibm/s_cos.c", "vendor/spidermonkey/fdlibm/s_erf.c", "vendor/spidermonkey/fdlibm/s_expm1.c", "vendor/spidermonkey/fdlibm/s_fabs.c", "vendor/spidermonkey/fdlibm/s_finite.c", "vendor/spidermonkey/fdlibm/s_floor.c", "vendor/spidermonkey/fdlibm/s_frexp.c", "vendor/spidermonkey/fdlibm/s_ilogb.c", "vendor/spidermonkey/fdlibm/s_isnan.c", "vendor/spidermonkey/fdlibm/s_ldexp.c", "vendor/spidermonkey/fdlibm/s_lib_version.c", "vendor/spidermonkey/fdlibm/s_log1p.c", "vendor/spidermonkey/fdlibm/s_logb.c", "vendor/spidermonkey/fdlibm/s_matherr.c", "vendor/spidermonkey/fdlibm/s_modf.c", "vendor/spidermonkey/fdlibm/s_nextafter.c", "vendor/spidermonkey/fdlibm/s_rint.c", "vendor/spidermonkey/fdlibm/s_scalbn.c", "vendor/spidermonkey/fdlibm/s_signgam.c", "vendor/spidermonkey/fdlibm/s_significand.c", "vendor/spidermonkey/fdlibm/s_sin.c", "vendor/spidermonkey/fdlibm/s_tan.c", "vendor/spidermonkey/fdlibm/s_tanh.c", "vendor/spidermonkey/fdlibm/w_acos.c", "vendor/spidermonkey/fdlibm/w_acosh.c", "vendor/spidermonkey/fdlibm/w_asin.c", "vendor/spidermonkey/fdlibm/w_atan2.c", "vendor/spidermonkey/fdlibm/w_atanh.c", "vendor/spidermonkey/fdlibm/w_cosh.c", "vendor/spidermonkey/fdlibm/w_exp.c", "vendor/spidermonkey/fdlibm/w_fmod.c", "vendor/spidermonkey/fdlibm/w_gamma.c", "vendor/spidermonkey/fdlibm/w_gamma_r.c", "vendor/spidermonkey/fdlibm/w_hypot.c", "vendor/spidermonkey/fdlibm/w_j0.c", "vendor/spidermonkey/fdlibm/w_j1.c", "vendor/spidermonkey/fdlibm/w_jn.c", "vendor/spidermonkey/fdlibm/w_lgamma.c", "vendor/spidermonkey/fdlibm/w_lgamma_r.c", "vendor/spidermonkey/fdlibm/w_log.c", "vendor/spidermonkey/fdlibm/w_log10.c", "vendor/spidermonkey/fdlibm/w_pow.c", "vendor/spidermonkey/fdlibm/w_remainder.c", "vendor/spidermonkey/fdlibm/w_scalb.c", "vendor/spidermonkey/fdlibm/w_sinh.c", "vendor/spidermonkey/fdlibm/w_sqrt.c", "vendor/spidermonkey/javascript-trace.d", "vendor/spidermonkey/js.c", "vendor/spidermonkey/js.mak", "vendor/spidermonkey/js.mdp", "vendor/spidermonkey/js.msg", "vendor/spidermonkey/js3240.rc", "vendor/spidermonkey/jsOS240.def", "vendor/spidermonkey/jsapi.c", "vendor/spidermonkey/jsapi.h", "vendor/spidermonkey/jsarena.c", "vendor/spidermonkey/jsarena.h", "vendor/spidermonkey/jsarray.c", "vendor/spidermonkey/jsarray.h", "vendor/spidermonkey/jsatom.c", "vendor/spidermonkey/jsatom.h", "vendor/spidermonkey/jsbit.h", "vendor/spidermonkey/jsbool.c", "vendor/spidermonkey/jsbool.h", "vendor/spidermonkey/jsclist.h", "vendor/spidermonkey/jscntxt.c", "vendor/spidermonkey/jscntxt.h", "vendor/spidermonkey/jscompat.h", "vendor/spidermonkey/jsconfig.h", "vendor/spidermonkey/jsconfig.mk", "vendor/spidermonkey/jscpucfg.c", "vendor/spidermonkey/jscpucfg.h", "vendor/spidermonkey/jsdate.c", "vendor/spidermonkey/jsdate.h", "vendor/spidermonkey/jsdbgapi.c", "vendor/spidermonkey/jsdbgapi.h", "vendor/spidermonkey/jsdhash.c", "vendor/spidermonkey/jsdhash.h", "vendor/spidermonkey/jsdtoa.c", "vendor/spidermonkey/jsdtoa.h", "vendor/spidermonkey/jsdtracef.c", "vendor/spidermonkey/jsdtracef.h", "vendor/spidermonkey/jsemit.c", "vendor/spidermonkey/jsemit.h", "vendor/spidermonkey/jsexn.c", "vendor/spidermonkey/jsexn.h", "vendor/spidermonkey/jsfile.c", "vendor/spidermonkey/jsfile.h", "vendor/spidermonkey/jsfile.msg", "vendor/spidermonkey/jsfun.c", "vendor/spidermonkey/jsfun.h", "vendor/spidermonkey/jsgc.c", "vendor/spidermonkey/jsgc.h", "vendor/spidermonkey/jshash.c", "vendor/spidermonkey/jshash.h", "vendor/spidermonkey/jsify.pl", "vendor/spidermonkey/jsinterp.c", "vendor/spidermonkey/jsinterp.h", "vendor/spidermonkey/jsinvoke.c", "vendor/spidermonkey/jsiter.c", "vendor/spidermonkey/jsiter.h", "vendor/spidermonkey/jskeyword.tbl", "vendor/spidermonkey/jskwgen.c", "vendor/spidermonkey/jslibmath.h", "vendor/spidermonkey/jslock.c", "vendor/spidermonkey/jslock.h", "vendor/spidermonkey/jslocko.asm", "vendor/spidermonkey/jslog2.c", "vendor/spidermonkey/jslong.c", "vendor/spidermonkey/jslong.h", "vendor/spidermonkey/jsmath.c", "vendor/spidermonkey/jsmath.h", "vendor/spidermonkey/jsnum.c", "vendor/spidermonkey/jsnum.h", "vendor/spidermonkey/jsobj.c", "vendor/spidermonkey/jsobj.h", "vendor/spidermonkey/jsopcode.c", "vendor/spidermonkey/jsopcode.h", "vendor/spidermonkey/jsopcode.tbl", "vendor/spidermonkey/jsotypes.h", "vendor/spidermonkey/jsparse.c", "vendor/spidermonkey/jsparse.h", "vendor/spidermonkey/jsprf.c", "vendor/spidermonkey/jsprf.h", "vendor/spidermonkey/jsproto.tbl", "vendor/spidermonkey/jsprvtd.h", "vendor/spidermonkey/jspubtd.h", "vendor/spidermonkey/jsregexp.c", "vendor/spidermonkey/jsregexp.h", "vendor/spidermonkey/jsreops.tbl", "vendor/spidermonkey/jsscan.c", "vendor/spidermonkey/jsscan.h", "vendor/spidermonkey/jsscope.c", "vendor/spidermonkey/jsscope.h", "vendor/spidermonkey/jsscript.c", "vendor/spidermonkey/jsscript.h", "vendor/spidermonkey/jsshell.msg", "vendor/spidermonkey/jsstddef.h", "vendor/spidermonkey/jsstr.c", "vendor/spidermonkey/jsstr.h", "vendor/spidermonkey/jstypes.h", "vendor/spidermonkey/jsutil.c", "vendor/spidermonkey/jsutil.h", "vendor/spidermonkey/jsxdrapi.c", "vendor/spidermonkey/jsxdrapi.h", "vendor/spidermonkey/jsxml.c", "vendor/spidermonkey/jsxml.h", "vendor/spidermonkey/lock_SunOS.s", "vendor/spidermonkey/perfect.js", "vendor/spidermonkey/plify_jsdhash.sed", "vendor/spidermonkey/prmjtime.c", "vendor/spidermonkey/prmjtime.h", "vendor/spidermonkey/resource.h", "vendor/spidermonkey/rules.mk", "vendor/spidermonkey/win32.order"]
s.has_rdoc = true
s.homepage = %q{http://github.com/jbarnette/johnson/wikis}
s.rdoc_options = ["--main", "README.rdoc"]
s.require_paths = ["lib", "ext"]
s.rubyforge_project = %q{johnson}
s.rubygems_version = %q{1.3.1}
- s.summary = %q{Johnson wraps JavaScript in a loving Ruby embrace.}
+ s.summary = %q{}
s.test_files = ["test/johnson/browser_test.rb", "test/johnson/conversions/array_test.rb", "test/johnson/conversions/boolean_test.rb", "test/johnson/conversions/callable_test.rb", "test/johnson/conversions/file_test.rb", "test/johnson/conversions/nil_test.rb", "test/johnson/conversions/number_test.rb", "test/johnson/conversions/regexp_test.rb", "test/johnson/conversions/string_test.rb", "test/johnson/conversions/struct_test.rb", "test/johnson/conversions/symbol_test.rb", "test/johnson/conversions/thread_test.rb", "test/johnson/error_test.rb", "test/johnson/extensions_test.rb", "test/johnson/nodes/array_literal_test.rb", "test/johnson/nodes/array_node_test.rb", "test/johnson/nodes/binary_node_test.rb", "test/johnson/nodes/bracket_access_test.rb", "test/johnson/nodes/delete_test.rb", "test/johnson/nodes/do_while_test.rb", "test/johnson/nodes/dot_accessor_test.rb", "test/johnson/nodes/export_test.rb", "test/johnson/nodes/for_test.rb", "test/johnson/nodes/function_test.rb", "test/johnson/nodes/if_test.rb", "test/johnson/nodes/import_test.rb", "test/johnson/nodes/label_test.rb", "test/johnson/nodes/let_test.rb", "test/johnson/nodes/object_literal_test.rb", "test/johnson/nodes/return_test.rb", "test/johnson/nodes/semi_test.rb", "test/johnson/nodes/switch_test.rb", "test/johnson/nodes/ternary_test.rb", "test/johnson/nodes/throw_test.rb", "test/johnson/nodes/try_node_test.rb", "test/johnson/nodes/typeof_test.rb", "test/johnson/nodes/unary_node_test.rb", "test/johnson/nodes/void_test.rb", "test/johnson/nodes/while_test.rb", "test/johnson/nodes/with_test.rb", "test/johnson/prelude_test.rb", "test/johnson/runtime_test.rb", "test/johnson/spidermonkey/context_test.rb", "test/johnson/spidermonkey/immutable_node_test.rb", "test/johnson/spidermonkey/js_land_proxy_test.rb", "test/johnson/spidermonkey/ruby_land_proxy_test.rb", "test/johnson/spidermonkey/runtime_test.rb", "test/johnson/version_test.rb", "test/johnson/visitors/dot_visitor_test.rb", "test/johnson/visitors/enumerating_visitor_test.rb", "test/johnson_test.rb", "test/parser_test.rb"]
if s.respond_to? :specification_version then
@@ -29,10 +29,13 @@ Gem::Specification.new do |s|
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
s.add_runtime_dependency(%q<rake>, [">= 0"])
+ s.add_development_dependency(%q<hoe>, [">= 1.11.0"])
else
s.add_dependency(%q<rake>, [">= 0"])
+ s.add_dependency(%q<hoe>, [">= 1.11.0"])
end
else
s.add_dependency(%q<rake>, [">= 0"])
+ s.add_dependency(%q<hoe>, [">= 1.11.0"])
end
end
View
741 lib/hoe.rb
@@ -1,741 +0,0 @@
-# -*- ruby -*-
-
-# Copyright (c) Ryan Davis, Zen Spider Software
-#
-# Permission is hereby granted, free of charge, to any person obtaining
-# a copy of this software and associated documentation files (the
-# "Software"), to deal in the Software without restriction, including
-# without limitation the rights to use, copy, modify, merge, publish,
-# distribute, sublicense, and/or sell copies of the Software, and to
-# permit persons to whom the Software is furnished to do so, subject to
-# the following conditions:
-#
-# The above copyright notice and this permission notice shall be
-# included in all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-require 'rubygems'
-require 'rake'
-require 'rake/gempackagetask'
-require 'rake/rdoctask'
-require 'rake/testtask'
-require 'rbconfig'
-require 'rubyforge'
-require 'yaml'
-
-class Hoe #:nodoc:
- VERSION = '1.5.3'
-
- ruby_prefix = Config::CONFIG['prefix']
- sitelibdir = Config::CONFIG['sitelibdir']
-
- ##
- # Used to specify a custom install location (for rake install).
-
- PREFIX = ENV['PREFIX'] || ruby_prefix
-
- ##
- # Used to add extra flags to RUBY_FLAGS.
-
- RUBY_DEBUG = ENV['RUBY_DEBUG']
-
- default_ruby_flags = "-w -I#{%w(lib ext bin test).join(File::PATH_SEPARATOR)}" +
- (RUBY_DEBUG ? " #{RUBY_DEBUG}" : '')
-
- ##
- # Used to specify flags to ruby [has smart default].
-
- RUBY_FLAGS = ENV['RUBY_FLAGS'] || default_ruby_flags
-
- ##
- # Used to add flags to test_unit (e.g., -n test_borked).
-
- FILTER = ENV['FILTER'] # for tests (eg FILTER="-n test_blah")
-
- # :stopdoc:
-
- RUBYLIB = if PREFIX == ruby_prefix then
- sitelibdir
- else
- File.join(PREFIX, sitelibdir[ruby_prefix.size..-1])
- end
-
- DLEXT = Config::CONFIG['DLEXT']
-
- WINDOZE = /djgpp|(cyg|ms|bcc)win|mingw/ =~ RUBY_PLATFORM unless defined? WINDOZE
-
- DIFF = if WINDOZE
- 'diff.exe'
- else
- if system("gdiff", __FILE__, __FILE__)
- 'gdiff' # solaris and kin suck
- else
- 'diff'
- end
- end unless defined? DIFF
-
- # :startdoc:
-
- ##
- # *Recommended*: The author(s) of the package. (can be array)
- # Really. Set this or we'll tease you.
-
- attr_accessor :author
-
- ##
- # Populated automatically from the manifest. List of executables.
-
- attr_accessor :bin_files # :nodoc:
-
- ##
- # Optional: A description of the release's latest changes. Auto-populates.
-
- attr_accessor :changes
-
- ##
- # Optional: An array of file patterns to delete on clean.
-
- attr_accessor :clean_globs
-
- ##
- # Optional: A description of the project. Auto-populates.
-
- attr_accessor :description
-
- ##
- # Optional: What sections from the readme to use for auto-description. Defaults to %w(description).
-
- attr_accessor :description_sections
-
- ##
- # *Recommended*: The author's email address(es). (can be array)
-
- attr_accessor :email
-
- ##
- # Optional: An array of rubygem dependencies.
-
- attr_accessor :extra_deps
-
- ##
- # Populated automatically from the manifest. List of library files.
-
- attr_accessor :lib_files # :nodoc:
-
- ##
- # Optional: Array of incompatible versions for multiruby filtering. Used as a regex.
-
- attr_accessor :multiruby_skip
-
- ##
- # *MANDATORY*: The name of the release.
-
- attr_accessor :name
-
- ##
- # Optional: Should package create a tarball? [default: true]
-
- attr_accessor :need_tar
-
- ##
- # Optional: Should package create a zipfile? [default: false]
-
- attr_accessor :need_zip
-
- ##
- # Optional: A post-install message to be displayed when gem is installed.
-
- attr_accessor :post_install_message
-
- ##
- # Optional: A regexp to match documentation files against the manifest.
-
- attr_accessor :rdoc_pattern
-
- ##
- # Optional: Name of RDoc destination directory on Rubyforge. [default: +name+]
-
- attr_accessor :remote_rdoc_dir
-
- ##
- # Optional: Flags for RDoc rsync. [default: "-av --delete"]
-
- attr_accessor :rsync_args
-
- ##
- # Optional: The name of the rubyforge project. [default: name.downcase]
-
- attr_accessor :rubyforge_name
-
- ##
- # The Gem::Specification.
-
- attr_accessor :spec # :nodoc:
-
- ##
- # Optional: A hash of extra values to set in the gemspec. Value may be a proc.
-
- attr_accessor :spec_extras
-
- ##
- # Optional: A short summary of the project. Auto-populates.
-
- attr_accessor :summary
-
- ##
- # Optional: Number of sentences from description for summary. Defaults to 1.
-
- attr_accessor :summary_sentences
-
- ##
- # Populated automatically from the manifest. List of tests.
-
- attr_accessor :test_files # :nodoc:
-
- ##
- # Optional: An array of test file patterns [default: test/**/test_*.rb]
-
- attr_accessor :test_globs
-
- ##
- # Optional: The url(s) of the project. (can be array). Auto-populates.
-
- attr_accessor :url
-
- ##
- # *MANDATORY*: The version. Don't hardcode! use a constant in the project.
-
- attr_accessor :version
-
- def initialize(name, version) # :nodoc:
- self.name = name
- self.version = version
-
- # Defaults
- self.author = []
- self.clean_globs = %w(diff diff.txt email.txt ri
- *.gem *~ **/*~ *.rbc **/*.rbc)
- self.description_sections = %w(description)
- self.email = []
- self.extra_deps = []
- self.multiruby_skip = []
- self.need_tar = true
- self.need_zip = false
- self.rdoc_pattern = /^(lib|bin|ext)|(rdoc|txt)$/
- self.remote_rdoc_dir = name
- self.rsync_args = '-av --delete'
- self.rubyforge_name = name.downcase
- self.spec_extras = {}
- self.summary_sentences = 1
- self.test_globs = ['test/**/test_*.rb']
- self.post_install_message = nil
-
- yield self if block_given?
-
- # Intuit values:
-
- def missing name
- warn "** #{name} is missing or in the wrong format for auto-intuiting."
- warn " run `sow blah` and look at its text files"
- end
-
- readme = File.read("README.rdoc").split(/^(=+ .*)$/)[1..-1] rescue ''
- unless readme.empty? then
- sections = readme.map { |s|
- s =~ /^=/ ? s.strip.downcase.chomp(':').split.last : s.strip
- }
- sections = Hash[*sections]
- desc = sections.values_at(*description_sections).join("\n\n")
- summ = desc.split(/\.\s+/).first(summary_sentences).join(". ")
-
- self.description ||= desc
- self.summary ||= summ
- self.url ||= readme[1].gsub(/^\* /, '').split(/\n/).grep(/\S+/)
- else
- missing 'README.rdoc'
- end
-
- self.changes ||= begin
- h = File.read("CHANGELOG")
- h.split(/^(===.*)/)[1..2].join.strip
- rescue
- missing 'CHANGELOG'
- ''
- end
-
- %w(email author).each do |field|
- value = self.send(field)
- if value.nil? or value.empty? then
- if Time.now < Time.local(2008, 4, 1) then
- warn "Hoe #{field} value not set - Fix by 2008-04-01!"
- self.send "#{field}=", "doofus"
- else
- abort "Hoe #{field} value not set. aborting"
- end
- end
- end
-
- self.extra_deps = Array(extra_deps).map { |o| String === o ? [o] : o }
-
- define_tasks
- end
-
- def developer name, email
- self.author << name
- self.email << email
- end
-
- def define_tasks # :nodoc:
- def with_config # :nodoc:
- rc = File.expand_path("~/.hoerc")
- exists = File.exist? rc
- config = exists ? YAML.load_file(rc) : {}
- yield(config, rc)
- end
-
- desc 'Run the default tasks.'
- task :default => :test
-
- desc 'Run the test suite. Use FILTER to add to the command line.'
- task :test do
- run_tests
- end
-
- desc 'Show which test files fail when run alone.'
- task :test_deps do
- tests = Dir["test/**/test_*.rb"] + Dir["test/**/*_test.rb"]
-
- tests.each do |test|
- if not system "ruby -Ibin:lib:test #{test} &> /dev/null" then
- puts "Dependency Issues: #{test}"
- end
- end
- end
-
- desc 'Run the test suite using multiruby.'
- task :multi do
- run_tests :multi
- end
-
- ############################################################
- # Packaging and Installing
-
- signing_key = nil
- cert_chain = []
-
- with_config do |config, path|
- break unless config['signing_key_file'] and config['signing_cert_file']
- key_file = File.expand_path config['signing_key_file'].to_s
- signing_key = key_file if File.exist? key_file
-
- cert_file = File.expand_path config['signing_cert_file'].to_s
- cert_chain << cert_file if File.exist? cert_file
- end
-
- self.spec = Gem::Specification.new do |s|
- s.name = name
- s.version = version
- s.summary = summary
- case author
- when Array
- s.authors = author
- else
- s.author = author
- end
- s.email = email
- s.homepage = Array(url).first
- s.rubyforge_project = rubyforge_name
-
- s.description = description
-
- extra_deps.each do |dep|
- s.add_dependency(*dep)
- end
-
- s.files = File.read("MANIFEST").delete("\r").split(/\n/)
- s.executables = s.files.grep(/^bin/) { |f| File.basename(f) }
-
- s.bindir = "bin"
- dirs = Dir['{lib,ext}']
- s.require_paths = dirs unless dirs.empty?
-
- s.rdoc_options = ['--main', 'README.rdoc']
- s.extra_rdoc_files = s.files.grep(/(txt|rdoc)$/)
- s.has_rdoc = true
-
- s.post_install_message = post_install_message
-
- if test ?f, "test/test_all.rb" then
- s.test_file = "test/test_all.rb"
- else
- s.test_files = Dir[*test_globs]
- end
-
- if signing_key and cert_chain then
- s.signing_key = signing_key
- s.cert_chain = cert_chain
- end
-
- ############################################################
- # Allow automatic inclusion of compiled extensions
- if ENV['INLINE'] then
- s.platform = ENV['FORCE_PLATFORM'] || Gem::Platform::CURRENT
- # name of the extension is CamelCase
- alternate_name = if name =~ /[A-Z]/ then
- name.gsub(/([A-Z])/, '_\1').downcase.sub(/^_/, '')
- elsif name =~ /_/ then
- name.capitalize.gsub(/_([a-z])/) { $1.upcase }
- end
-
- # Try collecting Inline extensions for +name+
- if defined?(Inline) then
- directory 'lib/inline'
-
- extensions = Dir.chdir(Inline::directory) {
- Dir["Inline_{#{name},#{alternate_name}}_*.#{DLEXT}"]
- }
- extensions.each do |ext|
- # add the inlined extension to the spec files
- s.files += ["lib/inline/#{ext}"]
-
- # include the file in the tasks
- file "lib/inline/#{ext}" => ["lib/inline"] do
- cp File.join(Inline::directory, ext), "lib/inline"
- end
- end
- end
- end
-
- # Do any extra stuff the user wants
- spec_extras.each do |msg, val|
- case val
- when Proc
- val.call(s.send(msg))
- else
- s.send "#{msg}=", val
- end
- end
- end
-
- desc 'Show information about the gem.'
- task :debug_gem do
- puts spec.to_ruby
- end
-
- self.lib_files = spec.files.grep(/^(lib|ext)/)
- self.bin_files = spec.files.grep(/^bin/)
- self.test_files = spec.files.grep(/^test/)
-
- Rake::GemPackageTask.new spec do |pkg|
- pkg.need_tar = @need_tar
- pkg.need_zip = @need_zip
- end
-
- desc 'Install the package as a gem.'
- task :install_gem => [:clean, :package] do
- sh "#{'sudo ' unless WINDOZE}gem install --local pkg/*.gem"
- end
-
- desc 'Package and upload the release to rubyforge.'
- task :release => [:clean, :package] do |t|
- v = ENV["VERSION"] or abort "Must supply VERSION=x.y.z"
- abort "Versions don't match #{v} vs #{version}" if v != version
- pkg = "pkg/#{name}-#{version}"
-
- if $DEBUG then
- puts "release_id = rf.add_release #{rubyforge_name.inspect}, #{name.inspect}, #{version.inspect}, \"#{pkg}.tgz\""
- puts "rf.add_file #{rubyforge_name.inspect}, #{name.inspect}, release_id, \"#{pkg}.gem\""
- end
-
- rf = RubyForge.new.configure
- puts "Logging in"
- rf.login
-
- c = rf.userconfig
- c["release_notes"] = description if description
- c["release_changes"] = changes if changes
- c["preformatted"] = true
-
- files = [(@need_tar ? "#{pkg}.tgz" : nil),
- (@need_zip ? "#{pkg}.zip" : nil),
- "#{pkg}.gem"].compact
-
- puts "Releasing #{name} v. #{version}"
- rf.add_release rubyforge_name, name, version, *files
- end
-
- ############################################################
- # Doco
-
- Rake::RDocTask.new(:docs) do |rd|
- rd.main = "README.rdoc"
- rd.options << '-d' if RUBY_PLATFORM !~ /win32/ and `which dot` =~ /\/dot/ and not ENV['NODOT']
- rd.rdoc_dir = 'doc'
- files = spec.files.grep(rdoc_pattern)
- files -= ['MANIFEST', 'lib/hoe.rb']
- rd.rdoc_files.push(*files)
-
- title = "#{name}-#{version} Documentation"
- title = "#{rubyforge_name}'s " + title if rubyforge_name != name
-
- rd.options << "-t #{title}"
- end
-
- desc 'Generate ri locally for testing.'
- task :ridocs => :clean do
- sh %q{ rdoc --ri -o ri . }
- end
-
- desc 'Publish RDoc to RubyForge.'
- task :publish_docs => [:clean, :docs] do
- config = YAML.load(File.read(File.expand_path("~/.rubyforge/user-config.yml")))
- host = "#{config["username"]}@rubyforge.org"
-
- remote_dir = "/var/www/gforge-projects/#{rubyforge_name}/#{remote_rdoc_dir}"
- local_dir = 'doc'
-
- sh %{rsync #{rsync_args} #{local_dir}/ #{host}:#{remote_dir}}
- end
-
- # no doco for this one
- task :publish_on_announce do
- with_config do |config, _|
- Rake::Task['publish_docs'].invoke if config["publish_on_announce"]
- end
- end
-
- ############################################################
- # Misc/Maintenance:
-
- desc 'Run ZenTest against the package.'
- task :audit do
- libs = %w(lib test ext).join(File::PATH_SEPARATOR)
- sh "zentest -I=#{libs} #{spec.files.grep(/^(lib|test)/).join(' ')}"
- end
-
- desc 'Clean up all the extras.'
- task :clean => [ :clobber_docs, :clobber_package ] do
- clean_globs.each do |pattern|
- files = Dir[pattern]
- rm_rf files, :verbose => true unless files.empty?
- end
- end
-
- desc 'Create a fresh ~/.hoerc file.'
- task :config_hoe do
- with_config do |config, path|
- default_config = {
- "exclude" => /tmp$|CVS|\.svn/,
- "publish_on_announce" => false,
- "signing_key_file" => "~/.gem/gem-private_key.pem",
- "signing_cert_file" => "~/.gem/gem-public_cert.pem",
- "blogs" => [ {
- "user" => "user",
- "url" => "url",
- "extra_headers" => {
- "mt_convert_breaks" => "markdown"
- },
- "blog_id" => "blog_id",
- "password"=>"password",
- } ],
- }
- File.open(path, "w") do |f|
- YAML.dump(default_config.merge(config), f)
- end
-
- editor = ENV['EDITOR'] || 'vi'
- system "#{editor} #{path}" if ENV['SHOW_EDITOR'] != 'no'
- end
- end
-
- desc 'Generate email announcement file.'
- task :email do
- require 'rubyforge'
- subject, title, body, urls = announcement
-
- File.open("email.txt", "w") do |mail|
- mail.puts "Subject: [ANN] #{subject}"
- mail.puts
- mail.puts title
- mail.puts
- mail.puts urls
- mail.puts
- mail.puts body
- mail.puts
- mail.puts urls
- end
- puts "Created email.txt"
- end
-
- desc 'Post announcement to blog.'
- task :post_blog do
- require 'xmlrpc/client'
-
- with_config do |config, path|
- break unless config['blogs']
-
- subject, title, body, urls = announcement
- body += "\n\n#{urls}"
-
- config['blogs'].each do |site|
- server = XMLRPC::Client.new2(site['url'])
- content = site['extra_headers'].merge(:title => title,
- :description => body)
- result = server.call('metaWeblog.newPost',
- site['blog_id'],
- site['user'],
- site['password'],
- content,
- true)
- end
- end
- end
-
- desc 'Post announcement to rubyforge.'
- task :post_news do
- require 'rubyforge'
- subject, title, body, urls = announcement
-
- rf = RubyForge.new.configure
- rf.login
- rf.post_news(rubyforge_name, subject, "#{title}\n\n#{body}")
- puts "Posted to rubyforge"
- end
-
- desc 'Create news email file and post to rubyforge.'
- task :announce => [:email, :post_news, :post_blog, :publish_on_announce ]
-
- desc 'Verify the manifest.'
- task :check_manifest => :clean do
- f = "Manifest.tmp"
- require 'find'
- files = []
- with_config do |config, _|
- exclusions = config["exclude"]
- abort "exclude entry missing from .hoerc. Aborting." if exclusions.nil?
- Find.find '.' do |path|
- next unless File.file? path
- next if path =~ exclusions
- files << path[2..-1]
- end
- files = files.sort.join "\n"
- File.open f, 'w' do |fp| fp.puts files end
- system "#{DIFF} -du MANIFEST #{f}"
- rm f
- end
- end
-
- desc 'Generate a key for signing your gems.'
- task :generate_key do
- email = spec.email
- abort "No email in your gemspec" if email.nil? or email.empty?
-
- key_file = with_config { |config, _| config['signing_key_file'] }
- cert_file = with_config { |config, _| config['signing_cert_file'] }
-
- if key_file.nil? or cert_file.nil? then
- ENV['SHOW_EDITOR'] ||= 'no'
- Rake::Task['config_hoe'].invoke
-
- key_file = with_config { |config, _| config['signing_key_file'] }
- cert_file = with_config { |config, _| config['signing_cert_file'] }
- end
-
- key_file = File.expand_path key_file
- cert_file = File.expand_path cert_file
-
- unless File.exist? key_file or File.exist? cert_file then
- sh "gem cert --build #{email}"
- mv "gem-private_key.pem", key_file, :verbose => true
- mv "gem-public_cert.pem", cert_file, :verbose => true
-
- puts "Installed key and certificate."
-
- rf = RubyForge.new.configure
- rf.login
-
- cert_package = "#{rubyforge_name}-certificates"
-
- begin
- rf.lookup 'package', cert_package
- rescue
- rf.create_package rubyforge_name, cert_package
- end
-
- begin
- rf.lookup('release', cert_package)['certificates']
- rf.add_file rubyforge_name, cert_package, 'certificates', cert_file
- rescue
- rf.add_release rubyforge_name, cert_package, 'certificates', cert_file
- end
-
- puts "Uploaded certificate to release \"certificates\" in package #{cert_package}"
- else
- puts "Keys already exist."
- end
- end
-
- end # end define
-
- def announcement # :nodoc:
- changes = self.changes.rdoc_to_markdown
-
- subject = "#{name} #{version} Released"
- title = "#{name} version #{version} has been released!"
- body = "#{description}\n\nChanges:\n\n#{changes}".rdoc_to_markdown
- urls = Array(url).map { |s| "* <#{s.strip.rdoc_to_markdown}>" }.join("\n")
-
- return subject, title, body, urls
- end
-
- def run_tests(multi=false) # :nodoc:
- msg = multi ? :sh : :ruby
- cmd = if test ?f, 'test/test_all.rb' then
- "#{RUBY_FLAGS} test/test_all.rb #{FILTER}"
- else
- tests = ['test/unit'] + test_globs.map { |g| Dir.glob(g) }.flatten
- tests.map! {|f| %Q(require "#{f}")}
- "#{RUBY_FLAGS} -e '#{tests.join("; ")}' #{FILTER}"
- end
-
- excludes = multiruby_skip.join(":")
- ENV['EXCLUDED_VERSIONS'] = excludes
- cmd = "multiruby #{cmd}" if multi
-
- send msg, cmd
- end
-
- ##
- # Reads a file at +path+ and spits out an array of the +paragraphs+ specified.
- #
- # changes = p.paragraphs_of('CHANGELOG', 0..1).join("\n\n")
- # summary, *description = p.paragraphs_of('README.rdoc', 3, 3..8)
-
- def paragraphs_of(path, *paragraphs)
- File.read(path).delete("\r").split(/\n\n+/).values_at(*paragraphs)
- end
-end
-
-# :enddoc:
-
-class ::Rake::SshDirPublisher # :nodoc:
- attr_reader :host, :remote_dir, :local_dir
-end
-
-class String
- def rdoc_to_markdown
- self.gsub(/^mailto:/, '').gsub(/^(=+)/) { "#" * $1.size }
- end
-end
-
-if $0 == __FILE__ then
- out = `rake -T | egrep -v "redocs|repackage|clobber|trunk"`
- puts out.gsub(/\#/, '-').gsub(/^rake /, '# * ')
-end
View
0  todo/.keep
No changes.
Please sign in to comment.
Something went wrong with that request. Please try again.