Commit Graph

1102 Commits

Author SHA1 Message Date
Michael Vines b1203da82c
Bump to 0.18.0-pre2 2019-08-20 16:56:00 -07:00
Michael Vines dd4640e1ed
Revert "Revert "Bump version to 0.18.0-pre1""
This reverts commit 42c7d57fc0.
2019-08-05 15:55:13 -07:00
Michael Vines 42c7d57fc0
Revert "Bump version to 0.18.0-pre1"
This reverts commit 14f6d5c82b.
2019-08-05 15:53:55 -07:00
Michael Vines 14f6d5c82b
Bump version to 0.18.0-pre1 2019-08-05 15:11:44 -07:00
Dan Albert b8835312bb
Update cargo.toml files to 0.18.0-pre0 (#5303) 2019-07-27 11:42:06 -06:00
Michael Vines d2b21ce8d0
Stop trying to publish crates that are unpublishable 2019-07-12 21:53:09 -07:00
Rob Walker 0d27515d09
tmp dirs target to farf (#5079) 2019-07-12 18:28:42 -07:00
Jack May 2860d2fe27
Pull in support for Rust-BPF stack argument passing (#5038) 2019-07-11 14:27:18 -08:00
Jack May bc8f435d45
Shell script nits (#4982) 2019-07-09 12:09:13 -08:00
Jack May 50c6b5d62d
Work around missing lib on linux (Issue #4972) (#4975) 2019-07-08 22:24:57 -08:00
Jack May f9a2254688
Split out Rust BPF no-std stuff (#4968) 2019-07-08 20:28:05 -08:00
Jack May 841e5e326c
Program mutable lamports (#4964) 2019-07-08 15:52:25 -08:00
carllin 0c8f187993
remove syscall tick height (#4891) 2019-07-01 16:21:51 -07:00
Dan Albert 9911942dbd Increment cargo.toml files to v0.17.0 2019-06-22 04:35:25 +00:00
Jack May a38e1a81ef
Call do.sh from anywhere (#4771) 2019-06-21 12:26:17 -07:00
Jack May 407db65336 Add 128bit Rust BPF test (#4766)
automerge
2019-06-21 02:43:50 -07:00
Jack May 4177c56c51
Use real panic that reports file/line (#4758) 2019-06-20 19:10:03 -07:00
Jack May e59b53dfa8
BPF rust language updates (#4752) 2019-06-20 16:07:12 -07:00
Jack May b430762a23
check rust programs (#4688) 2019-06-20 07:43:31 -07:00
Jack May fdb57bc5db
Add Rust BPF Tick Height test (#4718) 2019-06-18 15:56:24 -07:00
Jack May 2a7a9fdf03
Re-org SDK dir (#4690) 2019-06-17 11:04:38 -07:00
Jack May bc44516eb4
Add test to exercise more args then registers (#4661) 2019-06-12 13:04:53 -07:00
Jack May b78a13d42c
Nits (#4662) 2019-06-12 13:04:24 -07:00
Jack May 0dcdc37fec
Split BPF loader to match the rest of the programs (#4636) 2019-06-12 08:49:59 -07:00
Jack May 439e7cc26a Add dependent crate test (#4647)
automerge
2019-06-11 11:45:12 -07:00
dependabot-preview[bot] 1d957b6b80 Bump byteorder from 1.3.1 to 1.3.2 (#4641)
Bumps [byteorder](https://github.com/BurntSushi/byteorder) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/BurntSushi/byteorder/releases)
- [Changelog](https://github.com/BurntSushi/byteorder/blob/master/CHANGELOG.md)
- [Commits](https://github.com/BurntSushi/byteorder/compare/1.3.1...1.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-11 11:21:26 -07:00
Rob Walker e56430c9fb
make runtime depend on bpf_loader (#4601)
* make runtime depend on bpf_loader

* remove vote redundancy, move bpf_loader to genesis, export program\! from bpf_loader crate

* move bpf_loader specification into genesis

* bpf tests to use genesis with bpf

* need to avoid depending on programs, except for macros
2019-06-11 10:27:22 -07:00
Jack May be3a0b6b10 Build/clean all (#4626)
automerge
2019-06-10 11:15:28 -07:00
Jack May 9f6496d38a Panic filename (#4625)
automerge
2019-06-10 11:00:15 -07:00
Jack May 1fa31c9410 .iter fixed, drop enumerate where not needed (#4624)
automerge
2019-06-10 10:19:58 -07:00
Jack May 66c41b3e8c Enable iter test (#4542)
automerge
2019-06-07 16:44:14 -07:00
Jack May 9a4c449135 Builtins (#4594)
automerge
2019-06-07 14:38:49 -07:00
Tyera Eulberg 64e8a21d73
Add tick height syscall (#4497)
* Remove tick_height from entrypoint signature

* Impl tick_height syscall and use in storage program

* Properly remove tick height from bpf handling
2019-05-31 16:29:21 -06:00
Michael Vines 7a021dff05
Beautify Cargo.tomls with |cargo tomlfmt| (#4477) 2019-05-29 18:30:49 -07:00
Michael Vines ed6a438c51
v0.16.0 2019-05-26 19:42:15 -07:00
Jack May bfa1c025fd
Add rust bpf allocator (#4426) 2019-05-24 16:21:42 -07:00
Michael Vines cfe5afd34c
_id => _pubkey variable renaming (#4419)
* wallet: rename *_account_id to *_account_pubkey

* s/from_id/from_pubkey/g

* s/node_id/node_pubkey/g

* s/stake_id/stake_pubkey/g

* s/voter_id/voter_pubkey/g

* s/vote_id/vote_pubkey/g

* s/delegate_id/delegate_pubkey/g

* s/account_id/account_pubkey/g

* s/to_id/to_pubkey/g

* s/my_id/my_pubkey/g

* cargo fmt

* s/staker_id/staker_pubkey/g

* s/mining_pool_id/mining_pool_pubkey/g

* s/leader_id/leader_pubkey/g

* cargo fmt

* s/funding_id/funding_pubkey/g
2019-05-23 23:20:04 -07:00
Jack May 2f7561e4ee
Split SDK's BPF Rust-utils (#4369) 2019-05-21 13:39:27 -07:00
Jack May 28f948aa7f
Multi rust projects (#4362) 2019-05-21 11:22:33 -07:00
Jack May bc74ee7117
Common Rust-BPF utilities and types (#4325) 2019-05-17 11:04:29 -07:00
Jack May 9271ba0039
Cleanup Rust BPF program building (#4318) 2019-05-16 17:35:42 -07:00
dependabot[bot] d40b66ff7b Bump solana_rbpf from 0.1.10 to 0.1.11 (#4304)
Bumps [solana_rbpf](https://github.com/solana-labs/rbpf) from 0.1.10 to 0.1.11.
- [Release notes](https://github.com/solana-labs/rbpf/releases)
- [Commits](https://github.com/solana-labs/rbpf/commits/v0.1.11)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-16 01:07:10 -07:00
dependabot[bot] 1d327a5167 Bump bincode from 1.1.3 to 1.1.4 (#4290)
Bumps [bincode](https://github.com/TyOverby/bincode) from 1.1.3 to 1.1.4.
- [Release notes](https://github.com/TyOverby/bincode/releases)
- [Commits](https://github.com/TyOverby/bincode/compare/v1.1.3...v1.1.4)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-15 09:47:55 -06:00
Rob Walker a80176496d
add /target/ to .gitignore files for all crates (#4217)
* add /target/ to .gitignore files for all crates

* shellcheck
2019-05-08 12:15:05 -07:00
Rob Walker 8e400fc4bd
rework genesis (passive staking groundwork) (#4187)
* rework genesis

* fixup
2019-05-07 11:16:22 -07:00
Michael Vines 656e2649a7
v0.15.0 2019-04-27 07:38:46 -07:00
Greg Fitzgerald 51a2988bb2
Revert "Rename programs to instruction_processors (#3789)" (#3824)
This reverts commit 34344982a9.
2019-04-17 15:05:49 -06:00
Amr Ali 34344982a9
Rename programs to instruction_processors (#3789)
* Rename programs to instruction_processors

* Updates around the code base to support instruction_processors rename

* Kabab instruction_processors

* Update Cargo.toml files and scripts to use instruction-processors

* Update Cargo.toml to use instruction-processors

* Update CI scripts to use instruction-processors
2019-04-16 22:39:00 +02:00
Dan Albert 8638b3bb19 Update Cargo.toml files for version = 0.14.0 2019-04-16 02:50:20 +00:00
Greg Fitzgerald a28c3b0e9a Consume Bank in BankClient
This will allow BankClient to spin up a thread to use the Bank.
It'll also ease the transaction from BankClient to ThinClient since
it won't let you depend on Bank.

Drawback, you the transition from Bank to BankClient will be harder
because the Bank methods are inaccessible.
2019-04-11 12:16:33 -07:00
Jack May d0f46d6a8a
Cleanup client traits and create super trait (#3728) 2019-04-11 00:25:14 -07:00
dependabot[bot] 7295a84d69 Bump bincode from 1.1.2 to 1.1.3 (#3672)
Bumps [bincode](https://github.com/TyOverby/bincode) from 1.1.2 to 1.1.3.
- [Release notes](https://github.com/TyOverby/bincode/releases)
- [Commits](https://github.com/TyOverby/bincode/compare/v1.1.2...v1.1.3)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-04-08 12:55:18 -07:00
Greg Fitzgerald 5cd7bccdf3 Add SyncClient and use from BankClient 2019-04-04 12:00:19 -06:00
Greg Fitzgerald 3fc09fb23f Remove keypairs from BankClient
Bring its interface closer to the other clients.
2019-03-27 09:37:19 -06:00
Greg Fitzgerald d2415613de Migrate loader tests to BankClient 2019-03-21 09:19:24 -06:00
Greg Fitzgerald e091aa87ea More precise constructor names 2019-03-15 14:46:44 -06:00
Greg Fitzgerald c1eec0290e
Rename userdata to data (#3282)
* Rename userdata to data

Instead of saying "userdata", which is ambiguous and imprecise,
say "instruction data" or "account data".

Also, add `ProgramError::InvalidInstructionData`

Fixes #2761
2019-03-14 10:48:27 -06:00
Michael Vines 6899bd7099
0.13.0 2019-03-11 16:21:19 -07:00
Rob Walker 195a880576
pass Pubkeys as refs, copy only where values needed (#3213)
* pass Pubkeys as refs, copy only where values needed

* Pubkey is pervasive

* fixup
2019-03-09 19:28:43 -08:00
Michael Vines e2d30db7e1 Rename tokens to lamports 2019-03-05 17:56:44 -08:00
Michael Vines 3129e299e4 Rename tokens to lamports in programs/ 2019-03-05 17:56:44 -08:00
Michael Vines 03d6c9a552 Defeature bpf_loader; bpf_{c,rust} features now confined to programs/bpf 2019-03-04 11:02:37 -08:00
Greg Fitzgerald fc5fcd6cd4 Move native_loader into solana_runtime 2019-03-03 10:59:08 -07:00
Michael Vines b8b7de5522 Script can now be run from any directory 2019-03-02 22:11:48 -08:00
Michael Vines 109101c2dc Cleanup features and fix build errors 2019-03-02 22:11:48 -08:00
Greg Fitzgerald 41b5899856 Move programs/Cargo.toml into bpf/ 2019-03-02 22:11:48 -08:00
Jack May b9524217fe
Update rust example to use BPF enabled infrastructure (#2974) 2019-02-28 22:05:11 -08:00
Jack May ba5077701d
Avoid possible simplified lowering of passed struct (#2938) 2019-02-25 17:05:59 -08:00
Jack May 5f565c92c9
cargo incremental builds breaks Rust BPF, locally disable it (#2674) 2019-02-06 13:59:10 -08:00
Jack May a0bc8b8af3
BPF programs can support up to 5 arguments (#2528) 2019-01-23 09:55:08 -08:00
Jack May a6773ad442 Specify entrypoint when building rust programs 2019-01-14 20:13:01 -08:00
Jak May e9a0b3a8f3
Add BPF-to-BPF and PC relative call tests (#2395) 2019-01-11 19:33:08 -08:00
Jak May 23c43ed21b
Multi-file BPF C builds (#2393) 2019-01-11 15:33:21 -08:00
jackcmay a461c5682d
First stab at Rust BPF (#2269)
First stab at Rust BPF
2019-01-02 15:12:42 -08:00
Michael Vines 0e567381fb
v0.12.0 2018-12-19 17:03:28 -08:00
Michael Vines 60f3aeb4ef clippy fix 2018-12-13 23:40:26 -08:00
Michael Vines 092edabd2d Add homepage field to all crates 2018-12-13 22:25:27 -08:00
jackcmay cefbb7c27d
Fix shared object relcations with multiple static arrays (#2121) 2018-12-12 08:41:45 -08:00
jackcmay 935524f20c
Fix eh frame relocation (#2109)
* Exclude .eh_frame
2018-12-11 12:14:41 -08:00
jackcmay e3dfd7b1ab
Allow BPF structure passing and returning (#2100)
* Add BPF struct passing and returning tests
2018-12-11 09:03:37 -08:00
Michael Vines e52f3f34a4 Autoinstall dependencies in the SDK itself 2018-12-01 10:47:59 -08:00
Michael Vines 7c3e6e8e86 Move bpf-sdk to sdk/bpf 2018-12-01 10:47:59 -08:00
jackcmay b00011a3f1
Use custom LLVM (#1971)
BPF SDK uses custom LLVM
2018-11-30 14:33:29 -08:00
Michael Vines bad0b55ab6 Expose which keys signed the Transaction in the SDK 2018-11-30 08:16:23 -08:00
jackcmay 0c091c1b24
Dockerized LLVM (#1914)
Optionally build with dockererized custom llvm
2018-11-28 14:41:53 -08:00
Michael Vines 83c0711760 Rename SolKeyedAccounts to SolKeyedAccount 2018-11-27 15:36:04 -08:00
Michael Vines ec0a56cb9c Tokens are unsigned 2018-11-27 10:14:37 -08:00
Michael Vines f0d24a68ee Configure -rpath to locate libcriterion 2018-11-26 21:16:42 -08:00
Michael Vines c7f678688d Stub out log functions when building tests 2018-11-26 15:41:49 -08:00
Michael Vines 7bf4c08f70 Add BPF C unittest framework 2018-11-26 12:25:29 -08:00
Michael Vines 826ac80e62 Avoid subverting bool return value 2018-11-26 09:11:40 -08:00
Michael Vines 4506584c48 Employ stdbool.h, add stub wchar.h 2018-11-26 09:11:40 -08:00
Michael Vines c1af48bd85 Rename program_id => owner 2018-11-18 16:24:13 -08:00
Michael Vines 3822c29415 Route program_id to program entrypoint 2018-11-17 19:42:03 -08:00
Michael Vines 201a4b7b2a
Advance input pointer correctly 2018-11-17 10:30:21 -08:00
jackcmay 39c87fd103
Add BPF benchmarks 2018-11-14 12:06:06 -08:00
Michael Vines 2ad2fdd235
Remove inline simple program to avoid maintenance burden 2018-11-14 10:39:22 -08:00
Michael Vines 1fda4b77ef Expose tick_height to bpf programs 2018-11-14 10:33:27 -08:00
Michael Vines 860dcdb449 Stubs for some libc headers 2018-11-13 17:44:46 -08:00
Michael Vines 70cebaf74a Add size_t/ssize_t/sol_memset/sol_strlen 2018-11-13 17:44:46 -08:00
Michael Vines 317fe19da7 Fix INC_DIRS usage 2018-11-13 17:44:46 -08:00
Michael Vines e702515312 Add basic C++ support 2018-11-12 09:08:40 -08:00
Michael Vines def7d156f6 codemod --extensions sh '#!/usr/bin/env bash -e' '#!/usr/bin/env bash\nset -e' 2018-11-11 16:24:36 -08:00
Michael Vines 33aab094ef codemod --extensions sh '#!/bin/bash' '#!/usr/bin/env bash' 2018-11-11 16:24:36 -08:00
Rob Walker 3ccbf81646
Update README.md 2018-11-07 13:04:14 -08:00
Rob Walker 2e38cd98c0
Update README.md 2018-11-07 12:58:24 -08:00
jackcmay 1075a73902 Elf relocations (#1724)
Use relocatable BPF ELFs
2018-11-07 09:40:23 -08:00
Greg Fitzgerald c9138f964b Change token type from i64 to u64
Fixes #1526
2018-11-05 15:25:26 -07:00
Michael Vines ed09b2bdb8
Document BPF C program limitations 2018-11-04 12:31:38 -08:00
Michael Vines b8534a402d
shell 2018-11-01 15:25:27 -07:00
Michael Vines 45b9a7f8e9
shell 2018-11-01 14:40:21 -07:00
Michael Vines 6b777b066a Find clang 7 better
If LLVM_DIR is defined, use it to locate clang.  Otherwise use brew on
macOS, and assume clang-7 otherwise
2018-11-01 09:48:38 -07:00
Michael Vines 1e01088698 Improve clang install info for Linux 2018-11-01 09:48:38 -07:00
Michael Vines 3ea0651078 Rename sol_bpf.h to solana_sdk.h 2018-10-31 23:46:34 -07:00
Michael Vines 776b1c2294 sol_bpf.h improvements
- Define NULL
- Add sol_memcmp()
- Use sizeof() more
- Add SOL_ARRAY_SIZE
- Make sol_deserialize() more flexible
2018-10-31 23:46:34 -07:00
Michael Vines 5ecb9da801 Fix up bpf numeric types 2018-10-31 20:53:44 -07:00
jackcmay aca2f9666d
Fix deps (#1672) 2018-10-31 10:12:17 -07:00
Michael Vines b74e085538 SYSTEM_INC_DIRS needs immediate expansion 2018-10-31 07:20:09 -07:00
Jack May 899de2ff56 Revert inclusion change, fix doc 2018-10-31 07:03:38 -07:00
Jack May cf521a5bd2 Fix const 2018-10-31 07:03:38 -07:00
Jack May bc13248e1c Fix C programs 2018-10-31 07:03:38 -07:00
Michael Vines 45bb97cad6
Permit {INC,LLVM,OUT,SRC,SYSTEM_INC}_DIRs to be overridden 2018-10-30 07:59:07 -07:00
Michael Vines 546e4c5696 Remove bpf tictactoe 2018-10-29 21:43:37 -07:00
Michael Vines 30b22c8b78 Use NUM_KA 2018-10-29 20:52:38 -07:00
Michael Vines 6f5e92e5b3 README updates 2018-10-29 20:52:38 -07:00
Michael Vines cce5c70f29 LD -> LLC 2018-10-29 20:52:38 -07:00
Michael Vines 4af7c82ef0 Add extern "C" block 2018-10-29 20:52:38 -07:00
Michael Vines 52e5fb7e0c Use #pragma once, it's widely supported
Fix up some spelling too
2018-10-29 20:52:38 -07:00
Michael Vines a013e8ceb1 Rename sol_bpf_c.h to sol_bpf.h 2018-10-29 20:52:38 -07:00
Michael Vines 864632b582 slight reformatting 2018-10-29 20:52:38 -07:00
Michael Vines 71d6eaacef Apply some const 2018-10-29 20:52:38 -07:00
Michael Vines 4aba05d749 Include system includes in .d, remove unneeded tabs 2018-10-29 20:52:38 -07:00
Michael Vines 7d335165ec
Tune make output 2018-10-29 19:32:47 -07:00
Michael Vines 37213209c5 Create programs/bpf/c/sdk/ 2018-10-29 19:10:29 -07:00
Michael Vines ebcb9a2103 Add llvm install info 2018-10-29 10:00:45 -07:00
Michael Vines 6fb2e080bc Ignore out/ 2018-10-29 10:00:45 -07:00
Michael Vines 3ac5ffc188 Use V=1 for verbosity, easier to type 2018-10-29 10:00:45 -07:00
Michael Vines 88187ef282 Find llvm using brew on macOS 2018-10-29 10:00:45 -07:00
jackcmay 3488ea7d1c
Cleanup c programs (#1620)
Cleanup C programs
2018-10-26 19:38:07 -07:00
Michael Vines 9e5ac76855
0.11.0 2018-10-25 17:19:07 -07:00
Michael Vines 48685cf766
0.10.0-pre2 2018-10-25 16:19:31 -07:00
Michael Vines 1733beabf7 mv common/ sdk/ 2018-10-25 13:26:10 -07:00
Michael Vines 471d8f6ff9 Fix up the version references to all other internal crates 2018-10-25 12:54:32 -07:00
Michael Vines e47fcb196b s/solana_program_interface/solana[_-]sdk/g 2018-10-25 12:31:45 -07:00
Michael Vines 9447537d8c Increment internal Cargo references to solana_program_interface 2018-10-25 11:03:03 -07:00
jackcmay eb377993b3
Debug scripts point to debug flavor (#1585) 2018-10-23 14:48:50 -07:00
jackcmay 0339642e77
Added TicTacToe Dashboard and tests (#1547)
* Add tictactoe dashboard and tests
2018-10-18 14:19:25 -07:00
jackcmay c886625c83
Move from solana/rbpf fork to qmonnet/rbpf (#1511) 2018-10-16 13:13:54 -07:00
jackcmay d09889b1dd
Program bank integration (#1462)
Native, BPF and Lua loaders integrated into the bank
2018-10-16 09:43:49 -07:00
Greg Fitzgerald da0404ad03 Reduce maintenance of maintainers list 2018-10-04 23:05:08 -07:00
Jack May d901767b54 Makefile is not relevant 2018-10-04 10:35:48 -07:00
jackcmay 13d4443d4d
Add BPF support & C-based BPF tic-tac-toe (#1422)
Add initial support for BPF and a C port of tictactoe
2018-10-04 09:44:44 -07:00