tagion ~epoch_voting
Decentralised network for high volume transactions and distributed cases
To use this package, run the following command in your project's root directory:
Manual usage
Put the following dependency into your project's dependences section:
Tagion
👋 Welcome to the Tagion project!
Tagion is a decentralized ledger for creating high volume transaction. It differs from blockchain based ledgers in that it uses a hashgraph as the consensus mechanism and a database based on a merkletree (DART) to store the bills of the system. Thus it does not need to record the entire transaction history to maintain integrity, only the state of world is recorded.
General system documentation https://docs.tagion.org
Code documentation https://ddoc.tagion.org
Whitepaper https://www.tagion.org/resources/tagion-whitepaper.pdf
HiBON/HiRPC https://www.hibon.org
Installation
Installation tested on ubuntu 22.04, nixos-unstable
Setup steps & preflight checks
- First of all please be sure that you have everything, command You can run the following commands, if you are using arch, nix or ubuntu
- Ubuntu
apt-get install git autoconf build-essential libtool dub cmake
Download a D compiler ldc or dmd
- LLVM D compiler - ldc2 (v1.37.0)
wget https://github.com/ldc-developers/ldc/releases/download/v1.37.0/ldc2-1.37.0-linux-x86_64.tar.xz
tar xf ldc2-1.37.0-linux-x86_64.tar.xz
export PATH="path-to-ldc2/ldc2-1.37.0-linux-x86_64/bin:$PATH"
- Reference D compiler - dmd (v2.107.1)
wget https://downloads.dlang.org/releases/2.x/2.107.1/dmd.2.107.1.linux.tar.xz
tar xf dmd.2.107.1.linux.tar.xz
export PATH="path-to-dmd2/dmd2/linux/bin64:$PATH"
- Arch
pacman -Syu git make autoconf gcc libtool dlang cmake
- Nix
nix develop
- Verify that the binaries are available and check their version (comments showing versions used as of writing)
ldc2 --version # LDC - the LLVM D compiler (1.37.0): ...
dmd --version # v2.107.1
- Cloning tagion repo
git clone [email protected]:tagion/tagion.git
Compiling
- Running tests
make test
- Compiling binaries
make tagion
make install
# Will install to dir specified by INSTALL=/path/to/dir
# This directory should also be in your PATH variable
# such that you can use the tools from you shell
- General info about build flow
# Help info
make help
# or
make help-<topic>
# Info about environment variables
make env
# or
make env-<topic>
- Compilation options, can be specified on the commandline or in a
local.mk
in the project root
Notice that if you choose to compile with ldc there is a bug which means that the unittests wont run.
# Showing the default values
ONETOOL=1 # ALL tools linked in to a single executable
# and individual tools are symbolic links to that binary
DC= # D compiler to use, default will try to pick between dmd and ldc2
CC= # C compiler to use, default will try to pick between gcc and clang
Profiling
Profiling can be enabled in two way.
Buildin profiler
Enable the dmd build profiler with the PROFILE
environment.
make PROFILE=1 DC=dmd <target>
The result of the profile can be sorted and displayed with the tprofile
(onetool).
Profiling Valgrind
Valgrind profiler can be started with the VALGRIND
environment.
Run the unittest with valgrind and callgrind.
make VALGRIND=1 unittest
Any of the test/bdd target can be executed with the VALGRIND=1
.
Note. The result from the callgrind
viewed with Kcachegrind.
Overview
./documents/ # Development flow docs
./src/
/lib-* # Library source code
/bin-* # Executable source code
/fork-* # Vendor library compilation scripts and submodules
./bdd/ # behaviour driven tests
./tub/ # Build flow scripts
BDD-test tools
Maintainers
License
The files in this repository is distributed under the DECARD Services GmbH free and grant back license
unless otherwise specified.
The parts which are distributed under other licenses include, but are not limited to the
pbkdf2 module and the translated secp256k1 headers
- Registered by Tagion
- ~epoch_voting released 32 days ago
- tagion/tagion
- DECARD Services GmbH free and grant back license
- Copyright © 2023, decard
- Authors:
- Sub packages:
- tagion:hibon
- Dependencies:
- none
- Versions:
-
1.2.0 2024-Feb-20 1.2.0-rc 2024-Feb-12 1.1.1 2024-Jan-20 1.1.0 2024-Jan-12 1.0.5 2023-Dec-20 - Download Stats:
-
-
0 downloads today
-
0 downloads this week
-
0 downloads this month
-
11 downloads total
-
- Score:
- 0.8
- Short URL:
- tagion.dub.pm