Skip to content

Commit

Permalink
Merge branch 'development' into messaging-simplify-perf-reliability
Browse files Browse the repository at this point in the history
* development:
  chore: rename substate/shard related identifiers (#903)
  chore: add prettier settings and format all code (#900)
  • Loading branch information
sdbondi committed Jan 19, 2024
2 parents eac1d27 + 87dc2cb commit 6bf6e11
Show file tree
Hide file tree
Showing 345 changed files with 6,148 additions and 10,216 deletions.
35 changes: 25 additions & 10 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
name: CI

'on':
"on":
workflow_dispatch:
push:
branches:
Expand All @@ -26,7 +26,7 @@ env:
jobs:
fmt:
name: fmt
runs-on: [ self-hosted, ubuntu-high-cpu ]
runs-on: [self-hosted, ubuntu-high-cpu]

steps:
- name: checkout
Expand All @@ -48,10 +48,25 @@ jobs:

- name: cargo format
run: cargo +${{ env.nightly_toolchain }} fmt --all -- --check
prettier:
name: prettier
runs-on: [self-hosted, ubuntu-high-cpu]

steps:
- name: checkout
uses: actions/checkout@v4

- name: install
run: |
npm install [email protected]
- name: prettier
run: |
npx prettier --check "./**/*.{ts,tsx,css,json}"
clippy:
name: clippy
runs-on: [ self-hosted, ubuntu-high-cpu ]
runs-on: [self-hosted, ubuntu-high-cpu]

steps:
- name: checkout
Expand Down Expand Up @@ -106,7 +121,7 @@ jobs:
build:
name: check nightly
runs-on: [ self-hosted, ubuntu-high-cpu ]
runs-on: [self-hosted, ubuntu-high-cpu]

steps:
- name: checkout
Expand All @@ -132,7 +147,7 @@ jobs:

build-stable:
name: check stable
runs-on: [ self-hosted, ubuntu-high-cpu ]
runs-on: [self-hosted, ubuntu-high-cpu]

steps:
- name: checkout
Expand Down Expand Up @@ -181,7 +196,7 @@ jobs:

test:
name: test
runs-on: [ self-hosted, ubuntu-high-cpu ]
runs-on: [self-hosted, ubuntu-high-cpu]

steps:
- name: checkout
Expand Down Expand Up @@ -212,7 +227,7 @@ jobs:
run: cargo nextest run --all-features --release -E "not package(integration_tests)" --profile ci

- name: upload artifact
uses: actions/upload-artifact@v4 # upload test results as artifact
uses: actions/upload-artifact@v4 # upload test results as artifact
if: success() || failure()
with:
name: test-results
Expand All @@ -222,11 +237,11 @@ jobs:
run: cargo test --all-features --release --package integration_tests

- name: upload test result artifact
uses: actions/upload-artifact@v4 # upload test results as artifact
uses: actions/upload-artifact@v4 # upload test results as artifact
if: success() || failure()
with:
name: cucumber-test-results
path: ${{ github.workspace }}/integration_tests/cucumber-output-junit.xml
name: cucumber-test-results
path: ${{ github.workspace }}/integration_tests/cucumber-output-junit.xml

- name: Upload cucumber log artifacts
uses: actions/upload-artifact@v4
Expand Down
12 changes: 12 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"printWidth": 120,
"tabWidth": 2,
"useTabs": false,
"semi": true,
"singleQuote": false,
"trailingComma": "all",
"bracketSpacing": true,
"bracketSameLine": false,
"arrowParens": "always",
"endOfLine": "lf"
}
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
# HTTP UI listener address (default = "127.0.0.1:15000")
#http_ui_address = "127.0.0.1:15000"

# Substate addresses to keep watching
# Substate ids to keep watching
#address_watchlist=[]

# How often do we want to scan the dan layer for change. (default = 10)
Expand Down
6 changes: 3 additions & 3 deletions applications/tari_dan_app_utilities/src/base_layer_scanner.rs
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ use tari_dan_storage::{
use tari_dan_storage_sqlite::{error::SqliteStorageError, global::SqliteGlobalDbAdapter};
use tari_engine_types::{
confidential::UnclaimedConfidentialOutput,
substate::{SubstateAddress, SubstateValue},
substate::{SubstateId, SubstateValue},
};
use tari_epoch_manager::{base_layer::EpochManagerHandle, EpochManagerError};
use tari_shutdown::ShutdownSignal;
Expand Down Expand Up @@ -362,7 +362,7 @@ impl<TAddr: NodeAddressable + 'static> BaseLayerScanner<TAddr> {
}

async fn register_burnt_utxo(&mut self, output: &TransactionOutput) -> Result<(), BaseLayerScannerError> {
let address = SubstateAddress::UnclaimedConfidentialOutput(
let substate_id = SubstateId::UnclaimedConfidentialOutput(
UnclaimedConfidentialOutputAddress::try_from_commitment(output.commitment.as_bytes()).map_err(|e|
// Technically impossible, but anyway
BaseLayerScannerError::InvalidSideChainUtxoResponse(format!("Invalid commitment: {}", e)))?,
Expand All @@ -378,7 +378,7 @@ impl<TAddr: NodeAddressable + 'static> BaseLayerScanner<TAddr> {

// TODO: This should be proposed in a block...
SubstateRecord {
address,
substate_id,
version: 0,
substate_value: substate,
state_hash: Default::default(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use std::{sync::Arc, time::Instant};
use log::*;
use tari_common_types::types::PublicKey;
use tari_crypto::tari_utilities::ByteArray;
use tari_dan_common_types::{services::template_provider::TemplateProvider, ShardId};
use tari_dan_common_types::{services::template_provider::TemplateProvider, SubstateAddress};
use tari_dan_engine::{
fees::{FeeModule, FeeTable},
runtime::{AuthParams, RuntimeModule, VirtualSubstates},
Expand Down Expand Up @@ -90,7 +90,7 @@ where TTemplateProvider: TemplateProvider<Template = LoadedTemplate>
.accept()
.map(|diff| {
diff.up_iter()
.map(|(addr, substate)| ShardId::from_address(addr, substate.version()))
.map(|(addr, substate)| SubstateAddress::from_address(addr, substate.version()))
.collect::<Vec<_>>()
})
.unwrap_or_default();
Expand Down
2 changes: 1 addition & 1 deletion applications/tari_dan_wallet_cli/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ tari_template_lib = { workspace = true }
tari_transaction = { workspace = true }
tari_transaction_manifest = { workspace = true }
tari_bor = { workspace = true, default-features = true }
# Needed for VersionedSubstateAddress
# Needed for VersionedSubstateId
tari_dan_wallet_sdk = { workspace = true }

anyhow = { workspace = true }
Expand Down
58 changes: 32 additions & 26 deletions applications/tari_dan_wallet_cli/src/command/transaction.rs
Original file line number Diff line number Diff line change
Expand Up @@ -34,14 +34,14 @@ use anyhow::anyhow;
use clap::{Args, Subcommand};
use tari_bor::decode_exact;
use tari_common_types::types::PublicKey;
use tari_dan_common_types::{Epoch, ShardId};
use tari_dan_common_types::{Epoch, SubstateAddress};
use tari_dan_engine::abi::Type;
use tari_engine_types::{
commit_result::{FinalizeResult, RejectReason, TransactionResult},
instruction::Instruction,
instruction_result::InstructionResult,
parse_template_address,
substate::{SubstateAddress, SubstateDiff, SubstateValue},
substate::{SubstateDiff, SubstateId, SubstateValue},
TemplateAddress,
};
use tari_template_lib::{
Expand Down Expand Up @@ -162,7 +162,7 @@ pub enum CliInstruction {
args: Vec<CliArg>,
},
CallMethod {
component_address: SubstateAddress,
component_address: SubstateId,
method_name: String,
#[clap(long, short = 'a')]
args: Vec<CliArg>,
Expand Down Expand Up @@ -389,7 +389,7 @@ pub async fn submit_transaction(
println!();
println!("✅ Transaction {} submitted.", resp.transaction_id);
println!();
// TODO: Would be great if we could display the Substate addresses as well as shard ids
// TODO: Would be great if we could display the substate ids as well as substate addresses
summarize_request(&request, &resp.inputs);

println!();
Expand Down Expand Up @@ -421,8 +421,8 @@ fn summarize_request(request: &TransactionSubmitRequest, inputs: &[SubstateRequi
if inputs.is_empty() {
println!(" None");
} else {
for shard_id in inputs {
println!("- {}", shard_id);
for address in inputs {
println!("- {}", address);
}
}
println!();
Expand Down Expand Up @@ -469,7 +469,10 @@ fn summarize(resp: &TransactionWaitResultResponse, time_taken: Duration) {
pub fn print_substate_diff(diff: &SubstateDiff) {
for (address, substate) in diff.up_iter() {
println!("️🌲 UP substate {} (v{})", address, substate.version(),);
println!(" 🧩 Shard: {}", ShardId::from_address(address, substate.version()));
println!(
" 🧩 Substate address: {}",
SubstateAddress::from_address(address, substate.version())
);
match substate.substate_value() {
SubstateValue::Component(component) => {
println!(" ▶ component ({}): {}", component.module_name, address,);
Expand All @@ -490,7 +493,7 @@ pub fn print_substate_diff(diff: &SubstateDiff) {
println!(" ▶ Layer 1 commitment: {}", address);
},
SubstateValue::NonFungibleIndex(index) => {
let referenced_address = SubstateAddress::from(index.referenced_address().clone());
let referenced_address = SubstateId::from(index.referenced_address().clone());
println!(" ▶ NFT index {} referencing {}", address, referenced_address);
},
SubstateValue::FeeClaim(fee_claim) => {
Expand All @@ -506,7 +509,10 @@ pub fn print_substate_diff(diff: &SubstateDiff) {
}
for (address, version) in diff.down_iter() {
println!("🗑️ DOWN substate {} v{}", address, version,);
println!(" 🧩 Shard: {}", ShardId::from_address(address, *version));
println!(
" 🧩 Substate address: {}",
SubstateAddress::from_address(address, *version)
);
println!();
}
}
Expand Down Expand Up @@ -701,7 +707,7 @@ pub enum CliArg {
Bool(bool),
Blob(tari_bor::Value),
NonFungibleId(NonFungibleId),
SubstateAddress(SubstateAddress),
SubstateId(SubstateId),
TemplateAddress(TemplateAddress),
}

Expand Down Expand Up @@ -742,8 +748,8 @@ impl FromStr for CliArg {
return Ok(CliArg::Bool(v));
}

if let Ok(v) = s.parse::<SubstateAddress>() {
return Ok(CliArg::SubstateAddress(v));
if let Ok(v) = s.parse::<SubstateId>() {
return Ok(CliArg::SubstateId(v));
}

if let Some(v) = parse_template_address(s.to_owned()) {
Expand Down Expand Up @@ -781,15 +787,15 @@ impl CliArg {
CliArg::I8(v) => arg!(v),
CliArg::Bool(v) => arg!(v),
CliArg::Blob(v) => Arg::literal(v).unwrap(),
CliArg::SubstateAddress(v) => match v {
SubstateAddress::Component(v) => arg!(v),
SubstateAddress::Resource(v) => arg!(v),
SubstateAddress::Vault(v) => arg!(v),
SubstateAddress::UnclaimedConfidentialOutput(v) => arg!(v),
SubstateAddress::NonFungible(v) => arg!(v),
SubstateAddress::NonFungibleIndex(v) => arg!(v),
SubstateAddress::TransactionReceipt(v) => arg!(v),
SubstateAddress::FeeClaim(v) => arg!(v),
CliArg::SubstateId(v) => match v {
SubstateId::Component(v) => arg!(v),
SubstateId::Resource(v) => arg!(v),
SubstateId::Vault(v) => arg!(v),
SubstateId::UnclaimedConfidentialOutput(v) => arg!(v),
SubstateId::NonFungible(v) => arg!(v),
SubstateId::NonFungibleIndex(v) => arg!(v),
SubstateId::TransactionReceipt(v) => arg!(v),
SubstateId::FeeClaim(v) => arg!(v),
},
CliArg::TemplateAddress(v) => arg!(v),
CliArg::NonFungibleId(v) => arg!(v),
Expand Down Expand Up @@ -825,8 +831,8 @@ pub struct SpecificNonFungibleMintOutput {
}

impl SpecificNonFungibleMintOutput {
pub fn to_substate_address(&self) -> SubstateAddress {
SubstateAddress::NonFungible(NonFungibleAddress::new(
pub fn to_substate_address(&self) -> SubstateId {
SubstateId::NonFungible(NonFungibleAddress::new(
self.resource_address,
self.non_fungible_id.clone(),
))
Expand All @@ -840,7 +846,7 @@ impl FromStr for SpecificNonFungibleMintOutput {
let (resource_address, non_fungible_id) = s
.split_once(',')
.ok_or_else(|| anyhow!("Expected resource address and non-fungible id"))?;
let resource_address = SubstateAddress::from_str(resource_address)?;
let resource_address = SubstateId::from_str(resource_address)?;
let resource_address = resource_address
.as_resource_address()
.ok_or_else(|| anyhow!("Expected resource address but got {}", resource_address))?;
Expand Down Expand Up @@ -868,7 +874,7 @@ impl FromStr for NewNonFungibleMintOutput {

fn from_str(s: &str) -> Result<Self, Self::Err> {
let (resource_address, count_str) = s.split_once(',').unwrap_or((s, "1"));
let resource_address = SubstateAddress::from_str(resource_address)?;
let resource_address = SubstateId::from_str(resource_address)?;
let resource_address = resource_address
.as_resource_address()
.ok_or_else(|| anyhow!("Expected resource address but got {}", resource_address))?;
Expand All @@ -890,7 +896,7 @@ impl FromStr for NewNonFungibleIndexOutput {

fn from_str(s: &str) -> Result<Self, Self::Err> {
let (parent_address, index_str) = s.split_once(',').unwrap_or((s, "0"));
let parent_address = SubstateAddress::from_str(parent_address)?;
let parent_address = SubstateId::from_str(parent_address)?;
let parent_address = parent_address
.as_resource_address()
.ok_or_else(|| anyhow!("Expected resource address but got {}", parent_address))?;
Expand Down
12 changes: 4 additions & 8 deletions applications/tari_dan_wallet_daemon/openrpc.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,23 +16,20 @@
{
"name": "keys/create",
"summary": "",
"tags": [
],
"tags": [],
"params": [],
"result": {
"name": "KeysCreateResponse",
"schema": {
"$ref": "#/components/schemas/KeysCreateResponse"
}
},
"errors": [
],
"errors": [],
"examples": [
{
"name": "default",
"description": "",
"params": [
],
"params": [],
"result": {
"name": "example1",
"value": {
Expand All @@ -45,8 +42,7 @@
}
],
"components": {
"contentDescriptors": {
},
"contentDescriptors": {},
"schemas": {
"KeysCreateResponse": {
"type": "object",
Expand Down
Loading

0 comments on commit 6bf6e11

Please sign in to comment.