Faidon has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/56362


Change subject: New upstream release
......................................................................

New upstream release

New upstream release; drop patches drop-require-rubygems and execjs, merged
upstream.

Change-Id: Ib5444e216bfbc207662f0b3b79edcd6ef1321646
---
M debian/changelog
D debian/patches/drop-require-rubygems
D debian/patches/execjs
M debian/patches/series
M debian/rules
5 files changed, 11 insertions(+), 112 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/operations/debs/ruby-jsduck 
refs/changes/62/56362/1

diff --git a/debian/changelog b/debian/changelog
index df15331..15d6b13 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+ruby-jsduck (4.7.1-1~wmf1) precise-wikimedia; urgency=low
+
+  * New upstream release.
+    - Drop patches drop-require-rubygems and execjs, merged upstream.
+  * Use embedded copy of ExtJS instead of libjs-extjs, as apparently this
+    needs a 4.x version of ExtJS that doesn't exist in Debian at all.
+
+ -- Faidon Liambotis <[email protected]>  Thu, 28 Mar 2013 05:58:46 +0200
+
 ruby-jsduck (4.6.2-1~wmf1) precise-wikimedia; urgency=low
 
   * Initial release.
diff --git a/debian/patches/drop-require-rubygems 
b/debian/patches/drop-require-rubygems
deleted file mode 100644
index 9726f7f..0000000
--- a/debian/patches/drop-require-rubygems
+++ /dev/null
@@ -1,41 +0,0 @@
-Description: remove spurious rubygems requires
-Author: Faidon Liambotis <[email protected]>
-Last-Update: 2013-03-18
-
---- a/lib/jsduck/doc_formatter.rb
-+++ b/lib/jsduck/doc_formatter.rb
-@@ -1,4 +1,3 @@
--require 'rubygems'
- require 'strscan'
- require 'rdiscount'
- require 'jsduck/html_stack'
---- a/bin/compare
-+++ b/bin/compare
-@@ -4,7 +4,6 @@
- # For running when gem not installed
- $:.unshift File.dirname(File.dirname(__FILE__)) + "/lib"
- 
--require "rubygems"
- require "cgi"
- require "optparse"
- require "jsduck/util/json"
---- a/bin/graph
-+++ b/bin/graph
-@@ -3,7 +3,6 @@
- # For running when gem not installed
- $:.unshift File.dirname(File.dirname(__FILE__)) + "/lib"
- 
--require "rubygems"
- require "pp"
- require "jsduck/json_duck"
- 
---- a/bin/jsduck
-+++ b/bin/jsduck
-@@ -17,7 +17,6 @@
- # For running when gem not installed
- $:.unshift File.dirname(File.dirname(__FILE__)) + "/lib"
- 
--require 'rubygems'
- require 'jsduck/app'
- require 'jsduck/options'
- 
diff --git a/debian/patches/execjs b/debian/patches/execjs
deleted file mode 100644
index 3fd658f..0000000
--- a/debian/patches/execjs
+++ /dev/null
@@ -1,69 +0,0 @@
-Description: replace therubyracer with ExecJS
-  therubyracer isn't packaged in Debian and it's non-trivial to do so. Replace
-  the calls with ExecJS and therefore add an abstraction layer that allows
-  Node.js or Spidermonkey to be used instead -- or a bunch of other native Ruby
-  backends including therubyracer, in case it's installed in the system.
-Author: Faidon Liambotis <[email protected]>
-Last-Update: 2013-03-18
-
---- a/lib/jsduck/esprima.rb
-+++ b/lib/jsduck/esprima.rb
-@@ -1,10 +1,12 @@
--require 'v8'
-+require 'execjs'
- require 'jsduck/util/json'
- require 'jsduck/util/singleton'
- 
- module JsDuck
- 
--  # Runs Esprima.js through V8.
-+  # Runs Esprima.js through execjs (this will select any available
-+  # JavaScript runtime - preferably therubyracer on MRI and JScript
-+  # on Windows).
-   #
-   # Initialized as singleton to avoid loading the esprima.js more
-   # than once - otherwise performace will severely suffer.
-@@ -12,23 +14,22 @@ module JsDuck
-     include Util::Singleton
- 
-     def initialize
--      @v8 = V8::Context.new
--      esprima = 
File.dirname(File.expand_path(__FILE__))+"/esprima/esprima.js";
-+      esprima_path = 
File.dirname(File.expand_path(__FILE__))+"/esprima/esprima.js";
-+      esprima = IO.read(esprima_path)
- 
--      # Esprima attempts to assign to window.esprima, but our v8
--      # engine has no global window variable defined.  So define our
--      # own and then grab esprima out from it again.
--      @v8.eval("var window = {};")
--      @v8.load(esprima)
--      @v8.eval("var esprima = window.esprima;")
-+      # Esprima attempts to assign to window.esprima, but our engine has no
-+      # global window variable defined.  So define our own and then grab
-+      # esprima out from it again.
-+      esprima = "var window = {};\n\n" + esprima + "var esprima = 
window.esprima;"
-+      helper = "function runEsprima(js) { return 
JSON.stringify(esprima.parse(js, {comment: true, range: true, raw: true})); }"
-+      @context = ExecJS.compile(esprima + "\n\n" + helper)
-     end
- 
-     # Parses JavaScript source code using Esprima.js
-     #
-     # Returns the resulting AST
-     def parse(input)
--      @v8['js'] = input
--      json = @v8.eval("JSON.stringify(esprima.parse(js, {comment: true, 
range: true, raw: true}))")
-+      json = @context.call("runEsprima", input)
-       return Util::Json.parse(json, :max_nesting => false)
-     end
- 
---- a/jsduck.gemspec
-+++ b/jsduck.gemspec
-@@ -22,7 +22,7 @@ Gem::Specification.new do |s|
-   s.add_dependency 'rdiscount'
-   s.add_dependency 'json'
-   s.add_dependency 'parallel'
--  s.add_dependency 'therubyracer', '>= 0.10.0', '< 0.11.0'
-+  s.add_dependency 'execjs'
-   s.add_dependency 'dimensions'
- 
-   s.add_development_dependency 'rspec'
diff --git a/debian/patches/series b/debian/patches/series
index 0c930f4..146bace 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1 @@
 root-usr-share
-drop-require-rubygems
-execjs
diff --git a/debian/rules b/debian/rules
index 65360d2..2af5ab8 100755
--- a/debian/rules
+++ b/debian/rules
@@ -12,6 +12,8 @@
        # put template-min in place
        mkdir -p debian/ruby-jsduck/usr/share/ruby-jsduck/
        cp -r template-min/ debian/ruby-jsduck/usr/share/ruby-jsduck/
+       find debian/ruby-jsduck/usr/share/ruby-jsduck/ -type f \
+               -print0 2>/dev/null | xargs -0r chmod 644
        rm -f debian/ruby-jsduck/usr/share/ruby-jsduck/template-min/README.md
 
 .PHONY: override_dh_auto_install

-- 
To view, visit https://gerrit.wikimedia.org/r/56362
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib5444e216bfbc207662f0b3b79edcd6ef1321646
Gerrit-PatchSet: 1
Gerrit-Project: operations/debs/ruby-jsduck
Gerrit-Branch: master
Gerrit-Owner: Faidon <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to