blob: d86b7d4d183d6fd62aa169b9652382f3df338c00 [file] [log] [blame] [view]
Serge Bazanski46e72ab2022-09-05 15:13:22 +02001libpg\_query
2===
3
4This library provides a C API to parse postgres queries. It consists of some vendored PostgreSQL source code and wrapper header/sources.
5
6Licensing
7---
8
9 * libpg\_query itself: BSD 3-clause
10 * xxhash: BSD 2-clause
11 * protobuf-c: BSD 2-clause (not named, but terms are equal)
12 * PostgreSQL: PostgreSQL license (similar to MIT)
13
14Known Issues
15---
16
17This library has a very wide include path requirement, that includes its own vendor directories (which contain postgres, xxhash and protobuf-c). These includes are pulled into all dependendents of this library and might break anything that wants eg. both libpg\_query and xxhash. When this happens, we should patch the library to always use absolute includes instead, thereby cleaning up the include directives. We technically have `bazel_cc_fix` for that.
18
19We could also unvendor xxhash, protobuf-c and even postgres. But that might not be worth the effort right now.