Most important issue that was solved in this release is the upgrade of php-parser to be able to handle php-7 syntax. Phpdocumentor is now able to parse files using php 5.5+ syntax, but will not process any of the new key words to documentation.
Beside the mentioned parser update a number of small issues are solved in this release.
- Pear install on windows should work from now.
- Improved error reporting messages
- Silent mode was restored. phpdocumentor will not produce any output when
--quietflag is used.
@Seerendering is improved for clean template.
- Resolved issues with
@inheritDocthat was not working as expected for interfaces.
In this release we have fixed a few minor yet oh so annoying bugs. The one that stands out is #1339, which will prevent misplaced errors from occurring that tell the user that only one
@package tag is allowed.
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.
In version 2.8.0 we had tried to fix an issue where people with a custom vendor dir could not use the phar distribution by allowing phpDocumentor to scan the composer.json in the current working directory if no other sources could be found.
This introduced a fatal issue where if you tried to use the phar distribution of phpDocumentor from a folder with a composer.json that it used that composer.json to autoload its library files. This of course caused a fatal error.
This hotfix release is all about reverting the offending change; after this the fatal errors caused by this are history.
Our apologies for the inconvenience and have fun documenting!
In version 2.7 there were a few fatal errors that happened in specific situations (as usual with bugs) and some changes were done to make integration with composer easier.
The most significant addition would be a new command line option
--cache-folder with which you can tell phpDocumentor to write the cache files to a specific location. This is awesome if you want to keep your cache and docs separate or when setting up a Continuous Integration environment.
The second most interesting is the
self-update command for the Phar installation for phpDocumentor. With this we follow in the footsteps of composer by adding the means to easily update your phar file an exchange it for a newer version of phpDocumentor.
A few days ago Mike van Riel posted a blog post (http://mikevanriel.com/entry/phpdocumentor-an-update) where he unveiled the changes that he is working on; combine that with the awesome contributions that we receive from the community means that interesting things are waiting on the horizon.
The changes that Mike is working on (which he lovingly dubbed
Operation Blue Lightning) are meant to speed phpDocumentor up by a more than significant amount by refactoring some of the architecture of phpDocumentor. This will quite surely take more than the usual six weeks that we use per release and as such we will release version 2.9 as soon as Mike has finished his work on Blue Lightning.
Progress of this release can be tracked using a milestone that was created for this purpose: https://github.com/phpDocumentor/phpDocumentor2/milestones/Blue Lightning.
Happy hacking and until next time!
ADDED: Argument "--cache-folder" to indicate where the cache is stored ADDED: `phpdoc self-update` command to the PHAR archive to update phpDocumentor with a single command FIXED: #423: Error report in responsive and responsive-twig template should hide empty results and update error counter next to the filename. FIXED: #573: Visibility filters in 'responsive' and 'responsive-twig' do not function properly FIXED: Several scrutinizer reported clean ups FIXED: If tmp was somewhere in path it would be incorrectly replaced FIXED: Several tests were added FIXED: It is now possible to install phpDocumentor using composer in a project using ZF 2.3 or higher FIXED: Fatal error: Call to a member function getParent() on a non-object in ConstantDescriptor.php FIXED: Fatal error: Call to a member function getParent() on a non-object in PropertyDescriptor.php REMOVED: Knp menu from composer.json because it was not used
phpDocumentor version 2.7 is here. In this release we have fixed various issues that have been reported and thanks to an amazing Testfest in Amsterdam the Code Coverage has risen with at least 8%! A huge thanks to all who participated there.
In preparation for Testfest we have switched the provisioning of the development machines to use Ansible instead of puppet and made some parts optional (such as profiling and doc generation), making it a lot easier to use the virtual machine.
Something which is not reflected in the changelog below is that we have automated the deploys of the phpDocumentor website and the releases for phpDocumentor itself. In the past a release took several hours to prepare and execute, now we can do 75% of it within 15 minutes. I hope that we can automate the remaining bit as well but that is something for the future.
For a complete list of changes, see the changelog below and enjoy the new version!
ADDED: A new writer that outputs a statistical extract from the collected data ADDED: Windows support for Ansible playbooks ADDED: 8% to 10% Code Coverage thanks to #testfest 2014 ADDED: #1347: Support for custom Vendor folders ADDED: Plugins can now be configured using parameters. ADDED: Complete support for @example ADDED: NamespacePrefix to LegacyNamespaceConverter plugin FIXED: Fatal error in MethodDescriptor when a parent was incorrectly called FIXED: Notice in '@see' handling FIXED: #1349: Configuration file was not found in working directory FIXED: Phing integration by re-instating the bootstrap class FIXED: Fixing type inference and variable length issues FIXED: Whether a method is inherited is shown again in XSL-based templates FIXED: Various minor bugs that became visible during the writing of tests FIXED: #1390: Source code paths were incorrect if the source was in folder FIXED: #1341: Icons in clean template were shown incorrectly FIXED: #1331: Not all validations were properly shown FIXED: #1077: Spaces in a path won't trip up libxml anymore CHANGED: Changed reference to deprecated Parsedown method parse() to text() CHANGED: Completely replaced Puppet with Ansible to provision contributor VMs CHANGED: Simpler provisioning for generic contributors; to do profiling another task is now needed CHANGED: Docs no longer refer to Short Description or Long Description but to Summary and Description per PSR-5
BREAKING: With 2.6.0 we inadvertently introduced crashes; here are the fixes!
FIXED: #1330: Fix crash when assembling package tags FIXED: #1326: Fix crash while generating routes in Twig templates