summaryrefslogtreecommitdiff
path: root/tools
AgeCommit message (Collapse)Author
2019-02-17Fixed amalgamation to properly include stdint.h first for UPB_SIZE().Josh Haberman
2019-01-24More fixes for google3 import.Josh Haberman
2019-01-23Fixes for Google import.Joshua Haberman
2019-01-23Changes for google3 import.Joshua Haberman
2019-01-23Delete obsolete dump_cinit.lua.Joshua Haberman
2019-01-17Merge branch 'arrayapi' into defcleanupJoshua Haberman
2019-01-16Supprot FieldMask json encoding/decoding. (#147)Paul Yang
2019-01-15Build & fix the JIT.Joshua Haberman
2018-12-19Merge pull request #142 from TeBoring/json-any-encodingJoshua Haberman
Add support for encoding Any in json
2018-12-17Disbled CMake tests for now.Josh Haberman
2018-12-16Got test_decoder working!Joshua Haberman
2018-12-13Merge branch 'master' into defcleanupJoshua Haberman
2018-12-12Deleted old Lua-based C API compiler.Josh Haberman
This compiler has been ported to C++, so the Lua compiler is no longer needed.
2018-12-12Add support for encoding Any in jsonBo Yang
2018-12-08Merge branch 'cmake-mac-fixes' into defcleanupJoshua Haberman
2018-12-01Fixes for macOS build. Also run tests in CMake test.Joshua Haberman
2018-11-26Fix tests for generated codeVishal Powar
2018-11-14Updates to build system for upb C++ compiler.Josh Haberman
2018-11-05Added script to generate CMake build. Bazel tests it.Josh Haberman
2018-11-03Conformance tests work under Bazel.Josh Haberman
2018-11-01Added missing "upbc" file.Josh Haberman
2018-10-21Merge branch 'master' into defcleanupJosh Haberman
2018-09-18Fix json encoding for wrappers, ListValue, Struct and Value. (#126)Paul Yang
* Fix json encoding for wrappers, ListValue, Struct and Value. * Add well_known_type field in upb_msgdef to specify type of well known messages. * Remove comma at end of enum definition. * Group number wrappers * Fix comments * Refactoring to use is_wellknown_{msg/field}
2018-09-11WIP.Josh Haberman
2018-09-09Fixed port_def/undef so that the amalgamation is self-contained.Josh Haberman
2018-09-06Removed unnecessary struct definition with "int a".Josh Haberman
2018-09-06Removed default instance and oneof array from tables.Josh Haberman
2018-09-06Fixed amalgamation.Joshua Haberman
2018-09-06Added port_def.inc and port_undef.inc.Joshua Haberman
2018-09-06Changed C API to use inline functions and computed offsets.Joshua Haberman
2018-09-03Changed C API to only define structs, a table, and a few minimal inline ↵Joshua Haberman
functions.
2018-09-02More work on CMake build, and updated conformance for proto3.Joshua Haberman
2018-08-22Moved upb_msg parts that depend on def to a separate msgfactory.{c,h}.Josh Haberman
Also got rid of the premature "v1" business that was attempting to create a binary compatibility story. Also added an in-progress CMakeLists.txt file.
2018-03-07Added google/protobuf/descriptor.upb.* to core.Josh Haberman
This is in preparation for making upb_def capable of parsing binary descriptors directly. We leave upb/descriptor/descriptor.upbdefs.* in place for now, because upb/descriptor/reader.* still depends on it. Also removed a bit of cruft from the codegen.
2017-07-19Fixed 32-bit build and added generated files.Joshua Haberman
2017-07-18Responded to PR comments.Joshua Haberman
2017-07-17New encode/decode: most (171 / 192) conformance tests pass.Joshua Haberman
2017-07-11Merge branch 'gencode2' into gencode3Joshua Haberman
2017-07-11Responded to PR comments.Joshua Haberman
2017-07-08A good start on upb_encode and upb_decode.Josh Haberman
2017-07-05Be more picky about command-line args in upbc.Josh Haberman
2017-07-04First version of a real C codegen for upb.Joshua Haberman
Also includes an implementation of the conformance tests to display what the API usage will be like. There is still a lot to do, and things that are broken (oneofs, repeated fields, etc), but it's a good start.
2016-05-12Added UPB_ASSERT() that helps avoid unused var warnings.Joshua Haberman
* Added UPB_ASSERT() that helps avoid unused var warnings. * Addressed PR comments. * Fixed assert in the JIT.
2016-04-19Changed schema for JSON test to be defined in a .proto file. (#54)Joshua Haberman
* Changed schema for JSON test to be defined in a .proto file. Before we had lots of code to build these schemas manually, but this was verbose and made it difficult to add to the schema easily. Now we can just write a .proto file and adding fields is easy. To avoid making the tests depend on upbc (and thus Lua) we check in the generated schema. * Made protobuf-compiler a dependency of "make genfiles." * For genfiles download recent protoc that can handle proto3. * Only use new protoc for genfiles.
2016-04-06Changes for PR comments.Josh Haberman
2016-04-05Added upb::FileDef, which represents the file defs are declared in.Josh Haberman
It is entirely optional: MessageDef/EnumDef can still exist on their own. But this can represent a def's file when it is desirable to do so (eg. for code generators). This approach will require that we change the way we handle extensions. But I think it will be a good change overall. Specifically, we previously handled extensions by duplicating the extended message and then adding the extension as a regular field to the duplicated message. This required also duplicating any messages that could reach the extended message. In the new world we will need a way of declaring and looking up extensions separately from the message being extended. This change also involves some notable changes to the generated code: - files are now called foo.upbdefs.h instead of foo.upb.h. This reflects the fact that we might possibly generate several different output files for a .proto file, and this one is just for defs. - we no longer generate selectors in the .h file. - the upbdefs.c no longer vends a SymbolTable. Now it vends the individual messages (and possibly a FileDef later). I think this will compose better once we can generate files where one generated files imports another. We also make the descriptor reader vend a list of FileDefs now. This is the best conceptual match for parsing a FileDescriptorSet.
2015-07-07Also remove license headers from Lua.Josh Haberman
2015-06-02Ported upb to C89, for greater portability.Josh Haberman
A large part of this change contains surface-level porting, like moving variable declarations to the top of the block. However there are a few more substantial things too: - moved internal-only struct definitions to a separate file (structdefs.int.h), for greater encapsulation and ABI compatibility. - removed the UPB_UPCAST macro, since it requires access to the internal-only struct definitions. Replaced uses with calls to inline, type-safe casting functions. - removed the UPB_DEFINE_CLASS/UPB_DEFINE_STRUCT macros. Class and struct definitions are now more explicit -- you get to see the actual class/struct keywords in the source. The casting convenience functions have been moved into UPB_DECLARE_DERIVED_TYPE() and UPB_DECLARE_DERIVED_TYPE2(). - the new way that we duplicate base methods in derived types is also more convenient and requires less duplication. It is also less greppable, but hopefully that is not too big a problem. Compiler flags (-std=c89 -pedantic) should help to rigorously enforce that the code is free of C99-isms. A few functions are not available in C89 (strtoll). There are temporary, hacky solutions in place.
2015-05-28Merge pull request #21 from google/tablestringsJoshua Haberman
Restructure tables for C89 port and smaller size.
2015-05-18Generating enums and intentries only if the tables are non-empty.Martin Maly
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback