Rat 0.12
===================

 * We now require Maven 3.0.5+ to build Rat, but as before we only require
   Maven 2.2.1+ if you want to use Rat in your own Maven projects.
 * We've integrated Rat into the ASF Jenkins to ensure continuous builds with various JDK versions. 
 * Issues resolved (see https://issues.apache.org/jira):
   Bug
    * [RAT-158] - Fix SAX-Parser warning by explicitly excluding xerces in Doxia 1.2.
                  (thanks to Hervé Boutemy)
    * [RAT-173] - Allow complete skip of RAT plugin with rat.skip property
                  (thanks to Chris Burroughs)
    * [RAT-174] - CDDL1License still very slow, replace Pattern matching with simple String comparison
                  (thanks to Chris Burroughs)
    * [RAT-175] - SourceCodeManagementSystems.hasIgnoreFile() should return boolean
    * [RAT-177] - final arrays should be private
    * [RAT-188] - Fix problems with AnimalSniffer-plugin when running in GUMP with Java 8.
                  Workaround for https://jira.codehaus.org/browse/MANIMALSNIFFER-45
                  (thanks to Mark Thomas)
    * [RAT-160] - Ignore build.log that is created by maven-invoker-plugin runs. Temporary fix until invoker plugin improves
                  configurability of that file. 
                  (thanks to Christopher Tubbs)
    * [RAT-179] - Maven plugin and Ant task do not support adding extra approved licenses.
    * [RAT-180] - Generify and beautify texts in RAT report. 

   New features
    * [RAT-171] - Maven plugin allows scanning of source code management ignore files. Their contents is added as exclusion to be ignored during RAT runs.
                  Supported source code management systems are: SVN, Git, Bazaar, Mercurial and CVS. 
                  An ignore-file's contents is taken as it is without parsing or validating.

   Improvement
    * [RAT-196] - Minor refactoring in pom.xml.
                  (thanks to Karl Heinz Marbaise) 
    * [RAT-194] - Upgrade to Doxia 1.6 if called directly, does not affect problems reported in RAT-158. Minor improvements.
                  (thanks to Hervé Boutemy)
    * [RAT-61]  - List files with unapproved licenses in Maven output
    * [RAT-170] - RAT should use itself during build and site generation
    * [RAT-181] - BinaryGuesser should treat *.truststore as binary
    * [RAT-184] - Add DEPENDENCIES to the list of ignored files in NoteGuesser.
                  (thanks to Karl Heinz Marbaise)
    * [RAT-185] - .repository folder should be ignored
    * [RAT-186] - BinaryGuesser should recognize PSD files as images
    * [RAT-187] - Add 'SAR', 'HAR', 'WSR' as archives which should be ignored.
                  (thanks to Karl Heinz Marbaise)
    * [RAT-197] - Improve exclusion defaults when working with Maven 3.3.1 (exclude .mvn).
                  (thanks to Karl Heinz Marbaise)
    * [RAT-198] - Upgrade to plexus-utils 3.0.20.
                  (thanks to Karl Heinz Marbaise)
    * [RAT-172] - Exclude technical directories of source code management systems and their ignore files from RAT scans. 
                  Enabled for SVN,Git,Mercurial,Bazar and CVS.
    * [RAT-200] - Update to latest ASF parent pom v17.
    * [RAT-201] - BinaryGuesser should treat *.swf as binary. 
                  Furthermore BinaryGuesser falls back to UTF-8 encoding in case the encoding given via system property (-Dfile.encoding) was not found.
    * [RAT-202] - Report layout differs between successful RAT checks and existence of unapproved files.
    * [RAT-203] - Using 'license' in README, source code, javadoc, comments and site instead of 'licence'; improve terminology to not confuse RAT consumers.
    * [RAT-204] - Unify resource handling in code and tests, make sure the resources are properly closed. Apply minor refactorings.
    * [RAT-213] - Upgrade to commons-collections 3.2.2.
                  (thanks to Glenn Lewis)
                  

Rat 0.11
========

 * Rat stays at compiler level 1.5 to be more compliant with other Maven plugins,
   fixed build/CI environment to reflect and ensure that.
 * Fixed Javadoc warnings during build, upgraded Maven Plugin Plugin to avoid
   warnings in generated code (https://jira.codehaus.org/browse/MPLUGIN-237)
 * Issues resolved (see https://issues.apache.org/jira):
   Bug
    * [RAT-135] - addLicenseHeaders is missing a space on license header.
    * [RAT-144] - AbstractRatMojo String constant arrays should be private
    * [RAT-148] - LicenseAddingReport#report has useless call to metaData.getData
                  (thanks to Chris A. Mattmann)
    * [RAT-151] - Detect more archive file formats
    * [RAT-152] - Recognize the format for .bsh, .fml and .jsp file types
    * [RAT-153] - Do not add extra empty lines when appending headers for the Apache License
    * [RAT-154] - Indentation of the license header should be decided per family
    * [RAT-155] - Do not add empty first and last lines in the license header for certain families
    * [RAT-156] - Add some symmetry when applying license headers to files with file type specific headers
    * [RAT-159] - Detect OpenOffice documents as being archives
  Improvement
    * [RAT-129] - Add support for CDDL 1.0
    * [RAT-162] - CDDL1License.matches slow with large inputs
                  (thanks to Andrew Gaul)
    * [RAT-164] - Allow skipping execution entirely
    * [RAT-165] - Use a maven defaultGoal for RAT's base pom.xml

Rat 0.10
========
The main change is RAT-138 - Rat 0.9 could run much slower than 0.8 on some input.

 * Simpler binary archive
 * Issues resolved (see https://issues.apache.org/jira):
   * Bugs fixed:
     * [RAT-137] Website shows incorrect Maven goals in some pages
     * [RAT-128] Use the proper name for the Apache License
     * [RAT-138] RAT runs very slowly on some input
     * [RAT-140] OASISLicense allows invalid Copyright line
     * [RAT-139] FullTextMatchingLicense.prune uses inefficient deleteAtChar
     * [RAT-145] Maven plugin should not run in the "verify" phase, but in the "validate" phase
   * Improvements:
     * [RAT-129] Add support for CDDL 1.0 
 * Updated dependencies and plugins
 * Fixed up generics and annotations

Rat 0.9
=======
 * Improved documentation
 * Rat now requires Java5 at runtime
 * The Antlib contains a new matcher type that allows matching on the
   full text of the license rather than a single line.
 * Support automatic addition of license headers to svg files.
 * Issues Resolved (see https://issues.apache.org/jira):
   * Bugs Fixed:
     * [RAT-3]   - Incorrect alignment of file contents
     * [RAT-102] - typo in pom.xml / field description
     * [RAT-109] - Return value of mkdirs() is not checked
                   and no error handling occurs
     * [RAT-116] - Docs don't say what the default excludes are
     * [RAT-120] - fix some maven warning and upgrade some
                   dependencies.
     * [RAT-121] - use maven java5 annotations for maven plugins
     * [RAT-122] - Maven Plugin: field to ignore errors and continue
                   the build
     * [RAT-124] - Rat plugin should exclude the configuration directory
                   used by IDEA
     * [RAT-126] - Default excludes do not ignore .git/ repository
   * Improvements:
     * [RAT-13]  - [GOOGLE-14] GNU License support
     * [RAT-49]  - Recognise MIT LIcense
     * [RAT-104] - Using jUnit4 annotation based tests instead of
                   junit3 - migration from junit 3.8.2 to current
                   junit 4.10
     * [RAT-106] - Minor Javadoc errors fixed in 3 files
     * [RAT-108] - Add native support for thrift generated code to be
                   ignored
     * [RAT-111] - RAT does not ignore javah generated files
     * [RAT-125] - Support applied AL20 license headers, including
                   checking for required copyright header line
   * New Features
     * [RAT-78]  - Support doxia 1.1.2
   * Tasks
     * [RAT-59]  - Upgrade To Java 1.5
     * [RAT-119] - Upgrade Maven prerequisite to 2.2.1

Rat 0.8
=======
 * Some website fixes
 * The Antlib and Maven plugins now provide simpler ways to detect
   licenses not directly supported by Rat.
 * Issues Resolved (see https://issues.apache.org/jira):
  * Bug:
    * RAT-86 CLI doesn't allow adding of licenses unless a custom
      stylesheet has been specified
    * RAT-87 Tests could leave temporary files around.
    * RAT-92 When adding licenses Rat used \n instead of the platform
      dependent line--end character(s)
    * RAT-94 Streams were not always closed immediately when adding
      licenses.
  * Improvement:
    * RAT-79 Support automatic addition of license headers to Velocity
      templates
    * RAT-83 Support automatic addition of license headers to Scala
      source files
    * RAT-84 Support automatic addition of license headers to Ruby
      source files
    * RAT-89 Support automatic addition of license headers to Perl,
      TCL, C++, C# and PHP source files
    * RAT-91 Support automatic addition of license headers to Groovy
      source files
    * RAT-85 Allow --addLicense as an alias for --addLicence for
      people used to the US spelling.
    * RAT-34 --addLicense will add the license to the top of Java
      files without a package line or XML files without an XML
      declaration now - it used to not add anything.
    * RAT-67 The XML and standard plain text reports now contain a
      timestamp with the time the report has been generated.
    * RAT-95 When adding licenses Rat will now remove any BOM from the file.
    * RAT-93 --addLicense now supports more .NET specific files like
      MS Visual Studio project and solution files
    * RAT-99 The command line interface has a new option that
      specifies a file containing regular expressions for files to exclude

Rat 0.7
=======
 * Some website fixes
 * Issues Resolved (see https://issues.apache.org/jira):
  * Bug:
    * RAT-62 Some of Rat's own files missing License Headers
    * RAT-63 ant-task-examples.xml has an wrong uri in the -typedef ant target
    * RAT-70 Missing closing html tag in generated report by
  * Improvement:
    * RAT-17 Support the use of archives as input
    * RAT-30 / RAT-76 Support automatic addition of license headers
    * RAT-52 Merge In Rat Output Semantics
    * RAT-56 Commons IO Wildcard Excludes
    * RAT-65 Rat Pom cleanup
    * RAT-68 Add support for Python, C, & script files (.bat & .sh)
    * RAT-72 Keep version in plugins sample doc up to date
    * RAT-73 / RAT-74 Support for XML output in Ant task and Maven Plugin
    * RAT-74 / RAT-75 Support for custom XSLT stylesheets

Rat 0.6
===========
 * Support for TMF header
 * Comprehend PEM, CRL file endings
 * Added reporting capability to recursive rat script
 * Moved to the Incubator@Apache
 * Issues Resolved (see https://issues.apache.org/jira):
  * Bug:
    * RAT-3 Incorrect alignment of file contents
    * RAT-11 Incorrect number of unnapproved licences reported
    * RAT-12 Incorrect SCM info in maven plugin pom
    * RAT-29 NPE on &quot;mvn install&quot; in rat-anttasks
    * RAT-33 Mailing list subscribe points to unsubscribe
    * RAT-34 No license header added for java files that do not contain project line
    * RAT-35 Incorrect number of unapproved licenses reported by rat:check
    * RAT-36 Report header incorrectly refers to an &quot;L&quot; license marker
  * Improvement:
    * RAT-8 [PATCH] add JavaCC to GeneratedLicenseNotRequired
    * RAT-9 A more informative website
    * RAT-10 A few Javadoc comments
    * RAT-23  More details in text summary
    * RAT-24 Include checksums on web page
    * RAT-26 Improve web summary
    * RAT-27 Index page
    * RAT-37 List all resources with unapproved licenses at the beginning of the report
  * New Feature
    * RAT-6 RAT Source Import
  * Task
    * RAT-28 Repackage maven plugin
  * Wish
    * RAT-1 maven-rat-plugin and ant-rat tasks

Rat 0.5.1
=========
 * Fixed file closing bug
 * Fixed XML bad character bug

Rat 0.5
=======
 * Added header matcher for DoJo.
 * Refactoring existing codebase to separate concerns and use
   resource pipeline.
 * New header matching library.

Rat 0.4.1
=========
Rat 0.4.1 is the first release with distributions. The release was cut
for this purpose.

Rat 0.4.1 Notes
===============
 * Created POM for use with Rat library.
 * Ant task switched to use Xml based report.

Rat 0.4 Notes
=============
 * Ant tasks added. These allow Rat reports to be run against a wide variety
   of resources from within Ant.
 * Legacy report is now deprecated. It will be removed before the next release.
 * Created stylesheet for xml reports which produce output similar to the legacy
   plain text report. Application now uses the xml report with that stylesheet.
 * Revised xml output format
 * Improve support for binary recognition by adding code that tastes files

Rat 0.3 Notes
=============
 * This is the last release with the original hacked together plain test report.
   The new XML reporting code is present but is not yet the default.
 * Rat 0.3 is the first release with release notes. All previous releases are
   now consigned to Ancient History. No record of them will be found here.
