vorce / pacer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Pacer

Pacer: An Elixir Library for Dependency Graph-Based Workflows With Robust Compile Time Safety & Guarantees

Overview

Pacer.Workflow is an abstraction designed for complex workflows where many interdependent data points need to be stitched together to provide a final result, specifically workflows where each data point needs to be loaded and/or calculated using discrete, application-specific logic.

See the moduledocs for Pacer.Workflow for detailed information about how to use Pacer and define your own workflows, along with a detailed list of options and ideas that underlie Pacer.

Installation

Add :pacer to the list of dependencies in mix.exs:

[
  {:pacer, "~> 0.1"}
]

Contributing

We welcome everyone to contribute to Pacer -- whether it is documentation updates, proposing and/or implementing new features, or contributing bugfixes.

Please feel free to create issues on the repo if you notice any bugs or if you would like to propose new features or implementations.

When contributing to the codebase, please:

  1. Run the test suite locally with mix test
  2. Verify Dialyzer still passes with mix dialyzer
  3. Run mix credo --strict
  4. Make sure your code has been formatted with mix format

In your PRs please provide the following detailed information as you see fit, especially for larger proposed changes:

  1. What does your PR aim to do?
  2. The reason/why for the changes
  3. Validation and verification instructions (how can we verify that your changes are working as expected; if possible please provide one or two code samples that demonstrate the behavior)
  4. Additional commentary if necessary -- tradeoffs, background context, etc.

We will try to provide responses and feedback in a timely manner. Please feel free to ping us if you have a PR or issue that has not been responded to.

About

License:Apache License 2.0


Languages

Language:Elixir 100.0%