Protobuf Team Bot
76daaa2319
Incremental step towards fixing nonstandard/nonportable uses of setjmp.
...
As https://en.cppreference.com/w/c/program/setjmp explains, setjmp can only be
used in very specific contexts to not trigger UB.
PiperOrigin-RevId: 499540912
2 years ago
Deanna Garcia
f887fe30aa
Add lots more source files
2 years ago
Joshua Haberman
7cd8f6c940
Ported more cases of wire format parsing to upb_WireReader.
...
PiperOrigin-RevId: 498502557
2 years ago
Eric Salo
26e9a75294
remove wire/types.h from the :wire build target
...
PiperOrigin-RevId: 498167993
2 years ago
Joshua Haberman
75488a0742
Created a new upb_WireReader interface for parsing wire data directly.
...
The overall motivation for this interface is to consolidate many places in upb that are parsing wire format data directly.
This interface is not yet complete, but this is a good start. We have enough to port the wire format parsing in accessors.c to this interface. We can follow up by porting more places that do wire format parsing.
PiperOrigin-RevId: 498109788
2 years ago
Eric Salo
b747edb830
append "ByDef" to names of message accessors that use reflection
...
PiperOrigin-RevId: 493018484
2 years ago
Eric Salo
03b1dee5cc
implement upb_Map_Next() as the new upb_Map iterator
...
update upb to use upb_Map_Next()
remove upb_MapIterator_SetValue(), which was declared but not actually implemented
remove upb_MapIterator_Done(), which was implemented but not actually used
PiperOrigin-RevId: 489989481
2 years ago
Eric Salo
ff6439fba0
move the wire type definitions into upb/wire/ where they belong
...
PiperOrigin-RevId: 489500430
2 years ago
Eric Salo
384ffc0af8
implement reserved names and ranges for messages and enums
...
https://github.com/protocolbuffers/protobuf/issues/10158
PiperOrigin-RevId: 489285657
2 years ago
Joshua Haberman
023c4da591
Enabled TAP testing for upb on Windows via Lexan.
...
We disable targets that are not currently working on Windows.
PiperOrigin-RevId: 488560033
2 years ago
Eric Salo
ff8e1b40ba
create base/ subdir and expand :status build target to :base
...
upb.h is now just a temporary stub
PiperOrigin-RevId: 488255988
2 years ago
Mike Kruskal
2b011bc759
Internal changes
...
PiperOrigin-RevId: 487599716
2 years ago
Eric Salo
f6307877d3
move portability stuff into upb/port/
...
Also delete redundant system #includes that are already pulled in by port/def.inc
PiperOrigin-RevId: 486398989
2 years ago
Eric Salo
fd14316f38
create collections/ subdir for all array and map code
...
PiperOrigin-RevId: 486013554
2 years ago
Eric Salo
44916d7d27
create reflection_internal library
...
internal declarations are now physically removed from the public headers
PiperOrigin-RevId: 478921131
2 years ago
Eric Salo
edecfd5eb0
upb: use the new reflection headers
...
Reflection headers now live in upb/reflection/ so update our include statements to
reflect this. (See what I did there?)
PiperOrigin-RevId: 474596615
2 years ago
Eric Salo
85534bbb1e
remove unused #includes from reflection.h
...
The functions declared in reflection.h use neither arrays nor maps, so (a) stop including the array and map definitions, and (b) update the handful of other source files which were relying on that transitivity.
PiperOrigin-RevId: 472627278
2 years ago
Protobuf Team Bot
97993b219d
rename upb::SymbolTable as upb::DefPool
...
PiperOrigin-RevId: 456147709
2 years ago
Protobuf Team Bot
65bde4e75b
upb_Encode() now returns a status value
...
PiperOrigin-RevId: 454740100
2 years ago
Joshua Haberman
a60e9a379e
Fixed the mingw build by adding compatibility code for vsnprintf()
...
PiperOrigin-RevId: 448611947
3 years ago
Joshua Haberman
2eb973f53a
Added a GitHub Action to test Python+upb on Windows, and fixed a couple of bugs this revealed.
...
PiperOrigin-RevId: 446322046
3 years ago
Protobuf Team
78f5af8103
Internal change
...
PiperOrigin-RevId: 435060849
3 years ago
Protobuf Team
b8edc7153f
Internal change
...
PiperOrigin-RevId: 435056074
3 years ago
Joshua Haberman
ecc8bae4ce
Fix for proto2 files that use proto3 enums.
3 years ago
Joshua Haberman
85072ce04e
Fixed a bug in enum layout generation.
3 years ago
Joshua Haberman
65a85a63c8
Fixed two bugs with proto2 enums:
...
1. The mask was getting improperly truncated for values 32-63.
2. We were not handling duplicated enum values.
3 years ago
Joshua Haberman
215fe1eda8
Added another missing dep.
3 years ago
Joshua Haberman
d55fa1808b
Added missing dep to def_to_proto_test.
3 years ago
Joshua Haberman
f550b9d6a1
Strip weak_import_test.proto for google3.
3 years ago
Joshua Haberman
efd0b594cb
def_to_proto protos.
3 years ago
Matt Kulukundis
c49e6dfbac
Switch to using :port
3 years ago
Matt Kulukundis
edd1dd30e7
Fix missing build deps
3 years ago
Matt Kulukundis
bf04341805
more licenses
3 years ago
Matt Kulukundis
cce4cffd85
more licenses
3 years ago
Joshua Haberman
826eca6742
Enabled ubsan tests and fixed ubsan failures.
3 years ago
Joshua Haberman
0c541f3305
Single encode.
3 years ago
Joshua Haberman
499c2cc8b1
upb_extreg, upb_msg
3 years ago
Joshua Haberman
1c955f37ce
Mass API rename and clang-reformat ( #485 )
...
* Wave 1: upb_fielddef.
* upb_fielddef itself.
* upb_oneofdef.
* upb_msgdef.
* ExtensionRange.
* upb_enumdef
* upb_enumvaldef
* upb_filedef
* upb_methoddef
* upb_servicedef
* upb_symtab
* upb_defpool_init
* upb_wellknown and upb_syntax_t
* Some constants.
* upb_status
* upb_strview
* upb_arena
* upb.h constants
* reflection
* encode
* JSON decode.
* json encode.
* msg_internal.
* Formatted with clang-format.
* Some naming fixups and comment reformatting.
* More refinements.
* A few more stragglers.
* Fixed PyObject_HEAD with semicolon. Removed TODO entries.
3 years ago
Joshua Haberman
8c256cc677
Addressed PR comments.
3 years ago
Joshua Haberman
6c2eeb1f41
Added C escaping in def_to_proto.
3 years ago
Joshua Haberman
e4c88ad35a
Addressed PR comments.
3 years ago
Joshua Haberman
b0f81596be
All tests passing!
3 years ago
Joshua Haberman
b75f7cff17
Addressed PR comments.
3 years ago
Joshua Haberman
fd9d19d665
Properly compare Python unknown fields.
3 years ago
Joshua Haberman
9bff7b82d1
Unknown field comparison is passing tests.
3 years ago
Joshua Haberman
732a21bb59
Added unknown field comparison to compare.h/compare.c.
3 years ago
Joshua Haberman
df77ca5dbb
Check extension field numbers against extension ranges.
...
This makes extension checking more strict in most cases.
However it also fixes a bug with MessageSet where we were being
too strict. MessageSet allows larger extension numbers than
normal extensions do.
3 years ago
Joshua Haberman
c59d8f8eb7
Addressed PR comments and fixed the broken test.
3 years ago
Joshua Haberman
d0795a29d9
Test for def_to_proto is working.
3 years ago
Joshua Haberman
0be33b1e3c
WIP.
3 years ago