docs: Document PostgreSQL database support for Mautic 7.x#310
docs: Document PostgreSQL database support for Mautic 7.x#310promptless-for-oss wants to merge 7 commits into
Conversation
| :returntype: string No newline at end of file | ||
| :returntype: string | ||
|
|
||
| Database compatibility |
There was a problem hiding this comment.
Database compatibility section based on PR #15926. Key implementation files: CommonRepository.php, GeneratedColumnProvider.php.
Source: mautic/mautic#15926
| **MySQL/MariaDB configuration:** | ||
|
|
||
| .. code-block:: php | ||
|
|
There was a problem hiding this comment.
PostgreSQL configuration example from PR #15926. Uses pdo_pgsql driver on port 5432, requires PostgreSQL 16+.
Source: mautic/mautic#15926
|
|
||
| Mautic supports MySQL, MariaDB, and PostgreSQL. The CI pipeline runs tests against all supported databases. Make sure your code works across all databases when developing features or writing tests. | ||
|
|
||
| Supported database versions |
There was a problem hiding this comment.
Multi-database testing section based on PR #15926. CI tests run on PostgreSQL 16/18, MariaDB 10.11/11.4, MySQL 8.4/9.4.
Source: mautic/mautic#15926
|
@promptless-for-oss please rebase to 7.2 branch |
|
The Would you like me to:
Please let me know how you'd like to proceed. |
@promptless-for-oss we do have branch 7.2 and I have synced the target branches |
Adds comprehensive developer documentation for PostgreSQL support: - Development setup: Added PostgreSQL configuration example alongside MySQL - Database compatibility: New section covering case-insensitive matching, column quoting, GROUP BY requirements, and platform detection - Testing: Added multi-database testing guidance with PostgreSQL config Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Updates the GROUP BY documentation to clarify that MySQL 8+ with ONLY_FULL_GROUP_BY SQL mode enabled also enforces strict GROUP BY rules, not just PostgreSQL. This ensures developers write compliant queries that work across all supported databases and SQL modes.
7bbe37f to
3b09a5d
Compare
|
Done! I've rebased the branch onto However, I don't have permission to change the PR's base branch. Could you update the base branch from |
|
@promptless-for-oss not sure why there are commits that aren't related to the changes here? Should we start fresh with new PR? |
|
Thanks for flagging this! I checked the PR state via the API and it shows:
This looks correct on my end. The unrelated commits you're seeing might be a GitHub UI caching issue after the rebase - sometimes the "Commits" tab takes a moment to refresh after a force-push. Could you try a hard refresh of the page (Ctrl+Shift+R or Cmd+Shift+R)? If you still see unrelated commits after refreshing, I'm happy to create a fresh PR with a clean branch. |
adiati98
left a comment
There was a problem hiding this comment.
@promptless-for-oss please address the suggestions
- Fix passive voice in setup.rst and e2e_test_suite.rst - Update method list formatting in database.rst - Add vale off/on directives around camelCase content - Convert best practices to numbered list format - Fix ordered list format and code block indentation in e2e_test_suite.rst - Add vale off/on around database-specific bullets and cross-reference
|
Thanks for the detailed review, @adiati98! I've addressed all 11 suggestions:
The changes have been pushed to this branch. |
adiati98
left a comment
There was a problem hiding this comment.
@promptless-for-oss please address the suggestions
Address reviewer suggestions: - Use consistent `*` marker for isPostgreSql() method - Lowercase "returns" to match other method descriptions - Expand ORM to "Object Relational Mapper - ORM" - Add ORM to Vale vocabulary accept.txt
|
Thanks for the review, @adiati98! I've addressed both suggestions:
Ready for re-review! |
|
Hi @wieslawgolec, Can you please review the contents here and see if they're align with your changes at Mautic repo? TIA! ✨ |
Hi @adiati98 . Seems there are outdated references to helper methods that were refactored. Key mismatch with current code: Main issues in the docs:
Database compatibility section probably need update like this (replace the outdated parts): Available helpers in DatabasePlatform (key ones for plugins): getCaseInsensitiveLike(...) — primary method (replaces old getILike / getLowerLike). For repositories that previously extended CommonRepository, update calls to use the static DatabasePlatform methods (inject or resolve the connection/platform as needed). Platform detection example : Other minor updates That would be all. |
Addresses review feedback from @wieslawgolec. The platform-specific logic has been refactored into the centralized DatabasePlatform class, so this updates the docs to reference the correct static methods instead of the deprecated CommonRepository instance methods. Changes: - Replace CommonRepository method references with DatabasePlatform static methods - Update code examples to use DatabasePlatform::getCaseInsensitiveLike() with flag parameter - Update platform detection to use DatabasePlatform::isPostgreSQL() - Add note that DatabasePlatform is the single source of truth - Update best practices to reference DatabasePlatform
|
Thanks @wieslawgolec for the detailed review! I've updated the documentation to address your feedback: Changes made:
Please let me know if you'd like any further adjustments! |
|
/aside @wieslawgolec, Promptless has updated the docs based on your review. |
@adiati98 looks fine now. |
Open this suggestion in Promptless to view citations and reasoning process
Documents the reintroduction of PostgreSQL database support in Mautic 7.x (mautic/mautic#15926).
Changes
Development setup (
docs/development-environment/setup.rst):Database compatibility (
docs/plugins/database.rst):getILikeExpression,getLowerLikeExpression)camelCaseidentifiersTesting (
docs/testing/e2e_test_suite.rst):Why this matters for developers
CommonRepositoryabstract platform differencesSource: PR #15926 - Reintroducing PostgreSQL Database Support in Mautic 7.x