There are many changes coming in the new RAT release  chief among them is
the ability to include/exclude files into standard collections

For example the GIT standard collection would

   1. exclude **/.gitignore **/.git.  This we call a pattern collection.
   2. could process the .gitignore files in the source tree.  This we call
   a file processor.
   3. In some odd cases the pattern matching is done via a FileFilter.
   File filters are processed like pattern collections and for this discussion
   we will include them when talking about pattern collections


As you probably know RAT includes all files by default.  So we have several
command line options to exclude files.

"--input-exclude"  accepts one or more glob patterns as seen in the pattern
collection.

"--input-exclude-file" accepts the name of a file containing the glob
patterns

"--input-exclude-std" accepts the name of one or more standard collections
and excludes the glob patterns.

"--input-exclude-parsed-scm" accepts the name of one or more standard
collections and excludes the glob patterns and executes the file processor
if there is one.  I have to admit that I do not like the name of this
option.

"--input-exclude-size" takes a size in bytes and will exclude files at or
below that size.

All of these options with the exception of "--input-exclude-parsed-scm" and
"--input-exclude-size" have an "input-include" version that will put back
the matching files into the process.


The questions are:


   1. When a standard collection is processed (e.g. --input-exclude-std)
   should the file processor be executed by default?  If so, we will need a
   way to exclude pattern collection without executing the file processor.
   What should that be called?
   2. If we retain the current design and do not execute the file processor
   when the standard collection is processed, is there a better name for
   "--input-exclude-parsed-scm"?

I should note that there is an --input-exclude-parsed-scm but not an
--input-include-parsed-scm as it did not make sense to me that someone
would write an .gitignore or similar file and then want to include all of
it.  They just would not run the file processor to begin with.

Please respond with your thoughts on this.

Thank you,
Claude

Reply via email to