Greg Fitzgerald
f02a78d8ff
Add StakeInstruction::AuthorizeWithSeed ( #11700 )
...
* Add StakeInstruction::AuthorizeWithSeed
* chore: add authorize-with-seed to web.js
* fix: add address_owner
* Add SystemInstruction::TransferWithSeed
* Update ABI hash
* chore: better variable names
* Add AuthorizeWithSeedArgs
* Reorder and rename arguments for clarity
2020-08-21 18:28:01 +00:00
Aaron Hill
c099b29b36
Remove ::solana_sdk hack ( #11326 )
...
Fixes #10933
Now that https://github.com/rust-lang/rust/pull/72121 has been merged,
using a `$crate` path from a nested `macro_rules!` will work properly
across multiple crates. This allows us to stop using `::solana_sdk`
to reference to the `respan!` macro.
2020-08-18 17:59:41 +00:00
Michael Vines
d15173ad9d
Address latest nightly clippy lints, but globally disable stable_sort_primitive
2020-08-17 22:36:10 -07:00
Jack May
e9b610b8df
Add SystemInstruction::CreateAccount support to CPI ( #11649 )
2020-08-17 13:38:42 -07:00
Jack May
f1ba2387d3
More efficient padding ( #11656 )
2020-08-17 10:24:34 -07:00
Jack May
768b386f0a
fix region checks ( #11651 )
2020-08-16 23:11:52 -07:00
Jack May
7c736f71fe
Make BPF Loader static ( #11516 )
2020-08-14 12:32:45 -07:00
Trent Nelson
30dbe257cf
Reimplement decode_len() with ShortU16 vistor helper
2020-08-14 08:17:52 -06:00
Trent Nelson
6222fbcc66
Factor out ShortU16 deser vistor logic to helper
2020-08-14 08:17:52 -06:00
Trent Nelson
338f66f9aa
Add failing test for decoding ShortU16 alias values
2020-08-14 08:17:52 -06:00
Jack May
9290e561e1
Align host addresses ( #11384 )
...
* Align host addresses
* support new program abi
* update epoch rollout
* Enforce aligned pointers in cross-program invocations
2020-08-11 16:11:52 -07:00
Ryo Onodera
6c242f3fec
Fix bad rent in Bank::deposit as if since epoch 0 ( #10468 )
...
* Fix bad rent in Bank::deposit as if since epoch 0
* Remove redundant predicate
* Rename
* Start to add tests with some cleanup
* Forgot to add refactor code...
* Enchance test
* Really fix rent timing in deposit with robust test
* Simplify new behavior by disabling rent altogether
2020-08-12 00:04:32 +09:00
Jack May
140b2392f6
Unified signature for create_program_address ( #11460 )
2020-08-10 10:24:11 -07:00
Jack May
5a7e99f283
Fix cbindgen compatibility ( #11455 )
2020-08-07 15:13:48 -07:00
Greg Fitzgerald
bad486823c
Add a client for BankForks ( #10728 )
...
Also:
* Use BanksClient in solana-tokens
2020-08-07 08:45:17 -06:00
Greg Fitzgerald
3fdd8ffdf0
Remove circular dep between InstructionError and SystemError ( #11427 )
2020-08-06 22:04:43 +00:00
Jack May
03263c850a
Force program address off the curve ( #11323 )
2020-08-05 16:35:54 -07:00
Trent Nelson
e12ab9d0dd
Bump version to 1.4.0
2020-08-05 12:04:15 -06:00
Trent Nelson
3f73affb2e
Add From for SanitizeError > TransactionError
2020-08-05 06:06:57 +00:00
Aaron Hill
8bcc8edf47
Remove calls to `unwrap()` in `respan!` macro
...
Previously, `proc_macro2::Span::resolved_at` was gated behind
cfg(procmacro2_semver_exempt). This gate has been removed in the latest
version of proc-macro2, allowing us to avoid using `unwrap()` to use the
underling method on `proc_macro::Span`
2020-08-02 19:15:06 -07:00
Trent Nelson
c421d7f1b8
Test that off-curve pubkeys fail signature verify
2020-07-31 14:21:03 -06:00
Trent Nelson
251f974b50
Allow inspection of signature verification failures
2020-07-31 14:21:03 -06:00
Michael Vines
52575349dc
Build programs with `--no-default-features --features program` to match solana-sdk
2020-07-31 08:57:42 -07:00
Jack May
2dbed80e48
Disable cross-program invocations for OperatingMode::Stable ( #11272 )
2020-07-29 15:29:52 -07:00
Michael Vines
c410b082b7
.sh
2020-07-29 14:12:11 -07:00
Michael Vines
3a1ca4efff
Fetch and install SPL programs by default
2020-07-29 12:48:56 -07:00
Jack May
16ecce353f
Revert "Land program addresses on the curve ( #11174 )" ( #11253 )
...
This reverts commit f317c362a8
.
2020-07-29 11:33:45 -07:00
Jack May
f317c362a8
Land program addresses on the curve ( #11174 )
2020-07-27 10:45:59 -07:00
Michael Vines
125a36abbc
Remove move more
2020-07-24 01:42:19 +00:00
Greg Fitzgerald
8ccce1e543
Upgrade ed25519-dalek ( #11183 )
2020-07-23 17:23:51 -06:00
Greg Fitzgerald
8b1b392be9
Remove move_loader and librapay ( #11184 )
...
* Remove move_loader and librapay
* Remove Embedding Move from implemented proposals
* Remove Move variant from CI
* Remove move_loader ID
2020-07-23 15:08:59 -06:00
Tyera Eulberg
6de8da05e3
Skip entrypoint in programs ( #11176 )
2020-07-23 19:44:59 +00:00
Michael Vines
a5dd848702
getEpochInfo RPC endpoint now includes the current block height
2020-07-21 17:24:07 -07:00
Tyera Eulberg
231e2387db
Program feature-flag entrypoint ( #11144 )
2020-07-21 14:36:28 -06:00
Ryo Onodera
3db246f596
Add --warp-epoch and --force-inflation to ledger-tool cap. ( #11107 )
...
* Add --warp-epoch and --force-inflation to ledger-tool cap.
* Add more arguments
* Address review comments
* Fix message
* Fix various typos...
2020-07-20 19:09:38 +09:00
Michael Vines
e5d8c4383f
Add Bank support for "upgrade epochs" where all non-vote transactions will be rejected
2020-07-17 08:48:42 -07:00
Aaron Hill
95490ff56e
Apply #![feature(proc_macro_hygiene)] when needed
...
This allows the rust-bpf-builder toolchain to build the sdk
2020-07-14 14:40:02 -07:00
Aaron Hill
e7387f60a7
Fix clippy lints
2020-07-14 14:40:02 -07:00
Aaron Hill
fed69e96a9
Split comment over multiple lines
...
Due to https://github.com/rust-lang/rustfmt/issues/4325 , leaving this as
one line causes rustfmt to add extra indentation to the surrounding
code.
2020-07-14 14:40:02 -07:00
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