By default, these are the officially supported loggers:
| Language | Updated to gRPC? | Link |
|---|---|---|
| Rust | Yes | Here |
| C++ | No | Here |
| Python | No (WIP) | Here |
| PHP | Yes | Here |
| NodeJS | Yes | Here |
All language loggers now need to use gRPC in order to implement the API schema. The protobuf files are available here.
Unofficial language loggers:
- None yet (remove me if/when one is added).
The MSRV (minimum supported Rust version): 1.62.
Below you will find the requirements to build on each platform. The supported platform(s) are:
- Linux - Supported: Ubuntu 22.04, Ubuntu 20.04, Fedora 36, Fedora Rawhide, Debian 11, Debian 10 and Debian Sid.
- Web
- Windows
Planned support:
- MacOS (M1 and legacy Intel systems)
Packages for the supported distributions listed above can be found here underneath each of the completed CI jobs.
The current officially supported Linux distributions are the following:
NOTE: You can use the ./bootstrap-build.sh or the
./bootstrap-action.sh scripts to automatically install the dependencies for
the supported distributions.
Support is planned for the following:
- Arch (and it's derivatives)
- RHEL 7+ (and compatible distros, i.e. Rocky Linux) (should work already but haven't gotten around to confirming)
Minimum supported Fedora version: 36.
You will need to install the "Development Tools" group. You can do this by running:
sudo dnf groupinstall "Development Tools" -y.
gobject-introspection-develcairo-develatk-develpango-develgdk-pixbuf2-develgtk3-devel
There is support for Ubuntu 22.04, Ubuntu 20.04, Debian 11, Debian 10 and Debian Sid.
- A C/C++ compiler. For example
gccorclang. libglib2.0-devlibpango1.0-devlibgdk-pixbuf-2.0-dev(orlibgdk-pixbuf2.0-devon 20.04).libatk1.0-devlibgtk-3-devlibxcb-shape0-devlibxcb-xfixes0-dev
The main GUI is now able to run in the browser using trunk. You can install
trunk with cargo install trunk. You will need the wasm32-unknown-unknown
target installed through rustup. You can install that with rustup target add wasm32-unknown-unknown.
NOTE: Currently, trunk doesn't have support for manually specifying the
headers like you can see in the Trunk.toml in this repository. A PR is open
for it and to use the Trunk.toml you can issue this command to install a
version of trunk that does support manually specifying headers: cargo install --git https://github.com/oberien/trunk --branch headers --force trunk
Then, you can run a local server with trunk serve --release.
You can build CodeCTRL for Windows simply by installing rustup via the normal
channel: here, and issuing a cargo build --release at
the root of this project.
A MSI for Windows is automatically generated on every commit of the CodeCTRL
main branch and can be found in one of the completed workflow runs
here.