FlatBuffers: Memory Efficient Serialization Library
Go to file
Wouter van Oortmerssen b8aaccee82 Disable parsing of nested_flatbuffers as bytes by default
Parsing as bytes produces buffers that are unsafe to access unless passed thru a verifier,
whereas users could reasonably assume that any JSON parsed without errors is safe to access.
Users that still have legacy JSON files with such bytes in it will get a helpful error point them
to the option to turn on to have it work again.
2021-12-15 10:41:29 -08:00
.bazelci Remove ubuntu1604 from presubmit.yml (#6715) 2021-07-09 09:59:30 -07:00
.github Enable OSS-Fuzz on CI 2021-12-14 12:10:43 -08:00
.travis Ran clang-format-all.sh. Removed default --style=file parameter (#6639) 2021-05-15 12:54:08 -07:00
CMake [CMake]: Fix version in pkgconfig file (#6986) 2021-12-10 15:40:21 -08:00
android Lua Generator using IR. (#6940) 2021-12-02 21:29:19 -08:00
bazel [grpc] Support latest version of grpc PoC (#6338) 2021-03-25 12:12:35 -07:00
benchmarks Vector Downward GetSize optimization (#6925) 2021-11-22 19:50:42 -08:00
conan Update Conan version Automatically (#5027) 2018-11-12 08:49:42 -08:00
dart WIP: Dart release 2.0 (#6927) 2021-11-18 10:56:29 -08:00
docs Disable parsing of nested_flatbuffers as bytes by default 2021-12-15 10:41:29 -08:00
go GetUOffsetT must get value by GetUint32 not GetInt32 (#6072) 2021-02-18 18:38:25 -08:00
grpc Fix typo in variable name (#6973) 2021-12-09 10:30:15 -08:00
include/flatbuffers Disable parsing of nested_flatbuffers as bytes by default 2021-12-15 10:41:29 -08:00
java/com/google/flatbuffers [Java] lookup by byteArray is giving back wrong entry (#6915) 2021-11-15 11:16:45 -08:00
js [JS/TS] Rewrite flexbuffers JS to TS (#6148) 2020-10-19 13:11:35 -07:00
kotlin Updated main version numbers to 2.0 2021-05-10 11:14:47 -07:00
lobster [Lobster] optional scalars support 2020-08-18 14:00:02 -07:00
lua [Lua] manipulate byte array as string (#6624) 2021-05-07 22:57:13 -07:00
mjs [JS/TS] Modernize TypeScript / JavaScript flatbuffers support (#6095) 2020-09-17 12:21:14 -07:00
net/FlatBuffers Updated main version numbers to 2.0 2021-05-10 11:14:47 -07:00
php Performance improvement to generated+supporting PHP (#5080) 2018-12-20 16:10:20 -08:00
python Fix warning about deprecated module: imp (#6362) 2021-06-17 13:02:22 -07:00
reflection Lua Generator using IR. (#6940) 2021-12-02 21:29:19 -08:00
rust rust: remove needless borrow (#6922) 2021-11-23 10:46:56 -06:00
samples Lua Generator using IR. (#6940) 2021-12-02 21:29:19 -08:00
scripts Validate C# json/object-api options (#6985) 2021-12-13 11:52:01 -08:00
snap use improved versioning (#6691) 2021-06-11 15:27:59 -07:00
src Disable parsing of nested_flatbuffers as bytes by default 2021-12-15 10:41:29 -08:00
swift Improves documentation, and adding DocC (#6784) 2021-09-27 20:59:19 +02:00
tests Updated FlexBuffers fuzzer 2021-12-14 11:57:42 -08:00
ts Use ArrayBuffer type for JS flexbuffer's toObject (#6851) 2021-09-23 16:22:13 -07:00
.clang-format Made all C++ files clang-formatted. 2017-12-21 11:45:02 -08:00
.editorconfig Unify line ending rules in '.editorconfig' and '.gitattributes' (#5231) 2019-03-18 12:47:07 -07:00
.eslintrc.js [JS/TS] Modernize TypeScript / JavaScript flatbuffers support (#6095) 2020-09-17 12:21:14 -07:00
.gitattributes Unify line ending rules in '.editorconfig' and '.gitattributes' (#5231) 2019-03-18 12:47:07 -07:00
.gitignore Added Google benchmarks (and gtests) (#6920) 2021-11-15 13:41:22 -08:00
.travis.yml Removed test/generate_code.{sh|bat} (#6873) 2021-11-30 23:13:24 -08:00
BUILD.bazel Lua Generator using IR. (#6940) 2021-12-02 21:29:19 -08:00
CMakeLists.txt [CMake] Add option for disable universal on OSX (#6990) 2021-12-13 13:32:58 -08:00
CONTRIBUTING.md Fixed link to Google C++ Style Guide. 2017-02-08 16:37:25 -08:00
Formatters.md Ran clang-format-all.sh. Removed default --style=file parameter (#6639) 2021-05-15 12:54:08 -07:00
LICENSE.txt Fixed Apache license not using canonical version. 2019-11-04 17:15:56 -08:00
SECURITY.md Create Security.md 2021-05-19 11:55:50 -07:00
WORKSPACE [C++] Use proper gRPC C++ API when using MemoryBuffer Slice (#6756) 2021-07-29 10:41:51 -07:00
appveyor.yml Add .NET test to github workflows (#6982) 2021-12-13 11:51:27 -08:00
build_defs.bzl Add a split on ':' to build_defs.bzl (#6742) 2021-07-19 16:42:27 -04:00
composer.json (PHP) add experimental support for PHP language. 2015-11-18 00:26:39 +09:00
conanfile.py Update Conan version Automatically (#5027) 2018-11-12 08:49:42 -08:00
package.json Bumped package.json to 2.0.4 2021-09-27 15:49:45 -07:00
pom.xml update Java version to 2.0.3 2021-08-14 09:01:54 -07:00
readme.md Update readme.md to point to security policy 2021-05-19 11:59:58 -07:00
swift.swiftformat Improves documentation, and adding DocC (#6784) 2021-09-27 20:59:19 +02:00
tsconfig.json [JS/TS] Rewrite flexbuffers JS to TS (#6148) 2020-10-19 13:11:35 -07:00
tsconfig.mjs.json [JS/TS] Rewrite flexbuffers JS to TS (#6148) 2020-10-19 13:11:35 -07:00

readme.md

logo FlatBuffers

Build Status Build status Join the chat at https://gitter.im/google/flatbuffers Discord Chat Twitter Follow

FlatBuffers is a cross platform serialization library architected for maximum memory efficiency. It allows you to directly access serialized data without parsing/unpacking it first, while still having great forwards/backwards compatibility.

Go to our landing page to browse our documentation.

Supported operating systems

  • Windows
  • MacOS X
  • Linux
  • Android
  • And any others with a recent C++ compiler.

Supported programming languages

  • C++
  • C#
  • C
  • Dart
  • Go
  • Java
  • JavaScript
  • Lobster
  • Lua
  • PHP
  • Python
  • Rust
  • TypeScript

and more in progress...

Contribution

To contribute to this project, see CONTRIBUTING.

Security

Please see our Security Policy for reporting vulnerabilities.

Licensing

Flatbuffers is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.