You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Dec 9, 2018. It is now read-only.
Currently steed source tree is based on some mix of rust's libstd sources manually handpicked at different periods of time. Copying files one-by-one and maintaining tree up-to-date consumes time. There were several breakages recently that required copying changes from Rust master branch to steed.
In instead of maintaining source parity this way I propose to rebasesteed changes on top of libstd. I tried to make a proof-of-concept, extracted libstd out of rust master branch, moved some changes from steed and I was able to compile static "hello world" example successfully. It works great.
Here is a git command that extracts libstd from Rust sources: git filter-branch --prune-empty --subdirectory-filter src/libstd && git filter-branch -f --tree-filter 'mkdir -p src; mv * src; mv src/Cargo.toml .; true'
Developing steed on top of upstream libstd has following advantages:
bringing upstream changes simplified and becomes automatic
it is much easier to see delta between upstream libstd and steed. Keeping this delta small will help in the future when merging libc-less support back to upstream
The text was updated successfully, but these errors were encountered:
If both upstream and steed modifies the same code then yes there will be a merge conflict that needs to be resolved. Using git will help to identify such conflicting changes easily. But most of the upstream changes are non-conflicting and git will merge them automatically.
I fear that we lose the benefits of VCS when we do this.
I am not following this sentence. I actually propose to use git to do merges for us instead of bringing upstream changes by copy-pasting in an editor (like it is done now).
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Currently
steed
source tree is based on some mix of rust'slibstd
sources manually handpicked at different periods of time. Copying files one-by-one and maintaining tree up-to-date consumes time. There were several breakages recently that required copying changes from Rustmaster
branch to steed.In instead of maintaining source parity this way I propose to rebase
steed
changes on top oflibstd
. I tried to make a proof-of-concept, extractedlibstd
out of rust master branch, moved some changes fromsteed
and I was able to compile static "hello world" example successfully. It works great.Here is a git command that extracts
libstd
from Rust sources:git filter-branch --prune-empty --subdirectory-filter src/libstd && git filter-branch -f --tree-filter 'mkdir -p src; mv * src; mv src/Cargo.toml .; true'
Developing steed on top of upstream
libstd
has following advantages:libstd
and steed. Keeping this delta small will help in the future when merging libc-less support back to upstreamThe text was updated successfully, but these errors were encountered: