Joshua Haberman
3a3efe69a2
Added incompatible_use_toolchain_transition = True per https://github.com/bazelbuild/bazel/issues/11584
4 years ago
Joshua Haberman
5b1f0d86a1
For Kokoro, only build/test -m32 on Linux.
...
Also fixed a bunch of bugs found by gcc's -fanalyzer.
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
Benjamin Peterson
b5bd5807a7
Migrate to modern Starlark linking api.
...
See https://github.com/bazelbuild/bazel/issues/10860 .
4 years ago
Joshua Haberman
7e5bd65098
Plumbed copts (including the crucial -std=c99) to upb_proto_library() aspect.
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
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
b7dc77415a
Added licenses() to all BUILD files.
4 years ago
Joshua Haberman
e3f41de6c7
Split monolithic BUILD file into many build files.
4 years ago
Joshua Haberman
ee7da95367
Bzl formatting fix per buildifier.
4 years ago
Joshua Haberman
d225dfc2ed
Buildifier formatting fixes.
4 years ago
Joshua Haberman
0a3a94a12f
Updated to a new version of protobuf and fixed a few conformance tests.
...
When `google.protobuf.NullValue` appears on its own, we need to parse
and serialize it as plain JSON "null" value.
4 years ago
Joshua Haberman
6fe84526be
Mark _is_bazel to be replace in google3.
4 years ago
Joshua Haberman
8f11ec57d2
Applied changes from google3.
5 years ago
Joshua Haberman
0dc2394da5
Changes to support import into google3 ( #291 )
...
* Fixes for google3.
* Added to failure list for new failure.
* Reused existing failure list file.
* Add a ./ to assist rewriting.
5 years ago
Joshua Haberman
16facab490
Created an amalgamation without handlers, and fixed some bugs. ( #283 )
...
* Created amalgamation with upb_msg but no handlers.
* Bugfix for upb_array_resize().
* Renamed "lite" amalgamation to "core", to avoid confusion.
Traditionally "lite" has meant "without reflection", but here we
mean it as "without handlers-based code."
* Build fixes from CI tests.
* Removed some more C++-style comments.
* Fix for out-of-order statements.
5 years ago
Joshua Haberman
0842f88211
Support for proto3 optional. ( #270 )
...
* Added support for proto3 optional to defs.
* Added proto3 optional support. Untested at the moment.
* Changes to support proto3 optional.
* Fixed real oneof count for messages with no fields.
* Fixed compile error and test.
* Added comment about why I'm commenting out the assert.
5 years ago
Yannic
d638d74d1b
Add load statements for @rules_proto ( #271 )
...
This makes upb compatible with --incompatible_load_proto_rules_from_bzl.
See https://github.com/bazelbuild/bazel/issues/8922
5 years ago
Joshua Haberman
378cbbc3cc
Updated to new protobuf version, and added support for packed=false. ( #264 )
...
* WIP.
* Passes most tests.
* A few fixes.
* A few optimizations.
* Some more optimiation.
* Update Protobuf to v3.11.4 and Abseil to LTS 2020-02-25
* Use longjmp instead of explicit error checks at every level.
* Used macros for better documentation of ops.
* Fixed bug with map parsing. All tests are passing except a few conformance tests.
* Fixed remaining bugs, all conformance tests pass.
Also ported all of upb to a single UPB_PTR_AT() macro instead of
having multiple .c files define their own.
* Formatted with clang-format.
* Fixes to compile on Linux.
* A few more compile fixes.
* Script to benchmark changes.
* Fixed parenthesis bug in op calculation.
* Updated generated descriptor files.
* WIP.
* Removed trailing enum to fix the Linux build.
* Respect packed=false to fix conformance failures in new protobuf version.
* Small simplification.
* Fixes to decoder.
* Removed stray comment.
Co-authored-by: Yannic Bonenberger <contact@yannic-bonenberger.com>
5 years ago
Joshua Haberman
6c5d5afc43
Remove compatibility code for old Bazel versions.
5 years ago
Anna R
a27429f265
Add port_def.inc and port_undef.inc to generated code hdrs
5 years ago
Anna R
3797ad2217
port should not be public
5 years ago
Anna R
fc4941183f
Add :port dependencies to libraries that include it
5 years ago
Fredrik Medley
0c2046f732
Make workspace_deps.bzl overridable using maybe()
...
Make it possible for a user to define a different version of the upb
dependencies by wrapping them in maybe(). Then the upb dependencies will
not be added if they previously have been declared.
5 years ago
Joshua Haberman
bfc86d3577
Fixed many bugs, basic Lua test passes!
5 years ago
Joshua Haberman
626ec4bfcf
Everything builds, test pass except test_decoder.
5 years ago
Joshua Haberman
27b95c969a
WIP.
5 years ago
Esun Kim
34e55c1c56
Use github.com as a zlib repo
5 years ago
Lizan Zhou
bcdfe6b1b0
bazel: use canonical repository name for absl
...
Signed-off-by: Lizan Zhou <lizan@tetrate.io>
5 years ago
Lizan Zhou
b973c06480
prefix bazel_version
...
Signed-off-by: Lizan Zhou <lizan@tetrate.io>
5 years ago
Joshua Haberman
5768e68ed7
Fixed for Bazel >= 1.0.
5 years ago
Nicolas "Pixel" Noble
a2013f0fc2
Trying to be more flexible with the version of bazel we can use here.
5 years ago
Nicolas "Pixel" Noble
6e85c2bf03
Fixing the separator string.
5 years ago
Nicolas "Pixel" Noble
9605c7093c
Revert previous fix - to_list() is too new, or...?
5 years ago
Joshua Haberman
ee87a28d2d
Some minor style fixes.
6 years ago
Joshua Haberman
493e9b2614
Build fixes from fuzz target.
6 years ago
Joshua Haberman
75d680d7b0
Small fix to upb_proto_library().
6 years ago
Joshua Haberman
57a63d4c7b
Fixed upb_proto_library() logic for calculating output dir.
6 years ago
Joshua Haberman
ba29af3a6a
Hid generated-code-only headers inside a separate library.
6 years ago
Laurent Le Brun
1a5a609b0e
Update upb_proto_library.bzl for Bazel compatibility
...
With this change, the code now builds with the flags --incompatible_depset_is_not_iterable, --incompatible_new_actions_api, and --incompatible_no_support_tools_in_action_inputs.
These flags will soon be enabled by default in Bazel.
6 years ago
Marcel Hlopko
6d204851d2
Update upb to be forward compatible with Bazel 0.27
...
Specifically, this PR prepares up for:
https://github.com/bazelbuild/bazel/issues/7793
https://github.com/bazelbuild/bazel/issues/7260
6 years ago
Joshua Haberman
8a41e6cb12
Fixed amalgamation to not exclude upb/decode.c.
6 years ago
Joshua Haberman
5611ff267b
Moved bazel files to bazel/ directory.
6 years ago