|
| 1 | +# PLEASE READ: This repo no longer contains the SPL program implementations |
| 2 | + |
| 3 | +This repo still exists in archived form, feel free to fork any reference |
| 4 | +implementations it still contains. |
| 5 | + |
| 6 | +See Agave, the Solana validator implementation from Anza: https://github.com/anza-xyz/agave |
| 7 | + |
| 8 | +--- |
| 9 | + |
1 | 10 | <p align="center"> |
2 | 11 | <a href="https://solana.com"> |
3 | 12 | <img alt="Solana" src="https://i.imgur.com/IKyzQ6T.png" width="250" /> |
@@ -26,20 +35,24 @@ $ rustup update |
26 | 35 | ``` |
27 | 36 |
|
28 | 37 | When building a specific release branch, you should check the rust version in `ci/rust-version.sh` and if necessary, install that version by running: |
| 38 | + |
29 | 39 | ```bash |
30 | 40 | $ rustup install VERSION |
31 | 41 | ``` |
| 42 | + |
32 | 43 | Note that if this is not the latest rust version on your machine, cargo commands may require an [override](https://rust-lang.github.io/rustup/overrides.html) in order to use the correct version. |
33 | 44 |
|
34 | 45 | On Linux systems you may need to install libssl-dev, pkg-config, zlib1g-dev, protobuf etc. |
35 | 46 |
|
36 | 47 | On Ubuntu: |
| 48 | + |
37 | 49 | ```bash |
38 | 50 | $ sudo apt-get update |
39 | 51 | $ sudo apt-get install libssl-dev libudev-dev pkg-config zlib1g-dev llvm clang cmake make libprotobuf-dev protobuf-compiler |
40 | 52 | ``` |
41 | 53 |
|
42 | 54 | On Fedora: |
| 55 | + |
43 | 56 | ```bash |
44 | 57 | $ sudo dnf install openssl-devel systemd-devel pkg-config zlib-devel llvm clang cmake make protobuf-devel protobuf-compiler perl-core |
45 | 58 | ``` |
@@ -71,8 +84,8 @@ Start your own testnet locally, instructions are in the [online docs](https://do |
71 | 84 |
|
72 | 85 | ### Accessing the remote development cluster |
73 | 86 |
|
74 | | -* `devnet` - stable public cluster for development accessible via |
75 | | -devnet.solana.com. Runs 24/7. Learn more about the [public clusters](https://docs.solanalabs.com/clusters) |
| 87 | +- `devnet` - stable public cluster for development accessible via |
| 88 | + devnet.solana.com. Runs 24/7. Learn more about the [public clusters](https://docs.solanalabs.com/clusters) |
76 | 89 |
|
77 | 90 | # Benchmarking |
78 | 91 |
|
@@ -103,10 +116,10 @@ $ open target/cov/lcov-local/index.html |
103 | 116 | ``` |
104 | 117 |
|
105 | 118 | Why coverage? While most see coverage as a code quality metric, we see it primarily as a developer |
106 | | -productivity metric. When a developer makes a change to the codebase, presumably it's a *solution* to |
107 | | -some problem. Our unit-test suite is how we encode the set of *problems* the codebase solves. Running |
108 | | -the test suite should indicate that your change didn't *infringe* on anyone else's solutions. Adding a |
109 | | -test *protects* your solution from future changes. Say you don't understand why a line of code exists, |
| 119 | +productivity metric. When a developer makes a change to the codebase, presumably it's a _solution_ to |
| 120 | +some problem. Our unit-test suite is how we encode the set of _problems_ the codebase solves. Running |
| 121 | +the test suite should indicate that your change didn't _infringe_ on anyone else's solutions. Adding a |
| 122 | +test _protects_ your solution from future changes. Say you don't understand why a line of code exists, |
110 | 123 | try deleting it and running the unit-tests. The nearest test failure should tell you what problem |
111 | 124 | was solved by that code. If no test fails, go ahead and submit a Pull Request that asks, "what |
112 | 125 | problem is solved by this code?" On the other hand, if a test does fail and you can think of a |
@@ -138,10 +151,10 @@ reader is or is working on behalf of a Specially Designated National |
138 | 151 | (SDN) or a person subject to similar blocking or denied party |
139 | 152 | prohibitions. |
140 | 153 |
|
141 | | -The reader should be aware that U.S. export control and sanctions laws prohibit |
142 | | -U.S. persons (and other persons that are subject to such laws) from transacting |
143 | | -with persons in certain countries and territories or that are on the SDN list. |
144 | | -Accordingly, there is a risk to individuals that other persons using any of the |
145 | | -code contained in this repo, or a derivation thereof, may be sanctioned persons |
146 | | -and that transactions with such persons would be a violation of U.S. export |
| 154 | +The reader should be aware that U.S. export control and sanctions laws prohibit |
| 155 | +U.S. persons (and other persons that are subject to such laws) from transacting |
| 156 | +with persons in certain countries and territories or that are on the SDN list. |
| 157 | +Accordingly, there is a risk to individuals that other persons using any of the |
| 158 | +code contained in this repo, or a derivation thereof, may be sanctioned persons |
| 159 | +and that transactions with such persons would be a violation of U.S. export |
147 | 160 | controls and sanctions law. |
0 commit comments