The official config loader for Tableau.
TODO: devcontainer
- Development OS: linux
- Init protobuf:
bash init.sh
- Install: CMake 3.22 or above
- Change dir:
cd test/cpp-tableau-loader
- Generate protoconf:
bash ./gen.sh
- Create build dir:
mkdir build && cd build
- Run cmake:
cmake ../src/
- Build:
make -j8
, then the bin dir will be generated attest/cpp-tableau-loader/bin
.
- Install: go1.18 or above
- Install protoc-gen-go:
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
- Change dir:
cd test/go-tableau-loader
- Generate protoconf:
bash ./gen.sh
- Build:
go build
- nodejs v16.0.0
- protobufjs v7.2.3
- Change dir:
cd test/ts-tableau-loader
- Install depedencies:
npm install
- Generate protoconf:
npm run generate
- Test:
npm run test
Problems in protobufjs:
- Unable to use Google well known types
- google.protobuf.Timestamp deserialization incompatible with canonical JSON representation
- Implement wrapper for google.protobuf.Timestamp, and correctly generate wrappers for static target.
If using reflection (.proto
or JSON
) but not static code, then proto3-json-serializer is a good option.