This document describes contributing to Picodata, primarily the ways you can build and test it.
### Building Picodata from source
#### Required build tools
## Building Picodata from source
### Required build tools
- Rust and Cargo 1.63 or newer
- Cmake 3.16 or newer
- gcc, g++
- libstc++-static
#### Prerequisites for CentOS 8
### Prerequisites for CentOS 8
Use the following commands to install the required build prerequisites. Note that you'll need recent Rust and Cargo versions installed using the recommended way from [rustup.rs](rustup.rs):
```bash
sudo dnf config-manager --set-enabled powertools
...
...
@@ -16,13 +16,13 @@ sudo dnf in -y gcc gcc-c++ make cmake git patch libstdc++-static
curl --proto'=https'--tlsv1.2 -sSf https://sh.rustup.rs | sh
source"$HOME/.cargo/env"
```
#### Prerequisites for Ubuntu 22.04
### Prerequisites for Ubuntu 22.04
Use the following command to install the required build prerequisites. Note that Ubuntu 22.04 provides recent Rust and Cargo versions, so it's preferable to install it via `apt-get`:
Use the following commands to install the required build prerequisites. Note that you'll need recent Rust and Cargo versions installed using the recommended way from [rustup.rs](rustup.rs):
## Picodata – Professional Data Management System for High Loads
# Picodata – Professional Data Management System for High Loads
This repository contains the source code of Picodata, a distributed application server with a built-in in-memory database.
### What is Picodata
## What is Picodata
Picodata is a software for building professional data management systems. It provides a data storage system together with a development platform and a runtime for persistent applications written in Rust. Learn more about our software at the [picodata.io](picodata.io){:target="_blank"} web site.
### Getting Picodata
## Getting Picodata
We provide pre-built Picodata packages for select Linux distributions including CentOS and Ubuntu. Head over to our [downloads page](https://picodata.io/download/) to find out installation details.
### Running Picodata
## Running Picodata
Running a Picodata instance only takes one simple command: `picodata run`. Getting a basic distributed cluster made of two instances running on different hosts involves two commands, like this:
```bash
...
...
@@ -16,5 +16,5 @@ picodata run --listen 192.168.0.2:3301 --peer 192.168.0.1:3301
```
You can find out more about getting started procedures and first steps by heading to our [documentation site](https://docs.picodata.io/picodata/install/#_2).
### Building Picodata from source
## Building Picodata from source
Our pre-built packages provide a statically linked `picodata` binary that have no extra dependencies other than a recent `glibc` library version. However, you may want or need to compile the software from the source. Please refer to the [CONTRIBUTING.md](CONTRIBUTING.md) document for compilation instructions and steps required to run integration tests.