Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 2 additions & 15 deletions DEVELOPER-GUIDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,7 @@
```

## Submitting / updating PRs
1. Ensure that your changes are rebased against the latest `main-<upstream-version>-yyyy-mm-dd`.
If your PR is open across a `main*` branch update, we recommend doing a rebase and force push.
1. Ensure that your changes are rebased against `main`.
1. Ensure that your code is properly formatted.
```
./x.py fmt
Expand All @@ -31,16 +30,4 @@ TODO
RMC is implemented as an additional codegen backend for the
[Rust compiler](https://github.com/rust-lang/rust).
The `master` branch from the upstream compiler is mirrored as `upstream-master`.
The RMC code itself is maintained as a set of rebased patches,
on branches named `main-<upstream-version>-yyyy-mm-dd`.
These branches are updated on a weekly cadence.
The most recent of these branches is set as the `default` branch for the repository.
This is the branch that you should build and use, and this is the branch that you should make PRs against.

### Patch structure
The `main-<upstream-version>-yyyy-mm-dd` branches have the following git structure:

* The upstream `master` branch as of the date `yyyy-mm-dd`.
* A source code patch that makes all changes to the upstream code needed for RMC to link.
* A renaming patch that renames upstream files that conflict with RMC files.
* A set of commits representing RMC feature code.
Changes from the upstream compiler are merged with RMC's `main` branch on a weekly cadence.