What's new in phpDocumentor 3.4.0
Our ReStructuredText library as taken flight. It's now a separate library and can be used in any project. As
it is getting more and more traction the library is becoming more feature complete and stricter accoring to the RST spec.
This allows you to write better documentation for your users but also improved the readability of our own docs.
Changelogs of the guides library are not included in these release notes.
General changes
In this release we upgraded to Symfony 6 and PHP 7 support has been droppped completely. We added support for php 8.2.
Interally we have restructured the pipelines to prepare for multi version support in the future.
Added
- Add used-by resolving by @jaapio in #3198
- Query engine for AST by @jaapio in #3172
- Rfc/3154 full line and column location of methods by @LeoVie in #3214
- Support null versions in Since reflection by @mvriel in #3286
- Source code cannot be viewed from packages, file or namespaces by @mvriel in #3284
- When typing an array, show that in docs by @mvriel in #3293
- GH#3307 Make readonly mutator for class available by @mvriel in #3362
Template
- Tighten table of contents by @mvriel in #3382
- Introduce the first value objects by @mvriel in #3381
- Show 'On this page' for classes and namespaces by @mvriel in #3383
- Restyle elements and add color support by @mvriel in #3388
- Do not show container section of TOC in classes by @mvriel in #3380
- Back to top doesn't work in Guides by @mvriel in #3391
- Show whether a method is tagged as 'api' by @mvriel in #3392
- Show Constants on Traits in the Trait's documentation by @mvriel in #3394
- Move headerlinks to component by @mvriel in #3404
- feat: preserve newlines in XML attributes by @bshaffer in #3430
- Including Punctuation Marks by @BirdboyBolu in #3439
- feat: add support for
APP_CACHE_DIR
andAPP_LOG_DIR
by @drupol in #3518 - feat: add class magic methods to xml template, fix magic method return tag by @bshaffer in #3514
- Add callable rendering by @jaapio in #3538
- Feature/filesource tag by @jaapio in #3539
- feat: add magic flag to xml template by @bshaffer in #3520
Fixed
- fix: ensure uses/see/link descriptors render to string as expected by @bshaffer in #3244
- Fix OutputHello Example Param Wording by @CraicOverflow89 in #3324
- Fix issue with minimal directory by @jaapio in #3325
- Fix: remove redundant whitespace by @kudashevs in #3335
- Docker shouldn't run
help run
by default by @mvriel in #3285 - Levenshtein argument too long by @mvriel in #3287
- References to cases are not linked by @mvriel in #3288
- Purge caches upon version change by @mvriel in #3289
- Extend timeout for UML generation to 20mins by @Hackwar in #3311
- Should fix #3415 by @peterhauke in #3441
- Resolve issue invalid property definition by @jaapio in #3479
- Bugfix/3494 ignore symlinks by @jaapio in #3495
Docs
- Start documenting pipelines and remove obsolete pipeline by @mvriel in #3483
- [DOCS] Link to configuration chapter by @linawolf in #3489
- [DOCS] Fix indentation to make code-blocks render by @linawolf in #3490
CI
- More strict argument check by @jaapio in #3195
- Reintroduce composer require checker by @jaapio in #3133
- Line numbers show 0 with InvalidTag issues by @mvriel in #3294
- Windows tests keep failing by @mvriel in #3295
- GH Actions: bust the cache semi-regularly by @jrfnl in #3357
- Start building on php 8.2 by @jaapio in #3376
- Use centralized phar build by @jaapio in #3529
- Comment use of unreleased method from ReflectionDocBlock by @mvriel in #3364
- Moved most parts of the DescriptorAbstract and TagDescriptor into traits by @mvriel in #3375
- Introduce CanHaveAType and CanHaveADefaultValue traits for Descriptors by @mvriel in #3379
Other
- Refactor LinkRenderer into a series of adapters and introduce references to guides by @mvriel in #3475
- Warn when multiple versions and/or sets of each type is given by @mvriel in #3477
- Move Files listing from Project to Documentation Sets by @mvriel in #3480
- Move indexes from Project to Documentation Sets by @mvriel in #3481
- Remove file and index getters and setters from project by @mvriel in #3482
- Extract pipeline for documentation set by @mvriel in #3485
- Collect files and indexes in API Documentation Set by @mvriel in #3486
- Cache per documentation set by @mvriel in #3487
- Move compiling into a pipeline by @mvriel in #3488
- Refactor all compilers to work on a DocumentationSet by @mvriel in #3492
- Change writers to be performed on a per-documentation-set basis by @mvriel in #3496
- Drop php 7.4 and php 8.0 by @jaapio in #3510
- Restructure compiler to allow different stages by @jaapio in #3519
- Php upgrade by @jaapio in #3540
- Chore: upgrade to symfony 6 by @jaapio in #3541
New Contributors
- @LeoVie made their first contribution in #3214
- @wouterj made their first contribution in #3218
- @bshaffer made their first contribution in #3244
- @amayer5125 made their first contribution in #3312
- @Hackwar made their first contribution in #3311
- @CraicOverflow89 made their first contribution in #3324
- @kudashevs made their first contribution in #3335
- @BirdboyBolu made their first contribution in #3439
- @peterhauke made their first contribution in #3441
- @linawolf made their first contribution in #3489
- @drupol made their first contribution in #3518
Full Changelog: v3.3.1...v3.4.0-rc