WP Manifestindependent plugin directory
manifest / email / dav-neuland-maillinglist-automation

DAV Mailinglist Moderation

WordPress plugin tha automates IONOS maillinglist with give rules and allwolists

by DAV Neuland · github.com/meinic/dav-neuland-maillinglist-automation · website

★ 0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/meinic/dav-neuland-maillinglist-automation/archive/refs/heads/main.zip

Automates moderation of IONOS "Mailinglisten-Manager" approval emails for dav-neuland.de mailing lists. See PLAN.md for the full design, and the repo's issues for the implementation breakdown.

Development setup

Once per clone, enable the repo's git hooks (a safety net against committing an unredacted captured email — see samples/README.md):

git config core.hooksPath .githooks

Requires PHP 8.3 and Composer, matching the production server (see PLAN.md §2, §9). On NixOS, nix-shell picks these up automatically via shell.nix; everywhere else, install PHP 8.3 (with ext-imap, ext-openssl) and Composer yourself.

Install dependencies (pulls in dev tooling like PHPUnit, then runs Strauss to build the namespace-prefixed copies of the vendored libraries in vendor-prefixed/, downloading tools/strauss.phar on first use):

composer install
composer run strauss

Before committing dependency changes, rebuild the deployable vendor/ tree the same way the (Composer-less) production server expects it — --no-dev --optimize-autoloader, then re-run Strauss so vendor-prefixed/ matches — and commit both directories:

composer install --no-dev --optimize-autoloader
composer run strauss

Running tests

vendor/bin/phpunit

(PHPUnit is a dev dependency; run composer install without --no-dev first if vendor/bin/phpunit is missing.) Fixtures live in tests/fixtures/ — see samples/README.md for the redaction workflow before adding a real captured email there.