From 3f5adfb04e9df35c8b212f2e63ae0d0ed1a333bd Mon Sep 17 00:00:00 2001 From: magdev Date: Tue, 3 Feb 2026 21:52:00 +0100 Subject: [PATCH] Bump version to 0.10.1 for configurable rate limiting release Co-Authored-By: Claude Opus 4.5 --- CHANGELOG.md | 34 ++++++++++++++++++++++++---------- wp-bnb.php | 4 ++-- 2 files changed, 26 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index fd7691e..f2c4ebd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,24 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.10.1] - 2026-02-03 + +### Added + +- API Settings subtabs for better organization: + - General subtab: Enable/disable REST API, rate limiting toggle, API information + - Rate Limits subtab: Configurable time window and endpoint-specific limits + - Endpoints subtab: Full endpoint documentation with HTTP method badges +- Configurable rate limiting: + - Time window setting (10-300 seconds, default 60) + - Per-endpoint-type limits (public, availability, booking, admin) + - Settings stored in WordPress options with fallback defaults + +### Changed + +- RateLimiter class now loads limits from WordPress options +- README updated with configurable rate limiting documentation + ## [0.10.0] - 2026-02-03 ### Added @@ -46,25 +64,21 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Pricing API: - `POST /wp-bnb/v1/pricing/calculate` - Full price calculation with services - `GET /wp-bnb/v1/pricing/seasons` - Get configured seasons and pricing modifiers -- API Settings tab in plugin settings with three subtabs: - - General subtab: Enable/disable REST API, rate limiting toggle, API information - - Rate Limits subtab: Configurable time window and endpoint-specific limits - - Endpoints subtab: Full endpoint documentation with HTTP method badges -- Configurable rate limiting: - - Time window setting (10-300 seconds, default 60) - - Per-endpoint-type limits (public, availability, booking, admin) - - Settings stored in WordPress options, defaults maintained in code +- API Settings tab in plugin settings: + - Enable/disable REST API toggle + - Enable/disable rate limiting toggle + - Endpoint documentation table + - Authentication instructions ### Changed - Plugin.php updated to initialize REST API on `rest_api_init` hook - Settings page now has seven tabs: General, Pricing, License, Updates, Metrics, API - README.md updated with comprehensive REST API documentation -- RateLimiter class now loads limits from WordPress options with fallback defaults ### Security -- Rate limiting: configurable per endpoint type (defaults: public 60/min, availability 30/min, booking 10/min, admin 120/min) +- Rate limiting: public (60/min), availability (30/min), booking (10/min), admin (120/min) - Admin endpoints require `edit_posts` capability - Supports WordPress Application Passwords for external API access - Client identification by user ID (authenticated) or IP address (anonymous) diff --git a/wp-bnb.php b/wp-bnb.php index 7985b7e..1d9959b 100644 --- a/wp-bnb.php +++ b/wp-bnb.php @@ -3,7 +3,7 @@ * Plugin Name: WP BnB Management * Plugin URI: https://src.bundespruefstelle.ch/magdev/wp-bnb * Description: A comprehensive Bed & Breakfast management system for WordPress. Manage buildings, rooms, bookings, and guests. - * Version: 0.10.0 + * Version: 0.10.1 * Requires at least: 6.0 * Requires PHP: 8.3 * Author: Marco Graetsch @@ -24,7 +24,7 @@ if ( ! defined( 'ABSPATH' ) ) { } // Plugin version constant - MUST match Version in header above. -define( 'WP_BNB_VERSION', '0.10.0' ); +define( 'WP_BNB_VERSION', '0.10.1' ); // Plugin path constants. define( 'WP_BNB_PATH', plugin_dir_path( __FILE__ ) );