Skip to content

v2.2.0

Choose a tag to compare

@github-actions github-actions released this 16 Jun 04:54
· 45 commits to main since this release
599bac1

New Features

  • Accept a top-level slug on event create and update requests, sanitized and stored as the WordPress post_name, so callers (including MCP clients) can set an event's URL slug instead of always deriving it from the title. Omitting slug keeps the existing behavior. (Fixes #4.)

Improvements

  • Restricted the public MCP schema manifest so the granular capability matrix (custom_event_api_capabilities) and per-capability RSVP flags (rsvp_attendees_enabled, rsvp_counts_enabled) are returned only to authenticated administrators; anonymous callers receive the coarse availability booleans only.
  • Capped the events slug filter at 100 values and applied sanitize_title consistently across the string and array forms to keep the post_name__in query bounded.
  • Moved the settings-page styles and scripts into enqueued asset files (assets/css/admin-settings.css, assets/js/admin-settings.js) so they are cacheable and no longer emitted inline on every settings render.
  • Restructured the plugin internals into focused, single-responsibility modules: the monolithic REST handler, MCP manifest, and core bootstrap files were split into smaller includes/ modules, with shared helpers replacing duplicated logic. No change to API behavior.
  • Added a dependency-free PHP unit test suite (npm run test:unit) and a CI workflow that lints every source file and runs the suite, covering the helpers, slug filter, validation, MCP visibility gate, capability map, and RSVP list logic.

Bug Fixes

  • Removed the orphaned RSVP delta-sync post meta (_eventon_apify_updated_at_gmt) during plugin uninstall.

Full Changelog: v2.1.1...v2.2.0