Skip to main content

Watches for file changes & runs tasks against your Python code.

Project description

Code Spy

Watches for file changes & runs tasks against your Python code.

Install

 pip install code-spy

Quickstart

from flask import Flask  # Or any WSGI application framework
from code_spy.core import CodeSpy
from code_spy.tasks import (
    MyPyTask,
    DevServerTask,
    PylintTask,
    PytestTask,
)


if __name__ == "__main__":
    
    # Create an instance of a WSGI application
    flask = Flask(__name__)
    
    # Pass the code spy shipped tasks to the `tasks` kwarg:
    cs = CodeSpy(
        path=".",
        tasks=[
            MyPyTask(path="routes", mypy_file="mypy.ini"),
            PylintTask(path="routes", rcfile=".pylintrc"),
            PytestTask(path="tests"),
            DevServerTask(wsgi_app=flask),
        ]
    )
    
    # Now call `watch`, that's it!
    cs.watch()

Tasks

  • Mypy
  • SimpleHttpServer
  • Pylint
  • Pytest

Tasks Requiring Library Installs

To restrict the amount of third party libraries that ship with code-spy, the rest of the tasks require library installs:

  • ISort TODO
  • Flake8 TODO
  • Bandit TODO
  • Sphinx TODO
  • Custom Task TODO

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

code_spy-0.4.6.tar.gz (5.7 kB view details)

Uploaded Source

File details

Details for the file code_spy-0.4.6.tar.gz.

File metadata

  • Download URL: code_spy-0.4.6.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for code_spy-0.4.6.tar.gz
Algorithm Hash digest
SHA256 e9434ce27869ab860ca60f0cf35f321f37cdc78722fe226ba63b4afa48aaf3c2
MD5 6d61f74f905c462985a9e92e18099dcf
BLAKE2b-256 72953ee888d7cb9e42f7a3f533f46a915c51af08c380183cf7d1f88634c88e85

See more details on using hashes here.

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