Contributing
Please feel free to open an issue or a pull request with questions, ideas, features, improvements or fixes.
Suggested improvements
- Stricter type checking in API method invocation macros
- Additional RPC protocol implementations
- More transport layer integrations
- Context-based request filtering
- Better documentation
Build requirements
- JDK 11+
Note: Due to the latest Scala 3 compiler defect the build currently does not work on JDK 21. Use -java-home
SBT option to select an alternative JDK if needed.
Documentation
- Yarn 1.22+
Release
Testing
Note: Due to uPickle design peculiarities the uPickle plugin takes a very long time to build but it works.
Basic tests
./sbt '+ test'
Simple API tests for all transport plugins and default codec plugin only
TEST_LEVEL=simple ./sbt '+ test'
Complex API tests for all transport plugins and default codec plugin only
TEST_LEVEL=complex ./sbt '+ test'
Complex API tests for all transport plugins and all codec plugins
TEST_LEVEL=all ./sbt '+ test'
Console log level
LOG_LEVEL=DEBUG ./sbt '+ test'
Generated code logging
LOG_CODE=true ./sbt '+ test'
Test log file
less target/test.log
Documentation
Generate website
./sbt site
Serve website
./sbt serveSite