66 lines
2.8 KiB
Markdown
66 lines
2.8 KiB
Markdown
# Changelog — nu-cli
|
||
|
||
All notable changes to this project will be documented in this file.
|
||
Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/)
|
||
|
||
---
|
||
|
||
## [Unreleased]
|
||
|
||
## [0.6.0] — 2026-04-25
|
||
|
||
### Added
|
||
- `nu genesis init --chain-id <id> --dev-wallet <addr> --burn-wallet <addr>`: genesis.json template üretir
|
||
- `nu genesis info`: çalışan node'dan genesis root node'u gösterir
|
||
|
||
### Changed
|
||
- `genesis init` çıktısı TOML'dan JSON'a geçti; nu-node `genesis.json` formatıyla uyumlu
|
||
|
||
## [0.5.0] — 2026-04-24
|
||
|
||
### Added
|
||
- `nu nft transfer --nft-id <id> --to <addr>`: imzalı NftTransfer tx gönderir
|
||
- `nu nft claim --nft-ids 0,1,11,115`: virgülle ayrılmış lineage path ile CollectionClaim tx gönderir
|
||
|
||
## [0.4.0] — 2026-04-24
|
||
|
||
### Added
|
||
- `nu wallet send --to <addr> --amount <shell>`: k256 imzalı TokenTransfer tx gönderir
|
||
- `nu story submit`: NodeSubmit tx; UUID temp_id üretir, entry_fee=25_000 Shell
|
||
- `nu story register`: VoteRegister tx; stake_lock=10_000 Shell
|
||
- `nu story vote --node-id <id> --approve <bool>`: VoteCast tx gönderir
|
||
- `nu node stake / unstake`: StakeOp tx gönderir
|
||
- `nu node register --stake <amount>`: ValidatorRegister tx gönderir
|
||
- Tüm tx-gönderme komutlarında: keystore'dan key yükle → nonce'ı RPC'den al → SHA-256(payload) imzala → nu_sendRawTx
|
||
|
||
## [0.3.0] — 2026-04-24
|
||
|
||
### Added
|
||
- `src/keystore.rs` — AES-256-GCM + Argon2id şifreleme; `save_encrypted` / `load_encrypted` / `prompt_password`
|
||
- `nu wallet new`: şifre ister (confirm), private key şifreli JSON olarak `~/.nu/keystore/<label>.key`'e yazar
|
||
- `nu wallet address`: şifre ister, decrypt edip compressed public key basar
|
||
|
||
### Changed
|
||
- Keystore formatı plaintext hex'ten JSON (`argon2_hash` + `nonce_hex` + `ciphertext_hex`) formatına geçti
|
||
- Eski `.key` dosyaları yeni format ile uyumsuz — `wallet new` ile yeniden oluşturulmalı
|
||
|
||
## [0.2.0] — 2026-04-24
|
||
|
||
### Added
|
||
- `nu node block <height>` — calls `nu_getBlock`, prints null if not found
|
||
- `nu node account <address>` — calls `nu_getAccount`, displays balance in Shell and NU
|
||
- `nu story show/node/list/pending` — wired to RPC (`nu_getStory`, `nu_getNode`, `nu_listStories`, `nu_listPendingVotes`)
|
||
- `clap env` feature — `NU_RPC_URL` env variable support
|
||
|
||
### Changed
|
||
- `rpc::Client` params changed from object to **positional array** — matches nu-node sözleşmesi
|
||
- `rpc::Client::new` auto-appends `/rpc` path suffix
|
||
|
||
## [0.1.0] — 2026-04-24
|
||
|
||
### Added
|
||
- `nu wallet new [--label <name>]` — generates secp256k1 keypair, stores private key
|
||
as hex in `~/.nu/keystore/<label>.key` (plaintext in Faz 0; encrypted in Faz 1)
|
||
- `nu wallet list` — lists all keys in `~/.nu/keystore/`
|
||
- clap CLI scaffold with subcommand structure (`wallet`, `node`, `story` stubs)
|
||
- `src/commands/wallet.rs` — keygen via k256 crate
|