Skip to content

tableauio/loader

Repository files navigation

Loader

The official config loader for Tableau.

Prerequisites

TODO: devcontainer

  • Development OS: linux
  • Init protobuf: bash init.sh

C++

  • 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 at test/cpp-tableau-loader/bin.

References

Go

  • 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

References

TypeScript

Requirements

  • nodejs v16.0.0
  • protobufjs v7.2.3

Test

  • Change dir: cd test/ts-tableau-loader
  • Install depedencies: npm install
  • Generate protoconf: npm run generate
  • Test: npm run test

Problems in protobufjs:

protobufjs: Reflection vs. static code

If using reflection (.proto or JSON) but not static code, then proto3-json-serializer is a good option.

References: