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

soroban-rpc: Migrate Soroban Tools to Soroban RPC #2

Merged
merged 638 commits into from
Jan 17, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
638 commits
Select commit Hold shift + click to select a range
8c2d983
Fix publish with new crates (#709)
leighmcculloch Jun 17, 2023
5ac40db
Reenable Windows builds with fix for publish-dry-run (#699)
leighmcculloch Jun 17, 2023
9f045c0
feat: upgrade freighter-api to 1.5.0 & soroban-client to 0.8.1 (#708)
chadoh Jun 19, 2023
02f47b7
rust: fix rust-analyzer testing (#712)
tsachiherman Jun 21, 2023
db9aa07
fix: allow generated JS libs to use localhost (#711)
chadoh Jun 21, 2023
94af5fa
Add package-based soroban-rpc Dockerfile (#710)
jacekn Jun 22, 2023
622a69f
Add command for building contracts (#713)
leighmcculloch Jun 22, 2023
71067a4
Remove unnecessary rustc options (#714)
leighmcculloch Jun 22, 2023
e74473e
Add CODEOWNERS to keep contract committers automatically mentioned on…
leighmcculloch Jun 23, 2023
9a476ab
Bump version to 0.8.6 (#716)
github-actions[bot] Jun 23, 2023
6440715
Add missing readmes for crates preventing publishing (#718)
leighmcculloch Jun 23, 2023
de12c55
Bump version to 0.8.7 (#719)
github-actions[bot] Jun 23, 2023
086a260
Upload after publish of crates (#720)
leighmcculloch Jun 23, 2023
d16a84c
Fix check-dependencies typos (#723)
2opremio Jun 27, 2023
30270fc
Add lab token id command (#693)
vinamogit Jun 27, 2023
f622b8e
fix(bindings-ts): don't delete existing dirs (#733)
chadoh Jun 30, 2023
de31b0f
Upgrade wasm-opt to 0.113 (#736)
brson Jul 1, 2023
2b343d3
feat: long listing for identities (#743)
chadoh Jul 4, 2023
34da8d6
preview 10 release branch (#704)
Jul 12, 2023
422c101
Bump version to 0.9.1 (#769)
github-actions[bot] Jul 12, 2023
b5e8586
update js-soroban-client to 0.9.1 (#768)
tsachiherman Jul 12, 2023
75296e8
Try to fix the e2e test, 2nd attempt (#766)
tsachiherman Jul 12, 2023
1baf65b
Upgrade generated TypeScript with Preview 10 changes (#770)
Shaptic Jul 13, 2023
924e2c1
soroban-cli: Add better feedback to bump+restore ops (#767)
Jul 14, 2023
af4b38e
Output slightly better errors when account/contract are not found (#771)
Jul 14, 2023
c5562b5
Tsachi/update preview 10 dependencies (#773)
tsachiherman Jul 17, 2023
91f2ce4
Update rust-version (#772)
github-actions[bot] Jul 17, 2023
1ea0dad
Bump latest soroban-client + system-test versions (#777)
Shaptic Jul 18, 2023
84ccbbb
update (#779)
tsachiherman Jul 18, 2023
53aa615
build: update core build version to 19.12.1-1393.db40326a1.focal~soro…
tsachiherman Jul 19, 2023
cb3c44f
build: update soroban-client in typescript template (#786)
chadoh Jul 19, 2023
3cbf9ac
fix: update default `futurenet` to use new rpc_url (#778)
willemneal Jul 20, 2023
a5506b4
feat(CLI): add `--wasm` args to bump/restore (#775)
willemneal Jul 20, 2023
99ac697
feat(typescript): `invoke` improvements (#753)
chadoh Jul 20, 2023
20e80f5
feat(CLI): restore/bump if no keys provided contract instance used (#…
willemneal Jul 24, 2023
2b76881
soroban-rpc: bump XDR to latest changes (including Go/Rust dependenci…
2opremio Jul 25, 2023
26d23b3
soroban-rpc: simulateTransaction: Get budget settings from the networ…
2opremio Jul 26, 2023
6750d78
fix: Enums with tuple of any length now allowed and example is update…
willemneal Jul 26, 2023
7f8581c
feat(CLI): Contract Install with internal error restores the code (#788)
willemneal Jul 26, 2023
76cacc7
Bump version to 0.9.4 (#811)
github-actions[bot] Jul 27, 2023
1d3f715
fix:js, go and md files (#812)
criadoperez Jul 27, 2023
762ea8c
soroban-rpc: Add ledger bumps preflight hack until core provides a wa…
2opremio Jul 27, 2023
1d71c35
soroban-rpc: add requests limits handlers (#799)
tsachiherman Jul 27, 2023
b4be8e3
fix: list '--network' under RPC options (#814)
chadoh Jul 27, 2023
de53acb
Support StrKey format for "contractIds" field in getEvents request (#…
overcat Jul 27, 2023
4131be7
feat(bindings-ts): make Wallet injectable (#819)
chadoh Jul 28, 2023
485ebad
soroban-cli: Update to latest XDR changes (#813)
2opremio Jul 31, 2023
cac659d
soroban-rpc: Enforce enabling diagnostics events (#820)
2opremio Jul 31, 2023
4817344
fix(bindings-ts): correct generated README (#823)
chadoh Jul 31, 2023
a8de740
soroban-rpc: Add restore footprint test (now that expiration is tunab…
2opremio Jul 31, 2023
970991b
soroban-rpc: limit the execution duration of the jrpc requests (#804)
tsachiherman Aug 1, 2023
595c41b
Update wasm-opt to 0.114 (#825)
brson Aug 1, 2023
0dbbb3e
Merge remote-tracking branch 'origin/main' into merge-main
2opremio Aug 1, 2023
2a1394f
Merge pull request #827 from 2opremio/merge-main
2opremio Aug 1, 2023
46ee0b8
Feat(CLI) restore/bump --wash_hash (#824)
willemneal Aug 1, 2023
f15ef1f
Enable sign-ext and mutable-globals in use of wasm_opt (#831)
graydon Aug 2, 2023
0d0af89
soroban-rpc: Add getPreflight benchmark and test (#692)
2opremio Aug 2, 2023
21513ee
Merge remote-tracking branch 'origin/soroban-xdr-next' into merge-xdr…
2opremio Aug 2, 2023
9b75c00
feat: allow passing `true` and `false` to boolean types (#834)
willemneal Aug 2, 2023
620e811
Merge branch 'main' into merge-xdr-next-into-main
2opremio Aug 2, 2023
5f71b96
Merge pull request #832 from 2opremio/merge-xdr-next-into-main
2opremio Aug 3, 2023
40e6e0e
feat(CLI/bindings/ts): allow fetching contract from network
willemneal Aug 3, 2023
7ac5d48
fix: fmt
willemneal Aug 3, 2023
f25effe
Merge pull request #836 from AhaLabs/feat/bindings_from_network
willemneal Aug 4, 2023
69d8da5
feat(CLI): Each generated contract method adds <contract-arg>-file-pa…
willemneal Aug 4, 2023
26b923a
feat(CLI): Add two new output types for `contract inspect` (#829)
willemneal Aug 4, 2023
8eacf0c
soroban-rpc: Add writethrough cache for Config ledger entries (#837)
2opremio Aug 7, 2023
0fba915
soroban-rpc: Fix deletion bug in DB cache (#847)
2opremio Aug 8, 2023
731786e
soroban-rpc: Cache all ledger entries queried from DB in read transac…
2opremio Aug 8, 2023
f86097a
feat(CLI): `config identity fund` to fund accounts on networks (#828)
willemneal Aug 10, 2023
e2c1b97
feat(bindings-ts)!: rm --contract-name, add --overwrite (#849)
chadoh Aug 10, 2023
438656a
Update CLI and soroban-rpc to the latest XDR changes (#846)
2opremio Aug 10, 2023
d788665
fix(CLI): make aliases visible in help doc (#848)
willemneal Aug 10, 2023
739231f
Update (again) CLI and soroban-rpc to the latest XDR changes (#854)
2opremio Aug 10, 2023
66778f7
soroban-cli: Add Auth-next signing support (#749)
Aug 15, 2023
bcbb7e5
soroban-rpc: Dependency Audit (#859)
Aug 15, 2023
176745b
soroban-rpc: Rust dependency updates (#862)
Aug 16, 2023
8d3f813
feat(bindings-ts)!: require configuring network settings (#852)
chadoh Aug 18, 2023
8ed9813
refactor unit test TestConcurrentReadersAndWriter so that it would ou…
tsachiherman Aug 18, 2023
08de7d5
soroban-rpc: simulateTransaction: automatically detect ledger entries…
2opremio Aug 18, 2023
06b48ad
soroban-rpc: Fix ledgerentry visibility bug (#871)
Aug 21, 2023
3f13cd0
add heap profiling endpoints (#861)
tsachiherman Aug 21, 2023
86bc457
soroban-rpc: Fix simulation sequence number for bump/restore operatio…
2opremio Aug 21, 2023
fc92f08
soroban-rpc: refactor libpreflight (#875)
2opremio Aug 21, 2023
895f8af
Use unwrap() in errors due to bugs in the Go<->Rust interface (#879)
2opremio Aug 21, 2023
b53e6d4
soroban-rpc: simulateTransaction: try to return diagnostic events on …
2opremio Aug 22, 2023
e329fb8
update args errors. (#880)
tsachiherman Aug 22, 2023
cca677e
Update to remove ScSpecTypeSet
graydon Aug 11, 2023
617c3c0
Merge pull request #857 from stellar/remove-set-from-spec
graydon Aug 22, 2023
e6e10f0
Revert "Update to remove ScSpecTypeSet" (#882)
2opremio Aug 22, 2023
7632c89
soroban-rpc: expand getpreflight benchmarks (#883)
2opremio Aug 22, 2023
e03b944
soroban-rpc: Add missing config settings in ledger entry cache on rea…
2opremio Aug 22, 2023
1bb67f6
Add forgotten review feedback (#891)
2opremio Aug 23, 2023
7b48b16
Updating and merging 881 (#890)
Aug 23, 2023
3758c2e
soroban-rpc: add generic panic handing (#856)
tsachiherman Aug 23, 2023
ff5ffa1
soroban-rpc: libpreflight: Remove base64 encoding between Go and Rust…
2opremio Aug 23, 2023
2bb5905
soroban-rpc: GetPreflight benchmark tweaks (#895)
2opremio Aug 23, 2023
06bcd7b
soroban-rpc: Fix caching of GetLatestLedgerSequence (#897)
2opremio Aug 24, 2023
5b79166
rust: appease clippy and fmt with after new Rust release (#899)
2opremio Aug 24, 2023
28478ef
soroban-rpc: Limit request size to 10MB (#898)
2opremio Aug 24, 2023
9cbc0b7
soroban-rpc: improve HTTPRequestDurationLimiter by adding a recover h…
tsachiherman Aug 24, 2023
fa3dd8d
soroban-rpc: getLedgerEntries: query multiple ledger entries at once …
2opremio Aug 25, 2023
9ec1a37
soroban-rpc: Run CI on main branch (#900)
2opremio Aug 25, 2023
c19dcbf
soroban-rpc: further DB querying performance tweaks (#901)
2opremio Aug 25, 2023
00fa12e
Update rust-version (#902)
github-actions[bot] Aug 25, 2023
e4885d7
feat(CLI): add dotenv so directories can now set CLI args (#894)
willemneal Aug 28, 2023
0d3fbcb
soroban-rpc: Stream ledgers on initialization (#904)
2opremio Aug 28, 2023
f7de99a
soroban-rpc: getLedgerEntries: set maximum number of keys to query fo…
2opremio Aug 29, 2023
8d295bc
fix: datetime api deprecation error (#907)
willemneal Aug 29, 2023
61fea0d
Update to remove ScSpecTypeSet (#884)
2opremio Aug 29, 2023
15b4f6e
fix: ensure that the sim events are logged; improve format of main lo…
willemneal Aug 30, 2023
2989a3b
fix(CLI): move plugin logic to Root and pass clap error if plugin's n…
willemneal Aug 31, 2023
a0bfedc
soroban-rpc: preflight: Increase instruction leeway to 20% (#909)
2opremio Aug 31, 2023
5f78b67
build: add rust dep checker (#912)
tsachiherman Aug 31, 2023
f1f9fa8
soroban-cli: Fix `--cost` flag (#911)
Sep 1, 2023
135102e
all: add support for new state expiration ledger entries (#913)
2opremio Sep 1, 2023
060d9bf
passing e2e tests (#855)
sreuland Sep 4, 2023
62aaa3d
update (#923)
tsachiherman Sep 5, 2023
954e6f7
soroban-rpc: preflight: remove key sizes from read_bytes computation …
2opremio Sep 5, 2023
9615897
soroban-rpc: Ingest temp ledger entry evictions (#926)
tamirms Sep 5, 2023
e89b50d
build: update core dependencies (#929)
tsachiherman Sep 5, 2023
89f5a23
soroban-cli: return an error once `contract read` is unable to read a…
tsachiherman Sep 6, 2023
16ada04
feat: try invoking CLI from go test (#927)
willemneal Sep 7, 2023
0a020c7
update (#936)
tsachiherman Sep 7, 2023
72d7cf9
Refactor initial CLI test (#938)
2opremio Sep 8, 2023
dce1986
Add a few more basic CLI integration tests (#940)
2opremio Sep 8, 2023
91595de
soroban-rpc: Fix set_authorization_entries bug in preflight (#939)
tamirms Sep 8, 2023
d25a2d0
restore CORS support. (#943)
tsachiherman Sep 8, 2023
60e9539
add CORS test (#944)
tsachiherman Sep 8, 2023
ec404da
e2e: get tests passing on latest versions (#932)
sreuland Sep 8, 2023
41f9f8f
soroban-cli: add tests for version + xdr decoding (#947)
tsachiherman Sep 11, 2023
c1db31b
add contract build unit test. (#949)
tsachiherman Sep 11, 2023
38b5e24
fix(rpc): actually use RPC in CLI tests; add icmd and assertCmd for b…
willemneal Sep 11, 2023
3cd84b5
update (#951)
tsachiherman Sep 12, 2023
440aa40
update buffer size (#948)
tsachiherman Sep 12, 2023
340d0d9
build: update rust dependencies (#953)
tsachiherman Sep 12, 2023
ebf3c0a
Bump version to 20.0.0-rc1 (#954)
github-actions[bot] Sep 13, 2023
47fb001
soroban-rpc: Fix integration tests (#955)
tamirms Sep 13, 2023
7b57d45
Fix dependency checker GitHub workflow (#956)
2opremio Sep 13, 2023
803bb76
cli: Remove explicit decoding depths (#950)
2opremio Sep 13, 2023
1ee4113
Validate xdr payloads in soroban-rpc requests (#957)
tamirms Sep 13, 2023
06bf51f
Revert "cli: Remove explicit decoding depths (#950)" (#958)
2opremio Sep 13, 2023
3887942
soroban-rpc: preflight: Fix double-counting bug (#960)
2opremio Sep 13, 2023
d3664b5
soroban-rpc: fix datarace in bufferedResponseWriter.WriteOut (#961)
tsachiherman Sep 13, 2023
644900b
soroban-rpc: Make restorePreamble a ptr so that omitempty works (#966)
Shaptic Sep 14, 2023
82e2ad1
e2e: Update all end-to-end test configuration versions to latest (#952)
sreuland Sep 14, 2023
7d3b417
Upgrades generated TypeScript bindings to the latest soroban-client …
Shaptic Sep 14, 2023
cdbbf85
Feat/restore preamble (#931)
willemneal Sep 14, 2023
9a94567
cli: Add cli tests for bump and restore (#968)
tamirms Sep 15, 2023
1c49aed
Bump version to 20.0.0-rc2 (#974)
github-actions[bot] Sep 19, 2023
8bdbbeb
Set base prng to zero in preflight and invoke (#975)
leighmcculloch Sep 20, 2023
f011f52
soroban-rpc: preflight: Exclude temporary expired entries from Snapsh…
2opremio Sep 21, 2023
7cc2f46
Bump version to 20.0.0-rc3 (#982)
github-actions[bot] Sep 21, 2023
3e201ad
Feat(CLI): add `key::Args` and `FullLedgerEntry`/`FullLedgerEntries` …
willemneal Sep 22, 2023
b5b0b78
soroban-cli: upgrade ed25519-dalek to version 2.0.0 (#984)
tsachiherman Sep 22, 2023
1d20f08
chore: add way to invoke cargo from go code in effort to reuse rust t…
willemneal Sep 23, 2023
365b184
fix(CLI): ignore the expiration in contract_read test (#988)
willemneal Sep 24, 2023
aaff333
rpc: preflight: include system events in fee calculation (#986)
2opremio Sep 26, 2023
bce5e56
Bump version to 20.0.0-rc4 (#989)
github-actions[bot] Sep 26, 2023
2b5bb4f
update (#1017)
tsachiherman Oct 11, 2023
edd732d
Create README.md
aditya1702 Oct 12, 2023
d59c8f9
Create README.md - 2
aditya1702 Oct 13, 2023
dd9ef59
Merge branch 'main' into add-build-from-source
aditya1702 Oct 13, 2023
9179218
Update README.md
aditya1702 Oct 13, 2023
2935411
Update README.md
aditya1702 Oct 13, 2023
967351b
soroban-rpc: get expiration ledger sequence at source (#916)
tsachiherman Oct 13, 2023
4b05231
fix: clippy --all (#1013)
willemneal Oct 16, 2023
01aaa88
Merge branch 'main' into add-build-from-source
aditya1702 Oct 16, 2023
da43a88
Update README.md
aditya1702 Oct 16, 2023
fb9c48f
Update README.md
aditya1702 Oct 16, 2023
98dcd88
Merge pull request #1024 from aditya1702/add-build-from-source
aditya1702 Oct 16, 2023
2d9caec
Flatten the `getEvents` response structure (#1015)
Shaptic Oct 16, 2023
2996835
fix(CLI): fund command now can accept a public strkey (#1020)
willemneal Oct 16, 2023
b15f0da
chore: update ts bindings (#973)
chadoh Oct 17, 2023
35d33ee
soroban-rpc: update go package dependencies (#1030)
tsachiherman Oct 18, 2023
37379dd
Feat!(CLI): remove sandbox (#997)
willemneal Oct 19, 2023
f41b84e
fix potential overflow (#1036)
tsachiherman Oct 19, 2023
7d95972
rpc: add commandline flag to parameterize (opt-in) preflight debug in…
2opremio Oct 23, 2023
b2229a3
all: Bump XDR and Rust/Go/Core dependencies (#1029)
2opremio Oct 23, 2023
58aad79
chore(CLI): remove all references to expire and use ttl (#1046)
willemneal Oct 23, 2023
186e157
Run go mod tidy (#1047)
2opremio Oct 24, 2023
1e42daf
Fix typo in JSON-encoded field for a `getLedgerEntries` result (#1050)
Shaptic Oct 25, 2023
ff51660
soroban-rpc: remove noisy rollback message (#1052)
tsachiherman Oct 26, 2023
ec62f6d
update rpc Dockerfile to use go 1.21 base image (#1057)
sreuland Oct 27, 2023
e3173d8
Explicitly supply objectives in Prometheus SummaryOpts as required by…
urvisavla Oct 27, 2023
c791a68
soroban-cli: Warn or Error When Deploying Contracts Compiled with RC …
stellarsaur Nov 1, 2023
9837a5d
rpc: preflight: enable debug by default now that there is a debug bud…
2opremio Nov 2, 2023
d83a514
Upgrade E2E tests to work with latest `stellar-sdk` (#1051)
Shaptic Nov 3, 2023
87f5a98
optimize in-memory transaction store (#1063)
tsachiherman Nov 6, 2023
6bb1c12
fix: print help if custom CLI is empty & replace unwrap where prossib…
willemneal Nov 6, 2023
e357ccb
Fix/typescript bindings (#1066)
elizabethengelman Nov 6, 2023
9259e08
feat(CLI): Assembled Transaction that handle preparing transaction po…
willemneal Nov 7, 2023
5398c06
chore: add burn test (#1071)
willemneal Nov 8, 2023
733ce06
Bump core version (#1076)
2opremio Nov 14, 2023
c560bdd
cli: Appease new clippy version (#1094)
2opremio Nov 20, 2023
3928c47
rpc: fix multi-entry responses for getLedger entries (#1093)
2opremio Nov 21, 2023
5791599
Update jrpc2
aditya1702 Nov 21, 2023
eb449ef
Remove the build files
aditya1702 Nov 21, 2023
0721932
Update go.sum
aditya1702 Nov 21, 2023
937f492
Merge pull request #1095 from aditya1702/json-request-utf8
aditya1702 Nov 21, 2023
7f8ad60
soroban-rpc: Force On-Disk Mode by Removing --captive-core-use-db (#1…
stellarsaur Nov 21, 2023
5c27c81
rpc: Sanity-check allocations when decoding (#1099)
2opremio Nov 25, 2023
db3030a
Make only one way to get the version of the CLI (#1100)
leighmcculloch Nov 28, 2023
be3fcd5
rpc: unify all ledger sequence types to uint32 and stop stringyfying …
2opremio Nov 28, 2023
d5acaf4
all: Bump core, Rust dependencies and update code (#1103)
2opremio Nov 29, 2023
8f276d0
all: Bump core, Rust dependencies (#1109)
tamirms Dec 6, 2023
9bec687
fix comment about fees fudge factor (#1111)
tamirms Dec 6, 2023
91a441f
Bump version to 20.0.0 (#1114)
github-actions[bot] Dec 6, 2023
0ecb92d
feat(bindings-ts): support multi-auth workflows
chadoh Oct 10, 2023
f24c449
Merge pull request #1034 from AhaLabs/feat/bindings-ts/multi-auth
chadoh Dec 7, 2023
456f7dc
Don't convert start ledger to string for events command
stellarsaur Dec 7, 2023
3a52e83
converted event.ledger to integer type
sreuland Dec 7, 2023
c0b84da
Bump version to 20.0.1
github-actions[bot] Dec 8, 2023
397cc90
soroban-cli: Only Give RC SDK Contract Compilation Warning/Errors if …
stellarsaur Dec 11, 2023
c61b73f
Bump version to 20.0.2
github-actions[bot] Dec 11, 2023
7e0334d
Stable e2e (#1126)
sreuland Dec 11, 2023
514406e
increased preflight instruction fee padding to 3 million (#1127)
sreuland Dec 12, 2023
c1fef8f
Fix dependency-check script to support crate versions (#1129)
2opremio Dec 13, 2023
9b5d0b5
Merge remote-tracking branch 'upstream/main' into port_20.0.2
sreuland Dec 14, 2023
e173c42
use soroban examples v20 tag now that available
sreuland Dec 14, 2023
e23f5b2
port 20.0.2 back to main (#1132)
sreuland Dec 14, 2023
3404ef8
fix(bindings-ts): latest RPC & stellar-sdk
chadoh Dec 11, 2023
4c41f69
Merge pull request #1122 from AhaLabs/fix/bindings-ts/expiration
chadoh Dec 15, 2023
21f5e95
Bump Core build (#1133)
2opremio Dec 15, 2023
9ea424d
soroban-rpc: Allow Budget Instruction Leeway to be Configured by Clie…
stellarsaur Dec 15, 2023
6553afb
Replace cli xdr command with stellar-xdr cli (#1135)
leighmcculloch Dec 19, 2023
08552fd
Update soroban-env-*, soroban-sdk-* (#1138)
leighmcculloch Dec 20, 2023
d38ab7f
soroban-rpc: Update core build (#1139)
tamirms Dec 20, 2023
ff13a0f
Bump version to 20.1.0
github-actions[bot] Dec 20, 2023
cd494db
Merge pull request #1140 from stellar/release/v20.1.0
mollykarcher Dec 20, 2023
dad73c4
update e2e core ref (#1141)
sreuland Dec 20, 2023
a8c9caf
Update stellar-sdk to 11.1.0 (#1143)
kalepail Dec 21, 2023
deb1f7c
Bump version to 20.1.1 (#1144)
github-actions[bot] Dec 21, 2023
852ed2a
Upgrade Ubuntu to 22.04 from 20.04
satyamz Nov 2, 2023
e2b08a3
Run CI on multiple ubuntu versions
mollykarcher Jan 5, 2024
535e4f1
resolve clippy errors
mollykarcher Jan 5, 2024
165628c
update test deltas for preflight
mollykarcher Jan 6, 2024
d1f1fa9
rpc: Add diagnostic events to sendTransaction response (#1152)
2opremio Jan 8, 2024
561f4a4
Merge branch 'main' into molly/main/satyam/docker-upgrade
2opremio Jan 8, 2024
9d2e0cc
Merge pull request #1158 from mollykarcher/molly/main/satyam/docker-u…
mollykarcher Jan 8, 2024
d5f0d86
Run CI for the msrv and latest rust version (#1159)
leighmcculloch Jan 9, 2024
6250de2
Bump Go, Rust and Core dependencies (#1160)
2opremio Jan 10, 2024
54f1dc0
Move rust-toolchain.toml to root dir (#1161)
leighmcculloch Jan 10, 2024
8906a53
feat!: move config commands to top level (#1086)
willemneal Jan 11, 2024
f70f585
Bump version to 20.2.0
github-actions[bot] Jan 11, 2024
d7b3376
Bump Core and dependency versions to the official tags/images (#1164)
Shaptic Jan 11, 2024
8276238
Update the Stellar SDK for the latest TypeScript bindings (#1037)
chadoh Jan 12, 2024
7ee51fa
Merge pull request #1163 from stellar/release/v20.2.0
Shaptic Jan 12, 2024
6a19e18
rpc: Use external soroban-simulation library for preflight computatio…
2opremio Jan 17, 2024
483dc73
Merge branch 'main' of https://github.com/stellar/soroban-rpc into so…
stellarsaur Jan 17, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .cargo-husky/hooks/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#!/bin/sh

set -e

echo '+cargo fmt --check'
cargo fmt --check || (cargo fmt && exit 1)
20 changes: 20 additions & 0 deletions .cargo-husky/hooks/pre-push
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
#!/bin/sh

set -e

echo '+cargo fmt --check'
cargo fmt --check || (cargo fmt && exit 1)

echo "unstaged changes"
echo 'git diff-index --quiet HEAD --'
git diff-index --quiet HEAD --

echo '+cargo clippy -- -Dwarnings -Dclippy::all -Dclippy::pedantic'
cargo clippy --all -- -Dwarnings

echo '+cargo test --all'
cargo build
cargo test --all || (echo "might need to rebuild make build-snapshot" && exit 1)

echo '+cargo run --bin doc-gen --features clap-markdown'
cargo run --bin doc-gen --features clap-markdown
160 changes: 160 additions & 0 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,160 @@
# paths = ["/path/to/override"] # path dependency overrides

[alias] # command aliases
md-gen = "run --bin doc-gen --features clap-markdown"
f = "fmt"
# b = "build"
# c = "check"
# t = "test"
# r = "run"
# rr = "run --release"
# recursive_example = "rr --example recursions"
# space_example = ["run", "--release", "--", "\"command list\""]

[build]
# jobs = 1 # number of parallel jobs, defaults to # of CPUs
# rustc = "rustc" # the rust compiler tool
# rustc-wrapper = "…" # run this wrapper instead of `rustc`
# rustc-workspace-wrapper = "…" # run this wrapper instead of `rustc` for workspace members
# rustdoc = "rustdoc" # the doc generator tool
# target = "triple" # build for the target triple (ignored by `cargo install`)
# target-dir = "target" # path of where to place all generated artifacts
rustflags = [
"-Wclippy::pedantic",
"-Aclippy::needless_pass_by_value",
"-Aclippy::must_use_candidate",
"-Aclippy::missing_panics_doc",
"-Aclippy::missing_errors_doc",
# "-Aclippy::missing_safety_doc",
# "-Aclippy::inline_always",
# "-Aclippy::default_trait_access",
# "-Aclippy::module_name_repetitions",
# "-Aclippy::module_name_repetitions",
# "-Aclippy::too_many_lines",
# "-Aclippy::cast_possible_truncation",
# "-Aclippy::cast_sign_loss",
# "-Aclippy::cast_possible_wrap",
# "-Aclippy::similar_names",
# "-Aclippy::doc_markdown",
# "-Aclippy::struct_excessive_bools",
# "-Aclippy::cast_lossless",
# "-Aclippy::trivially_copy_pass_by_ref",
# "-Aclippy::wrong_self_convention",
# "-Aclippy::unused_self",
# "-Aclippy::enum_glob_use",
# "-Aclippy::return_self_not_must_use",
# "-Aclippy::map_entry",
# "-Aclippy::match_same_arms",
# "-Aclippy::iter_not_returning_iterator",
# "-Aclippy::unnecessary_wraps",
# "-Aclippy::type_complexity",
] # custom flags to pass to all compiler invocations
# rustdocflags = ["…", "…"] # custom flags to pass to rustdoc
# incremental = true # whether or not to enable incremental compilation
# dep-info-basedir = "…" # path for the base directory for targets in depfiles

# [doc]
# browser = "chromium" # browser to use with `cargo doc --open`,
# # overrides the `BROWSER` environment variable

# [env]
# # Set ENV_VAR_NAME=value for any process run by Cargo
# ENV_VAR_NAME = "value"
# # Set even if already present in environment
# ENV_VAR_NAME_2 = { value = "value", force = true }
# # Value is relative to .cargo directory containing `config.toml`, make absolute
# ENV_VAR_NAME_3 = { value = "relative/path", relative = true }

# [future-incompat-report]
# frequency = 'always' # when to display a notification about a future incompat report

# [cargo-new]
# vcs = "none" # VCS to use ('git', 'hg', 'pijul', 'fossil', 'none')

# [http]
# debug = false # HTTP debugging
# proxy = "host:port" # HTTP proxy in libcurl format
# ssl-version = "tlsv1.3" # TLS version to use
# ssl-version.max = "tlsv1.3" # maximum TLS version
# ssl-version.min = "tlsv1.1" # minimum TLS version
# timeout = 30 # timeout for each HTTP request, in seconds
# low-speed-limit = 10 # network timeout threshold (bytes/sec)
# cainfo = "cert.pem" # path to Certificate Authority (CA) bundle
# check-revoke = true # check for SSL certificate revocation
# multiplexing = true # HTTP/2 multiplexing
# user-agent = "…" # the user-agent header

# [install]
# root = "/some/path" # `cargo install` destination directory

# [net]
# retry = 2 # network retries
# git-fetch-with-cli = true # use the `git` executable for git operations
# offline = true # do not access the network

# [net.ssh]
# known-hosts = ["..."] # known SSH host keys

# [patch.<registry>]
# # Same keys as for [patch] in Cargo.toml

# [profile.<name>] # Modify profile settings via config.
# inherits = "dev" # Inherits settings from [profile.dev].
# opt-level = 0 # Optimization level.
# debug = true # Include debug info.
# split-debuginfo = '...' # Debug info splitting behavior.
# debug-assertions = true # Enables debug assertions.
# overflow-checks = true # Enables runtime integer overflow checks.
# lto = false # Sets link-time optimization.
# panic = 'unwind' # The panic strategy.
# incremental = true # Incremental compilation.
# codegen-units = 16 # Number of code generation units.
# rpath = false # Sets the rpath linking option.
# [profile.<name>.build-override] # Overrides build-script settings.
# # Same keys for a normal profile.
# [profile.<name>.package.<name>] # Override profile for a package.
# # Same keys for a normal profile (minus `panic`, `lto`, and `rpath`).

# [registries.<name>] # registries other than crates.io
# index = "…" # URL of the registry index
# token = "…" # authentication token for the registry

# [registry]
# default = "…" # name of the default registry
# token = "…" # authentication token for crates.io

# [source.<name>] # source definition and replacement
# replace-with = "…" # replace this source with the given named source
# directory = "…" # path to a directory source
# registry = "…" # URL to a registry source
# local-registry = "…" # path to a local registry source
# git = "…" # URL of a git repository source
# branch = "…" # branch name for the git repository
# tag = "…" # tag name for the git repository
# rev = "…" # revision for the git repository

# [target.<triple>]
# linker = "…" # linker to use
# runner = "…" # wrapper to run executables
# rustflags = ["…", "…"] # custom flags for `rustc`

# [target.<cfg>]
# runner = "…" # wrapper to run executables
# rustflags = ["…", "…"] # custom flags for `rustc`

# [target.<triple>.<links>] # `links` build script override
# rustc-link-lib = ["foo"]
# rustc-link-search = ["/path/to/foo"]
# rustc-flags = ["-L", "/some/path"]
# rustc-cfg = ['key="value"']
# rustc-env = {key = "value"}
# rustc-cdylib-link-arg = ["…"]
# metadata_key1 = "value"
# metadata_key2 = "value"

# [term]
# quiet = false # whether cargo output is quiet
# verbose = false # whether cargo provides verbose output
# color = 'auto' # whether cargo colorizes output
# progress.when = 'auto' # whether cargo shows progress bar
# progress.width = 80 # width of progress bar
2 changes: 2 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
target/
.soroban/
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Cargo.lock text -merge eol=lf
cmd/crates/soroban-spec-typescript/fixtures/**/* linguist-generated=true -diff
3 changes: 3 additions & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Involve the contract committer team when making changes to the soroban
# contract build command.
/cmd/soroban-cli/src/commands/contract/build.rs @stellar/contract-committers
55 changes: 55 additions & 0 deletions .github/actions/setup-go/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: 'Setup the Go environment'
description: 'Installs go and restores/saves the build/module cache'
inputs:
go-version:
required: true
runs:
using: "composite"
steps:
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: ${{ inputs.go-version }}
stable: ${{ !(contains(inputs.go-version, 'beta') || contains(inputs.go-version, 'rc')) }}

# Restore original modification time of files based on the date of the most
# recent commit that modified them as mtimes affect the Go test cache.
- name: Restore modification time of checkout files
shell: bash
run: |
# Set a base, fixed modification time of all directories.
# git-restore-mtime doesn't set the mtime of all directories.
# (see https://github.com/MestreLion/git-tools/issues/47 for details)
touch -m -t '201509301646' $(find . -type d -not -path '.git/*')
# Restore original modification time from git. git clone sets the
# modification time to the current time, but Go tests that access fixtures
# get invalidated if their modification times change.
sudo apt-get install -y git-restore-mtime
git restore-mtime

# The PREFIX must uniquely identify the specific instance of a job executing.
- shell: bash
run: echo 'PREFIX=${{ github.workflow }}-${{ github.job }}-${{ runner.os }}-${{ inputs.go-version }}-matrix(${{ join(matrix.*,'|') }})' >> $GITHUB_ENV

# Cache the Go Modules downloaded during the job.
- uses: actions/cache@v2
with:
path: ~/go/pkg/mod
key: ${{ env.PREFIX }}-go-mod-${{ hashFiles('**/go.sum') }}
restore-keys: ${{ env.PREFIX }}-go-mod-

# Cache any build and test artifacts during the job, which will speed up
# rebuilds and cause test runs to skip tests that have no reason to rerun.
- uses: actions/cache@v2
with:
path: ~/.cache/go-build
key: ${{ env.PREFIX }}-go-build-${{ github.ref }}-${{ hashFiles('**', '!.git') }}
restore-keys: |
${{ env.PREFIX }}-go-build-${{ github.ref }}-
${{ env.PREFIX }}-go-build-

# Reset the cache for master/protected branches, to ensure they build and run the tests from zero
# and that the module cache is cleaned (otherwise it accumulates orphan dependencies over time).
- if: github.ref_protected
shell: bash
run: sudo rm -rf ~/.cache/go-build ~/go/pkg/mod
61 changes: 61 additions & 0 deletions .github/actions/setup-integration-tests/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: 'Set up integration tests'
description: 'Set up Go & Rust, build artifacts, work around cache issues and Ubuntu quirks'
inputs:
go-version:
required: true
runs:
using: "composite"
steps:
- uses: ./.github/actions/setup-go
with:
go-version: ${{ matrix.go }}
- uses: stellar/actions/rust-cache@main
- name: Build soroban contract fixtures
shell: bash
run: |
rustup update
rustup target add wasm32-unknown-unknown
make build_rust
make build-test-wasms
- name: Install Captive Core
shell: bash
run: |
# Workaround for https://github.com/actions/virtual-environments/issues/5245,
# libc++1-8 won't be installed if another version is installed (but apt won't give you a helpful
# message about why the installation fails)
sudo apt-get remove -y libc++1-10 libc++abi1-10 || true
sudo wget -qO - https://apt.stellar.org/SDF.asc | APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=true sudo apt-key add -
sudo bash -c 'echo "deb https://apt.stellar.org focal unstable" > /etc/apt/sources.list.d/SDF-unstable.list'
sudo apt-get update && sudo apt-get install -y stellar-core="$PROTOCOL_20_CORE_DEBIAN_PKG_VERSION"
echo "Using stellar core version $(stellar-core version)"
# Docker-compose's remote contexts on Ubuntu 20 started failing with an OpenSSL versioning error.
# See https://stackoverflow.com/questions/66579446/error-executing-docker-compose-building-webserver-unable-to-prepare-context-un
- name: Work around Docker Compose problem
shell: bash
run: |
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
# Install docker apt repo
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Install docker-compose v2 from apt repo
sudo apt-get update
sudo apt-get remove -y moby-compose
sudo apt-get install -y docker-compose-plugin
echo "Docker Compose Version:"
docker-compose version
- name: Build libpreflight
shell: bash
run: make build-libpreflight
11 changes: 11 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
### What

[TODO: Short statement about what is changing.]

### Why

[TODO: Why this change is being made. Include any context required to understand the why.]

### Known limitations

[TODO or N/A]
43 changes: 43 additions & 0 deletions .github/workflows/bindings-ts.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@

name: bindings typescript

on:
push:
branches: [main, release/**]
pull_request:

jobs:
test:
name: test generated libraries
runs-on: ubuntu-22.04
services:
rpc:
image: stellar/quickstart:soroban-dev@sha256:0ad51035cf7caba2fd99c7c1fad0945df6932be7d5c893e1520ccdef7d6a6ffe
ports:
- 8000:8000
env:
ENABLE_LOGS: true
NETWORK: local
ENABLE_SOROBAN_RPC: true
options: >-
--health-cmd "curl --no-progress-meter --fail-with-body -X POST \"http://localhost:8000/soroban/rpc\" -H 'Content-Type: application/json' -d '{\"jsonrpc\":\"2.0\",\"id\":8675309,\"method\":\"getNetwork\"}' && curl --no-progress-meter \"http://localhost:8000/friendbot\" | grep '\"invalid_field\": \"addr\"'"
--health-interval 10s
--health-timeout 5s
--health-retries 50
steps:
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- run: rustup update
- run: cargo build
- run: rustup target add wasm32-unknown-unknown
- run: make build-test-wasms
- run: npm ci && npm run test
working-directory: cmd/crates/soroban-spec-typescript/ts-tests
15 changes: 15 additions & 0 deletions .github/workflows/bump-version.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Bump Version

on:
workflow_dispatch:
inputs:
version:
description: 'Version to bump to'
required: true

jobs:

bump-version:
uses: stellar/actions/.github/workflows/rust-bump-version.yml@main
with:
version: ${{ inputs.version }}
Loading
Loading