Skip to content

Conversation

junxzm1990
Copy link
Contributor

Description

How Has This Been Tested?

Key Areas to Review

Type of Change

  • New feature
  • Bug fix
  • Breaking change
  • Performance improvement
  • Refactoring
  • Dependency update
  • Documentation update
  • Tests

Which Components or Systems Does This Change Impact?

  • Validator Node
  • Full Node (API, Indexer, etc.)
  • Move/Aptos Virtual Machine
  • Aptos Framework
  • Aptos CLI/SDK
  • Developer Infrastructure
  • Move Compiler
  • Other (specify)

Checklist

  • I have read and followed the CONTRIBUTING doc
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I identified and added all stakeholders and component owners affected by this change as reviewers
  • I tested both happy and unhappy path of the functionality
  • I have made corresponding changes to the documentation

Copy link
Contributor Author

junxzm1990 commented Oct 3, 2025

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

This stack of pull requests is managed by Graphite. Learn more about stacking.

@junxzm1990 junxzm1990 force-pushed the jun/sint-restapi branch 2 times, most recently from dd22f32 to 98a4711 Compare October 3, 2025 21:16
@junxzm1990 junxzm1990 marked this pull request as ready for review October 3, 2025 21:17
@junxzm1990 junxzm1990 changed the title [Rest API] support for signed int [Rest API] [Txn Arg] support for signed int Oct 3, 2025
StateKeyWrapper,
U64,
U128
U128,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Curious why u256, u32 and u16 are not here?

I32 => "sint32".into(),
I64 => "sint64".into(),
I128 => "serde.Sint128".into(),
I256 => unimplemented!(),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this expected, why u156 is also unimplemented I wonder, can we move them to unsupported / not allowed branch? This looks weird as below we seem to allow i/u256s...

| MoveType::I128
| MoveType::I256 => {
//TODO()(#17645): support signed integers
unimplemented!("signed integers not yet supported");
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe make this unparsable for now so that it is not possible to panic here?

| MoveType::I128
| MoveType::I256 => {
//TODO()(#17645): support signed integers
unimplemented!("signed integers not yet supported");
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here, would None be enough?

U32,
#[serde(rename = "u256")]
U256,
// NOTE: Added in bytecode version v9, do not reorder!
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need this? This is legacy, it does not have function values either? The whole thing can be deleted but I think there are some dependencies somewhere...

U64 => Format::U64,
U128 => Format::U128,
U256 => Format::TypeName(U256_SERDE_NAME.to_string()),
I8 => Format::I8,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is build_normalized_type_layout used anywhere? I belive all that registry thing is just legacy code, I would vote to get rid of this instead 😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants