All notable changes to campus-auth-java are documented here. The format is
based on Keep a Changelog, and this
project adheres to Semantic Versioning.
Initial public release. This release reworks the project into a safe, demo-first JVM package suitable for Maven Central. Earlier pre-public iterations that targeted real campus login systems were removed; see the notes below.
- Public API:
CampusAuthClient,AuthProvider,AuthRequest,AuthResult,CampusMember,CampusRole,CampusAuthException,InvalidCredentialsException,ProviderUnavailableException. DemoAuthProvider: a safe, fully in-memory provider with a defaultdemo-student/demo-passwordaccount and constant-time comparison.- A minimal CLI (
verify --provider demo --id <id>) that reads the password without echo and never prints or logs it. - JUnit 5 test suite covering success, failure, validation, exceptions, the public API, and the CLI.
- Maven Central publishing setup: source jar, javadoc jar, GPG signing, and the
Sonatype
central-publishing-maven-plugin(in areleaseprofile). - GitHub Actions for CI (
mvn -B clean verify) and manual release.
- Coordinates are now
io.github.usmanovmahmudkhan:campus-auth-java:0.1.0. - Java baseline raised to 17.
- Package renamed to
io.github.usmanovmahmudkhan.campusauth.
- All real-system authenticators and scrapers (Portal SSO, Classic, Moodler,
DoSejong) and the
LegacyAuthhelpers. They targeted live third-party endpoints and parsed authenticated session pages, which is unsafe to ship and out of scope for a demo package. Real integrations must be implemented privately by authorized applications via theAuthProviderinterface. - The
jsoupdependency, which was only used by the removed scrapers. - The marketing documentation website that described those authenticators.