Merged
Conversation
#22) - Refactored password column detection into a standalone sub. - Implemented schema-based detection using information_schema.COLUMNS. - Added regression test tests/repro_issue_22.t. - Updated tests/test_issue_875.t mocks. - Updated Changelog.
update Changelog and release notes for Issue major#877
Include Performance Schema fixes and GitHub Actions modernization.
Make Storage Engine Statistics output deterministic
- refactor: replace system calls (whoami, hostname, printenv) with native Core Perl functions. - chore: bump version to 2.8.37.
jmrenouard
added a commit
to jmrenouard/MySQLTuner-perl
that referenced
this pull request
Apr 4, 2026
Merge pull request major#879 from jmrenouard/master
jmrenouard
added a commit
to jmrenouard/MySQLTuner-perl
that referenced
this pull request
Apr 17, 2026
# Release Notes - v2.8.41 **Date**: 2026-04-13 ## 📝 Executive Summary ```text 2.8.41 2026-04-13 - chore: automated project maintenance and cleanup (extracted `RULES.md`, `MEMORY_DB.md`, `TESTS.md`). - feat: implement idiomatic Perl Boolean practices across the project (#34). - feat: add recommendation for `table_open_cache_instances` based on CPU cores (major#480). - feat: improve syslog and systemd journal detection for error logs (major#440). - feat: initialize `$mysqllogin` to avoid uninitialized value warnings (major#490). - fix: Restore compatibility with older Perl versions (by @jasongill). - fix: wrap template loading in `get_template_model()` to avoid `uninitialized value` warnings during `require`. - fix: allow `--updateversion` to work on hosts without `mysql`/`mariadb` installed (#36). - fix: skip local SSL certificate warnings if they are in an inaccessible `datadir` (#33). - fix: correct false positives in `check_removed_innodb_variables` by distinguishing real server variables from internal ones (#32). - fix: improve join_buffer_size recommendation formatting in Variables to Adjust (major#881). - fix: suppress MySQL client warning regarding 'DISABLED' boolean value for SSL (major#887). - fix: correctly handle `--defaults-file` and `--defaults-extra-file` without dropping options (major#605). - fix: restore Debian maintenance account automatic login by using idiomatic boolean checks (major#896). - fix: include `tmp_table_size` in per-thread memory calculation for better accuracy (major#864). - fix: add retry mechanism for initial `SELECT VERSION()` query to improve connection resilience (major#782). - fix: prevent `AUTO_INCREMENT` capacity false positives for empty tables (#37). - fix: refactor InnoDB Redo Log Capacity logic to be workload-based and avoid false positives (major#714, major#737, major#777). - fix: add guards against division by zero in calculations for improved stability (major#435). - fix: add truthiness guards to `mysql_innodb` and `mysql_stats` subroutines. - fix: improve `which` logic for better container/minimal environment support. - fix: enhance login failure reporting with detailed output. - ci: enhance Quality Gate to strictly enforce zero-warning policy on GitHub Actions tests. - ci: implement dynamic CI test environment detection by wrapping configuration extraction. - ci: refactor GitHub Actions release and prerelease workflows to support dynamic versions and checksum generation. - ci: migrate maintenance script to GitHub Actions. - refactor: update CLI metadata to use `undef` as default for string/path options. - refactor: replace non-idiomatic `eq '0'`, `ne 0`, etc., with standard truthiness checks. - refactor: replace "master"/"slave" terminology with "source"/"replica" for cultural sensitivity (major#888). - chore(deps): update docker/setup-buildx-action action to v4. - chore(deps): update docker/build-push-action action to v7. - chore(deps): update docker/login-action action to v4. - chore(deps): update softprops/action-gh-release action to v3. ``` ## 📈 Diagnostic Growth Indicators | Metric | Current | Progress | Status | | :--- | :--- | :--- | :--- | | Total Indicators | 12 | 0 | 🛡️ | | Efficiency Checks | 0 | 0 | 🛡️ | | Risk Detections | 2 | 0 | 🛡️ | | Information Points | 10 | 0 | 🛡️ | ## 🛠️ Internal Commit History - feat: release 2.8.41 (2a8371c) - style: tidy mysqltuner.pl (db23439) - ci: refactor Github release definitions with pre-releases and deliverables support (68f8d12) - ci: enforce zero-warning policy and dynamic test env (2eebcc4) - feat: release 2.8.41 final stabilization (e479ba7) - feat: release 2.8.41 final polish (e8d2751) - feat: release 2.8.41 final polish (bac36cb) - feat: release 2.8.41 (56b9dd7) - Merge pull request #41 from major/master (089a598) - Merge pull request major#885 from major/renovate/docker-setup-buildx-action-4.x (d430513) - Merge pull request major#886 from major/renovate/docker-build-push-action-7.x (9b7dd14) - Merge pull request major#884 from major/renovate/docker-login-action-4.x (5d56ecb) - Merge pull request major#894 from major/renovate/softprops-action-gh-release-3.x (9805873) - Merge pull request major#882 from jasongill/master (d1f3808) - Merge pull request major#895 from jmrenouard/master (2feb466) - Merge pull request #40 from major/master (10fcd37) - Merge branch 'master' into master (c13bb0b) - feat: release 2.8.40 (21d5873) - perltidy mysqltuner.pl (5653056) - chore(deps): update all non-major dependencies to v20.5.0 (major#893) (290b646) - chore(deps): update dependency lodash to v4.18.1 [security] (major#892) (c01e968) - chore: add automerge to Renovate config (633edcc) - Add CodeQL analysis workflow configuration (43a57c9) - Merge pull request #35 from C0RD/master (9474c70) - chore(deps): update all non-major dependencies to v20.5.0 (major#893) (4520d11) - chore(deps): update softprops/action-gh-release action to v3 (75e9cee) - chore(deps): update dependency lodash to v4.18.1 [security] (major#892) (e77d43c) - chore: add automerge to Renovate config (0470fb7) - Merge pull request #38 from jmrenouard/dependabot/npm_and_yarn/npm_and_yarn-b22b4dc46b (69caecf) - Merge pull request #39 from major/master (54dbffd) - chore(deps-dev): bump the npm_and_yarn group across 1 directory with 2 updates (955284a) - chore(deps): update docker/build-push-action action to v7 (a5a6234) - chore(deps): update docker/setup-buildx-action action to v4 (830bbc2) - chore(deps): update docker/login-action action to v4 (2ca8b8d) - Change default update check to disabled (938db61) - Remove r modifier from regex for compatability with older Perl versions (d6f7f97) - chore: bump version to 2.8.41 (3e54167) - Merge pull request major#879 from jmrenouard/master (9b8617f) ## ⚙️ Technical Evolutions *Internal logic hardening (no interface or diagnostic changes).* ## ✅ Laboratory Verification Results - [x] Automated TDD suite passed. - [x] Multi-DB version laboratory execution validated. - [x] Performance indicator delta analysis completed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
2.8.38 2026-02-14
2.8.36 2026-02-13
2.8.35 2026-02-02
HTTP::Tinywith robust fallback tocurl/wget(PR Add DirectAdmin support. #18 and Support for Directadmin #17).perltidyinrelease-preflightworkflow and enforce script formatting (issue Swap position of innodb buffer pool size and data size arguments #19).innodb_log_file_sizerecommendations caused by integer rounding (issue mysqltuner recommends variable-change thats already been set #770).innodb_log_buffer_sizerecommendations (issue In 2.5.3 with a fresh MariaDB install, innodb_log_buffer_size increase message emits #783).SECURITY.mdtemplate with project-specific policy and contact info (Issue SECURITY.md contains the default template #771, credit @bfontaine).perltidyonmysqltuner.plto ensure code consistency.tests/test_version_regex.tfor version extraction verification.tests/issue_770.tto verifyinnodb_log_file_sizerecommendation precision.tests/issue_783.tto verifyinnodb_log_buffer_sizerecommendation on idle servers.MySQLTuner Changelog
2.8.33 2026-01-31
fix: improved cPanel/Flex detection and refined
skip-name-resolverecommendation (issue cPanel recommendation for skip-name-resolve is incorrect #863).test: add enhanced unit test
tests/issue_863_enhanced.tfor cPanel detection verification.docs: consolidate project governance rules and resolve backwards compatibility contradiction (00_constitution.md, 03_execution_rules.md).
style: promote session-discovered rules to Tier 04 Best Practices and reset
remembers.md.feat: add automated validation (regex/coderef) for CLI options like
--portand--defaultarch.feat: implement option implications (e.g.,
--featureimplies--verbose) in metadata.feat: add SSL/TLS security checks for missing configuration, insecure protocols (TLSv1.0, TLSv1.1), and secure transport enforcement.
feat: add automated detection of current session encryption status.
feat: add observability warning and explicit recommendation when
performance_schemais disabled.fix: resolve numeric comparison warnings and prevent full workstation path leakage in CLI output.
fix: resolve contradictory key_buffer_size recommendations by adding a usage threshold to the increase recommendation (issue Double recommendations #774).
test: add unit test
tests/cli_validation.tfor comprehensive option validation verification.test: add unit test
tests/ssl_tls_validation.tfor comprehensive SSL/TLS verification.test: add unit test
tests/pfs_observability.tto verifyperformance_schemadiagnostics.test: add unit test
tests/issue_774.tto verify key_buffer_size recommendation logic.docs: cleanup MongoDB and PostgreSQL references from
ROADMAP.mdand README files.refactor: implement metadata-driven CLI option parsing to centralize defaults, validation, and documentation.
2.8.32 2026-01-30
--skippasswordfrom test laboratory to enable security checks.curl/wgetoutput.multi-db-docker-envandtest_dbvendors.2.8.31 2026-01-27
--schemadir <path>option to generate per-schema markdown documentation.--dumpdir.documentation/specifications/(/hey-agent).build/updateCVElist.plwith NVD API 2.0 (JSON-based) (Fix Master is missing vulnerabilities.csv #867).tests/sql_modeling.tmock data.mysqltuner.pl.sh -c.tests/schemadir.tto verify schema documentation logic.build/test_envs.shwithSchemadirtest scenario and fix logic ordering.execution.logand collapsible panels for better readability.--cvefilesupport.examples/and execute full LTS test suite (MySQL, MariaDB, Percona).2.8.30 2026-01-24
raw_mysqltuner.txtreport indumps/directory when using--dumpdirbuild/test_envs.shto capture and link all infrastructure logs (Docker start, DB injection, container logs, inspect data) in HTML reports for full audit traceabilityexamples/directory to keep only the 10 most recent results/examples-cleanupworkflow for manual laboratory maintenancebuild/release_gen.pyand/release-notes-genworkflow.agent/README.mdsynchronization viabuild/doc_sync.pyand/doc-syncworkflow2.8.29 2026-01-24
fix: synchronize all version occurrences in mysqltuner.pl and update release workflows (issue Installation via wget #15)
feat: add version consistency check to release-preflight and git-flow workflows
docs: update copyright years to 2026
2.8.28 2026-01-22
feat: ajoute l'option --no-pfstat pour la partie performance schema
feat: ajoute l'option --no-colstat pour la partie colonne stat
fix: skip innodb_buffer_stats during sys schema dump to avoid performance issues
2.8.27 2026-01-18
2.8.26 2026-01-18
2.8.24 2026-01-18
2.8.23 2026-01-18
2.8.22 2026-01-18
2.8.21 2026-01-18
2.8.20 2026-01-18
2.8.18 2026-01-18
2.8.17 2026-01-18
2.8.16 2026-01-18
2.8.15 2026-01-18
2.8.13 2026-01-18
2.8.12 2026-01-17
2.8.11 2026-01-17
2.8.10 2026-01-17
2.8.9 2026-01-17
2.8.8 2026-01-17
2.8.7 2026-01-17
2.8.6 2026-01-17
2.8.5 2026-01-17
2.8.4 2026-01-17
2.8.3 2026-01-17
2.8.2 2026-01-17
2.8.1 2026-01-17
2.8.0 2026-01-17