docs: docs upgrade
This commit is contained in:
30
README.md
30
README.md
@@ -34,12 +34,11 @@ If you are interested in the main assumptions for Warp ecosystem as well as its
|
||||
- [VM2](#vm2)
|
||||
- [Internal writes](#internal-writes)
|
||||
- [UnsafeClient](#unsafeclient)
|
||||
- [Performance - best practices](#performance---best-practices)
|
||||
- [Examples](#examples)
|
||||
- [Migrations](#migrations)
|
||||
- [Old factories to WarpFactory](#old-factories-to-warpfactory)
|
||||
- [Sqlite to LevelDB](#sqlite-to-leveldb)
|
||||
- [Examples](#examples)
|
||||
- [Additional changes](#additional-changes)
|
||||
- [Warp transaction lifecycle](#warp-transaction-lifecycle)
|
||||
|
||||
## Development
|
||||
@@ -625,14 +624,31 @@ const result = await warp.migrationTool.migrateSqlite('./tools/sqlite/contracts-
|
||||
yarn ts-node -r tsconfig-paths/register tools/migrate.ts
|
||||
```
|
||||
|
||||
#### Additional changes
|
||||
1. the type of the result of the readState has changed: https://github.com/warp-contracts/warp#readstate
|
||||
|
||||
2. the `bundleInteraction` method has been removed. The SDK now decides automatically how the transaction should be posted (based on the environment - i.e. whether the warp instance has been created for mainnet, testnet or local env).
|
||||
|
||||
3. the internalWrite, if the write itself fails, now throws the `ContractError` by default. There's no longer need to manually check the result of the write inside the contract code (and throw error manually if result.type != 'ok').
|
||||
If you want to leave the check in the contract code - set the
|
||||
```
|
||||
.setEvaluationOptions({
|
||||
throwOnInternalWriteError: true
|
||||
});
|
||||
```
|
||||
|
||||
4. The warp instance now contains info about the environment - https://github.com/warp-contracts/warp#warpenvironment . This might be useful for writing deployment scripts, etc.
|
||||
5. if the `warp` instance was obtained via `WarpFactor.forLocal` (which should be used for local testing with ArLocal), then:
|
||||
|
||||
* you can use `warp.testing.generateWallet()` for generating the wallet - it returns both the jwk and wallet address - [example](https://github.com/warp-contracts/warp/blob/main/src/__tests__/integration/internal-writes/internal-write-depth.test.ts#L89).
|
||||
* you can use `warp.testing.mineBlock()` to manually mine ArLocal blocks
|
||||
* the ArLocal blocks are mined automatically after calling `.writeInteraction`. This can be switched off by setting `evaluationOptions.mineArLocalBlocks` to `false` - [example](https://github.com/warp-contracts/warp/blob/main/src/__tests__/integration/internal-writes/internal-write-depth.test.ts#L118).
|
||||
|
||||
### Examples
|
||||
|
||||
Usage examples can be found in
|
||||
a dedicated [repository](https://github.com/redstone-finance/redstone-smartweave-examples).
|
||||
Please follow instructions in its README.md (and detail-ish comments in the examples files) to learn more.
|
||||
There is also a separate repository with a web application [example](https://github.com/redstone-finance/redstone-smartcontracts-app).
|
||||
We've created an [academy](https://redstone.academy/) that introduces to the process of writing your own SmartWeave contract from scratch and describes how to interact with it using Warp SDK.
|
||||
|
||||
We've also created an [academy](https://redstone.academy/) that introduces to the process of writing your own SmartWeave contract from scratch and describes how to interact with it using Warp SDK.
|
||||
The example usages with different web bundlers and in Node.js env are available [here](https://github.com/warp-contracts/bundlers).
|
||||
|
||||
A community package - [arweave-jest-fuzzing](https://github.com/Hansa-Network/arweave-jest-fuzzing/blob/master/README.md) has been released thanks to Hansa Network to help SmartWeave developers write fuzzy tests.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user