Tags
Creators
Details
4.6.0-beta2
Compatibility
Changes
๐ AstraLogin v4.6.0-beta2 - Expanded Developer API, Events & Session Security Fix Update
โ ๏ธ BETA & EXPERIMENTAL RELEASE WARNING:
This is a pre-release testing build focused on expanding the developer API, introducing custom event listeners, and tightening session security. Please test in isolated sandbox environments!
๐ง ๐ป Major Developer API Expansion & Custom Events
- Extended API Methods: Added powerful new methods to the AstraLogin API for deep external integrations:
hasTwoFactor&isPremiumgetLastIpforceLogin&forceLogouthasActiveSession&hasActive2FASessionunregister
- Cancellable Custom Events: Implemented native Bukkit/Paper event hooks for developer integration! All events are cancellable (
Cancellable) and provide access to the player object, event timestamp, and IP address:PlayerLoginEventPlayerFailedLoginEventPlayerPremiumLoginEventPlayerRegisterEventPlayerSessionLoginEvent
- Updated README Examples: Added comprehensive code snippets and event listener examples to the project README. ๐โ๏ธ
๐ก๏ธโก Code Quality, Null Safety & 2FA Session Fix
- 2FA Session Security Fix: Resolved a critical issue in 2FA session handling where the returning player's IP address was not properly validated against the saved session IP. ๐๐
- Null Safety Annotations: Added
@NonNulland@Nullableannotations across API endpoints and internal data structures to prevent unexpectedNullPointerExceptionsand enhance IDE code completion. โจ - Code Refactoring: Performed internal code cleanup, optimizing memory allocation and execution speed across core authentication listeners. ๐งนโก
Thank you for testing AstraLogin pre-releases! Please report any API issues or bugs on our Discord or GitHub. ๐ฆพ๐ฅ
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:sO4dBl28:nRfnPLmF"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:sO4dBl28:nRfnPLmF"
}

