Overview
Request 233578 accepted
Update to 0.10.26 including some public security fixes...
old: devel:languages:nodejs/nodejs
new: home:lrupp:branches:devel:languages:nodejs/nodejs rev None
Index: node-gyp-addon-gypi.patch
===================================================================
--- node-gyp-addon-gypi.patch (revision 42)
+++ node-gyp-addon-gypi.patch (revision 2)
@@ -1,8 +1,7 @@
-diff --git a/addon-rpm.gypi b/addon-rpm.gypi
-new file mode 100644
-index 0000000..3e259ef
+Index: node-v0.10.26/deps/npm/node_modules/node-gyp/addon-rpm.gypi
+===================================================================
--- /dev/null
-+++ b/addon-rpm.gypi
++++ node-v0.10.26/deps/npm/node_modules/node-gyp/addon-rpm.gypi
@@ -0,0 +1,35 @@
+{
+ 'target_defaults': {
@@ -39,11 +38,11 @@
+ ]
+ }
+}
-diff --git a/lib/configure.js b/lib/configure.js
-index 37c9ad3..acac561 100644
---- a/lib/configure.js
-+++ b/lib/configure.js
-@@ -207,30 +207,26 @@ function configure (gyp, argv, callback) {
+Index: node-v0.10.26/deps/npm/node_modules/node-gyp/lib/configure.js
+===================================================================
+--- node-v0.10.26.orig/deps/npm/node_modules/node-gyp/lib/configure.js
++++ node-v0.10.26/deps/npm/node_modules/node-gyp/lib/configure.js
+@@ -129,30 +129,23 @@ function configure (gyp, argv, callback)
// if --target was given, then determine a target version to compile for
versionStr = gyp.opts.target
log.verbose('get node dir', 'compiling against --target node version: %s', versionStr)
@@ -55,46 +54,45 @@
-
- // make sure we have a valid version
- try {
-+ // make sure we have a valid version
- version = semver.parse(versionStr)
+- version = semver.parse(versionStr)
- } catch (e) {
- return callback(e)
- }
- if (!version) {
- return callback(new Error('Invalid version number: ' + versionStr))
- }
+-
+- // ensure that the target node version's dev files are installed
+- gyp.opts.ensure = true
+- gyp.commands.install([ versionStr ], function (err, version) {
++ // make sure we have a valid version
+ if (!version) {
+ return callback(new Error('Invalid version number: ' + versionStr))
+ }
+ // ensure that the target node version's dev files are installed
+ gyp.opts.ensure = true
+ gyp.commands.install([ versionStr ], function (err, version) {
-+ if (err) return callback(err)
+ if (err) return callback(err)
+- log.verbose('get node dir', 'target node version installed:', version)
+- nodeDir = path.resolve(gyp.devDir, version)
+- createBuildDir()
+- })
+ log.verbose('get node dir', 'target node version installed:', version)
+ nodeDir = path.resolve(gyp.devDir, version)
+ createBuildDir()
+ })
-+ } else {
-+ // if no --target was specified then use RPM-installed headers
-+ log.verbose('get node dir', 'no --target version specified, falling back to RPM installed headers')
-+ nodeDir = '/usr/share/node'
-
-- // ensure that the target node version's dev files are installed
-- gyp.opts.ensure = true
-- gyp.commands.install([ versionStr ], function (err, version) {
-- if (err) return callback(err)
-- log.verbose('get node dir', 'target node version installed:', version)
-- nodeDir = path.resolve(gyp.devDir, version)
- createBuildDir()
-- })
-+ }
++ } else {
++ // if no --target was specified then use RPM-installed headers
++ log.verbose('get node dir', 'no --target version specified, falling back to RPM installed headers')
++ nodeDir = '/usr/share/node'
++ }
}
}
-@@ -383,7 +379,8 @@ function configure (gyp, argv, callback) {
+@@ -296,7 +289,8 @@ function configure (gyp, argv, callback)
// this logic ported from the old `gyp_addon` python file
- var gyp_script = path.resolve(__dirname, '..', 'gyp', 'gyp')
+ var gyp_script = path.resolve(__dirname, '..', 'gyp', 'gyp_main.py')
- var addon_gypi = path.resolve(__dirname, '..', 'addon.gypi')
+ var addon_gypi_file = gyp.opts.target || gyp.opts.nodeDir ? 'addon.gypi' : 'addon-rpm.gypi'
+ var addon_gypi = path.resolve(__dirname, '..', addon_gypi_file)
Index: nodejs-lib64path.patch
===================================================================
--- nodejs-lib64path.patch (revision 42)
+++ nodejs-lib64path.patch (revision 2)
@@ -1,7 +1,7 @@
-Index: node-v0.10.4/lib/module.js
+Index: node-v0.10.26/lib/module.js
===================================================================
---- node-v0.10.4.orig/lib/module.js
-+++ node-v0.10.4/lib/module.js
+--- node-v0.10.26.orig/lib/module.js
++++ node-v0.10.26/lib/module.js
@@ -508,7 +508,7 @@ Module._initPaths = function() {
var homeDir = process.env.HOME;
}
@@ -11,10 +11,10 @@
if (homeDir) {
paths.unshift(path.resolve(homeDir, '.node_libraries'));
-Index: node-v0.10.4/tools/install.py
+Index: node-v0.10.26/tools/install.py
===================================================================
---- node-v0.10.4.orig/tools/install.py
-+++ node-v0.10.4/tools/install.py
+--- node-v0.10.26.orig/tools/install.py
++++ node-v0.10.26/tools/install.py
@@ -86,7 +86,7 @@ def update_shebang(path, shebang):
open(path, 'w').write(s)
@@ -33,7 +33,7 @@
if os.environ.get('PORTABLE'):
# This crazy hack is necessary to make the shebang execute the copy
# of node relative to the same directory as the npm script. The precompiled
-@@ -124,7 +124,7 @@ def files(action):
+@@ -132,7 +132,7 @@ def files(action):
# install unconditionally, checking if the platform supports dtrace doesn't
# work when cross-compiling and besides, there's at least one linux flavor
# with dtrace support now (oracle's "unbreakable" linux)
Index: nodejs.changes
===================================================================
--- nodejs.changes (revision 42)
+++ nodejs.changes (revision 2)
@@ -1,4 +1,60 @@
-------------------------------------------------------------------
+Sun Apr 27 11:29:44 UTC 2014 - lars@linux-schulserver.de
+
+- update to 0.10.26:
+ * cares: backport TXT parsing fix (Fedor Indutny)
+ * child_process: fix spawn() optional arguments (Sam Roberts)
+ * child_process: don't assert on stale file descriptor events (Fedor Indutny)
+ * cluster: report more errors to workers (Fedor Indutny)
+ * cluster, v8: fix --logfile=%p.log (Ben Noordhuis)
+ * crypto: Make Decipher._flush() emit errors. (Kai Groner)
+ * crypto: throw on SignFinal failure (Fedor Indutny)
+ * crypto: update root certificates (Ben Noordhuis)
+ * crypto: clear errors from verify failure (Timothy J Fontaine)
+ * debugger: Fix breakpoint not showing after restart (Farid Neshat)
+ * debugger: Fix bug in sb() with unnamed script (Maxim Bogushevich)
+ * dgram: fix abort when getting `fd` of closed dgram (Fedor Indutny)
+ * domains: exit() only affects active domains (Ryan Graham)
+ * dtrace: interpret two byte strings (Dave Pacheco)
+ * events: do not accept NaN in setMaxListeners (Fedor Indutny)
+ * events: avoid calling `once` functions twice (Tim Wood)
+ * events: fix TypeError in removeAllListeners (Jeremy Martin)
+ * fs: make unwatchFile() insensitive to path (iamdoron)
+ * fs: fix fs.truncate() file content zeroing bug (Ben Noordhuis)
+ * fs: report correct path when EEXIST (Fedor Indutny)
+ * http: provide backpressure for pipeline flood (isaacs)
+ * module: only cache package main (Wyatt Preul)
+ * net: do not re-emit stream errors (Fedor Indutny)
+ * net: make Socket destroy() re-entrance safe (Jun Ma)
+ * net: reset `endEmitted` on reconnect (Fedor Indutny)
+ * node: do not close stdio implicitly (Fedor Indutny)
+ * process: enforce allowed signals for kill (Sam Roberts)
+ * readline: handle input starting with control chars (Eric Schrock)
+ * repl: do not insert duplicates into completions (Maciej Małecki)
+ * src: OnFatalError handler must abort() (Timothy J Fontaine)
+ * tls: emit 'end' on .receivedShutdown (Fedor Indutny)
+ * tls: fix potential data corruption (Fedor Indutny)
+ * tls: handle `ssl.start()` errors appropriately (Fedor Indutny)
+ * tls: reset NPN callbacks after SNI (Fedor Indutny)
+ * tls: prevent stalls by using read(0) (Fedor Indutny)
+ * tls: fix premature connection termination (Ben Noordhuis)
+ * tls: fix sporadic hang and partial reads (Fedor Indutny)
+ * tls: prevent duplicate values returned from read (Nathan Rajlich)
+ * tls: NPN protocols are now local to connections (Fedor Indutny)
+ * src: Fix memory leak on closed handles (Timothy J Fontaine)
+ * stream: writes may return false but forget to emit drain (Yang Tianyang)
+ * stream: objectMode transforms allow falsey values (isaacs)
+ * stream: Don't crash on unset _events property (isaacs)
+ * stream: Pass 'buffer' encoding with decoded writable chunks (isaacs)
+ * v8: support compiling with VS2013 (Fedor Indutny)
+ * v8: Fix enumeration for objects with lots of properties
+ * v8: backport fix for CVE-2013-6639 and CVE-2013-6640
+- refresh nodejs-lib64path.patch
+- rebuild node-gyp-addon-gypi.patch from scratch
+- small specfile cleanup (remove commented values finally)
+- fix two file permissions during setup
+
+-------------------------------------------------------------------
Fri Mar 21 09:34:31 UTC 2014 - jmassaguerpla@suse.com
- move v8 headers to node subdirectory in include dir. Otherwise
Index: nodejs.spec
===================================================================
--- nodejs.spec (revision 42)
+++ nodejs.spec (revision 2)
@@ -17,7 +17,7 @@
Name: nodejs
-Version: 0.10.17
+Version: 0.10.26
Release: 0
Summary: Evented I/O for V8 JavaScript
License: MIT
@@ -27,22 +27,11 @@
Patch0: nodejs-lib64path.patch
Patch2: nodejs-libpath.patch
Patch4: node-gyp-addon-gypi.patch
-###Patch5: nodejs-v8-3.18.0.patch
Patch6: nodejs-openssl-missing-api.patch
Patch7: nodejs-add_missing_shebang_to_read-package-json.patch
BuildRequires: curl
BuildRequires: gcc-c++
BuildRequires: procps
-# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
-# so we need to be more explicit. v8_ge may be specified as e.g.
-# major.minor.micro-release if necessary.
-###%global v8_ge 3.18
-###%global v8_lt 3.19
-###%global v8_abi 3.18
-###BuildRequires: v8-devel >= %{v8_ge}
-###Requires: v8%{?isa} < %{v8_lt}
-###Requires: v8%{?isa} >= %{v8_ge}
-
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if 0%{?suse_version}
BuildRequires: libopenssl-devel
@@ -59,7 +48,6 @@
#break when binary compatibility is broken
%global nodejs_abi 0.10
Provides: nodejs(abi) = %{nodejs_abi}
-###Provides: nodejs(v8-abi) = %{v8_abi}
#this corresponds to the "engine" requirement in package.json
Provides: nodejs(engine) = %{version}
@@ -89,10 +77,7 @@
%else
%patch2 -p1
%endif
-(cd deps/npm/node_modules/node-gyp;
%patch4 -p1
-)
-###%patch5 -p1
%patch6
%patch7 -p1
# Make sure nothing gets included from bundled deps:
@@ -103,8 +88,11 @@
find deps/$dir -name *.[ch] -delete
done
+# fix permissions of some files
find ./deps/npm/node_modules/request/ -type f -exec chmod 0644 {} \;
+chmod -x deps/v8/include/v8-debug.h
+chmod +x deps/npm/node_modules/ansi/color-spaces.pl
chmod 0644 ./deps/npm/node_modules/uid-number/get-uid-gid.js
chmod 0644 ./deps/npm/node_modules/npmconf/node_modules/config-chain/index.js
chmod 0755 ./deps/npm/scripts/release.sh
Index: node-v0.10.26.tar.gz
===================================================================
Binary files node-v0.10.26.tar.gz (revision 2) added
Index: node-v0.10.17.tar.gz
===================================================================
Binary files node-v0.10.17.tar.gz (revision 42) deleted (forwarded request 231570 from lrupp)
Request History
SannisDev created request
Update to 0.10.26 including some public security fixes...
old: devel:languages:nodejs/nodejs
new: home:lrupp:branches:devel:languages:nodejs/nodejs rev None
Index: node-gyp-addon-gypi.patch
===================================================================
--- node-gyp-addon-gypi.patch (revision 42)
+++ node-gyp-addon-gypi.patch (revision 2)
@@ -1,8 +1,7 @@
-diff --git a/addon-rpm.gypi b/addon-rpm.gypi
-new file mode 100644
-index 0000000..3e259ef
+Index: node-v0.10.26/deps/npm/node_modules/node-gyp/addon-rpm.gypi
+===================================================================
--- /dev/null
-+++ b/addon-rpm.gypi
++++ node-v0.10.26/deps/npm/node_modules/node-gyp/addon-rpm.gypi
@@ -0,0 +1,35 @@
+{
+ 'target_defaults': {
@@ -39,11 +38,11 @@
+ ]
+ }
+}
-diff --git a/lib/configure.js b/lib/configure.js
-index 37c9ad3..acac561 100644
---- a/lib/configure.js
-+++ b/lib/configure.js
-@@ -207,30 +207,26 @@ function configure (gyp, argv, callback) {
+Index: node-v0.10.26/deps/npm/node_modules/node-gyp/lib/configure.js
+===================================================================
+--- node-v0.10.26.orig/deps/npm/node_modules/node-gyp/lib/configure.js
++++ node-v0.10.26/deps/npm/node_modules/node-gyp/lib/configure.js
+@@ -129,30 +129,23 @@ function configure (gyp, argv, callback)
// if --target was given, then determine a target version to compile for
versionStr = gyp.opts.target
log.verbose('get node dir', 'compiling against --target node version: %s', versionStr)
@@ -55,46 +54,45 @@
-
- // make sure we have a valid version
- try {
-+ // make sure we have a valid version
- version = semver.parse(versionStr)
+- version = semver.parse(versionStr)
- } catch (e) {
- return callback(e)
- }
- if (!version) {
- return callback(new Error('Invalid version number: ' + versionStr))
- }
+-
+- // ensure that the target node version's dev files are installed
+- gyp.opts.ensure = true
+- gyp.commands.install([ versionStr ], function (err, version) {
++ // make sure we have a valid version
+ if (!version) {
+ return callback(new Error('Invalid version number: ' + versionStr))
+ }
+ // ensure that the target node version's dev files are installed
+ gyp.opts.ensure = true
+ gyp.commands.install([ versionStr ], function (err, version) {
-+ if (err) return callback(err)
+ if (err) return callback(err)
+- log.verbose('get node dir', 'target node version installed:', version)
+- nodeDir = path.resolve(gyp.devDir, version)
+- createBuildDir()
+- })
+ log.verbose('get node dir', 'target node version installed:', version)
+ nodeDir = path.resolve(gyp.devDir, version)
+ createBuildDir()
+ })
-+ } else {
-+ // if no --target was specified then use RPM-installed headers
-+ log.verbose('get node dir', 'no --target version specified, falling back to RPM installed headers')
-+ nodeDir = '/usr/share/node'
-
-- // ensure that the target node version's dev files are installed
-- gyp.opts.ensure = true
-- gyp.commands.install([ versionStr ], function (err, version) {
-- if (err) return callback(err)
-- log.verbose('get node dir', 'target node version installed:', version)
-- nodeDir = path.resolve(gyp.devDir, version)
- createBuildDir()
-- })
-+ }
++ } else {
++ // if no --target was specified then use RPM-installed headers
++ log.verbose('get node dir', 'no --target version specified, falling back to RPM installed headers')
++ nodeDir = '/usr/share/node'
++ }
}
}
-@@ -383,7 +379,8 @@ function configure (gyp, argv, callback) {
+@@ -296,7 +289,8 @@ function configure (gyp, argv, callback)
// this logic ported from the old `gyp_addon` python file
- var gyp_script = path.resolve(__dirname, '..', 'gyp', 'gyp')
+ var gyp_script = path.resolve(__dirname, '..', 'gyp', 'gyp_main.py')
- var addon_gypi = path.resolve(__dirname, '..', 'addon.gypi')
+ var addon_gypi_file = gyp.opts.target || gyp.opts.nodeDir ? 'addon.gypi' : 'addon-rpm.gypi'
+ var addon_gypi = path.resolve(__dirname, '..', addon_gypi_file)
Index: nodejs-lib64path.patch
===================================================================
--- nodejs-lib64path.patch (revision 42)
+++ nodejs-lib64path.patch (revision 2)
@@ -1,7 +1,7 @@
-Index: node-v0.10.4/lib/module.js
+Index: node-v0.10.26/lib/module.js
===================================================================
---- node-v0.10.4.orig/lib/module.js
-+++ node-v0.10.4/lib/module.js
+--- node-v0.10.26.orig/lib/module.js
++++ node-v0.10.26/lib/module.js
@@ -508,7 +508,7 @@ Module._initPaths = function() {
var homeDir = process.env.HOME;
}
@@ -11,10 +11,10 @@
if (homeDir) {
paths.unshift(path.resolve(homeDir, '.node_libraries'));
-Index: node-v0.10.4/tools/install.py
+Index: node-v0.10.26/tools/install.py
===================================================================
---- node-v0.10.4.orig/tools/install.py
-+++ node-v0.10.4/tools/install.py
+--- node-v0.10.26.orig/tools/install.py
++++ node-v0.10.26/tools/install.py
@@ -86,7 +86,7 @@ def update_shebang(path, shebang):
open(path, 'w').write(s)
@@ -33,7 +33,7 @@
if os.environ.get('PORTABLE'):
# This crazy hack is necessary to make the shebang execute the copy
# of node relative to the same directory as the npm script. The precompiled
-@@ -124,7 +124,7 @@ def files(action):
+@@ -132,7 +132,7 @@ def files(action):
# install unconditionally, checking if the platform supports dtrace doesn't
# work when cross-compiling and besides, there's at least one linux flavor
# with dtrace support now (oracle's "unbreakable" linux)
Index: nodejs.changes
===================================================================
--- nodejs.changes (revision 42)
+++ nodejs.changes (revision 2)
@@ -1,4 +1,60 @@
-------------------------------------------------------------------
+Sun Apr 27 11:29:44 UTC 2014 - lars@linux-schulserver.de
+
+- update to 0.10.26:
+ * cares: backport TXT parsing fix (Fedor Indutny)
+ * child_process: fix spawn() optional arguments (Sam Roberts)
+ * child_process: don't assert on stale file descriptor events (Fedor Indutny)
+ * cluster: report more errors to workers (Fedor Indutny)
+ * cluster, v8: fix --logfile=%p.log (Ben Noordhuis)
+ * crypto: Make Decipher._flush() emit errors. (Kai Groner)
+ * crypto: throw on SignFinal failure (Fedor Indutny)
+ * crypto: update root certificates (Ben Noordhuis)
+ * crypto: clear errors from verify failure (Timothy J Fontaine)
+ * debugger: Fix breakpoint not showing after restart (Farid Neshat)
+ * debugger: Fix bug in sb() with unnamed script (Maxim Bogushevich)
+ * dgram: fix abort when getting `fd` of closed dgram (Fedor Indutny)
+ * domains: exit() only affects active domains (Ryan Graham)
+ * dtrace: interpret two byte strings (Dave Pacheco)
+ * events: do not accept NaN in setMaxListeners (Fedor Indutny)
+ * events: avoid calling `once` functions twice (Tim Wood)
+ * events: fix TypeError in removeAllListeners (Jeremy Martin)
+ * fs: make unwatchFile() insensitive to path (iamdoron)
+ * fs: fix fs.truncate() file content zeroing bug (Ben Noordhuis)
+ * fs: report correct path when EEXIST (Fedor Indutny)
+ * http: provide backpressure for pipeline flood (isaacs)
+ * module: only cache package main (Wyatt Preul)
+ * net: do not re-emit stream errors (Fedor Indutny)
+ * net: make Socket destroy() re-entrance safe (Jun Ma)
+ * net: reset `endEmitted` on reconnect (Fedor Indutny)
+ * node: do not close stdio implicitly (Fedor Indutny)
+ * process: enforce allowed signals for kill (Sam Roberts)
+ * readline: handle input starting with control chars (Eric Schrock)
+ * repl: do not insert duplicates into completions (Maciej Małecki)
+ * src: OnFatalError handler must abort() (Timothy J Fontaine)
+ * tls: emit 'end' on .receivedShutdown (Fedor Indutny)
+ * tls: fix potential data corruption (Fedor Indutny)
+ * tls: handle `ssl.start()` errors appropriately (Fedor Indutny)
+ * tls: reset NPN callbacks after SNI (Fedor Indutny)
+ * tls: prevent stalls by using read(0) (Fedor Indutny)
+ * tls: fix premature connection termination (Ben Noordhuis)
+ * tls: fix sporadic hang and partial reads (Fedor Indutny)
+ * tls: prevent duplicate values returned from read (Nathan Rajlich)
+ * tls: NPN protocols are now local to connections (Fedor Indutny)
+ * src: Fix memory leak on closed handles (Timothy J Fontaine)
+ * stream: writes may return false but forget to emit drain (Yang Tianyang)
+ * stream: objectMode transforms allow falsey values (isaacs)
+ * stream: Don't crash on unset _events property (isaacs)
+ * stream: Pass 'buffer' encoding with decoded writable chunks (isaacs)
+ * v8: support compiling with VS2013 (Fedor Indutny)
+ * v8: Fix enumeration for objects with lots of properties
+ * v8: backport fix for CVE-2013-6639 and CVE-2013-6640
+- refresh nodejs-lib64path.patch
+- rebuild node-gyp-addon-gypi.patch from scratch
+- small specfile cleanup (remove commented values finally)
+- fix two file permissions during setup
+
+-------------------------------------------------------------------
Fri Mar 21 09:34:31 UTC 2014 - jmassaguerpla@suse.com
- move v8 headers to node subdirectory in include dir. Otherwise
Index: nodejs.spec
===================================================================
--- nodejs.spec (revision 42)
+++ nodejs.spec (revision 2)
@@ -17,7 +17,7 @@
Name: nodejs
-Version: 0.10.17
+Version: 0.10.26
Release: 0
Summary: Evented I/O for V8 JavaScript
License: MIT
@@ -27,22 +27,11 @@
Patch0: nodejs-lib64path.patch
Patch2: nodejs-libpath.patch
Patch4: node-gyp-addon-gypi.patch
-###Patch5: nodejs-v8-3.18.0.patch
Patch6: nodejs-openssl-missing-api.patch
Patch7: nodejs-add_missing_shebang_to_read-package-json.patch
BuildRequires: curl
BuildRequires: gcc-c++
BuildRequires: procps
-# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
-# so we need to be more explicit. v8_ge may be specified as e.g.
-# major.minor.micro-release if necessary.
-###%global v8_ge 3.18
-###%global v8_lt 3.19
-###%global v8_abi 3.18
-###BuildRequires: v8-devel >= %{v8_ge}
-###Requires: v8%{?isa} < %{v8_lt}
-###Requires: v8%{?isa} >= %{v8_ge}
-
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if 0%{?suse_version}
BuildRequires: libopenssl-devel
@@ -59,7 +48,6 @@
#break when binary compatibility is broken
%global nodejs_abi 0.10
Provides: nodejs(abi) = %{nodejs_abi}
-###Provides: nodejs(v8-abi) = %{v8_abi}
#this corresponds to the "engine" requirement in package.json
Provides: nodejs(engine) = %{version}
@@ -89,10 +77,7 @@
%else
%patch2 -p1
%endif
-(cd deps/npm/node_modules/node-gyp;
%patch4 -p1
-)
-###%patch5 -p1
%patch6
%patch7 -p1
# Make sure nothing gets included from bundled deps:
@@ -103,8 +88,11 @@
find deps/$dir -name *.[ch] -delete
done
+# fix permissions of some files
find ./deps/npm/node_modules/request/ -type f -exec chmod 0644 {} \;
+chmod -x deps/v8/include/v8-debug.h
+chmod +x deps/npm/node_modules/ansi/color-spaces.pl
chmod 0644 ./deps/npm/node_modules/uid-number/get-uid-gid.js
chmod 0644 ./deps/npm/node_modules/npmconf/node_modules/config-chain/index.js
chmod 0755 ./deps/npm/scripts/release.sh
Index: node-v0.10.26.tar.gz
===================================================================
Binary files node-v0.10.26.tar.gz (revision 2) added
Index: node-v0.10.17.tar.gz
===================================================================
Binary files node-v0.10.17.tar.gz (revision 42) deleted (forwarded request 231570 from lrupp)
factory-auto added a reviewer
Please review sources
factory-auto added a reviewer
Please review build success
factory-auto added a reviewer
Pick Staging Project
factory-auto accepted review
Check script succeeded
licensedigger accepted review
{"approve": "preliminary, version number changed"}
factory-repo-checker accepted review
Builds for repo openSUSE_Factory
coolo accepted review
No need for staging, not in tested ring projects.
tittiatcoke approved review
ok
tittiatcoke accepted review
ok
coolo accepted request
checkin