Skip to content

Latest commit

 

History

History
2066 lines (1860 loc) · 157 KB

CHANGELOG.md

File metadata and controls

2066 lines (1860 loc) · 157 KB

P H I N G

May 1, 2024 - Phing 3.0.0

Finally, the first stable release of Phing 3.0 is here!

Please refer to the upgrade guide to read all about (backwards incompatible) changes from Phing 2.0 to Phing 3.0.

The following issues and pull requests were closed in this release:

  • Fix(php-cs-fixer.dist.php): Use absolute paths from DIR #1819
  • gitdescribe outputProperty spurious EOL character captured in property #1814
  • Property File Loading Order and Variable Reference Issue #1784
  • Found unconstructed IntlDateFormatter #1783
  • Add a passthru attribute to PHPStanTask so it can print errors #1767

Nov 11, 2023 - Phing 3.0.0 rc6

The following issues and pull requests were closed in this release:

  • Replacetokens treating values as boolean #1719

May 9, 2023 - Phing 3.0.0 rc5

The following issues and pull requests were closed in this release:

  • Remove phpcpd and phploc tasks #1708
  • Add all task-related require-dev dependencies to suggest section in composer.json #1704
  • phploc/phploc dependency in require blocks upgrade to PHPUnit 10+ #1703
  • Migrate to monorepo #1693
  • Regression in XmlPropertyTask RC3 -> RC4 #1692
  • Fix XmlPropertyTask #1691
  • Document sanitizing of text in Append task #1673
  • Roll-out pharLocation "hack" to other tasks #1663

Jan. 20, 2023 - Phing 3.0.0 rc4

The following issues and pull requests were closed in this release:

  • XML\RNG Validation Wierdness #1688
  • Uncaught Error: Call to undefined method ReflectionUnionType::isBuiltin() #1686
  • FilesystemIterator bug in PHP 8.2 #1685
  • TstampTask with ICU syntax #1683
  • TstampTask impacted by deprecation #1682
  • Fix wrong boolean handling #1680
  • Update to 'symfony/yaml ^6' #1679
  • Update VisualizerTask tests #1676
  • Add support for PHP 8.1 #1674
  • fixing DirSet toString returning files #1670
  • DirSet toString returns files #1669
  • Remove deprecated command attribute from ExecTask #1662
  • Symfony console 6 support #1659
  • Enable symfony 6 support #1658
  • Missing php namespace in phpunit-noframes.xsl for phing-3.0.0-RC3.phar release #1656
  • Type hasfreespace condition #1653
  • PHP 8.1 compatibility #1652
  • Update PHP requirement in Phar manifest #1650
  • Align usage #1648
  • Upgrading filesize #1644
  • Add ExecTask suggestions #1643
  • Fix PHP 8.1 tests and confirm compatibility #1642
  • Finalize UPGRADING.md document #1640
  • bump version phing/task-jshint in composer.lock #1639
  • Suggestions for ExecTask #1638
  • Fix open task test #1637
  • Spawn open task #1636
  • Add tests for StringHelper #1603
  • Fix XmlLintTask error handler #1599

Sep. 9, 2021 - Phing 3.0.0 rc3

The following issues and pull requests were closed in this release:

  • [stopwatch] Added test and cleanup. #1635
  • [pdosqlexec] Using traits #1634
  • [pdosqlexec] Added failOnConnectionError / Removed obsolete caching attribute #1632
  • [pdosqlexec] Added more attributes. #1631
  • [delete] Removed duplicated log entry #1630
  • [mkdir] Fixed PHP 8 compat #1629
  • [pdosqlexec] Fixed PHP 8 compat, Code Cleanup and tests #1628
  • Error with MkdirTask #1619
  • Remove the default value before the required parameter. #1618
  • Add OpenTask #1617
  • Add support for formatter nested tag to the phpcs task #1614
  • bump version phing/task-svn in composer.lock #1613

Aug. 31, 2021 - Phing 2.17.0

This patch release fixes some PHP 8.0 compatibility issues.

Jun. 28, 2021 - Phing 3.0.0 rc2

The following issues and pull requests were closed in this release:

  • Add support for setting standard, outfile and format to phpcs task #1612
  • Update SizeSelector schema #1611
  • [core] Updated dependencies #1593
  • [core] Added additional tests #1592
  • [XmlLogger] cleanup #1591
  • [core] Added openssl and phar.readonly to pipeline #1590
  • [PharPackageTask] Added attributes to test build #1589
  • [core] Fixed ExtendedFileStream register wrapper #1588
  • [core] Cleanup some tests. #1587
  • [Location] Added test #1586
  • Refactoring how Phing handles boolean strings #1584
  • Use constant for buildfile name #1583
  • Scrutinizer issue fixes #1581
  • Scrutinizer issue fixes #1580
  • Scrutinizer issue fixes #1579
  • Scrutinizer issue fixes #1578
  • Scrutinizer issue fixes #1577
  • [core] Scrutinizer issue fixes #1576
  • [XmlLintTask] Added error logs. #1575
  • [core] Fixed slack url and added security advisor dependency #1574
  • [core] Updated Deps - added funding to composer #1573
  • [core] Updated deps #1572
  • [core] Code cleanup on test files #1570
  • php-cs-fixer fixed covers #1568
  • [core] php-cs-fixer run #1566
  • [core] Moved test classes to own namespace Phing\Test\ #1565
  • [FileUtils] split up long method #1564
  • [core] PHP compat issues #1563
  • Add comment in test to prevent php8.1 compat issue #1562
  • Update documentation links #1561
  • [condition] Added phpversion condition #1560
  • [core] Removed unused exception classes #1559
  • [core]Moved Timer function to DefaultClock #1558
  • [Logger] Fixed StatisticsReport #1557
  • [core] Removed deprecated NullPointerException.php #1556
  • Updated PEAR\Exception -> composer update #1555
  • Add days and hours to DefaultLogger::formatTime method #1554
  • Update report bugs to use issues link #1551
  • Remove currentTimeMillis #1545
  • Fix "depends on" in target list #1544
  • [ReflexiveTask] Call to a member function isDirectory() on null #1540

Feb. 17, 2021 - Phing 3.0.0 rc1

The following issues and pull requests were closed in this release:

  • [ReflexiveTask] Added exception for missing filterchain #1538
  • [ReflexiveTask] Fixed behavior, if file attribute points to a directory. #1537
  • [PropertySelector] Fixed group selection #1536
  • [core] Fixed deprecation warnings - PHP ^8.1 #1535
  • [TryCatchTask] Rectify the logic of the "finally" clause #1534
  • [PhingTask] Fixed dot notation #1533
  • Fix PhpEvalTask bugs with functions taking scalar and multidimensional array params #1531
  • Moved aws related tasks to own repo #1530
  • Moved SassTask to own repo #1529
  • Moved PhpUnitTask to own repo #1528
  • Moved SonarTask to own repo #1527
  • Moved analyzer tasks to own repo #1526
  • Moved http tasks to own repo. #1523
  • Move pdo tasks and path-as-package task to system scope #1521
  • Moved svn tasks to own repo #1520
  • [core] Moved XmlPropertyTask and PharMetadata to system tasks. #1519
  • [core] Move archive tasks #1518
  • Moved DbdeployTask to own repo #1516
  • Rename "master" branch to "main" #1514
  • Moved VisualizerTask to own repo #1513
  • Moved inifile task to own repo #1512
  • [SassTask] [core] - Fixed Filesystem::listContents for numeric filenames. #1511
  • Removed unused imports #1510
  • Use Phing\Type\Element.*Aware traits #1508
  • Finalize namespace-ification #1506
  • Moved git tasks to own repo #1505
  • Moved HG tasks to own repo #1504
  • Fixed windows line ending issue #1500
  • Fixed line ending issue on windows #1499
  • excludesfile example #1498
  • Updated composer dependencies #1496
  • Added ModifiedSelector. #1487
  • [PHPUnitTask] Removed PHPUnitTestRunner7 #1486
  • [Pear*] Removed unused test xml file. #1485
  • [phploc] Fixed test case. #1484
  • [phploc] Json formatter not tested #1483
  • Size helper #1482
  • [PatternSet] Simplified __toString method. #1481
  • Standardize file size units #1480
  • [core] Fixed codecoverage in action with latest ubuntu #1478
  • Show suggestion on unknown target #1477
  • [BindTargets] Added BindTargets Task #1476
  • Changed build trigger handling #1474
  • [DateSelector] Add tests and correct behavior #1473
  • [core] Fixed delta in TimerTest.php #1471
  • [core] Move internal build steps from travis to github #1470
  • Updated Dependencies #1469
  • Changed arg passed to phploc #1457
  • Add tests and correct TouchTask behavior #1456
  • [PHPUnitTask] Added haltondefect argument #1455
  • [TouchTask] Test doesn't check that files were created with the correct timestamp #1454
  • [TouchTask] millis attribute leads to invalid dates #1453
  • [TouchTask] allows invalid datetime values to be specified #1452
  • [PHPUnitTask] Fixed processIsolation setting #1451
  • [PHPUnitTask] renamed formatter #1448
  • [core] Removed unused excludes in test build. #1447
  • [core] Work on PHP 8 #1445
  • [DeleteTask] Fixed that only variables can be passed by reference. #1444
  • [PHPUnitTask] Removed includes #1443
  • [core] Fixed tests #1442
  • [core] Added PHP 8.0 and 8.1 snapshot to travis #1441
  • Fix deprecated ReflectionParameter::getClass() #1440
  • [PlainPHPUnitResultFormatter] Added risky counter #1439
  • [PHPUnitResultFormatter] Added risky test counter to summary #1438
  • [CoverageMergerTask] Fixed code coverage handling #1437
  • Add new optional clover-html formatter. #1436
  • [PHPUnitResultFormatter] Added warning and risky counter #1435
  • [PHPUnitTask] Added failure handling for risky and warning tests #1434
  • [PHPUnitTask] Added missing halton* methods. #1433
  • Added coverage-* related test setup #1432
  • Make use of PHPUnit 9 code coverage and reporting #1431
  • Make better use of PHPUnit 9 code coverage and reporting #1430
  • [PHPUnitReportTask] Fixed windows detection #1429
  • Delete unused. #1428
  • ComposerTask tests don't need Composer on the path #1427
  • ComposerTask test failing if Composer isn't on the path #1426
  • SonarConfigurationFileParser tests fail on cygwin (Windows) #1425
  • Fix ini parser must ignore ini sections #1421
  • Fixed env handling for windows #1419
  • Environment argument for ExecTask is broken for windows #1417
  • Move composer vaidation to action #1415
  • Added GITHub action workflow. #1414
  • Fixed Windows codepage setting for utf8 beta. #1413
  • Updated dependencies #1412
  • Windows & UTF-8 #1399
  • Fix Support for Nested Exec Env Tag - Fixes #1395 #1396
  • ENV SubTask Not Working as Expected #1395
  • Added new version of FtpDeloyTask #1394
  • Variable properties which could not expanded should be null. #1393
  • Error resolving proxy #1391
  • Fix visualizer bug #1390
  • [HttpRequest] Fixed verbose mode. #1389
  • [phploc] Fixed broken task for PHP >= 7.3 #1387
  • Downgraded guzzle to 6.5 #1386
  • httpget broken by guzzle update #1385
  • Could not create task/type: 'scp'. Make sure that this class has been declared using taskdef / typedef. (3.0.0-alpha4) #1372
  • VisualizerTask bug #1388
  • Reliance on PEAR packages despite being removed from PEAR itself #1370
  • [SubPhing] Fail on error should also be passed to the phing task. #1361
  • Cleanup test build script #1332
  • Added missing Target::dependsOn implementation #1303
  • Declaration of case-insensitive constants is deprecated - replace Net_FTP #1224

Jan. 29, 2021 - Phing 2.16.4

This patch release fixes some PHP 8.0 compatibility issues.

Jul. 4, 2020 - Phing 3.0.0 alpha 4

The following issues and pull requests were closed in this release:

  • [PatternSet] Added missing test. #1350
  • Phpcstask fileset support #1349
  • Removed PhpCodeSnifferTask #1346
  • [test/build.xml] Removed adhoc tasks and use bootstrap #1336
  • Fixed condition #1334
  • Added extension points #1324
  • Added augment reference task. #1323
  • Added ClassConstants filter #1322
  • Removed ansible support in favor of docker #1321
  • Moved Zend Server Development Tools Tasks to own repo #1320
  • [PathConvert] Fixed validation on attributes. #1319
  • [FileUtils] Fixed file separator/pathSeparator as not always set. #1318
  • Fixed phpunit warnings #1317
  • [subphing] Added bulk project execution task. #1316
  • [build.xml] Fixed deprecated warning. #1315
  • [TruncateTask] Simplified new file creation. #1314
  • [AdhocTaskdefTask] Fixed is subclass of task test. #1313
  • [Target] Added location support. #1312
  • [Phing] Used finally to simplify exc handling #1311
  • [Phing] Removed not needed method #1310
  • [Phing] Removed deprecated setting of track_errors #1309
  • [Phing] Simplified os family condition #1308
  • [Phing] Removed php compat condition #1307
  • Moved JsHintTask to own repo #1306
  • [PhingTask] Fixed exception handling and condition #1305
  • Moved JsMinTask to own repo. #1304
  • [PhingTask] Fixed multi same property #1296
  • [PhingTask] Added native basedir support. #1295
  • [WIP] [PhingTask] Fixed possible infinity loop #1294
  • [ForeachTask] Cleanup code #1293
  • [PhingTask] Cleanup code. #1292
  • [PhingTask] Added output argument. #1291
  • [MonologListener] Fixed logging for warning #1290
  • [PropertyTask] reduce complexity by extract method #1287
  • Moved phpdoc task to own repository. #1286
  • [MoveTask] Added granularity support #1278
  • [TouchTask] fixed log output setting datetime #1277
  • [CopyTask] Added granularity support on LMT of src #1276
  • [FileUtils] Added granularity support #1275
  • [MoveTask] Added preservepermissions support. #1274
  • [PhingTask] Added some more general tests #1273
  • [PhingTask] Added override tests #1272
  • [PhingTask] Added ref no inheritance and path test #1271
  • [PhingTask] Added reference inheritance test #1270
  • [TruncateTask] fixed unit suffix on length/adjust #1269
  • [MoveTask] Fixed default overwrite behavior. #1268
  • Moved ssh tasks to own repo #1267
  • Moved zendcodeanalyser task to own repo #1266
  • Moved SmartyTask to own repository. #1265
  • [PhingTask] added inherit basedir tests #1264
  • [PhingTask] Added some more tests #1263
  • [PhingTask] Added test implementations #1262
  • [PhingTask] add xml test files #1261
  • [core] Removed not used assignment #1260
  • [Task] bind task to another task #1259
  • [PropertyHelper] Reduced complexity #1258
  • [Project] Added inherited properties getter. #1257
  • [TouchTask] Added mapping support. #1256
  • [ZipTask] fixed basedir #1255
  • [ExecTask] Fixed resolving env vars #1254
  • Using ExecTask with environment variables #1253
  • Moved ioncube tasks to own repo #1249
  • Moved PhkPackageTask to own repo. #1248
  • Simplify visualizer tests #1247
  • Moved FtpDeployTask to own repo #1246
  • VisualizerTask breaks test execution #1245
  • Provide --config-option switch for svn tasks #1244
  • [PhingCallTask] set target on callee #1243
  • ZipTask cannot create zip using basedir #1242
  • [PhingTask] Added full subproject handling. #1241
  • Fixed error, if error_get_last equals to null #1240
  • Added regression tests #1239
  • Added echoxml task #1238
  • Added support for creating custom attributes in the parsing phase. #1237
  • [DiagnosticsTask] Fixed composer warning. #1236
  • Moved coverage tasks to new repo #1230
  • Removed ExportPropertiesTask in favor of EchoProperties task #1229
  • Moved Liquibase Tasks to an ext repo. #1228
  • [PropertyTask] Added "required" attribute #1226
  • Added custom task/type support #1225
  • Fixed IsTrueCondition #1221
  • [PropertyTask] Added type hints #1218
  • [EchoTask] Fixed type handling. #1217
  • Removed memory limit from travis ini and some refactor #1216
  • Added posix permission selector #1209
  • Added multi line description support, … #1208
  • SassTask mangles the CLI command depending on attribute order #1206
  • Monolog listener #1204
  • Value "0" is impossible #1201
  • Incorrect type cast string-boolean #1200
  • Updated dependencies #1195
  • [WIP] Symfony 5 compat #1194
  • replace ignore-checks in tests #1193
  • replace @expectedException* anotation #1191
  • [FileList] Fixed iterator #1190
  • Removed unused lines of code. #1189
  • fix coding style for test files #1188
  • Allow symfony/* ^5.0 #1185
  • Fixed indention #1183
  • Move from PhingFile to SplFileObject - part 1 #1178
  • Fixed not called Phing::shutdown() #1177
  • Parameter unittests #1176
  • Update ComposerTask code & documentation #1175
  • fix coding style issues #1174
  • Added PrefixLines test #1168
  • Added SilentLoggerTest #1167
  • Create TimestampedLoggerTest #1166
  • Added test for StatisticsListener #1165
  • [DefaultLogger] added unit test for buildFinished #1164
  • CompserTask documentation #1163
  • PSR12 and Object Calisthenics #1161
  • get_magic_quotes_runtime() deprecated in 7.4 - replace HTTP_Request2 #1160
  • Added SleepTaskTest #1153
  • Fixed PSR12 related errors by phpcbf #1152
  • Add unit test for Description addText method #1151
  • Added bootstrap to scrutinizer config #1150
  • [PhingTest] Added test case for printUsage #1149
  • Fixed notice in JsonLogger. #1148
  • [DataTypeTest] Added missing license and property #1147
  • Datatype unit-tests #1146
  • [StatisticsListener] Fixed PHP Error #1145
  • The variable '$php_errormsg' is deprecated since PHP 7.2; Using error_get_last() instead #1144
  • Rename __import method #1143
  • StringReader should be an InputStreamReader #1141
  • PDOSQLExecTask constructor error #1138
  • update coding style #1137
  • add Build-Matrix #1136
  • FileHashTask should always generate a file. #1135
  • Added loglevel attribute to the phpcs task. #1134
  • Removed duplicated code. #1133
  • update dependencies #1132
  • Added ext-intl to appveyor.yml #1131
  • add editorconfig, update gitattributes #1130
  • [WIP] DirectoryScanner and AbstractFileSet improvements. #1034
  • Auto-discover custom tasks when installed through Composer #654
  • MkdirTask behaves the same as "mkdir" Linux command and respects POSIX ACL #591

Feb. 3, 2020 - Phing 2.16.3

This patch release fixes additional PHP 7.4 deprecation issues.

Jan. 3, 2020 - Phing 2.16.2

This patch release fixes the following issue:

  • PHP-7.4: PHP Deprecated: Array and string offset access syntax with curly braces #1210
  • Add symfony/yaml ^2.8 to restore PHP 5.4 compatibility #919

Sep. 13, 2019 - Phing 3.0.0 alpha 3

The following issues and pull requests were closed in this release:

  • Fix some PHP 7.4 specific deprecations. #1127
  • Bump scssphp/scssphp from 1.0.2 to 1.0.3 #1126
  • Bump aws/aws-sdk-php from 3.108.2 to 3.110.7 #1125
  • Bump phpunit/phpunit from 7.5.14 to 7.5.15 #1124
  • Code cleanup #1122
  • database condition #1121
  • Added verbose log to mkdir if dir exists already. #1120
  • Get rid of useless code in PhingFile #1119
  • Reduced copy paste #1118
  • Removed redundant else branch. #1117
  • Fixed some inspections #1116
  • Fixed low deps issue #1115
  • Added circular reference check. #1114
  • Test suite fails for travis on php 7.1 with low deps #1113
  • Fixed some more inspections #1111
  • Fixed some more ci issues. #1110
  • Fixed scrutinizer issue #1109
  • IntrospectionHelper should not convert to bool, if a typehinted string was found. #1108
  • Updated scrutinizer config #1107
  • Only send coverage report if not phpcs build #1106
  • Added iterator support for FileList #1105
  • Added reference check for FileSet::getIterator() #1104
  • foreach with filelist causes fatal error #1103
  • PSR-12 #1097
  • [phpcs] phpcs 3 compatible task #1096
  • Update obsolete phpstan --errorFormat flag with correct one #1095
  • istrue treats undefined property as "true" #1093
  • PHPStanTask with Fileset support #1091
  • Reduced code #1090
  • [HttpCondition] Removed deprecated constant php 7.3 compat #1089
  • Update docker instructions #1087
  • Feature/visualizer theming #1084
  • Error while using AutoloaderTask #1080
  • [StopWatch] Fixed visibility of action methods. #1079
  • Used getDataTypeName instead of legacy code #1073
  • Added missing license headers. #1072
  • Removed deprecated scpsend alias #1071
  • Removed not used test file. #1070
  • [ApplyTask] Fixed wrong condition #1069
  • PHPUnit removed hack #1061
  • Removed PHPUnit\Util\Log\JUnit::setWriteDocument() #1060
  • Made some more args optional #1059
  • Made some args optional. #1058
  • Removed unused method #1056
  • fieldsets not supported by phpstan task #1055
  • Dependencies missing in PHAR #1053
  • Reduced code #1050
  • Removed duplicate and unused method #1049
  • Added StatisticsListener to the travis builds #1048
  • Reduced duplicate code #1047
  • Added missing precondition checks for references #1045
  • Fixed DirectoryScanner - wrong method call #1044
  • Fixed line ending issue in SuffixLines #1043
  • Fixed relaxng validation errors #1042
  • SuffixLines filter does not preserve line endings #1041
  • Added event debug logs. #1040
  • Added support for object::__toString inside EventObject::__toString #1039
  • Added version upperbound to pear/http_request2 #1038
  • LineContains uses readLine #1033
  • Replaced while...each loops with foreach. #1032
  • Bug when using filter on large files #1030
  • Improved debug log - ref to string if possible #1029
  • Added test cases. #1028
  • Fixed single test execution of phpunit tests. #1027
  • Fixed phing test execution under PHPUnit 8 #1024
  • PatchTask extensions #1023
  • Feature/visualizer task #1019

Jan. 4, 2019 - Phing 3.0.0 alpha 2

The following issues and pull requests were closed in this release:

  • No need for verbose log on ref change for UE #1007
  • Removed include_once #1006
  • Opened IoncubeEncoderTask to all php versions #1005
  • Added DisableInputHandler #1004
  • Feature request: Disable Input #1003
  • Third $parentDir param should be optional #1002
  • Extended tstamp task. #995
  • Added test for basename task. #994
  • Removed obsolete windows test file #993
  • Skipped git task tests on windows #992
  • StopwatchTask should use DispatchTask #991
  • Use dedicated PHPUnit assertions for better error messages #990
  • Refactor foreach loop into in_array call #989
  • Appveyor should not update composer deps #987
  • Added exception message to verbose output. #986
  • Fix PropertyCopy documentation #985
  • Fix coding standards issues and docblocks. #982
  • Make PHPStan task generate error messages and allow skipping see #980 #981
  • PHPStan Task does not fail during errors #980
  • The introduction seemed a bit dated, so updated it a bit. Also added some minor punctuation fixes. #979
  • Added Svn Revert Task #977
  • Fixed file comments for better API generation #976
  • Removed outdated todo #975
  • Updated appveyor config #974
  • Added URLEncodeTask. #973
  • Avoid calling get_class on null in UnknownElement. #972
  • Added preserve duplicates to PathConvert #969
  • Fixed null pointer exception #968
  • Add verbosity to VersionTask #967
  • Added index to foreach task #963
  • Added PHPUnit 7 support. #962
  • Added silent flag to symfony console task #961
  • SymfonyConsole - ProgressBar output incorrect #960
  • VersionTask can manage 'v' prefix #955
  • Compatability with phpunit7? #952
  • #946: Trim outputProperty value of GitLogTask. #947
  • Fix for archive task #945
  • Missing ${file.separator} ? #943
  • Cleanup of #735 - part 4 #940
  • Cleanup of #735 - part 3 #939
  • Cleanup of #735 - part 2 #938
  • Fixed DefaultExcludes by removing an old hhvm fix #937
  • Expanding a Property Reference with ${toString:} #936
  • Fixed test execution. #935
  • Added AnsiColorLogger and SilentLogger to the docs #932
  • Added missing requirements for #826 #931
  • Added file attribute of fileset to doc and grammar #927
  • Added nested params to PhpEvalTask #926
  • Mapper support for PathConvert task. #925
  • Added blockfor task to grammar #924
  • Added project instance and location to targets #923
  • Small additions to the os condition #922
  • Fixed verbose logging of exception traces. #921
  • 'notify-send' is not recognized as an internal or external command #915
  • Consistent usage of to string #913
  • Made ProjectConfigurator::__construct private #912
  • Added missing strict attrib to grammar #911
  • Added missing logskipped attrib for targets in grammar #910
  • PHPStan task #908
  • Added html attribute to XsltTask #907
  • Be less restrictive on TaskContainer::addTask(Task) #906
  • Take care of PHP return types in IntrospectionHelper #905
  • Fixes #560 #904
  • Made XML based property files loadable. #903
  • Fixed #887 #902
  • Removed obsolete php version check #901
  • Fixed condition of child nodes at prefix building in XmlPropertyTask #900
  • Fixed nested condition test in FailTask #899
  • Fixed PhingFile::createNewFile if parent is null #898
  • Fixed isBoolean check. #897
  • Update Phing.php #896
  • Fixed undefined constant. #895
  • Refactors SassTask #892
  • Generated .phar is a bit big #891
  • Fix PHP CodeSniffer cache write to directory #890
  • Adds some SassTask tests #889
  • Failing test ForeachTaskTest::testLogMessageWithFileset #887
  • Removed fallback part of the PropertyTask documentation #885
  • Cleanup of #735 - part 1 #878
  • Enable HttpRequestTask to validate response codes #824
  • SVN Revert task #805
  • [WIP] Small improvement on comparing files. #785
  • [WIP] Fixed whitespace issue on argument escaping. #735
  • Unwanted spaces in attribute with forced escape in ExecTask #637
  • MkdirTask behaves the same as "mkdir" Linux command and respects POSIX ACL #591
  • Include (most used) dependencies in phar (Trac #1113) #566

Mar. 23, 2018 - Phing 3.0.0 alpha 1

The following issues were closed in this release:

  • fixed typos in error messages #888
  • Refactor SassTask tests #882
  • The is_executable check in the Which method when run on Windows is unnecessary. #880
  • Fixed #712 #879
  • Added missing method DataType::getDataTypeName() #864
  • Removed unused methods in StringHelper #863
  • Fixed ConsoleInputHandler for symfony 4 #862
  • Fixed regression test 309 for win #860
  • Fixed FileUtils::contentEquals #859
  • ConsoleInputHandler isn't Symfony 4 compatible #858
  • Added multiple property file inclusion. #856
  • Fixed wrong init value #855
  • Fixed FatalError in ZendGuardFileSet #854
  • Optimized api build file #852
  • Fixed grammar for phpdoc2 task. #851
  • Removed more include statements #850
  • Removed includes/requires from test sources. #849
  • Removed unused ident #846
  • Added SvnProp* tasks #845
  • Updated supported php version #844
  • Added ClasspathAware trait. #843
  • Get rid of FunctionParam class. #842
  • Added selectors to the grammar file. #841
  • Removed hhvm build from travis - added php nightly #839
  • Removed unused methods. #838
  • Fixed method call on duplicated targets. #837
  • Removed includes for phing own classes #836
  • Removed IterableFileSet #835
  • Removed settings of deprecated ini options #834
  • Simplified Character::isLetter() #833
  • Made DateSelector::setMillis() public #832
  • Improved error/exception reporting in Task::perform() #831
  • Added public setter/getter to reference object. #830
  • Target attrib of PhingTask must not be empty. #827
  • Included Listener/Logger chapter in master.xml #822
  • Updated documentation - FileSyncTask #820
  • Fixed call to a private member var. #819
  • Fixed exclude/include groups for phpunit 6. #818
  • Git branch #817
  • GitBranchTask failes with git >= 2.15.0 #816
  • Fixed composer install issue #815
  • Bump minimum PHP version to 7.0+ #813
  • PharPackageTask wrong format of path in webstub and/or clistub when building on Windows #809
  • Cannot make work PHPUnit 6 #802
  • Can't install dev-master version using Composer #799
  • Fixed generation of html reportfiles. #798
  • Init feature #796
  • Added type aware traits. #783
  • Added regex attrib to the filename selector. #782
  • Added casesensitive and handledirsep attribs to the regexp mapper. #781
  • Added casesensitive and handledirsep attribs to the glob mapper. #780
  • Added multline attribute to containsregexp selector. #779
  • Added negate, regexp, casesensitive attribs to linecontainsregexp filter #778
  • Added negate attribute to the linecontains filter. #777
  • Fixed log method - HttpGetTask. #771
  • Added stopwatch name to log output. #767
  • feature request: stopwatch should show name as well #765
  • stopwatch includes autoloader #764
  • Fix: php.ini variable evaluation and "Notice: A non well formed numeric value encountered" #761
  • Added ability logging exceptions. #760
  • Added location setting to all task defined. #759
  • Added DependSet task. #757
  • Added FileList support to the TouchTask #756
  • Added osfamily attribute to ExecTask #755
  • Fixed usage of filelist if PathConvert uses a reference. #754
  • Superseded #302 Remove S3 PEAR dependency #748
  • Added relentless task. #746
  • StatisticsListener #744
  • Default exclude task #740
  • Fixed PropertyConditions behavior. #739
  • Fixed deprecated function calls. #737
  • SCA with Php Inspections (EA Extended) #731
  • Added PHPLoc ^4 support. #729
  • PHPLoc Task: Wrong class name in CSV Formatter #725
  • PHPLoc task Wrong class name for XML Logger class #724
  • HttpRequestTask doesn't support POST application/json #715
  • SassTask: Consider removing/embeding the dependency on Pear::System #710
  • Parallel Task: Call to a member function push() on null in ... Manager.php:237 #706
  • Dynamic path for composer task #701
  • patchTask not shell escaping file paths #693
  • Relative Symlinks #684
  • NullPointerException when phploc is used without a formatter #683
  • Always interpret basedir as relative to project's root #668
  • phpunit task is not compatible with PHPUnit 6.0 #659
  • symfony/yaml dependency improvemnt #658
  • Deprecate the PEAR channel #657
  • Making phing compatible with phive (https://phar.io) #633
  • Phing Strict Build Mode #626
  • Adding 0 and 1 strings as true and false values in StringHelper. #590
  • PHPUnitReportTask fails with XSLTProcessor::importStylesheet() unable to read phar:/usr/local/bin/phing/etc/str.replace.function.xsl (Trac #1240) #584
  • Unit test for various Git and SVN related tasks fails if locale is not 'en' or 'C' (Trac #1213) #577
  • Phingcall should have the options returnProperty (Trac #1209) #576
  • add task for git archive or git checkout-index (Trac #1182) #573
  • Error overwriting symlinks on copy or move (Trac #1096) #562
  • Support in chmod, chown, delete, echo, copy, foreach and move tasks (Trac #1026) #559
  • ComposerTask when composer is installed in the system (Trac #1008) #558
  • phing should get a strict mode (Trac #918) #554
  • Add 'hide input' attribute to InputTask (Trac #885) #553
  • Find build.xml file in parent directory tree (Trac #864) #551
  • includePath using project.basedir is failing under certain conditions (Trac #586) #537
  • Properties not being set on subsequent sets. (Trac #511) #535
  • Build Progress Bar (Trac #305) #532
  • Document that in a FileSet include/exclude "foo/" means "foo/**" #367
  • Make basedir property (including its default value) a path relative to the buildfile #358
  • Remove S3 PEAR dependency #302
  • Consider the strings "1" and "0" to be true and false, respectively. #261
  • Phing Strict Build Mode #159

The following pull requests were merged in this release:

  • fixed typos in error messages #888
  • Refactor SassTask tests #882
  • The is_executable check in the Which method when run on Windows is unnecessary. #880
  • Fixed #712 #879
  • Added missing method DataType::getDataTypeName() #864
  • Removed unused methods in StringHelper #863
  • Fixed ConsoleInputHandler for symfony 4 #862
  • Fixed regression test 309 for win #860
  • Fixed FileUtils::contentEquals #859
  • Added multiple property file inclusion. #856
  • Fixed wrong init value #855
  • Fixed FatalError in ZendGuardFileSet #854
  • Optimized api build file #852
  • Fixed grammar for phpdoc2 task. #851
  • Removed more include statements #850
  • Removed includes/requires from test sources. #849
  • Removed unused ident #846
  • Added SvnProp* tasks #845
  • Updated supported php version #844
  • Added ClasspathAware trait. #843
  • Get rid of FunctionParam class. #842
  • Added selectors to the grammar file. #841
  • Removed hhvm build from travis - added php nightly #839
  • Removed unused methods. #838
  • Fixed method call on duplicated targets. #837
  • Removed includes for phing own classes #836
  • Removed IterableFileSet #835
  • Removed settings of deprecated ini options #834
  • Simplified Character::isLetter() #833
  • Made DateSelector::setMillis() public #832
  • Improved error/exception reporting in Task::perform() #831
  • Added public setter/getter to reference object. #830
  • Target attrib of PhingTask must not be empty. #827
  • Included Listener/Logger chapter in master.xml #822
  • Updated documentation - FileSyncTask #820
  • Fixed call to a private member var. #819
  • Fixed exclude/include groups for phpunit 6. #818
  • Git branch #817
  • Fixed composer install issue #815
  • Fixed generation of html reportfiles. #798
  • Added type aware traits. #783
  • Added regex attrib to the filename selector. #782
  • Added casesensitive and handledirsep attribs to the regexp mapper. #781
  • Added casesensitive and handledirsep attribs to the glob mapper. #780
  • Added multline attribute to containsregexp selector. #779
  • Added negate, regexp, casesensitive attribs to linecontainsregexp filter #778
  • Added negate attribute to the linecontains filter. #777
  • Fixed log method - HttpGetTask. #771
  • Added stopwatch name to log output. #767
  • Fix: php.ini variable evaluation and "Notice: A non well formed numeric value encountered" #761
  • Added ability logging exceptions. #760
  • Added DependSet task. #757
  • Added FileList support to the TouchTask #756
  • Added osfamily attribute to ExecTask #755
  • Fixed usage of filelist if PathConvert uses a reference. #754
  • Superseded #302 Remove S3 PEAR dependency #748
  • Added relentless task. #746
  • StatisticsListener #744
  • Default exclude task #740
  • Fixed PropertyConditions behavior. #739
  • Fixed deprecated function calls. #737
  • SCA with Php Inspections (EA Extended) #731
  • Added PHPLoc ^4 support. #729
  • Dynamic path for composer task #701
  • Phing Strict Build Mode #626
  • Adding 0 and 1 strings as true and false values in StringHelper. #590
  • Document that in a FileSet include/exclude "foo/" means "foo/**" #367
  • Make basedir property (including its default value) a path relative to the buildfile #358

Jan. 25, 2018 - Phing 2.16.1

This patch release fixes the following issue:

  • Allow Symfony 4 #807

Dec. 22, 2016 - Phing 2.16.0

This release contains the following new or improved functionality:

  • Append, Property, Sleep, Sonar and Truncate tasks
  • Improved PHP 7.1 compatibility
  • Various typo and bug fixes, documentation updates

This release will most likely be the last minor update in the 2.x series. Phing 3.x will drop support for PHP < 5.6.

The following issues were closed in this release:

  • phing should get a strict mode (Trac #918) #554
  • Can not delete git folders on windows (Trac #956) #556
  • Relative symlinks (Trac #1124) #567
  • Tests fail under windows (Trac #1215) #578
  • stripphpcomments matches links in html (Trac #1219) #579
  • OS detection fails on OSX (Trac #1227) #581
  • JsHintTask fails when reporter attribute is not set (Trac #1230) #582
  • An issue with 'file' attribute of 'append' task (v2.15.1) #595
  • An issue with 'append' task when adding a list of files in a directory (v2.15.1) #597
  • Git auto modified file with phing vendor #613
  • phar file not working - \Symfony\Component\Yaml\Parser' not found #614
  • JSHint - Support of specific config file path #615
  • PHP notice on 7.1: A non well formed numeric value encountered #622
  • Sass task fails when PEAR is not installed #624
  • sha-512 hash for phing-latest.phar #629

Oct. 13, 2016 - Phing 2.15.2

This release fixes a regression introduced in 2.15.1:

  • #593 - Changed behavior in filtering in 2.15.1

Oct. 11, 2016 - Phing 2.15.1

This release fixes a missing include and two bugs:

Sep. 14, 2016 - Phing 2.15.0

This release contains the following new or improved functionality:

  • PHP 7.0 compatibility was improved
  • Phing grammar was updated
  • Tasks to work with Mercurial were added
  • Various typo and bug fixes, documentation updates

The following tickets were closed in this release:

Mar. 10, 2016 - Phing 2.14.0

This release contains the following new or improved functionality:

  • Phing can now emit a specific status code on exit after failing
  • Added IsPropertyTrue/IsPropertyFalse conditions
  • Added IsWritable / IsReadable selectors
  • Added GitDescribe task
  • Added CutDirs mapper
  • Line breaks in property files on Windows machines fixed
  • FileSync task now supports excluding multiple files/directories
  • Various typo and bug fixes, documentation updates

The following tickets were closed in this release:

Dec. 4, 2015 - Phing 2.13.0

This release contains the following new or improved functionality:

  • '-listener' command line argument
  • SSL connections in FtpDeploy task
  • IsFailure condition
  • Crap4J PHPUnit formatter
  • FirstMatch mapper
  • PhpArrayMapLines filter
  • NotifySend, Attrib tasks
  • Json and Xml command line loggers
  • Property parser now supports YAML files
  • PHPUnit 5.x supported
  • PHP 7 fixes
  • Updated Apigen support
  • PhpCodeSniffer task can now populate a property with used sniffs
  • PHPMD and PhpCodeSniffer task can now cache results to speed up subsequent runs
  • Various typo and bug fixes, documentation updates

The following tickets were closed in this release:

Aug. 24, 2015 - Phing 2.12.0

This release contains the following new or improved functionality:

  • Retry, Tempfile, Inifile tasks
  • 'keepgoing' command line mode
  • Fileset support in the Import task
  • EscapeUnicode, Concat filters
  • Profile logger
  • Composite mapper
  • Various typo and bug fixes

The following tickets were closed in this release:

May 20, 2015 - Phing 2.11.0

This release contains the following new or improved functionality:

  • PharData and EchoProperties tasks
  • 'silent' and 'emacs' command line modes
  • Improvements to FileHash and FtpDeploy tasks
  • SuffixLines and Sort filters

The following tickets were closed in this release:

Feb. 19, 2015 - Phing 2.10.1

This release fixes the following tickets:

Feb. 9, 2015 - Phing 2.10.0

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:

Dec. 3, 2014 - Phing 2.9.1

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:

Nov. 25, 2014 - Phing 2.9.0

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:

Jul. 18, 2014 - Phing 2.8.2

This patch release fixes two regressions.

Jul. 1, 2014 - Phing 2.8.1

This patch release fixes a regression preventing Phing from being used on machines where PEAR is not installed, as well as another (unrelated) issue.

Jun. 30, 2014 - Phing 2.8.0

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:

Feb. 13, 2014 - Phing 2.7.0

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:

Aug. 27, 2013 - Phing 2.6.1

This patch release fixes a regression when setting properties in then/else blocks.

Note: the fix currently disables support for custom conditions, full support will be restored in Phing 2.7.0.

Aug. 21, 2013 - Phing 2.6.0

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:

Feb. 16, 2013 - Phing 2.5.0

This release addresses the following issues:

Nov. 29, 2012 - Phing 2.4.14

This release addresses the following issues:

Starting from this version, Phing releases and release numbers will follow the Semantic Versioning (www.semver.org) principle.

Nov. 20, 2012 - Phing 2.4.13

This release updates the composer package, adds a phploc task and improved support for phpDocumentor 2 and IonCube 7, improves the unit tests, clarifies the documentation in a number of places, and addresses the following issues:

Apr. 6, 2012 - Phing 2.4.12

Apr. 4, 2012 - Phing 2.4.11

Apr. 3, 2012 - Phing 2.4.10

Dec. 29, 2011 - Phing 2.4.9

Nov. 2, 2011 - Phing 2.4.8

Aug. 19, 2011 - Phing 2.4.7.1

This is a hotfix release.

Aug. 18, 2011 - Phing 2.4.7

This release fixes and improves several tasks (particularly the DocBlox task), adds OCI/ODBC support to the dbdeploy task and introduces a task to render reStructuredText.

Jul. 12, 2011 - Phing 2.4.6

This release fixes a large number of issues, improves a number of tasks and adds several new tasks (SVN log/list, DocBlox and LoadFile).

Mar. 3, 2011 - Phing 2.4.5

This release fixes several issues, and reverts the changes that introduced the ComponentHelper class.

Dec. 2, 2010 - Phing 2.4.4

This release fixes several issues.

Nov. 12, 2010 - Phing 2.4.3

This release adds tasks to interface with Git and Amazon S3, adds support for PHPUnit 3.5, and fixes numerous issues.

Jul. 28, 2010 - Phing 2.4.2

Mar. 10, 2010 - Phing 2.4.1

Jan. 17, 2010 - Phing 2.4.0

Dec. 17, 2009 - Phing 2.4.0 RC3

Oct. 20, 2009 - Phing 2.4.0 RC2

Sep. 14, 2009 - Phing 2.4.0 RC1

Dec. 8, 2008 - Phing 2.3.3

Oct. 16, 2008 - Phing 2.3.2

Oct. 16, 2008 - Phing 2.3.1

Nov. 3, 2007 - Phing 2.3.0

Aug. 21, 2006 - Phing 2.2.0

  • Refactored parser to support many tags as children of base tag (HL)
  • Added new IfTask (HL)
  • Added "spawn" attribute to ExecTask (only applies to *nix)
  • Several bugfixes & behavior imporvements to ExecTask (HL, MR, Ben Gollmer)
  • Bugfixes & refactoring for SVNLastRevisionTask (MR, Knut Urdalen)
  • Fixed reference copy bug (HL, Matthias Pigulla)
  • Added SvnExportTask (MR)
  • Added support for FileList in DeleteTask. (HL)
  • Added support for using setting Properties using CDATA value of tag. (HL)
  • Added ReferenceExistsCondition (Matthias Pigulla)
  • Added Phing::log() static method & integrated PHP error handling with Phing logging (HL)
  • Added new task to run the ionCube Encoder (MR)
  • Added new HTML Tidy filter (HL)
  • Added PhpLintTask (Knut Urdalen)
  • Added XmlLintTask (Knut Urdalen)
  • Added ZendCodeAnalyzerTask (Knut Urdalen)
  • Removed CoverageFormatter class (MR). NOTE: This changes the usage of the collection of PHPUnit2 code coverage reports, see the updated documentation for the CoverageSetupTask
  • Added Unzip and Untar tasks contributed by Joakim Bodin
  • [https://www.phing.info/trac/ticket/8], [49] Fixed bugs in TarTask related to including empty directories (HL)
  • [https://www.phing.info/trac/ticket/44] Fixed bug related to copying empty dirs. (HL)
  • [https://www.phing.info/trac/ticket/32] Fixed PHPUnit2 tasks to work with PHPUnit2-3.0.0 (MR)
  • [https://www.phing.info/trac/ticket/31] Fixed bug with using PHPDocumentor 1.3.0RC6 (MR)
  • [https://www.phing.info/trac/ticket/43] Fixed top-level (no target) IfTask behavior (Matthias Pigulla)
  • [https://www.phing.info/trac/ticket/41] Removed some lingering E_STRICT errors, bugs with 5.1.x and PHP >= 5.0.5 (HL)
  • [https://www.phing.info/trac/ticket/25] Fixed 'phing' script to also run on non-bash unix /bin/sh
  • Numerous documentation improvements by many members of the community (Thanks!)

Sept. 18, 2005 - Phing 2.1.1

  • Added support for specifying 4-char mask (e.g. 1777) to ChmodTask. (Hans Lellelid)
  • Added .svn files to default excludes in DirectoryScanner.
  • Updated PHPUnit2 BatchTest to use class detection and non-dot-path loader. (Michiel Rook)
  • Added support for importing non dot-path files (Michiel Rook)
  • Add better error message when build fails with exception (Hans Lellelid)
  • Fixed runtime error when errors were encountered in AppendTask (Hans Lellelid)

June 17, 2005 - Phing 2.1.0

Oct 16, 2004 - Phing 2.0.0

  • Minor fixes to make Phing run under E_STRICT/PHP5.
  • Fix to global/system properties not being set in project. (Matt Zandstra)
  • Fixes to deprecated return by reference issues w/ PHP5.0.0

June 8, 2004 - Phing 2.0.0b3

  • Brought up-to-date w/ PHP5.0.0RC3
  • Fixed several bugs in ForeachTask
  • Fixed runtime errors and incomplete inheriting of properties in PhingTask
  • Added support to AppendTask

March 19, 2004 - Phing 2.0.0b2

  • Brought up-to-date w/ PHP5.0.0RC1 (Hans)
  • Fixed bug in seting XSLT params using XSLTask (Hans, Jeff Moss)
  • Fixed PHPUnit test framework for PHPUnit-2.0.0alpha3
  • Added "Adhoc" tasks, which allow for defining PHP task or type classes within the buildfile. (Hans)
  • Added PhpEvalTask which allows property values to be set to simple PHP evaluations or the results of function/method calls. (Hans)
  • Added new phing.listener.PearLogger listener (logger). Also, the -logfile arg is now supported. (Hans)
  • Fixed broken ForeachTask task. (Manuel)

Dec 24, 2003 - Phing 2.0.0b1

  • Added PEAR installation framework & ability to build Phing into PEAR package.
  • Added TarTask using PEAR Archive_Tar
  • Added PearPackageTask which creates a PEAR package.xml (using PEAR_PackageFileManager).
  • Added ResolvePathTask which converts relative paths into absolute paths.
  • Removed System class, due to namespace collision w/ PEAR.
  • Basic "working?" tests performed with all selectors.
  • Added selectors: TypeSelector, ContainsRegexpSelector
  • CreoleSQLExec task is now operational.
  • Corrected non-fatal bugs in: DeleteTask, ReflexiveTask
  • All core Phing classes now in PHP5 syntax (no "var" used, etc.)
  • CopyTask will not stop build execution if a file cannot be copied (will log and continue to next file).
  • New abstract MatchingTask task makes it easier to create your own tasks that use selectors.
  • Removed redundant calls in DirectoryScanner ( scanning now much faster).
  • Fixed fatal errors in File::equals()

Nov 24, 2003 - Phing 2.0.0a2

  • Fixed ReplaceTokens filter to correctly replace matched tokens
  • Changed "project.basedir" property to be absolute path of basedir
  • Made IntrospectionHelper more tollerant of add*() and addConfigured*() signatures
  • New CvsTask and CvsPassTask for working with CVS repositories
  • New TranslateGettext filter substitutes _("hello!") with "hola!" / "bonjour!" / etc.
  • More consistent use of classhints to enable auto-casting by IntrospectionHelper
  • Fixed infinite loop bug in FileUtils::normalize() for paths containing "/./"
  • Fixed bug in CopyFile/fileset that caused termination of copy operation on encounter of unreadable file

Nov 6, 20003 - Phing 2.0.0a1

  • First release of Phing 2, an extensive rewrite and upgrade.
  • Refactored much of codebase, using new PHP5 features (e.g. Interfaces, Exceptions!)
  • Many, many, many bugfixes to existing functionality
  • Restructuring for more intuitive directory layout, change the parser class names.
  • Introduction of new tasks: AppendTask, ReflexiveTask, ExitTask, Input, PropertyPrompt
  • Introduction of new types: Path, FileList, DirSet, selectors, conditions
  • Introduction of new filters: ReplaceRegexp
  • Introduction of new logger: AnsiColorLogger
  • Many features from ANT 1.5 added to existing Tasks/Types
  • New "Register Slot" functionality allows for tracking "inner" dynamic variables.