Commit Graph

3557 Commits

Author SHA1 Message Date
Josh Haberman
4833b4c003 Surrogate checking is unpredictable, so always manually check. 2016-06-03 09:39:38 -07:00
Josh Haberman
bd98eae1c9 Fixed Python by updating failure lists and fixed a few broken tests.
Python 2.x doesn't detect unpaired surrogates so we have to
do that manually.
2016-06-03 09:39:38 -07:00
Josh Haberman
ef7894e2dc Make conformance tests more strict about the failure list.
The failure lists were falling out of date because the
tests would pass even if people forgot to remove failures
from the list.
2016-06-03 09:39:38 -07:00
Bo Yang
20b532544f Integrate interanl changes 2016-06-02 15:44:32 -07:00
Sergio Campamá
e34c09182e Improving the granularity parsing errors (#1623)
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
2016-06-02 14:14:26 -04:00
Feng Xiao
0ab7a7f744 Merge pull request #1640 from os72/master
Add https://github.com/os72/protobuf-dynamic
2016-06-02 10:20:52 -07:00
os72
f6be0d1fc1 Add https://github.com/os72/protobuf-dynamic
Add reference to Protocol Buffers Dynamic Schema (https://github.com/os72/protobuf-dynamic)
2016-05-31 22:07:14 -07:00
Feng Xiao
18a9140f33 Merge pull request #1625 from yeswalrus/note-versions
Update the list of places where the version is stored.
2016-05-31 18:37:08 -04:00
Feng Xiao
cc30be105c Merge pull request #1613 from yeswalrus/cmake-min-version
Bump cmake minimum required version to 2.8.12
2016-05-31 18:35:28 -04:00
Feng Xiao
c4611939cd Merge pull request #1629 from zhongfq/patch-1
add protobuf as3 lib and code generator for as3
2016-05-31 14:06:26 -04:00
Feng Xiao
a315bb8b1e Merge pull request #1614 from yeswalrus/cmake-cleanup
Remove unused lines from CMake files.
2016-05-31 13:51:07 -04:00
Thomas Van Lenten
e215828525 Merge pull request #1630 from google/beta-3
Merge beta-3 release branch into master.
2016-05-31 13:00:31 -04:00
Thomas Van Lenten
e845187cf6 Merge pull request #1620 from sergiocampama/cleanup1
Removing unused GPBExceptionMessageKey
2016-05-30 19:32:03 -04:00
Eric Zhong
4629659f3a add protobuf as3 lib and code generator for as3
1.only support proto3
2.support oneof map
3.support nested message and enum for as3
2016-05-30 19:41:47 +08:00
Walter Gray
457a2975f4 Remove __PROTOBUF_PACKAGE_PREFIX 2016-05-28 01:59:58 -07:00
Walter Gray
61c9696586 Update the list of places where the version is stored. 2016-05-28 01:04:26 -07:00
Sergio Campama
a714c401a9 Removing unused GPBExceptionMessageKey
https://github.com/google/protobuf/issues/1618
2016-05-27 12:17:35 -07:00
Thomas Van Lenten
40ff94ebef Merge pull request #1617 from thomasvl/more_warnings
Add -Woverriding-method-mismatch.
2016-05-27 15:04:06 -04:00
Thomas Van Lenten
86e8f1fd7a Merge pull request #1604 from jonwallg/repeated_types
fix expected class checking in GPBSetMessageRepeatedField
2016-05-27 13:45:36 -04:00
Thomas Van Lenten
38b9e74691 Add -Woverriding-method-mismatch.
Fixes up the code to avoid some issues with isEqual: methods.

Opened https://github.com/google/protobuf/issues/1616 to track the KVC
collision.
2016-05-27 12:52:35 -04:00
Walter Gray
d13b3d0d96 remove useless cleanup - config.cmake files are executed in their own context. 2016-05-26 23:49:28 -07:00
Walter Gray
c57c6eabf7 Bump to the *real* minimum required version. Setting CMP0022 breaks CMake versions < 2.8.12 2016-05-26 23:39:17 -07:00
Walter Gray
04265e40da Remove if(TRUE) 2016-05-26 18:05:58 -07:00
Jon Wall
e72805ec5e fix expected class checking in GPBSetMessageRepeatedField
This is currently checking for the wrong class for enums
and NSMutableArray fields.
2016-05-26 12:23:41 -04:00
Thomas Van Lenten
0f27cab4fb Merge pull request #1600 from thomasvl/objc_tighter_warnings
Add more warnings to for the ObjC runtime build
2016-05-26 11:10:00 -04:00
Jisi Liu
ed87c1fe2c Merge pull request #1586 from davidzchen/python
Bazel build: Keep generated sources and Python runtime in the same directory
2016-05-25 22:41:02 -04:00
David Z. Chen
02cd45ca35 Bazel build: Keep generated sources and Python runtime in the same directory.
Users often encounter a Python import error when trying to build Python
protos if protobuf is installed locally on the machine. In this case,
Python ends up looking in the wrong directory when importing files (see
bazelbuild/bazel#1209 and tensorflow/tensorflow#2021). It seems that the
problem is caused by Python getting confused when there are Python
source files that are meant to be part of the same package but are
in separate directories.

Prior to #1233, the Bazel build setup would copy the Python
runtime sources and all generated sources for the builtin protos into
the root directory (assuming that the protobuf tree is vendored in a
google/protobuf directory).

With #1233, the two sets of sources are kept in their respective
directories but both `src/` and `python/` are added to the `PYTHONPATH`
using the new `imports` attribute of the Bazel Python rules. However,
both the runtime sources and the generated sources are under the same
package: `google.protobuf`, causing Python to become confused when
trying to import modules that are in the other directory.

This patch adds a workaround to the Bazel build to add a modified
version of the original `internal_copied_filegroup` macro to copy the
`.proto` files under `src/` to `python/` before building the
`py_proto_library` targets for the builtin protos. This ensures that the
generated sources for the builtin protos will be in the same directory
as the corresponding runtime sources.

This patch was tested with the following:
* All Python tests in protobuf
* All Python tests in tensorflow
* All tests in [Skydoc](https://github.com/bazelbuild/skydoc)
* Importing protobuf as `//google/protobuf`
* Importing and binding targets under `//external`
* Importing protobuf as `//third_party/protobuf`
2016-05-25 18:02:09 -07:00
Thomas Van Lenten
c8a440dfb6 Add more warnings to for the ObjC runtime build
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.
2016-05-25 16:42:31 -04:00
Thomas Van Lenten
d089f04ae5 Merge pull request #1595 from thomasvl/objc_travis_tweaks
Automated testing tweaks for ObjC
2016-05-25 10:05:31 -04:00
Thomas Van Lenten
368a2f4cee Automated testing tweaks for ObjC
- Move the ObjC tests into the list and exclude them on linux, this will change
  where in the order they start, since they are longer, it will have other
  things run in parallel instead of them ending up last and taking the longest.
- Switch to the Xcode 7.3 image.
- Drop the use of xctool and stream line things through the full_mac_build.sh
  script. This means we end up with only one build script instead of two.
- Tweaks to the mac build script:
  - Make iOS Xcode version support explicit
  - Support Debug/Release only building
  - Change the OS X min parallel count to 2 to better deal with VMs.
- Split the travis ios tests into the two Xcode Configurations as the logs are
  choking travis.
2016-05-24 15:39:36 -04:00
Thomas Van Lenten
5d0c2ee365 Merge pull request #1593 from thomasvl/framework_includes
Better support for using the proto library from a framework.
2016-05-24 11:31:42 -04:00
Joshua Haberman
173daf120a Merge pull request #1589 from hochhaus/master
Add js/binary/encoder.js to js_EXTRA_DIST.
2016-05-24 09:36:17 -04:00
Thomas Van Lenten
7da023b892 Better support for using the proto library from a framework.
- Add generator constant for the default framework name.
- Add generator api for making the CPP symbol from the name.
- Add generator api to see if it is a bundled proto file.
- Output a CPP conditional and two imports for the core library headers.
- Add helper for generating the #import for file headers to deal with the
  framework imports.
- Add a reference from the unittests to a WKT to use that to inspect how
  imports generate.
- Update the podspec to define the CPP symbol and require pods 1.0 (or later).

Fixes https://github.com/google/protobuf/issues/1457
2016-05-24 09:25:02 -04:00
Feng Xiao
2131b2d544 Merge pull request #1588 from jeffmvr/master
added missing closing bracket for _cmakedir_desc in cmake/install.cmake:88
2016-05-22 21:51:45 -07:00
Andy Hochhaus
7336092d37 Add js/binary/encoder.js to js_EXTRA_DIST. 2016-05-22 21:44:16 -07:00
Jeff Merver
733ef986e5 added missing closing bracket for _cmakedir_desc in cmake/install.cmake line 88 2016-05-21 16:01:32 -07:00
Feng Xiao
594ce567ab Merge pull request #1578 from wal-rus/cmake-install-namespace
Add protobuf:: namespace to installed targets
2016-05-20 20:23:36 -07:00
Walter Gray
28f35b4f16 add protobuf:: namespace to installed targets 2016-05-20 18:03:32 -07:00
Feng Xiao
38e4713191 Merge pull request #1523 from xfxyjwf/compatibility_tests
Add compatibilty tests against v2.5.0
2016-05-20 15:17:05 -07:00
Feng Xiao
a31d14b7d0 Describe platform requirements for the compatibility tests. 2016-05-20 15:15:15 -07:00
Thomas Van Lenten
5c6518fd27 Merge pull request #1583 from thomasvl/pods_integration_followup
Make the CocoaPods integration tests more robust
2016-05-20 14:57:42 -04:00
Feng Xiao
2338e03570 Merge pull request #1576 from wal-rus/cmake-versionfile
Make protobuf-config-version.cmake.in set the required variables
2016-05-20 11:50:00 -07:00
Feng Xiao
beca1f52ef Merge pull request #1575 from wal-rus/cmake-install-msvc
Make cmake configuration file install path configurable
2016-05-20 11:45:01 -07:00
Thomas Van Lenten
6c47faa890 Make the CocoaPods integration tests more robust
- Env solution doesn't seem to always work, use template pod files and copy
  them in place instead.
- Flush the pods cache before and after runs.
- Make pod install verbose to have the info incase something goes wrong.
2016-05-20 11:06:43 -04:00
Walter Gray
02a28a8fea Update protobuf-config-version.cmake.in to correctly set the required variables (PACKAGE_VERSION_EXACT, PACKAGE_VERSION_COMPATIBLE, PACKAGE_VERSION_UNSUITABLE) 2016-05-19 15:25:03 -07:00
Walter Gray
7d79458fc5 Fix the cmake configuration file install path to be more standards compliant (See the description of cmake's config search behavior on https://cmake.org/cmake/help/v3.4/command/find_package.html) 2016-05-19 14:52:04 -07:00
Thomas Van Lenten
c034ba768f Merge pull request #1574 from thomasvl/test_schemes
Add shared schemes for the CocoaPods integration tests
2016-05-19 16:50:12 -04:00
Thomas Van Lenten
20b5bf624f Add shared schemes for the CocoaPods integration tests
Otherwise the projects have to be opened once to create user schemes for the
command line builds to work.
2016-05-19 16:47:35 -04:00
Thomas Van Lenten
12dffd9089 Merge pull request #1572 from thomasvl/podspec_tests_2
OS X gitignore cleanup and cocoapods integration tests
2016-05-19 16:13:47 -04:00
Thomas Van Lenten
16dd477a29 CocoaPod Integration Tests
- Add an Xcode 6.3 created default iOS Project.
- Add an Xcode 6.3 created default OS X Project.
- Add Podfiles to for both that use Protobufs from within the tree.
- Add a script to run the tests (and cleanup) to help confirm the state of the
  Protobuf.podspec and sources.
2016-05-19 14:31:39 -04:00