From 498f10ea4648aa31247d90f6d327c3ea6e04833f Mon Sep 17 00:00:00 2001 From: Julian Martinez <73849597+Julian-dev28@users.noreply.github.com> Date: Wed, 20 Sep 2023 14:36:33 -0700 Subject: [PATCH] Update releases page (#566) * add release notes for preview 11 * update futurenet network passphrase * update soroban-cli version * Update releases.mdx * update formatting * add versions for Freighter and Lab * format releases page * update title for test net / future net * Updating the docker image hashes to the most recent `:testing` tag (#573) * update to rc2 where needed * Update releases.mdx * update changelog * update formatting * nit: rm periods * update Stellar Horizon --------- Co-authored-by: Piyal Basu Co-authored-by: Elliot Voris --- docs/reference/releases.mdx | 232 ++++++++++++++++++++++++++++++++++++ docs/reference/rpc.mdx | 8 +- 2 files changed, 236 insertions(+), 4 deletions(-) diff --git a/docs/reference/releases.mdx b/docs/reference/releases.mdx index 5bbca97c..82bbb864 100644 --- a/docs/reference/releases.mdx +++ b/docs/reference/releases.mdx @@ -16,6 +16,238 @@ Preview releases are software releases that are also released to the [Futurenet] [Futurenet]: futurenet +## Preview 11 (September 11, 2023): Testnet and Futurenet Edition + +### Software + +| Software | Version | +| ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | +| XDR | [9ac02641139e6717924fdad716f6e958d0168491](https://github.com/stellar/stellar-xdr/commit/9ac02641139e6717924fdad716f6e958d0168491) | +| Soroban Environment | `v20.0.0-rc2` | +| Soroban Interface Version | `57` | +| Stellar Core | `20.0.0-1504.rc2.22088c1f2.focal` | +| Soroban Rust SDK | `v20.0.0-rc2` | +| Soroban CLI | `v20.0.0-rc2` | +| Soroban RPC | `v20.0.0-rc2` | +| Stellar Horizon | `2.27.0~rc2-384` | +| Stellar Friendbot | `soroban-v0.0.2-alpha` | +| Stellar Quickstart | `stellar/quickstart:testing@sha256:1c98f895f8b69cc843eeaa5230d67044dbeb390a5529d51dd7762d8ff685c3f8` | +| Stellar JS Stellar Base | `10.0.0-beta.1` | +| Stellar JS Soroban Client | `v1.0.0-beta.2` | +| Freighter | `5.5.0` | +| Laboratory | `2.12.0` | +| Soroban React Payment dapp | `TBD` | +| Soroban Mint Token dapp | `TBD` | +| Futurenet Network Passphrase | `Test SDF Future Network ; October 2022` | + +### Changelog + +#### XDR + +- Generate for entry expired error +- Bump XDR +- Generate XDR DepthLimiter and depth-limited Read/WriteXdr +- Bump XDR +- Make SCError into a union to allow user errors to be u32 +- Update rust-version +- Bump XDR +- Bump XDR +- Bump XDR +- Regen to pick up ContractCostType changes +- Bump XDR +- Update to reflect removal of SCSpecTypeSet +- Bump XDR +- Take change from txSOROBAN_RESOURCE_LIMIT_EXCEEDED to txSOROBAN_INVALID +- Run CI via in merge queue +- Update rust-version +- Bump curr and next +- Bump XDR +- Bump version to 20.0.0-rc1 + +#### Soroban Environment + +- Attach the auth in recording mode to any valid tracker when possible +- Make RecordedAuthPayload consistently return None for invoker +- Expiration-related fixes +- Turn dynamic borrow panics into HostErrors +- Use Ed25519 verify_strict function rather than just verify, fix #857 +- Misc int32 issues +- Enforce object handle integrity when inserting into containers, fix #569 +- Add testcase for out-of-order scmaps, fix #223 +- Add a function to compute the rent fee +- Use host.err for auth error +- Add a smoke test for recording auth for create contract host fn +- Stop treating storage errors as missing entries +- Refactor authorization manager to only maintain mutable borrow on minimal amount of fields +- Bump xdr +- Add rent bumps to the SAC +- Add is_admin function +- Bump xdr +- Add function to compute the write fee based on the ledger size +- Prohibit using disjoint signatures to cover the auth tree +- Enforce DepthLimiter in the Host to avoid stack overflow +- Relative objects in wasm +- Adapt to ResourceLimiter, replacing mem_fuel metering +- Make del_contract_data no-op for removing non-existent instance storage key +- Add "tracy" feature to enable Tracy profiler, with some basic annotat… +- Update host to account for the XDR changes +- Update rust-version +- Adapt to SCError change to be an enum, with ContractError(u32) +- Make some host errors non-recoverable in try_call +- Fix panic-string-logging code path broken by recent dynamic-borrow fix +- Add soroban-bench-utils, add benchmark tests to measure metering accuracy +- Bump env xdr and do the fee library changes corresponding to config changes +- Bump env xdr +- Remove event topic limits +- Bump env xdr +- Unify/fix expiration bump logic in host +- Add new tests for error escalation from contract calls +- Add a helper that invokes a host function 'end-to-end' +- Add helpers for container bulk init; applies to auth metering +- Switch some auth errors from Internal to InvalidInput +- Enable post-MVP WASM ops (sign-ext and mutable-globals), fix #968 +- More token tests +- Alloc example +- Mop up some residual uses of format strings in errors (no longer supported) +- Add wasm for upgrade write-bytes contract +- Scale the linear cost model coefficient; improve model fitting +- Error if bumping past max_entry_expiration and and host function to retrieve max_entry_expiration +- Make has checks to properly populate the storage map in recording mode +- Clean up budget cost types +- Add debug events to storage error reporting +- Switch to stable rust-analyzer in CI +- Add some comments and tests to env-common/symbol.rs +- Upgrade dalek crates to new stable versions +- Add an option to return an error when encountering non-root auth in recording mode +- Reject env.json if there are duplicate export names, fix #189 +- Tighten signature of unchecked_visit_val_obj, fix #595 +- Tighten dependencies further +- Fix incorrect argument name +- Bump env xdr +- Tighten up Map and Vector and metering coverage +- Store dummy instance for test contracts +- Update XDR to take change that removes SCSpecTypeSet +- Fix comparison in Tag::is_object +- Fix calibration due to delak change +- Charge write fees for expiration entry bumps +- Reduce the expiration entry write size +- Refactor host to support the new expiration ledger approach +- Add lifetime threshold +- Enable build workflow for merge groups +- Remove key size from rent change computation +- Take change from txSOROBAN_RESOURCE_LIMIT_EXCEEDED to txSOROBAN_INVALID +- Add ExpirationEntry support +- Add git rev dep check to ci +- Fix encode contract events metering +- Trim deps +- Reject vals with invalid tags, fix #1029 +- Host: fix EXPIRATION_ENTRY_SIZE constant +- Avoid iloop externalizing diagnostics for invalid references +- Add "coverage" Makefile target for lcov.info, add a test that extends coverage +- Fix asset-code rendering in native contract +- Fix rent changes extraction bug +- Graydon code review +- Jay code review +- Bump xdr and use curr instead of next +- Trivial xdr bump +- Tighten wasm interface version checks, and do on upload, Fix #1052 +- Update wasmi to 0.31.0-soroban +- Bump version to 20.0.0-rc1 + +#### Soroban Rust SDK + +- Implement deployer functions that return the deployed contract id +- Add Vec::to_vals +- Expose PRNG functions +- Expose secp256k1 and keccak256 in the SDK +- Upgrade env to v20.0.0-rc2 +- Elaborate more in comment on PRNG strengths and weaknesses +- Bump version to 20.0.0-rc2 +- Token events +- Update rust-version +- Update SDK to recent env +- Add admin function +- fix: use uppercase const name +- Fix allocator +- Add Arbitrary impl for Duration and Timepoint +- Fix Budget::memory_bytes_cost +- Bump env to c5607a2e9e296b2636b46dc910387aa3446b3e29 +- Bump env +- Update dalek, remove non-syn2 exemptions, tighten deps +- Update map iterator to be index based +- Remove ScSpecTypeSet support, which was already mostly dead +- Provide a way to allow non-root auth in recording mode +- Update env version in SDK +- Update SDK to support expiration entry rework +- Bump env for bump interface changes +- Correct comment on String::copy_into_slice +- Add doc comments about why symbol_short! +- Add test vector for workspace setups where contract types live in a lib +- Update rust-version +- Enable build workflow for merge groups +- re-enable linux arm64 builds +- Fix/criadoperez +- Text corrections +- Update rust-version +- bump env +- Fix name of the Stellar Asset admin client +- Add git rev dep check to ci +- Remove authorized from standard token interface +- Bump env +- Adapt to removal of ConversionError from number type conversions +- Bump version to 20.0.0-rc1 + +#### Soroban RPC + +- List --network under RPC options +- Enforce enabling diagnostics events +- simulateTransaction will automatically detect ledger entries which require restoring +- simulateTransaction will try to return diagnostic events on failure +- getLedgerEntries can query multiple ledger entries at once +- getLedgerEntries can set the maximum number of keys to query for +- Temporary ledger entry evictions are ingested +- Support StrKey format for contractIds field in getEvents request +- Limit the execution duration of the jrpc requests +- Performance fixes and improvements: add writethrough cache for config ledger entries and cache DB results better +- Fix ledgerentry visibility bug +- Fix simulation sequence number for bump/restore operations +- Improve missing command line arguments message +- Add missing config settings in ledger entry cache on reads +- Fix caching of GetLatestLedgerSequence +- Limit request size to 10MB +- Limit number of concurrent requests +- Improve HTTPRequestDurationLimiter by adding a recover handling +- Stream ledgers on initialization +- Increase instruction leeway to 20% in preflight +- Validate xdr payloads in soroban-rpc requests +- Fix double-counting bug +- Fix datarace in bufferedResponseWriter.WriteOut +- Fix set_authorization_entries bug in preflight +- Restore CORS support + +#### Soroban CLI + +- Add multi-party authorization + signing support +- Add two new output types for contract inspect +- Add config identity fund to fund accounts on networks +- Add restore/bump support with --wash_hash +- Allow passing true and false to boolean types +- Each generated contract method adds `-file-path` +- Add dotenv so directories can now set CLI args +- Generated TypeScript bindings have significantly improved +- Make Wallet injectable +- Correct generated README +- Allow fetching contract from network +- Removed --contract-name, added --overwrite +- Require configuring network settings +- Leveraging the latest soroban-client (v1.0.0-beta) +- Make aliases visible in help doc +- Ensure that the sim events are logged; improve format of main logs +- Fix --cost flag +- Set the exit code to 1 in case of an error +- Return an error once contract read is unable to read any entry +- wrap token no longer fails with valid inputs in sandbox mode + ## Preview 10 (July 13, 2023) ### Software diff --git a/docs/reference/rpc.mdx b/docs/reference/rpc.mdx index af37884b..a20063e7 100644 --- a/docs/reference/rpc.mdx +++ b/docs/reference/rpc.mdx @@ -33,7 +33,7 @@ To run a local standalone network with the Stellar Quickstart Docker image, run docker run --rm -it \ -p 8000:8000 \ --name stellar \ - stellar/quickstart:soroban-dev@sha256:a6b03cf6b0433c99f2f799b719f0faadbb79684b1b763e7674ba749fb0f648ee \ + stellar/quickstart:testing@sha256:1c98f895f8b69cc843eeaa5230d67044dbeb390a5529d51dd7762d8ff685c3f8 \ --standalone \ --enable-soroban-rpc @@ -92,7 +92,7 @@ Running your own Futurenet node works much the same way as running a Quickstart docker run --rm -it \ -p 8000:8000 \ --name stellar \ - stellar/quickstart:soroban-dev@sha256:ed57f7a7683e3568ae401f5c6e93341a9f77d8ad41191bf752944d7898981e0c \ + stellar/quickstart:testing@sha256:1c98f895f8b69cc843eeaa5230d67044dbeb390a5529d51dd7762d8ff685c3f8 \ --futurenet \ --enable-soroban-rpc @@ -104,9 +104,9 @@ And you'll want to configure it for use with the `--network` flag in Soroban CLI Replace `futurenet` in that command with the name of your choice, if you want to leave the name `futurenet` available for use with a public RPC provider (see below). Or make clever use of `--global` configs for public providers and local configs (made with the undecorated `network add` command above) for local nodes. -The `alice` identity suggested for your Standalone network will still work here, since it's just a public/private keypair, but you'll need to remember to fund it: +The `alice` identity suggested for your Standalone network will still work here, since it's just a public/private keypair, but you'll need to remember to fund it for the Futurenet network: - curl "http://localhost:8000/friendbot?addr=$(soroban config identity address alice)" + curl "https://friendbot-futurenet.stellar.org/?addr=$(soroban config identity address alice)" Now you can replace `--network standalone` with `--network futurenet` (or whatever you named it) in all your commands that need a network, like the `deploy` and `invoke` shown above.