apps.bazel_parser.refinement

Classes

Verbosity

Create a collection of name/value pairs.

RefinementConfig

This specifies how to refine a dataframe of nodes to a smaller set.

Functions

refine_dataframe(→ pandas.DataFrame)

remove_node_from_repo(→ None)

Modify graph by removing node, but preserving edges.

full_refinement(→ pandas.DataFrame)

Module Contents

class apps.bazel_parser.refinement.Verbosity(*args, **kwds)[source]

Bases: enum.Enum

Create a collection of name/value pairs.

Example enumeration:

>>> class Color(Enum):
...     RED = 1
...     BLUE = 2
...     GREEN = 3

Access them by:

  • attribute access:

>>> Color.RED
<Color.RED: 1>
  • value lookup:

>>> Color(1)
<Color.RED: 1>
  • name lookup:

>>> Color['RED']
<Color.RED: 1>

Enumerations can be iterated over, and know how many members they have:

>>> len(Color)
3
>>> list(Color)
[<Color.RED: 1>, <Color.BLUE: 2>, <Color.GREEN: 3>]

Methods can be added to enumerations, and members can have their own attributes – see the documentation for details.

SILENT = 'SILENT'[source]
COUNT = 'COUNT'[source]
LIST = 'LIST'[source]
class apps.bazel_parser.refinement.RefinementConfig[source]

This specifies how to refine a dataframe of nodes to a smaller set.

We expect node_name to be the index of the dataframe.

All of these fields are exclusionary.

name_patterns: list[str][source]
class_patterns: list[str][source]
class_pattern_to_name_patterns: dict[str, list[str]][source]
apps.bazel_parser.refinement.refine_dataframe(df: pandas.DataFrame, refinement: RefinementConfig, verbosity: Verbosity) pandas.DataFrame[source]
Parameters:
Return type:

pandas.DataFrame

apps.bazel_parser.refinement.remove_node_from_repo(node: str, repo: apps.bazel_parser.repo_graph_data.RepoGraphData) None[source]

Modify graph by removing node, but preserving edges.

XXX: How to handle probability / duration attributes of removed nodes?

Parameters:
Return type:

None

apps.bazel_parser.refinement.full_refinement(repo: apps.bazel_parser.repo_graph_data.RepoGraphData, refinement: RefinementConfig, verbosity: Verbosity) pandas.DataFrame[source]
Parameters:
Return type:

pandas.DataFrame