Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Updates to handle use of cmake for Windows builds. | Jon Skeet | 2015-06-17 | 1 | -4/+4 |
| | |||||
* | Remove a lot of projects which are effectively dead from the solution - ↵ | Jon Skeet | 2015-06-17 | 1 | -25/+1 |
| | | | | files to be killed later. | ||||
* | Use the fact that we know the tag size and bytes at codegen time to optimize. | Jon Skeet | 2015-06-17 | 11 | -1158/+893 |
| | |||||
* | Regenerate proto files | Jon Skeet | 2015-06-12 | 6 | -671/+838 |
| | |||||
* | Reimplement RepeatedField<T> using an array as the backing store. | Jon Skeet | 2015-06-12 | 5 | -51/+231 |
| | | | | | | | | | | 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...) | ||||
* | Simplify ComputeInt32Size to call ComputeInt32SizeNoTag. | Jon Skeet | 2015-06-12 | 1 | -11/+1 |
| | |||||
* | Optimization to avoid foreach over empty lists. | Jon Skeet | 2015-06-12 | 1 | -9/+64 |
| | |||||
* | Fix incorrect handling of non-seekable streams. | Jon Skeet | 2015-06-12 | 1 | -2/+2 |
| | | | | | | This mirrors commit 7c86bbbc7a3365c034d82173b38ec4427b98b3b2 in the pull request to the main protobuf project, but also reduces the size of the buffer created. (There's no point in creating a 1024-byte buffer if we're only skipping 5 bytes...) | ||||
* | Update the AddressBook tutorial to reflect the mutable design. | Jon Skeet | 2015-06-12 | 5 | -1054/+287 |
| | |||||
* | Coded*Stream streamlining. | Jon Skeet | 2015-06-12 | 16 | -2554/+855 |
| | | | | Remove ICodedInputStream and ICodedOutputStream, and rewrite CodedInputStream and CodedOutputStream to be specific to the binary format. If we want to support text-based formats, that can be a whole different serialization mechanism. | ||||
* | Reimplement enums as int values, and get rid of EnumHelper. | Jon Skeet | 2015-06-11 | 13 | -200/+126 |
| | | | | This makes repeated fields really awkward at the moment - but when we reimplement RepeatedField<T> to be backed by an array, we can cast the array directly... | ||||
* | Optimize WriteRawInt32 for the common case of a value < 128, which is a ↵ | Jon Skeet | 2015-06-11 | 1 | -0/+7 |
| | | | | | | single byte. Aside from anything else, this will be used for all tags for fields 1-15. | ||||
* | Improve string encoding times. | Jon Skeet | 2015-06-11 | 2 | -5/+17 |
| | | | | | Cache a reference to Encoding.UTF8 - the property access is (rather surprisingly) significant. Additionally, when we detect that the string is all ASCII (due to the computed length in bytes being the length in characters), we can perform the encoding very efficiently ourselves. | ||||
* | Use expression trees to avoid boxing when converting enums. | Jon Skeet | 2015-06-09 | 1 | -4/+12 |
| | |||||
* | First pass at the mutable API. Quite a bit more to do - in particular, it's ↵ | Jon Skeet | 2015-06-09 | 155 | -132918/+10817 |
| | | | | pretty slow right now. | ||||
* | Migrate writer to io::Printer for C# | Jie Luo | 2015-06-04 | 3 | -15/+15 |
| | |||||
* | Change the C# enum generator inherit from primitive generator | Jie Luo | 2015-05-29 | 9 | -134/+654 |
| | |||||
* | Add oneof support for C# | Jie Luo | 2015-05-29 | 29 | -2110/+4257 |
| | |||||
* | Merge pull request #394 from ironhidegames/csharp-aot-ios | Jan Tattermusch | 2015-05-21 | 1 | -3/+15 |
|\ | | | | | Solves AOT compilation issue for Unity - iOS | ||||
| * | added concrete IEqualityComparer<ExtensionIntPair> implementation in ↵ | Ruben Garat | 2015-05-20 | 1 | -3/+15 |
| | | | | | | | | ExtensionRegistryLite.cs to prevent AOT compilation issue with unity in iOS | ||||
* | | Generate *all* protos in the script, applying fixups. | Jon Skeet | 2015-05-16 | 5 | -39464/+31319 |
|/ | | | | | | | | | | | | | | We still have some protos which aren't generated how we want them to be: - Until we have an option to specify the "umbrella" class, DescriptorProtoFile will be broken. (The change of name here affects the reflection descriptor, which accounts for most of the change. That's easier than trying to work out exactly which occurrences of Descriptor need changing though.) - That change affects UnittestCustomOptions - Issue #307 breaks Unittest.cs After this commit, we don't have the record of the fixups in the files themselves any more, but one centralized record in the shell script. | ||||
* | Make generate_protos.sh Windows-friendly. | Jon Skeet | 2015-05-14 | 2 | -8/+20 |
| | | | | | | | | | | To my surprise, executing generate_protos.sh used the version of Bash installed with Git for Windows by default. After a few modifications to detect the most appropriate protoc to use, this worked pretty simply. This change also: - adds generation of the address book tutorial proto, - fixes the addressbook.proto to specify proto2 explicitly (to avoid a warning from protoc; I don't think we want warnings...) - fixes the addressbook.proto C# namespace (which I thought I'd done before, but apparently hadn't) - includes the regenerated UnittestCustomOptions.cs apart from the DescriptorProtoFIle => Descriptor change | ||||
* | Merge pull request #382 from jtattermusch/integrate_from_master | Jie Luo | 2015-05-13 | 1 | -2/+2 |
|\ | | | | | Integrate changes from latest master branch into csharp branch. | ||||
| * | Regenerate UnittestDropUnknownFields.cs | Jan Tattermusch | 2015-05-13 | 1 | -2/+2 |
| | | |||||
* | | Update README.md for C# | Jan Tattermusch | 2015-05-13 | 1 | -8/+28 |
|/ | |||||
* | Update C# code generation script | Jon Skeet | 2015-05-13 | 1 | -3/+1 |
| | |||||
* | Remove the C#-specific field_presence_test.proto, using ↵ | Jon Skeet | 2015-05-13 | 5 | -806/+3779 |
| | | | | | | | unittest_no_field_presence.proto instead. This is the start of establishing a C# namespace of "Google.ProtocolBuffers.TestProtos.Proto3" for proto3-syntax protos. We could optionally split the directory structure as well into Proto2 and Proto3 for clarity. | ||||
* | regenerated UnittestImportLite.cs | Jan Tattermusch | 2015-05-12 | 1 | -1/+3 |
| | |||||
* | regenerated UnittestImportPublicLite | Jan Tattermusch | 2015-05-12 | 1 | -1/+3 |
| | |||||
* | Regenerated UnittestExtrasLite.cs | Jan Tattermusch | 2015-05-12 | 1 | -51/+48 |
| | |||||
* | Regenerated UnittestDropUnknownFields.cs | Jan Tattermusch | 2015-05-12 | 1 | -77/+18 |
| | |||||
* | remove C# files not referenced in any project | Jan Tattermusch | 2015-05-12 | 5 | -11783/+0 |
| | |||||
* | Regenerate some proto files after ClsCompliance has been dropped | Jan Tattermusch | 2015-05-12 | 3 | -47/+0 |
| | |||||
* | rename FieldPresence to correct name | Jan Tattermusch | 2015-05-12 | 2 | -1/+1 |
| | |||||
* | got rid of the outdated mono subdirectory | Jan Tattermusch | 2015-05-12 | 3 | -157/+0 |
| | |||||
* | draft of generate_protos.sh | Jan Tattermusch | 2015-05-12 | 1 | -0/+52 |
| | |||||
* | add buildall script for mono | Jan Tattermusch | 2015-05-12 | 1 | -0/+22 |
| | |||||
* | adding what was missing in .gitignore | Jan Tattermusch | 2015-05-12 | 1 | -0/+2 |
| | |||||
* | lib subdir is not needed anymore | Jan Tattermusch | 2015-05-12 | 1 | -13/+0 |
| | |||||
* | Fix newline assertion in TestJsonFormatted on mono | Jan Tattermusch | 2015-05-12 | 1 | -1/+2 |
| | |||||
* | remove TreatWarningsAsError setting to allow building in Monodevelop | Jan Tattermusch | 2015-05-12 | 7 | -14/+0 |
| | |||||
* | Convert back to using NUnit, which is now loaded via NuGet. | Jon Skeet | 2015-05-12 | 48 | -3039/+3049 |
| | | | | | This includes the NUnit test adapter which allows NUnit tests to be run under VS without any extra plugins. Unfortunate the compatibility tests using the abstract test fixture class show up as "external" tests, and aren't well presented - but they do run. | ||||
* | Performance optimization for small messages without unknown fields | Jan Tattermusch | 2015-05-07 | 1 | -4/+24 |
| | |||||
* | fix comments | Jie Luo | 2015-05-01 | 4 | -6/+5 |
| | |||||
* | Change field_presence_test.proto | Jie Luo | 2015-05-01 | 2 | -6/+2 |
| | |||||
* | fix comments | Jie Luo | 2015-04-30 | 3 | -34/+5 |
| | |||||
* | fix commends from Jon Skeet | Jie Luo | 2015-04-30 | 7 | -48/+62 |
| | |||||
* | Merge branch 'csharp' of git://github.com/google/protobuf into google-csharp | Jie Luo | 2015-04-30 | 105 | -41222/+48783 |
|\ | |||||
| * | Change to using xUnit for all unit tests, and fetch that via NuGet. | Jon Skeet | 2015-04-30 | 54 | -3744/+3275 |
| | | | | | | | | This includes fetching the VS unit test runner package, so that tests can be run from Visual Studio's Test Explorer. | ||||
| * | Convert both the full and lite runtimes (and json/xml serialization ↵ | Jon Skeet | 2015-04-29 | 54 | -37484/+45514 |
| | | | | | | | | | | | | | | assemblies) to be Portable Class Libraries. All referring projects are now .NET 4 client rather than .NET 3.5. This commit also fixes up the ProtoBench app, which I'd neglected in previous commits. (Disentangling the two sets of changes would be time-consuming.) |