NAME

Git::IssueManager::Issue - class representing an Issue

VERSION

version 0.1

DESCRIPTION

Git::IssueManager::Issue represents an issue within the Git::IssueManager module. Issues can be added, removed, modified and listed.

Make sure that you understand all the attributes before adding issues to your repository.

ATTRIBUTES

subject

The subject/ title of the issue

At most 50 chars allowed.

priority

The priority of the issue. Possible values are:

urgent - the most highes level of priority
high
medium
low

The default value is low.

severity

The severity of the issue. Possible values are:

critical
high
medium
low

The default value is low

type

The type of the issue. Possible values are:

bug - a problem within the code, preventing the correct working of the software
improvement - an enhancement to an already existing feature
feature - a completly new feature
task - a simple task, which should be done (please use rarely)

The default values is bug.

status

The status of the issue. Possible values are:

open - nothing has been done yet
assigned - the issue has been assigned to a developer
inprogess - somebody is working on the issue
closed - the issue is closed

The default value is open.

substatus

A substatus to the actual status. Possible values are:

none - there is no substatus
fixed - the bug was fixed
wontfix - the issue has been closed but it will never be fixed

The default value is none.

comment

A comment to the current status of the issue.

Only Plain Text is allowed.

Default value is the empty string.

description

The full description of the issue.

Only Plain Text and Markdown are allowed.

no HTML

The default value is the empty string.

tags

An arrayref of tags/ keywords for better identifying the issue.

Maximum length of one tag is 20 characters.

Maximum number of tags is 10.

attachments

An arrayref of files attached to this issue, for example documentation or text files presenting error messages, screenshots, etc.

author

The author of the issue, can be the name or an anomynized nickname

author_email

The authors email for sending status changes of the issue

worker

The persons name working on solving the issue

worker_email

The email address of the person working on this issue

creation_date

A datetime object representing the date/time the issue was created

closed_date

A datetime object representing the date/time the issue was closed, only valid if status is closed

last_change_date

A datetime object representing the date/time the issue was last modified

id

id of the issue

estimated_time

The estimated time for solving this issue in Minutes

Default value is 0, meaning no estimate set.

working_time

The current time in Minutes already spent on this issue

The default value is 0.

METHODS

addTag

add another tag to the issue.

Example:

$issue->addTag("File");
1. Parameter: Tag to add to the issue

delTag

del a tag from the issue

Example:

$issue->delTag("File");
1. Parameter Tag to remove from issue

addAttachment

Add another attachment to the issue.

Example:

$issue->addAttachement("/tmp/test.txt");
1. Parameter path to the attachment to add

Make sure the attachment exist at the given path and stays there until the issue has been added.

delAttachement

Remove an attachment from the issue.

Example:

$issue->delAttachement("/tmp/test");
1. Parameter Attachment path to remove from issue

_createAttachmentTree - internal method, do not call directly

creates a git repository tree object from the attachment array and return the hash of the object

createIssue

Creates the issue inside the given git repository and commits these changes to the issues branch

1. Parameter reference to a Git::RepositoryHL object

AUTHOR

Dominik Meyer <dmeyer@federationhq.de>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2018 by Dominik Meyer.

This is free software, licensed under:

The GNU General Public License, Version 2, June 1991

AVAILABILITY

The latest version of this module is available from the Comprehensive Perl Archive Network (CPAN). Visit http://www.perl.com/CPAN/ to find a CPAN site near you, or see https://metacpan.org/module/Git::IssueManager/.

BUGS

Please report any bugs or feature requests by email to byterazor@federationhq.de.

When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.

COPYRIGHT AND LICENSE

This software is Copyright (c) 2018 by Dominik Meyer.

This is free software, licensed under:

The GNU General Public License, Version 2, June 1991