[tasks.PUBLISH] description = "Publish package" script = [ ''' #!/usr/bin/env fish printf "\n\e[33m✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨\e[m\n" echo Publishing package to crate.io printf "\e[33m✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨\e[m\n\n" cargo publish '''] dependencies = ["lint", "bump", "changelog", "git"] [tasks.lint] description = "Linting code styles..." script = [ ''' printf "\n\e[33m✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨\e[m\n" echo linting codes now... echo rustup run nightly cargo clippy --fix -Z unstable-options printf "\n\e[33m✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨\e[m\n" ''' ] [tasks.changelog] description = "Update CHANGELOG" script = [''' #!/usr/bin/env fish echo Updating CHANGELOG.md... printf "\n\e[33m✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨\e[m\n" echo git-chglog -o CHANGELOG.md echo printf "\e[33m✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨\e[m\n\n" ''' ] dependencies = ["bump"] [tasks.bump] description = "Bump package version" script = [''' #!/usr/bin/env fish echo Updating package version... cargo bump $argv printf "\n\e[33m✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨\e[m\n" echo New package version: (cargo metadata --format-version=1 --no-deps | jq .packages[0].version | sed s/\"//g) printf "\e[33m✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨\e[m\n\n" ''' ] dependencies = ["lint"] [tasks.git] description = "Commit and make tag" script = [''' #!/usr/bin/env fish printf "\n\e[33m✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨\e[m\n" git add . git commit -m ":tada: Update package version" git tag v(cargo metadata --format-version=1 --no-deps | jq .packages[0].version | sed s/\"//g) git push origin v(cargo metadata --format-version=1 --no-deps | jq .packages[0].version | sed s/\"//g) git push origin master printf "\n\e[33m✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨\e[m\n" ''' ] dependencies = ["bump"]