Skip to content

Gather Requirements Command #15

Open
@navarr

Description

Acceptance Criteria

  • I can run depanno gather <dir>, where <dir> is a directory to search through
  • I can pass the flag -l or --include-legacy-annotations
  • I can pass the flag -f or --format with a value of text, csv, xml, or json
  • All Attributes (and annotations with flag l) are found
  • Attributes for the same package are simplified via exclusion (e.g. ^2 and ^2.1|3 becomes ^2.1)
  • If the format is specified to be JSON, I get an object containing a "require" object and a "suggest" object that should be usable with composer
  • If the format is specified to be CSV, the columns should be: "package", "requirement", "optional" where "optional" should be "Yes" or "No"
  • If the format is specified to be XML, I should receive a document like:
<?xml version="1.0" encoding="utf-8"?>
<dependencies>
    <!-- for each simplified requirement -->
    <requirement package="" constraint="" optional="true"><!-- optional default should be "false" and not included -->
        <!-- for each attribute/annotation -->
        <reason file="" line="" constraint="">reason text</reason>
    </requirement>
</dependencies>

Metadata

Assignees

Labels

enhancementNew feature or requesthelp wantedExtra attention is needed

Projects

  • Status

    To do

Relationships

None yet

Development

No branches or pull requests

Issue actions