casper-network / casper-network/casper-java-sdk

Ensure compatibility with Casper Type V3.0 changes

Open
#180 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
10
Forks
25
PR merge metrics
No merged PRs in 30d

Description

See: https://docs.google.com/document/d/1M5uux_Ry4HzaD46DL9q1vd-M_QSqpMrcxTjHh3NgfxU/edit

Casper Types v3.0.0 changes.
Added

Add new bytesrepr::Error::NotRepresentable error variant that represents values that are not representable by the serialization format.

Add new Key::Unbond key variant under which the new unbonding information (to support redelegation) is written.

Add new Key::ChainspecRegistry key variant under which the ChainspecRegistry is written.

Add new Key::ChecksumRegistry key variant under which a registry of checksums for a given block is written. There are two checksums in the registry, one for the execution results and the other for the approvals of all deploys in the block.

Add new StoredValue::Unbonding variant to support redelegating.

Add a new type WithdrawPurses which is meant to represent UnbondingPurses as they exist in current live networks.

Changed

Extend UnbondingPurse to take a new field new_validator which represents the validator to whom tokens will be re-delegated.

Increase DICTIONARY_ITEM_KEY_MAX_LENGTH to 128.

Change prefix of formatted string representation of ContractPackageHash from "contract-package-wasm" to "contract-package-". Parsing from the old format is still supported.

Apply #[non_exhaustive] to error enums.

Change Debug output of DeployHash to hex-encoded string rather than a list of integers.

Fixed

Fix some integer casts, where failure is now detected and reported via new error variant NotRepresentable.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Begin with the linked Casper Types v3.0.0 document and map each Added, Changed, and Fixed item to the Java SDK's corresponding types and serialization or error handling. The issue is complete only when all listed compatibility changes are supported and verified; the payload names no source files or tests, so repository exploration is required.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.