{"push_id":918704968,"size":13,"distinct_size":13,"ref":"refs/heads/lhoward/nscoding","head":"3f00355763c34b6d02cb4a2ffb99d923c2ba9d5c","before":"a05e628aa13c8113011a1ab535fa288ff6bddc05","commits":[{"sha":"adbc972d0a65fbb4ff9dab8fd0f9216f55aa3204","author":{"email":"4af992ea29d9acf383a28cf2ea963917f22ebc76@padl.com","name":"Luke Howard"},"message":"[SR-377] Implement NSClassFromString()\n\nAn implementation of NSClassFromString() is necessary to implement\nNSKeyedArchiver. This implementation has the limitation that it cannot\nlookup a class by name which has a private symbol.\n\n[SR-377]: better failure message in NSStringFromClass()\n\n[SR-377] NSStringFromClass/NSClassFromString cleanup debug errors\n\n[SR-412] note compiler fix required on Linux\n\n[SR-412] remove extaneous comment re: compiler crash","distinct":true,"url":"https://api.github.com/repos/lhoward/swift-corelibs-foundation/commits/adbc972d0a65fbb4ff9dab8fd0f9216f55aa3204"},{"sha":"0aef75eb3721227b15b4e9751e4c6e2a0a3dbf34","author":{"email":"4af992ea29d9acf383a28cf2ea963917f22ebc76@padl.com","name":"Luke Howard"},"message":"[SR-377] Implement NSConcreteValue class\n\nThe NSConcreteValue class is a wrapper for arbitrary values that can be\ndescribed using Objective-C type notation. Note that owing to the lack of\nfactory initializers, a rather ugly workaround is used to make NSValue\nbehave as a class cluster. This should not have a performance impact in\npractice as its init() is a NOOP and most NSValues will be NSNumbers.\n\nNSConcreteValue does not yet support \"special\" values such as NSRects.\nAn implementation will be forthcoming in a separate commit.\n\nuse nslog\n\n[SR-377]: NSConcreteValue: implement equality test\n\n[SR-377]: NSValue: always wrap NSConcreteValue, add NSObject methods\n\nThe trick of setting classForKeyedUnarchiver to NSConcreteValue.self does not\nwork because the sidetable is not updated.\n\nAlso, add description/hash/isEqual methods.","distinct":true,"url":"https://api.github.com/repos/lhoward/swift-corelibs-foundation/commits/0aef75eb3721227b15b4e9751e4c6e2a0a3dbf34"},{"sha":"c4127e66611d507bf94a40a45ff4e5a1c0db07b0","author":{"email":"4af992ea29d9acf383a28cf2ea963917f22ebc76@padl.com","name":"Luke Howard"},"message":"[SR-379] CFDictionaryGetKeysAndValues() bridges values and keys in wrong order\n\nCFDictionaryGetKeysAndValues() bridges to _CFSwiftDictionaryGetKeysAndValues()\nwhich accepts parameters in the CF, not Foundation order. The arguments are\ntransposed in the current code.\n\n[SR-379] CFDictionaryGetKeysAndValues() bridges values and keys in wrong order\n\nCFDictionaryGetKeysAndValues() bridges to _CFSwiftDictionaryGetKeysAndValues()\nwhich accepts parameters in the CF, not Foundation order. The arguments are\ntransposed in the current code.\n\n[SR-379] CFDictionaryGetKeysAndValues() bridges values and keys in wrong order","distinct":true,"url":"https://api.github.com/repos/lhoward/swift-corelibs-foundation/commits/c4127e66611d507bf94a40a45ff4e5a1c0db07b0"},{"sha":"429a83a248ad7f58f89d7703ace43ae5af0b1fcc","author":{"email":"4af992ea29d9acf383a28cf2ea963917f22ebc76@padl.com","name":"Luke Howard"},"message":"[SR-377] make internal property list APIs available to Foundation\n\nNSKeyedArchiver requires the ability to construct CFKeyedArchiverUID instances\nand also access to other (otherwise private) property list APIs in CF.","distinct":true,"url":"https://api.github.com/repos/lhoward/swift-corelibs-foundation/commits/429a83a248ad7f58f89d7703ace43ae5af0b1fcc"},{"sha":"a19a008d3bee4a44255cbc354d01c903fd8614fc","author":{"email":"4af992ea29d9acf383a28cf2ea963917f22ebc76@padl.com","name":"Luke Howard"},"message":"[SR-377] NSPropertyList accessors for use by NSKeyedArchiver\n\n[SR-377] check is CF object before calling _CFKeyedArchiverUIDGetTypeID\n\n[SR-377]: really enable CF streams for Linux builds","distinct":true,"url":"https://api.github.com/repos/lhoward/swift-corelibs-foundation/commits/a19a008d3bee4a44255cbc354d01c903fd8614fc"},{"sha":"04e712049e8bb80e46fa90fd26f2ba9822593eb6","author":{"email":"4af992ea29d9acf383a28cf2ea963917f22ebc76@padl.com","name":"Luke Howard"},"message":"[SR-377] implement NSKeyedArchiver/NSKeyedUnarchiver\n\nNSKeyedUnarchiver initializer cannot fail\n\n[SR-377] NSKeyedArchiver implementation: allow nil to be securely encoded\n\n[SR-377] NSKeyedUnarchiver implementation: fix key escaping\n\n[SR-377] _decodeArrayOfObjectsForKey block can be @noescape\n\n[SR-404] add Swift linker script when building Foundation on Linux\n\nFailing to include the linker script meant that the Swift runtime would\nfail to load Foundation's protocol conformances and casting would not work.\n\n[SR-377]: NSKeyedUnarchiver: force cast of CFReadStream for Linux\n\n[SR-377] update archiving notes re: Linux compat","distinct":true,"url":"https://api.github.com/repos/lhoward/swift-corelibs-foundation/commits/04e712049e8bb80e46fa90fd26f2ba9822593eb6"},{"sha":"dcff9773ae0b14d35bb0aa6c2fa2ac96f748d64c","author":{"email":"4af992ea29d9acf383a28cf2ea963917f22ebc76@padl.com","name":"Luke Howard"},"message":"[SR-391] _CFSwiftDictionaryGetKeysAndValues() crashes with NULL arguments\n\nIt's valid to enumerate a dictionary with CFDictionaryGetKeysAndValues(), only\nretrieving the keys or values (or indeed nothing).","distinct":true,"url":"https://api.github.com/repos/lhoward/swift-corelibs-foundation/commits/dcff9773ae0b14d35bb0aa6c2fa2ac96f748d64c"},{"sha":"a7c09fbde2a01eecd5f3fb75d555261137a26cc2","author":{"email":"4af992ea29d9acf383a28cf2ea963917f22ebc76@padl.com","name":"Luke Howard"},"message":"[SR-380] NSString.hash.getter crash workaround\n\n[SR-380] other hash overflow fixes","distinct":true,"url":"https://api.github.com/repos/lhoward/swift-corelibs-foundation/commits/a7c09fbde2a01eecd5f3fb75d555261137a26cc2"},{"sha":"59ecea6b76f17d9501724bcbd86c4f13f04f8716","author":{"email":"4af992ea29d9acf383a28cf2ea963917f22ebc76@padl.com","name":"Luke Howard"},"message":"[SR-377] common Foundation class decoders/encoders\n\nSee Docs/Archiving.md for further implementation status notes.\n\n[SR-377]: unbreak NSMutableDictionary decoding\n\n[SR-377] note on nsset encoding","distinct":true,"url":"https://api.github.com/repos/lhoward/swift-corelibs-foundation/commits/59ecea6b76f17d9501724bcbd86c4f13f04f8716"},{"sha":"8eff41e2683612d6970f06aee7d038eab6b9586b","author":{"email":"4af992ea29d9acf383a28cf2ea963917f22ebc76@padl.com","name":"Luke Howard"},"message":"[SR-414] isEqual/hash/description for bridged CF objects\n\n[SR-414] NSData isEqual() should use isEqualToData()","distinct":true,"url":"https://api.github.com/repos/lhoward/swift-corelibs-foundation/commits/8eff41e2683612d6970f06aee7d038eab6b9586b"},{"sha":"b00590a2dac1a1660ef857cfd9ebab169e54da56","author":{"email":"4af992ea29d9acf383a28cf2ea963917f22ebc76@padl.com","name":"Luke Howard"},"message":"NSNotification.description implementation","distinct":true,"url":"https://api.github.com/repos/lhoward/swift-corelibs-foundation/commits/b00590a2dac1a1660ef857cfd9ebab169e54da56"},{"sha":"ee1919e6164cc9021ff7da74e7e59d080466fed0","author":{"email":"4af992ea29d9acf383a28cf2ea963917f22ebc76@padl.com","name":"Luke Howard"},"message":"# This is a combination of 5 commits.\n# The first commit's message is:\n[SR-377] beginnings of NSKeyedUnarchiver tests\n\n[SR-377]: beginnings of archiver test\n\n[SR-377] URL encoding test\n\n[SR-377]: NSArchiver test for custom class\n\n# This is the 2nd commit message:\n\n[SR-377]: NSMutableDictionary/NSMutableArray/NSSet archiver tests\n\n# This is the 3rd commit message:\n\n[SR-377]: NSKeyedUnarchiver test: test data in a file\n\n# This is the 4th commit message:\n\n[SR-377]: NSKeyedArchiver test: remove extraneous print\n\n# This is the 5th commit message:\n\n[SR-377]: NSKeyedUnarchiver tests: test NSConcreteValue","distinct":true,"url":"https://api.github.com/repos/lhoward/swift-corelibs-foundation/commits/ee1919e6164cc9021ff7da74e7e59d080466fed0"},{"sha":"3f00355763c34b6d02cb4a2ffb99d923c2ba9d5c","author":{"email":"4af992ea29d9acf383a28cf2ea963917f22ebc76@padl.com","name":"Luke Howard"},"message":"[SR-377] beginnings of NSKeyedUnarchiver tests\n\n[SR-377]: beginnings of archiver test\n\n[SR-377] URL encoding test\n\n[SR-377]: NSArchiver test for custom class\n\n[SR-377]: NSMutableDictionary/NSMutableArray/NSSet archiver tests\n\n[SR-377]: NSKeyedUnarchiver test: test data in a file\n\n[SR-377]: NSKeyedArchiver test: remove extraneous print\n\n[SR-377]: NSKeyedUnarchiver tests: test NSConcreteValue\n\n[SR-377]: NSKeyedUnarchiver tests: have at least one binary plist to decode\n\n[SR-377]: NSKeyedArchiver test: test generic objc encode","distinct":true,"url":"https://api.github.com/repos/lhoward/swift-corelibs-foundation/commits/3f00355763c34b6d02cb4a2ffb99d923c2ba9d5c"}]}