remove bors and small CI improvements (#7947)

This commit is contained in:
François 2023-03-07 22:42:53 +01:00 committed by GitHub
parent af74d21c71
commit cd06fad441
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 50 additions and 65 deletions

25
.github/bors.toml vendored
View file

@ -1,25 +0,0 @@
status = [
"build (windows-latest)",
"build (ubuntu-latest)",
"build (macos-latest)",
"build-wasm",
"build-android",
"markdownlint",
"run-examples",
"run-examples-on-wasm",
"check-doc",
"check-missing-examples-in-docs",
"check-missing-features-in-docs",
# "check-unused-dependencies",
"ci",
"check-compiles",
"build-and-install-on-iOS",
"run-examples-on-windows-dx12",
"build-without-default-features (bevy)",
"build-without-default-features (bevy_ecs)",
"build-without-default-features (bevy_reflect)",
"msrv",
]
use_squash_merge = true
block_labels = ["S-Pre-Relicense"]

View file

@ -4,9 +4,8 @@ on:
merge_group:
pull_request:
push:
branches-ignore:
- 'dependabot/**'
- staging-squash-merge.tmp
branches:
- main
env:
CARGO_TERM_COLOR: always
@ -147,7 +146,7 @@ jobs:
markdownlint:
runs-on: ubuntu-latest
timeout-minutes: 30
needs: check-missing-examples-in-docs
needs: check-missing-features-in-docs
if: always()
steps:
- uses: actions/checkout@v3
@ -287,6 +286,7 @@ jobs:
check-missing-features-in-docs:
runs-on: ubuntu-latest
timeout-minutes: 30
needs: check-missing-examples-in-docs
steps:
- uses: actions/checkout@v3
- name: check for missing features
@ -317,30 +317,6 @@ jobs:
name: missing-features
path: missing-features/
check-unused-dependencies:
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-check-unused-dependencies-${{ hashFiles('**/Cargo.toml') }}
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ env.NIGHTLY_TOOLCHAIN }}
- name: Installs cargo-udeps
run: cargo install --force cargo-udeps
- name: Install alsa and udev
run: sudo apt-get update; sudo apt-get install --no-install-recommends libasound2-dev libudev-dev
- name: Run cargo udeps
run: cargo udeps
msrv:
runs-on: ubuntu-latest
timeout-minutes: 30

View file

@ -9,11 +9,8 @@ on:
paths:
- '**/Cargo.toml'
- 'deny.toml'
branches-ignore:
- 'dependabot/**'
- staging-squash-merge.tmp
schedule:
- cron: "0 0 * * 0"
branches:
- main
env:
CARGO_TERM_COLOR: always

View file

@ -5,12 +5,11 @@ on:
pull_request:
push:
branches:
- staging
- trying
- main
env:
CARGO_TERM_COLOR: always
NIGHTLY_TOOLCHAIN: nightly
jobs:
build-and-install-on-iOS:
@ -158,6 +157,7 @@ jobs:
if: ${{ github.event_name == 'merge_group' }}
timeout-minutes: 30
strategy:
max-parallel: 1
matrix:
crate: [bevy_ecs, bevy_reflect, bevy]
runs-on: ubuntu-latest
@ -171,3 +171,42 @@ jobs:
env:
CARGO_INCREMENTAL: 0
RUSTFLAGS: "-C debuginfo=0 -D warnings"
build-without-default-features-status:
if: |
always() &&
github.event_name == 'merge_group'
needs: build-without-default-features
runs-on: ubuntu-latest
steps:
- name: Successful
if: ${{ !(contains(needs.*.result, 'failure')) }}
run: exit 0
- name: Failing
if: ${{ contains(needs.*.result, 'failure') }}
run: exit 1
check-unused-dependencies:
if: ${{ github.event_name == 'merge_group' }}
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-check-unused-dependencies-${{ hashFiles('**/Cargo.toml') }}
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ env.NIGHTLY_TOOLCHAIN }}
- name: Installs cargo-udeps
run: cargo install --force cargo-udeps
- name: Install alsa and udev
run: sudo apt-get update; sudo apt-get install --no-install-recommends libasound2-dev libudev-dev
- name: Run cargo udeps
run: cargo udeps

View file

@ -166,7 +166,7 @@ Most changes don't require much "process". If your change is relatively straight
2. Other community members review and comment in an ad-hoc fashion. Active subject matter experts may be pulled into a thread using `@mentions`. If your PR has been quiet for a while and is ready for review, feel free to leave a message to "bump" the thread, or bring it up on [Discord](https://discord.gg/bevy) in an appropriate engine development channel.
3. Once they're content with the pull request (design, code quality, documentation, tests), individual reviewers leave "Approved" reviews.
4. After consensus has been reached (typically two approvals from the community or one for extremely simple changes) and CI passes, the [S-Ready-For-Final-Review](https://github.com/bevyengine/bevy/issues?q=is%3Aopen+is%3Aissue+label%3AS-Ready-For-Final-Review) label is added.
5. When they find time, someone with merge rights performs a final code review and merges the PR using [Bors](https://bors.tech/) by typing `bors r+`.
5. When they find time, someone with merge rights performs a final code review and queue the PR for merging.
### Complex changes
@ -340,9 +340,8 @@ To locally lint your files using the same workflow as our CI:
1. Install [markdownlint-cli](https://github.com/igorshubovych/markdownlint-cli).
2. Run `markdownlint -f -c .github/linters/.markdown-lint.yml .` in the root directory of the Bevy project.
5. Push your changes to your fork on Github and open a Pull Request.
6. If your account is new on github, one of the Bevy org members [will need to manually trigger CI for your PR](https://github.blog/changelog/2021-04-22-github-actions-maintainers-must-approve-first-time-contributor-workflow-runs/) using the `bors try` command.
7. Respond to any CI failures or review feedback. While CI failures must be fixed before we can merge your PR, you do not need to *agree* with all feedback from your reviews, merely acknowledge that it was given. If you cannot come to an agreement, leave the thread open and defer to @cart's final judgement.
8. When your PR is ready to merge, @cart will review it and suggest final changes. If those changes are minimal he may even apply them directly to speed up merging.
6. Respond to any CI failures or review feedback. While CI failures must be fixed before we can merge your PR, you do not need to *agree* with all feedback from your reviews, merely acknowledge that it was given. If you cannot come to an agreement, leave the thread open and defer to @cart's final judgement.
7. When your PR is ready to merge, @cart will review it and suggest final changes. If those changes are minimal he may even apply them directly to speed up merging.
If you end up adding a new official Bevy crate to the `bevy` repo:

View file

@ -64,7 +64,6 @@ Check out the [Bevy People](https://bevyengine.org/community/people/#the-bevy-or
3. Have asked to join the Bevy Org. Reach out to @cart on [Discord](https://discord.gg/bevy) or email us at bevyengine@gmail.com if you are interested. Everyone is welcome to do this. We generally accept membership requests, so don't hesitate if you are interested!
All Bevy Org members are also Triage Team members. The Triage Team can label and close issues and PRs but do not have merge rights or any special authority within the community.
Org members also have the ability to use `bors try`, causing our build system to evaluate the PR again and run additional (more computationally expensive) CI steps to verify that the PR is ready to merge.
## Role Rotation