Skip to content
Permalink
Branch: master
Commits on Nov 8, 2019
  1. Fix decoding of overencoded booleans.

    thomasvl committed Nov 8, 2019
    if the value was >32bit with the low bits all being zero, it was decoded as
    false instead of as true.
    
    Fixes #6863
Commits on Nov 4, 2019
Commits on Sep 20, 2019
  1. [ObjC] Don't use unions and instead use memcpy for the type swaps. (#…

    thomasvl committed Sep 20, 2019
    …6672)
    
    The code in question hasn't change in a long time so the cause of
    firebase/firebase-ios-sdk#3851 still appears to be
    an Xcode 11 clang change/bug; but this does appear to be slightly better
    code for the work being done.
    
    Cleanup along the way for #6679
  2. [ObjC] Don't use unions and instead use memcpy for the type swaps. (#…

    thomasvl committed Sep 20, 2019
    …6672)
    
    The code in question hasn't change in a long time so the cause of
    firebase/firebase-ios-sdk#3851 still appears to be
    an Xcode 11 clang change/bug; but this does appear to be slightly better
    code for the work being done.
    
    Cleanup along the way for #6679
Commits on Aug 30, 2019
  1. Fix typo that snuck in with last commit.

    thomasvl committed Aug 30, 2019
  2. Add an explicit test using secure coding for added safety.

    thomasvl committed Aug 29, 2019
Commits on Aug 26, 2019
  1. Fix enum writing.

    thomasvl committed Aug 26, 2019
    Enums use varint, so if the value is negative it should end up being longer.
    
    This was caught my new conformance test cases.
Commits on Jul 19, 2019
  1. Revert bad change to objc conformance test in #6199

    thomasvl committed Jul 18, 2019
    Since true for objc is external, changes should always start on the github
    side, so the fact that something got pushed out is a sign something was
    broken in the process.
Commits on Jun 6, 2019
  1. Add Xcode 11 support to the script.

    thomasvl committed Jun 6, 2019
Commits on May 29, 2019
  1. Use runtime_error vs just exiting for some issues.

    thomasvl committed May 29, 2019
    release notes: no
Commits on Mar 11, 2019
  1. Stop enabling more warnings for CXX compiles.

    thomasvl committed Mar 11, 2019
    For reasons I don't follow, when passing CXXFLAGS to configure, the build
    ends up breaking because something along the way fails to detect C++11
    support within the third_party/googletest part of the build.
Commits on Feb 5, 2019
  1. Document why no enum_extensibility is needed for Swift. (#5680)

    thomasvl committed Feb 5, 2019
    Document why no enum_extensibility is needed for Swift.
Commits on Jan 14, 2019
  1. [ObjC] add support for the TextFormat constants.

    thomasvl committed Jan 14, 2019
    ObjC doesn't support them, but this ensure when tests are added
    they will be handled correctly.
    
    The conformance.proto was updated in PR #5566
Commits on Jan 10, 2019
  1. Comments on the next line will go to the next field.

    thomasvl committed Jan 10, 2019
    Even though the comments were indented to appear to go with the jspb
    case/field, protoc doesn't collect comments like that, so these "hanging"
    comments actually "attach" to the next thing added to each.  Looking at
    #5566 you see where
    the generated code picked up the comment on the wrong field.
Commits on Jan 8, 2019
  1. ObjC: Add a Xcode project for tvOS.

    thomasvl committed Jan 7, 2019
    The CocoaPod (and source) have always support tvOS, but adding the project
    makes it easier to run the tests and debug if there ever were an issue.
    
    (not adding a watchOS project at the moment because Apple doesn't provide
     XCTest, so all it could do is build the library. We still support that,
     just can't "test" it.)
  2. Remove stale target reference.

    thomasvl committed Jan 7, 2019
Commits on Jan 7, 2019
  1. [ObjC] Add the jspb cases to the switches so they are complete.

    thomasvl committed Jan 7, 2019
Commits on Dec 18, 2018
  1. If enum aliases overlap in ObjC names skip generating the extras.

    thomasvl committed Dec 17, 2018
    Some protos have enum values of "FOO" and "Foo", which the ObjC generation
    then makes into the same thing. Just skip generating the enum element for
    the duplicate as it would be a compile error because of the name collision.
    
    The descriptors are still generated to support reflection and TextFormat
    more completely.
  2. Small fix to -[GPBEnumDescriptor getValue:forEnumTextFormatName:]

    thomasvl committed Dec 17, 2018
    Don't look up the TextFormat for the value as aliases can trip that
    up, instead check the TextFormat names directly and then fetch the
    value.
Commits on Dec 5, 2018
  1. [ObjC] Properly annotate extensions for ARC.

    thomasvl committed Dec 5, 2018
    Just like fields, some extension fieldnames can be named such that they appear
    to have meaning to ARC. Add the annotation to the compiler will get things
    correct.
    
    Add a bunch of extensions to allow inspection on generation to ensure things
    are correct.
  2. Annotate the GPBDictionary enumerate* apis with NS_NOESCAPE.

    thomasvl committed Dec 4, 2018
    This should help the Swift compiler if these apis are used because it
    changes the codegen to not need copies/retains.
  3. Annotate the GPBArray enumerate* apis with NS_NOESCAPE.

    thomasvl committed Dec 4, 2018
    This should help the Swift compiler if these apis are used because it
    changes the codegen to not need copies/retains.
Commits on Nov 19, 2018
  1. ObjC: small improvement to extension serialization.

    thomasvl committed Nov 19, 2018
    For messages that have multiple extension ranges, this will improve things
    by avoiding repeated work.  For messages with a single range, it should
    be a wash.
    
    - Sort the list of set extensions once during serialization and reuse the list.
    - Break out of the serialization loop as soon as the loop has moved pasted at
      accepted range for field ids.
Commits on Nov 14, 2018
  1. Add a unittest for ObjC TextFormat extension support.

    thomasvl committed Nov 14, 2018
  2. TextFormat extension printing fix.

    thomasvl committed Nov 14, 2018
    If a proto has multiple extension ranges back to back, don't double
    print the first items as they also are the ending range of the
    previous.
  3. Improve comment about warning being incomplete.

    thomasvl committed Nov 14, 2018
  4. In debug builds output a warning about NSCoding and extensions.

    thomasvl committed Nov 14, 2018
    Using NSCoding with a Message that has extensions is risky because
    when reloaded, there is no way to provide a registry through the
    NSCoding plumbing, so output a warnings to atleast give developers
    a hint about the potential issues.
  5. Fix up the Xcode project.

    thomasvl committed Nov 14, 2018
    The builds were failing under Xcode 10 because of the new build system.
    Even when reverted to the old build system, the build was failing
    on the analyzer and swift bridging header, so it seems the general
    logic for searching for things was changed in a way the setting does
    not always cover.
    
    - Disable HeaderMaps.
    - Set user header search paths instead of system search paths.
    - Turn off always search user paths (now recommended).
    
    Tested in Xcode 10.1 and 9.4.1; both are able to build/pass with this.
Commits on Nov 2, 2018
  1. Let the 9.4 migrator migrate the Swift source.

    thomasvl committed Nov 2, 2018
    No changes were needed, but since the Xcode projects pick up the updated
    setting, the tests require a newer Xcode that supports Swift 4.
    
    This is being done because Xcode 10 starting warning about Swift 3 support
    going away in the future, so we might as well do the updates since most
    folks shouldn't be on those really old Xcode versions any more.
Commits on Nov 1, 2018
  1. Add more Xcode versions to the objc build script.

    thomasvl committed Nov 1, 2018
  2. Collapse :protobuf_objc and :objectivec targets.

    thomasvl committed Nov 1, 2018
    Not sure the history for why there were two objc_library targets, but
    given the one has an issue about not working, merge them into a single
    target and an alias.
    
    - Use the alias for :objectivec since that naming doesn't seem to follow
      the other targets *_library targets here.
    - Update :protobuf_objc to be use for the working target and just inline
      the sources/headers lists so there is less indirection in the file.
    
    Fixes #5284
Commits on Oct 2, 2018
  1. Add tests to confirm strings/bytes are copied.

    thomasvl committed Oct 2, 2018
Older
You can’t perform that action at this time.