Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

OdyUtils

OdyUtils is a shared utility package for cogs running on Odysseia, a Red-DiscordBot fork. It merges the useful parts of two reference utility packages - vex-cog-utils and AAA3A_utils - into one package, adapted to build on top of Odysseia's own primitives instead of duplicating them:

  • Every response-building surface (menus, confirmations, prompts, settings displays, generated cog error messages) is built on Odysseia's Components V2 toolkit (odysseia.core.components, odysseia.core.utils.views) - there are no embeds anywhere in this package, matching Odysseia's own CV2-only UI.
  • Base classes (OdyCog) extend odysseia.core.commands.Cog rather than reimplementing what it already provides.
  • Anything that duplicates functionality Odysseia already ships (its own Context, SimpleMenu paginator, select/modal/confirm builders, ...) was either dropped in favour of the existing implementation, or rebuilt as a thin layer on top of it. See each module's docstring for the specific keep/merge/adapt/drop rationale.

Notable pieces:

  • OdyCog (cog.py) - a batteries-included cog base class: automatic typing indicator + tick/cross reaction per command, a verbose "which permission is actually missing" error handler, and a development-only-command confirmation gate.
  • CogsUtils, Loop, Settings, SentryHelper - ported grab-bag utilities, version/update checking, a declarative settings framework, and opt-in error telemetry.
  • scaffold.py - generates a new cog's __init__.py (dependency check, module-reload loop, end-user-data statement, setup()), styled after AAA3A_utils' own hand-written dependency-check pattern but rebranded for OdyUtils/Odysseia.

Installation

pip install git+https://github.com/everestmcarthur/OdyUtils.git

For local development against an editable Odysseia checkout:

pip install -e /path/to/OdyUtils

Credits

Substantial portions of this package's code are derived from, or directly ported from, these two projects - full credit to their authors:

OdyUtils itself is not affiliated with either project; it's an Odysseia-specific merge and adaptation of their ideas and code.

Metadata

Release files for OdyUtils 0.0.1b1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for OdyUtils 0.0.1b1
File Size Uploaded Provenance Actions
odyutils-0.0.1b1.tar.gz 80.9 kB Without provenance Details for odyutils-0.0.1b1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for OdyUtils 0.0.1b1
File Interpreter ABI Platform Actions
odyutils-0.0.1b1-py3-none-any.whl Python 3 none any Details for odyutils-0.0.1b1-py3-none-any.whl

Total release size: 167.7 kB

Release files / odyutils-0.0.1b1.tar.gz

Download URL odyutils-0.0.1b1.tar.gz
Size 80.9 kB
Tags Source
SHA-256 checksum
How to use checksums
4d514084c73143899a86af90e2ed07b3b73b0905b8eb34c16718c3c2a87b3e07
BLAKE2b-256 checksum
How to use checksums
bbed8c8a2ac8c9f70ebc82d4675834b6fd67de3d2bb26b8efea69f0a65e995a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.15

Release files / odyutils-0.0.1b1-py3-none-any.whl

Download URL odyutils-0.0.1b1-py3-none-any.whl
Size 86.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
61c34c29d2739f08f5ecfdf543a63422d5434ccb5adc1e928c68ffa2077c9c81
BLAKE2b-256 checksum
How to use checksums
ec2593ccd9cefd836c6d11dc2cb556a4e7f1af5a37d1455b3c0b1f7b4b792b83
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.15

Security for OdyUtils 0.0.1b1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page