Skip to content

Commit

Permalink
CI: markdownlint
Browse files Browse the repository at this point in the history
  • Loading branch information
ozkriff committed Feb 7, 2018
1 parent 039213c commit 504cd84
Show file tree
Hide file tree
Showing 10 changed files with 340 additions and 147 deletions.
7 changes: 4 additions & 3 deletions .github/ISSUE_TEMPLATE/bug.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ Please describe your issue here.
-->

## Specifications
- Platform:
- Rust version:
- Exonum version:

- Platform:
- Rust version:
- Exonum version:
3 changes: 2 additions & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
<!--
Please describe the pull request motivation and changes here along with non-obvious things.
****Please describe the pull request motivation and changes here
along with non-obvious things.
-->
5 changes: 4 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,8 @@ install:
nvm use 8
npm install -g cspell
cspell --version
npm install -g markdownlint
markdownlint --version
fi
- |
case "$FEATURE" in
Expand All @@ -109,7 +111,8 @@ script: |
cd testkit && cargo fmt -- --write-mode=diff && cd .. &&
cspell sandbox/{src,examples,tests}/**/*.rs &&
cspell exonum/{src,benches,tests}/**/*.rs &&
cspell testkit/{src,examples,tests}/**/*.rs
cspell testkit/{src,examples,tests}/**/*.rs &&
find . -not -path "./3rdparty/*" -name "*.md" | xargs markdownlint --config .markdownlintrc
;;
"clippy-core" )
cd exonum && cargo clippy --verbose --features long_benchmarks -- -D warnings
Expand Down
194 changes: 141 additions & 53 deletions CONTRIBUTING.md

Large diffs are not rendered by default.

57 changes: 43 additions & 14 deletions INSTALL.md
Original file line number Diff line number Diff line change
@@ -1,66 +1,95 @@
# Build instructions

First of all, you need to install system dependencies.

# Installing system dependencies
## Installing system dependencies

The crate uses these system libraries:

* [rocksdb](https://github.com/facebook/rocksdb)
* [libsodium](https://download.libsodium.org/doc/)
* [openssl](https://www.openssl.org)

Below you can find instructions on how to obtain them for the different operating systems:
Below you can find instructions on how to obtain them for the different
operating systems:

### macOS

## macOS
If you use `homebrew` you can simply install needed libraries with the command:

```shell
brew install libsodium rocksdb openssl
```

## Linux
### Linux

For deb based systems like Debian or Ubuntu you need the following packages:

```shell
apt install build-essential libsodium-dev librocksdb-dev libsnappy-dev libssl-dev pkg-config
apt install build-essential libsodium-dev librocksdb-dev libsnappy-dev \
libssl-dev pkg-config
```

Other linux users may find the packages with similar names in their package managers.

## Windows
### Windows

Building and workability is not guaranteed yet.

## Adding environment variables

#Adding environment variables:
This variables needed for linking with the `rocksdb` and `snappy` libraries.
## macOS

### macOS

```shell
export ROCKSDB_LIB_DIR=/usr/local/lib
export SNAPPY_LIB_DIR=/usr/local/lib
```
## Linux

### Linux

```shell
export ROCKSDB_LIB_DIR=/usr/lib/x86_64-linux-gnu
export SNAPPY_LIB_DIR=/usr/lib/x86_64-linux-gnu
```
# Installing Rust
The project uses a stable Rust version that can be installed by using the [rustup](https://www.rustup.rs) utility.

## Installing Rust

The project uses a stable Rust version that can be installed by using
the [rustup](https://www.rustup.rs) utility.

```shell
curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain stable
```

Nightly (`2017-07-05`) version is used for [clippy](https://github.com/Manishearth/rust-clippy). You can install it with the following command:
Nightly (`2017-07-05`) version is used for
[clippy](https://github.com/Manishearth/rust-clippy).
You can install it with the following command:

```shell
rustup toolchain install nightly-2017-07-05
```

And run Clippy checks this way:

```shell
cargo +nightly-2017-07-05 clippy
```

# Compiling the project
You can verify that you installed everything correctly by compiling the `exonum` crate and run tests suite with the command:
## Compiling the project

You can verify that you installed everything correctly by compiling
the `exonum` crate and run tests suite with the command:

```shell
cargo test --manifest-path exonum/Cargo.toml
```

You may want to launch the extended tests suite which is named `sandbox`.

```shell
cargo test --manifest-path sandbox/Cargo.toml
```

After all this you can learn how to create your own blockchain solution.
24 changes: 15 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,25 @@
[![Build Status](https://travis-ci.org/exonum/exonum.svg?branch=master)](https://travis-ci.org/exonum/exonum)
[![Join the chat at https://gitter.im/exonum/exonum](https://badges.gitter.im/exonum/exonum.svg)](https://gitter.im/exonum/exonum)

[Exonum](https://exonum.com/) is an extensible open-source framework for creating blockchain
applications. Exonum can be used to create cryptographically powered distributed ledgers in
virtually any problem domain, including FinTech, GovTech, and LegalTech. The Exonum framework is
oriented towards creating permissioned blockchains, that is, blockchains with the known set of
blockchain infrastructure providers.
[Exonum](https://exonum.com/) is an extensible open-source framework for
creating blockchain applications. Exonum can be used to create cryptographically
powered distributed ledgers in virtually any problem domain, including FinTech,
GovTech, and LegalTech. The Exonum framework is oriented towards creating
permissioned blockchains, that is, blockchains with the known set of blockchain
infrastructure providers.

This is the main Exonum repository that includes

* [Exonum core library](https://github.com/exonum/exonum/blob/master/exonum/README.md).
* [Exonum testing framework](https://github.com/exonum/exonum/blob/master/testkit/README.md).
* Services:
* Configuration service (currently in [exonum-configuration](https://github.com/exonum/exonum-configuration) repository).
* Time service (currently in [exonum-time](https://github.com/exonum/exonum-time) repository).
* Configuration service (currently in [exonum-configuration] repository).
* Time service (currently in [exonum-time] repository).
* Demos
* Cryprocurrency (currently in [cryptocurrency](https://github.com/exonum/cryptocurrency) repository).
* Cryprocurrency (currently in [cryptocurrency] repository).

See individual projects' readme for the details.

[exonum-configuration]: https://github.com/exonum/exonum-configuration
[exonum-time]: https://github.com/exonum/exonum-time
[cryptocurrency]: https://github.com/exonum/cryptocurrency
Loading

0 comments on commit 504cd84

Please sign in to comment.