Repository navigation
Releases: dknauss/comment-popularity
Releases · dknauss/comment-popularity
Release list
1.5.2
Comment Popularity 1.5.2
- Target version: 1.5.2.
- Compat: aligned plugin metadata, Composer requirement, and runtime guard to PHP
8.2+. - Tooling:
bin/php-runtime.shnow enforces PHP8.2+and falls back to Local PHP8.4/8.3/8.2when hostphpis older. - Docs: removed stale
--ignore-platform-reqsguidance and documented PHP8.2+as the baseline. - Tests: added uninstall regression coverage for option/meta cleanup, comment karma reset, and capability teardown.
- Tests: added multisite uninstall regression coverage for blog-scoped option cleanup across network sites.
- Tests: added direct
comment_vote_callback()regression coverage for nonce failure, invalid comment/action, missing visitor, guest-voting-disabled, and success-path responses. - Tests: added guest visitor persistence coverage for single-site and multisite storage behavior.
- Tests: added experts widget regression coverage for empty expert result sets and HTTPS Gravatar URL generation.
- Fix:
HMN_Comment_Popularity::deactivate()now removes custom capabilities usinghas_cap()checks. - Fix: uninstall cleanup now targets the runtime comments table (
$wpdb->comments) and executes capability cleanup viadeactivate(). - Fix: uninstall now removes blog-scoped plugin options (
comment_popularity_prefs,hmn_cp_plugin_version,hmn_cp_guests_logged_votes) across all sites on multisite. - Fix: experts widget now initializes an empty return array in
get_experts()and useshttps://gravatar.comavatar URLs. - Fix: retired the unused
hmn_cp_intervalthrottling hook; server-side vote integrity is now explicitly state-based (duplicate vote rejection plus transition normalization). - CI: added
composer test:integrationbaseline command (aliases current PHPUnit integration suite). - CI: raised coverage gate threshold from
29%to35%after increasing measured statement coverage to51.58%(474/919). - Tests: added upgrade routine regression coverage for new install, legacy option migration, and current-version no-op paths.
- CI: raised coverage gate threshold from
23%to25%after increasing measured statement coverage to26.37%. - CI: added blocking
phpstanquality check with committed level-5 baseline (phpstan-baseline.neon). - CI: added phase-1 non-blocking
psalmquality check with committed baseline (psalm-baseline.xml). - Tooling: added Composer scripts for
analyse:phpstan,analyse:psalm,test:phpstan, andtest:psalm. - Docs: updated contributing and fork-first quality baselines to include static analysis gates.
- Tests: added admin settings/profile regression tests and helper regression tests.
- Tests: added bootstrap init regression tests for logged-in and guest-voting-disabled paths (
hmn_cp_init). - Fix: author karma attribution now resolves by registered comment
user_idonly in both vote processing andhmn_cp_the_comment_author_karma()output (guest-email collisions no longer mutate registered user karma). - CI: raised coverage gate threshold from
25%to27%after increasing measured statement coverage to43.68%(401/918). - CI: raised coverage gate threshold from
27%to29%after increasing measured statement coverage to44.99%(413/918). - Static analysis: reduced PHPStan baseline entries and updated Psalm baseline after helper-path cleanup.
- Tooling: added
bin/php-runtime.shand routed Composer quality commands through it to prefer a compatible local PHP runtime.
1.5.1
Release 1.5.1
This release establishes the fork quality baseline and ships correctness and CI hardening updates.
Highlights
- Bug fix: member vote state now persists an empty array when the last logged vote is removed.
- Bug fix: repeated direct vote requests no longer desynchronize legacy karma from Wilson vote metadata.
- Tests: visitor persistence and Wilson vote transition coverage expanded.
- CI: quality workflow now uses deterministic Composer scripts and pinned WordPress test versions.
- CI: PHPCS changed-files and full-repository checks now run clean under the updated baseline ruleset.
- CI: WordPress test bootstrap no longer depends on
svn; tests are fetched fromwordpress-developarchives. - Compat:
get_comments_sorted_by_weight()accepts both legacy and modern parameter order. - Docs: fork-first workflow policy is now codified as canonical process.