Commit graph

3581 commits

Author SHA1 Message Date
Josh Haberman
0e27112c2b Bugfix: base the require logic on the file being required. 2016-06-16 14:45:42 -07:00
Josh Haberman
1337486755 JS: import well-known types from google-protobuf package. 2016-06-16 11:59:08 -07:00
Thomas Van Lenten
f180ef6398 Merge pull request #1683 from thomasvl/third_party_framework
Add support for generation sources into a framework.
2016-06-15 11:39:21 -04:00
Thomas Van Lenten
a2a3399a6f Add support for generation sources into a framework.
- 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.
2016-06-15 11:36:52 -04:00
Sergio Campamá
f0c1492ef6 Add the CocoaPods integration tests to Travis.
Also hotwires updating ruby as CocoaPods was crashing within a support library.

Fixes #1619
2016-06-14 14:26:01 -04:00
Sergio Campamá
71f4a9c6f3 Fixes Xcode 8 analyzer warning saying that it was missing a release in dealloc (#1678) 2016-06-14 09:28:22 -04:00
Feng Xiao
088c5c491e Merge pull request #1664 from bshaffer/patch-1
proper codeblock in README
2016-06-10 10:14:15 -07:00
Brent Shaffer
f8a969d50a proper codeblock in README 2016-06-09 10:36:21 -07:00
Feng Xiao
fba7976f5d Merge pull request #879 from mathstuf/support-equals-in-proto-path
protoc: support '=' in --proto_path arguments
2016-06-08 14:43:45 -07:00
Bo Yang
401e07d372 Add GOOGLE_ prefix before PROTOBUF_DEPRECATED_ATTR 2016-06-07 16:36:13 -07:00
Bo Yang
b60e615cba Fix the undefined behavior for opensource users. 2016-06-07 14:15:07 -07:00
Feng Xiao
6aa981f949 Merge pull request #1624 from yeswalrus/cmake-prerelease-versioning
CMake prerelease versioning
2016-06-07 14:08:03 -07:00
Feng Xiao
dfe0c9ad38 Merge pull request #1643 from yeswalrus/cmake-examples
Build examples in CMake
2016-06-07 10:14:20 -07:00
Joshua Haberman
ed1d560023 Merge pull request #1541 from haberman/conformancestrict
Make conformance tests more strict about the failure list.
2016-06-06 21:49:48 -07:00
Josh Haberman
350453f2d5 Make surrogate regex even more lenient. 2016-06-06 17:14:58 -07:00
Josh Haberman
923d2c7ccf JSON surrogates Python: adjust regex for OSX error message.
OS X's version of Python has a slightly different error
message for this error case.
2016-06-06 13:57:59 -07:00
Walter Gray
23fef56e6d Replace handwritten protobuf-targets with exported version. 2016-06-06 12:06:55 -07:00
Walter Gray
09f6a5c1d2 Use ExternalProject_Add to build the examples in a stand-alone fashion. 2016-06-06 12:06:55 -07:00
Konstantin Podsvirov
71556295ff CMake project updates
A series of improvements:

- Improved Protobuf module compatibility (disabled by default);
- Hide advanced settings;
- Added build tree configuration;
- Added build of examples.
2016-06-04 00:10:07 +03:00
Josh Haberman
6a618949aa Added test for surrogates (valid and invalid). 2016-06-03 10:24:23 -07:00
Josh Haberman
84a1b60703 Added update_failure_list.py. 2016-06-03 09:39:38 -07:00
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
Walter Gray
0420eab173 For prerelease versions, require protobuf_FIND_VERSION to be set. 2016-05-31 17:47:18 -07:00
Walter Gray
f1091ab1aa Include the prerelease version in the protobuf_VERSION 2016-05-31 17:07:41 -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