Changelogยค
All notable changes to this project will be documented in this file.
[0.4.0] - Unreleasedยค
๐ Featuresยค
- CLI/Server Architecture: Introduced a new server-based architecture where the
hop3-cli
communicates with a centralhop3-server
via JSON-RPC. Includes an option for a secure SSH tunnel. - Web Server & UI: Added initial scaffolding for a future web server and front-end management interface.
- Backups & SBOM: Implemented a basic application backup mechanism and an automatic generator for Software Bill of Materials (SBOM) to enhance supply chain security.
- CLI Enhancements: Improved the command-line interface with a more robust help system and a proof-of-concept for a new command parser.
๐ Bug Fixesยค
- Corrected an issue with the
Config
object constructor. - Fixed a bug that was breaking the Python application builder.
- Repaired issues in the server installer and dependency resolution.
๐ Refactorยค
- Major Repository Reorganization: The project has been restructured into a monorepo with distinct sub-packages, including
hop3-cli
,hop3-server
,hop3-agent
, andhop3-testing
. - Plugin Architecture: Began a significant refactoring to make core components more modular and plugin-oriented.
- Configuration System: Overhauled configuration handling, moving from hardcoded constants to a more flexible, class-based system.
- Code Modernization: Replaced many string-based paths with
pathlib.Path
objects and modernized command execution usingsubprocess.run
. - Nginx & Certificates: Refactored the management of Nginx configurations and SSL certificates for better maintainability.
๐ Documentationยค
- Added an Open Source Compliance Program document and a guide for project evangelism.
- Created several Architecture Decision Records (ADRs) to document key design choices.
- General improvements to READMEs, docstrings, and comments across the codebase.
๐งช Testingยค
- Enabled end-to-end (e2e) tests to run in the Continuous Integration pipeline.
- General cleanup and refactoring of the test suite to fix warnings and improve reliability.
โ๏ธ Miscellaneousยค
- Dependency Management: Fully migrated the project from Poetry to
uv
, including setting upuv
workspaces for the new monorepo structure. - CI/CD: Implemented numerous fixes to CI configurations, improving support for various operating systems and resolving issues with
nox
anddocker
build steps. - Licensing: The project license has been changed to Apache 2.0.
- Code Quality: Performed extensive code formatting and linting fixes across the entire project to improve consistency and readability.
[0.3.0] - 2025-03-24ยค
๐ Featuresยค
- Stable Deployments: First version considered stable enough for deploying simple web applications (Python WSGI and static sites).
- Core API: Introduced the first version of the core internal API for managing application lifecycles.
๐ Bug Fixesยค
- Stabilized the installation script for production-like environments.
- Numerous fixes to the deployment process to improve reliability.
๐ Refactorยค
- Improved core deployment logic for simplicity and robustness.
[0.2.2] - 2024-07-15ยค
This release focused on laying the groundwork for a web-based management interface and its underlying database model.
๐ Featuresยค
- Initiated development of a web application and ORM model (WIP).
- Added preliminary security features for the upcoming web app.
๐ Bug Fixesยค
- Addressed key bugs in the installer and static site deployment process.
- Fixed various typing issues and repaired a broken web deployment mechanism.
๐ Refactorยค
- Refined the uWSGI manager and cleaned up the actor framework components.
๐ Documentationยค
- Enhanced project documentation by adding security principles to the core values.
[0.2.1] - 2024-07-04ยค
This was a maintenance and documentation-focused release, improving core networking components and significantly enhancing project documentation.
๐ Featuresยค
- Began initial work on a new actor-based framework.
๐ Refactorยค
- Improved the certificate manager and proxy setup logic.
๐ Documentationยค
- Major updates to project documentation, including the README, architecture descriptions, core values, and docstrings.
- Configured
git-cliff
for automated changelog generation.
[0.2.0] - 2024-06-28ยค
A maintenance release primarily focused on overhauling the testing suite and modernizing the Nginx setup.
๐ Refactorยค
- Modernized the Nginx setup by converting it to a class-based implementation.
๐งช Testingยค
- Major improvements to the testing suite, including fixing and cleaning up unit tests and the end-to-end test harness.
[0.1.5] - 2024-06-27ยค
A minor release that introduced the official CHANGELOG and performed code cleanup.
๐ Bug Fixesยค
- Temporarily disabled Nginx configuration checks to work around an issue.
๐ Refactorยค
- Cleaned up various application configuration files.
๐ Documentationยค
- Added the first version of this
CHANGELOG.md
file.
[0.1.4] - 2024-06-27ยค
This release focused on improving static site deployments and included a significant effort to enhance the project’s documentation and overall presentation.
๐ Bug Fixesยค
- Addressed errors related to deploying static sites.
๐ Documentationยค
- Extensive updates to the README, project metadata, and roadmap.
- Added REUSE compliance logo and project branding.
[0.1.3] - 2024-06-07ยค
A minor maintenance release.
โ๏ธ Miscellaneousยค
- Updated project dependencies.
[0.1.2] - 2024-04-19ยค
This release focused on internal refactoring to improve code quality and modernize the codebase.
๐ Refactorยค
- Performed a major code cleanup using
ruff
, modernizing path handling withpathlib
, and improving shell command execution.
๐ Documentationยค
- Improved documentation by adding and fixing numerous docstrings.
[0.1.1] - 2024-04-18ยค
A small release that added a minor feature, fixed a regression, and performed test maintenance.
๐ Featuresยค
- Added the ability to sort applications.
๐ Bug Fixesยค
- Fixed a recent regression.
โ๏ธ Miscellaneousยค
- Updated dependencies and applied workarounds for failing tests.
[0.1.0] - 2024-04-11ยค
The foundational release of Hop3: established the project’s core architecture, introduced initial features, and set up the first tests and documentation.
๐ Featuresยค
- Prototyped initial application builders and started work on addons.
- Introduced initial support for a SQL-based model (SQLAlchemy) and Postgres.
๐ Bug Fixesยค
- Addressed initial REUSE compliance issues.
๐ Refactorยค
- Established the core class-based architecture, moving away from a script-based model.
- Performed major refactoring of the initial codebase for better structure and typing.
๐ Documentationยค
- Created the initial project
README.md
, roadmap, and compliance documentation.
๐งช Testingยค
- Added the first end-to-end test runner.