aboutsummaryrefslogtreecommitdiffhomepage
path: root/objectivec
Commit message (Collapse)AuthorAge
* Add note about extension use and Coding support.Gravatar Thomas Van Lenten2016-10-31
|
* Adds pushLimit: and popLimit: into GPBCodedInputStream (#2297)Gravatar Sergio Campamá2016-10-27
| | | | Adds pushLimit: and popLimit: into GPBCodedInputStream
* Integrate internal changesGravatar Bo Yang2016-10-10
|
* Update the ObjC projects for Xcode 8Gravatar Thomas Van Lenten2016-10-03
| | | | | | | | | | - Let Xcode 8 update settings on the projects/schemes. - Migrate Swift tests to Swift 3 syntax. - Update the build/test script: - Require Xcode 8 (because of the Swift 3 requirement for tests) - Update the devices to what Xcode 8 has (8.x simulator seem to fail even though they can be downloaded in Xcode 8) - Update the travis images to ones with Xcode 8.
* Use a custom dictionary to avoid NSNumber operations.Gravatar Thomas Van Lenten2016-09-19
| | | | | For the secondary dictionary, use a custom CFDictionary with integer keys to avoid the NSNumber conversions.
* Remove the custom key functions and just use the system provided defaults.Gravatar Thomas Van Lenten2016-09-19
|
* Update the ObjC version checks to support a min and current version.Gravatar Thomas Van Lenten2016-09-15
| | | | | | | | | - Capture the version used to generated. - Check at compile time and runtime that generated code isn't from a newer version, also check that the min version required is also supported. - Keep the old constants/macros/functions to special case the last version that was working so those generated sources still work until we decide otherwise.
* Merge pull request #1970 from thomasvl/objc_any_helpersGravatar Thomas Van Lenten2016-09-09
|\ | | | | Objc any helpers
* \ Merge pull request #2094 from thomasvl/update_wkt_commentsGravatar Thomas Van Lenten2016-09-08
|\ \ | | | | | | Fix error and add note about lossy issues
| * | Fix error and add note about lossy issuesGravatar Thomas Van Lenten2016-09-08
| | |
* | | Support the -Wassign-enum compiler flag. (#2085)Gravatar Sergio Campamá2016-09-08
|/ / | | | | | | Support the -Wassign-enum compiler flag.
| * Add ObjC helpers for Any WKT.Gravatar Thomas Van Lenten2016-09-08
|/ | | | | | | | | | | | | | | - Capture the ObjC prefix used when generating the the file. - Track the containing type on descriptors. - Mark descriptors where the message class name got a suffix added to it. - Expose a fullName property on Descriptors. - Add helpers for packing/unpacking Any messages. - Bump the ObjC runtime version number. Since we added methods and invoke them in the generated code, ensure the code is running against a matching version. Otherwise, someone could compile against headers, but run with a framework that is older and get unknown selector failures. This should trip clearer messaging. Fixes https://github.com/google/protobuf/issues/1674
* Make Root's +extensionRegistry generation smarter.Gravatar Thomas Van Lenten2016-09-01
| | | | | | | At generation time, walk the file's dependencies to see what really contains extensions so we can generate more minimal code that only links together the roots that provided extensions. Gets a bunch of otherwise noop code out of the call flow when the roots are +initialized.
* Support GenerateAll().Gravatar Thomas Van Lenten2016-08-26
| | | | | - Expect calls on GenerateAll() and not Generate(). - Parse the prefix validation file once, and then check all the files.
* Adding casts so that code importing protobug using -Wconversion does not ↵Gravatar Sergio Campama2016-08-16
| | | | generate warnings.
* Fixes extra whitespace on generated comments. (#1950)Gravatar Sergio Campamá2016-08-12
| | | | Fixes extra whitespace on generated comments.
* More complete nil/reset tests within a oneofGravatar Thomas Van Lenten2016-08-12
|
* Fix some constants to be correct for the message class in use.Gravatar Thomas Van Lenten2016-08-12
|
* More explicit tests for nil behaviors on fields.Gravatar Thomas Van Lenten2016-08-12
| | | | | Code already works, but make a bank of tests that call it out so things are very clean in the future just to be safe.
* Record zero for "has" for proto3 if in a oneof.Gravatar Thomas Van Lenten2016-08-11
| | | | | | | If a message is proto3, then the zero values still count as being set one the field is in a oneof. Add tests to confirm oneofs work as expected in both syntaxes.
* Never use strlen on utf8 runs so null characters work.Gravatar Thomas Van Lenten2016-08-09
| | | | | | | | | | | | | | Fixes https://github.com/google/protobuf/issues/1933 Add a new test that forces strings into two different implementations from the NSString class cluster to help confirm we're exercising both paths by which CodedOutputStream will extract data from an NSString. Move the old +load test (that was flawed because the behavior really depends on the type of string from the NSString class cluster); into a unittest that targets the specific case we're adding a behavior confirmation on. As a bonus, improve the TextFormat generation of string characters < 0x20.
* Adds support for appledoc in generated code. (#1928)Gravatar Sergio Campamá2016-08-09
| | | | | | Convert mapping of proto comments to appledoc format so they show up in Xcode and cocoadocs. Fixes https://github.com/google/protobuf/issues/1866
* Migrating documentation of the ObjectiveC runtime code to appledoc. (#1867)Gravatar Sergio Campamá2016-08-08
| | | | | | | | Work for #1866 Migrates all the public class docs over to appledoc format. While Xcode is fine with blank lines in `///` comments, appledoc (used by cocoadocs) isn't and was leaving a bunch of info off the doc pages. The generator still needs to be updated to do this also; that will be a follow up CL.
* Use public methods to fetch oneofs in generated code.Gravatar Thomas Van Lenten2016-07-18
| | | | | | | | When building into frameworks, the generated code doesn't always have direct access to the proto internals. Instead of opening up the access, just use the public method to fetch the correct oneof. Fixes https://github.com/google/protobuf/issues/1789
* Exposes the currently registered extensions for a message and removes the ↵Gravatar Sergio Campamá2016-07-15
| | | | internal sortedExtensionsInUse
* Drop the performace baselines.Gravatar Thomas Van Lenten2016-07-08
| | | | | We weren't really using them, and the nested path causes checkout problems on windows.
* Don't #import the .m files.Gravatar Thomas Van Lenten2016-07-07
| | | | | | | | | As bazel folks are looking at getting auto generation of module maps going and the importing of sources files causes issues there. We were only do it to hack around some of the apple linker behaviors around objc classes and categories, but even that isn't complete and CocoaPods was already doing -ObjC, and developers not using pods could have still needed it to ensure everything was linked anyways; so drop the hack of importing sources.
* add nullable qualifier to nil return typesGravatar Dia Kharrat2016-07-05
| | | | | | Add the `nullable` qualifier to return types of Objective-C methods that can return a nil due to errors. This change makes these methods compatible with the Swift 2 try-catch syntax.
* Fix some failing travis tests.Gravatar Feng Xiao2016-07-01
| | | | | | | 1. Add missing header file to Makefile.am. 2. Re-generate objectivec generated code for well-known types. Change-Id: If28217c701cf8bd739ea0db240e9eee600f23ee7
* Xcode project cleanup/setup.Gravatar Thomas Van Lenten2016-06-29
| | | | | | | | - Correct some cases sources were compiled into the static lib and the tests. - Enable Xcodes code coverage support on the unittests. We aren't complete on coverage, but having the data always there should make it easier to chip away at this going forward. - Drop method in tests that isn't used, wire up a validator in another test.
* Validate the tag numbers when parsing. (#1725)Gravatar Thomas Van Lenten2016-06-29
| | | | | | | | | | | | | | | There was a twist code path (that some times showed up due to what happened to be in memory in failure cases), that would cast a bogus wire type into the enum, and then fall through switch statements. Resolve this by validating all wire types when parsing tags and throwing the error at that point so it can't enter the system. As added safety, stick in a few asserts for apis that get passed tags to ensure they also are only seeing valid data. Bonus: Tweak the parsing loop to skip some work when we get the end marker (zero tag) instead of still looping through all the fields.
* Merge pull request #1720 from thomasvl/issue_1716Gravatar Thomas Van Lenten2016-06-28
|\ | | | | Fix GPBGetMessage{Repeated,Map}Field()
| * Fix GPBGetMessage{Repeated,Map}Field()Gravatar Thomas Van Lenten2016-06-27
| | | | | | | | | | | | | | - Correct impl by using helpers the message wiring does. - Add unittests. Fixes https://github.com/google/protobuf/issues/1716
* | Fix Objective-C generator option typoGravatar Nathan Wong2016-06-27
|/ | | Looks like this was changed during #1683, but missed in the README :)
* Merge pull request #1714 from dnkoutso/masterGravatar Thomas Van Lenten2016-06-26
|\ | | | | Get value from text format name in GPBEnumDescriptor
| * Get value from text format name in GPBEnumDescriptorGravatar Dimitris Koutsogiorgas2016-06-26
| |
* | Rename methods to avoid ObjC KVC collisions. (#1699)Gravatar Thomas Van Lenten2016-06-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Note: Breaking API change on the Dictionary classes. The numeric value classes were using "Value" in the naming, but this silently collided with the KVC category on NSObject; meaning KVC code could break up a keypath and call these selectors with the wrong types leading to crashes (even though the code all would compile cleanly). - Rename the methods to use the "type" instead of literal "Value". - Update all the impls and tests. - Enable the warning that will catch issues like this in the future. Fixes https://github.com/google/protobuf/issues/1616
* | Adds destination flag to xcodebuild to avoid possible flake errors (#1697)Gravatar Sergio Campamá2016-06-20
| | | | | | | | Adds destination flag to xcodebuild to avoid possible flake errors
* | Add new generation option for using proto sources from other frameworks.Gravatar Thomas Van Lenten2016-06-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Better docs in the generator for the different options that can be passed during an invoke of protoc. - Add named_framework_to_proto_path_mappings_path to pass the path to a file containing mappings of frameworks for different proto files. - Update the generation to use the mapping to change the #import directives it creates. Note: the changes in helpers is mostly moving code within the fine, and then a small change to expose the parsing so a passed on class can consume the line. Fixes https://github.com/google/protobuf/issues/1457
* | Merge pull request #1683 from thomasvl/third_party_frameworkGravatar Thomas Van Lenten2016-06-15
|\ \ | | | | | | Add support for generation sources into a framework.
| * | Add support for generation sources into a framework.Gravatar Thomas Van Lenten2016-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add a protoc objc option (generate_for_named_framework) to set the name of the framework all generated sources will be in. - Tweak some comments/naming to make it clear what is the Protobuf framework vs. the framework for generated code. - Update the objc README to document the new generation option to protoc. This is working towards https://github.com/google/protobuf/issues/1457.
* | | Add the CocoaPods integration tests to Travis.Gravatar Sergio Campamá2016-06-14
|/ / | | | | | | | | | | Also hotwires updating ruby as CocoaPods was crashing within a support library. Fixes #1619
* | Fixes Xcode 8 analyzer warning saying that it was missing a release in ↵Gravatar Sergio Campamá2016-06-14
| | | | | | | | dealloc (#1678)
* | Improving the granularity parsing errors (#1623)Gravatar Sergio Campamá2016-06-02
| | | | | | | | | | | | | | | | | | Add more context to GPBCodedInputStream failures. Have GPBMessage parsing apis extract out the GPBCodedInputStream information and expose it. Update HeaderDocs with pointers to all error domains/codes. Expand the unittests to cover the full set of errors reported. Fixes https://github.com/google/protobuf/issues/1618
* | Merge pull request #1620 from sergiocampama/cleanup1Gravatar Thomas Van Lenten2016-05-30
|\ \ | | | | | | Removing unused GPBExceptionMessageKey
| * | Removing unused GPBExceptionMessageKeyGravatar Sergio Campama2016-05-27
| | | | | | | | | | | | https://github.com/google/protobuf/issues/1618
* | | Merge pull request #1617 from thomasvl/more_warningsGravatar Thomas Van Lenten2016-05-27
|\ \ \ | |/ / |/| | Add -Woverriding-method-mismatch.
| * | Add -Woverriding-method-mismatch.Gravatar Thomas Van Lenten2016-05-27
| | | | | | | | | | | | | | | | | | | | | Fixes up the code to avoid some issues with isEqual: methods. Opened https://github.com/google/protobuf/issues/1616 to track the KVC collision.
* | | fix expected class checking in GPBSetMessageRepeatedFieldGravatar Jon Wall2016-05-26
|/ / | | | | | | | | This is currently checking for the wrong class for enums and NSMutableArray fields.
* | Add more warnings to for the ObjC runtime buildGravatar Thomas Van Lenten2016-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Working on https://github.com/google/protobuf/issues/1599, specifically: - Turn on more warnings that the Xcode UI calls out with individual controls. - Manually add: -Wundef -Wswitch-enum - Manually add and then diable in the unittests because of XCTest's headers: -Wreserved-id-macro -Wdocumentation-unknown-command - Manually add -Wdirect-ivar-access, but disable it for the unittests and in the library code (via #pragmas to suppress it). This is done so proto users can enable the warning.