Skip to main content

A Python package for interacting with the GitLab API, offering a simple interface to access repositories, users, groups, issues, and more for automation and data management.

Project description

glnova

Python CI pre-commit.ci status Documentation Status codecov PyPI Version Python Versions License: MIT Security: bandit DOI

Note: This project is still in progress. The promised features are not fully ready yet, and APIs are subject to change.

A Python package for interacting with the GitLab API. This package provides a simple and intuitive interface to access GitLab repositories, users, groups, issues, and more, enabling seamless integration with GitLab instances for automation, data retrieval, and management tasks.

Features

Full API Coverage: Access to repositories, users, groups, issues, merge requests, and more.

  • Easy Authentication: Support for token-based authentication.
  • Asynchronous Support: Built with async/await for non-blocking operations.
  • Type Hints: Full type annotations for better IDE support and code reliability.
  • Comprehensive Documentation: Detailed guides and API reference.
  • Command-Line Interface: Interact with the GitLab API directly from the terminal for quick, scriptable operations without writing code.

Installation

We recommend using uv to manage virtual environments for installing glnova.

If you don't have uv installed, you can install it with pip. See the project pages for more details:

  • Install via pip: pip install --upgrade pip && pip install uv
  • Project pages: uv on PyPI | uv on GitHub
  • Full documentation and usage guide: uv docs

Requirements

  • Python 3.10 or higher
  • Operating System: Linux, macOS, or Windows

Install from PyPI

The recommended way to install glnova is from PyPI:

# Create a virtual environment (recommended with uv)
uv venv --python 3.10
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install glnova

Optional Dependencies

For development or specific features:

# Development dependencies (testing, linting, etc.)
uv pip install glnova[dev]

# Documentation dependencies
uv pip install glnova[docs]

# All dependencies
uv pip install glnova[dev,docs]

Install from Source

For the latest development version:

git clone git@github.com:isaac-cf-wong/glnova.git
cd glnova
# Create a virtual environment (recommended with uv)
uv venv --python 3.10
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install .

Development Installation

To set up for development:

git clone git@github.com:isaac-cf-wong/glnova.git
cd glnova

# Create a virtual environment (recommended with uv)
uv venv --python 3.10
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install ".[dev]"

# Install the commitlint dependencies
npm install

# Install pre-commit hooks
pre-commit install
pre-commit install --hook-type commit-msg

Verify Installation

Check that glnova is installed correctly:

glnova --help
python -c "import glnova; print(glnova.__version__)"

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

For questions, issues, or contributions, please:

Changelog

See Release Notes for version history.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

glnova-0.0.1.tar.gz (38.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

glnova-0.0.1-py3-none-any.whl (21.1 kB view details)

Uploaded Python 3

File details

Details for the file glnova-0.0.1.tar.gz.

File metadata

  • Download URL: glnova-0.0.1.tar.gz
  • Upload date:
  • Size: 38.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for glnova-0.0.1.tar.gz
Algorithm Hash digest
SHA256 3dced8ee07880fea9fc9d62e1cdf30bf2401d1c39f8a50463799b41fd8fc32a7
MD5 09575e07a494e221fa607219d36f7dea
BLAKE2b-256 f67ab2a39b6471a09d1cf0197ef68869d2e295bb258b6fc8ed1c4d53dd0e94c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for glnova-0.0.1.tar.gz:

Publisher: create_tag.yml on isaac-cf-wong/glnova

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file glnova-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: glnova-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 21.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for glnova-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 83ec9dbfa5214ac0a0276f6450540d4bf4bc428fbf11095b010f5aea85d7d568
MD5 59aa32950f71777c1a4ea6f0a8313332
BLAKE2b-256 d96ef4f5ee079c1ce578fc7af22139c0d15b60027a6947936fe2d87ccaa84f29

See more details on using hashes here.

Provenance

The following attestation bundles were made for glnova-0.0.1-py3-none-any.whl:

Publisher: create_tag.yml on isaac-cf-wong/glnova

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page