[114242] trunk/dports/databases/rethinkdb

cal at macports.org cal at macports.org
Tue Dec 3 03:23:32 PST 2013


Revision: 114242
          https://trac.macports.org/changeset/114242
Author:   cal at macports.org
Date:     2013-12-03 03:23:32 -0800 (Tue, 03 Dec 2013)
Log Message:
-----------
rethinkdb: update to 1.11.1, apply patch to fix build against current v8

Modified Paths:
--------------
    trunk/dports/databases/rethinkdb/Portfile

Added Paths:
-----------
    trunk/dports/databases/rethinkdb/files/
    trunk/dports/databases/rethinkdb/files/3cf9e7bf13e5f0f364aecf0913e09d704e9688d2.patch

Modified: trunk/dports/databases/rethinkdb/Portfile
===================================================================
--- trunk/dports/databases/rethinkdb/Portfile	2013-12-03 10:13:34 UTC (rev 114241)
+++ trunk/dports/databases/rethinkdb/Portfile	2013-12-03 11:23:32 UTC (rev 114242)
@@ -5,7 +5,7 @@
 PortGroup           compiler_blacklist_versions 1.0
 
 name                rethinkdb
-version             1.4.1
+version             1.11.1
 categories          databases
 platforms           darwin
 maintainers         nomaintainer
@@ -21,8 +21,8 @@
 master_sites        http://download.rethinkdb.com/dist/
 extract.suffix      .tgz
 
-checksums           rmd160  b23443ce118056e4a2217c786f41028ec8f58d44 \
-                    sha256  ba5da17b59df9055b4384f015965efd55c05bcd443526dc766a92516e6411ed7
+checksums           rmd160  e615a2031d0b3597e464d585becf6e25a9b51bdb \
+                    sha256  48941171acd91ba41b97cef38f75fd0d8b8805eca767941f07e4e5c06df4b7a3
 
 depends_build       port:coffee-script
 
@@ -44,6 +44,10 @@
 # Xcode 3.2.x included clang but not clang++, so it used llvm-g++-4.2 instead.
 compiler.blacklist-append {clang < 137}
 
+# v8 >= 3.21 compatibility from upstream
+patch.args          -p1
+patchfiles          3cf9e7bf13e5f0f364aecf0913e09d704e9688d2.patch
+
 set webresdir       ${prefix}/share/${name}/web
 build.args          DEBUG=0 ALLOW_WARNINGS=1 BUILD_DIR=build WEBRESDIR=${webresdir}
 build.target        build/rethinkdb web-assets

Added: trunk/dports/databases/rethinkdb/files/3cf9e7bf13e5f0f364aecf0913e09d704e9688d2.patch
===================================================================
--- trunk/dports/databases/rethinkdb/files/3cf9e7bf13e5f0f364aecf0913e09d704e9688d2.patch	                        (rev 0)
+++ trunk/dports/databases/rethinkdb/files/3cf9e7bf13e5f0f364aecf0913e09d704e9688d2.patch	2013-12-03 11:23:32 UTC (rev 114242)
@@ -0,0 +1,88 @@
+From 3cf9e7bf13e5f0f364aecf0913e09d704e9688d2 Mon Sep 17 00:00:00 2001
+From: Anatol Pomozov <anatol.pomozov at gmail.com>
+Date: Mon, 25 Nov 2013 17:33:25 -0800
+Subject: [PATCH] Update rethinkdb to v8 API version 3.21
+
+Signed-off-by: Anatol Pomozov <anatol.pomozov at gmail.com>
+---
+ src/extproc/js_job.cc | 15 ++++++++-------
+ 1 file changed, 8 insertions(+), 7 deletions(-)
+
+diff --git a/src/extproc/js_job.cc b/src/extproc/js_job.cc
+index 984aea0..3ee0533 100644
+--- a/src/extproc/js_job.cc
++++ b/src/extproc/js_job.cc
+@@ -66,6 +66,7 @@ class js_context_t {
+     v8::Persistent<v8::Context> context;
+ #else
+     js_context_t() :
++        local_scope(v8::Isolate::GetCurrent()),
+         context(v8::Context::New(v8::Isolate::GetCurrent())),
+         scope(context) { }
+ 
+@@ -219,7 +220,7 @@ js_result_t js_env_t::eval(const std::string &source) {
+     js_result_t result("");
+     std::string *errmsg = boost::get<std::string>(&result);
+ 
+-    v8::HandleScope handle_scope;
++    v8::HandleScope handle_scope(v8::Isolate::GetCurrent());
+ 
+     // TODO: use an "external resource" to avoid copy?
+     v8::Handle<v8::String> src = v8::String::New(source.data(), source.size());
+@@ -290,7 +291,7 @@ js_id_t js_env_t::remember_value(const v8::Handle<v8::Value> &value) {
+                                   const std::vector<counted_t<const ql::datum_t> > &args,
+                                   std::string *errmsg) {
+     v8::TryCatch try_catch;
+-    v8::HandleScope scope;
++    v8::HandleScope scope(v8::Isolate::GetCurrent());
+ 
+     // Construct receiver object.
+     v8::Handle<v8::Object> obj = v8::Object::New();
+@@ -320,7 +321,7 @@ js_result_t js_env_t::call(js_id_t id,
+     const boost::shared_ptr<v8::Persistent<v8::Value> > found_value = find_value(id);
+     guarantee(!found_value->IsEmpty());
+ 
+-    v8::HandleScope handle_scope;
++    v8::HandleScope handle_scope(v8::Isolate::GetCurrent());
+ 
+     // Construct local handle from persistent handle
+ 
+@@ -367,7 +368,7 @@ void js_env_t::release(js_id_t id) {
+     --recursion_limit;
+ 
+     // TODO: should we handle BooleanObject, NumberObject, StringObject?
+-    v8::HandleScope handle_scope;
++    v8::HandleScope handle_scope(v8::Isolate::GetCurrent());
+ 
+     if (value->IsString()) {
+         v8::Handle<v8::String> string = value->ToString();
+@@ -471,7 +472,7 @@ void js_env_t::release(js_id_t id) {
+     guarantee(!value.IsEmpty());
+     guarantee(errmsg != NULL);
+ 
+-    v8::HandleScope handle_scope;
++    v8::HandleScope handle_scope(v8::Isolate::GetCurrent());
+     errmsg->assign("Unknown error when converting to ql::datum_t.");
+ 
+     return js_make_datum(value, TO_JSON_RECURSION_LIMIT, errmsg);
+@@ -497,7 +498,7 @@ void js_env_t::release(js_id_t id) {
+         const std::vector<counted_t<const ql::datum_t> > &source_array = datum->as_array();
+ 
+         for (size_t i = 0; i < source_array.size(); ++i) {
+-            v8::HandleScope scope;
++            v8::HandleScope scope(v8::Isolate::GetCurrent());
+             v8::Handle<v8::Value> val = js_from_datum(source_array[i]);
+             guarantee(!val.IsEmpty());
+             array->Set(i, val);
+@@ -515,7 +516,7 @@ void js_env_t::release(js_id_t id) {
+             const std::map<std::string, counted_t<const ql::datum_t> > &source_map = datum->as_object();
+ 
+             for (auto it = source_map.begin(); it != source_map.end(); ++it) {
+-                v8::HandleScope scope;
++                v8::HandleScope scope(v8::Isolate::GetCurrent());
+                 v8::Handle<v8::Value> key = v8::String::New(it->first.c_str());
+                 v8::Handle<v8::Value> val = js_from_datum(it->second);
+                 guarantee(!key.IsEmpty() && !val.IsEmpty());
+-- 
+1.8.5-rc3
+
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20131203/48cda6c2/attachment-0001.html>


More information about the macports-changes mailing list