DV8FromTheWorld/JDA (net.dv8tion:JDA)
### [`v5.0.0-beta.22`](https://togithub.com/discord-jda/JDA/releases/tag/v5.0.0-beta.22): | Bulk ban, premium apps, bug fixes
### Overview
This release adds some newer API features, like premium app subscriptions, bot banners, and bulk banning users.
Besides new features, this release also includes improved errors and bug fixes.
##### Premium App Subscriptions ([#2583](https://togithub.com/DV8FromTheWorld/JDA/issues/2583))
If your bot is eligible for monetization, you can now use JDA to handle [**entitlements**](https://docs.jda.wiki/net/dv8tion/jda/api/interactions/Interaction.html#getEntitlements\(\)) in interactions to restrict features. With [`event.replyWithPremiumRequired()`](https://docs.jda.wiki/net/dv8tion/jda/api/interactions/callbacks/IPremiumRequiredReplyCallback.html#replyWithPremiumRequired\(\)), you can upsell a premium subscription to a user:
![b306d1ccc7205d2291f4535f912a790e](https://togithub.com/discord-jda/JDA/assets/18090140/61197d9f-b900-4259-9722-c4a357960482)
Read more about entitlements and premium app subscriptions in the [Discord Developer Docs](https://discord.com/developers/docs/monetization/app-subscriptions).
##### Bulk Ban ([#2630](https://togithub.com/DV8FromTheWorld/JDA/issues/2630))
You can now ban up to 200 users in one request using [`guild.ban(users, messageDeleteTimeframe)`](https://docs.jda.wiki/net/dv8tion/jda/api/entities/Guild.html#ban\(java.util.Collection,java.time.Duration\)).
This endpoint has a few quirks to keep in mind:
- The [BulkBanResponse](https://docs.jda.wiki/net/dv8tion/jda/api/entities/BulkBanResponse.html) includes **failed users** and **banned users**
- If a user was already banned, they are in the **failed users**
- If you don't have permissions to ban a user (higher role / owner), they also appear in **failed users**
- The self user also appears in **failed users**
- If all users "failed" you get an error response instead
#### New Features
- Add support for bulk banning users by [@MinnDevelopment](https://togithub.com/MinnDevelopment) in [https://github.com/discord-jda/JDA/pull/2630](https://togithub.com/discord-jda/JDA/pull/2630)
- Add the ability to set the bot banner by [@freya022](https://togithub.com/freya022) in [https://github.com/discord-jda/JDA/pull/2629](https://togithub.com/discord-jda/JDA/pull/2629)
- Add support for premium app subscriptions by [@Giuliopime](https://togithub.com/Giuliopime) in [https://github.com/discord-jda/JDA/pull/2583](https://togithub.com/discord-jda/JDA/pull/2583)
#### Changes
- Create an exception when receiving UNKNOWN_WEBHOOK in interaction hooks by [@freya022](https://togithub.com/freya022) in [https://github.com/discord-jda/JDA/pull/2621](https://togithub.com/discord-jda/JDA/pull/2621)
#### Bug Fixes
- Fix format specifiers when adding invalid choices by [@freya022](https://togithub.com/freya022) in [https://github.com/discord-jda/JDA/pull/2628](https://togithub.com/discord-jda/JDA/pull/2628)
- Fix FlatMapRestAction predicate with complete or submit by [@Whizyyy](https://togithub.com/Whizyyy) in [https://github.com/discord-jda/JDA/pull/2636](https://togithub.com/discord-jda/JDA/pull/2636)
- Handle numeric keys for ETF maps by [@MinnDevelopment](https://togithub.com/MinnDevelopment) in [https://github.com/discord-jda/JDA/pull/2642](https://togithub.com/discord-jda/JDA/pull/2642)
**Full Changelog**: https://github.com/discord-jda/JDA/compare/v5.0.0-beta.21...v5.0.0-beta.22
### Installation
#### Gradle
```gradle
repositories {
mavenCentral()
}
dependencies {
implementation("net.dv8tion:JDA:5.0.0-beta.22")
}
```
#### Maven
```xml
net.dv8tionJDA5.0.0-beta.22
```
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
No new problems were found according to the checks applied
💡 Qodana analysis was run in the pull request mode: only the changed files were checked
View the detailed Qodana report
To be able to view the detailed Qodana report, you can either:
1. Register at [Qodana Cloud](https://qodana.cloud/) and [configure the action](https://github.com/jetbrains/qodana-action#qodana-cloud)
2. Use [GitHub Code Scanning with Qodana](https://github.com/jetbrains/qodana-action#github-code-scanning)
3. Host [Qodana report at GitHub Pages](https://github.com/JetBrains/qodana-action/blob/3a8e25f5caad8d8b01c1435f1ef7b19fe8b039a0/README.md#github-pages)
4. Inspect and use `qodana.sarif.json` (see [the Qodana SARIF format](https://www.jetbrains.com/help/qodana/qodana-sarif-output.html#Report+structure) for details)
To get `*.log` files or any other Qodana artifacts, run the action with `upload-result` option set to `true`,
so that the action will upload the files as the job artifacts:
```yaml
- name: 'Qodana Scan'
uses: JetBrains/qodana-action@v2023.3.2
with:
upload-result: true
```
Contact Qodana team
Contact us at [qodana-support@jetbrains.com](mailto:qodana-support@jetbrains.com)
- Or via our issue tracker: https://jb.gg/qodana-issue
- Or share your feedback: https://jb.gg/qodana-discussions
This PR contains the following updates:
5.0.0-beta.21
->5.0.0-beta.22
Release Notes
DV8FromTheWorld/JDA (net.dv8tion:JDA)
### [`v5.0.0-beta.22`](https://togithub.com/discord-jda/JDA/releases/tag/v5.0.0-beta.22): | Bulk ban, premium apps, bug fixes ### Overview This release adds some newer API features, like premium app subscriptions, bot banners, and bulk banning users. Besides new features, this release also includes improved errors and bug fixes. ##### Premium App Subscriptions ([#2583](https://togithub.com/DV8FromTheWorld/JDA/issues/2583)) If your bot is eligible for monetization, you can now use JDA to handle [**entitlements**](https://docs.jda.wiki/net/dv8tion/jda/api/interactions/Interaction.html#getEntitlements\(\)) in interactions to restrict features. With [`event.replyWithPremiumRequired()`](https://docs.jda.wiki/net/dv8tion/jda/api/interactions/callbacks/IPremiumRequiredReplyCallback.html#replyWithPremiumRequired\(\)), you can upsell a premium subscription to a user: ![b306d1ccc7205d2291f4535f912a790e](https://togithub.com/discord-jda/JDA/assets/18090140/61197d9f-b900-4259-9722-c4a357960482) Read more about entitlements and premium app subscriptions in the [Discord Developer Docs](https://discord.com/developers/docs/monetization/app-subscriptions). ##### Bulk Ban ([#2630](https://togithub.com/DV8FromTheWorld/JDA/issues/2630)) You can now ban up to 200 users in one request using [`guild.ban(users, messageDeleteTimeframe)`](https://docs.jda.wiki/net/dv8tion/jda/api/entities/Guild.html#ban\(java.util.Collection,java.time.Duration\)). This endpoint has a few quirks to keep in mind: - The [BulkBanResponse](https://docs.jda.wiki/net/dv8tion/jda/api/entities/BulkBanResponse.html) includes **failed users** and **banned users** - If a user was already banned, they are in the **failed users** - If you don't have permissions to ban a user (higher role / owner), they also appear in **failed users** - The self user also appears in **failed users** - If all users "failed" you get an error response instead #### New Features - Add support for bulk banning users by [@MinnDevelopment](https://togithub.com/MinnDevelopment) in [https://github.com/discord-jda/JDA/pull/2630](https://togithub.com/discord-jda/JDA/pull/2630) - Add the ability to set the bot banner by [@freya022](https://togithub.com/freya022) in [https://github.com/discord-jda/JDA/pull/2629](https://togithub.com/discord-jda/JDA/pull/2629) - Add support for premium app subscriptions by [@Giuliopime](https://togithub.com/Giuliopime) in [https://github.com/discord-jda/JDA/pull/2583](https://togithub.com/discord-jda/JDA/pull/2583) #### Changes - Create an exception when receiving UNKNOWN_WEBHOOK in interaction hooks by [@freya022](https://togithub.com/freya022) in [https://github.com/discord-jda/JDA/pull/2621](https://togithub.com/discord-jda/JDA/pull/2621) #### Bug Fixes - Fix format specifiers when adding invalid choices by [@freya022](https://togithub.com/freya022) in [https://github.com/discord-jda/JDA/pull/2628](https://togithub.com/discord-jda/JDA/pull/2628) - Fix FlatMapRestAction predicate with complete or submit by [@Whizyyy](https://togithub.com/Whizyyy) in [https://github.com/discord-jda/JDA/pull/2636](https://togithub.com/discord-jda/JDA/pull/2636) - Handle numeric keys for ETF maps by [@MinnDevelopment](https://togithub.com/MinnDevelopment) in [https://github.com/discord-jda/JDA/pull/2642](https://togithub.com/discord-jda/JDA/pull/2642) **Full Changelog**: https://github.com/discord-jda/JDA/compare/v5.0.0-beta.21...v5.0.0-beta.22 ### Installation #### Gradle ```gradle repositories { mavenCentral() } dependencies { implementation("net.dv8tion:JDA:5.0.0-beta.22") } ``` #### Maven ```xmlConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.