katana

module
v0.0.0-...-5d8d101 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 11, 2022 License: Apache-2.0

README

Logo!

GoDoc Go Report Card Version Lines Of Code GitHub Super-Linter

A Golang implementation of the Katana network, a decentralized universal capital facility in the Cosmos ecosystem.

Katana is a Universal Capital Facility that can collateralize assets on one blockchain towards borrowing assets on another blockchain. The platform specializes in allowing staked assets from PoS blockchains to be used as collateral for borrowing across blockchains. The platform uses a combination of algorithmically determined interest rates based on market driven conditions. As a cross chain DeFi protocol, Katana will allow a multitude of decentralized debt products.

Table of Contents

Releases

See Release procedure for more information about the release model.

Since katanad v3.2 there is a new runtime dependency: libwasmvm.x86_64.so v1.1.1 is required. Building from source will automatically link the libwasmvm.x86_64.so created as a part of the build process (you must build on same host as you run the binary, or copy the libwasmvm.x86_64.so your lib directory).

Release Compatibility Matrix

Katana Version Mainnet Experimental Cosmos SDK IBC Peggo Price Feeder Gravity Bridge
v0.8.x v0.45.x v2.0.x v0.2.x v0.1.x
v1.x.x v0.45.x v2.0.x v0.2.x N/A katana/v1 module/v1.4.x-katana
v2.x.x v0.45.x v2.3.x v0.2.x v0.2.x katana/v2 module/v1.4.x
v3.0-1.x v0.46.x v5.0.x v1.3.x+ v1.0.x katana/v3 module/v1.5.x-katana
v3.2.x v0.46.6+ v5.0.x v1.3.x+ v2.0.x katana/v3 v1.5.3-katana-3

Active Networks

Public

Install

To install the katanad binary:

$ make install

Swagger

  • To enable it, modify the node config at $KATANA_HOME/config/app.toml to api.swagger true
  • Run the node normally katanad start
  • Enter the swagger docs http://localhost:1317/swagger/

Cosmovisor

Docs Note: cosmovisor only works for upgrades in the katanad, for off-chain processes updates like peggo or price-feeder, manual steps are required.

  • cosmovisor is a small process manager for Cosmos SDK application binaries that monitors the governance module for incoming chain upgrade proposals. If it sees a proposal that gets approved, cosmovisor can automatically download the new binary, stop the current binary, switch from the old binary to the new one, and finally restart the node with the new binary.

  • Install it with go

go install cosmossdk.io/tools/cosmovisor/cmd/cosmovisor@latest
  • For the usual use of cosmovisor, we recomend setting theses env variables
export DAEMON_NAME=katanad
export DAEMON_HOME={NODE_HOME}
export DAEMON_RESTART_AFTER_UPGRADE=true
export DAEMON_ALLOW_DOWNLOAD_BINARIES=true
export DAEMON_PREUPGRADE_MAX_RETRIES=3
  • If you didn't build binary from source in the machine, you have to download the respective libwasmvm into your machine.
$ wget https://raw.githubusercontent.com/CosmWasm/wasmvm/v1.1.1/internal/api/libwasmvm.$(uname -m).so -O /lib/libwasmvm.$(uname -m).so
  • To use cosmovisor for starting katanad process, instead of calling katanad start, use cosmovisor run start [katanad flags]

Directories

Path Synopsis
app
cmd
tests
e2e
package e2e defines an integration testing suite used for full end-to-end testing functionality.
package e2e defines an integration testing suite used for full end-to-end testing functionality.
checkers
Package checkers provides functions and structures to verify common types and aggregate errors.
Package checkers provides functions and structures to verify common types and aggregate errors.
cli
genmap
Package genmap provides generic functions for manipulating maps.
Package genmap provides generic functions for manipulating maps.
sim
x
incentive
Package incentive is a reverse proxy.
Package incentive is a reverse proxy.
leverage/fixtures
Package fixtures provides test data for tests
Package fixtures provides test data for tests
leverage/types
Package types is a reverse proxy.
Package types is a reverse proxy.
oracle/types
Package types is a reverse proxy.
Package types is a reverse proxy.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL