Skip to content

Releases: Indemnity83/configory

configory: v0.2.0

Choose a tag to compare

@Indemnity83 Indemnity83 released this 09 Jul 02:14
3f79c7e

0.2.0 (2026-07-08)

⚠ BREAKING CHANGES

  • A config's id now maps to its file location and dotted paths are pure JSON nesting (previously the first path segment selected the file). The on-disk layout is now config/.json (plus config//.json for extra configs), ConfigPath dropped file()/DEFAULT_FILE, and Config.save(String) / dirtyFiles() were removed in favor of save() / isDirty(). See #43.

Added

  • Add a type-agnostic display-string accessor to ConfigValue (#45) (8b29a41)
  • Add defineX shorthand for typed config definitions (#19) (4361b1c)
  • Add presence checks to ConfigValue for dynamic path reads (#23) (122a1cd)
  • Add strict-bound and finite-float numeric constraints (#44) (14b07e1)
  • Add trySet for validating dynamic writes without throwing (#24) (6c213c0)
  • Allow injecting ConfigStorage through the registry and bootstrap (#41) (744e80f)
  • Config id maps to the file location; paths are pure nesting (806721e)
  • Declare per-loader Minecraft compatibility and add Forge (#55) (0592ebd)
  • Generate a Brigadier command surface for config keys (#53) (b166660)
  • Map the config id to the file location and make paths pure nesting (#43) (d7bcf3c)
  • Publish to Modrinth Maven and document installation (#20) (fbb76f7)
  • Ship Fabric and NeoForge metadata so Configory installs as a library mod (#22) (1b1a24f)
  • Support enum-typed config keys (#46) (d08cee0)
  • Write defaults to disk on first bootstrap load (#48) (4eef472)

Fixed

  • Heal inverted min/max pairs when keys also carry cross-field validators (#52) (43bb2eb)
  • Prevent infinite recursion in mutual cross-field validators (#38) (3cd00fb)

v0.1.0

Choose a tag to compare

@Indemnity83 Indemnity83 released this 06 Jul 19:27
eaf81d2

Initial release of Configory — a small, convention-based configuration library for Minecraft mods.

Added

  • Typed config keys — read and write values with compile-time type safety.
  • Dot-notation paths — organize config, or keep it flat with a single default file.
  • Fluent validation — declare ranges and constraints once; invalid writes are rejected.
  • JSON-backed files — human-readable config with explicit saving.
  • Per-mod isolation — each mod gets its own config.
  • define(path).asX() builders — declare a value with its type, default, constraints, and description in one place.

This initial 0.1.0 is a plain library jar. From 0.1.1 onward, Configory also ships Fabric/NeoForge metadata and is published to the Modrinth Maven.