Skip to content
This repository was archived by the owner on Aug 25, 2024. It is now read-only.
This repository was archived by the owner on Aug 25, 2024. It is now read-only.

df: Event types #919

Open
Open
@johnandersen777

Description

@johnandersen777

Project Description

A large part of DFFML is the concept of a DataFlow.

Chance orchestrator context run so that it yields three objects, context, event
type, results.

Currently we have a lot of code that looks like this:

for ctx, results in run(dataflow, [... inputs ...]):
    print("The results of", ctx, "are", results)

When this project is over, those for loops will look like this:

for ctx, event, data in run(dataflow, [... inputs ...]):
    if event == EventType.OUTPUT:
        print("The results of", ctx, "are", data)
    elif event == EventType.INPUT:
        print("An input entered network for context", ctx, ":", data)

The way things currently work is that the run function yields when the
context is finished running. It yields the context that was running and the
results.

We need to add another part to a data flow so we can yield Inputs. The event
type would be INPUT, and in the DataFlow we should add a section for events.
In the events section for INPUT events we could specify when an
input should be yielded. We use the inputs section to specify which transitions
between operations should be yielded.

This will enable us to do things like running a DataFlow and not only yielding
the results, but data that's moving through the network as the DataFlow is
running. This allows developers to build applications that show the progress of
a DataFlow as it's running.

Skills

  • Python
  • Refactoring a large codebase
  • Asyncio knowledge would be very helpful here

Difficulty

Intermediate/Hard

Related Readings

Getting Started

Potential Mentors

Tracking and Discussion

This project is related to the following issues. Please discuss and ask
questions in the issue comments. Please also ping mentors on
Gitter when you post on the following
issues so that they are sure to see that you've commented.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestgsocGoogle Summer of Code relatedkind/dataflowIssues partaining to DataFlowsp0Critical PrioritytLEsitmated Time To Complete: Long

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions