Commit Graph

2275 Commits

Author SHA1 Message Date
Jon Skeet
8c896b259e Implement requested changes for IMessage<T>
1) New line at end of file
2) Make IMessage<T> itself extend IEquatable<T> and IDeepCloneable<T>
2015-06-23 20:04:39 +01:00
Jon Skeet
6c1fe6ea3e Implement Clone.
Fixes issue #527.
2015-06-23 12:42:20 +01:00
Jan Tattermusch
45b70328f2 Merge pull request #515 from jskeet/proto3-only
Proto3 experimental C# fork
2015-06-19 12:59:07 -07:00
Jon Skeet
50a3a809e8 Merge remote-tracking branch 'upstream/master' into proto3-only 2015-06-19 17:35:01 +01:00
Jon Skeet
8e9dd12b3a Update the readme to give more context of what's going on. 2015-06-19 17:33:20 +01:00
Jon Skeet
cdeda4b876 Minor cleanup.
- Make some members internal
- Remove a lot of FrameworkPortability that isn't required
- Start adding documentation comments
- Remove some more group-based members
- Not passing in "the last tag read" into Read*Array, g
2015-06-19 17:30:13 +01:00
Jon Skeet
d7dda2fed8 Use an empty array instead of a null reference for an empty repeated field. 2015-06-19 08:38:21 +01:00
Jisi Liu
5b3a8e7635 Merge pull request #510 from pherl/bazel
Remove OUTS constants in BUILD
2015-06-18 14:13:56 -07:00
Jisi Liu
94062398dc Remove OUTS constants in BUILD
Induce those from the input proto file names instead to reduce the
lenght of the BUILD file.

Change-Id: I1dda57dedac547f4bd0cc3a7d08fb611d72acd13
2015-06-18 14:06:26 -07:00
Jisi Liu
89834be92e Merge pull request #509 from pherl/update_BUILD
Update BUILD for the recent json util change.
2015-06-18 13:54:47 -07:00
Jisi Liu
af3eafd1b1 Update BUILD for the recent json util change.
Change-Id: I0b5a2c017f5412aaca3a47815671753cdef63165
2015-06-18 13:39:09 -07:00
Jisi Liu
d6286a9f41 Merge pull request #508 from pherl/nanfix
using ::isnan to avoid conflicts with std::isnan for C++11 build.
2015-06-18 13:38:07 -07:00
Jisi Liu
a2b7937777 using ::isnan to avoid conflicts with std::isnan for C++11 build.
Change-Id: I057b44eff04c3b0062a4fd4307ce6e4ca1eb952b
2015-06-18 13:35:24 -07:00
Jisi Liu
e6484d306d Fix distcheck.
Change-Id: I74e2d5958b5e7b15d10e5a6468bca917323b9739
2015-06-18 11:24:07 -07:00
Jisi Liu
1e534d7ac3 Merge pull request #505 from pherl/bazel
Add bazel support for the project
2015-06-18 11:19:34 -07:00
Jisi Liu
e438a51389 Remove redundant include
Change-Id: I62640af99e3c2650a29dc5468ce3deb7b6c7efdf
2015-06-18 10:52:07 -07:00
Jisi Liu
d19604fac5 Add Bazel BUILD for the project.
Change-Id: I5a299d969ff96d7d2f80aadc7e8987d461d24b8f
2015-06-17 17:37:58 -07:00
Jisi Liu
1c42a8b336 Move cmake/update_file_lists.sh preparing for bazel support.
Change-Id: Idecb2e3a5169f7b40d832242c9c10b0eb4325654
2015-06-17 13:31:26 -07:00
Feng Xiao
e9a122eb19 Merge pull request #501 from xfxyjwf/down
Down-integrate from internal code base.
2015-06-17 13:12:11 -07:00
Feng Xiao
818c5eee08 Fix broken builds. 2015-06-17 11:19:46 -07:00
Jon Skeet
a0f956932d Use our "local" copy of Encoding.UTF8 in CodedInputStream too. 2015-06-17 15:34:29 +01:00
Jon Skeet
a09b491080 Delete "lite" project and serialization project+code
We'll probably want a lot of the code from the serialization project when we do JSON, but enough of it will change that it's not worth keeping in a broken state for now.
2015-06-17 15:25:15 +01:00
Jon Skeet
d1b88f4310 Regenerated files. 2015-06-17 15:16:31 +01:00
Jon Skeet
09f3f4eec3 Updates to handle use of cmake for Windows builds. 2015-06-17 15:16:14 +01:00
Jon Skeet
e2acd85425 Merged master 2015-06-17 15:03:47 +01:00
Jon Skeet
d9dc05e500 Remove a lot of projects which are effectively dead from the solution - files to be killed later. 2015-06-17 14:59:49 +01:00
Jon Skeet
828b7e61d0 Use the fact that we know the tag size and bytes at codegen time to optimize. 2015-06-17 14:59:10 +01:00
Jisi Liu
b36395b2ba Merge pull request #497 from pherl/config_h
Check HAVE_CONFIG_H before including "config.h"
2015-06-16 19:12:25 -07:00
Jisi Liu
78d470c7a5 Make the code independent of config.h
Now the Build tool needs to define -DHAVE_ZLIB and -DHAVE-PTHREAD rather
than providing a config.h

- Make pbconfig.h a manually written file to handle hash conditions
  according to platform related macros.
- Remove #include "config.h" from source code.
- Changed the configure.ac and Makefile.am to pass down the macros.
- Change cmake to pass down the the macros.

Change-Id: I537249d5df8fdeba189706aec436d1ab1104a4dc
2015-06-16 18:27:36 -07:00
Feng Xiao
e96ff30120 Down-integrate from internal code base.
[ci skip]

Change-Id: I9391c09640e0b0b2b21c45a97a1fc91814d95c5d
2015-06-15 18:24:01 -07:00
Feng Xiao
4cbb612299 Merge pull request #499 from xfxyjwf/appveyor
Add a badge for AppVeyor build.
2015-06-15 16:31:31 -07:00
Feng Xiao
4479076bbd Merge pull request #488 from AustinSchuh/ruby_test_fix
Modified FindRubyTestDir to use GOOGLE_THIRD_PARTY_PROTOBUF
2015-06-15 16:31:17 -07:00
Feng Xiao
9c8db515d5 Add a badge for AppVeyor build.
Change-Id: Ic59d78d699af0e5f50377f83c8a7ea9a78074d81
2015-06-15 15:36:09 -07:00
Jisi Liu
6f56b1a691 Merge pull request #498 from pherl/rmconfig
Remove config.h.include which is no longer needed
2015-06-13 23:56:17 -07:00
Jisi Liu
80da6d3727 Remove the file from Makefile.am
Change-Id: I2015df2409aa95401af658b40023c8f9b9d75068
2015-06-13 11:22:31 -07:00
Jisi Liu
9bbb78f167 Remove config.h.include which is no longer needed as pbconfig.h is not a
generated file now.

Change-Id: I68b397e7fa9248abc93d5c12efd5cd31e380c9ab
2015-06-13 08:47:46 -07:00
Jisi Liu
cf141287ea Merge pull request #495 from pherl/master
Make pbconfig.h independent of config.h
2015-06-13 08:44:19 -07:00
Jisi Liu
f48dca5044 Make pbconfig.h independent of config.h
Change-Id: I31ead985b4ac5b02fb7558d34c1da19fd837b50a
2015-06-13 00:01:09 -07:00
Feng Xiao
52737c2bc8 Add appveyor.xml for windows tests. 2015-06-12 23:41:29 -07:00
Feng Xiao
54a4cccb97 Merge pull request #481 from Qartar/master
Workaround for MSVC's string literal compiler limit.
2015-06-12 14:56:02 -07:00
Feng Xiao
68c8762b98 Merge pull request #489 from tamird/go-package-descriptor
Give descriptor.proto a go package
2015-06-12 13:41:54 -07:00
Qartar
2fe6d7bc57 Workaround for MSVC's string literal compiler limit.
Escape characters don't count for string literal size, no need to pre-generate escape string.

Added unit test to touch enormous cpp generated descriptor.

Updated makefile to include enormous_descriptor.proto

Fixed language compatibility error.
2015-06-12 13:23:09 -07:00
Jon Skeet
fb1547b388 Regenerate proto files 2015-06-12 13:11:54 +01:00
Jon Skeet
a8dae140c6 Fix oneof generator - forgot to provide variables... 2015-06-12 13:11:16 +01:00
Jon Skeet
7532f0256f Reimplement RepeatedField<T> using an array as the backing store.
This is effectively reimplementing List<T>, but with a few advantages:
- We know that an empty repeated field is common, so don't allocate an array until we need to
- With direct access to the array, we can easily convert enum values to int without boxing
- We can relax the restrictions over what happens if the repeated field is modified while iterating, avoiding so much checking

This is somewhat risky, in that reimplementing a building block like this is *always* risky, but hey...
(The performance benefits are significant...)
2015-06-12 13:07:51 +01:00
Jon Skeet
5a33827eec Move Count checks into the serialization code
I wouldn't expect this to affect anything, but it appears to.
2015-06-12 11:52:14 +01:00
Jon Skeet
5685e98711 Simplify ComputeInt32Size to call ComputeInt32SizeNoTag. 2015-06-12 11:47:47 +01:00
Tamir Duberstein
66463d7e4b Give descriptor.proto a go package
This is currently done in golang/protobuf using `sed`. This change
should simplify things.
2015-06-12 06:40:18 -04:00
Jon Skeet
1b71db1180 Optimization of CalculateSize: avoid foreach over empty lists. 2015-06-12 11:19:50 +01:00
Jon Skeet
9b66768e25 Optimization to avoid foreach over empty lists. 2015-06-12 11:19:16 +01:00