3.2 KiB
3.2 KiB
Release Checklist for Modrinth
Use this checklist before uploading a new release to Modrinth.
Pre-Release Verification
Build & Code Quality
- Code compiles without errors (
mvn clean package) - No critical warnings in compiler output
- All tests pass (if applicable)
- Plugin JAR is created in
target/communitymarket-x.x.x.jar
Functional Testing
- Plugin loads without errors on a fresh Paper 1.21+ server
- Economy detection works:
- Scenario A: Vault + EssentialsX → Uses Vault
- Scenario B: Vault only (no economy) → Clear error message, plugin disables
- Scenario C: EssentialsX only (no Vault) → Uses EssentialsX directly
- Scenario D: Neither installed → Clear error message, plugin disables
/marketcommand opens the main menu/cmarketalias works
Feature Testing
- Listings: Create, browse, purchase, cancel, expire
- Auctions: Create, bid, buyout, anti-snipe extension, expire
- Claim Storage: Items delivered correctly, claim GUI works
- Earnings: Earnings accumulate, withdraw works
- Admin: View all, remove listings, cancel auctions, reload config
Configuration
- Default config.yml has safe values
- Language files (en_US.yml, pt_PT.yml) are complete
- Config reload (
/market admin→ reload) works
Documentation
- README.md is up to date
- CHANGELOG.md has current version entry
- LICENSE file is present
Modrinth Upload Checklist
Project Information
- Project name:
CommunityMarket - Summary: "A GUI-only marketplace plugin for fixed-price listings and auctions"
- Description: Use content from README.md
- Categories: Economy, Miscellaneous
- Client-side: No (Server-side only)
- Server-side: Required
- License: MIT
Version Details
- Version number matches pom.xml and CHANGELOG.md
- Version type: Release (or Alpha/Beta if applicable)
- Game versions: 1.21, 1.21.1 (add newer as supported)
- Loaders: Paper, Purpur
- Changelog: Copy from CHANGELOG.md
Files
- Upload primary JAR:
communitymarket-x.x.x.jar - Do NOT upload
original-communitymarket-x.x.x.jar(doesn't include shaded dependencies)
Dependencies (Modrinth)
- Mark Vault as optional dependency (if available on Modrinth)
- Mark EssentialsX as optional dependency (if available on Modrinth)
Gallery (Optional)
- Screenshot of main menu
- Screenshot of browse listings
- Screenshot of create listing flow
Post-Release
- Verify download works correctly
- Test downloaded JAR on a clean server
- Announce release (if applicable)
- Tag release in Git:
git tag -a v1.0.0 -m "Release 1.0.0" - Push tag:
git push origin v1.0.0
Version Naming Convention
- Major.Minor.Patch (e.g., 1.0.0)
- Major: Breaking changes or major feature additions
- Minor: New features, backwards compatible
- Patch: Bug fixes, small improvements
Quick Commands
# Clean build
mvn clean package
# Run local test server (if configured)
# Place JAR in test-server/plugins/
# Create Git tag
git tag -a v1.0.0 -m "Release 1.0.0"
git push origin v1.0.0