OpenJun 24, 2025
No due date
•Last updated 2.0.0 stable release should be considered as BC-breaking and will include changes that could require additional migration efforts (eg PHP and Symfony support removals).
In this milestone we should include
- Dependency updates (including BC-breaking changes)
- Cleanup & removal of outdated practices (including BC-breaking changes)
- New features & enhancements (including BC-breaking changes, that move DX forward)
What should we aim for?
- Tech Cleanup
- Remove deprecated features (mark breaking ones clearly in changelog).
- Finalize Interfaces: clean up ModelCriteria, TableMap, ConnectionManager, etc.
- Leverage modern PHP: Scalar type hints, return types everywhere, Enums (PHP 8.1+), Attributes instead of annotations (optional but supported)
- Composer Cleanup: remove obsolete dependencies, ensure minimal footprint
- Upgrade Requirements
- PHP 8.1+ (with clear notes for why)
- Symfony 6+ and Doctrine Cache compatibility
- Unify Exceptions and Logging for clarity
- DX
- Better Errors, eg user-friendly exception messages and stack traces
- Improved IDE support via better PHPDocs, generics (Psalm/phpstan), and typed query builders
- Query Builder Improvements (Eager loading enhancements, named scopes / reusable conditions)
- New "Hello Propel" demo app using Symfony or XXX
34% complete
List view
0 issues of 17 selected
- Status: Open.#755 In propelorm/Propel2;
- Status: Open.#687 In propelorm/Propel2;
- Status: Open.#1577 In propelorm/Propel2;
- Status: Open.#1656 In propelorm/Propel2;
- Status: Open.#2040 In propelorm/Propel2;
- Status: Open.#2033 In propelorm/Propel2;
- Status: Open.#1969 In propelorm/Propel2;
- Status: Open.#1919 In propelorm/Propel2;
- Status: Open (in progress).propelorm/Propel2number 2012#2012 In propelorm/Propel2;
- Status: Open (in progress).propelorm/Propel2number 1859#1859 In propelorm/Propel2;
- Status: Open (in progress).propelorm/Propel2number 1676#1676 In propelorm/Propel2;
- Status: Open (in progress).propelorm/Propel2number 1468#1468 In propelorm/Propel2;
- Status: Open (in progress).propelorm/Propel2number 1467#1467 In propelorm/Propel2;
- Status: Open (in progress).propelorm/Propel2number 1319#1319 In propelorm/Propel2;
- Status: Open (in progress).propelorm/Propel2number 973#973 In propelorm/Propel2;
- Status: Open (in progress).propelorm/Propel2number 1313#1313 In propelorm/Propel2;
- Status: Open (in progress).propelorm/Propel2number 1262#1262 In propelorm/Propel2;