Files
hops/CHANGELOG.md
T
Stephen Klein 3cba0998a7 Consolidate duplicate functions, bump to v1.0.1
- Remove duplicate log/error_exit/warning/success/info from hops and
  uninstall; remove validate_password, generate_secure_password,
  create_docker_networks, validate_timezone from install. Single
  canonical copies now live in lib/common.sh, lib/security.sh,
  lib/validation.sh, and lib/docker.sh (A5, Q1)
- Fix lib/docker.sh, lib/validation.sh, lib/security.sh to use LIB_DIR
  instead of SCRIPT_DIR so sourcing them inside a function does not
  clobber the caller's SCRIPT_DIR
- Move SCRIPT_VERSION to lib/common.sh as the single source of truth;
  remove local declarations from hops, install, and uninstall
- uninstall now sources lib/common.sh directly for standalone safety
- validate_timezone updated to warn-and-default instead of error_exit
- validate_password updated to handle empty input (return 3)
- Update CHANGELOG and TODO to reflect resolved items (B1-B6, A1, A3,
  A5, Q1) and bump version to 1.0.1

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-10 22:11:34 -04:00

1.6 KiB

Changelog

All notable changes to HOPS will be documented here. Format based on Keep a Changelog.


[Unreleased]


[1.0.1] - 2026-06-10

Stabilization pass: bug fixes, security hardening, and codebase consolidation on the Path A install pipeline.

Fixed

  • Infinite recursion in get_timezone_mount() and get_gpu_devices() on Linux (B1)
  • ((x++)) abort under set -e across hops and install (B5)
  • Glob stored as string breaking multi-user directory detection (B3)
  • Missing hops_service_definitions.sh reference in firewall setup (B4)
  • Linux-only guard missing from hops entry point (B6)
  • eval echo "~$SUDO_USER" replaced with getent passwd in uninstall (B3/S5)

Changed

  • Duplicate log, error_exit, warning, success, info removed from hops, uninstall, and install; single canonical copies in lib/common.sh (A5, Q1)
  • Duplicate validate_password, generate_secure_password, create_docker_networks, validate_timezone removed from install; lib/security.sh, lib/docker.sh, lib/validation.sh are now the sole definitions (A5)
  • lib/docker.sh, lib/validation.sh, lib/security.sh use LIB_DIR instead of SCRIPT_DIR so sourcing them inside a function does not clobber the caller
  • validate_timezone updated to warn-and-default instead of error_exit
  • validate_password updated to handle empty input (return 3)
  • uninstall sources lib/common.sh directly, allowing standalone execution

Removed

  • Path B install pipeline (setup, privileged-setup, user-operations, services-improved, lib/privileges.sh) -- dead code, never wired in (A1, A3)

[1.0.0] - TBD

Full rewrite establishing the Path A install pipeline.