aboutsummaryrefslogtreecommitdiff
path: root/objectivec/GPBRootObject.m
Commit message (Collapse)AuthorAgeFilesLines
* Remove unreferenced 'GPBMessageSignatureProtocol' class.Dave MacLachlan2017-11-141-0/+8
| | | | | | | | | Remove unreferenced 'GPBMessageSignatureProtocol' class that is just taking up space in the Objective C runtime information by hanging the protocol it needs to declare off of GPBRootObject instead. Small binary size reduction, but more importantly a removal of a class that appears to be unused when statically analyzed.
* Handing threading race resolving methods.Thomas Van Lenten2017-03-021-7/+14
| | | | | | | - Don't prune the extension registry as that can lead to failures when two threads are racing. - If adding the method fails, check and see if it already is bound to decide the return result. Deals with threading races binding the methods.
* Drop all use of OSSpinLockThomas Van Lenten2015-12-171-6/+22
| | | | | | | | | | | | | Apple engineers have pointed out that OSSpinLocks are vulnerable to live locking on iOS in cases of priority inversion: . http://mjtsai.com/blog/2015/12/16/osspinlock-is-unsafe/ . https://lists.swift.org/pipermail/swift-dev/Week-of-Mon-20151214/000372.html - Use a dispatch_semaphore_t within the extension registry. - Use a dispatch_semaphore_t for protecting autocreation within messages. - Drop the custom/internal GPBString class since we don't have really good numbers to judge the locking replacements and it isn't required. We can always bring it back with real data in the future.
* Add nonnil markup to ObjC library.Thomas Van Lenten2015-06-161-1/+4
| | | | Add the clang annotations to the objc library and generated code to help with Swift bridging and compiler checks.
* Beta quality drop of Objective C Support.Thomas Van Lenten2015-06-081-4/+3
| | | | | | | | | | | | | | | - Add more to the ObjC dir readme. - Merge the ExtensionField and ExtensionDescriptor to reduce overhead. - Fix an initialization race. - Clean up the Xcode schemes. - Remove the class/enum filter. - Remove some forced inline that were bloating things without proof of performance wins. - Rename some internal types to avoid conflicts with the well know types protos. - Drop the use of ApplyFunctions to the compiler/optimizer can do what it wants. - Better document some possible future improvements. - Add missing support for parsing repeated primitive fields in packed or unpacked forms. - Improve -hash. - Add *Count for repeated and map<> fields to avoid auto create when checking for them being set.
* Objective C Second Alpha DropThomas Van Lenten2015-05-221-13/+48
| | | | | | | | | | - Style fixups in the code. - map<> serialization fixes and more tests. - Autocreation of map<> fields (to match repeated fields). - @@protoc_insertion_point(global_scope|imports). - Fixup proto2 syntax extension support. - Move all startup code to +initialize so it happen on class usage and not app startup. - Have generated headers use forward declarations and move imports into generated code, reduces what is need at compile time to speed up compiled and avoid pointless rippling of rebuilds.
* Alpha 1 drop of Google's Objective C plugin and runtime support for protobufs.Thomas Van Lenten2015-05-061-0/+177