Releases: stellar/rs-soroban-sdk
21.3.0
What's Changed
-
Document the accuracy of the ledger timestamp by @leighmcculloch in #1289
-
Keep testutils on/off state internal to the sdk by @leighmcculloch in #1301
Prior to this release it has been necessary in some situations to define a
testutils
feature inside the contract crate and to enable it when importing the crate for fuzz testing, or when importing the crate into another contract for testing. For example:[package] name = "my-contract" version = "1.0.0" [lib] crate-type = ["cdylib"] [dependencies] soroban-sdk = { version = "21.3.0" } [dev-dependencies] soroban-sdk = { version = "21.3.0", features = ["testutils"] } [features] testutils = ["soroban-sdk/testutils"]
Starting with this release the
testutils
feature inside the contract crate is no longer required. The testutils functionality will now be enabled automatically in any contract that is compiled against an SDK that has itstestutils
feature enabled. For example:[package] name = "my-contract" version = "1.0.0" [lib] crate-type = ["cdylib"] [dependencies] soroban-sdk = { version = "21.3.0" } [dev-dependencies] soroban-sdk = { version = "21.3.0", features = ["testutils"] }
-
Bump version to 21.3.0 by @github-actions in #1303
Full Changelog: v21.2.0...v21.3.0
21.2.0
What's Changed
- Remove
--baseline-version
specification from semver-checks by @jayz22 in #1287 - Provide more useful errors on accessing storage outside of the contract. by @dmkozh in #1288
- Remove rust-analyzer-compat ci check by @leighmcculloch in #1291
- Add nice compiler error when Copy is missing on error enums and enum ints by @leighmcculloch in #1293
- Add in contract assertions to prng functions by @leighmcculloch in #1295
- Fix rust 2024 incompatibilities by @leighmcculloch in #1294
- Update stellar-xdr, soroban-env-* by @leighmcculloch in #1299
- Fix client code gen to use efficient symbol by @leighmcculloch in #1297
- Bump version to 21.2.0 by @github-actions in #1300
Full Changelog: v21.1.1...v21.2.0
21.1.1
What's Changed
- Add doc qualifying where contractimport is relative to by @leighmcculloch in #1241
- Update cargo-deny CI by @leighmcculloch in #1250
- Add module doc for auth module by @leighmcculloch in #1249
- Bump env used by the SDK by @dmkozh in #1251
- Add docs to the token interface by @leighmcculloch in #1247
- Pick up protocol 21 by @jayz22 in #1252
- Bump versions; separate extend contract code and TTL for contract code and instance by @jayz22 in #1254
- Bump version to 21.0.0 by @github-actions in #1256
- Add LedgerInfo setters by @sisuresh in #1255
- Add secp256r1 support by @jayz22 in #1246
- Bump to env and xdr dependencies to 21.0.1 by @jayz22 in #1259
- Generate clear error when a nameless contract argument is used by @sisuresh in #1260
- Bump version to 21.0.1-preview.1 by @github-actions in #1262
- Check UDT enum integer must derive from
Copy
by @jayz22 in #1264 - Remove event topics length limit; refactor tuple code into separate file by @jayz22 in #1263
- Truncate docs stored in wasm rather than panic when length exceeded by @leighmcculloch in #1261
- Add wrappers for
live_until_ledger
getters. by @dmkozh in #1267 - Add docs for extend_ttl_for_{code,contract_instance} by @jayz22 in #1268
- Make TTL getters exclude the current ledger. by @dmkozh in #1269
- Log to stdout when sdk log method is used by @sisuresh in #1265
- Update SDK to use env 21.0.2 by @dmkozh in #1270
- Bump version to 21.0.1-preview.2 by @github-actions in #1271
- Add warning icon to struct CryptoHazmat by @anupsdf in #1273
- Add a conversion from Hash->Bytes by @leighmcculloch in #1272
- Put crypto hazmat behind a feature by @leighmcculloch in #1274
- Bump version to 21.0.1-preview.3 by @github-actions in #1275
- Do not generate client fns for reserved hook functions by @leighmcculloch in #1277
- Update env and xdr libs by @leighmcculloch in #1278
- Bump version to 21.1.0-rc.1 by @github-actions in #1279
- Fix contract-meta warning by @leighmcculloch in #1282
- Variety of small clippy inspired refactors by @leighmcculloch in #1281
- Revert "Check UDT enum integer must derive from
Copy
(#1264)" by @jayz22 in #1283 - Bump version to 21.1.1 by @github-actions in #1285
New Contributors
Full Changelog: v20.5.0...v21.1.1
21.1.0-rc.1
What's Changed
- Do not generate client fns for reserved hook functions by @leighmcculloch in #1277
- Update env and xdr libs by @leighmcculloch in #1278
- Bump version to 21.1.0-rc.1 by @github-actions in #1279
Full Changelog: v21.0.1-preview.3...v21.1.0-rc.1
21.0.1-preview.3
What's Changed
- Add warning icon to struct CryptoHazmat by @anupsdf in #1273
- Add a conversion from Hash->Bytes by @leighmcculloch in #1272
- Put crypto hazmat behind a feature by @leighmcculloch in #1274
- Bump version to 21.0.1-preview.3 by @github-actions in #1275
New Contributors
Full Changelog: v21.0.1-preview.2...v21.0.1-preview.3
21.0.1-preview.2
Release notes
This is the second preview version of the Soroban SDK that supports protocol 21. It is marked as 'preview' because contracts built with SDK v21 will only be compatible with the networks upgraded to protocol 21. The API itself may be considered stable.
Key protocol-related changes
- Support for secp256r1 signature verification
- Support for extending TTL of contract instance and code separate from each other
Breaking changes
storage().max_ttl()
getter has been changed to exclude the current ledger and thus it now returns a value that is one less than before. This is a bug fix that makesextend_ttl(max_ttl())
work correctly for the temporary storage entries. It can be observed though in case ifmax_ttl()
has been directly compared with a hardcoded value (for example, in tests).
What's Changed
- Check UDT enum integer must derive from
Copy
by @jayz22 in #1264 - Remove event topics length limit; refactor tuple code into separate file by @jayz22 in #1263
- Truncate docs stored in wasm rather than panic when length exceeded by @leighmcculloch in #1261
- Add wrappers for
live_until_ledger
getters. by @dmkozh in #1267 - Add docs for extend_ttl_for_{code,contract_instance} by @jayz22 in #1268
- Make TTL getters exclude the current ledger. by @dmkozh in #1269
- Log to stdout when sdk log method is used by @sisuresh in #1265
- Update SDK to use env 21.0.2 by @dmkozh in #1270
- Bump version to 21.0.1-preview.2 by @github-actions in #1271
Full Changelog: v21.0.1-preview.1...v21.0.1-preview.2
21.0.1-preview.1
Release notes
This is the first version of the Soroban SDK that supports protocol 21. It is marked as 'preview' because contracts built with SDK v21 will only be compatible with the networks upgraded to protocol 21. The API itself may be considered stable.
Key changes
- Support for secp256r1 signature verification
- Support for extending TTL of contract instance and code separate from each other
What's Changed
- Add doc qualifying where contractimport is relative to by @leighmcculloch in #1241
- Update cargo-deny CI by @leighmcculloch in #1250
- Add module doc for auth module by @leighmcculloch in #1249
- Bump env used by the SDK by @dmkozh in #1251
- Add docs to the token interface by @leighmcculloch in #1247
- Pick up protocol 21 by @jayz22 in #1252
- Bump versions; separate extend contract code and TTL for contract code and instance by @jayz22 in #1254
- Bump version to 21.0.0 by @github-actions in #1256
- Add LedgerInfo setters by @sisuresh in #1255
- Add secp256r1 support by @jayz22 in #1246
- Bump to env and xdr dependencies to 21.0.1 by @jayz22 in #1259
- Generate clear error when a nameless contract argument is used by @sisuresh in #1260
- Bump version to 21.0.1-preview.1 by @github-actions in #1262
Full Changelog: v20.5.0...v21.0.1-preview.1
20.5.0
What's Changed
- Make fn argument name errors better by @leighmcculloch in #1238
- Revert "Generate all types of addresses when fuzzing. (#1122)" by @brson in #1240
- Raise error if struct field name is greater than 30 chars by @leighmcculloch in #1239
- Bump env used by SDK by @dmkozh in #1236
- Switch SDK to env v20.3.0 by @dmkozh in #1242
- Bump version to 20.5.0 by @github-actions in #1244
Full Changelog: v20.4.0...v20.5.0
20.4.0
What's Changed
- Display
String
contents inDebug
implementation. by @dmkozh in #1227 - Add Bytes to_buffer and to_alloc_vec by @leighmcculloch in #1231
- Move the Env testutil internal types into a single type by @leighmcculloch in #1234
- Add option to disable test snapshots on Env by @leighmcculloch in #1235
- Bump version to 20.4.0 by @github-actions in #1237
Full Changelog: v20.3.2...v20.4.0
20.3.2
What's Changed
- Update soroban-env-* by @leighmcculloch in #1229
- Bump version to 20.3.2 by @github-actions in #1230
Full Changelog: v20.3.1...v20.3.2