* 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...
Docker image containing rust nightly and some preinstalled crates used in CI.
This image may be manually updated by running CI=true ./build.sh if you are a member
of the Solana Labs Docker Hub
organization.
Moving to a newer nightly
NOTE: Follow instructions in docker-rust/README.md before this when updating the stable rust version as well.
We pin the version of nightly (see the ARG nightly=xyz line in Dockerfile)
to avoid the build breaking at unexpected times, as occasionally nightly will
introduce breaking changes.
To update the pinned version:
- Edit 
Dockerfileto match the desired stable rust version to base on if needed. - Run 
ci/docker-rust-nightly/build.shto rebuild the nightly image locally, or potentiallyci/docker-rust-nightly/build.sh YYYY-MM-DDif there's a specific YYYY-MM-DD that is desired (default is today's build). Check https://rust-lang.github.io/rustup-components-history/ for build status - Update 
ci/rust-version.shto reflect the new nightlyYYY-MM-DD - Run 
SOLANA_ALLOCATE_TTY=1 SOLANA_DOCKER_RUN_NOSETUID=1 ci/docker-run.sh --nopull solanalabs/rust-nightly:YYYY-MM-DD ci/test-checks.shandSOLANA_ALLOCATE_TTY=1 SOLANA_DOCKER_RUN_NOSETUID=1 ci/docker-run.sh --nopull solanalabs/rust-nightly:YYYY-MM-DD ci/test-coverage.sh [args]...to confirm the new nightly image builds. Fix any issues as needed - Run 
docker loginto enable pushing images to Docker Hub, if you're authorized. - Run 
CI=true ci/docker-rust-nightly/build.sh YYYY-MM-DDto push the new nightly image to dockerhub.com. - Send a PR with the 
ci/rust-version.shchange and any codebase adjustments needed. 
Troubleshooting
Resource is denied
When running CI=true ci/docker-rust-nightly/build.sh, you see:
denied: requested access to the resource is denied
Run docker login to enable pushing images to Docker Hub. Contact @mvines or @garious
to get write access.