Skip to content

Releases: RisDN/papucs

Papucs v0.8.0

Choose a tag to compare

@RisDN RisDN released this 25 Oct 11:52

Compare managed runtime configuration with its current effective sources without changing files or requiring Docker.

  • Add read-only papucs diff <instance> for YAML, JSON, TOML and Java properties.
  • Detect missing files, missing keys, changed values and changed types while ignoring equivalent formatting.
  • Support additional runtime discovery globs, shared exclusions and selectable difference categories through optional project settings.
  • Add --runtime-dir for alternate data directories, stable JSON output and --check for automated checks.
  • Keep reported configuration values and source excerpts out of diagnostics; reject invalid or incomplete comparisons.
  • Update schema validation and test dependencies to clear release audit findings.

Both papucs and create-papucs are released as 0.8.0. Existing projects can omit the optional diff settings; only effective source configuration files are checked unless runtime discovery patterns are added.

Validation: formatting, lint and type checks, the full test suite, package builds, content/license audits, package checks, release-version validation, and an npm audit with no vulnerabilities.

Full changelog: v0.7.0...v0.8.0

Papucs v0.7.0

Choose a tag to compare

@RisDN RisDN released this 23 Oct 08:47

Select a startup script per server type while keeping existing servers on the default runtime adapter.

  • Add optional server build.runtime_script paths relative to the Papucs project root.
  • Add %runtime_script% in Dockerfile templates for the selected script's build-context filename.
  • Validate custom script paths and files in config validate, doctor, and image builds without imposing the default adapter's Perl contract.

Both papucs and create-papucs are released as 0.7.0. Omitting build.runtime_script keeps the existing scripts/papucs-runtime-replace.sh behavior.

Validation: 253 passing tests, formatting/lint/type checks, package builds, content/license audits, package checks, and release-version validation. The npm audit has no high or critical findings; two moderate development-tooling findings remain.

Full changelog: v0.6.0...v0.7.0

Papucs v0.6.0

Choose a tag to compare

@RisDN RisDN released this 21 Oct 13:07

Recover stopped containers, inspect failed shutdowns, and preview cleanup before stopping a project.

  • papucs start <target...> starts existing containers and their dependencies without rebuilding runtime data, with a bounded readiness wait and JSON output.
  • papucs diagnose [target] reports exit/OOM state, Docker signal and exit events, stop timing, and bounded, redacted logs. Failed stops automatically attach diagnostics when available.
  • papucs stopall --dry-run shows dependency layers, blockers, retained data, and differences between source, generated Compose, and actual container settings. stopall also supports JSON output.
  • Fix container-state inspection when Docker has no healthcheck field.
  • Keep diagnostic redaction fast on long log tokens and mask overlapping credential values before truncation.
  • Update the README, CLI reference, troubleshooting guide, and Docker regression coverage.

Both papucs and create-papucs are released as 0.6.0. Existing containers can be recovered with start; source configuration changes still require the appropriate rebuild/recreation workflow.

Validation: 239 tests, Node.js 22/24 on Linux/Windows/macOS, package installation smoke tests, isolated Docker recovery and full Minecraft lifecycle integration, content/license audits, secret scan, and an npm audit with no vulnerabilities.

Full changelog: v0.5.0...v0.6.0

Papucs v0.5.0

Choose a tag to compare

@RisDN RisDN released this 07 Oct 13:17

Add service-level x-papucs.restartall: false to keep selected Compose services running during papucs restartall. The nested form x-papucs: { restartall: false } is also supported in root and server Compose templates.

  • Preserve excluded managed instances' runtime files, sync cache, and stored state.
  • Validate dependencies and excluded provider readiness before stopping services.
  • Refresh development test dependencies to resolve release audit findings.

Validated with 159 tests, all six OS/Node CI combinations, package installation, Docker lifecycle integration, and a clean npm audit.

Papucs v0.4.0

Choose a tag to compare

@RisDN RisDN released this 03 Oct 13:31

Every server YAML now requires a top-level papucs_port_base setting.

name: spawn
papucs_port_base: 25565

Breaking change: Move the base port out of .env or interpolate_variables and into this field in every server definition. PAPUCS_PORT_BASE, PORT_BASE, and <SERVER_TYPE>_PORT_BASE no longer configure the base port. Missing or invalid values fail configuration validation.

  • Accept integer base ports from 1 through 65535.
  • Calculate instance ports as papucs_port_base + instance_index - 1; reject resolved ports outside the valid range.
  • Preserve explicit PAPUCS_PORT_<index> and PORTS_<index> overrides; the base field remains required.
  • Update the Minecraft scaffold, documentation, and migration examples.

Both papucs and create-papucs are released as 0.4.0.

Validation: 138 tests, formatting, lint, typecheck, build, package checks, content and license audits, and the high-severity npm audit gate passed locally.

Configuration and migration · Full changelog

Papucs v0.3.0

Choose a tag to compare

@RisDN RisDN released this 03 Oct 12:48

Layers can now include other layers through the optional layers list in _layer.yml.

name: network
layers:
  - base
  - shared-plugins
  - local-tools --skip-build
  • Resolve nested layers recursively in list order, applying each layer's own files after its children and server data last.
  • Preserve ordered overrides for shared and repeated layer references.
  • Exclude the full referenced subtree from image builds with --skip-build, while retaining it in local runtimes.
  • Reject circular references with their layer chain and validate nested layer configuration.

Both papucs and create-papucs are released as 0.3.0. Existing server-only layer lists remain supported.

Validation: 109 tests, formatting, lint, typecheck, build, package checks, content and license audits, and the high-severity npm audit gate passed.

Configuration examples · Full changelog

Papucs v0.2.0

Choose a tag to compare

@RisDN RisDN released this 01 Oct 12:06

Papucs 0.2.0 adds configurable runtime dependencies and ordered network lifecycle operations.

  • Declare providers using service, server, or instance targets and standard Compose readiness conditions.
  • Plan entire up batches before dependency validation and runtime writes.
  • Stop consumers before providers, with container exit checks between layers.
  • Restart all running workloads in two phases, preserving previously stopped services.
  • Reject targeted provider operations while dependents run; preserve runtime state after failed shutdowns.
  • Preserve existing Compose dependency options and avoid implicit provider recreation.
  • Update compatible development dependency patches to resolve high-severity audit findings.

Migration: declare dependencies in each server manifest. Use restartall for a whole network restart; targeted restart does not implicitly cascade to running dependents.

Papucs v0.1.2

Choose a tag to compare

@RisDN RisDN released this 10 Aug 09:33

What's changed

  • Added papucs attach <instance> to attach to a managed Docker container without knowing its generated container name.
  • Updated development dependencies to patched versions.

Papucs v0.1.1

Choose a tag to compare

@RisDN RisDN released this 23 Jul 16:06
581581a

Papucs v0.1.1 fixes runtime rebuild reliability for local Minecraft development.

  • Restores clean runtime materialization for up, rebuild, and restart.
  • Preserves configured runtime-owned paths and the default Minecraft cache.
  • Maps Minecraft container writes to the Linux host UID and GID.
  • Keeps Windows and macOS behavior portable with explicit defaults.

Papucs v0.1.0

Choose a tag to compare

@RisDN RisDN released this 23 Jul 14:14
58c5e11

Papucs v0.1.0 is the first public release of the standalone Papucs Minecraft development CLI.

Highlights

  • Node.js 22+ CLI with no Bun runtime or build dependency
  • Safe project-scoped lifecycle, sync, pull, build, and push commands
  • Explicit papucs.yml v1 configuration contract
  • JSON output for automation
  • create-papucs initializer with a brand-neutral Paper template
  • Windows, macOS, and Linux CI with Docker integration coverage

Install

npm create papucs@latest my-network
cd my-network
npx papucs doctor

Papucs v0.1.0 supports local development and OCI image build/push workflows. Production deployment is outside this release scope.