Skip to main content

Experimental plugin ecosystem for Mass Driver

Project description

Mass Driver Plugins

Experimental plugin ecosystem for Mass Driver

Requires Python 3.10

Usage

Depends on what the code in there does.

Run the command

Install the module first:

make install
# or
poetry install

Then inside the virtual environment, launch the command:

# Run single command inside virtualenv
poetry run mass-driver-plugins

# or
# Load the virtualenv first
poetry shell
# Then launch the command, staying in virtualenv
mass-driver-plugins

Development

Python setup

This repository uses Python3.10, using Poetry as package manager to define a Python package inside src/mass_driver_plugins/.

poetry will create virtual environments if needed, fetch dependencies, and install them for development.

For ease of development, a Makefile is provided, use it like this:

make  # equivalent to "make all" = install lint docs test build
# run only specific tasks:
make install
make lint
make test
# Combine tasks:
make install test

Once installed, the module's code can now be reached through running Python in Poetry:

$ poetry run python
>>> from mass_driver_plugins import main
>>> main("blabla")

This codebase uses pre-commit to run linting tools like flake8. Use pre-commit install to install git pre-commit hooks to force running these checks before any code can be committed, use make lint to run these manually. Testing is provided by pytest separately in make test.

Documentation

Documentation is generated via Sphinx, using the cool myst_parser plugin to support Markdown files like this one.

Other Sphinx plugins provide extra documentation features, like the recent AutoAPI to generate API reference without headaches.

To build the documentation, run

# Requires the project dependencies provided by "make install"
make docs
# Generates docs/build/html/

To browse the website version of the documentation you just built, run:

make docs-serve

And remember that make supports multiple targets, so you can generate the documentation and serve it:

make docs docs-serve

Templated repository

This repo was created by the cookiecutter template available at https://github.com/OverkillGuy/python-template, using commit hash: a00dd61d7d855303eb607ddfa46a5447d1f042bd.

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

mass_driver_plugins-0.4.2.tar.gz (8.7 kB view details)

Uploaded Source

Built Distribution

mass_driver_plugins-0.4.2-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file mass_driver_plugins-0.4.2.tar.gz.

File metadata

  • Download URL: mass_driver_plugins-0.4.2.tar.gz
  • Upload date:
  • Size: 8.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.10.12 Linux/6.5.6-76060506-generic

File hashes

Hashes for mass_driver_plugins-0.4.2.tar.gz
Algorithm Hash digest
SHA256 1802649db820941fbfe147b33d93313dd59ef9162b1001de78eeb990f89fcffb
MD5 7ceb7bd18b1f2ee725ec46ebe20e9f61
BLAKE2b-256 b21339ea5f52a1aa8514cdcc86b4ffa41bf7e9b66e4d0290af61479f09a62656

See more details on using hashes here.

File details

Details for the file mass_driver_plugins-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: mass_driver_plugins-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.10.12 Linux/6.5.6-76060506-generic

File hashes

Hashes for mass_driver_plugins-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 452c49a935ac12538023d7d44c59f94457a24c8ae593c3c3c2e687c4d77fae1f
MD5 6358a5d301eddf87492445d43966a984
BLAKE2b-256 68c6fa7f9ae550aa2ac9864b5a2c39fa231ad7575731c972e1d36407e9064c8b

See more details on using hashes here.

Supported by

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