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

ci(changesets): versioning packages - v0.92.0 @ master #2696

Merged
merged 2 commits into from
Jul 11, 2024

Conversation

fuel-service-user
Copy link
Contributor

@fuel-service-user fuel-service-user commented Jul 4, 2024

Summary

In this release, we:

  • Made the contract's call method a non-blocking call
  • Made the contract's deployContract method a non-blocking call
  • Added pagination support to Provider and Account classes
  • Added support for multiple new connectors in the create fuels template
  • Upgraded fuel-core to v0.31.0
  • Upgraded sway/forc to v0.61.2

Breaking


Features

Fixes

Chores


Migration Notes

Features

#2692 - Implement non-blocking contract call

The call method in the BaseInvocationScope class no longer waits for transaction execution, making it non-blocking. This change affects how transaction responses are handled.

// before
const { logs, value, transactionResult } = await contract.functions.xyz().call()
// after
const { transactionId, waitForResult } = await contract.functions.xyz().call();

const { logs, value, transactionResult } = await waitForResult();

#2597 - Made deployContract a non-blocking call

The deployContract method no longer returns the contract instance directly. Instead, it returns an object containing the transactionId , the contractId, and a waitForResult function.

// before
const factory = new ContractFactory(contractByteCode, contractAbi, wallet);

const contract = await factory.deployContract();

const { value } = await contract.functions.xyz().call();
// after
const factory = new ContractFactory(contractByteCode, contractAbi, wallet);

const { waitForResult, transactionId, contractId } = await factory.deployContract();

const { contract, transactionResult } = await waitForResult();

const { value } = await contract.functions.xyz().call();

#2408 - Implement pagination for Account methods

// before
const coins = await myWallet.getCoins(baseAssetId); 
const messages = await myWallet.getMessages();
const balances = await myWallet.getBalances();
const blocks = await provider.getBlocks();

// after
const { coins, pageInfo } = await myWallet.getCoins(baseAssetId); 
const { messages, pageInfo } = await myWallet.getMessages();
const { balances } = await myWallet.getBalances();
const { blocks, pageInfo } = await provider.getBlocks();

/*
The `pageInfo` object contains cursor pagination information one
can use to fetch subsequent pages selectively and on demand.
*/

Fixes

#2718 - launchNode.cleanup not killing node in last test of test group

The killNode and KillNodeParams functionality has been internalized and the method and interface have been deleted so they're no longer exported. It's marked as a breaking change for pedantic reasons and there shouldn't really be any affected users given that they kill nodes via cleanup which is unchanged, so no migration notes are necessary.

Chores

#2652 - Remove InvocationResult from program package

The classes FunctionInvocationResult, InvocationCallResult, and InvocationResult have been removed. This change will not affect most users as the response for a contract call or script call remains the same; only the type name has changed.

// before
const callResult: FunctionInvocationResult = await contract.functions.xyz().call()

const dryRunResult: InvocationCallResult = await contract.functions.xyz().get()
const dryRunResult: InvocationCallResult = await contract.functions.xyz().dryRun()
const dryRunResult: InvocationCallResult = await contract.functions.xyz().simulate()


// after
const callResult: FunctionResult = await contract.functions.xyz().call()

const dryRunResult: DryRunResult = await contract.functions.xyz().get()
const dryRunResult: DryRunResult = await contract.functions.xyz().dryRun()
const dryRunResult: DryRunResult = await contract.functions.xyz().simulate()

@fuel-service-user fuel-service-user force-pushed the changeset-release/master branch 5 times, most recently from aa7d37d to 04ba887 Compare July 5, 2024 11:19
@fuel-service-user fuel-service-user changed the title ci(changesets): versioning packages - v0.91.1 @ master ci(changesets): versioning packages - v0.92.0 @ master Jul 5, 2024
@fuel-service-user fuel-service-user force-pushed the changeset-release/master branch 16 times, most recently from 3379857 to a9a1c31 Compare July 10, 2024 14:51
@fuel-service-user fuel-service-user force-pushed the changeset-release/master branch 5 times, most recently from 473ce44 to 404b6e1 Compare July 10, 2024 19:44
arboleya
arboleya previously approved these changes Jul 11, 2024
Copy link
Contributor

Coverage Report:

Lines Branches Functions Statements
79.41%(+0%) 71.65%(-0.02%) 77.3%(+0.27%) 79.54%(+0.06%)
Changed Files:
Ok File (✨=New File) Lines Branches Functions Statements
🔴 packages/account/src/test-utils/launchNode.ts 98.26%
(-1.74%)
84.74%
(-1.22%)
100%
(+21.43%)
98.34%
(+3.43%)

@arboleya arboleya merged commit 77e910f into master Jul 11, 2024
22 of 24 checks passed
@arboleya arboleya deleted the changeset-release/master branch July 11, 2024 11:08
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.

None yet

4 participants