Uploaded image for project: 'Apache Rat'
  1. Apache Rat
  2. RAT-323 Harmonize UIs
  3. RAT-378

Refactor/standardize Client arguments

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: In Progress
    • Major
    • Resolution: Unresolved
    • 0.16.1
    • None
    • Client - cli, configuration
    • None

    Description

      create a licenses section in the configuration.
       
      --licenses : a list of files to be read as license files.
      --licenses-approved : a list of license IDs to approve.
      --licenses-approved-file : A file containing license IDs to approve.
      --licenses-no-default : An enumeration of DEF (do not load license definitions), APPROVAL (do not load default license approvals)
       
      We should also change

      • --list-families to --licenses-list-families
      • --list-licenses to --licenses-list
        The above will group all the license commands into one section of the help output.
         
         
        The Default will be the list of ASF approved licenses.
         
        Other CLI changes
         
        create an "input" section that defines what files will be processed
      • change --exclude to --input-exclude (exclusion to be defined by .github exclude pattern)
      • change --exclude-file to --input-exclude-file
      • add --input-exclude-no-default :  to disable default exclusion.
      • add --input-exclude-scm : an enumeration of known SCM exclusion files formats based on the SCM (e.g. github, svn) that would apply exclusions found by those files in the input.
      • add --input-file : specify a file to read rather than the input file.
      • remove --scan-hidden-directories as that would be the default if --input-exclude-no-default were specified and no other filters were added.

      Add exclusion files to the same repository that has the license definitions and enable community support
       
      create an "edit" section to describe how any edits on the files will take place

      • change --copyright to --edit-copyright to add a copyright message
      • change --addLicense to --edit-license <file> : the optional <file> specifies the text to insert with ${copyright} in the text replaced with the --edit-copyright value or empty if --edit-copyright is not specified.
      • change --force to --edit-overwrite : to better describe what it does.

      create an "output" section to describe how the output will be handled.

      • change --out to --output-file
      • change --xml to --output-xml
      • change --stylesheet to --output-stylesheet
      • change --standard to --output-standard
      • change --archive to --output-archive
         
        expand the help section to provide more detailed help and to provide links to specific documentation.
      • add --help-input
      • add --help-licenses
      • add --help-output
      • add --help-edit
      • add -? for help
        Deprecate ALL single letter options. Deprecate all other long options.
        Add a warning that a deprecated command is being used.
         
        Add the ability to use the minimum characters necessary to differentiate the commands (e.g. --help-i for --help-input, or --input-f for --input-file).  This is/was supported by the commons-cli library and should be a simple switch to activate.

      Attachments

        Activity

          People

            claude Claude Warren
            claude Claude Warren
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: