Skip to main content

🔌  Delfino Core   🔌

A Delfino plugin with core functionality.

CircleCI Codecov GitHub tag (latest SemVer) Maintenance GitHub last commit PyPI - Python Version Downloads

Commands

Command Description
coverage-open Open coverage results in default browser.
coverage-report Analyse coverage and generate a term/HTML report.
dependencies-update Manages the process of updating dependencies.
ensure-pre-commit Ensures pre-commit is installed and enabled.
gh Extends gh or passes through.
glab Extends glab or passes through.
mypy Run type checking on source code.
pre-commit Run all pre-commit stages in the current project...
pytest Runs pytest for individual test suites.
pytest-integration Run integration tests.
pytest-unit Run unit tests.
ruff Run ruff.
switch-python-version Switches Python venv to a different Python version.
test Runs pytest, coverage-report.
vcs Alias for gh/glab with auto-detection.
verify Runs ensure-pre-commit, ruff, mypy, test.

Installation

  • pip: pip install delfino-core
  • Poetry: poetry add -D delfino-core
  • Pipenv: pipenv install -d delfino-core

Optional dependencies

Each project may use different sub-set of commands. Therefore, dependencies of all commands are optional and checked only when the command is executed.

Using [all] installs all the optional dependencies used by all the commands. If you want only a sub-set of those dependencies, there are finer-grained groups available:

  • For individual commands (matches the command names):
    • mypy
    • ruff
    • dependencies-update
    • pre-commit
    • vsc
  • For groups of commands:
    • test - for testing and coverage commands
  • For groups of groups:
    • verify - same as [mypy,ruff]
    • all - all optional packages

Configuration

Delfino doesn't load any plugins by default. To enable this plugin, add the following config into pyproject.toml:

[tool.delfino.plugins.delfino-core]

Plugin configuration

This plugin has several options. All the values are optional and defaults are shown below:

[tool.delfino.plugins.delfino-core]
# Source files - may have different rules than tests (usually stricter)
sources_directory = "src"

# Test files
tests_directory = "tests"

# Where to store reports generated by various tools
reports_directory = "reports"

# Types of tests you have nested under the `tests_directory`. Will be executed in given order.
test_types = ["unit", "integration"]

# One or more module to wrap `pytest` in, executing it as `python -m <MODULE> pytest ...`
pytest_modules = []

# Coommand groups and commands to run as a quality gate in given order.
verify_commands = ["ensure-pre-commit", "ruff", "mypy", "test"]
test_commands = ["pytest", "coverage-report"]

# Do not install pre-commit if this is set to true.
disable_pre_commit = false

Commands configuration

Several commands have their own configuration as well.

mypy

[tool.delfino.plugins.delfino-core.mypy]
# One or more directories where type hint will be required. By default they are optional.
strict_directories = []  

vcs

[tool.delfino.plugins.delfino-core.vcs]
# Enable to manually specify the branch prefix. By default it is set to git username.
# branch_prefix = ""

[tool.delfino.plugins.delfino-core.vcs.issue_tracking]
# Prefix for issue numbers, including a trailing hyphen if used. If not set, just the issue numbers will be used.
# issue_prefix = "ISSUE-"

# URL for the issue tracker. If not set, issue tracker integration will be disabled.
# Implemented trackers: Jira.
# tracker_url = "https://<SUBDOMAIN>.atlassian.net"

# Environment variable name for the issue tracking username. If not set, 'ISSUE_TRACKER_USERNAME' will be used by default.
# username_env_var = ""

# Environment variable name for the issue tracking API key. If not set, 'ISSUE_TRACKER_API_KEY' will be used by default.
# api_key_env_var = ""

Usage

Run delfino --help.

Development

To develop against editable delfino sources:

  1. Make sure delfino sources are next to this plugin:
    cd ..
    git clone https://github.com/radeklat/delfino.git
    
  2. Install delfino as editable package:
    pip install -e ../delfino
    
    Note that poetry will reset this to the released package when you install/update anything.

Metadata

Release files for delfino-core 10.0.1

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

Built distribution (wheel)

Table of built distributions (wheels) for delfino-core 10.0.1
File Interpreter ABI Platform Actions
delfino_core-10.0.1-py3-none-any.whl Python 3 none any Details for delfino_core-10.0.1-py3-none-any.whl

Release files / delfino_core-10.0.1-py3-none-any.whl

Download URL delfino_core-10.0.1-py3-none-any.whl
Size 26.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9fdf19aa15042d07414478f4e9871722ab905f51657f0292830220315600f19a
BLAKE2b-256 checksum
How to use checksums
b42d684626f72b5f845cfc6b59b8612a9ee04a6e51eed461631e7bd486849edf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.10

Security for delfino-core 10.0.1

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

10.0.1 This release

1 release file No provenance

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