This roadmap outlines planned libraries and updates for the Sons of PHP monorepo. Completed items must be removed to keep the list current.
- Problem statement and goals are clearly documented.
- Scope, dependencies, and related packages are identified.
- Acceptance criteria and testing strategy are defined.
- Stakeholders have reviewed and approved the proposal.
- Implementation meets the documented acceptance criteria.
- Unit and integration tests are added or updated and pass.
- Documentation reflects the new or changed behavior.
make test,make php-cs-fixer, andmake psalmpass.- The corresponding roadmap entry is removed.
- Each entry below is an epic with a name and short description.
- Epics contain a list of tasks. Every task must:
- satisfy the Global Definition of Ready before work begins;
- meet the Global Definition of Done on completion; and
- define its own acceptance criteria.
- Remove tasks as they are completed.
- When an epic has no remaining tasks, remove the epic.
Description: Finalize public APIs, increase test coverage, and prepare documentation for a stable 1.0 release.
- Finalize public APIs for existing components.
- Acceptance Criteria
- All Global DoR items are satisfied before implementation begins.
- Public APIs are documented and approved.
- Implementation meets the Global DoD.
- Acceptance Criteria
- Increase test coverage and fix outstanding issues.
- Acceptance Criteria
- All Global DoR items are satisfied before implementation begins.
- Components tagged for 1.0 reach at least 90% test coverage.
- All known issues are resolved.
- Implementation meets the Global DoD.
- Acceptance Criteria
- Prepare changelogs and migration guides.
- Acceptance Criteria
- All Global DoR items are satisfied before implementation begins.
- Changelogs outline breaking changes and upgrade paths.
- Migration guides are published.
- Implementation meets the Global DoD.
- Acceptance Criteria
Description: Align HTTP components with the latest PSR standards and ensure client compatibility.
- Align
HttpMessageandHttpFactorywith PSR-7 v2 and PSR-17.- Acceptance Criteria
- All Global DoR items are satisfied before implementation begins.
- Components comply with PSR-7 v2 and PSR-17.
- Implementation meets the Global DoD.
- Acceptance Criteria
- Ensure compatibility with PSR-18 clients.
- Acceptance Criteria
- All Global DoR items are satisfied before implementation begins.
- Integration tests against a PSR-18 client pass.
- Implementation meets the Global DoD.
- Acceptance Criteria
- Update documentation with examples for the updated interfaces.
- Acceptance Criteria
- All Global DoR items are satisfied before implementation begins.
- Docs include examples using the updated interfaces.
- Implementation meets the Global DoD.
- Acceptance Criteria
Description: Provide a framework-agnostic, rule-based validation system with extensible APIs.
- Implement
Component/Validationwith rule definitions and error reporting.- Acceptance Criteria
- All Global DoR items are satisfied before implementation begins.
- Component exposes an extensible API for custom rules.
- Implementation meets the Global DoD.
- Acceptance Criteria
- Add unit tests covering each validator and failure scenario.
- Acceptance Criteria
- All Global DoR items are satisfied before implementation begins.
- Tests cover common validators and edge cases.
- Implementation meets the Global DoD.
- Acceptance Criteria
- Document usage examples and customization guides.
- Acceptance Criteria
- All Global DoR items are satisfied before implementation begins.
- Documentation explains basic usage and extension points.
- Implementation meets the Global DoD.
- Acceptance Criteria
Description: Implement a queue abstraction with adapters and a Symfony Messenger bridge.
- Implement queue abstraction with in-memory and Redis adapters.
- Acceptance Criteria
- All Global DoR items are satisfied before implementation begins.
Component/Queueprovides enqueue/dequeue interfaces and adapters.- Tests demonstrate reliable job processing and failure handling.
- Implementation meets the Global DoD.
- Acceptance Criteria
- Provide Symfony Messenger bridge for interoperability.
- Acceptance Criteria
- All Global DoR items are satisfied before implementation begins.
- Bridge integrates with Symfony Messenger.
- Implementation meets the Global DoD.
- Acceptance Criteria
Description: Review bridge packages for Symfony 7 compatibility and add support for new features.
- Review and update bridge packages for Symfony 7 compatibility.
- Acceptance Criteria
- All Global DoR items are satisfied before implementation begins.
- Bridges pass tests against Symfony 7 components.
- Implementation meets the Global DoD.
- Acceptance Criteria
- Remove deprecated APIs and document replacements.
- Acceptance Criteria
- All Global DoR items are satisfied before implementation begins.
- Deprecated APIs are removed.
- Docs describe new APIs and migration paths.
- Implementation meets the Global DoD.
- Acceptance Criteria
- Document release notes describing Symfony 7 compatibility.
- Acceptance Criteria
- All Global DoR items are satisfied before implementation begins.
- Release notes highlight Symfony 7 support.
- Implementation meets the Global DoD.
- Acceptance Criteria
- Automate dependency updates with a scheduled tool (e.g., Renovate or Dependabot).
- Establish coding style guides per component to encourage consistency.
- Consider setting up benchmarks for performance-critical components.
- Link epics and tasks to issue trackers for traceability.
- Review roadmap items quarterly to keep priorities current.