-
Notifications
You must be signed in to change notification settings - Fork 9
Open
Description
What happened?
When using the SDK against a Casper v2.x node (e.g. CSPR.cloud testnet /rpc) and running the functional tests, several runtime errors occur because the SDK assumes v1 response shapes. Examples seen during vendor/bin/phpunit -c phpunit.xml:
Undefined array keyfor fields that are optional or renamed in v2 (last_added_block_info,available_block_ranges,public_key,kind, etc.).- Serializers fail on v2 payloads (
TransformSerializer,DelegatorSerializer,InitiatorAddrSerializer). RpcResponse::fromArray()receivesnullwhen the HTTP response isn’t valid JSON (e.g. node returns non‑JSON or error string), causing aTypeError.- PHP 8.4 deprecation warnings for implicitly nullable parameters (e.g. in
RpcError,SpeculativeClient,SessionTarget,Secp256K1Key,DeployParams,DeployExecutable, etc.).
These issues cause tests to error out and break SDK usage with Casper 2.0 endpoints.
What did you expect to happen?
- The SDK should handle Casper v2 response variations gracefully (missing/renamed keys) without fatal errors.
- Serializers should accept the v2 payload formats (e.g.
transform/valuevskind, delegator key variants). - Invalid or non‑JSON RPC responses should be reported as a clean error, not crash on
null. - No PHP 8.4 deprecation warnings for implicit nullable parameters.
Are you willing to submit a pull request to fix this bug?
Yes.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels