Skip to main content

A function-managing package for models and systems with shared variables.

Project description

porchlight

porchlight is a function management suite that handles common inputs and outputs of methods and/or functions which evolve over the lifetime of a program.

This package's original intent was to be a part of a modular scientific package yet to be released. Rather than isolating this method to a single model, the already-developed work has been modified to stand alone as a package.

porchlight does not have any dependencies outside of the standard CPython library. Please note that porchlight requires Python 3.9+.

Installation

You can install porchlight by cloning this repository to a local directory, opening a command line, and running: pip install porchlight

Usage

The main object used in porchlight is the porchlight.Neighborhood object. This groups all functions together and keeps track of call order and parameters.

import porchlight


# We call a porchlight.Neighborhood object to instantiate it with no functions
# yet.
neighborhood = porchlight.Neighborhood()

# To add a function, we simply define it and pass it to porchlight.
def increment_x(x: int, y: int) -> int:
    x = x * y
    return x

neighborhood.add_function(increment_x)

# The neighborhood object inspects the function, finding input and output
# variables if present. These are added to the collections of functions and
# parameters.
print(neighborhood)

Although this is the current extent of documentation, there should be some more complete documentation within the next couple weeks/months.

Documentation

Documentation for porchlight can be found on Read the Docs here: https://porchlight.readthedocs.io/en/latest/

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

porchlight-0.2.1.tar.gz (33.8 kB view details)

Uploaded Source

Built Distribution

porchlight-0.2.1-py3-none-any.whl (39.4 kB view details)

Uploaded Python 3

File details

Details for the file porchlight-0.2.1.tar.gz.

File metadata

  • Download URL: porchlight-0.2.1.tar.gz
  • Upload date:
  • Size: 33.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for porchlight-0.2.1.tar.gz
Algorithm Hash digest
SHA256 371b38c6d1530547340dd470b5b5ef0634d4a5cd67fa4c002647a24f7901acc1
MD5 4f4392fc9c6ceee95aef52a986de4d82
BLAKE2b-256 6d20eea60da7e8a1fae03e025cc8a4a213a2f32899fe774aa02d4123dddd961a

See more details on using hashes here.

File details

Details for the file porchlight-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: porchlight-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 39.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for porchlight-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9df051e4f1fda30949863036388ef77855330eb3b9151c6d062c03ded9d2f932
MD5 bc6137d1a2a954cdee913451fd438383
BLAKE2b-256 f36093f0bc7fea52d403bbbd7db610764a22a2dcb9c879f0c628fab4f3d17f05

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