diff --git a/mobile/android/lib/cbl_collator_so-1.0.3.1.jar b/mobile/android/lib/cbl_collator_so-1.0.3.1.jar
deleted file mode 100644
index 6c51818..0000000
Binary files a/mobile/android/lib/cbl_collator_so-1.0.3.1.jar and /dev/null differ
diff --git a/mobile/android/lib/cbl_collator_so-1.0.4-28.jar b/mobile/android/lib/cbl_collator_so-1.0.4-28.jar
new file mode 100644
index 0000000..b528596
Binary files /dev/null and b/mobile/android/lib/cbl_collator_so-1.0.4-28.jar differ
diff --git a/mobile/android/lib/commons-logging-1.1.3.jar b/mobile/android/lib/commons-logging-1.1.3.jar
new file mode 100644
index 0000000..ab51254
Binary files /dev/null and b/mobile/android/lib/commons-logging-1.1.3.jar differ
diff --git a/mobile/android/lib/couchbase-lite-android-1.0.3.1a.jar b/mobile/android/lib/couchbase-lite-android-1.0.4-28.jar
similarity index 76%
rename from mobile/android/lib/couchbase-lite-android-1.0.3.1a.jar
rename to mobile/android/lib/couchbase-lite-android-1.0.4-28.jar
index e6abd40..c08a484 100644
Binary files a/mobile/android/lib/couchbase-lite-android-1.0.3.1a.jar and b/mobile/android/lib/couchbase-lite-android-1.0.4-28.jar differ
diff --git a/mobile/android/lib/couchbase-lite-java-1.0.4-28.jar b/mobile/android/lib/couchbase-lite-java-1.0.4-28.jar
new file mode 100644
index 0000000..6d8e77d
Binary files /dev/null and b/mobile/android/lib/couchbase-lite-java-1.0.4-28.jar differ
diff --git a/mobile/android/lib/couchbase-lite-java-core-1.0.3.1a.jar b/mobile/android/lib/couchbase-lite-java-core-1.0.4-28.jar
similarity index 68%
rename from mobile/android/lib/couchbase-lite-java-core-1.0.3.1a.jar
rename to mobile/android/lib/couchbase-lite-java-core-1.0.4-28.jar
index d38878c..a3114e1 100644
Binary files a/mobile/android/lib/couchbase-lite-java-core-1.0.3.1a.jar and b/mobile/android/lib/couchbase-lite-java-core-1.0.4-28.jar differ
diff --git a/mobile/android/lib/couchbase-lite-java-javascript-1.0.3.1.jar b/mobile/android/lib/couchbase-lite-java-javascript-1.0.3.1.jar
deleted file mode 100644
index 7e1f3e6..0000000
Binary files a/mobile/android/lib/couchbase-lite-java-javascript-1.0.3.1.jar and /dev/null differ
diff --git a/mobile/android/lib/couchbase-lite-java-javascript-1.0.4-28.jar b/mobile/android/lib/couchbase-lite-java-javascript-1.0.4-28.jar
new file mode 100644
index 0000000..8535c10
Binary files /dev/null and b/mobile/android/lib/couchbase-lite-java-javascript-1.0.4-28.jar differ
diff --git a/mobile/android/lib/couchbase-lite-java-listener-1.0.3.1a.jar b/mobile/android/lib/couchbase-lite-java-listener-1.0.4-28.jar
similarity index 84%
rename from mobile/android/lib/couchbase-lite-java-listener-1.0.3.1a.jar
rename to mobile/android/lib/couchbase-lite-java-listener-1.0.4-28.jar
index b56333d..8db1cfa 100644
Binary files a/mobile/android/lib/couchbase-lite-java-listener-1.0.3.1a.jar and b/mobile/android/lib/couchbase-lite-java-listener-1.0.4-28.jar differ
diff --git a/mobile/android/lib/couchbase-lite-java-native-1.0.4-28.jar b/mobile/android/lib/couchbase-lite-java-native-1.0.4-28.jar
new file mode 100644
index 0000000..2003d21
Binary files /dev/null and b/mobile/android/lib/couchbase-lite-java-native-1.0.4-28.jar differ
diff --git a/mobile/android/lib/httpclient-4.0-beta1.jar b/mobile/android/lib/httpclient-4.0-beta1.jar
new file mode 100644
index 0000000..8ea4099
Binary files /dev/null and b/mobile/android/lib/httpclient-4.0-beta1.jar differ
diff --git a/mobile/android/lib/httpcore-4.0-beta2.jar b/mobile/android/lib/httpcore-4.0-beta2.jar
new file mode 100644
index 0000000..fe9caa2
Binary files /dev/null and b/mobile/android/lib/httpcore-4.0-beta2.jar differ
diff --git a/mobile/ios/Classes/TDBridge.m b/mobile/ios/Classes/TDBridge.m
index c157c06..a23ebc7 100644
--- a/mobile/ios/Classes/TDBridge.m
+++ b/mobile/ios/Classes/TDBridge.m
@@ -8,7 +8,6 @@
#import "TDBridge.h"
-#import "TiCore.h"
#import "KrollBridge.h"
#import "KrollContext.h"
#import "KrollMethod.h"
diff --git a/mobile/ios/build.py b/mobile/ios/build.py
index 598d6fb..9b8a2bb 100755
--- a/mobile/ios/build.py
+++ b/mobile/ios/build.py
@@ -9,7 +9,7 @@
cwd = os.path.abspath(os.path.dirname(sys._getframe(0).f_code.co_filename))
os.chdir(cwd)
-required_module_keys = ['name','version','moduleid','description','copyright','license','copyright','platform','minsdk']
+required_module_keys = ['architectures', 'name','version','moduleid','description','copyright','license','copyright','platform','minsdk']
module_defaults = {
'description':'My module',
'author': 'Your Name',
@@ -49,6 +49,8 @@ def read_ti_xcconfig():
def generate_doc(config):
docdir = os.path.join(cwd,'documentation')
+ if not os.path.exists(docdir):
+ docdir = os.path.join(cwd,'..','documentation')
if not os.path.exists(docdir):
print "Couldn't find documentation file at: %s" % docdir
return None
@@ -67,7 +69,9 @@ def generate_doc(config):
return documentation
def compile_js(manifest,config):
- js_file = os.path.join(cwd,'assets','foo.module.js')
+ js_file = os.path.join(cwd,'assets','com.foogle.js')
+ if not os.path.exists(js_file):
+ js_file = os.path.join(cwd,'..','assets','com.foogle.js')
if not os.path.exists(js_file): return
from compiler import Compiler
@@ -97,7 +101,7 @@ def compile_js(manifest,config):
from tools import splice_code
- assets_router = os.path.join(cwd,'Classes','FooModuleModuleAssets.m')
+ assets_router = os.path.join(cwd,'Classes','ComFoogleModuleAssets.m')
splice_code(assets_router, 'asset', root_asset_content)
splice_code(assets_router, 'resolve_asset', module_asset_content)
@@ -114,9 +118,13 @@ def warn(msg):
print "[WARN] %s" % msg
def validate_license():
- c = open(os.path.join(cwd,'LICENSE')).read()
- if c.find(module_license_default)!=-1:
- warn('please update the LICENSE file with your license text before distributing')
+ license_file = os.path.join(cwd,'LICENSE')
+ if not os.path.exists(license_file):
+ license_file = os.path.join(cwd,'..','LICENSE')
+ if os.path.exists(license_file):
+ c = open(license_file).read()
+ if c.find(module_license_default)!=-1:
+ warn('please update the LICENSE file with your license text before distributing')
def validate_manifest():
path = os.path.join(cwd,'manifest')
@@ -131,6 +139,7 @@ def validate_manifest():
manifest[key.strip()]=value.strip()
for key in required_module_keys:
if not manifest.has_key(key): die("missing required manifest key '%s'" % key)
+ if manifest[key].strip() == '': die("manifest key '%s' missing required value" % key)
if module_defaults.has_key(key):
defvalue = module_defaults[key]
curvalue = manifest[key]
@@ -140,7 +149,7 @@ def validate_manifest():
ignoreFiles = ['.DS_Store','.gitignore','libTitanium.a','titanium.jar','README']
ignoreDirs = ['.DS_Store','.svn','.git','CVSROOT']
-def zip_dir(zf,dir,basepath,ignore=[]):
+def zip_dir(zf,dir,basepath,ignore=[],includeJSFiles=False):
for root, dirs, files in os.walk(dir):
for name in ignoreDirs:
if name in dirs:
@@ -149,7 +158,7 @@ def zip_dir(zf,dir,basepath,ignore=[]):
if file in ignoreFiles: continue
e = os.path.splitext(file)
if len(e) == 2 and e[1] == '.pyc': continue
- if len(e) == 2 and e[1] == '.js': continue
+ if not includeJSFiles and len(e) == 2 and e[1] == '.js': continue
from_ = os.path.join(root, file)
to_ = from_.replace(dir, basepath, 1)
zf.write(from_, to_)
@@ -179,6 +188,24 @@ def build_module(manifest,config):
os.system("lipo %s -create -output build/lib%s.a" %(libpaths,moduleid))
+def verify_build_arch(manifest, config):
+ binaryname = 'lib%s.a' % manifest['moduleid']
+ binarypath = os.path.join('build', binaryname)
+ manifestarch = set(manifest['architectures'].split(' '))
+
+ output = subprocess.check_output('xcrun lipo -info %s' % binarypath, shell=True)
+
+ builtarch = set(output.split(':')[-1].strip().split(' '))
+
+ if ('arm64' not in builtarch):
+ warn('built module is missing 64-bit support.')
+
+ if (manifestarch != builtarch):
+ warn('there is discrepancy between the architectures specified in module manifest and compiled binary.')
+ warn('architectures in manifest: %s' % ', '.join(manifestarch))
+ warn('compiled binary architectures: %s' % ', '.join(builtarch))
+ die('please update manifest to match module binary architectures.')
+
def package_module(manifest,mf,config):
name = manifest['name'].lower()
moduleid = manifest['moduleid'].lower()
@@ -196,10 +223,26 @@ def package_module(manifest,mf,config):
for file, html in doc.iteritems():
filename = string.replace(file,'.md','.html')
zf.writestr('%s/documentation/%s'%(modulepath,filename),html)
- for dn in ('assets','example','platform'):
- if os.path.exists(dn):
- zip_dir(zf,dn,'%s/%s' % (modulepath,dn),['README'])
- zf.write('LICENSE','%s/LICENSE' % modulepath)
+
+ p = os.path.join(cwd, 'assets')
+ if not os.path.exists(p):
+ p = os.path.join(cwd, '..', 'assets')
+ if os.path.exists(p):
+ zip_dir(zf,p,'%s/%s' % (modulepath,'assets'),['README'])
+
+ for dn in ('example','platform'):
+ p = os.path.join(cwd, dn)
+ if not os.path.exists(p):
+ p = os.path.join(cwd, '..', dn)
+ if os.path.exists(p):
+ zip_dir(zf,p,'%s/%s' % (modulepath,dn),['README'],True)
+
+ license_file = os.path.join(cwd,'LICENSE')
+ if not os.path.exists(license_file):
+ license_file = os.path.join(cwd,'..','LICENSE')
+ if os.path.exists(license_file):
+ zf.write(license_file,'%s/LICENSE' % modulepath)
+
zf.write('module.xcconfig','%s/module.xcconfig' % modulepath)
exports_file = 'metadata.json'
if os.path.exists(exports_file):
@@ -218,6 +261,6 @@ def package_module(manifest,mf,config):
compile_js(manifest,config)
build_module(manifest,config)
+ verify_build_arch(manifest, config)
package_module(manifest,mf,config)
sys.exit(0)
-
diff --git a/mobile/ios/titanium.xcconfig b/mobile/ios/titanium.xcconfig
index 9646144..44c3643 100644
--- a/mobile/ios/titanium.xcconfig
+++ b/mobile/ios/titanium.xcconfig
@@ -4,7 +4,7 @@
// OF YOUR TITANIUM SDK YOU'RE BUILDING FOR
//
//
-TITANIUM_SDK_VERSION = 3.5.0.GA
+TITANIUM_SDK_VERSION = 3.5.1.GA
//
diff --git a/mobile/ios/vendor/couchbase-lite-ios b/mobile/ios/vendor/couchbase-lite-ios
index decb569..8e07123 160000
--- a/mobile/ios/vendor/couchbase-lite-ios
+++ b/mobile/ios/vendor/couchbase-lite-ios
@@ -1 +1 @@
-Subproject commit decb569be18d29a8431244c5d7de33f94292657e
+Subproject commit 8e07123d1986474bc2e2a2ce98d9cbb98a3dc069
diff --git a/mobile/noarch/testapp/Resources/replication_config_android.json b/mobile/noarch/testapp/Resources/replication_config_android.json
index 4e3b4d2..0ba5e2a 100644
--- a/mobile/noarch/testapp/Resources/replication_config_android.json
+++ b/mobile/noarch/testapp/Resources/replication_config_android.json
@@ -1,5 +1,5 @@
{
- "host": "10.8.17.21",
+ "host": "10.8.169.18",
"port": 59840,
"dbname": "elements"
}
diff --git a/mobile/noarch/testapp/tiapp.xml b/mobile/noarch/testapp/tiapp.xml
index 85315ac..3094e65 100644
--- a/mobile/noarch/testapp/tiapp.xml
+++ b/mobile/noarch/testapp/tiapp.xml
@@ -7,7 +7,7 @@
false
true
- 3.5.0.GA
+ 3.5.1.GA
com.obscure.titouchdb
testapp
1.0