Aaron Hill
b0cb2b0106
Replace FIXME with an issue link
2020-07-14 14:40:02 -07:00
Aaron Hill
05445c718e
Fix hygiene issues in `declare_program!` and `declare_loader!`
...
The `declare_program!` and `declare_loader!` macros both expand to
new macro definitions (based on the `$name` argument). These 'inner'
macros make use of the special `$crate` metavariable to access items in
the crate where the 'inner' macros is defined.
However, this only works due to a bug in rustc. When a macro is
expanded, all `$crate` tokens in its output are 'marked' as being
resolved in the defining crate of that macro. An inner macro (including
the body of its arms) is 'just' another set of tokens that appears in
the body of the outer macro, so any `$crate` identifiers used there are
resolved relative to the 'outer' macro.
For example, consider the following code:
```rust
macro_rules! outer {
() => {
macro_rules! inner {
() => {
$crate::Foo
}
}
}
}
```
The path `$crate::Foo` will be resolved relative to the crate that defines `outer`,
**not** the crate which defines `inner`.
However, rustc currently loses this extra resolution information
(referred to as 'hygiene' information) when a crate is serialized.
In the above example, this means that the macro `inner` (which gets
defined in whatever crate invokes `outer!`) will behave differently
depending on which crate it is invoked from:
When `inner` is invoked from the same crate in which it is defined,
the hygiene information will still be available,
which will cause `$crate::Foo` to be resolved in the crate which defines 'outer'.
When `inner` is invoked from a different crate, it will be loaded from
the metadata of the crate which defines 'inner'. Since the hygiene
information is currently lost, rust will 'forget' that `$crate::Foo` is
supposed to be resolved in the context of 'outer'. Instead, it will be
resolved relative to the crate which defines 'inner', which can cause
incorrect code to compile.
This bug will soon be fixed in rust (see https://github.com/rust-lang/rust/pull/72121 ),
which will break `declare_program!` and `declare_loader!`. Fortunately,
it's possible to obtain the desired behavior (`$crate` resolving in the
context of the 'inner' macro) by use of a procedural macro.
This commit adds a `respan!` proc-macro to the `sdk/macro` crate.
Using the newly-stabilized (on Nightly) `Span::resolved_at` method,
the `$crate` identifier can be made to be resolved in the context of the
proper crate.
Since `Span::resolved_at` is only stable on the latest nightly,
referencing it on an earlier version of Rust will cause a compilation error.
This requires the `rustversion` crate to be used, which allows conditionally
compiling code epending on the Rust compiler version in use. Since this method is already
stabilized in the latest nightly, there will never be a situation where
the hygiene bug is fixed (e.g. https://github.com/rust-lang/rust/pull/72121 )
is merged but we are unable to call `Span::resolved_at`.
2020-07-14 14:40:02 -07:00
dependabot-preview[bot]
5055028231
Bump serde_json from 1.0.54 to 1.0.56
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.54 to 1.0.56.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.54...v1.0.56 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-14 11:13:22 -07:00
Ryo Onodera
de379a8cd6
Ensure to digest non-empty snapshot_storages and add asserts ( #11021 )
...
* Add asserts to detect not-digestable example data
* Ensure to digest non-empty snapshot_storages
2020-07-13 15:58:34 +00:00
Kristofer Peterson
ed5a2f2a90
Fold bank serialisation into serde snapshot ( #10581 )
...
* Move bank (de)serialisation logic from bank and snapshot_utils to serde_snapshot.
Add sanity assertions between genesis config and bank fields on deserialisation.
Atomically update atomic bool in quote_for_specialization_detection().
Use same genesis config when restoring snapshots in test cases.
* Tidy up namings and duplicate structs to version
* Apply struct renames to tests
* Update abi hashes
Co-authored-by: Ryo Onodera <ryoqun@gmail.com>
2020-07-13 23:00:59 +09:00
dependabot-preview[bot]
33f5c17e46
Bump generic-array from 0.14.1 to 0.14.3 ( #11010 )
...
* Bump generic-array from 0.14.1 to 0.14.3
Bumps [generic-array](https://github.com/fizyk20/generic-array ) from 0.14.1 to 0.14.3.
- [Release notes](https://github.com/fizyk20/generic-array/releases )
- [Changelog](https://github.com/fizyk20/generic-array/blob/master/CHANGELOG.md )
- [Commits](https://github.com/fizyk20/generic-array/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-07-12 20:59:05 -06:00
Jack May
f0b22b1b23
spl memo linking windows ( #11000 )
...
* Update spl-memo to fix windows linking error
* Only programs need the stubs
Co-authored-by: Ryo Onodera <ryoqun@gmail.com>
2020-07-10 18:39:52 -07:00
dependabot-preview[bot]
841ecfd927
chore(deps): bump bincode from 1.2.1 to 1.3.1 ( #10867 )
...
* chore(deps): bump bincode from 1.2.1 to 1.3.1
Bumps [bincode](https://github.com/servo/bincode ) from 1.2.1 to 1.3.1.
- [Release notes](https://github.com/servo/bincode/releases )
- [Commits](https://github.com/servo/bincode/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
* Switch from deprecated method
* Add options to maintain behavior with bincode::options()
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
Co-authored-by: Tyera Eulberg <tyera@solana.com>
2020-07-09 00:08:05 +00:00
Tyera Eulberg
1a6bbd2867
Limited Deserialize isn't limiting anything ( #10952 )
...
* Add failing test
* Use deserialize_from to enable limit
2020-07-08 15:54:42 -06:00
Greg Fitzgerald
119949d4d8
Add a default commitment-level ( #10935 )
2020-07-07 03:05:55 +00:00
Ryo Onodera
39b3ac6a8d
Introduce automatic ABI maintenance mechanism (2/2; rollout) ( #8012 )
...
* Introduce automatic ABI maintenance mechanism (2/2; rollout)
* Fix stable clippy
* Change to symlink
* Freeze abi of Tower
* fmt...
* Improve dev-experience!
* Update BankSlotDelta
$ diff -u /tmp/abi8/*7dg6BreYxTuxiVz6aLvk3p2Z7GQk2cJqfGvC9h4FAoSj* /tmp/abi8/*9chBcbXVJ4fK7uGgydQzam5aHipaAKFw6V4LDFpjbE4w*
--- /tmp/abi8/bank__BankSlotDelta_frozen_abi__test_abi_digest_7dg6BreYxTuxiVz6aLvk3p2Z7GQk2cJqfGvC9h4FAoSj 2020-06-18 18:01:22.831228087 +0900
+++ /tmp/abi8/bank__BankSlotDelta_frozen_abi__test_abi_digest_9chBcbXVJ4fK7uGgydQzam5aHipaAKFw6V4LDFpjbE4w 2020-07-03 15:59:58.430695244 +0900
@@ -140,7 +140,7 @@
field u8
primitive u8
field solana_sdk::instruction::InstructionError
- enum InstructionError (variants = 34)
+ enum InstructionError (variants = 35)
variant(0) GenericError (unit)
variant(1) InvalidArgument (unit)
variant(2) InvalidInstructionData (unit)
@@ -176,6 +176,7 @@
variant(31) CallDepth (unit)
variant(32) MissingAccount (unit)
variant(33) ReentrancyNotAllowed (unit)
+ variant(34) MaxSeedLengthExceeded (unit)
variant(9) CallChainTooDeep (unit)
variant(10) MissingSignatureForFee (unit)
variant(11) InvalidAccountIndex (unit)
* Fix some merge conflicts...
2020-07-06 20:22:23 +09:00
Jack May
52526a9bc2
Prevent stub inclusion when building shared objects ( #10875 )
2020-07-01 13:15:30 -07:00
Michael Vines
36f436c760
`genesis` subcommand now displays ticks per slot
2020-07-01 17:32:35 +00:00
Ryo Onodera
9f5bd5fe81
Expose SlotHistory::oldest() -> Slot ( #10799 )
2020-06-25 18:23:31 +09:00
Greg Fitzgerald
7ade330b23
Rename Client methods to match proposed BanksClient ( #10793 )
2020-06-25 03:35:38 +00:00
Greg Fitzgerald
1c498369b5
Remove fee-payer guesswork from Message and Transaction ( #10776 )
...
* Make Message::new_with_payer the default constructor
* Remove Transaction::new_[un]signed_instructions
These guess the fee-payer instead of stating it explicitly
2020-06-24 14:52:38 -06:00
Jack May
db4a18ada4
Add PubkeyError for ProgramError ( #10748 )
2020-06-23 11:19:27 -07:00
Jack May
73586c1aad
Use &[u8] for program address seeds rather then &str ( #10744 )
2020-06-22 16:51:43 -07:00
Jack May
d77818c18b
Pull program stubs into SDK ( #10704 )
2020-06-18 23:23:28 -07:00
Greg Fitzgerald
0550b893b0
Fix typos ( #10675 )
...
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-06-17 20:54:52 -07:00
Tyera Eulberg
f37d2d5a58
Add docs to declare_id macro ( #10671 )
2020-06-17 19:57:23 -06:00
Jack May
dac7dc2f10
Move types to more appropriate files ( #10638 )
2020-06-17 10:39:14 -07:00
Ryo Onodera
40ccade5cc
Update to rust 1.44.0 ( #10585 )
...
* Update rust 1.44.0
* Update rust nightly 1.46.0
* Update docs
* Fix clippy errors
* Compile all source code with stable and nightly
* Add another note
* script tweaks
* Fix a test...
* Add another workaround
* Add hack
* Increase timeout...
* Revert "Add hack"
This reverts commit 5960f087203be8792ec0728a6755288c317a2788.
* Revert "Add another workaround"
This reverts commit e14300d01ffd1b8e86e676662177545549b45c13.
* Require nightly rustfmt and use older nightly a bit
* Improve document a bit
* Revert now not-existing clippy check...
2020-06-17 01:32:16 +09:00
dependabot-preview[bot]
480f69cc5e
Bump serde from 1.0.111 to 1.0.112
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.111 to 1.0.112.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.111...v1.0.112 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-15 07:58:16 -07:00
R. M. Shea
48febf153b
Change documentation introduction to indicate Foundation IP transfer ( #10440 )
2020-06-13 14:41:05 -07:00
Jack May
b6a9573748
Route all loader messages to log collector ( #10528 )
2020-06-13 13:20:08 -07:00
Jack May
b03a347803
Document InvokeContext trait ( #10514 )
2020-06-11 15:31:13 -07:00
Greg Fitzgerald
4131eee94d
Expose last-valid-slot to BankClient and ThinClient users ( #10478 )
...
automerge
2020-06-09 17:07:32 -07:00
dependabot-preview[bot]
a264a9dd0b
Bump serde_json from 1.0.53 to 1.0.54
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.53 to 1.0.54.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.53...v1.0.54 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-09 16:57:46 -07:00
Michael Vines
8e2745c2a2
Clean up delinquency slot distance computation
2020-06-09 11:27:30 -07:00
Kristofer Peterson
e23340d89e
Clippy cleanup for all targets and nighly rust (also support 1.44.0) ( #10445 )
...
* address warnings from 'rustup run beta cargo clippy --workspace'
minor refactoring in:
- cli/src/cli.rs
- cli/src/offline/blockhash_query.rs
- logger/src/lib.rs
- runtime/src/accounts_db.rs
expect some performance improvement AccountsDB::clean_accounts()
* address warnings from 'rustup run beta cargo clippy --workspace --tests'
* address warnings from 'rustup run nightly cargo clippy --workspace --all-targets'
* rustfmt
* fix warning stragglers
* properly fix clippy warnings test_vote_subscribe()
replace ref-to-arc with ref parameters where arc not cloned
* Remove lock around JsonRpcRequestProcessor (#10417 )
automerge
* make ancestors parameter optional to avoid forcing construction of empty hash maps
Co-authored-by: Greg Fitzgerald <greg@solana.com>
2020-06-09 09:38:14 +09:00
Jack May
97f9b63507
Improve BPF SDK dependency caching ( #10434 )
2020-06-08 09:20:12 -07:00
Michael Vines
7e2651ca51
RPC simulateTransaction endpoint now returns program log output ( #10432 )
2020-06-06 10:18:28 -07:00
Michael Vines
a4cd96609c
Add built-in programs to InvokeContext ( #10383 )
...
automerge
2020-06-03 12:48:19 -07:00
Ryo Onodera
e63e7937cb
Introduce automatic ABI maintenance mechanism (1/2; prepare) ( #10335 )
...
* Introduce automatic ABI maintenance mechanism
* Compile fix...
* Docs fix...
* Programs compilation fix...
* Simplify source credit
Co-authored-by: Michael Vines <mvines@gmail.com>
* Cargo.lock...
Co-authored-by: Michael Vines <mvines@gmail.com>
2020-06-03 20:51:56 +09:00
dependabot-preview[bot]
f901571026
Bump serde from 1.0.110 to 1.0.111
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.110 to 1.0.111.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.110...v1.0.111 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-02 23:29:14 -07:00
Greg Fitzgerald
19d11800bf
Remove WithSigner ( #10325 )
...
automerge
2020-05-29 23:17:44 -07:00
Greg Fitzgerald
55a64712b9
Cleanup program docs ( #10283 )
2020-05-29 20:29:24 -06:00
Tyera Eulberg
b563b49ed5
Improve Rpc inflation tooling ( #10309 )
...
automerge
2020-05-29 11:50:25 -07:00
Kristofer Peterson
fb4d8e1f62
cleanup clippy tests ( #10172 )
...
automerge
2020-05-29 00:26:06 -07:00
Michael Vines
9eefb2c929
Bump version to 1.3.0
2020-05-28 15:01:13 -07:00
Ryo Onodera
34796d2c81
Include GenesisConfig inflation in Display ( #10282 )
...
automerge
2020-05-27 22:35:19 -07:00
Jack May
2ee0c48980
Program address nits ( #10261 )
...
automerge
2020-05-26 19:32:19 -07:00
Jack May
03abd3ddd7
Prevent privilege escalation ( #10232 )
...
automerge
2020-05-26 01:02:31 -07:00
Jack May
569e3cb46a
Use thiserror's display for TransactionError ( #10233 )
...
automerge
2020-05-25 16:13:09 -07:00
Jack May
27e3ee8799
Re-enable move in docker-solana ( #10214 )
2020-05-24 23:51:37 -07:00
dependabot-preview[bot]
8a8384e674
Bump sha2 from 0.8.1 to 0.8.2 ( #10205 )
...
* Bump sha2 from 0.8.1 to 0.8.2
Bumps [sha2](https://github.com/RustCrypto/hashes ) from 0.8.1 to 0.8.2.
- [Release notes](https://github.com/RustCrypto/hashes/releases )
- [Commits](https://github.com/RustCrypto/hashes/compare/sha2-v0.8.1...sha2-v0.8.2 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-05-24 19:44:04 -07:00
Tyera Eulberg
2928c5d103
Add SingleGossip commitment level to use for subscriptions ( #10147 )
...
automerge
2020-05-22 12:55:17 -07:00
sakridge
2324eb9ff9
Make slot history a billion times faster ( #10175 )
2020-05-22 11:15:16 -07:00
sakridge
ce17de7d25
Add option to wait for a specific epoch length to bench-tps ( #10083 )
2020-05-20 16:42:46 -07:00
Greg Fitzgerald
d9919b99d2
Remove folds ( #10128 )
...
automerge
2020-05-19 18:13:41 -07:00
Greg Fitzgerald
300b33a20e
Add unique_signers() to SDK ( #10105 )
...
automerge
2020-05-18 18:31:45 -07:00
Michael Vines
bbc549f592
Rename program_id to owner in system instructions ( #10069 )
2020-05-18 12:55:41 -07:00
Tyera Eulberg
bac4aec16f
Trigger RPC notifications after block commitment cache update ( #10077 )
...
* Fixup commitment-aggregation metric
* Trigger notifications after commitment-cache update
* Fixup fn name
* Add single-confirmation commitment level
* Rename to highest_confirmed_slot
* Pass commitment-cache info directly to notifications
* Use match
* Update commitment docs
* Update out of date pubsub docs
2020-05-18 12:49:01 -06:00
Greg Fitzgerald
5e89bd8868
Panic if no fee-payer found via Message::new() ( #10050 )
...
automerge
2020-05-15 12:23:09 -07:00
Kristofer Peterson
58ef02f02b
9951 clippy errors in the test suite ( #10030 )
...
automerge
2020-05-15 09:35:43 -07:00
Tyera Eulberg
63813fe69f
Add Ledger error codes ( #10056 )
...
automerge
2020-05-14 21:52:11 -07:00
Jack May
eb1acaf927
Remove archiver and storage program ( #9992 )
...
automerge
2020-05-14 18:22:47 -07:00
Tyera Eulberg
ed53a70b5c
Cli: transfer ALL; check spend+fee in client ( #10012 )
...
* lamports->SOL in user-facing error msg
* Check for sufficient balance for spend and fee
* Add ALL option to solana transfer
* Rework TransferAmount to check for sign_only in parse
* Refactor TransferAmount & fee-check handling to be more general
* Add addl checks mechanism
* Move checks out of cli.rs
* Rename to SpendAmount to be more general & move
* Impl ALL/spend helpers for create-nonce-account
* Impl spend helpers for create-vote-account
* Impl ALL/spend helpers for create-stake-account
* Impl spend helpers for ping
* Impl ALL/spend helpers for pay
* Impl spend helpers for validator-info
* Remove unused fns
* Remove retry_get_balance
* Add a couple unit tests
* Rework send_util fn signatures
2020-05-14 12:24:14 -06:00
Jack May
c5460e7fee
Remove inline from all BPF C functions ( #10038 )
2020-05-13 17:23:39 -07:00
Ryo Onodera
1eb40c3fe0
Introduce eager rent collection ( #9527 )
...
* Switch AccountsIndex.account_maps from HashMap to BTreeMap
* Introduce eager rent collection
* Start to add tests
* Avoid too short eager rent collection cycles
* Add more tests
* Add more tests...
* Refacotr!!!!!!
* Refactoring follow up
* More tiny cleanups
* Don't rewrite 0-lamport accounts to be deterministic
* Refactor a bit
* Do hard fork, restore tests, and perf. mitigation
* Fix build...
* Refactor and add switch over for testnet (TdS)
* Use to_be_bytes
* cleanup
* More tiny cleanup
* Rebase cleanup
* Set Bank::genesis_hash when resuming from snapshot
* Reorder fns and clean ups
* Better naming and commenting
* Yet more naming clarifications
* Make prefix width strictly uniform for 2-base partition_count
* Fix typo...
* Revert cluster-dependent gate
* kick ci?
* kick ci?
* kick ci?
2020-05-13 16:22:14 +09:00
Justin Starry
5cc252d471
Remove hash field from account ( #9915 )
2020-05-12 23:39:46 +08:00
Jack May
97e17f9b32
Programs can only sign their accounts
2020-05-11 09:06:05 -07:00
dependabot-preview[bot]
288c9751c1
Bump serde from 1.0.106 to 1.0.110 ( #9964 )
...
* Bump serde from 1.0.106 to 1.0.110
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.106 to 1.0.110.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.106...v1.0.110 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-05-10 16:24:25 -07:00
dependabot-preview[bot]
0541431ea8
Bump serde_json from 1.0.52 to 1.0.53 ( #9957 )
...
* Bump serde_json from 1.0.52 to 1.0.53
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.52 to 1.0.53.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.52...v1.0.53 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
2020-05-10 11:46:29 -07:00
Tyera Eulberg
3ee702a922
Rpc: Add getCirculatingSupply endpoint, redux ( #9953 )
...
* Add Bank.clock() helper
* Add non-circulating calculations
* Plumb getSupply rpc endpoint
* Add docs for getSupply, and remove getTotalSupply from docs
* Add pubkeys! procedural macro
* Use procedural macro in non_circulating_supply
2020-05-09 12:05:29 -06:00
sakridge
f37f83fd12
Fuzzer test and fixes ( #9853 )
2020-05-02 08:07:52 -07:00
sakridge
894549f002
Put empty accounts in the accounts list on load ( #9840 )
...
Indexing into accounts array does not match account_keys otherwise.
Also enforce program accounts not at index 0
Enforce at least 1 Read-write signing fee-payer account.
2020-05-01 17:23:33 -07:00
Michael Vines
8dfe0affd4
Add incinerator sysvar ( #9815 )
2020-04-30 22:04:08 -07:00
Jack May
7678af6300
Cleanup BPF helper symbols ( #9804 )
2020-04-30 11:29:11 -07:00
Jack May
de9d8cd849
Rename BPF helper to syscall ( #9819 )
...
automerge
2020-04-30 01:43:11 -07:00
Tyera Eulberg
6deaf649ef
Add commitment Root variant, and add fleshed out --commitment arg to Cli ( #9806 )
...
automerge
2020-04-29 21:55:33 -07:00
anatoly yakovenko
a0514eb2ae
thiserror, docs, remove general Failure case ( #9741 )
...
automerge
2020-04-29 18:12:51 -07:00
Jack May
1018807db9
Bump Rust-BPF version to be interoperable with latest Rust ( #9783 )
...
automerge
2020-04-28 23:47:59 -07:00
Jack May
b26c07b788
Fix BPF tool caching ( #9781 )
...
automerge
2020-04-28 21:06:04 -07:00
Stephen Akridge
eb24f3df84
Update dalek version
2020-04-28 21:02:47 -06:00
Jack May
d836dfff14
Fix bpf unit test linkage ( #9780 )
...
automerge
2020-04-28 19:41:08 -07:00
Jack May
068f12fd6f
Add Cross-program invocations ( #9582 )
2020-04-28 14:33:56 -07:00
Michael Vines
063f616a19
Don't --use-move
2020-04-28 12:47:31 -07:00
dependabot-preview[bot]
659e87703b
Bump generic-array from 0.13.2 to 0.14.1 ( #9446 )
...
* Bump generic-array from 0.13.2 to 0.14.1
Bumps [generic-array](https://github.com/fizyk20/generic-array ) from 0.13.2 to 0.14.1.
- [Release notes](https://github.com/fizyk20/generic-array/releases )
- [Changelog](https://github.com/fizyk20/generic-array/blob/master/CHANGELOG.md )
- [Commits](https://github.com/fizyk20/generic-array/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* [auto-commit] Update all Cargo lock files
* Optional generic-array
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: dependabot-buildkite <dependabot-buildkite@noreply.solana.com>
Co-authored-by: Jack May <jack@solana.com>
2020-04-28 09:43:48 -07:00
Jack May
efad193180
Make default programs static ( #9717 )
2020-04-27 21:05:12 -07:00
anatoly yakovenko
193dbb1794
sanitize lowest slots ( #9747 )
2020-04-27 20:22:30 -07:00
Michael Vines
c11abf88b7
Clean up `use` to keep rust 1.43.0 from complaining ( #9740 )
2020-04-27 16:54:11 -07:00
Michael Vines
839ff51b9a
Fix build
2020-04-27 12:26:23 -07:00
anatoly yakovenko
8ef097bf6f
Input values are not sanitized after they are deserialized, making it far too easy for Leo to earn SOL ( #9706 )
...
* sanitize gossip protocol messages
* sanitize transactions
* crds protocol sanitize
2020-04-27 11:06:00 -07:00
Greg Fitzgerald
76b1c2baf0
One less alloc per transaction ( #9705 )
...
* One less alloc per transaction
* Fix benches
* Fix compiler warnings in bench build
* Fix move build
* Fix bench
2020-04-24 13:03:46 -06:00
dependabot-preview[bot]
64e5684d45
Bump bs58 from 0.3.0 to 0.3.1
...
Bumps [bs58](https://github.com/mycorrhiza/bs58-rs ) from 0.3.0 to 0.3.1.
- [Release notes](https://github.com/mycorrhiza/bs58-rs/releases )
- [Commits](https://github.com/mycorrhiza/bs58-rs/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-21 08:07:00 -07:00
Jack May
d08517db8c
Nit picks ( #9580 )
2020-04-18 22:39:08 -07:00
Michael Vines
47ae57610a
Only build x86_64-unknown-linux-gnu on docs.rs
2020-04-16 19:06:17 -07:00
Jack May
241a05fc52
Add native loader entry points ( #9486 )
2020-04-15 09:41:29 -07:00
Jack May
6e1ce5ab6c
Safer cargo command ( #9437 )
2020-04-10 15:44:24 -07:00
Jack May
ad0482be73
Revert "Add native loader entry points ( #9275 )" Breaks genesis_config abi ( #9377 )
...
This reverts commit ed86d8d1fc
.
2020-04-08 14:36:18 -07:00
Michael Vines
b4e00275b2
Cache downloads to speed up CI
2020-04-06 22:53:19 -07:00
dependabot-preview[bot]
62cb2cd13c
Bump serde_json from 1.0.49 to 1.0.51
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.49 to 1.0.51.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.49...v1.0.51 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-06 08:40:55 -07:00
dependabot-preview[bot]
8cdf406dd3
Bump serde from 1.0.105 to 1.0.106
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.105 to 1.0.106.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.105...v1.0.106 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-04 15:13:52 -07:00
Jack May
ed86d8d1fc
Add native loader entry points ( #9275 )
2020-04-03 17:40:59 -07:00
Jack May
c67e9fabc4
Nit: ProgramError cleanup ( #9273 )
...
automerge
2020-04-02 17:46:51 -07:00
Jack May
9aab0b9388
More custom error rename ( #9227 )
...
automerge
2020-04-01 11:13:31 -07:00
Jack May
268e04cb4a
Rename CustomError to Custom ( #9207 )
2020-04-01 09:01:11 -07:00
Jack May
74774dd44f
Add program_error conversions ( #9203 )
2020-03-31 19:56:09 -07:00
Jack May
93be7370d9
Nit: print program error as hex ( #9171 )
2020-03-31 10:08:07 -07:00
Jack May
130c0b484d
Enforce an executable's rent exemption in the runtime ( #9134 )
2020-03-31 10:07:38 -07:00
dependabot-preview[bot]
2ed3e2160d
Bump serde_json from 1.0.48 to 1.0.49 ( #9139 )
...
* Bump serde_json from 1.0.48 to 1.0.49
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.48 to 1.0.49.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.48...v1.0.49 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* Update serde_json in programs
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Justin Starry <justin@solana.com>
2020-03-28 12:19:40 -07:00
Michael Vines
d7fa40087c
Bump version to 1.2.0
2020-03-28 09:44:13 -07:00
Jack May
e2491c6322
Prevent add/subtract from executable account ( #9132 )
2020-03-27 16:43:25 -07:00
Jack May
8d4cecdb77
Account data may not change once the executable bit is set ( #9099 )
...
automerge
2020-03-26 17:10:11 -07:00
Jack May
30bed18b77
Install xargo using CI dictated cargo version if available ( #9068 )
2020-03-26 11:47:41 -07:00
Justin Starry
ef3af104ae
Return appropriate error for invalid program account ( #9047 )
...
automerge
2020-03-25 13:23:05 -07:00
Justin Starry
c558db2a48
Fix xargo to version 0.3.19 to avoid unstable feature ( #9065 )
...
automerge
2020-03-25 08:43:36 -07:00
Jack May
fee002382e
Program address generator ( #8995 )
2020-03-23 12:38:56 -07:00
Jack May
271e17547a
Nit thiserror for pubkey ( #8994 )
...
automerge
2020-03-20 18:07:37 -07:00
Jack May
e28368ff1b
Move address creation with seed into pubkey ( #8991 )
2020-03-20 15:20:48 -07:00
dependabot-preview[bot]
24d871b529
Bump serde from 1.0.104 to 1.0.105 ( #8954 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.104 to 1.0.105.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.104...v1.0.105 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-18 22:35:30 -07:00
dependabot-preview[bot]
2dc50cff5b
Bump bv from 0.11.0 to 0.11.1 ( #8952 )
...
automerge
2020-03-18 21:37:21 -07:00
Trent Nelson
98228c392e
CLI: Add multi-session signing support ( #8927 )
...
* SDK: Add `NullSigner` implementation
* SDK: Split `Transaction::verify()` to gain access to results
* CLI: Minor refactor of --sign_only result parsing
* CLI: Enable paritial signing
Signers specified by pubkey, but without a matching --signer arg
supplied fall back to a `NullSigner` when --sign-only is in effect.
This allows their pubkey to be used for TX construction as usual,
but leaves their `sign_message()` a NOP. As such, with --sign-only
in effect, signing and verification must be done separately, with
the latter's per-signature results considered
* CLI: Surface/report missing/bad signers to user
* CLI: Suppress --sign-only JSON output
* nits
* Docs for multi-session offline signing
2020-03-18 20:49:38 -07:00
Jack May
f192e4f08f
Nit: Align Rust and C names ( #8918 )
2020-03-17 19:37:16 -07:00
Jack May
668dfc40c7
Align C and Rust handling of AccountInfos ( #8906 )
2020-03-17 12:34:14 -07:00
Trent Nelson
fbf2dd1672
CLI: Error message cleanup ( #8804 )
...
automerge
2020-03-12 23:20:49 -07:00
Jack May
deaf3cb416
Instruction member function ( #8801 )
2020-03-12 09:08:39 -07:00
Jack May
6eb4973780
Don't use move semantics if not needed ( #8793 )
2020-03-11 14:37:23 -07:00
dependabot-preview[bot]
f88b79d42b
Bump itertools from 0.8.2 to 0.9.0 ( #8756 )
...
Bumps [itertools](https://github.com/bluss/rust-itertools ) from 0.8.2 to 0.9.0.
- [Release notes](https://github.com/bluss/rust-itertools/releases )
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md )
- [Commits](https://github.com/bluss/rust-itertools/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-10 08:42:11 -06:00
carllin
9872430bd2
Add VoteTracker for tracking cluster's votes in gossip ( #8327 )
...
Track votes by slot in cluster_vote_listener
2020-03-09 22:03:09 -07:00
dependabot-preview[bot]
fad08a19cc
Bump serde_json from 1.0.46 to 1.0.48 ( #8260 )
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.46 to 1.0.48.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.46...v1.0.48 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-09 20:20:19 -06:00
Greg Fitzgerald
97b6c41d42
Fix typos in error messages ( #8726 )
...
automerge
2020-03-09 10:12:42 -07:00
dependabot-preview[bot]
6d0f3762b2
Bump hex from 0.4.1 to 0.4.2 ( #8725 )
...
Bumps [hex](https://github.com/KokaKiwi/rust-hex ) from 0.4.1 to 0.4.2.
- [Release notes](https://github.com/KokaKiwi/rust-hex/releases )
- [Commits](https://github.com/KokaKiwi/rust-hex/compare/v0.4.1...v0.4.2 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-09 09:23:54 -06:00
Trent Nelson
4db074a5aa
RPC: Add `getFeeCalculatorForBlockhash` method call ( #8687 )
...
Returns the `FeeCalculator` associated with the given blockhash, or
`null` if said blockhash has expired
2020-03-06 17:01:31 -07:00
Greg Fitzgerald
2242b1b4a5
Bump byteorder from 1.3.2 to 1.3.4 ( #8159 )
...
Bumps [byteorder](https://github.com/BurntSushi/byteorder ) from 1.3.2 to 1.3.4.
- [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.2...1.3.4 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-05 17:07:18 -07:00
Grimes
9d667db634
SDK: Allow `RecentBlockhashes` to hold the entire `BlockhashQueue` ( #8632 )
...
automerge
2020-03-05 11:03:21 -08:00
Jack May
5e3ce30d02
Pass the correct program_id to programs ( #8630 )
2020-03-05 10:57:35 -08:00
Jack May
97c5fb8141
Allow passing of program_ids to programs ( #8639 )
2020-03-05 10:57:12 -08:00
Trent Nelson
fd00e5cb35
Store FeeCalculator with blockhash in nonce accounts ( #8650 )
...
* Copy current state version to v0
* Add `FeeCalculator` to nonce state
* fixup compile
* Dump v0 handling...
Since we new account data is all zeros, new `Current` versioned accounts
look like v0. We could hack around this with some data size checks, but
the `account_utils::*State` traits are applied to `Account`, not the
state data, so we're kind SOL...
* Create more representative test `RecentBlockhashes`
* Improve CLI nonce account display
Co-Authored-By: Michael Vines <mvines@gmail.com>
* Fix that last bank test...
* clippy/fmt
Co-authored-by: Michael Vines <mvines@gmail.com>
2020-03-05 07:40:26 -07:00
Trent Nelson
561808cf90
SDK: Store FeeCalculator in recent_blockhashes sysvar ( #8609 )
...
* SDK: Store FeeCalculators in recent_blockhashes sysvar
* nits
2020-03-04 12:01:32 -07:00
Jack May
25df95be6f
Expose executable and rent_epoch in AccountInfo ( #8619 )
2020-03-04 10:52:09 -08:00
Trent Nelson
1cc7131bb7
Consolidate Nonce state under one struct ( #8624 )
...
automerge
2020-03-04 08:51:48 -08:00
Michael Vines
d3b458dd9b
Keep GenesisConfig binary compatible with v0.23 ( #8617 )
...
automerge
2020-03-04 00:04:44 -08:00
Trent Nelson
b83a0434a4
Prepare for multiple nonce account state versions ( #8612 )
...
automerge
2020-03-03 21:19:09 -08:00
Trent Nelson
1cb6101c6a
SDK: Add versioning to nonce state ( #8607 )
2020-03-03 19:39:09 -07:00
Trent Nelson
be0cc0273f
SDK: Re-org nonce state module to facilitate versioning ( #8603 )
...
automerge
2020-03-03 17:00:39 -08:00
Michael Vines
abf33b3b3b
Add commitment flag to `vote-account` and `validators` commands ( #8597 )
2020-03-03 17:53:30 -07:00
Jack May
d9b0490f72
Update rust-bpf to include matching cargo ( #8598 )
2020-03-03 14:14:31 -08:00
Trent Nelson
1265afebbb
SDK: Return a full `RecentBlockhashes` for tests ( #8580 )
...
automerge
2020-03-02 18:44:29 -08:00
Trent Nelson
90bedd7e06
Split signature throughput tracking out of `FeeCalculator` ( #8447 )
...
* SDK: Split new `FeeRateGovernor` out of `FeeCalculator`
Leaving `FeeCalculator` to *only* calculate transaction fees
* Replace `FeeCalculator` with `FeeRateGovernor` as appropriate
* Expose recent `FeeRateGovernor` to clients
* Move `burn()` back into `FeeCalculator`
Appease BPF tests
* Revert "Move `burn()` back into `FeeCalculator`"
This reverts commit f3035624307196722b62ff8b74c12cfcc13b1941.
* Adjust BPF `Fee` sysvar test to reflect removal of `burn()` from `FeeCalculator`
* Make `FeeRateGovernor`'s `lamports_per_signature` private
* rebase artifacts
* fmt
* Drop 'Recent'
* Drop _with_commitment variant
* Use a more portable integer for `target_signatures_per_slot`
* Add docs for `getReeRateCalculator` JSON RPC method
* Don't return `lamports_per_signature` in `getFeeRateGovernor` JSONRPC reply
2020-02-28 13:27:01 -07:00
Michael Vines
7d27be2a73
Upgrade to Rust 1.41.1
2020-02-28 10:10:42 -07:00
Michael Vines
7dac8e2dde
Reorder InstructionError to remain compatible with v0.23
2020-02-27 18:05:12 -07:00
Jack May
de6679ea95
Improve install messaging ( #8477 )
2020-02-27 14:07:36 -08:00
Tyera Eulberg
0b66ae5c53
Ledger messaging cleanup ( #8506 )
2020-02-27 12:23:13 -07:00
carllin
39282be486
Determine vote_state ahead of time ( #8303 )
...
automerge
2020-02-24 19:27:04 -08:00
Jack May
b18e4057bb
Fix SDK deps
2020-02-24 17:25:48 -07:00
Tyera Eulberg
12a9b5f35e
CLI: collect and deduplicate signers ( #8398 )
...
* Rename (keypair util is not a thing)
* Add method to generate_unique_signers
* Cli: refactor signer handling and remote-wallet init
* Fixup unit tests
* Fixup intergation tests
* Update keypair path print statement
* Remove &None
* Use deterministic key in test
* Retain storage-account as index
* Make signer index-handling less brittle
* Cache pubkey on RemoteKeypair::new
* Make signer_of consistent + return pubkey
* Remove &matches double references
* Nonce authorities need special handling
2020-02-24 17:03:30 -07:00
Michael Vines
73063544bd
Move shred_version module to sdk/
2020-02-24 14:46:12 -07:00
sakridge
947a339714
Add snapshot hash of full accounts state ( #8295 )
...
* Add snapshot hash of full accounts state
* Use normal hashing for the accounts delta state
* Add merkle
2020-02-22 13:46:40 -08:00
Dan Albert
2d9d2f1e99
Update cargo versions from 1.0 to 1.1 ( #8397 )
2020-02-21 23:09:45 -08:00
Tyera Eulberg
4ddbf8d509
CLI: dynamic signing reboot ( #8384 )
...
* Add keypair_util_from_path helper
* Cli: impl config.keypair as a trait object
* SDK: Add Debug and PartialEq for dyn Signer
* ClapUtils: Arg parsing from pubkey+signers to Presigner
* Impl Signers for &dyn Signer collections
* CLI: Add helper for getting signers from args
* CLI: Replace SigningAuthority with Signer trait-objs
* CLI: Drop disused signers command field
* CLI: Drop redundant tests
* Add clap validator that handles all current signer types
* clap_utils: Factor Presigner resolution to helper
* SDK: `From` for boxing Signer implementors to trait objects
* SDK: Derive `Clone` for `Presigner`
* Remove panic
* Cli: dedup signers in transfer for remote-wallet ergonomics
* Update docs vis-a-vis ASK changes
* Cli: update transaction types to use new dynamic-signer methods
* CLI: Fix tests No. 1
what to do about write_keypair outstanding
* Work around `CliConfig`'s signer not necessarily being a `Keypair`
* CLI: Fix tests No. 2
* Remove unused arg
* Remove unused methods
* Move offline arg constants upstream
* Make cli signing fallible
Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>
2020-02-21 14:55:53 -07:00
Michael Vines
48f58a88bc
Bump version to 1.0.0
2020-02-20 23:52:19 -07:00
Tyera Eulberg
0b7e8d0162
Add handling for fallible signers ( #8367 )
...
automerge
2020-02-20 19:04:53 -08:00
Michael Vines
2d665da3e1
Flip Stable and Preview enum values
2020-02-20 18:27:33 -07:00
Tyera Eulberg
ab361a8073
Rename KeypairUtil to Signer ( #8360 )
...
automerge
2020-02-20 13:28:55 -08:00
Greg Fitzgerald
e8124324ff
Support transaction signing by heterogenous lists of keypairs ( #8342 )
...
automerge
2020-02-20 12:13:23 -08:00
Michael Vines
8c19b6268c
Add Preview operating mode, rename SoftLaunch operating mode to Stable ( #8331 )
...
automerge
2020-02-19 16:48:58 -08:00
Ryo Onodera
ef718c651e
Remove needless uses ( #8312 )
...
automerge
2020-02-17 02:43:14 -08:00
Michael Vines
8a2d4e2f72
Add storage rewards pools in development mode only
2020-02-14 21:12:38 -07:00
Jack May
a0bcbf70d5
Cleanup new_result_with_negative_lamports ( #8286 )
2020-02-14 13:58:33 -08:00
Trent Nelson
5b4ecb01ca
Presigner KeypairUtil implementer ( #8269 )
...
automerge
2020-02-13 16:53:09 -08:00
Tyera Eulberg
2374cf09e2
Enable remote-wallet signing in solana-keygen ( #8267 )
...
* Add fallible methods to KeypairUtil
* Add RemoteKeypair struct and impl KeypairUtil
* Implement RemoteKeypair in keygen; also add parse_keypair_path for cleanup
2020-02-13 14:08:34 -07:00
Greg Fitzgerald
741d148a0d
Simplify remote wallet ( #8249 )
...
automerge
2020-02-12 14:38:51 -08:00
Greg Fitzgerald
127553ce4b
Wrap ed25519_dalek::Keypair ( #8247 )
2020-02-12 14:15:12 -07:00
Jack May
059764586a
Rename from account userdata to data ( #8224 )
2020-02-11 16:30:22 -08:00
Jack May
2e9ba149f2
Update LVM and rBPF versions ( #8215 )
2020-02-11 12:52:13 -08:00
Michael Vines
4f2c76150f
Clippy
2020-02-11 12:56:02 -07:00
Jack May
bf623219d2
nudge ( #8214 )
2020-02-11 10:50:57 -08:00
Jack May
517fe73734
Non-conflicting account duplicate marker value ( #8206 )
2020-02-11 10:03:28 -08:00
Jack May
df782b93ae
Add is_writable to AccountInfo ( #8196 )
2020-02-10 21:33:29 -08:00
dependabot-preview[bot]
6246405afd
Bump memmap from 0.6.2 to 0.7.0 ( #8157 )
...
Bumps [memmap](https://github.com/danburkert/memmap-rs ) from 0.6.2 to 0.7.0.
- [Release notes](https://github.com/danburkert/memmap-rs/releases )
- [Commits](https://github.com/danburkert/memmap-rs/compare/0.6.2...0.7.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-07 06:51:31 -07:00
Rob Walker
0e084358b4
Fix slot_hashes documentation
2020-02-06 10:06:16 -07:00
Jack May
8436457e75
Rename program_utils.rs ( #8127 )
2020-02-05 12:48:30 -08:00
Jack May
e21f5c784e
Add next_account_info() ( #8120 )
2020-02-04 17:04:26 -08:00
dependabot-preview[bot]
65c24db83c
Bump serde_json from 1.0.44 to 1.0.46 ( #8087 )
...
* Bump serde_json from 1.0.44 to 1.0.46
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.44 to 1.0.46.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.44...v1.0.46 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* Update Move's serde_json to v1.0.46
Co-authored-by: Jack May <jack@solana.com>
2020-02-04 16:59:23 -08:00
Jack May
15ab966ed1
Move native program entrypoint out of instruction_processor_utils ( #8122 )
2020-02-04 14:54:49 -08:00
Jack May
b5a735878a
Sysvar account_into return program error rather than option ( #8121 )
2020-02-04 14:54:41 -08:00
Jack May
b6d09f1901
Add BPF program entrypoint return type ( #8111 )
2020-02-04 12:25:42 -08:00
Jack May
4e595e8e3c
Facilitate printing program errors from BPF programs ( #8109 )
2020-02-04 09:03:45 -08:00
Jack May
336d5136bf
Print more program error info to user when using CLI ( #8098 )
2020-02-03 17:14:53 -08:00
Jack May
0fd795a676
Remove program error footgun and cleaner developer experience ( #8042 )
2020-01-31 10:58:07 -08:00
Jack May
2226c1b75c
Add Rust BPF RefCell borrow helpers ( #8047 )
2020-01-30 20:40:27 -08:00
Jack May
dd276138c2
Add support for idiomatic error handling to BPF instruction processors ( #7968 )
2020-01-30 09:47:22 -08:00
Jack May
b19f730527
Seperate RefCells lamports and data ( #8021 )
2020-01-29 21:15:04 -08:00
Rob Walker
e6803daf10
Remove support for stake redelegation ( #7995 )
...
* Remove support for stake redelegation
* fixup
2020-01-29 17:59:14 -08:00
Jack May
12eff5a2f9
Cleanup SDK use syntax ( #8004 )
2020-01-28 16:11:22 -08:00
Jack May
fed3817ed3
Update and fix transaction error documentation ( #7998 )
2020-01-28 15:59:50 -08:00
Jack May
1596c961d9
Rust BPF program cleanup ( #7990 )
2020-01-27 18:27:44 -08:00
Michael Vines
912aafcefd
Reduce epoch duration from 2 weeks to 2 days
2020-01-27 10:34:55 -07:00
Dan Albert
c324e71768
Bump cargo toml versions to 0.24.0 ( #7976 )
2020-01-25 11:04:27 -06:00
Jack May
1b391dd36b
Add account accessor functions ( #7966 )
2020-01-24 14:34:59 -08:00
Jack May
917067741a
Cleanup BPF SDK ( #7965 )
2020-01-24 13:41:14 -08:00
Jack May
34ed93d57c
Optimize account copies and use RefCell to handle duplicate accounts in BPF programs ( #7958 )
2020-01-24 10:54:26 -08:00
Jack May
c95e5346a4
Boot the mut ( #7926 )
2020-01-22 17:54:06 -08:00
Ryo Onodera
e54bf563b5
Avoid unsorted recent_blockhashes for determinism ( #7918 )
...
* Avoid unsorted recent_blockhashes for determinism
* Add a test: test_create_account_unsorted
2020-01-23 10:51:22 +09:00
Trent Nelson
964ff522be
Verb-noun-ify Nonce API ( #7925 )
...
* Verb-noun-ify Nonce API
* Unify instruction naming with API naming
The more verbose nonce_account/NonceAccount was chosen for clarity
that these instructions work on a unique species of system account
2020-01-22 16:31:39 -07:00
Rob Walker
ce70d6eedc
Add redeem_vote_credits to runtime ( #7910 )
...
* Move redeem_vote_credits into runtime
* fixup
* test
* move stake manipulation to stake program
* chugga for less indentation
2020-01-22 12:21:31 -08:00
Jack May
023074650f
Allow the same account to be passed multiple times to a single instruction ( #7795 )
2020-01-22 09:11:56 -08:00
Greg Fitzgerald
3aabeb2b81
Rename bootstrap leader ( #7906 )
...
* Rename bootstrap leader to bootstrap validator
It's a normal validator as soon as other validators enter the
leader schedule.
* cargo fmt
* Fix build
Thanks @CriesofCarrots!
2020-01-22 09:22:09 -07:00
Jack May
52bc4a3598
nudge ( #7887 )
2020-01-20 15:27:36 -08:00
Rob Walker
470d9cd752
Add system_instruction::{allocate, allocate_with_seed, assign_with_seed}, ( #7847 )
...
* cleanup test checks cargo audit
* Add system_instruction allocate
* fixup
* fixup
2020-01-17 09:29:15 -08:00
Tyera Eulberg
da165d6943
Fix Rpc inconsistencies ( #7826 )
...
* Update rpc account format: remove byte arrays
* Base58-encode pubkeys in getStoragePubkeysForSlot
* Update docs
2020-01-15 15:33:53 -07:00
Tyera Eulberg
6d3b8b6d7d
Remove tuples from JSON RPC responses ( #7806 )
...
* Remove RpcConfirmedBlock tuple
* Remove getRecentBlockhash tuple
* Remove getProgramAccounts tuple
* Remove tuple from get_signature_confirmation_status
* Collect Rpc response types
* Camel-case epoch schedule for rpc response
* Remove getBlockCommitment tuple
* Remove getStorageTurn tuple
* Update json-rpc docs
2020-01-15 00:25:45 -07:00
Justin Starry
ff1ca1e0d3
Consolidate entry tick verification into one function ( #7740 )
...
* Consolidate entry tick verification into one function
* Mark bad slots as dead in blocktree processor
* more feedback
* Add bank.is_complete
* feedback
2020-01-15 09:15:26 +08:00
Jack May
5f4e0c7e3e
Naming nits ( #7798 )
...
automerge
2020-01-14 13:38:17 -08:00
Trent Nelson
81ae44f858
Nonce: Rename instructions with VerbNoun scheme ( #7775 )
...
automerge
2020-01-13 15:34:43 -08:00
Jack May
08ba27627d
Direct entrypoint for execution ( #7746 )
2020-01-10 13:20:15 -08:00
dependabot-preview[bot]
1e3082fbc0
Bump tiny-bip39 from 0.6.2 to 0.7.0 ( #7750 )
...
Bumps [tiny-bip39](https://github.com/maciejhirsz/tiny-bip39 ) from 0.6.2 to 0.7.0.
- [Release notes](https://github.com/maciejhirsz/tiny-bip39/releases )
- [Changelog](https://github.com/maciejhirsz/tiny-bip39/blob/master/CHANGELOG.md )
- [Commits](https://github.com/maciejhirsz/tiny-bip39/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-10 09:19:28 -07:00
Rob Walker
6775e83420
Add create with seed to cli ( #7713 )
...
* Add create with seed to cli
* nonce and vote, too
2020-01-09 15:22:48 -08:00
Jack May
09cff5e4cc
Cleanup usage of feature "program" ( #7712 )
2020-01-08 13:49:35 -08:00
dependabot-preview[bot]
bc71e1b612
Bump sha2 from 0.8.0 to 0.8.1
...
Bumps [sha2](https://github.com/RustCrypto/hashes ) from 0.8.0 to 0.8.1.
- [Release notes](https://github.com/RustCrypto/hashes/releases )
- [Commits](https://github.com/RustCrypto/hashes/compare/sha2-v0.8.0...sha2-v0.8.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-05 22:33:02 -07:00
Trent Nelson
7e94cc2cc3
Move nonce into system program ( #7645 )
...
automerge
2020-01-03 16:34:58 -08:00
Jack May
75d94240ed
account_info utilities ( #7666 )
2020-01-03 09:14:51 -08:00
Jack May
6c544708e1
Add safety docs ( #7665 )
2020-01-03 09:14:28 -08:00
Jack May
06cff1fb9f
Publish bpf-sdk releases ( #7655 )
2020-01-02 20:44:15 -08:00
Tyera Eulberg
6ca575b5a3
Make sol-to-lamport const name more clear ( #7641 )
...
automerge
2019-12-30 11:28:41 -08:00
Rob Walker
e1ebaa902b
Add base pubkey to create_account_with_seed ( #7636 )
2019-12-29 16:42:24 -08:00
Justin Starry
44e45aa090
Support nonced transactions in the CLI ( #7624 )
...
* Support nonced transactions in the CLI
* Update nonce.rs
2019-12-27 14:35:49 -06:00
Rob Walker
120c8f244c
Add slot_history for slashing ( #7589 )
...
* Add slot_history for slashing
* fixup
* fixup
2019-12-23 12:23:45 -08:00
Jack May
352a367570
Specify version for solana-sdk-macro to enable crate.io publishing ( #7615 )
2019-12-23 12:10:43 -08:00
Dan Albert
ca10cf081f
Update cargo.toml files from 0.22.0 to 0.23.0 ( #7596 )
2019-12-20 21:45:42 -05:00
Rob Walker
a7040896f0
Update to rust 1.40.0 ( #7572 )
...
* Update to rust 1.40.0
* fixups
2019-12-19 23:27:54 -08:00
Rob Walker
2ebfab8e07
Remove duplicate def of MAX_SLOT_HASHES ( #7574 )
2019-12-19 21:24:12 -08:00
Ryo Onodera
3c361eb759
Check account hashes in snapshot ( #7559 )
...
* Check for incorrect hash value
* Finish up checking for incorrect hash value
* Fix comment a bit
Co-authored-by: sakridge <sakridge@gmail.com>
2019-12-20 09:39:30 +09:00
Michael Vines
ff171baa67
Add show-block-production command
2019-12-19 00:02:11 -07:00
Trent Nelson
0ea2843ec9
Durable Nonce - Authorized Noncer ( #7417 )
...
* Durable Nonce: Add authorized noncer to initialize instruction
* CLI: Adapt to nonce authority
* Durable Nonce: Introduce Authorize instruction
* Specify who needs to sign ix
* 'authorized-noncer' -> 'nonce-authority'
* Document signing authority for all instructions
2019-12-17 09:34:21 -05:00
dependabot-preview[bot]
7ad64c8d45
Bump serde from 1.0.103 to 1.0.104
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.103 to 1.0.104.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.103...v1.0.104 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-16 08:50:09 -07:00
Rob Walker
f05860672c
Add create-address-with-seed to solana-cli ( #7472 )
...
* Add create account with seed to cli
* clippy
* fixup
2019-12-14 04:38:24 -08:00
Jack May
cc5408482e
Publish solana-docker releases ( #7460 )
2019-12-12 16:15:31 -08:00
Rob Walker
777ae3c215
Add time since genesis to sysvar::clock ( #7289 )
...
* genesis timestamp
* remove clock::create_account()
* ..
* add configure-able creation time
* dividing by 1T, should be dividing by 1B
2019-12-12 14:03:43 -08:00
Jack May
dbb8267b09
Pin dalek version ( #7448 )
...
* Pin Dalek version
* core too
2019-12-12 11:34:43 -08:00
Rob Walker
ea0ba19089
Add SystemInstruction::CreateAccountWithSeed ( #7390 )
...
* address generator
* coverage
* fixups
* remove ascii restriction
* illustrate that utf-8 doesn't expand the space
2019-12-12 11:12:09 -08:00
Greg Fitzgerald
c4f3bb9b67
Use term dapp only in places where the application needs to run entirely on-chain ( #7446 )
2019-12-12 10:38:09 -07:00
Jack May
7f6fc74c36
Remove workaround of old Rust-BPF ( #7422 )
2019-12-10 23:19:13 -08:00
Jack May
9e2ce1751b
Bump Rust-BPF to Rust 1.39 ( #7420 )
2019-12-10 22:27:14 -08:00
Rob Walker
7d6777a96f
show rent model ( #7410 )
2019-12-10 14:50:55 -08:00
dependabot-preview[bot]
6f457292ff
Bump bincode from 1.2.0 to 1.2.1
...
Bumps [bincode](https://github.com/servo/bincode ) from 1.2.0 to 1.2.1.
- [Release notes](https://github.com/servo/bincode/releases )
- [Commits](https://github.com/servo/bincode/compare/v1.2.0...v1.2.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-10 10:00:56 -07:00
Parth
696cb298ab
put limit on account data length ( #7320 )
...
* put limit on account data length
* proper debug message
2019-12-10 22:17:11 +05:30
Rob Walker
39cd6dff7d
turn on rent ( #7368 )
...
* turn on rent
* add rent exempt balances for bootstrap accounts
* use Rent::free() when not testing rent
2019-12-09 21:56:43 -08:00
Trent Nelson
5d2b27d916
Address post-merge review for #7353 ( #7378 )
...
automerge
2019-12-09 12:54:10 -08:00
Trent Nelson
059e631f41
Durable Nonce: Re-introduce Initialize instruction ( #7353 )
...
Toward an Authorized Noncer
2019-12-08 10:16:55 -07:00
dependabot-preview[bot]
891767c6b7
Bump serde_json from 1.0.42 to 1.0.44
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.42 to 1.0.44.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.42...v1.0.44 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-08 09:43:24 -07:00
Trent Nelson
1ffd6b4b4d
Add program and runtime support for Durable Transaction Nonces ( #6845 )
...
* Rework transaction processing result forwarding
Durable nonce prereq
* Add Durable Nonce program API
* Add runtime changes for Durable Nonce program
* Register Durable Nonce program
* Concise comments and bad math
* Fix c/p error
* Add rent sysvar to withdraw ix
* Remove rent exempt required balance from Meta struct
* Use the helper
2019-12-07 12:54:10 -07:00
Tyera Eulberg
3ab8185777
Add intermittent Timestamping to Votes ( #7233 )
...
* Add intermittent timestamp to Vote
* Add timestamp to VoteState, add timestamp processing to program
* Print recent timestamp with solana show-vote-account
* Add offset of 1 to timestamp Vote interval to initialize at node boot (slot 1)
* Review comments
* Cache last_timestamp in Tower and use for interval check
* Move work into Tower method
* Clarify timestamping interval
* Replace tuple with struct
2019-12-06 14:38:49 -07:00
Parth
0d1fed78af
Pay rent to validators ( #7164 )
...
automerge
2019-12-05 06:10:34 -08:00
Jack May
39b578fde9
Remove runtime dependency from config program unit tests and move back to config program ( #7277 )
2019-12-04 19:24:12 -08:00
Jack May
9b172879a2
Remove deprecated solana_entrypoint macro ( #7257 )
2019-12-04 00:42:50 -08:00
Justin Starry
7cfff75c3e
Use procedural macro to generate static public keys ( #7219 )
...
automerge
2019-12-03 17:55:18 -08:00
Parth
bc09365c98
make tx fee's burn percent in proper range ( #7226 )
...
automerge
2019-12-03 12:25:43 -08:00
Parth
ba688cf629
enforce proper range for rent burn_percent ( #7217 )
...
* enforce proper range for burn_percent
2019-12-04 00:54:01 +05:30
Michael Vines
7f71a0ba37
Drop default signature fee by 10x ( #7192 )
2019-12-02 14:34:26 -07:00
dependabot-preview[bot]
7f4feaee08
Bump serde from 1.0.102 to 1.0.103 ( #7163 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.102 to 1.0.103.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.102...v1.0.103 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-27 09:10:25 -07:00
Rob Walker
8d75efdc58
genesis config hashmaps ( #7107 )
2019-11-26 19:23:37 -08:00
carllin
c706f9b2cd
Change from using fixed number of ticks in delay calculation ( #7152 )
...
automerge
2019-11-26 16:21:02 -08:00
dependabot-preview[bot]
c810913861
Bump serde_derive from 1.0.102 to 1.0.103 ( #7141 )
...
automerge
2019-11-26 14:44:20 -08:00
dependabot-preview[bot]
2b13158e29
Bump serde_json from 1.0.41 to 1.0.42 ( #7142 )
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.41 to 1.0.42.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.41...v1.0.42 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-26 15:09:01 -07:00
Tyera Eulberg
58c144ee55
Add getBlockTime rpc api ( #7130 )
...
* Add getBlockTime rpc api
* Add getBlockTime to docs
* Fix duration rounding for common tick/slot durations; add slot duration calculation
* Expose slots_per_year
* Use genesis values instead of clock defaults to calculate block offset
* Add get-block-time cli subcommand
* Fix test_rent: decrease magic number usage
2019-11-26 00:40:36 -07:00
Jack May
88cb0c6ae3
Add offline signing support to CLI ( #7104 )
2019-11-25 21:09:57 -08:00
Michael Vines
294662a1ce
Bump version to 0.22.0
2019-11-25 21:34:50 -07:00
Rob Walker
ef64f00cbb
Revert "Revert "add genesis stake placeholders ( #6969 )" ( #7109 )" ( #7124 )
...
This reverts commit 702f7cc51d
.
2019-11-25 15:11:55 -08:00
dependabot-preview[bot]
094c391cd7
Bump itertools from 0.8.1 to 0.8.2 ( #7111 )
...
Bumps [itertools](https://github.com/bluss/rust-itertools ) from 0.8.1 to 0.8.2.
- [Release notes](https://github.com/bluss/rust-itertools/releases )
- [Commits](https://github.com/bluss/rust-itertools/commits/v0.8.2 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-25 10:22:47 -07:00
anatoly yakovenko
702f7cc51d
Revert "add genesis stake placeholders ( #6969 )" ( #7109 )
...
* Revert "add genesis stake placeholders (#6969 )"
This reverts commit 8a879faac7
.
* fixup! Revert "add genesis stake placeholders (#6969 )"
* fixup! fixup! Revert "add genesis stake placeholders (#6969 )"
* fixup! fixup! fixup! Revert "add genesis stake placeholders (#6969 )"
* fixup! fixup! fixup! fixup! Revert "add genesis stake placeholders (#6969 )"
* fmt
2019-11-23 23:15:21 -07:00
Justin Starry
ce8d37984d
Allow secure keypair input for solana-validator cli ( #7080 )
...
* Allow secure keypair input for solana-validator cli
* feedback
* Add --skip-mnemonic-validation
* Update --identity to --identity-keypair
* Use struct instead of tuple
* Fix dependencies
* cargo fmt
* Add basic tests
* Use `seed phrase` instead of `mnemonic`
* Update passphrase prompt
2019-11-22 10:20:40 -05:00
Jack May
d8ead57fbb
Use bs58 strings to declare IDs rather then raw bytes ( #7082 )
2019-11-21 16:34:40 -08:00
Rob Walker
8a879faac7
add genesis stake placeholders ( #6969 )
...
* add investor stake placeholders
fixups
fixups
review comments, fixups
make more data-looky for easier management
rent may be zero
rework with more tables, derived keys
fixups
rebase-fix
fixups
fixups
* genesis is now too big to boot in 10 seconds
2019-11-21 12:05:31 -08:00
Michael Vines
a2a9f1e331
Truncate new keypair files ( #7078 )
...
automerge
2019-11-21 10:02:04 -08:00
Jack May
3415db9739
Merge api/program into single units ( #7061 )
2019-11-20 16:32:19 -08:00
Michael Vines
1fef74b00c
Fix `solana-keygen new --force ...` ( #7064 )
...
automerge
2019-11-20 12:46:16 -08:00
anatoly yakovenko
b150da837a
Use epoch as the gossip purge timeout for staked nodes. ( #7005 )
...
automerge
2019-11-20 11:25:18 -08:00
Jack May
d184d3a732
Merge native programs parts into one unit ( #7047 )
2019-11-20 10:12:43 -08:00
Michael Vines
7151b92239
Don't create keypair files with r+go ( #7051 )
2019-11-19 18:26:21 -07:00
Tyera Eulberg
716caeb17c
Use camelCase ( #7050 )
...
automerge
2019-11-19 14:55:32 -08:00
Tyera Eulberg
ea656b1a3f
Add parent slot to getConfirmedBlock ( #7038 )
...
* Add parent slot to getConfirmedBlock
* Fix bad text-replace
* Use camelCase in getConfirmedBlock
2019-11-19 09:39:55 -07:00
Justin Starry
3acd84d9c0
Allow creating an vote program ix where the withdrawer is also the "to" account ( #6992 )
...
automerge
2019-11-18 12:43:47 -08:00
sakridge
c1b06817a2
Add non-dev value for slots_per_epoch and use that as default ( #6984 )
...
When --dev flag is not passed.
2019-11-16 20:53:54 -08:00
Michael Vines
5ab70c4e97
genesis: rename mint account to faucet account and make it optional ( #6990 )
2019-11-15 14:50:26 -07:00
Michael Vines
e7f63cd336
Upgrade to rust 1.39.0 ( #6939 )
...
* Upgrade to rust 1.39.0
* 1.39.0 clippy
2019-11-14 12:27:01 -07:00
Sagar Dhawan
f108f483b7
Remove Blobs and switch to Packets ( #6937 )
...
* Remove Blobs and switch to Packets
* Fix some gossip messages not respecting MTU size
* Failure to serialize is not fatal
* Add log macros
* Remove unused extern
* Apparently macro use is required
* Explicitly scope macro
* Fix test compile
2019-11-14 10:24:53 -08:00
Michael Vines
f4846b6fe4
Update rent.rs
2019-11-14 08:55:09 -07:00
Parth
7b05b3dbb3
rent collector improvments ( #6888 )
...
* avoid account copying + pre-empt rent
* adding support for base rent
2019-11-14 10:56:49 +05:30
Justin Starry
0be13a6295
Silence cargo install error in bpf script ( #6926 )
...
automerge
2019-11-13 08:57:12 -08:00
Greg Fitzgerald
361eab1bf7
Remove unused dependencies ( #6917 )
...
automerge
2019-11-12 22:00:29 -08:00
Rob Walker
bb00904fc8
add rent reserve for bootstrap stakes ( #6876 )
...
* genesis investor stakes
* assert rent is sufficient for these bootstrappers
2019-11-12 12:33:40 -08:00
Michael Vines
c6b108ef4f
Don't panic in sdk/ when genesis fails to load ( #6892 )
2019-11-12 10:24:49 -07:00
Justin Starry
c7e2057d2d
Install xargo if a new version is available ( #6882 )
...
automerge
2019-11-11 20:32:07 -08:00
Jack May
91cfa0aac9
Upgrade xargo if old ( #6869 )
2019-11-11 12:58:24 -08:00
Justin Starry
9807f47d4e
Rename genesis block to genesis config ( #6816 )
2019-11-08 23:56:57 -05:00
Michael Vines
9c00ad9ff2
Remove some low-hanging TODOs ( #6839 )
2019-11-08 16:41:36 -07:00
Jack May
8babecd890
Remove todo from account ( #6827 )
2019-11-08 13:30:21 -08:00
Jack May
bb9649e18d
Replacd todo with issue ( #6823 )
2019-11-08 11:48:07 -08:00
Jack May
cd5ec8cd35
Fix blind keyed_account indexing in BPF and Move loader ( #6810 )
2019-11-08 09:19:19 -08:00
Parth
5bd05fba09
require `to` account signature ( #6658 )
...
* require to signature
* fixing invocation to create_account
* fix create_account references
* address review comment
* whacking bugs in tests
* fixing stake program tests
2019-11-08 15:57:35 +05:30
Sagar Dhawan
80a89b5e6d
Revert "Revert "Add inflation to epoch phases ( #6787 )" ( #6802 )" ( #6806 )
...
automerge
2019-11-07 18:33:14 -08:00
Rob Walker
b64b54f48f
unfork dalek ed25519 ( #6776 )
2019-11-07 17:08:10 -08:00
Sagar Dhawan
d89271528e
Revert "Add inflation to epoch phases ( #6787 )" ( #6802 )
...
automerge
2019-11-07 16:43:09 -08:00
Jack May
a9c4cd6cbe
Add inflation to epoch phases ( #6787 )
2019-11-07 10:53:04 -08:00
Jack May
65de227520
Don't panic on packet data ( #6769 )
2019-11-06 14:32:37 -08:00
Tyera Eulberg
b3a75a60a4
Use rooted bank by default in rpc bank selection ( #6759 )
...
* Name anonymous parameters for clarity
* Add CommitmentConfig to select bank for rpc
* Add commitment information to jsonrpc docs
* Update send_and_confirm retries as per commitment defaults
* Pass CommitmentConfig into client requests; also various 'use' cleanup
* Use _with_commitment methods to speed local_cluster tests
* Pass CommitmentConfig into Archiver in order to enable quick confirmations in local_cluster tests
* Restore solana ping speed
* Increase wallet-sanity timeout to account for longer confirmation time
2019-11-06 14:15:00 -07:00
Rob Walker
a1fe6265fd
use pubkeys in genesis ( #6750 )
2019-11-06 11:18:25 -08:00
Michael Vines
08973f9f05
Adjust default signature fee for base-10 lamports ( #6738 )
2019-11-05 11:21:45 -07:00
Tyera Eulberg
c6931dcb07
Remove credit-only account handling ( #6726 )
...
* Renaming
- credit-only/credit-debit to read-only/read-write
- debitable to writable
* Remove credit handling, making credit-only accounts read-only
* Update programs to remove deprecated credit-only account designation
* Use readonly and writable instead of underscored types
2019-11-05 09:38:35 -07:00
Rob Walker
efe260f12e
sysvar trait ( #6667 )
...
* sysvar trait
* get the new guy in on it
2019-11-04 12:31:24 -08:00
Rob Walker
b9b535c30f
move system_instruction::transfer() `to` credit-debit ( #6677 )
...
* transfer no credit only
* use a credit-only transfer in the credit-only test
2019-11-04 12:30:59 -08:00
Trent Nelson
5416c114cf
SDK: Add sysvar to expose recent block hashes to programs ( #6663 )
...
* SDK: Add sysvar to expose recent block hashes to programs
* Blockhashes is one word
* Missed one
* Avoid allocs on update
* unwrap_or_else
* Use iterators
* Add microbench
* Revert "unwrap_or_else"
This reverts commit a8f8c3bfbe0d88e2229e67a29e9d2b489b93ff62.
* Revert "Avoid allocs on update"
This reverts commit 486f01790c271cf09ac3dbffba0e40e526e81324.
2019-11-04 10:51:15 -07:00
anatoly yakovenko
9ea398416e
Sign shreds on the GPU ( #6595 )
...
* sign gpu shreds
* wip
* checks
* tests build
* test
* tests
* test
* nits
* sign cpu test
* write out the sigs in parallel
* clippy
* cpu test
* prepare secret for gpu
* woot!
* update
* bump perf libs
2019-11-02 06:23:14 -07:00
Michael Vines
50a17fc00b
Use Slot and Epoch type aliases instead of raw u64 ( #6693 )
...
automerge
2019-11-02 00:38:30 -07:00
TristanDebrunner
e6c8bfd008
Add --use-move flag to cargo-install-all.sh and net/net.sh ( #6670 )
2019-11-01 07:53:30 -07:00
Rob Walker
111942a47d
document clock ( #6662 )
2019-10-31 13:26:55 -07:00
Rob Walker
bc88180058
stake split ( #6402 )
...
* stake split
* stake split
2019-10-31 11:07:27 -07:00
Rob Walker
fa12a5f70b
kill rent calculator ( #6625 )
2019-10-30 16:25:12 -07:00
Justin Starry
d2d78a073f
Remove lingering references to base-2 SOLs ( #6629 )
...
automerge
2019-10-30 14:59:44 -07:00
Tyera Eulberg
4ec95043d7
Update sol:lamport ratio to base-10 ( #6611 )
...
* Update sol:lamport ratio
* Update various SOL quantities in bash scripts
2019-10-29 20:03:48 -06:00
TristanDebrunner
b4dc1a7263
Remove move feature ( #6605 )
...
automerge
2019-10-29 17:14:07 -07:00
dependabot-preview[bot]
30c0a7d069
Bump serde from 1.0.101 to 1.0.102 ( #6581 )
...
automerge
2019-10-28 09:19:39 -07:00
dependabot-preview[bot]
71b4e765c8
Bump itertools from 0.8.0 to 0.8.1 ( #6583 )
...
Bumps [itertools](https://github.com/bluss/rust-itertools ) from 0.8.0 to 0.8.1.
- [Release notes](https://github.com/bluss/rust-itertools/releases )
- [Commits](https://github.com/bluss/rust-itertools/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-28 08:26:15 -07:00
dependabot-preview[bot]
73dd5aa2d1
Bump serde_derive from 1.0.101 to 1.0.102 ( #6582 )
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.101 to 1.0.102.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.101...v1.0.102 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-28 08:24:13 -07:00
Dan Albert
73c31d873e
Update Cargo.toml versions from 0.20.0 to 0.21.0 ( #6568 )
2019-10-25 17:40:49 -06:00
Jack May
d68e2c4d06
Revert "Make instruction data opaque to runtime ( #6470 )" ( #6564 )
...
This reverts commit 6eeca9c6f1
.
2019-10-25 16:22:41 -07:00
Jack May
6eeca9c6f1
Make instruction data opaque to runtime ( #6470 )
2019-10-24 22:38:57 -07:00
Rob Walker
b4119c454a
credit_only credits forwarding ( #6509 )
...
* credit_only_credits_forwarding
* whack transfer_now()
* fixup
* bench should retry the airdrop TX
* fixup
* try to make bench-exchange a bit more robust, informative
2019-10-23 22:01:22 -07:00
Jack May
ddefc96433
Limit deserialization of program inputs ( #6522 )
2019-10-23 19:56:07 -07:00
sakridge
03d29a8311
Async poh verify ( #6353 )
...
* Async poh verify
* Up ticks_per_s to 160
GPU poh verify needs shorter poh sequences or it takes forever to
verify. Keep slot time the same at 400ms.
* Fix stats
* Don't halt on ticks
* Increase retries for local_cluster tests and make repairman test serial
2019-10-23 12:11:04 -07:00
Michael Vines
35cc74ef25
Add GenesisBlock::OperatingMode to control how cluster features are activated ( #6430 )
2019-10-23 11:50:10 -07:00
Greg Fitzgerald
9232057e95
Rename replicator to archiver ( #6464 )
...
* Rename replicator to archiver
* cargo fmt
* Fix grammar
2019-10-21 11:29:37 -06:00
Rob Walker
e2c316d2d0
system_instruction_processor updates ( #6448 )
...
* zero lamport account creation
* whack create_user_account, take 2
* target->to
* ..
* ..
* update chacha golden
* update chacha golden
* ..
* ..
2019-10-19 18:23:27 -07:00
sakridge
32bfced6a4
Add offset checks for sigverify ( #6452 )
...
* Add offset checks for sigverify
* decode_len returning error instead of unwrap
2019-10-18 17:52:59 -07:00
Jack May
985f5c7351
Use serde-bytes to serialize u8 efficiently ( #6442 )
...
automerge
2019-10-18 17:18:06 -07:00
Michael Vines
621c67a8cb
Adjust default cluster signature fees ( #6436 )
2019-10-18 17:00:51 -07:00
Ryo Onodera
193c9a08e0
Reject TXs when there is a mismatch ( #6236 )
...
automerge
2019-10-18 09:48:35 -07:00
Sagar Dhawan
298ba34c3c
Add flag to mark a packet as discarded ( #6427 )
2019-10-17 16:26:29 -07:00
Pankaj Garg
326a4282bb
Compute max blockhash age accounting for slot duration ( #6421 )
...
* Compute max blockhash age accounting for slot duration
* Update comment for the constant
2019-10-17 15:21:05 -07:00
Greg Fitzgerald
d3068c3918
Remove circular dependencies in core ( #6408 )
...
* Remove core::result dependency from blocktree
* Remove core::result dependency from shred
* Move Packet from core::packet to sdk::packet
This way we don't need to split perf_libs yet.
* Disable packet when compiling BPF programs
2019-10-17 11:37:30 -06:00
Jack May
26d31b68d7
Update Rust-BPF to v0.1.8 ( #6404 )
2019-10-16 15:08:29 -07:00
Ryo Onodera
e267dfacdd
Stabilize some banking stage tests ( #6251 )
...
* Stabilize some banking stage tests
Fixes #5660
* Fix CI...
* clean up
* Fix ci
* Address review nits
* Use bank.max_tick_height due to off-by-one for no PohRecord's clearing bank
* Fix CI...
* Use bank.max_tick_height() instead for clarity
2019-10-16 12:37:27 -07:00
Jack May
1fd84cb52b
Enforce only system program can allocate accounts ( #6386 )
2019-10-16 10:47:45 -07:00
Greg Fitzgerald
ae41c88eb2
Boot the Builder pattern from GenesisBlock ( #6364 )
2019-10-15 13:52:44 -06:00
Rob Walker
c2ebf466fd
reestablish parameter semantics for withdraw ( #6330 )
2019-10-14 15:02:24 -07:00
Greg Fitzgerald
ba46bc4624
Fix system program blind derefs ( #6317 )
...
automerge
2019-10-10 16:43:49 -07:00
Trent Nelson
9cde67086f
solana-keygen - Poor mans keypair encryption ( #6259 )
...
* SDK: Refactor (read|write)_keypair
Split file opening and data writing operations
Drop filename == "-" stdio signal. It is an app-level feature
* keygen: Move all non-key printing to stderr
* keygen: Adapt to SDK refactor
* keygen: Factor keypair output out to a helper function
2019-10-10 17:01:03 -06:00
Greg Fitzgerald
eca56eb87d
Add next_keyed_account() to instruction_processor_utils ( #6309 )
...
* Cleanup KeyedArguments traversal
* Better error message
* Fix clippy warning
* Rename next_arg to next_keyed_account
* Fix clippy warning
* Shorter
2019-10-10 06:30:42 -06:00
Jack May
54d0168746
BPF call trace script ( #6311 )
...
automerge
2019-10-10 01:10:47 -07:00
Rob Walker
e58e48e919
make sysvar creation a bit more foolproof ( #6294 )
2019-10-09 23:22:33 -07:00
Sagar Dhawan
4b0250192a
Remove remnants of the cuda feature flag ( #6298 )
...
automerge
2019-10-09 16:09:36 -07:00
Rob Walker
7cf90766a3
add epoch_schedule sysvar ( #6256 )
...
* add epoch_schedule sysvar
* book sheesh!
2019-10-08 22:34:26 -07:00
dependabot-preview[bot]
d759a447be
Bump serde_json from 1.0.40 to 1.0.41 ( #6226 )
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.40 to 1.0.41.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.40...v1.0.41 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-03 21:03:05 -06:00
Parth
92ea11fca1
make executable, vote and stake account rent exempt ( #6017 )
...
* add missing convenience method
* require vote account to be exempt
* make stake account rent exempt
* making executable rent exempt
* rent will be initialized in genesis
* add test for update_rent
2019-10-04 02:52:48 +05:30
Justin Starry
a6363e56b6
Add native_token module to sdk ( #6192 )
2019-10-01 13:53:28 -04:00
Jack May
520f7c3e18
Optimize BPF logs ( #6186 )
2019-09-30 14:21:29 -07:00