GRADLE-1267 add a filteringCharset property to the copy spec
The copy task (and all the other tasks based on a CopySpec) allow filtering the source files to transform them. But the charset used to read and write the files was always the platform default charset, which causes problem if, for example, the source files are encoded with UTF8 but the platform default charset is another one.
This commit allows specifying a charset to use when filtering the files using `filteringCharset = 'UTF8'` (for example).
Note that the name `filteringCharset` was chosen for this new property as specified in `design-docs/handling-encodings.md`.
06 Apr 16 a9b5c9dc4dff63d41ecfafd39dbfb31e90223328
Allow closures passed to LineFilter to remove lines by returning null. - LineFilter no longer implicitly tracks end of file via nullity of transformedLine, but explicitly tracks state (normal, line skip, eof). - Content of copyTestResources/src/two/two.b was unused, so now contains data for line removal integration tests. - Adding an entirely new test file would have affected tests which check which files were copied.
12 Jul 15 91e825c33fee4ba7e72b5ecc362a4360f73844e1