Permalink
Browse files

Merge branch 'ag-UpdateXcode6'

  • Loading branch information...
2 parents 5229339 + d129eb3 commit a9b3e5c14e9a6b4d4aeffd4d565a28ecba74928b @couchdeveloper committed Nov 17, 2014
Showing with 330 additions and 244 deletions.
  1. +1 −1 Bench/Bench.xcodeproj/xcshareddata/xcschemes/Bench CFStringStringBuffer.xcscheme
  2. +1 −1 Bench/Bench.xcodeproj/xcshareddata/xcschemes/Bench CustomAllocator.xcscheme
  3. +1 −1 Bench/Bench.xcodeproj/xcshareddata/xcschemes/Bench JPJsonParser.xcscheme
  4. +1 −1 Bench/Bench.xcodeproj/xcshareddata/xcschemes/Bench JPJsonWriter.xcscheme
  5. +1 −1 Bench/Bench.xcodeproj/xcshareddata/xcschemes/Bench JsonContainer.xcscheme
  6. +1 −1 Bench/Bench.xcodeproj/xcshareddata/xcschemes/Bench json_parser.xcscheme
  7. +1 −1 Bench/Bench.xcodeproj/xcshareddata/xcschemes/Bench parse_number.xcscheme
  8. +1 −1 Bench/Bench.xcodeproj/xcshareddata/xcschemes/Bench sync_queue_iterator.xcscheme
  9. +1 −1 Bench/Bench.xcodeproj/xcshareddata/xcschemes/Bench unicode_conversion.xcscheme
  10. +1 −1 Bench/Bench.xcodeproj/xcshareddata/xcschemes/Bench.xcscheme
  11. +11 −5 Bench/JPJsonParser/main.mm
  12. +14 −14 Bench/Vendor/JSONKit/JSONKit.m
  13. +17 −9 Bench/sync_queue_iterator_bench/main.cpp
  14. +27 −0 CHANGES.md
  15. +10 −1 Documentation/Documentation/Documentation.xcodeproj/xcshareddata/xcschemes/Documentation.xcscheme
  16. +1 −1 Examples/C++/Sample1/Sample1.xcodeproj/xcshareddata/xcschemes/C++ Examples: Sample1.xcscheme
  17. +1 −1 ...oundationExamples/FoundationExamples.xcodeproj/xcshareddata/xcschemes/Foundation Sample1.xcscheme
  18. +1 −1 ...undationExamples/FoundationExamples.xcodeproj/xcshareddata/xcschemes/Foundation Sample10.xcscheme
  19. +1 −1 ...oundationExamples/FoundationExamples.xcodeproj/xcshareddata/xcschemes/Foundation Sample2.xcscheme
  20. +1 −1 ...oundationExamples/FoundationExamples.xcodeproj/xcshareddata/xcschemes/Foundation Sample3.xcscheme
  21. +1 −1 ...oundationExamples/FoundationExamples.xcodeproj/xcshareddata/xcschemes/Foundation Sample4.xcscheme
  22. +1 −1 ...oundationExamples/FoundationExamples.xcodeproj/xcshareddata/xcschemes/Foundation Sample5.xcscheme
  23. +1 −1 ...oundationExamples/FoundationExamples.xcodeproj/xcshareddata/xcschemes/Foundation Sample6.xcscheme
  24. +35 −7 Examples/iOS/JPBenchApp/JPBenchApp.xcodeproj/project.pbxproj
  25. +1 −1 Examples/iOS/JPBenchApp/JPBenchApp.xcodeproj/xcshareddata/xcschemes/JPBenchApp.xcscheme
  26. +2 −2 Examples/iOS/JPBenchApp/JPBenchApp/JPBenchAppAppDelegate.m
  27. +7 −0 Examples/iOS/JPBenchApp/README.md
  28. +2 −0 Examples/iOS/JPBenchApp/UIDevice-Hardware.m
  29. +14 −14 Examples/iOS/JPBenchApp/Vendor/JSONKit/JSONKit.m
  30. +3 −3 Examples/iOS/JPBenchApp/project.common.ios.xcconfig
  31. +2 −7 Examples/iOS/NSURLConnectionDownload/NSURLConnectionDownload.xcodeproj/project.pbxproj
  32. +2 −2 ...ownload/NSURLConnectionDownload.xcodeproj/xcshareddata/xcschemes/NSURLConnectionDownload.xcscheme
  33. +5 −8 Examples/iOS/NSURLConnectionDownload/NSURLConnectionDownload/AppDelegate.m
  34. +48 −95 Examples/iOS/NSURLConnectionDownload/NSURLConnectionDownload/NSURLConnectionDownloadViewController.m
  35. +1 −0 Examples/iOS/NSURLConnectionDownload/NSURLConnectionDownload/UIDevice-Hardware.m
  36. +4 −4 Examples/iOS/NSURLConnectionDownload/project.common.ios.xcconfig
  37. +2 −2 INSTALL.md
  38. +10 −1 ...X Libraries/JPJson Mac OS X Libraries.xcodeproj/xcshareddata/xcschemes/All Mac OS X Libs.xcscheme
  39. +10 −1 ...ies/JPJson Mac OS X Libraries.xcodeproj/xcshareddata/xcschemes/JPJson Mac OS X Framework.xcscheme
  40. +10 −1 ...son Mac OS X Libraries.xcodeproj/xcshareddata/xcschemes/JPJsonDylib Mac OS X Dynamic Lib.xcscheme
  41. +11 −2 ...JPJson Mac OS X Libraries.xcodeproj/xcshareddata/xcschemes/JPJsonLib Mac OS X Static Lib.xcscheme
  42. +2 −0 Libraries/iOS Libraries/JPJson iOS Libraries.xcodeproj/project.pbxproj
  43. +11 −2 Libraries/iOS Libraries/JPJson iOS Libraries.xcodeproj/xcshareddata/xcschemes/JPJsonLib.xcscheme
  44. +5 −11 Libraries/iOS Libraries/common.iOS.xcconfig
  45. +0 −2 Libraries/iOS Libraries/debug.iOS.xcconfig
  46. +0 −3 Libraries/iOS Libraries/release.iOS.xcconfig
  47. +7 −1 Source/json/ObjC/CFDataBuffer.hpp
  48. +1 −1 Source/json/ObjC/JPAsyncJsonParser.mm
  49. +6 −6 Source/json/ObjC/JPJsonWriter.mm
  50. +0 −2 Source/json/ObjC/JPSemanticActionsBase.mm
  51. +1 −6 Source/json/ObjC/RepresentationGenerator.hpp
  52. +1 −1 Source/json/unicode/unicode_utilities.hpp
  53. +1 −1 Source/json/utility/syncqueue_streambuf.hpp
  54. +10 −1 Test/Test.xcodeproj/xcshareddata/xcschemes/Build All Tests.xcscheme
  55. +1 −1 Test/Test.xcodeproj/xcshareddata/xcschemes/Test All.xcscheme
  56. +1 −1 Test/Test.xcodeproj/xcshareddata/xcschemes/Test JsonContainer.xcscheme
  57. +1 −1 Test/Test.xcodeproj/xcshareddata/xcschemes/Test ObjC.xcscheme
  58. +1 −1 Test/Test.xcodeproj/xcshareddata/xcschemes/Test ObjC_private.xcscheme
  59. +1 −1 Test/Test.xcodeproj/xcshareddata/xcschemes/Test endian.xcscheme
  60. +1 −1 Test/Test.xcodeproj/xcshareddata/xcschemes/Test json_parser.xcscheme
  61. +1 −1 Test/Test.xcodeproj/xcshareddata/xcschemes/Test unicode.xcscheme
  62. +1 −1 Test/Test.xcodeproj/xcshareddata/xcschemes/Test utilities.xcscheme
  63. +10 −1 Test/Test.xcodeproj/xcshareddata/xcschemes/Test.xcscheme
  64. +1 −1 Test/Test.xcodeproj/xcshareddata/xcschemes/gtest.xcscheme
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.8">
<BuildAction
parallelizeBuildables = "NO"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.8">
<BuildAction
parallelizeBuildables = "YES"
View
@@ -709,15 +709,15 @@ void bench_JPAsyncJsonParser(JPJsonParserOptions opt, NSString* file, const int
gotError = YES;
NSLog(@"ERROR: %@", error);
};
+ sa = nil;
[parser start];
-
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
for (int i = 0; i < N; ++i)
{
// this will block, until the parser has taken it
- bool delivered = [parser parseBuffer:data];
+ bool delivered = [parser parseBuffer:data];
if (not delivered)
break;
}
@@ -726,13 +726,13 @@ void bench_JPAsyncJsonParser(JPJsonParserOptions opt, NSString* file, const int
// Wait until the parser has been finished
dispatch_semaphore_wait(sem, DISPATCH_TIME_FOREVER);
+ dispatch_release(sem);
[parser release];
t.stop();
-
if (!gotError) {
NSLog(@"JPJsonParser: elapsed time for parsing %d documents:\n"
- "average: %.3f s\n", N, t.seconds());
+ "total: %.3f s\navarage: %.3f ms\n", N, t.seconds(), 1000*t.seconds()/N);
}
/*
@@ -741,6 +741,7 @@ void bench_JPAsyncJsonParser(JPJsonParserOptions opt, NSString* file, const int
te.min()*1e3, te.max()*1e3, te.avg()*1e3);
}
*/
+ [data release];
[pool release];
}
@@ -1104,7 +1105,7 @@ int main (int argc, const char * argv[])
@"instruments.json",
@"mesh.json",
@"mesh.pretty.json",
- @"nested.json",
+ //@"nested.json",
@"random.json",
@"repeat.json",
@"truenull.json",
@@ -1136,6 +1137,11 @@ int main (int argc, const char * argv[])
bench_JSONKitWithNSData(JKParseOptionFlags(0), testFile, N);
[pool drain];
}
+ {
+ NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
+ bench_JPAsyncJsonParser(JPJsonParserOptions(JPJsonParserAllowUnicodeNoncharacter | JPJsonParserAllowUnicodeNULLCharacter), testFile, N);
+ [pool drain];
+ }
}
@@ -677,7 +677,7 @@ + (id)allocWithZone:(NSZone *)zone
NSCParameterAssert((objects != NULL) && (_JKArrayClass != NULL) && (_JKArrayInstanceSize > 0UL));
JKArray *array = NULL;
if(JK_EXPECT_T((array = (JKArray *)calloc(1UL, _JKArrayInstanceSize)) != NULL)) { // Directly allocate the JKArray instance via calloc.
- array->isa = _JKArrayClass;
+ object_setClass(array, _JKArrayClass);
if((array = [array init]) == NULL) { return(NULL); }
array->capacity = count;
array->count = count;
@@ -926,7 +926,7 @@ static void _JKDictionaryResizeIfNeccessary(JKDictionary *dictionary) {
NSCParameterAssert((keys != NULL) && (keyHashes != NULL) && (objects != NULL) && (_JKDictionaryClass != NULL) && (_JKDictionaryInstanceSize > 0UL));
JKDictionary *dictionary = NULL;
if(JK_EXPECT_T((dictionary = (JKDictionary *)calloc(1UL, _JKDictionaryInstanceSize)) != NULL)) { // Directly allocate the JKDictionary instance via calloc.
- dictionary->isa = _JKDictionaryClass;
+ object_setClass(dictionary, _JKDictionaryClass);
if((dictionary = [dictionary init]) == NULL) { return(NULL); }
dictionary->capacity = _JKDictionaryCapacityForCount(count);
dictionary->count = 0UL;
@@ -2595,18 +2595,18 @@ static int jk_encode_add_atom_to_buffer(JKEncodeState *encodeState, void *object
BOOL workAroundMacOSXABIBreakingBug = NO;
if(JK_EXPECT_F(((NSUInteger)object) & 0x1)) { workAroundMacOSXABIBreakingBug = YES; goto slowClassLookup; }
- if(JK_EXPECT_T(object->isa == encodeState->fastClassLookup.stringClass)) { isClass = JKClassString; }
- else if(JK_EXPECT_T(object->isa == encodeState->fastClassLookup.numberClass)) { isClass = JKClassNumber; }
- else if(JK_EXPECT_T(object->isa == encodeState->fastClassLookup.dictionaryClass)) { isClass = JKClassDictionary; }
- else if(JK_EXPECT_T(object->isa == encodeState->fastClassLookup.arrayClass)) { isClass = JKClassArray; }
- else if(JK_EXPECT_T(object->isa == encodeState->fastClassLookup.nullClass)) { isClass = JKClassNull; }
+ if(JK_EXPECT_T(object_getClass(object) == encodeState->fastClassLookup.stringClass)) { isClass = JKClassString; }
+ else if(JK_EXPECT_T(object_getClass(object) == encodeState->fastClassLookup.numberClass)) { isClass = JKClassNumber; }
+ else if(JK_EXPECT_T(object_getClass(object) == encodeState->fastClassLookup.dictionaryClass)) { isClass = JKClassDictionary; }
+ else if(JK_EXPECT_T(object_getClass(object) == encodeState->fastClassLookup.arrayClass)) { isClass = JKClassArray; }
+ else if(JK_EXPECT_T(object_getClass(object) == encodeState->fastClassLookup.nullClass)) { isClass = JKClassNull; }
else {
slowClassLookup:
- if(JK_EXPECT_T([object isKindOfClass:[NSString class]])) { if(workAroundMacOSXABIBreakingBug == NO) { encodeState->fastClassLookup.stringClass = object->isa; } isClass = JKClassString; }
- else if(JK_EXPECT_T([object isKindOfClass:[NSNumber class]])) { if(workAroundMacOSXABIBreakingBug == NO) { encodeState->fastClassLookup.numberClass = object->isa; } isClass = JKClassNumber; }
- else if(JK_EXPECT_T([object isKindOfClass:[NSDictionary class]])) { if(workAroundMacOSXABIBreakingBug == NO) { encodeState->fastClassLookup.dictionaryClass = object->isa; } isClass = JKClassDictionary; }
- else if(JK_EXPECT_T([object isKindOfClass:[NSArray class]])) { if(workAroundMacOSXABIBreakingBug == NO) { encodeState->fastClassLookup.arrayClass = object->isa; } isClass = JKClassArray; }
- else if(JK_EXPECT_T([object isKindOfClass:[NSNull class]])) { if(workAroundMacOSXABIBreakingBug == NO) { encodeState->fastClassLookup.nullClass = object->isa; } isClass = JKClassNull; }
+ if(JK_EXPECT_T([object isKindOfClass:[NSString class]])) { if(workAroundMacOSXABIBreakingBug == NO) { encodeState->fastClassLookup.stringClass = object_getClass(object); } isClass = JKClassString; }
+ else if(JK_EXPECT_T([object isKindOfClass:[NSNumber class]])) { if(workAroundMacOSXABIBreakingBug == NO) { encodeState->fastClassLookup.numberClass = object_getClass(object); } isClass = JKClassNumber; }
+ else if(JK_EXPECT_T([object isKindOfClass:[NSDictionary class]])) { if(workAroundMacOSXABIBreakingBug == NO) { encodeState->fastClassLookup.dictionaryClass = object_getClass(object); } isClass = JKClassDictionary; }
+ else if(JK_EXPECT_T([object isKindOfClass:[NSArray class]])) { if(workAroundMacOSXABIBreakingBug == NO) { encodeState->fastClassLookup.arrayClass = object_getClass(object); } isClass = JKClassArray; }
+ else if(JK_EXPECT_T([object isKindOfClass:[NSNull class]])) { if(workAroundMacOSXABIBreakingBug == NO) { encodeState->fastClassLookup.nullClass = object_getClass(object); } isClass = JKClassNull; }
else {
if((rerunningAfterClassFormatter == NO) && (
#ifdef __BLOCKS__
@@ -2788,7 +2788,7 @@ static int jk_encode_add_atom_to_buffer(JKEncodeState *encodeState, void *object
for(id keyObject in enumerateObject) {
if(JK_EXPECT_T(printComma)) { if(JK_EXPECT_F(jk_encode_write1(encodeState, 0L, ","))) { return(1); } }
printComma = 1;
- if(JK_EXPECT_F((keyObject->isa != encodeState->fastClassLookup.stringClass)) && JK_EXPECT_F(([keyObject isKindOfClass:[NSString class]] == NO))) { jk_encode_error(encodeState, @"Key must be a string object."); return(1); }
+ if(JK_EXPECT_F((object_getClass(keyObject) != encodeState->fastClassLookup.stringClass)) && JK_EXPECT_F(([keyObject isKindOfClass:[NSString class]] == NO))) { jk_encode_error(encodeState, @"Key must be a string object."); return(1); }
if(JK_EXPECT_F(jk_encode_add_atom_to_buffer(encodeState, keyObject))) { return(1); }
if(JK_EXPECT_F(jk_encode_write1(encodeState, 0L, ":"))) { return(1); }
if(JK_EXPECT_F(jk_encode_add_atom_to_buffer(encodeState, (void *)CFDictionaryGetValue((CFDictionaryRef)object, keyObject)))) { return(1); }
@@ -2799,7 +2799,7 @@ static int jk_encode_add_atom_to_buffer(JKEncodeState *encodeState, void *object
for(idx = 0L; idx < dictionaryCount; idx++) {
if(JK_EXPECT_T(printComma)) { if(JK_EXPECT_F(jk_encode_write1(encodeState, 0L, ","))) { return(1); } }
printComma = 1;
- if(JK_EXPECT_F(((id)keys[idx])->isa != encodeState->fastClassLookup.stringClass) && JK_EXPECT_F([(id)keys[idx] isKindOfClass:[NSString class]] == NO)) { jk_encode_error(encodeState, @"Key must be a string object."); return(1); }
+ if(JK_EXPECT_F(object_getClass(((id)keys[idx])) != encodeState->fastClassLookup.stringClass) && JK_EXPECT_F([(id)keys[idx] isKindOfClass:[NSString class]] == NO)) { jk_encode_error(encodeState, @"Key must be a string object."); return(1); }
if(JK_EXPECT_F(jk_encode_add_atom_to_buffer(encodeState, keys[idx]))) { return(1); }
if(JK_EXPECT_F(jk_encode_write1(encodeState, 0L, ":"))) { return(1); }
if(JK_EXPECT_F(jk_encode_add_atom_to_buffer(encodeState, objects[idx]))) { return(1); }
@@ -70,11 +70,18 @@ namespace {
std::cout << "--------------------------------------------------------\n";
std::cout << " Concurrent syncqueue_streambuf and iterator \n";
std::cout << "--------------------------------------------------------\n";
+ std::cout
+ << "Concurrently run one producer and one consumer.\n"
+ << "The synchronous queue uses a CFDataBuffer as element type.\n"
+ << "The producer puts " << N << " buffers (CFDataBuffers) each containing " << strlen(s) << " bytes \n"
+ << "while the consumer reads the buffer content using a basic_syncqueue_streambuf.\n";
+
+
std::cout << std::endl;
- typedef json::objc::CFDataBuffer<char> CFDataBuffer;
- typedef synchronous_queue<CFDataBuffer> queue_t;
- typedef basic_syncqueue_streambuf<CFDataBuffer, char> stream_buffer_t;
+ typedef json::objc::CFDataBuffer<char> CFDataBuffer;
+ typedef synchronous_queue<CFDataBuffer> queue_t;
+ typedef basic_syncqueue_streambuf<CFDataBuffer, char> stream_buffer_t;
typedef std::pair<queue_t::result_type, queue_t::value_type> get_result_t;
typedef queue_t::result_type put_result_t;
@@ -143,7 +150,8 @@ namespace {
std::cout << "producer_timeout_occured: " << producer_timeout_occured << "\n";
std::cout << "completed: " << completed << std::endl;
- std::cout << "elapsed time: " << std::fixed << std::setprecision(2) << t.seconds() << "s\n\n" << std::endl;
+ std::cout << "elapsed time: " << std::fixed << std::setprecision(2) << t.seconds() << "s\n";
+ std::cout << strlen(s)*N/(1024.0*1024.0)/t.seconds() << " MBytes/s\n\n";
}
@@ -187,11 +195,11 @@ int main (int argc, const char * argv[])
{
test1(s1);
- test1(s2);
- test1(s3);
- test2(s1);
- test2(s2);
- test2(s3);
+// test1(s2);
+// test1(s3);
+// test2(s1);
+// test2(s2);
+// test2(s3);
return 0;
}
View
@@ -156,3 +156,30 @@
+### Version 0.8.1 beta
+
+#### Bug fixes
+
+- Fixed one memory leak which has been caused by the optimisation opportunity `USE_OPTIMIZED_IMMUTABLE_CALLBACKS` (a macro set in file `RepresentationGenerator.hpp`).
+ This will be fixed in a future release.
+
+- Fixed a memory leak in CFDataBuffer
+ The move assignment and the assignment operator now correctly release an existing buffer.
+
+#### Changes
+
+ * Migrated the project to Xcode 6.1
+
+ * The JPJson Lib for iOS has been updated for new architectures.
+
+ * Minimum iOS Version is now 7.1 - however the libraries will still build for older versions.
+
+ * Fixed a minor bug in a method in the `JPJsoneWriter` class not returning the correct value.
+
+ * Fixed a number of bugs in the JSONKit library. The JSONKit library is still maintained for benchmark comparisons.
+
+ * Fixed potential memory leak in UIDevice-Hardware source file (used in tests).
+
+ * Updated samples.
+
+
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@@ -39,6 +39,15 @@
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
+ <MacroExpansion>
+ <BuildableReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "A1D1C05F14652DCE000C145F"
+ BuildableName = "Documentation"
+ BlueprintName = "Documentation"
+ ReferencedContainer = "container:Documentation.xcodeproj">
+ </BuildableReference>
+ </MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "NO"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "NO"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "NO"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
- LastUpgradeVersion = "0500"
+ LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
Oops, something went wrong.

0 comments on commit a9b3e5c

Please sign in to comment.