-
Notifications
You must be signed in to change notification settings - Fork 1
Releases and Versioning
VGui uses Git tags and GitHub Releases. Release tags use vX.Y.Z form.
Documentation links to the stable latest endpoint:
- latest release page:
https://github.com/AgentNoobff/VGui/releases/latest - latest runtime jar:
https://github.com/AgentNoobff/VGui/releases/latest/download/vgui.jar
No release number is embedded in those URLs.
The README release badge is generated by Shields from GitHub release metadata.
The POM uses Maven's CI-friendly ${revision} property. Development on main uses a snapshot revision. Release automation overrides the revision from the pushed tag without rewriting source files.
The same project version is filtered into velocity-plugin.json and written to the jar manifest.
When a v tag is pushed, the Release workflow:
- validates the tag format;
- strips the leading
vfor the Maven project version; - runs a clean Java 25 verification build;
- copies artifacts to stable asset names;
- creates a GitHub Release with generated notes.
Published assets are:
vgui.jarvgui-sources.jarvgui-javadoc.jar
- Confirm
mainis green. - Confirm the Wiki and Javadocs describe the intended behavior.
- Perform the live compatibility matrix required by the change.
- Choose the next semantic version.
- Create and push the signed or annotated tag according to maintainer policy.
- Watch the Release workflow finish.
- Download
vgui.jarfrom the release and smoke-test it on a clean proxy. - Confirm the latest-release links resolve to the new asset.
- Patch: backward-compatible fixes and documentation corrections.
- Minor: backward-compatible API additions and features.
- Major: incompatible public API, Java baseline, deployment, or behavior changes.
Protocol compatibility can make a seemingly small change operationally significant. Release notes should call out client, Velocity, PacketEvents, and backend impact even when the semantic version change is minor.
JitPack consumers use com.github.AgentNoobff:VGUI.
-
main-SNAPSHOTfollows development main. -
vX.Y.Zselects an immutable release tag.
The first request for a new tag may trigger a JitPack build. A release is not considered dependency-ready until that build succeeds.
The Maven Wrapper pins Maven. The POM pins stable compatible dependencies and plugins. Release tags are immutable. Consumers should pin a release tag for production rather than depending on main-SNAPSHOT.
- View Types and Builders
- Layouts and Slots
- Items and Skulls
- Click Handling
- Contents and Updates
- Context and State
- Navigation
- Pagination
- Anvil Input
- Lifecycle and Listeners
- API Reference