Metadata-Version: 2.4
Name: github-issue-list
Version: 0.0.2
Summary: List open GitHub issues assigned to a user in an organization.
Author: Kaizten Analytics
License-Expression: LicenseRef-Proprietary
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Requires-Python: >=3.10
Description-Content-Type: text/markdown

# GitHub Issue List

`github-issue-list` uses the authenticated GitHub CLI account to list open issues assigned to a user in an organization's non-archived repositories.

Issues are printed in a table sorted globally from the oldest creation time to the most recent. Issue titles are normalized to one line and limited to 30 characters.

## Requirements

- Python 3.10 or newer
- GitHub CLI (`gh`)
- An authenticated GitHub CLI session:

```bash
gh auth login
```

## Usage

After installing the package, run:

```bash
github-issue-list
```

The organization defaults to `kaizten`, and the username defaults to the active `gh` account. Override either value with named arguments:

```bash
github-issue-list --organization octo --username monalisa
```

From a source checkout, the wrapper exposes the same interface:

```bash
./github-issue-list.py --organization octo --username monalisa
```

```text
usage: github-issue-list [-h] [--organization ORGANIZATION] [--username USERNAME]

List open GitHub issues assigned to a user in an organization.

options:
  -h, --help            show this help message and exit
  --organization ORGANIZATION
                        GitHub organization. Default: kaizten
  --username USERNAME   GitHub assignee. Defaults to the authenticated gh user.
```

The table contains the full repository name, issue number, truncated title, issue URL, UTC creation time, and elapsed time since creation. The search returns at most 1,000 issues, matching GitHub's issue-search result limit.

## Development

Run the unit tests:

```bash
python3 -m unittest discover -s tests -v
```

Build and validate the wheel and source distribution:

```bash
./build-package.sh
```

Artifacts are written under `dist/` and checked with Twine.

Publish previously built artifacts to PyPI:

```bash
./publish-pypi.sh
```

If PyPI reports that the version already exists, increment the version in `pyproject.toml`, rebuild, and publish again.

Install the package in a virtual environment:

```bash
python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install .
```
