mirror of
https://github.com/rtic-rs/rtic.git
synced 2024-12-01 16:04:33 +01:00
Start CI, disable docs building
This commit is contained in:
parent
c40c89bb4e
commit
95e4949680
14 changed files with 299 additions and 313 deletions
550
.github/workflows/build.yml
vendored
550
.github/workflows/build.yml
vendored
|
@ -39,7 +39,7 @@ jobs:
|
||||||
- thumbv6m-none-eabi
|
- thumbv6m-none-eabi
|
||||||
- x86_64-unknown-linux-gnu
|
- x86_64-unknown-linux-gnu
|
||||||
toolchain:
|
toolchain:
|
||||||
- stable
|
- nightly
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
@ -93,7 +93,7 @@ jobs:
|
||||||
- thumbv8m.base-none-eabi
|
- thumbv8m.base-none-eabi
|
||||||
- thumbv8m.main-none-eabi
|
- thumbv8m.main-none-eabi
|
||||||
toolchain:
|
toolchain:
|
||||||
- stable
|
- nightly
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
@ -125,7 +125,7 @@ jobs:
|
||||||
- thumbv7m-none-eabi
|
- thumbv7m-none-eabi
|
||||||
- thumbv6m-none-eabi
|
- thumbv6m-none-eabi
|
||||||
toolchain:
|
toolchain:
|
||||||
- stable
|
- nightly
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
@ -168,7 +168,7 @@ jobs:
|
||||||
target:
|
target:
|
||||||
- x86_64-unknown-linux-gnu
|
- x86_64-unknown-linux-gnu
|
||||||
toolchain:
|
toolchain:
|
||||||
- stable
|
- nightly
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
|
@ -224,276 +224,276 @@ jobs:
|
||||||
- name: Run cargo test
|
- name: Run cargo test
|
||||||
run: cargo test --test tests
|
run: cargo test --test tests
|
||||||
|
|
||||||
# Build documentation, check links
|
# # Build documentation, check links
|
||||||
docs:
|
# docs:
|
||||||
name: docs
|
# name: docs
|
||||||
runs-on: ubuntu-22.04
|
# runs-on: ubuntu-22.04
|
||||||
steps:
|
# steps:
|
||||||
- name: Checkout
|
# - name: Checkout
|
||||||
uses: actions/checkout@v3
|
# uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: Cache pip installed linkchecker
|
|
||||||
uses: actions/cache@v3
|
|
||||||
with:
|
|
||||||
path: ~/.cache/pip
|
|
||||||
key: ${{ runner.os }}-pip
|
|
||||||
restore-keys: |
|
|
||||||
${{ runner.os }}-pip-
|
|
||||||
|
|
||||||
- name: Set up Python 3.x
|
|
||||||
uses: actions/setup-python@v4
|
|
||||||
with:
|
|
||||||
# Semantic version range syntax or exact version of a Python version
|
|
||||||
python-version: '3.x'
|
|
||||||
|
|
||||||
# You can test your matrix by printing the current Python version
|
|
||||||
- name: Display Python version
|
|
||||||
run: python -c "import sys; print(sys.version)"
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: pip install git+https://github.com/linkchecker/linkchecker.git
|
|
||||||
|
|
||||||
- name: Remove cargo-config
|
|
||||||
run: rm -f .cargo/config
|
|
||||||
|
|
||||||
- name: Fail on warnings
|
|
||||||
run: sed -i 's,//deny_warnings_placeholder_for_ci,#![deny(warnings)],' src/lib.rs macros/src/lib.rs
|
|
||||||
|
|
||||||
- name: Build docs
|
|
||||||
run: cargo doc
|
|
||||||
|
|
||||||
- name: Check links
|
|
||||||
run: |
|
|
||||||
td=$(mktemp -d)
|
|
||||||
cp -r target/doc $td/api
|
|
||||||
linkchecker $td/api/rtic/
|
|
||||||
linkchecker $td/api/cortex_m_rtic_macros/
|
|
||||||
|
|
||||||
# Build the books
|
|
||||||
mdbook:
|
|
||||||
name: mdbook
|
|
||||||
runs-on: ubuntu-22.04
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v3
|
|
||||||
- name: Set up Python 3.x
|
|
||||||
uses: actions/setup-python@v4
|
|
||||||
with:
|
|
||||||
# Semantic version range syntax or exact version of a Python version
|
|
||||||
python-version: '3.x'
|
|
||||||
|
|
||||||
# You can test your matrix by printing the current Python version
|
|
||||||
- name: Display Python version
|
|
||||||
run: python -c "import sys; print(sys.version)"
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: pip install git+https://github.com/linkchecker/linkchecker.git
|
|
||||||
|
|
||||||
- name: mdBook Action
|
|
||||||
uses: peaceiris/actions-mdbook@v1
|
|
||||||
with:
|
|
||||||
mdbook-version: 'latest'
|
|
||||||
|
|
||||||
- name: Build book in English
|
|
||||||
shell: 'script --return --quiet --command "bash {0}"'
|
|
||||||
run: cd book/en && if mdbook build |& tee /dev/tty | grep "\[ERROR\]"; then exit 1; else exit 0; fi
|
|
||||||
|
|
||||||
- name: Build book in Russian
|
|
||||||
shell: 'script --return --quiet --command "bash {0}"'
|
|
||||||
run: cd book/ru && if mdbook build |& tee /dev/tty | grep "\[ERROR\]"; then echo "Russian book needs updating!"; else exit 0; fi
|
|
||||||
|
|
||||||
- name: Check links
|
|
||||||
run: |
|
|
||||||
td=$(mktemp -d)
|
|
||||||
mkdir $td/book
|
|
||||||
cp -r book/en/book $td/book/en
|
|
||||||
cp -r book/ru/book $td/book/ru
|
|
||||||
cp LICENSE-* $td/book/en
|
|
||||||
cp LICENSE-* $td/book/ru
|
|
||||||
|
|
||||||
linkchecker $td/book/en/
|
|
||||||
linkchecker $td/book/ru/
|
|
||||||
|
|
||||||
# Update stable branch
|
|
||||||
#
|
#
|
||||||
# This needs to run before book is built
|
# - name: Cache pip installed linkchecker
|
||||||
mergetostablebranch:
|
# uses: actions/cache@v3
|
||||||
name: If CI passes, merge master branch into release/vX
|
# with:
|
||||||
runs-on: ubuntu-22.04
|
# path: ~/.cache/pip
|
||||||
needs:
|
# key: ${{ runner.os }}-pip
|
||||||
- style
|
# restore-keys: |
|
||||||
- check
|
# ${{ runner.os }}-pip-
|
||||||
- clippy
|
#
|
||||||
- checkexamples
|
# - name: Set up Python 3.x
|
||||||
- testexamples
|
# uses: actions/setup-python@v4
|
||||||
- checkmacros
|
# with:
|
||||||
- testmacros
|
# # Semantic version range syntax or exact version of a Python version
|
||||||
- tests
|
# python-version: '3.x'
|
||||||
- docs
|
#
|
||||||
- mdbook
|
# # You can test your matrix by printing the current Python version
|
||||||
|
# - name: Display Python version
|
||||||
# Only run this when pushing to master branch
|
# run: python -c "import sys; print(sys.version)"
|
||||||
if: github.ref == 'refs/heads/master'
|
#
|
||||||
steps:
|
# - name: Install dependencies
|
||||||
- uses: actions/checkout@v3
|
# run: pip install git+https://github.com/linkchecker/linkchecker.git
|
||||||
|
#
|
||||||
- name: Get crate version and print output branch release/vX
|
# - name: Remove cargo-config
|
||||||
id: crateversionbranch
|
# run: rm -f .cargo/config
|
||||||
# Parse metadata for version number, extract the Semver Major
|
#
|
||||||
run: |
|
# - name: Fail on warnings
|
||||||
VERSION=$(cargo metadata --format-version 1 --no-deps --offline | jq -r '.packages[] | select(.name =="cortex-m-rtic") | .version')
|
# run: sed -i 's,//deny_warnings_placeholder_for_ci,#![deny(warnings)],' src/lib.rs macros/src/lib.rs
|
||||||
VERSIONMAJOR=${VERSION%.*.*}
|
#
|
||||||
echo "branch=release/v$VERSIONMAJOR" >> $GITHUB_ENV
|
# - name: Build docs
|
||||||
echo "versionmajor=$VERSIONMAJOR" >> $GITHUB_ENV
|
# run: cargo doc
|
||||||
echo "version=$VERSION" >> $GITHUB_ENV
|
#
|
||||||
|
# - name: Check links
|
||||||
- uses: everlytic/branch-merge@1.1.5
|
# run: |
|
||||||
with:
|
# td=$(mktemp -d)
|
||||||
github_token: ${{ github.token }}
|
# cp -r target/doc $td/api
|
||||||
source_ref: 'master'
|
# linkchecker $td/api/rtic/
|
||||||
target_branch: ${{ env.branch }}
|
# linkchecker $td/api/cortex_m_rtic_macros/
|
||||||
commit_message_template: '[Bors] Merged {source_ref} into target {target_branch}'
|
#
|
||||||
|
# # Build the books
|
||||||
# Only runs when pushing to master branch
|
# mdbook:
|
||||||
# Bors run CI against staging branch,
|
# name: mdbook
|
||||||
# if that succeeds Borst tries against master branch
|
# runs-on: ubuntu-22.04
|
||||||
# If all tests pass, then deploy stage is run
|
# steps:
|
||||||
deploy:
|
# - name: Checkout
|
||||||
name: deploy
|
# uses: actions/checkout@v3
|
||||||
runs-on: ubuntu-22.04
|
# - name: Set up Python 3.x
|
||||||
needs:
|
# uses: actions/setup-python@v4
|
||||||
mergetostablebranch
|
# with:
|
||||||
|
# # Semantic version range syntax or exact version of a Python version
|
||||||
# Only run this when pushing to master branch
|
# python-version: '3.x'
|
||||||
if: github.ref == 'refs/heads/master'
|
#
|
||||||
steps:
|
# # You can test your matrix by printing the current Python version
|
||||||
- uses: actions/checkout@v3
|
# - name: Display Python version
|
||||||
|
# run: python -c "import sys; print(sys.version)"
|
||||||
- name: Set up Python 3.x
|
#
|
||||||
uses: actions/setup-python@v4
|
# - name: Install dependencies
|
||||||
with:
|
# run: pip install git+https://github.com/linkchecker/linkchecker.git
|
||||||
# Semantic version range syntax or exact version of a Python version
|
#
|
||||||
python-version: '3.x'
|
# - name: mdBook Action
|
||||||
|
# uses: peaceiris/actions-mdbook@v1
|
||||||
# You can test your matrix by printing the current Python version
|
# with:
|
||||||
- name: Display Python version
|
# mdbook-version: 'latest'
|
||||||
run: python -c "import sys; print(sys.version)"
|
#
|
||||||
|
# - name: Build book in English
|
||||||
- name: mdBook Action
|
# shell: 'script --return --quiet --command "bash {0}"'
|
||||||
uses: peaceiris/actions-mdbook@v1
|
# run: cd book/en && if mdbook build |& tee /dev/tty | grep "\[ERROR\]"; then exit 1; else exit 0; fi
|
||||||
with:
|
#
|
||||||
mdbook-version: 'latest'
|
# - name: Build book in Russian
|
||||||
|
# shell: 'script --return --quiet --command "bash {0}"'
|
||||||
- name: Get crate version
|
# run: cd book/ru && if mdbook build |& tee /dev/tty | grep "\[ERROR\]"; then echo "Russian book needs updating!"; else exit 0; fi
|
||||||
id: crateversion
|
#
|
||||||
# Parse metadata for version number, extract the Semver Major
|
# - name: Check links
|
||||||
run: |
|
# run: |
|
||||||
VERSION=$(cargo metadata --format-version 1 --no-deps --offline | jq -r '.packages[] | select(.name =="cortex-m-rtic") | .version')
|
# td=$(mktemp -d)
|
||||||
VERSIONMAJOR=${VERSION%.*.*}
|
# mkdir $td/book
|
||||||
echo "branch=release/v$VERSIONMAJOR" >> $GITHUB_ENV
|
# cp -r book/en/book $td/book/en
|
||||||
echo "versionmajor=$VERSIONMAJOR" >> $GITHUB_ENV
|
# cp -r book/ru/book $td/book/ru
|
||||||
echo "version=$VERSION" >> $GITHUB_ENV
|
# cp LICENSE-* $td/book/en
|
||||||
|
# cp LICENSE-* $td/book/ru
|
||||||
- name: Remove cargo-config
|
#
|
||||||
run: rm -f .cargo/config
|
# linkchecker $td/book/en/
|
||||||
|
# linkchecker $td/book/ru/
|
||||||
- name: Build docs
|
#
|
||||||
run: cargo doc
|
# # Update stable branch
|
||||||
|
# #
|
||||||
- name: Build books
|
# # This needs to run before book is built
|
||||||
shell: 'script --return --quiet --command "bash {0}"'
|
# mergetostablebranch:
|
||||||
run: |
|
# name: If CI passes, merge master branch into release/vX
|
||||||
langs=( en ru )
|
# runs-on: ubuntu-22.04
|
||||||
devver=( dev )
|
# needs:
|
||||||
# The latest stable must be the first element in the array
|
# - style
|
||||||
vers=( "1" "0.5" "0.4" )
|
# - check
|
||||||
|
# - clippy
|
||||||
# All releases start with "v"
|
# - checkexamples
|
||||||
# followed by MAJOR.MINOR.PATCH, see semver.org
|
# - testexamples
|
||||||
# Store first in array as stable
|
# - checkmacros
|
||||||
stable=${vers}
|
# - testmacros
|
||||||
crateversion={{ env.versionmajor }}
|
# - tests
|
||||||
|
# - docs
|
||||||
echo "Latest stable version: $stable"
|
# - mdbook
|
||||||
echo "Current crate version: $crateversion"
|
#
|
||||||
|
# # Only run this when pushing to master branch
|
||||||
# Create directories
|
# if: github.ref == 'refs/heads/master'
|
||||||
td=$(mktemp -d)
|
# steps:
|
||||||
mkdir -p $td/$devver/book/
|
# - uses: actions/checkout@v3
|
||||||
cp -r target/doc $td/$devver/api
|
#
|
||||||
|
# - name: Get crate version and print output branch release/vX
|
||||||
# Redirect rtic.rs/meeting/index.html to hackmd
|
# id: crateversionbranch
|
||||||
mkdir $td/meeting
|
# # Parse metadata for version number, extract the Semver Major
|
||||||
sed "s|URL|https://hackmd.io/c_mFUZL-Q2C6614MlrrxOg|g" redirect.html > $td/meeting/index.html
|
# run: |
|
||||||
sed -i "s|Page Redirection|RTIC Meeting|" $td/meeting/index.html
|
# VERSION=$(cargo metadata --format-version 1 --no-deps --offline | jq -r '.packages[] | select(.name =="cortex-m-rtic") | .version')
|
||||||
sed -i "s|If you|Redirecting to RTIC HackMD. If you|" $td/meeting/index.html
|
# VERSIONMAJOR=${VERSION%.*.*}
|
||||||
|
# echo "branch=release/v$VERSIONMAJOR" >> $GITHUB_ENV
|
||||||
# Redirect the main site to the stable release
|
# echo "versionmajor=$VERSIONMAJOR" >> $GITHUB_ENV
|
||||||
sed "s|URL|$stable|g" redirect.html > $td/index.html
|
# echo "version=$VERSION" >> $GITHUB_ENV
|
||||||
|
#
|
||||||
# Create the redirects for dev-version
|
# - uses: everlytic/branch-merge@1.1.5
|
||||||
# If the current stable and the version being built differ,
|
# with:
|
||||||
# then there is a dev-version and the links should point to it.
|
# github_token: ${{ github.token }}
|
||||||
if [[ "$stable" != "$crateversion" ]];
|
# source_ref: 'master'
|
||||||
then
|
# target_branch: ${{ env.branch }}
|
||||||
sed 's|URL|rtic/index.html|g' redirect.html > $td/$devver/api/index.html
|
# commit_message_template: '[Bors] Merged {source_ref} into target {target_branch}'
|
||||||
sed 's|URL|book/en|g' redirect.html > $td/$devver/index.html
|
#
|
||||||
else
|
# # Only runs when pushing to master branch
|
||||||
# If the current stable and the "dev" version in master branch
|
# # Bors run CI against staging branch,
|
||||||
# share the same major version, redirect dev/ to stable book
|
# # if that succeeds Borst tries against master branch
|
||||||
sed 's|URL|rtic.rs/$stable/api/rtic|g' redirect.html > $td/$devver/api/index.html
|
# # If all tests pass, then deploy stage is run
|
||||||
sed 's|URL|rtic.rs/$stable|g' redirect.html > $td/$devver/index.html
|
# deploy:
|
||||||
fi
|
# name: deploy
|
||||||
|
# runs-on: ubuntu-22.04
|
||||||
# Build books
|
# needs:
|
||||||
for lang in ${langs[@]}; do
|
# mergetostablebranch
|
||||||
( cd book/$lang &&
|
#
|
||||||
if mdbook build |& tee /dev/tty | grep "\[ERROR\]"; then exit 1; else exit 0; fi
|
# # Only run this when pushing to master branch
|
||||||
)
|
# if: github.ref == 'refs/heads/master'
|
||||||
cp -r book/$lang/book $td/$devver/book/$lang
|
# steps:
|
||||||
cp LICENSE-* $td/$devver/book/$lang/
|
# - uses: actions/checkout@v3
|
||||||
done
|
#
|
||||||
|
# - name: Set up Python 3.x
|
||||||
# Build older versions, including stable
|
# uses: actions/setup-python@v4
|
||||||
root=$(pwd)
|
# with:
|
||||||
for ver in ${vers[@]}; do
|
# # Semantic version range syntax or exact version of a Python version
|
||||||
prefix=${ver}
|
# python-version: '3.x'
|
||||||
|
#
|
||||||
mkdir -p $td/$prefix/book
|
# # You can test your matrix by printing the current Python version
|
||||||
src=$(mktemp -d)
|
# - name: Display Python version
|
||||||
curl -L https://github.com/rtic-rs/cortex-m-rtic/archive/release/v${ver}.tar.gz | tar xz --strip-components 1 -C $src
|
# run: python -c "import sys; print(sys.version)"
|
||||||
|
#
|
||||||
pushd $src
|
# - name: mdBook Action
|
||||||
rm -f .cargo/config
|
# uses: peaceiris/actions-mdbook@v1
|
||||||
cargo doc || cargo doc --features timer-queue
|
# with:
|
||||||
cp -r target/doc $td/$prefix/api
|
# mdbook-version: 'latest'
|
||||||
sed 's|URL|rtic/index.html|g' $root/redirect.html > $td/$prefix/api/index.html
|
#
|
||||||
for lang in ${langs[@]}; do
|
# - name: Get crate version
|
||||||
( cd book/$lang &&
|
# id: crateversion
|
||||||
if mdbook build |& tee /dev/tty | grep "\[ERROR\]"; then exit 1; else exit 0; fi
|
# # Parse metadata for version number, extract the Semver Major
|
||||||
)
|
# run: |
|
||||||
cp -r book/$lang/book $td/$prefix/book/$lang
|
# VERSION=$(cargo metadata --format-version 1 --no-deps --offline | jq -r '.packages[] | select(.name =="cortex-m-rtic") | .version')
|
||||||
cp LICENSE-* $td/$prefix/book/$lang/
|
# VERSIONMAJOR=${VERSION%.*.*}
|
||||||
done
|
# echo "branch=release/v$VERSIONMAJOR" >> $GITHUB_ENV
|
||||||
sed 's|URL|book/en|g' $root/redirect.html > $td/$prefix/index.html
|
# echo "versionmajor=$VERSIONMAJOR" >> $GITHUB_ENV
|
||||||
popd
|
# echo "version=$VERSION" >> $GITHUB_ENV
|
||||||
|
#
|
||||||
rm -rf $src
|
# - name: Remove cargo-config
|
||||||
done
|
# run: rm -f .cargo/config
|
||||||
|
#
|
||||||
# Copy the stable book to the stable alias
|
# - name: Build docs
|
||||||
cp -r $td/$stable $td/stable
|
# run: cargo doc
|
||||||
|
#
|
||||||
# Forward CNAME file
|
# - name: Build books
|
||||||
cp CNAME $td/
|
# shell: 'script --return --quiet --command "bash {0}"'
|
||||||
mv $td/ bookstodeploy
|
# run: |
|
||||||
|
# langs=( en ru )
|
||||||
- name: Deploy to GH-pages
|
# devver=( dev )
|
||||||
uses: peaceiris/actions-gh-pages@v3
|
# # The latest stable must be the first element in the array
|
||||||
with:
|
# vers=( "1" "0.5" "0.4" )
|
||||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
#
|
||||||
publish_dir: ./bookstodeploy
|
# # All releases start with "v"
|
||||||
force_orphan: true
|
# # followed by MAJOR.MINOR.PATCH, see semver.org
|
||||||
|
# # Store first in array as stable
|
||||||
|
# stable=${vers}
|
||||||
|
# crateversion={{ env.versionmajor }}
|
||||||
|
#
|
||||||
|
# echo "Latest stable version: $stable"
|
||||||
|
# echo "Current crate version: $crateversion"
|
||||||
|
#
|
||||||
|
# # Create directories
|
||||||
|
# td=$(mktemp -d)
|
||||||
|
# mkdir -p $td/$devver/book/
|
||||||
|
# cp -r target/doc $td/$devver/api
|
||||||
|
#
|
||||||
|
# # Redirect rtic.rs/meeting/index.html to hackmd
|
||||||
|
# mkdir $td/meeting
|
||||||
|
# sed "s|URL|https://hackmd.io/c_mFUZL-Q2C6614MlrrxOg|g" redirect.html > $td/meeting/index.html
|
||||||
|
# sed -i "s|Page Redirection|RTIC Meeting|" $td/meeting/index.html
|
||||||
|
# sed -i "s|If you|Redirecting to RTIC HackMD. If you|" $td/meeting/index.html
|
||||||
|
#
|
||||||
|
# # Redirect the main site to the stable release
|
||||||
|
# sed "s|URL|$stable|g" redirect.html > $td/index.html
|
||||||
|
#
|
||||||
|
# # Create the redirects for dev-version
|
||||||
|
# # If the current stable and the version being built differ,
|
||||||
|
# # then there is a dev-version and the links should point to it.
|
||||||
|
# if [[ "$stable" != "$crateversion" ]];
|
||||||
|
# then
|
||||||
|
# sed 's|URL|rtic/index.html|g' redirect.html > $td/$devver/api/index.html
|
||||||
|
# sed 's|URL|book/en|g' redirect.html > $td/$devver/index.html
|
||||||
|
# else
|
||||||
|
# # If the current stable and the "dev" version in master branch
|
||||||
|
# # share the same major version, redirect dev/ to stable book
|
||||||
|
# sed 's|URL|rtic.rs/$stable/api/rtic|g' redirect.html > $td/$devver/api/index.html
|
||||||
|
# sed 's|URL|rtic.rs/$stable|g' redirect.html > $td/$devver/index.html
|
||||||
|
# fi
|
||||||
|
#
|
||||||
|
# # Build books
|
||||||
|
# for lang in ${langs[@]}; do
|
||||||
|
# ( cd book/$lang &&
|
||||||
|
# if mdbook build |& tee /dev/tty | grep "\[ERROR\]"; then exit 1; else exit 0; fi
|
||||||
|
# )
|
||||||
|
# cp -r book/$lang/book $td/$devver/book/$lang
|
||||||
|
# cp LICENSE-* $td/$devver/book/$lang/
|
||||||
|
# done
|
||||||
|
#
|
||||||
|
# # Build older versions, including stable
|
||||||
|
# root=$(pwd)
|
||||||
|
# for ver in ${vers[@]}; do
|
||||||
|
# prefix=${ver}
|
||||||
|
#
|
||||||
|
# mkdir -p $td/$prefix/book
|
||||||
|
# src=$(mktemp -d)
|
||||||
|
# curl -L https://github.com/rtic-rs/cortex-m-rtic/archive/release/v${ver}.tar.gz | tar xz --strip-components 1 -C $src
|
||||||
|
#
|
||||||
|
# pushd $src
|
||||||
|
# rm -f .cargo/config
|
||||||
|
# cargo doc || cargo doc --features timer-queue
|
||||||
|
# cp -r target/doc $td/$prefix/api
|
||||||
|
# sed 's|URL|rtic/index.html|g' $root/redirect.html > $td/$prefix/api/index.html
|
||||||
|
# for lang in ${langs[@]}; do
|
||||||
|
# ( cd book/$lang &&
|
||||||
|
# if mdbook build |& tee /dev/tty | grep "\[ERROR\]"; then exit 1; else exit 0; fi
|
||||||
|
# )
|
||||||
|
# cp -r book/$lang/book $td/$prefix/book/$lang
|
||||||
|
# cp LICENSE-* $td/$prefix/book/$lang/
|
||||||
|
# done
|
||||||
|
# sed 's|URL|book/en|g' $root/redirect.html > $td/$prefix/index.html
|
||||||
|
# popd
|
||||||
|
#
|
||||||
|
# rm -rf $src
|
||||||
|
# done
|
||||||
|
#
|
||||||
|
# # Copy the stable book to the stable alias
|
||||||
|
# cp -r $td/$stable $td/stable
|
||||||
|
#
|
||||||
|
# # Forward CNAME file
|
||||||
|
# cp CNAME $td/
|
||||||
|
# mv $td/ bookstodeploy
|
||||||
|
#
|
||||||
|
# - name: Deploy to GH-pages
|
||||||
|
# uses: peaceiris/actions-gh-pages@v3
|
||||||
|
# with:
|
||||||
|
# github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
# publish_dir: ./bookstodeploy
|
||||||
|
# force_orphan: true
|
||||||
|
|
||||||
# Refs: https://github.com/rust-lang/crater/blob/9ab6f9697c901c4a44025cf0a39b73ad5b37d198/.github/workflows/bors.yml#L125-L149
|
# Refs: https://github.com/rust-lang/crater/blob/9ab6f9697c901c4a44025cf0a39b73ad5b37d198/.github/workflows/bors.yml#L125-L149
|
||||||
#
|
#
|
||||||
|
@ -511,8 +511,8 @@ jobs:
|
||||||
- checkmacros
|
- checkmacros
|
||||||
- testmacros
|
- testmacros
|
||||||
- tests
|
- tests
|
||||||
- docs
|
# - docs
|
||||||
- mdbook
|
# - mdbook
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
steps:
|
steps:
|
||||||
- name: Mark the job as a success
|
- name: Mark the job as a success
|
||||||
|
|
4
build.rs
4
build.rs
|
@ -18,9 +18,7 @@ fn main() {
|
||||||
} else if target.starts_with("thumb")
|
} else if target.starts_with("thumb")
|
||||||
&& !(target.starts_with("thumbv6m") | target.starts_with("thumbv8m.base"))
|
&& !(target.starts_with("thumbv6m") | target.starts_with("thumbv8m.base"))
|
||||||
{
|
{
|
||||||
panic!(
|
panic!("Unknown target '{target}'. Need to update BASEPRI logic in build.rs.");
|
||||||
"Unknown target '{target}'. Need to update BASEPRI logic in build.rs."
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
println!("cargo:rerun-if-changed=build.rs");
|
println!("cargo:rerun-if-changed=build.rs");
|
||||||
|
|
|
@ -84,9 +84,7 @@ pub fn codegen(app: &App, analysis: &Analysis) -> TokenStream2 {
|
||||||
}
|
}
|
||||||
|
|
||||||
if level > 0 {
|
if level > 0 {
|
||||||
let doc = format!(
|
let doc = format!("Interrupt handler to dispatch async tasks at priority {level}");
|
||||||
"Interrupt handler to dispatch async tasks at priority {level}"
|
|
||||||
);
|
|
||||||
let attribute = &interrupts.get(&level).expect("UNREACHABLE").1.attrs;
|
let attribute = &interrupts.get(&level).expect("UNREACHABLE").1.attrs;
|
||||||
items.push(quote!(
|
items.push(quote!(
|
||||||
#[allow(non_snake_case)]
|
#[allow(non_snake_case)]
|
||||||
|
|
|
@ -39,9 +39,7 @@ impl HardwareTask {
|
||||||
|
|
||||||
Err(parse::Error::new(
|
Err(parse::Error::new(
|
||||||
span,
|
span,
|
||||||
format!(
|
format!("this task handler must have type signature `fn({name}::Context)`"),
|
||||||
"this task handler must have type signature `fn({name}::Context)`"
|
|
||||||
),
|
|
||||||
))
|
))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -82,9 +80,7 @@ impl HardwareTask {
|
||||||
|
|
||||||
Err(parse::Error::new(
|
Err(parse::Error::new(
|
||||||
span,
|
span,
|
||||||
format!(
|
format!("this task handler must have type signature `fn({name}::Context)`"),
|
||||||
"this task handler must have type signature `fn({name}::Context)`"
|
|
||||||
),
|
|
||||||
))
|
))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,9 +34,7 @@ impl Idle {
|
||||||
|
|
||||||
Err(parse::Error::new(
|
Err(parse::Error::new(
|
||||||
item.sig.ident.span(),
|
item.sig.ident.span(),
|
||||||
format!(
|
format!("this `#[idle]` function must have signature `fn({name}::Context) -> !`"),
|
||||||
"this `#[idle]` function must have signature `fn({name}::Context) -> !`"
|
|
||||||
),
|
|
||||||
))
|
))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,9 +33,7 @@ impl SoftwareTask {
|
||||||
|
|
||||||
Err(parse::Error::new(
|
Err(parse::Error::new(
|
||||||
span,
|
span,
|
||||||
format!(
|
format!("this task handler must have type signature `async fn({name}::Context)`"),
|
||||||
"this task handler must have type signature `async fn({name}::Context)`"
|
|
||||||
),
|
|
||||||
))
|
))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -70,9 +68,7 @@ impl SoftwareTask {
|
||||||
|
|
||||||
Err(parse::Error::new(
|
Err(parse::Error::new(
|
||||||
span,
|
span,
|
||||||
format!(
|
format!("this task handler must have type signature `async fn({name}::Context)`"),
|
||||||
"this task handler must have type signature `async fn({name}::Context)`"
|
|
||||||
),
|
|
||||||
))
|
))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,8 +9,8 @@ mod app {
|
||||||
struct Local {}
|
struct Local {}
|
||||||
|
|
||||||
#[init]
|
#[init]
|
||||||
fn init(cx: init::Context) -> (Shared, Local, init::Monotonics) {
|
fn init(cx: init::Context) -> (Shared, Local) {
|
||||||
(Shared {}, Local {}, init::Monotonics())
|
(Shared {}, Local {})
|
||||||
}
|
}
|
||||||
|
|
||||||
#[task(binds = NonMaskableInt)]
|
#[task(binds = NonMaskableInt)]
|
||||||
|
|
|
@ -9,10 +9,10 @@ mod app {
|
||||||
struct Local {}
|
struct Local {}
|
||||||
|
|
||||||
#[init]
|
#[init]
|
||||||
fn init(cx: init::Context) -> (Shared, Local, init::Monotonics) {
|
fn init(cx: init::Context) -> (Shared, Local) {
|
||||||
(Shared {}, Local {}, init::Monotonics())
|
(Shared {}, Local {})
|
||||||
}
|
}
|
||||||
|
|
||||||
#[task]
|
#[task]
|
||||||
fn a(_: a::Context) {}
|
async fn a(_: a::Context) {}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
error: not enough interrupts to dispatch all software tasks (need: 1; given: 0)
|
error: not enough interrupts to dispatch all software tasks (need: 1; given: 0)
|
||||||
--> ui/extern-interrupt-not-enough.rs:17:8
|
--> ui/extern-interrupt-not-enough.rs:17:14
|
||||||
|
|
|
|
||||||
17 | fn a(_: a::Context) {}
|
17 | async fn a(_: a::Context) {}
|
||||||
| ^
|
| ^
|
||||||
|
|
|
@ -9,8 +9,8 @@ mod app {
|
||||||
struct Local {}
|
struct Local {}
|
||||||
|
|
||||||
#[init]
|
#[init]
|
||||||
fn init(cx: init::Context) -> (Shared, Local, init::Monotonics) {
|
fn init(cx: init::Context) -> (Shared, Local) {
|
||||||
(Shared {}, Local {}, init::Monotonics())
|
(Shared {}, Local {})
|
||||||
}
|
}
|
||||||
|
|
||||||
#[task(binds = UART0)]
|
#[task(binds = UART0)]
|
||||||
|
|
|
@ -9,8 +9,8 @@ mod app {
|
||||||
struct Local {}
|
struct Local {}
|
||||||
|
|
||||||
#[init]
|
#[init]
|
||||||
fn init(cx: init::Context) -> (Shared, Local, init::Monotonics) {
|
fn init(cx: init::Context) -> (Shared, Local) {
|
||||||
(Shared {}, Local {}, init::Monotonics())
|
(Shared {}, Local {})
|
||||||
}
|
}
|
||||||
|
|
||||||
#[task(binds = GPIOA, priority = 1)]
|
#[task(binds = GPIOA, priority = 1)]
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
warning: unused variable: `cx`
|
warning: unused variable: `cx`
|
||||||
--> ui/task-priority-too-high.rs:12:13
|
--> ui/task-priority-too-high.rs:12:13
|
||||||
|
|
|
|
||||||
12 | fn init(cx: init::Context) -> (Shared, Local, init::Monotonics) {
|
12 | fn init(cx: init::Context) -> (Shared, Local) {
|
||||||
| ^^ help: if this is intentional, prefix it with an underscore: `_cx`
|
| ^^ help: if this is intentional, prefix it with an underscore: `_cx`
|
||||||
|
|
|
|
||||||
= note: `#[warn(unused_variables)]` on by default
|
= note: `#[warn(unused_variables)]` on by default
|
||||||
|
|
|
@ -9,7 +9,7 @@ mod app {
|
||||||
struct Local {}
|
struct Local {}
|
||||||
|
|
||||||
#[init]
|
#[init]
|
||||||
fn init(cx: init::Context) -> (Shared, Local, init::Monotonics) {
|
fn init(cx: init::Context) -> (Shared, Local) {
|
||||||
(Shared {}, Local {}, init::Monotonics())
|
(Shared {}, Local {})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue