Penny is a Swift bot that works for the Vapor community.
- Give coins to the members when they're "thanked".
- Automatically ping members based on the ping-words they have set up.
- Implemented as
/auto-pings
slash command.
- Implemented as
- Respond to certain command-texts with predefined answers.
- Implemented as
/faqs
slash command.
- Implemented as
- Automatically respond to commonly asked questions.
- Implemented as
/auto-faqs
slash command.
- Implemented as
- Automate SemVer releases and report on Discord.
- Report GitHub PRs and Issues on Discord.
- Report Swift evolution proposals on Discord.
- Report Swift releases on Discord.
- Report StackOverflow questions on Discord.
- Connect members' Discord & GitHub accounts for better integrations.
- Thank members when they contribute to Vapor repositories.
- Manage sponsor/backer status of GitHub users.
Penny detects usage of specific labels in PRs and tries to act accordingly and automatically tag a new release when an applicable PR is merged.
The related labels are:
semver-patch
semver-minor
semver-major
semver-noop
release
prerelease
no-release-needed
Some other notes:
semver-major
andrelease
are of limited use for automatic releases. Penny won't do a whole major release by itself since those are rare and they can be risky to do.- Use
prerelease
label in combination with another semver label likesemver-patch
to make sure Penny can correctly create a prerelease, when a prerelease is needed.- For example when you have a
v5.0.0-alpha.1
release and want Penny to tagv5.0.0-alpha.2
next.
- For example when you have a
- Try to use
no-release-needed
orsemver-noop
when no release is needed.