暂无描述

Jethro Beekman 3b0668806a Add collections/alloc features 8 年之前
src 3b0668806a Add collections/alloc features 8 年之前
.gitignore a90b4d36cd sync script + first import 8 年之前
Cargo.toml 3b0668806a Add collections/alloc features 8 年之前
LICENSE-APACHE 625484e0c3 Add some documentation and copyright info 8 年之前
LICENSE-MIT 625484e0c3 Add some documentation and copyright info 8 年之前
README.md 625484e0c3 Add some documentation and copyright info 8 年之前
build.rs 6380905235 Select module version based on rustc version 8 年之前
doc.sh 3b0668806a Add collections/alloc features 8 年之前
mapping.rs 1846758471 nightly-2016-07-08 8 年之前
sync.sh a90b4d36cd sync script + first import 8 年之前

README.md

core_io

std::io with all the parts that don't work in core removed.

Adding new nightly versions

First, make sure the commit you want to add is fetch in the git tree at /your/rust/dir/.git. Then, import the right source files:

$ echo FULL_COMMIT_ID ...|GIT_DIR=/your/rust/dir/.git ./sync.sh

Instead of echoing in the commit IDs, you might pipe in rustc-commit-db list-valid.

Now look at the changes with git status. If nothing changed then the commit you tried to add was already there. Otherwise commit all changes and new files now. If only mapping.rs changed, the I/O code has not changed for this particular commit. If a directory in src/ was added, after committing, cd into it to apply the patch.

Find out which previously-existing commit is closest to the new one and search this git repository for a commit with the description Patch COMMIT for core. For example, if you're adding dd56a6ad08, the best closest commit is 80d733385a.

$ git log --pretty=oneline --grep=80d733385aa2ff150a5d6f83ecfe55afc7e19e68
92fc0ad81c432b5fa3e848fc1892815ca2f55100 Patch 80d733385aa2ff150a5d6f83ecfe55afc7e19e68 for core

The commit ID at the start of the line is the patch we'll try to apply:

$ git show 92fc0ad81c432b5fa3e848fc1892815ca2f55100|patch -p3
$ cargo build

Now, fix any errors cargo reports. If patch also reported errors, you may look at the rejects for inspiration ;).

Finally, commit this new version:

$ git commit -m "Patch dd56a6ad0845b76509c4f8967e8ca476471ab7e0 for core" .

Do not commit any files in different directories, this will break the patching scheme.