atoum/stubs
IDE stubs for atoum providing PHPDoc annotations and full code completion without cluttering atoum’s core source. Install via Composer, use the atoum/mageekguy\atoum aliases in tests, and get richer autocompletion for the userland API.
Purpose Alignment (Updated):
The atoum/stubs package (v2.7.0) remains a niche tool with no direct Laravel integration, but this release introduces critical updates that may influence adoption decisions:
@toxicity1985's namespace (\atoum\stubs → \toxicity1985\stubs), which is a breaking change for existing adopters. This aligns with modern PHP practices but introduces migration friction.Fit for Laravel Projects (Unchanged):
Dependencies (Updated):
atoum\stubs must update to \toxicity1985\stubs. This is a high-effort migration for adopters with legacy atoum test suites.atoum/atoum (≥5.0.0), which remains the primary integration hurdle for Laravel projects.Conflict Risks (Updated):
| Risk Area | Severity | Mitigation | Update |
|---|---|---|---|
| Framework Incompatibility | High | Evaluate atoum’s Laravel support. | No change. Still the largest risk. |
| Tooling Ecosystem Gaps | Medium | Plan for custom scripts/plugins. | No change. |
| Namespace Migration | High | Update all test imports to new namespace. | Increased risk: Breaking change requires global refactoring in existing atoum suites. |
| Maintenance Overhead | Medium | Assign ownership for atoum-specific tests. | No change. |
| Performance Impact | Low | Stubs are lightweight. | No change. |
| PHP 8.4 Compatibility | Low | Verify atoum core supports PHP 8.4. | Reduced risk: Package now addresses PHP 8.4 deprecations. |
| Community Support | High | Low stars/activity may indicate abandonment. | Slight improvement: New contributors in this release, but long-term viability remains unclear. |
atoum\stubs imports with \toxicity1985\stubs in a sandbox.
sed/Rector for automated updates (if safe).tests/atoum directory with updated namespace imports.composer.json (with PHP 8.4 support):
"require-dev": {
"atoum/atoum": "^5.0",
"toxicity1985/stubs": "^2.7.0" // Updated package name
}
- run: vendor/bin/atoum -d tests/atoum --namespace "toxicity1985\\stubs"
MockEloquentModel) remain necessary.| Component | Compatibility | Notes | Update |
|---|---|---|---|
| Laravel Service Container | Low | No native support. | No change. |
| Database Testing | Medium | Manual setup required. | No change. |
| HTTP Testing | Low | Use atoum’s requests extension. |
No change. |
| Artisan Commands | Medium | Test via atoum’s process runner. |
No change. |
| PHP 8.4 Support | High | Package now compatible with PHP 8.4. | Improved: Removes a technical barrier for modern PHP stacks. |
| Namespace Changes | Breaking | Existing tests must update imports to \toxicity1985\stubs. |
Critical: Requires global refactoring in atoum test suites. |
toxicity1985/stubs v2.7.0.\toxicity1985\stubs.Rector for import updates).How can I help you explore Laravel packages today?