xref: /relibc/core_io/README.md (revision 1a62a818c30009f916188d1ba0d22b1986971698)
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