Skip to content

v0.4.0: Strict Route Constraint Enforcement

Pre-release
Pre-release

Choose a tag to compare

@deondazy deondazy released this 18 Aug 23:38
· 142 commits to main since this release

BREAKING CHANGES

  • Route constraints now strictly enforce validation rules
  • Routes with whereNumber('id') will throw 404 for non-numeric input
  • Routes with whereAlpha('name') will throw 404 for non-alphabetic input
  • Routes with whereIn() will throw 404 for invalid values

New Features

  • Constraint enforcement tests covering all constraint types
  • Enhanced regex constraint handling with proper delimiter escaping
  • 404 NotFoundException thrown for constraint violations

Improvements

  • Extracted common URL generation logic into shared helper methods in UrlGenerator
  • Improved RouteTrie constraint matching logic to prioritize constrained nodes
  • Enhanced TrieNode regex constraint handling with proper forward slash escaping

Fixes

  • Route constraints now properly enforce validation
  • Regex constraints with forward slashes work correctly
  • Constraint violation edge cases return proper 404 responses

Security

  • Route parameter validation strictly enforced to prevent security issues

This is a pre-release for testing. Please report any issues before the final release.