All Versions
30
Latest Version
Avg Release Cycle
154 days
Latest Release
1274 days ago

Changelog History
Page 1

  • v3.0.0 Changes

    October 27, 2020

    phpDocumentor v3.0.0 is here

    🚀 After years of development, we are finally able to announce the official release of phpDocumentor version 3. This release has large changes under the hood. We improved the way phpDocumentor detects types in your DocBlocks, allow all kinds of modern type notations, and we speed up the reflection of your code even more. A full parse of a framework with the size of Symfony is completed within a few seconds now.

    A brief overview of the largest changes since v2 below.

    0️⃣ A brand new default template!

    💅 We revised the way we are supporting templates and template customization. phpDocumentor was shipped with a large set of templates. Which was a burden to maintain. It was hard to customize the existing templates which forced our users to copy templates for even the smallest style changes. We have been redesigning our template system, which resulted in a brand new template called: Default.

    0️⃣ If you want to change the colours to match your project's own colour scheme, you just need to set a number of CSS variables. If you want to do more complex changes, you can simply overwrite parts of the template. Our new "Default" template is built with components in mind, using small twig template files. These allow you to change just that what you need to change, without having to create a whole template yourself.

    👀 Previously, XML templates seemed to be a nice way to write templates but the user experience was not what we expected from it. XSLT was too complex to write and with the improved template, we didn't feel the need for an XML based template anymore. We moved the existing XML template to a new twig based rendered XML output to keep a backward compatibility layer for tools consuming the XML structure.

    Full-text Search

    📚 The new Default template comes with a brand new full-text search engine. For your convenience, we added support for full-text search that works even when you are offline. This allows you to search for the elements you are looking for, without browsing the documentation for hours.

    👌 Support for native type-hints

    With the introduction of scalar type-hints, DocBlocks are not required for all function arguments anymore. PhpDocumentor will now read all native type-hints from your code. This allows you to focus on what is important, your code, and write proper descriptions. There will always be situations where you want to give more detailed type-hints for your function arguments, phpDocumentor will prioritize DocBlock type-hints over native types so you have total control.

    👌 Support for Generics

    📚 With more and more static analysis features being introduced in PHP; DocBlocks are changing. phpDocumentor is now able to understand generics and generic-like array notations; this allows you to use phpDocumentor with every modern codebase and gives you the advantage of clickable types in your documentation.

    🆕 New configuration structure

    🔧 To prepare for the future, phpDocumentor comes with a new configuration structure. We kept backward compatible support for the v2 format, so from a user point of view, there is nothing to worry about until you want to start using some of our future features. The XSD provided in this repository will help you to write the new configuration.

    👌 Improved description rendering

    💅 The new template is using a new description filter to process all inline tags in a description. This allows us to better style the templates. Inline links are now rendered as real links and references to other elements are also displayed as actual links.
    The inline @internal tags are now completely hidden when needed, and descriptions are now fully compatible with PSR-5.

    💥 Breaking changes

    phpDocumentor is a complex application and we do have a number of backward compatibility breaks. Below, we list the most important ones.

    ⬇️ Dropped plugin support

    phpDocumentor v2 was build using the micro-framework Cilex. With the introduction of Symfony Flex, the support of Cilex was stopped. So we switched to a full-blown Symfony-based application. This means that a lot of phpDocumentor's internals have been changed. Which also led to the drop of plugin support, for now. We are planning to re-introduce extensions in a better way in a future version.

    ⬇️ Dropped official Composer support

    🐳 phpDocumentor's libraries used to reflect your codebase are used in many projects. (i.e. Symfony, PHPUnit, Laravel, and phpstan; to name a few) Besides that, phpDocumentor is a complex application with a lot of dependencies. So it is very likely your project dependencies will conflict in some way with our dependencies. We will keep phpDocumentor available on Packagist but we will not provide any support using this installation method. phpDocumentor is shipped as a PHAR and Docker image, which contains everything you need to run phpDocumentor.

    What's next?

    📚 It has taken us a few years to get to this point, but this is not the end by far. Our vision with phpDocumentor is to make it the one-stop go-to tool when it comes to all your documentation needs. You can expect to hear more about the following features:

    • 📚 Including hand-written documentation using Restructured Text (our own documentation is already using an alpha version of this feature!)
    • 👌 Support for multiple versions of your project
    • Rendering in-line UML diagrams using PlantUML
    • 📚 Rendering multiple codebases into one set of documentation, for example: when you have Components
    • 📚 Directly generating documentation sources from a git repository
    • And much more!

    📚 We want to make sure that writing your documentation is as easy as can be.

  • v3.0.0-rc Changes

    February 09, 2020

    🛠 This first release candidate contains a number of bugfixes reported since the release of the first beta release. Thanks for all the reports we got! No new features are introduced in this release.

    Call for feedback

    🚀 PhpDocumentor is developed by a small team with limited time. Our current code base is not fully covered by automated tests. So we are not able to find all regressions or missing features. We would be very grateful when you provide us feedback on this beta release to improve the quality of phpDocumentor.

    🔄 Changelog

    The full changelog can be found in our changelog file

  • v3.0.0-beta Changes

    January 31, 2020

    🚀 The first beta release in the v3 release cycle. In the last few months, a lot of changes have been made to make the final result more exiting. This beta has a number of fixes regarding windows support.

    🏗 We extended the build pipeline using GitHub actions to improve the maintainability of the project. And removed a lot of outdated templates.

    0️⃣ The default template has been changed to a brand new default, which supports all-new features in phpDocumentor. Have a look at the demo of default and tell us what you think.

    Call for feedback

    🚀 PhpDocumentor is developed by a small team with limited time. Our current code base is not fully covered by automated tests. So we are not able to find all regressions or missing features. We would be very grateful when you provide us feedback on this beta release to improve the quality of phpDocumentor.

    🔄 Changelog

    The full changelog can be found in our changelog file

  • v3.0.0-alpha.4 Changes

    August 11, 2019

    🚀 A fourth alpha release in v3 line. Containing a large number of bug fixes reported by alpha version users. Thanks a lot for this feedback. We do appreciate the feedback we've got.

    Call for feedback

    🚀 PhpDocumentor is developed by a small team with limited time. Our current code base is not fully covered by automated tests. So we are not able to find all regressions or missing features. We would be very grateful when you provide us feedback on this alpha release to improve the quality of phpDocumentor.

    🔄 Change log

    ➕ Added

    • 🚀 Automated release process
    • ➕ Add php 7.3 to travis #2031
    • 0️⃣ Make progress bars the default output

    🗄 Deprecated

    • Nothing

    🛠 Fixed

    • 🛠 Fix(Dockerfile): configure: error: Please reinstall the libzip distribution #2099
    • Invalid tags will no longer prevent a whole file from being shown
    • 👌 Improved QA pipeline with better checks and more stable tests
    • ➕ Add bin folder for phpdoc to PATH in Docker image
    • 🔧 Make inclusion of sourcecode configurable
    • 0️⃣ Default visibility for v3 config should be all, and not just public
    • 🛠 Fix bug where a variadic argument was not detected as such
    • Enable Variadic checks and output visibility level when method cannot be found
    • ➕ Added additional information when a method cannot be found
    • 🌲 Rewrite logging to clean up output
    • 🐧 Ensure that the test works on both Mac and Linux
    • 🔧 Reintroduce the 'none' configuration file option
    • 🛠 Fix regresion on phpdoc v2 config parsing
    • 🛠 Fix for property tag
    • 🛠 Fix author tag
    • ⏪ Restore orginal pre v3 type system
    • ➕ Add missing ext-json
    • Deduplicate types
    • 👌 Improves autoloading detection
    • 🛠 Fix crash with ini_set when opcache is enabled on CLI

    ✂ Removed

    • ✂ Remove Zend-cache dependency
    • ✂ Remove Zend-filter dependency
    • ✂ Remove plugin support
    • ✂ Remove deprecated symfony/lts package
    • ✂ Remove JMS Serializer and refactor infra packages
    • ✂ Delete Scrybe
    • ✂ Remove translation support from phpDocumentor
    • ✂ Remove php 7.0 support, v3 needs PHP 7.1 or higher

    🔒 Security

    • Nothing
  • v3.0.0-alpha.3 Changes

    October 20, 2018

    🚀 A third alpha release in v3 line. Containing a large number of bug fixes reported by alpha version users. Thanks a lot for this feedback. We do appreciate the feedback we've got.

    Call for feedback

    🚀 PhpDocumentor is developed by a small team with limited time. Our current code base is not fully covered by automated tests. So we are not able to find all regressions or missing features. We would be very grateful when you provide us feedback on this alpha release to improve the quality of phpDocumentor.

    🔄 Change log

    ➕ Added

    • 🔖 Version command
    • phpstan max level checks
    • composer require checker to ensure the stability of the install
    • ➕ Add support for configuration file phpdoc.xml.dist #1997

    🗄 Deprecated

    • Nothing

    🛠 Fixed

    • 🏁 issue with path validation on windows #2011
    • 🛠 Fix issue with default command. phpdocumentor should execute run by default again.
    • 🛠 Fix issue with directory param. Path in now added to the conig so it will be parsed
    • Markers are detected again
    • 🔧 Configurable twig cache
    • ➕ Add support for multi-type array notation #607
    • 🛠 Fix template argument from command line
    • XML template processing works again
    • 0️⃣ Issue with config loading from non default location

    ✂ Removed

    • Nothing

    🔒 Security

    • Nothing
  • v3.0.0-alpha.2 Changes

    June 26, 2018

    2018-06-26

  • v3.0.0-alpha1 Changes

    December 24, 2017

    🚀 Our first release after months of development is a first huge step forward to improve the internals of phpDocumentor. This first alpha release should be a drop-in replacement for phpDocumentor v2. However we do strongly recommend to clear your phpDocumentor cache directory.

    🚀 This release should be able to parse your php 7+ projects without issues. We are still working on new features to be implemented like parsing of return types and scalar type hints.

    Call for feedback

    🚀 PhpDocumentor is developed by a small team with limited time. Our current code base is not fully covered by automated tests. So we are not able to find all regressions or missing features. We would be very grateful when you provide us feedback on this alpha release to improve the quality of phpDocumentor.

    🔄 Change log

    ➕ Added

    • 🆕 New Reflection v4 component.
    • 🆕 New Reflection Docblock v4 component
    • 🆕 New Type Resolver component
    • 🆕 New File finder component to replace our old Symfony based implementation.
    • 🐳 Docker image
    • ⚡️ All dependencies are updated to there latest versions.

    🗄 Deprecated

    • Nothing

    🛠 Fixed

    • 🐛 Bug fixes on @use and @link elements

    ✂ Removed

    • 👍 Symlink support
    • Validators
    • 👍 php 5 support
    • PEAR install method

    🔒 Security

    • Nothing
  • v2.9.1

    January 27, 2020
  • v2.8.2 Changes

    November 23, 2014
    FIXED:     Self-update for PHAR files
    FIXED:     Log now shows which elements do not have a summary
    FIXED:     When omitting markers the code now automatically picks TODO and FIXME
    FIXED:     Missing assets in new-black and abstract template
    FIXED:     phpDocumentor will error if the iconv extension is missing.
    
  • v2.8.1 Changes

    November 13, 2014
    FIXED:     Fatal error in phar file when used from a folder containing a composer.json