Joshua Haberman
970c645140
Fixes for google3 (layering check and formatting).
3 years ago
Joshua Haberman
50c1298f32
Added conformance test variant to exercise dynamic minitable building.
3 years ago
Joshua Haberman
8ede0d552d
Tests are passing.
3 years ago
Joshua Haberman
dfc07a8f89
Added explicit dep on :table from Python.
3 years ago
Joshua Haberman
8c530f9226
Changed generated code deps to avoid deps on core libraries.
...
This will allow the core libraries to be visibility controlled if
necessary.
3 years ago
Matt Kulukundis
42c121ed79
fix msg_test harder
3 years ago
Matt Kulukundis
a3bd5f8f57
fix msg_test to be explicit about its deps
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
92d71a4667
make deps explicit
3 years ago
Matt Kulukundis
c8f823ef0a
explicitly include deps for internal headers
3 years ago
Matt Kulukundis
61b0905040
add some missing testonly attributes
3 years ago
Joshua Haberman
502d6ba1d6
Moved fuzzing to a sub-directory.
...
gRPC does not want to depend on rules_fuzzing.
3 years ago
Joshua Haberman
11b6df0c46
Moved tests into the main source tree.
3 years ago
Eli Schleifer
231daa3141
Update BUILD
...
Without visibility public on the windows config build fails with Bazel version 4.2.2
3 years ago
Joshua Haberman
2df18f0a3e
Addressed PR comments.
3 years ago
Joshua Haberman
39365f16a7
Addressed PR comments.
3 years ago
Joshua Haberman
3d437bbcab
Some pre-PR fixes.
3 years ago
Joshua Haberman
4307f5dbba
Fixed the CMake build and amalgamation.
3 years ago
Joshua Haberman
ce012b7b55
Added support for extensions.
3 years ago
Joshua Haberman
173554146f
Updated some docs and removed/rearranged some obsolete stuff.
3 years ago
Joshua Haberman
91d506ac32
Ported ABSL's wyhash to C.
3 years ago
Joshua Haberman
42bdfcb849
Fix BUILD file.
4 years ago
Joshua Haberman
3881393907
Renamed .int.h to _internal.h, for greater clarity.
4 years ago
Matt Kulukundis
da4b75b979
Fix build rules for more restrive deps checks
...
- add msg.int.h access for generated files
- actually declare reflective/non as different things
4 years ago
Joshua Haberman
823eb09694
Update all 2011 dates to 2021.
4 years ago
Joshua Haberman
e59d2c8fa7
Added license headers to all files.
4 years ago
Joshua Haberman
1674f28dd7
Put public message interface into msg.h and moved internal functions to msg.int.h.
4 years ago
Joshua Haberman
83c0edbd2a
A few minor cleanups.
4 years ago
Joshua Haberman
1b9cc09f0e
Removed extraneous copybara directive.
4 years ago
Joshua Haberman
f5d2d55007
Deleted the legacy "Handlers" APIs. upb can finally be deserving of its name.
...
This is possible now that all users have been migrated to the new
upb_msg APIs.
4 years ago
Joshua Haberman
5e550e88f8
Added API for getting fielddef default as a upb_msgval.
4 years ago
Lidi Zheng
f72c26cbc4
Make :json publically visible
4 years ago
Joshua Haberman
695b7f4617
Added code to test UPB_JSONENC_EMITDEFAULTS.
4 years ago
Joshua Haberman
e9b79542ad
Added a BUILD file for wyhash.
...
This will make the build more closely resemble the google3
build.
The CMake output from this is a bit busted, but the build
does succeed.
4 years ago
Joshua Haberman
6c16cba83f
Removed obsolete port.c file.
4 years ago
Joshua Haberman
64abb5eb11
Amalgamation no longer bundles wyhash, but #includes it.
...
Also fixed a few spelling mistakes.
4 years ago
Joshua Haberman
e8f9eac68c
Added #defines UPB_ENABLE_FASTTABLE and UPB_TRY_ENABLE_FASTTABLE.
...
These control whether fasttable decoding is on.
4 years ago
Joshua Haberman
e86541ac1d
Fixed the build after the merge.
4 years ago
Joshua Haberman
558315a1c3
Added COPTS to :port.
4 years ago
Joshua Haberman
7e5bd65098
Plumbed copts (including the crucial -std=c99) to upb_proto_library() aspect.
4 years ago
Joshua Haberman
8f3ee80d46
Drop C89/C90 support and MSVC prior to Visual Studio 2015.
...
upb previously attempted to support C89 and pre-2015 versions
of Visual Studio. This was to support older compilers with
limited C99 support (particularly MSVC). But as of last August,
even gRPC has dropped support for MSVC prior to 2015
c87276d058
Therefore it seems safe for upb to no longer attempt C89 support
(we were already not truly C89 compliant, with our use of "bool").
We now explicitly require C99 or greater and MSVC 2015 or greater.
This cleaned up port_def.inc a fair bit. I took the chance to
also remove some obsolete macros.
4 years ago
Joshua Haberman
a274ad786a
Plumbed copts (including the crucial -std=c99) to upb_proto_library() aspect.
4 years ago
Joshua Haberman
2c8bb6dd9d
Specify C99 explicitly until/unless we stop using bool.
4 years ago
Joshua Haberman
efd576b698
Added -std=gnu99 for fastdecode and ran Buildifier.
4 years ago
Joshua Haberman
b928696942
A few more fixes, and test fastdecode under Kokoro.
4 years ago
Joshua Haberman
a345af9883
Added a codegen parameter for whether fasttables are generated or not.
...
Example:
$ CC=clang bazel build -c opt --copt=-g benchmarks:benchmark --//:fasttable_enabled=false
INFO: Build option --//:fasttable_enabled has changed, discarding analysis cache.
INFO: Analyzed target //benchmarks:benchmark (0 packages loaded, 913 targets configured).
INFO: Found 1 target...
Target //benchmarks:benchmark up-to-date:
bazel-bin/benchmarks/benchmark
INFO: Elapsed time: 0.760s, Critical Path: 0.58s
INFO: 7 processes: 1 internal, 6 linux-sandbox.
INFO: Build completed successfully, 7 total actions
$ bazel-bin/benchmarks/benchmark --benchmark_filter=BM_Parse_Upb
------------------------------------------------------------------------------
Benchmark Time CPU Iterations
------------------------------------------------------------------------------
BM_Parse_Upb_FileDesc_WithArena 10985 ns 10984 ns 63567 651.857MB/s
BM_Parse_Upb_FileDesc_WithInitialBlock 10556 ns 10554 ns 66138 678.458MB/s
$ CC=clang bazel build -c opt --copt=-g benchmarks:benchmark --//:fasttable_enabled=true
INFO: Build option --//:fasttable_enabled has changed, discarding analysis cache.
INFO: Analyzed target //benchmarks:benchmark (0 packages loaded, 913 targets configured).
INFO: Found 1 target...
Target //benchmarks:benchmark up-to-date:
bazel-bin/benchmarks/benchmark
INFO: Elapsed time: 0.744s, Critical Path: 0.58s
INFO: 7 processes: 1 internal, 6 linux-sandbox.
INFO: Build completed successfully, 7 total actions
$ bazel-bin/benchmarks/benchmark --benchmark_filter=BM_Parse_Upb
------------------------------------------------------------------------------
Benchmark Time CPU Iterations
------------------------------------------------------------------------------
BM_Parse_Upb_FileDesc_WithArena 3284 ns 3284 ns 213495 2.1293GB/s
BM_Parse_Upb_FileDesc_WithInitialBlock 2882 ns 2882 ns 243069 2.4262GB/s
Biggest unknown is whether this parameter should default to true or false.
4 years ago
Joshua Haberman
2c1664906a
Removed license comments and upb_amalgamation for google3.
4 years ago
Joshua Haberman
b7dc77415a
Added licenses() to all BUILD files.
4 years ago
Joshua Haberman
e3f41de6c7
Split monolithic BUILD file into many build files.
4 years ago