kujira is a blockchain built using Cosmos SDK and Tendermint and created with Ignite CLI.
Please refer to docs.kujira.app and join our Discord for guidance in getting set up.
kujira is a blockchain built using Cosmos SDK and Tendermint and created with Ignite CLI.
Please refer to docs.kujira.app and join our Discord for guidance in getting set up.
I took this https://github.com/ignite/cli/releases/download/nightly/ignite-nightly-linux-amd64.tar.gz
and started bulding
Your blockchain config version is v0 and the latest is v1. Would you like to upgrade your config file to v1?: y
Cosmos SDK's version is: stargate - v0.45.9
📦 Installing dependencies...
🛠 Building the blockchain...
cannot build app:
error while running command go build -o /home/mid2/go/bin/cored -mod readonly -ldflags -X github.com/cosmos/cosmos-sdk/version.Name=Core -X github.com/cosmos/cosmos-sdk/version.AppName=cored -X github.com/cosmos/cosmos-sdk/version.Version=0.6.3 -X github.com/cosmos/cosmos-sdk/version.Commit=51a0f5309d2ad7e1e19e5150ef8144872780567d -X github.com/Team-Kujira/core/cmd/cored/cmd.ChainID=harpoon-2 .: # github.com/cosmos/cosmos-sdk/store/iavl
/home/mid2/go/pkg/mod/github.com/cosmos/[email protected]/store/iavl/tree.go:10:11: cannot use (*immutableTree)(nil) (value of type *immutableTree) as type Tree in variable declaration:
*immutableTree does not implement Tree (wrong type for Get method)
have Get(key []byte) ([]byte, error)
want Get(key []byte) (index int64, value []byte)
/home/mid2/go/pkg/mod/github.com/cosmos/[email protected]/store/iavl/tree.go:11:11: cannot use (*iavl.MutableTree)(nil) (value of type *"github.com/cosmos/iavl".MutableTree) as type Tree in variable declaration:
*"github.com/cosmos/iavl".MutableTree does not implement Tree (wrong type for Get method)
have Get(key []byte) ([]byte, error)
want Get(key []byte) (index int64, value []byte)
/home/mid2/go/pkg/mod/github.com/cosmos/[email protected]/store/iavl/store.go:69:9: cannot use tree (variable of type *"github.com/cosmos/iavl".MutableTree) as type Tree in struct literal:
*"github.com/cosmos/iavl".MutableTree does not implement Tree (wrong type for Get method)
have Get(key []byte) ([]byte, error)
want Get(key []byte) (index int64, value []byte)
/home/mid2/go/pkg/mod/github.com/cosmos/[email protected]/store/iavl/store.go:81:9: cannot use tree (variable of type *"github.com/cosmos/iavl".MutableTree) as type Tree in struct literal:
*"github.com/cosmos/iavl".MutableTree does not implement Tree (wrong type for Get method)
have Get(key []byte) ([]byte, error)
want Get(key []byte) (index int64, value []byte)
/home/mid2/go/pkg/mod/github.com/cosmos/[email protected]/store/iavl/store.go:92:23: cannot use &immutableTree{…} (value of type *immutableTree) as type Tree in struct literal:
*immutableTree does not implement Tree (wrong type for Get method)
have Get(key []byte) ([]byte, error)
want Get(key []byte) (index int64, value []byte)
/home/mid2/go/pkg/mod/github.com/cosmos/[email protected]/store/iavl/store.go:101:9: cannot use &immutableTree{…} (value of type *immutableTree) as type Tree in struct literal:
*immutableTree does not implement Tree (wrong type for Get method)
have Get(key []byte) ([]byte, error)
want Get(key []byte) (index int64, value []byte)
/home/mid2/go/pkg/mod/github.com/cosmos/[email protected]/store/iavl/store.go:209:7: impossible type switch case: *immutableTree
st.tree (variable of type Tree) cannot have dynamic type *immutableTree (wrong type for Get method)
have Get(key []byte) ([]byte, error)
want Get(key []byte) (index int64, value []byte)
/home/mid2/go/pkg/mod/github.com/cosmos/[email protected]/store/iavl/store.go:211:7: impossible type switch case: *iavl.MutableTree
st.tree (variable of type Tree) cannot have dynamic type *"github.com/cosmos/iavl".MutableTree (wrong type for Get method)
have Get(key []byte) ([]byte, error)
want Get(key []byte) (index int64, value []byte)
/home/mid2/go/pkg/mod/github.com/cosmos/[email protected]/store/iavl/store.go:223:7: impossible type switch case: *immutableTree
st.tree (variable of type Tree) cannot have dynamic type *immutableTree (wrong type for Get method)
have Get(key []byte) ([]byte, error)
want Get(key []byte) (index int64, value []byte)
/home/mid2/go/pkg/mod/github.com/cosmos/[email protected]/store/iavl/store.go:225:7: impossible type switch case: *iavl.MutableTree
st.tree (variable of type Tree) cannot have dynamic type *"github.com/cosmos/iavl".MutableTree (wrong type for Get method)
have Get(key []byte) ([]byte, error)
want Get(key []byte) (index int64, value []byte)
/home/mid2/go/pkg/mod/github.com/cosmos/[email protected]/store/iavl/store.go:101:9: too many errors
: exit status 2
Waiting for a fix before retrying...
May be you can public own build?
I was exploring slashing events of Kujira lately and I came across something I'm not sure if it's a bug or a feature.
Also I'm not sure if it's more a Tendermint bug (fixed in more recent release) or Kujira specific.
At block 267445 there's a double signing slashing event on kujiravalcons1zrvl0kldjjuj9z996kak3sju08vyhj8tzy4e5s.
However the event is split in 2 while I'm expecting it to be merged as a single object.
This is what I get:
[
[
{
"key": "address",
"value": "kujiravalcons1zrvl0kldjjuj9z996kak3sju08vyhj8tzy4e5s"
},
{
"key": "power",
"value": "210899"
},
{
"key": "reason",
"value": "double_sign"
}
],
[
{
"key": "jailed",
"value": "kujiravalcons1zrvl0kldjjuj9z996kak3sju08vyhj8tzy4e5s"
}
]
]
And this is what I was expecting:
[
[
{
"key": "address",
"value": "kujiravalcons1zrvl0kldjjuj9z996kak3sju08vyhj8tzy4e5s"
},
{
"key": "power",
"value": "210899"
},
{
"key": "reason",
"value": "double_sign"
},
{
"key": "jailed",
"value": "kujiravalcons1zrvl0kldjjuj9z996kak3sju08vyhj8tzy4e5s"
}
]
]
I've shared below a snippet that I hope clarifies what I mean:
const rpcServer = "https://archive.kujira.network";
interface BlockEventAttribute {
key: string;
value: string;
}
interface BlockEvent {
type: string;
attributes: BlockEventAttribute[];
}
const decodeAttribute = (attribute: BlockEventAttribute) => {
const key = Buffer.from(attribute.key, "base64").toString("utf-8");
const value = Buffer.from(attribute.value, "base64").toString("utf-8");
return { key, value };
};
const decodeBlockEvent = (blockEvent: BlockEvent): Record<string, string>[] =>
blockEvent.attributes.map((attribute) => decodeAttribute(attribute));
const decodeBlockEvents = (blockEvents: BlockEvent[]) =>
blockEvents.map(decodeBlockEvent);
const getBlockResults = async (blockHeight: number) => {
const url = `${rpcServer}/block_results?height=${blockHeight}`;
const response = await fetch(url);
return response.json();
};
const getSlashingEvents = (beginBlockEvents: BlockEvent[]) =>
beginBlockEvents.filter((event) => event.type === "slash");
const main = async () => {
const blockHeight = 267445;
const blockResults = await getBlockResults(blockHeight);
const beginBlockEvents = blockResults.result.begin_block_events;
const slashingEvents = getSlashingEvents(beginBlockEvents);
const decodedBlockEvents = decodeBlockEvents(slashingEvents);
const decodedBlockEventsJson = JSON.stringify(decodedBlockEvents, null, 2);
console.log(decodedBlockEventsJson);
};
main().catch(console.error);
I tried to keep third party dependencies small.
Code is ran this way:
ts-node src/slash-event-bug.ts
And here is a screenshot of the run on the left and the code on the right.
Please fix LUNC Transfers
# Proposal to Whitelist Gelotto Developer Wallet
This proposal seeks to whitelist the developer wallet [kujira1jejp2q3end3sc8g2v535wmdfr4x766e4gxsgpx] for the Gelotto development team to allow deployment of smart contracts on the Kujira network without requiring a passing governance proposal for each deployment. Over time, Gelotto intends to deploy one or more of the following applications on Kujira:
## Planned Applications
### PampIT
A fair-launch platform for deploying tokens, trading these tokens, and automatic generation of liquidity pools for these tokens once certain conditions are met. PampIT is deployed on 3 chains and aims to be the interchain token hub. We are live on Injective, Stars, and Osmosis. If you want to try it out:
- [PampIT on Injective](http://pampit.fun) - $INJ
- [PampIT on Osmosis](http://osmo.pampit.fun) - $OSMO
- [PampIT on Stars](http://stars.pampit.fun) - $STARS
PampIT will integrate with Kujira's native DEX and other native applications, leveraging the platform to enhance its capabilities and offer seamless interoperability.
### Gelotto Threads
An on-chain communication platform that allows batched interactions and tipping functionality, with future plans to expand the types of content and embedded applications that may be posted.
### Staking-as-the-House
A staking hub and yield-generation platform for Gelotto’s native GLTO token, through which stakers receive a portion of the revenue from various Gelotto games, while the staked tokens serve as the source of liquidity that pays winnings for the games.
### Gelotto Games
Various Gelotto games that interface with Staking-as-the-house. See [Gelotto](https://gelotto.io) for examples of such games.
Each of these deployments will require multiple smart contracts. Reliance on governance proposals to upload each individual contract creates a burden both on development and on the Kujira governance system. The first Dapp to be deployed on Kujira by the Gelotto team will be PampIT.
## Voting
- **A vote of Yes** indicates agreement to whitelist the Gelotto developer wallet and permit deployment of smart contracts on the Kujira network without requiring a passing governance proposal for each contract.
- **A vote of No** indicates disagreement with the above and a preference that the status quo of requiring a passing governance proposal for each contract deployment is maintained.
## Background
Gelotto ([Gelotto](https://gelotto.io)) is a Web3 decentralized software company that focuses primarily on the development of cryptocurrency-based games of chance, as well as more generally-useful tooling for managing games, smart contracts, user accounts, access control lists, spam and bot detection and deterrence, on-chain communication, token deployment, distribution of tokens to holders of various assets, and more. Much of this tooling was developed in support of Gelotto’s games of chance, but is also generally applicable for a variety of other purposes.
In addition to its gaming platform, Gelotto has released numerous NFT collections, with NFT ownership granting holders access to various community features and events, and has developed associated tooling for batched distribution of rewards to NFT holders.
Gelotto also operates validators on 15 networks across the Cosmos/IBC ecosystem, including the Kujira network.
Advanced options are unavailable, or so stated in Sonar, when restoring from private key option is selected. Stage 3 is to secure the wallet with a biometric option (fingerprint) and it proceeding is not an option, only going back.
Opening advanced options, however, shows a PIN instead option.
This is a clear contradiction, and seems to be in error.
Would be able to set a password or other option.
Was not able to proceed with wallet creation and unsure what to do next.
Users from struggling regions have increased friction and cost of adoption
The Cosmos SDK team has notified the community that a high-severity security issue patch will be released on June 8th, 16:00UTC. I am contacting you because your network is running an impacted version of the Cosmos SDK and to give advanced notice to prepare for security patch coordination. The patch can be applied without a consensus upgrade and will require at least 33.3% of the validators to update their nodes as quickly as possible to protect the network from exploitation.
When the Cosmos SDK patch is available, it is the responsibility of each network to validate it as quickly as possible, have a security release for the network binary as soon as possible, and coordinate with the network validators to upgrade their nodes as early as possible.
I am contacting you here because there was no e-mail address listed in the SECURITY.MD file for the repository or the SECURITY.MD file is missing. Please populate a SECURITY.MD file with the relevant information for subsequent reach-outs regarding security updates.
You can find more information on the link above.
Hi,
I was trying to follow this tutorial but the make install
step fails with the following error and no binaries being generated:
➜ core git:(master) make install
go install -tags "netgo ledger" -ldflags '-X github.com/cosmos/cosmos-sdk/version.Name=kujira -X github.com/cosmos/cosmos-sdk/version.ServerName=kujirad -X github.com/cosmos/cosmos-sdk/version.Version=0.9.1-1-g5549501 -X github.com/cosmos/cosmos-sdk/version.Commit=554950147825e94fa52c3ff0a3b138568cf7c774 -X "github.com/cosmos/cosmos-sdk/version.BuildTags=netgo,ledger"' ./cmd/kujirad
# github.com/Team-Kujira/core/cmd/kujirad
ld: warning: '/private/var/folders/nh/78bdkps97rv6pdws74j1xy0w0000gn/T/go-link-1563688512/go.o' has malformed LC_DYSYMTAB, expected 133 undefined symbols to start at index 108006, found 251 undefined symbols starting at index 135
macOS: 14.2.1
go version: go1.20.6 darwin/arm64
Based on #61229 I suspect it has to do something with the apple linker. Any suggestion appreciated.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.