Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: handle inputs and ouputs #228

Merged
merged 62 commits into from
Aug 22, 2023

Conversation

JeremyPansier
Copy link
Member

@JeremyPansier JeremyPansier commented Apr 21, 2023

Checklist:

  • The code follows our code conventions.
  • Important principle changes have been documented in the wiki.
  • The new code is covered by unit tests with assertions.
  • The behaviour node and UI have been manually tested and is as expected.
  • The squash commit message follows our conventions.

@sonarcloud
Copy link

sonarcloud bot commented Aug 22, 2023

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 7 Code Smells

80.8% 80.8% Coverage
0.0% 0.0% Duplication

@JeremyPansier JeremyPansier merged commit e8df1bc into release/4.0.0 Aug 22, 2023
8 checks passed
@JeremyPansier JeremyPansier deleted the 221-handle-inputs-and-ouputs branch August 22, 2023 17:04
JeremyPansier added a commit that referenced this pull request Sep 15, 2023
BREAKING CHANGE: Node and UI APIs have changed.
1. Both Node and UI
* Added:
  - The data structure for input:
  Input {
    OutputIndex   uint16
    TransactionId string
    PublicKey     string
    Signature     string
  }
  - The data structure for output:
  Output {
    Address   string
    HasReward bool
    HasIncome bool
    Value     uint64
  }
* Modified:
  - The transaction data structure for response was:
  TransactionResponse {
    RecipientAddress string
    SenderAddress    string
    SenderPublicKey  string
    Signature        string
    Timestamp        int64
    Value            uint64
    Fee              uint64
  }
  - The transaction data structure for response is:
  TransactionResponse {
    Id        string
    Inputs    []*InputResponse
    Outputs   []*OutputResponse
    Timestamp int64
  }
2. Node
* Added:
  - Endpoint: Get block
  - Endpoint: Get UTXOs
* Removed:
  - Endpoint: Get amount
* Modified:
  - The data structure for target request was:
  TargetRequest {
    Ip   string
    Port uint16
  }
  - The data structure for target request is:
  TargetRequest {
    Ip   string
  }
  - The data structure for transaction request was:
  TransactionRequest {
    Fee                          uint64
    RecipientAddress             string
    SenderAddress                string
    SenderPublicKey              string
    Signature                    string
    Timestamp                    int64
    TransactionBroadcasterTarget string
    Value                        uint64
  }
  - The data structure for transaction request is:
  TransactionRequest {
    Inputs                       []InputRequest
    Outputs                      []OutputRequest
    Timestamp                    int64
    TransactionBroadcasterTarget string
  }
3. UI
* Added:
  - Endpoint: GET transaction/info
* Modified:
  - The data structure for transaction request was:
  TransactionRequest {
    Fee                          uint64
    RecipientAddress             string
    SenderAddress                string
    SenderPublicKey              string
    Signature                    string
    Timestamp                    int64
    Value                        uint64
  }
  - The data structure for transaction request is:
  TransactionRequest {
    Inputs    []InputRequest
    Outputs   []OutputRequest
    Timestamp int64
  }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant