Phing Changelog

What's new in Phing 2.10.1

Feb 20, 2015
  • This release fixes the following tickets:
  • [1174] Phing can't work PHPUnit(PHAR)
  • [1173] [PHP Error] include_once(PHP/PPMD/Renderer/XMLRenderer.php): failed to open stream: No such file or directory
  • [1171] Socket condition does not work

New in Phing 2.10.0 (Feb 10, 2015)

  • This release contains the following new or improved functionality:
  • 'user.home' property on Windows fixed
  • Various documentation updates
  • Added support for listeners configured via phpunit.xml config
  • Basename task
  • Dirname task
  • Diagnostics task
  • FilesMatch condition
  • HasFreeSpace condition
  • PathToFileSet task
  • PhingVersion task/condition
  • PropertyRegex task
  • Recorder task
  • Socket condition
  • Xor condition
  • The following tickets were closed in this release:
  • [1168] PhpCodeSnifferTask incompatible with PHP_CS 2.2.0
  • [1167] include task can't really have mode
  • [1163] Phing and PHPMD via composer both
  • [1160] Documentation lists covereage-report styledir as required.
  • [1159] phpunit task ignores excludeGroups, groups attributes
  • [1152] Add socket condition
  • [1127] Removing .phar from the phar file makes it crash
  • [1120] Phing 2.8.1 does not support PDepend 2.0
  • [856] ZPK Packaging for zend server
  • [250] recorder task

New in Phing 2.9.1 (Dec 4, 2014)

  • This releases fixes a Windows regression and adds the following new functionality:
  • Http condition
  • Switch task
  • Throw task
  • The following tickets were closed in this release:
  • [1158] Phing fails to call itself with Exec task
  • [1157] ZIP task ignores ${phing.dir}
  • [1156] phing+windows copy file path
  • [1155] Add http condition
  • [1154] Can't read version information file
  • [1147] Resetting Phing::$msgOutputLevel

New in Phing 2.9.0 (Nov 27, 2014)

  • This release contains the following new or improved functionality:
  • Phing now supports HHVM
  • Stopwatch task added
  • Unit test coverage increased
  • Source code formatted to PSR-2
  • Various bugs and documentation errors fixed
  • Additionally, the following Trac tickets (see www.phing.info) were fixed in this release:
  • [1151] PHPMD Task does not support the format tag
  • [1149] Exclude extra files from composer package
  • [1144] Reduce PhingCall/Foreach log messages
  • [1140] DefaultLogger is not default logger
  • [1138] ParallelTask - error in subtask should fail build
  • [1135] obfuscation-key option for IoncubeEncoderTask does not work
  • [1133] copytask haltonerror = "false" function failure when source dir not exists
  • [1130] Add documentation for Manifest task
  • [1129] ManifestTask md5 hash vs FileHashTask md5 hash not the same
  • [1128] Imported target won't run until there is one with the same name in main build.xml
  • [1123] ApplyTask outputProperty doesn't append
  • [1122] Untar task does not preserve file permissions
  • [1121] Please fix the syntax error in PHP Lint
  • [1104] ArchiveComment Parameter for ZipTask
  • [1095] ReferenceExistsCondition returns true for all UnknownElements
  • [1089] phing -l is listing imported targets twice
  • [1086] Support for running on HHVM
  • [1084] pdepend task does not find dependencies when installed by composer
  • [1069] PHPUnitTask formatter does not create directory if specified "todir" does not exist
  • [1068] Phingcall and Import issues
  • [1040] Composer task has no documentation
  • [1012] SymlinkTaks overwrite fails if target doesn't exist
  • [965] includePathTask: Allow appending and replacing
  • [945] several phpunit task problems
  • [930] Attribute logoutput to property task
  • [796] Can't delete all subdirectories without directory itself
  • [441] Reformat Phing source code to PSR-2

New in Phing 2.8.2 (Jul 22, 2014)

  • Fixed:
  • [1119] #1111 breaks PHPLint task
  • [1118] Property "X" was circularly defined

New in Phing 2.8.1 (Jul 3, 2014)

  • This patch release fixes a regression preventing Phing from being used on machines where PEAR is not installed, as well as another (unrelated) issue.
  • [1114] PHP Fatal Error using Phing on machines without PEAR
  • [1111] setting PhpLintTask interprete

New in Phing 2.8.0 (Jul 3, 2014)

  • New or improved functionality:
  • The rsync task can now handle remote connections without specifying a username
  • The rsync task now creates remote directories as needed by default
  • Support for PHP MD 2.*
  • Various tasks now support dependencies loaded through composer
  • AutoloaderTask added
  • Various bugs and documentation errors fixed
  • Additionally, the following Trac tickets (see www.phing.info) were fixed in this release:
  • [1108] pdosqlexec doesn't throw exception for the non-first SQL instruction
  • [1106] Add .git and associated files to defaultexcludes attribute
  • [1105] PHPUnitTask: attributes 'groups' and 'excludeGroups' not documented
  • [1102] Phing is not compatible with PHPMD 2.0.0 beta
  • [1101] Add (optional) external deps to suggest section in composer.json
  • [1100] Add composer / PHAR installation instructions to README & web pages
  • [1099] Allow loading of externals through composer [meta ticket]
  • [1091] Phing is not compatible with PHPUnit 4.x
  • [1090] PearPackageFileSet copies files with baseinstalldir incorrectly
  • [1085] Conditions section (5.8) does not correctly link to mentioned tasks
  • [1084] pdepend task does not find dependencies when installed by composer
  • [980] Support for .dist files
  • [975] Included JSmin has non-free license
  • [964] includePathTask: talk about appending/prepending

New in Phing 2.7.0 (Jul 3, 2014)

  • New or improved functionality:
  • Support for PHP CodeSniffer 1.5, PHP Copy&Paste Detector 2.0 and PHPLOC 2.0
  • Composer support for PHPCPD and PhpDocumentor tasks
  • Fixed / improved error handling in various places
  • More unit / regression tests added
  • Various bugs and documentation errors fixed
  • Additionally, the following Trac tickets (see www.phing.info) were fixed in this release:
  • [1083] PhpDocumentor2Task: add support for default package name
  • [1082] Tasks in root target are executed twice
  • [1081] Documentation of AvailableTask does not link to conditions page
  • [1078] IoncubeEncoderTask does not support PHP 5.4
  • [1073] Phing silently died, when cant read build.xml
  • [1070] PHPCS 1.5.0 breaks PHPCodeSniffer Task
  • [1064] Formatter 'brief' not implemented when using Unittest task
  • [1063] PHPCPD 2.0 breaks PHPCPD Task
  • [1062] AvailableTask throws exception when filepath contains duplicates
  • [1059] phing exits with return code 0 when there is unkown argument
  • [1057] pdo exception thrown from pdosqlexec not properly handled
  • [1056] filesyncTask: problem (error?) with verbose (-v) option
  • [1054] Missing or erroneous definition in phing-grammar.rng
  • [1053] Add composer support for phpdoc2 task
  • [1051] phing 2.6.1 - impossible upgrade
  • [1045] PHPLocTask broken with recent phploc updates
  • [1044] Using fileset in echo does not list subdirectories
  • [1042] Fix UnknownElement wrapping and configuring
  • [1035] phpcpd tasks does not find dependencies when installed by composer
  • [1034] Improving debuggability of errors in custom code
  • [1032] FileSync Port
  • [1030] JsMin task creates directories with 0700 permissions
  • [1028] Change visibility of FailTask variables
  • [1021] MailTask backend configuration
  • [1010] Invalid error about refid attribute when specifying multiple targets
  • [1009] certain liquibase tasks (rollback, tag and update) do not check return value
  • [994] Clarify pdoexec autocommit/transactions
  • [991] GitCommit: add fileset support
  • [984] Improve documentation about including custom tasks
  • [983] Selenium with PHPUnit: browser configurations are not processed
  • [978] svn switches: recursive
  • [976] phpunitreport: broken html for test suite names containing "/"
  • [650] Namespace support for extensions (PSR0 support)

New in Phing 2.6.1 (Jul 3, 2014)

  • [1041] Properties within then/else blocks are not expanded

New in Phing 2.6.0 (Jul 3, 2014)

  • New or improved functionality:
  • Docbook5 documentation is now the main documentation; output targets are 'hlhtml', 'chunkhtml', 'hlpdf', 'epub' and 'webhelp'
  • HttpRequest task supports POST request
  • PharPackage task supports PKCS#12 certificate stores
  • WikiPublish task was added
  • Smarty task is now compatible with Smarty 3
  • A new logger 'TargetLogger' was added, displaying the execution time for each target
  • Composer task and package were updated
  • More unit / regression tests added
  • Various bugs and documentation errors fixed
  • Additionally, the following Trac tickets (see www.phing.info) were fixed in this release:
  • [1037] PropertyTask docs is wrong
  • [1036] Error in ApplyTask->executeCommand()
  • [1029] PhpDocumentor2 task broken with latest phpdoc version
  • [1027] RegexpMapper uses deprecated PREG_REPLACE_EVAL
  • [1025] PHPLocTask fails when installed via composer
  • [1023] Argument 1 passed to IniFileTokenReader::setFile() must be an instance of PhingFile
  • [1020] [PHP Error] Illegal string offset 'filename' [line 149 of /usr/share/pear/phing/tasks/ext/ExtractBaseTask.php]
  • [1015] phing does not allow phpunit to echo
  • [1011] Problem with spaces in output redirection path
  • [1004] does not work because task definition is missing in defaults.properties + another bug
  • [1003] 2 php syntax bugs in GitCommitTask
  • [1000] Make phing.phar work out of the box
  • [999] phing-2.5.0.phar Can't load default task list
  • [993] passthru will redirect stderr
  • [990] Prompting for a property value when it is not set results in a repeated input message
  • [985] Git Commit Task missing from docs
  • [981] FileUtil::copyFile(): $preserveLastModified causes empty symlink target file
  • [970] FileSyncTask missing from docbook5 documentation
  • [966] phing unit tests nice on all platforms
  • [920] Load phpdepend dependency only when they are used
  • [906] Move to docbook5 documentation
  • [438] pdosqlexec: add delimiterType=none (default), clarify delimiter documentation (was: pdosqlexec triggers segmentation fault)

New in Phing 2.5.0 (Feb 18, 2013)

  • Fixes:
  • [979] svncommit: invalid switch ignoreexternals
  • [977] phpunit Task doesn't support @codeCoverageIgnore[...] comments
  • [972] SvnCopyTask: remove "force" from documentation
  • [971] TokenSource does not work
  • [969] PHPUnit task does not report diffs for failed assertions
  • [968] Proper handling of STDOUT and STDERR
  • [963] XSLT task fails with fatal error on PHP 5.4
  • [962] DbDeploy: infinite loop in case if directory not found
  • [961] DbDeploy: checkall output isn't informative
  • [960] Documentation of Dbdeploy task
  • [959] Bug in SvnListTask Version 2.4.14
  • [958] Property wrapped in if/then structure is not substituted by it's value
  • [954] Paths becoming part of S3 file names on Windows
  • [953] Add PHP extension check to Available Task
  • [952] Properly document how to load environment variables as properties
  • [951] S3Put throws "Source is not set" exception
  • [949] SymfonyConsoleTask improvements: checkreturn and output of command
  • [947] AvailableTask does not work on unix domain sockets
  • [946]

New in Phing 2.4.14 (Nov 30, 2012)

  • [944] phing/phingdocs bad md5sum
  • [943] If task with "equals" directly in "project" tag does not work
  • [942] Typo in tasks/ext/dbdeploy/DbmsSyntaxOracle.php
  • [939] Add username/password to svn info/lastrevision/list/log task docs
  • [938] XSLT filter fails when libxslt security present in php

New in Phing 2.4.13 (Nov 30, 2012)

  • [933] PHPLoc 1.7 broken
  • [931] PHP_CodeSniffer throws errors with CodeSniffer 1.4.0
  • [929] Can not pass empty string (enclosed in double quotes) as exec task argument
  • [928] Fatal error with ZipTask when zip extension is not loaded
  • [927] PHPCPD upgrade breaks PHPCPD task
  • [926] FtpDeployTask: Missing features and patch for them (chmod and only change if different)
  • [925] Problem with spaces in error redirection path.
  • [924] Update to PEAR::VersionControl_SVN 0.5.0
  • [922] Introduce build file property that contains the build file's directory
  • [915] path with special characters does not delete
  • [909] Replace __DIR__
  • [905] Add filterchain support to the property task
  • [904] TarTask should raise error if zlib extension not installed
  • [903] Cannot redeclare class phpDocumentor\Bootstrap
  • [902] SvnBaseTask and subversion 1.7
  • [901] phpunitreport create html's classes files in wrong folder
  • [900] phpdoc2 example has error
  • [895] error in includepath when calling more than once
  • [893] Phing will run bootstrap before first task but clean up autoloader before second task
  • [892] Concatenate property lines ending with backslash
  • [891] Symfony console task: space within the arguments, not working on windows
  • [890] Allow custom child elements
  • [888] Documentation error for CvsTask setfailonerror
  • [886] Error throwing in PDOSQLExecTask breaking trycatch
  • [884] svnlist fails on empty directories
  • [882] Dbdeploy does not retrieve changelog number with oracle
  • [881] Silent fail on delete tasks
  • [880] Add phploc task
  • [867] phpcpd task should check external dep in main()
  • [866] Code coverage not showing "not executed" lines
  • [863] MoveTask ignores fileset
  • [845] GrowlNotifyTask to be notified on long-task when they are finished
  • [813] Allow custom conditions
  • [751] Allow loading of phpunit.xml in phpunit task
  • [208] ReplaceRegexp problem with newline as replace string

New in Phing 2.4.12 (Nov 30, 2012)

  • [877] Add 'level' attribute to resolvepath task
  • [876] JslLint Task is_executable() broken
  • [874] ParallelTask.php is not PHP 5.2 compatible
  • [860] SvnBaseTask: getRecursive
  • [539] Custom build log mailer
  • [406] an ability to turn phpLint verbose ON and OFF