1625484e0SJethro Beekman# core_io 2625484e0SJethro Beekman 3625484e0SJethro Beekman`std::io` with all the parts that don't work in core removed. 4625484e0SJethro Beekman 5a90b4d36SJethro Beekman## Adding new nightly versions 6a90b4d36SJethro Beekman 7a90b4d36SJethro BeekmanFirst, make sure the commit you want to add is fetch in the git tree at 8a90b4d36SJethro Beekman`/your/rust/dir/.git`. Then, import the right source files: 9a90b4d36SJethro Beekman 10a90b4d36SJethro Beekman``` 11b358934cSJethro Beekman$ echo FULL_COMMIT_ID ...|GIT_DIR=/your/rust/dir/.git ./build-src.sh 12a90b4d36SJethro Beekman``` 13a90b4d36SJethro Beekman 14a90b4d36SJethro BeekmanInstead of echoing in the commit IDs, you might pipe in `rustc-commit-db 15a90b4d36SJethro Beekmanlist-valid`. 16a90b4d36SJethro Beekman 17281a9216SJethro BeekmanThe build-src script will prompt you to create patches for new commits. You 18281a9216SJethro Beekmanwill be dropped in a shell prompt with a temporary new, clean, git repository 19281a9216SJethro Beekmanjust for this patch. Make any changes necessary to make it build. **Don't** 20281a9216SJethro Beekmancommit any changes! When exiting the shell and the script will use the working 21281a9216SJethro Beekmantree diff as the patch. The temporary git repository will be deleted. Before 22281a9216SJethro Beekmandropping into the shell, the script will show you nearby commits, you can try 23281a9216SJethro Beekmanto apply `$PATCH_DIR/that_commit.patch` and see if it works for you. 24281a9216SJethro Beekman 25*1a62a818SJethro Beekman## Publishing 26*1a62a818SJethro Beekman 27*1a62a818SJethro Beekman``` 28*1a62a818SJethro Beekman$ echo FULL_COMMIT_ID ...|GIT_DIR=/your/rust/dir/.git ./build-src.sh publish 29*1a62a818SJethro Beekman``` 30*1a62a818SJethro Beekman 31*1a62a818SJethro BeekmanAgain, instead of echoing in the commit IDs, you might pipe in `rustc-commit-db 32*1a62a818SJethro Beekmanlist-valid`. 33*1a62a818SJethro Beekman 34281a9216SJethro Beekman## Editing patches 35281a9216SJethro Beekman 36281a9216SJethro BeekmanTo edit all patches, again make a checkout of the rust source. Then, run: 37281a9216SJethro Beekman 38281a9216SJethro Beekman``` 39281a9216SJethro Beekman$ GIT_DIR=/your/rust/dir/.git ./edit-patches.sh 40281a9216SJethro Beekman``` 41281a9216SJethro Beekman 42281a9216SJethro BeekmanThe script will prompt you to make changes. You will be dropped in a shell 43281a9216SJethro Beekmanprompt with a temporary new, clean, git repository just for this patch edit. 44281a9216SJethro BeekmanThe original patch will be the HEAD commit in the repository. Make any changes 45281a9216SJethro Beekmanyou want. **Don't** commit any changes! When exiting the shell and the script 46281a9216SJethro Beekmanwill use the diff between the working tree and the root commit as the patch. 47281a9216SJethro BeekmanThe temporary git repository will be deleted. When editing further commits, the 48281a9216SJethro Beekmanprevious patch changes will already be applied to the working tree (if 49281a9216SJethro Beekmansuccesful). 50