Commit Graph

2934 Commits

Author SHA1 Message Date
Jon Skeet
9489817df2 Regenerated code. Most changes are whitespace, removing trailing spaces.
Other changes are due to the well-known types changing without us regenerating.
2015-09-01 15:47:48 +01:00
Jon Skeet
ccd76802fa Stop adding a space to the end of lines for descriptor binary data. 2015-09-01 15:35:10 +01:00
Jon Skeet
75a18a39ca Specify csharp_namespace in descriptor.proto 2015-09-01 15:29:15 +01:00
Jon Skeet
5eb1fac983 Generate a directory hierarchy based on namespace (C#)
This introduces a new C# option, base_namespace.
If the option is not specified, the behaviour is as before: no directories are generated.
If the option *is* specified, all C# namespaces must be relative to the base namespace, and the directories are generated relative to that namespace.

Example:
- Any.proto declares csharp_namespace = "Google.Protobuf.WellKnownTypes"
- We build with --csharp_out=Google.Protobuf --csharp_opt=base_namespace=Google.Protobuf
- The Any.cs file is generated in Google.Protobuf/WellKnownTypes (where it currently lives)

We need a change to descriptor.proto before this will all work (it wasn't in the right C# namespace) but that needs the other descriptors to be regenerated too. See next commit...
2015-09-01 15:05:03 +01:00
Konstantin Podsvirov
905f464035 Using NEW behavior for CMP0022 in CMake project 2015-09-01 16:44:48 +03:00
Jon Skeet
0101a59b62 Remove vestigial reference to MakeFixedTag 2015-09-01 13:27:26 +01:00
Konstantin Podsvirov
d79e0379f2 Option for switching static runtime link policy with MSVC 2015-09-01 15:00:00 +03:00
Dan O'Reilly
d9598ca55d Fix Python 3.4 cpp implementation
Fixes the ScalarMapContainer/MessageMapContainer implementations on
Python 3.4, by dynamically allocating their PyTypeObjects using
PyType_FromSpecWithBases, instead of statically allocating them. This is
necessary because Python 3.4+ disallows statically allocating a class
with a dynamically allocated parent.

Signed-off-by: Dan O'Reilly <oreilldf@gmail.com>
2015-08-31 16:42:31 -04:00
Konstantin Podsvirov
20b882d469 Using find_package(ZLIB) with MSVC too 2015-08-31 16:23:40 +03:00
Konstantin Podsvirov
db01460042 Improved configure.ac parsing 2015-08-31 15:20:18 +03:00
Feng Xiao
0087da9d47 Merge remote-tracking branch 'origin/master' into beta-1
Conflicts:
	src/google/protobuf/extension_set.h
2015-08-29 16:42:55 -07:00
Joshua Haberman
cee703d736 Merge pull request #776 from haberman/pyfix
Fix for https://github.com/google/protobuf/issues/758
2015-08-29 16:29:23 -07:00
Josh Haberman
4472b4ad15 Fixed assignment syntax error.
Change-Id: Ifef8a300258214aae8f6b8516fbc61b7335b5724
2015-08-28 19:21:49 -07:00
Josh Haberman
fc80fad9d5 Fix for https://github.com/google/protobuf/issues/758
Change-Id: I590b34b96c84a3ba6e094a0bd86f153147ade3d3
2015-08-28 16:34:48 -07:00
Feng Xiao
f0640b5a04 Merge pull request #770 from pkasting/string_space
Move StringSpaceUsedIncludingSelf to lite library.
2015-08-28 14:09:00 -07:00
Feng Xiao
69ac02a216 Merge pull request #771 from pkasting/static_init_1
Remove a static initializer by removing a global of non-POD type.
2015-08-28 14:05:01 -07:00
Feng Xiao
67946e98a9 Merge pull request #569 from redivo/master
Fix GOOGLE_PROTOBUF_ATOMICOPS_ERROR syntax error
2015-08-28 13:34:35 -07:00
Austin Schuh
ad1d726cc2 Handled blocks being too small in arena.cc
When the user passed in a block which was smaller than the Block
structure, this code would blow past the end of the memory and
crash.  Check for that condition.
2015-08-28 11:10:55 -07:00
Feng Xiao
fb0af6d02e Merge pull request #768 from pkasting/time
Delete kNanosPerSecond from time.cc.
2015-08-28 10:28:44 -07:00
Peter Kasting
4f3bead537 Remove a static initializer by removing a global of non-POD type.
These are banned by the Google style guide, and Chromium has a hard
no-new-static-initializers policy preventing updating to a new version of
libprotobuf unless this is resolved.  This is the first such change, I'll need
to make at least one more in the future.

Luckily, the protobuf source tree already has an alternative to static
initializers in once.h; use that machinery instead.

I defined everything in the .cc file in a blob to replace the old implementation
rather than matching the .h layout precisely; let me know if a different
ordering is preferred.  I also eliminated the macro that used to be used here as
spelling everything out only takes one additional line, and the macro didn't
actually handle all details of using a particular member variable, just the
declaration, so it felt a bit error-prone.
2015-08-27 20:16:33 -07:00
Peter Kasting
f5a332553e It helps if you write macros correctly 2015-08-27 20:12:56 -07:00
Peter Kasting
a1be711e96 Try modifying check in hopes of passing upstream build 2015-08-27 19:59:06 -07:00
Peter Kasting
432771fa24 Review comments 2015-08-27 19:52:13 -07:00
Peter Kasting
5ea84dd335 Refine check for unordered_{map|set} availability.
It's not enough to check for C++11 language support, as it's possible for
projects to enable C++11 language and library features independently (e.g.
Chromium currently does this).  Instead, explicitly check the library version to
see if it is recent enough to include unordered_{map|set}.
2015-08-27 19:52:11 -07:00
Feng Xiao
47210ccd77 Merge pull request #746 from zmodem/fix_predict_macros2
Fix the no-op definitions of GOOGLE_PREDICT_{TRUE,FALSE}
2015-08-27 15:52:07 -07:00
Feng Xiao
59b360f651 Merge pull request #767 from pkasting/port
Avoid #including system headers from inside a namespace.
2015-08-27 15:51:06 -07:00
Peter Kasting
5d412c47d9 Change to just not marking the class for export 2015-08-27 15:42:03 -07:00
Peter Kasting
b913cbd307 Move StringSpaceUsedIncludingSelf to lite library.
This came up because Chromium downstream modifies the lite library in a way that
requires this function, but I'm upstreaming it because based on the comments in
repeated_field.h, this ought to allow resolution of an existing hack.

I don't know enough about the protobuf code to feel confident trying to resolve
this hack myself, so I've merely updated the TODO comments.
2015-08-27 14:37:18 -07:00
Feng Xiao
26f0c678f6 Merge pull request #765 from xfxyjwf/javadoc
Fix javadoc errors.
2015-08-27 14:34:19 -07:00
Peter Kasting
6e54999773 Fix compile failures building protobuf DLLs on MSVC in Chromium's codebase.
When trying to compile the protobuf code as a DLL, and then compile other DLLs
with generated .pb.cc/h files that reference
InternalMetadataWithArena::InternalMetadataWithArena(Arena*), MSVC gives an
"unresolved external symbol" error.  This seems to be due to the function being
simultaneously exported and inline.  Moving it out-of-line fixes things.

There are other functions exported and inline as well but de-inlining them
doesn't seem to be necessary to get the build working, and I'd rather de-inline
as few functions as possible.
2015-08-27 14:30:28 -07:00
Peter Kasting
d680159527 Delete kNanosPerSecond from time.cc.
This variable is unused, and thus triggers a build warning on MSVC.
2015-08-27 14:19:51 -07:00
Peter Kasting
2e789bc246 Avoid #including system headers from inside a namespace.
port.h #includes various headers in order to define byteswap functions, but it
currently does so from inside the google::protobuf namespace.  This can cause
bizarre symbol conflicts and other build errors as these headers' contents are
then included inside this namespace.

Instead, #include the relevant headers above the namespace declarations.
2015-08-27 14:16:10 -07:00
Feng Xiao
245224902a Fix javadoc errors. 2015-08-27 14:02:25 -07:00
Feng Xiao
23408684b4 Merge pull request #759 from TeBoring/beta-1-2
Fix Protobuf.podspec
2015-08-27 00:02:06 -07:00
TeBoring
fe98264317 Fix Protobuf.podspec 2015-08-26 23:55:33 -07:00
Jisi Liu
08575d9595 Merge pull request #757 from xfxyjwf/python_failure
Excludes a failing python cpp test case.
2015-08-26 22:01:55 -07:00
Feng Xiao
a3a2605d5c Excludes a failing python cpp test case. 2015-08-26 21:56:26 -07:00
Feng Xiao
1942a2bd2e Make jruby use Java 3.0.0-alpha-3. 2015-08-26 21:20:59 -07:00
Feng Xiao
8e102ad158 Update generated file. 2015-08-26 20:59:59 -07:00
Feng Xiao
fcdcf88d8a Fix merge conflict. 2015-08-26 20:35:35 -07:00
Feng Xiao
f900837afa Merge pull request #756 from TeBoring/beta-1
Add distribution for objc
2015-08-26 20:34:13 -07:00
Feng Xiao
a3312983d6 Update Makefile.am to include missing files. 2015-08-26 20:29:01 -07:00
Feng Xiao
99e1868586 Add missing files in dist. 2015-08-26 20:19:05 -07:00
Bo Yang
1c81d0f8be Add distribution for objc 2015-08-26 18:15:39 -07:00
Jisi Liu
28595b25ba Merge pull request #755 from pherl/beta-1
Add bazel build/workspace into distribution.
2015-08-26 17:53:33 -07:00
Jisi Liu
4008100e37 Add bazel build/workspace into distribution.
Change-Id: I96fbe5c84a04f5d95c5484002404fc975f2abd21
2015-08-26 17:48:08 -07:00
Feng Xiao
5b771ed651 Merge pull request #754 from xfxyjwf/changelog
Update change log for beta-1.
2015-08-26 17:38:35 -07:00
Feng Xiao
cc60753820 Update change log for beta-1. 2015-08-26 17:37:51 -07:00
Paul Yang
106f3eb985 Merge pull request #750 from TeBoring/beta-1
Fix bugs for objectivec
2015-08-26 16:25:56 -07:00
TeBoring
aca5a60883 Fix bugs for objectivec 2015-08-26 16:24:06 -07:00