Skip to content

Conversation

@sebastianwebber
Copy link
Contributor

@sebastianwebber sebastianwebber commented Sep 26, 2025

This pull request introduces several significant improvements to the project, focusing on expanding PostgreSQL 18 support, enhancing CI/CD workflows, updating dependencies, and improving documentation for both users and contributors. The most notable changes are grouped below.

PostgreSQL 18 Support and Rules Engine Enhancements

  • Updated the default PostgreSQL version to 18 and expanded the list of supported versions in pkg/defaults/pg.go. [1] [2]
  • Added new PostgreSQL 18+ parameters to the storage configuration (io_method, io_workers, io_max_combine_limit, io_max_concurrency, file_copy_method, etc.) in pkg/category/storage.go and ensured they are included in the generated documentation and configuration defaults. [1] [2] [3]
  • Expanded the rules engine documentation in README.md to clarify how configuration is adjusted based on environment and version, including new rules for PostgreSQL 18+ features.

CI/CD and Testing Improvements

  • Added a comprehensive integration test workflow (.github/workflows/integration.yml) that builds the CLI, generates configs, spins up PostgreSQL containers for versions 9.5–18, and verifies parameter application.
  • Refined the Coveralls and Release workflows to use Go version from go.mod, removed unnecessary matrix strategies, and improved reliability. [1] [2] [3]
  • Improved test coverage reporting by including all packages in coverage and enabling verbose output for Coveralls in the Makefile.

Dependency and Go Version Updates

  • Updated the project to Go 1.25.1 and refreshed numerous dependencies to their latest versions in go.mod, ensuring compatibility and improved security.

Documentation and Contributor Guidance

  • Added a detailed AGENTS.md guide for AI agents and contributors, outlining essential commands, project structure, code patterns, commit conventions, and common pitfalls.

Other Notable Improvements

  • Included new PostgreSQL parameters in the documentation generator (generators/pg-docs/main.go) and cleaned up code. [1] [2]

These changes collectively modernize the project, improve reliability across PostgreSQL versions, and make it easier for new contributors and automation agents to understand and work with the codebase.

@sebastianwebber sebastianwebber force-pushed the seba/pg18 branch 2 times, most recently from 6e5bccf to 976fae6 Compare December 28, 2025 05:03
This PR introduces full support for PostgreSQL 18, including new AIO-related parameters (io_workers, io_method, etc.) and profiles.

It also significantly improves the CI/CD pipeline reliability:
- Integration Tests: Added comprehensive container-based tests for PostgreSQL versions 9.5 through 18.
- Robustness: Implemented strict failure detection for container crashes and timeouts.
- Verification: Added script validation to ensure generated configs are accepted by the actual database engine.
- Coverage: Fixed Coveralls reporting by using proper token authentication and package-wide coverage collection.
- Documentation: Updated AGENTS.md with strict commit conventions and agent rules.

Signed-off-by: Sebastian Webber <sebastian@swebber.me>
@sebastianwebber sebastianwebber merged commit 3cd9f9a into main Dec 28, 2025
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants