# Path: config/config.py
# CONFIG = Config(dictionary)
# 
# Path: bigbang/utils.py
# def get_paths_to_files_in_directory(
#     directory: str, file_dsc: str = "*"
# ) -> List[str]:
# def get_paths_to_dirs_in_directory(
#     directory: str, folder_dsc: str = "*"
# ) -> List[str]:
# def labeled_blockmodel(g, partition):
# def repartition_dataframe(df, partition):
# def get_common_head(str1, str2, delimiter=None):
# def get_common_foot(str1, str2, delimiter=None):
# def remove_quoted(mess):
# def clean_message(mess):
# def add_freq(idx, freq=None):
# 
# Path: bigbang/analysis/entity_resolution.py
# def entity_resolve(row, emailCol, nameCol):
#     """Return a row with name and email by ID."""
# 
#     emailAddress = row[emailCol].upper()
#     emailAddress = emailAddress.replace(" AT ", "@")
# 
#     match = nameRegex.search(emailAddress)
#     name = None
# 
#     if match is not None:
#         name = match.group(0)  # unused info for now
#         emailAddress = emailAddress.replace(name, "")
#         name = name.replace("(", "")
#         name = name.replace(")", "")
#     if nameCol is not None:
#         name = row[nameCol].upper()
#     row["Person-ID"] = getID(name, emailAddress)
#     return row


from datetime import datetime
from time import mktime
from git import *
from git import Repo
from config.config import CONFIG
from bigbang import utils
from bigbang.analysis.entity_resolution import entity_resolve
import git
import networkx as nx
import numpy as np
import pandas as pd
        self.repo = None
        self.name = name

        if cache is None:
            self.repo = Repo(url)
            self.populate_data(ALL_ATTRIBUTES)
        else:
            cache = cache.apply(cache_fixer, axis=1)
            cache.set_index(cache["Time"])
            self._commit_data = cache

            missing = list()
            cols = self.commit_data.columns
            for attr in attribs:
                if attr not in cols and str(attr) not in cols:
                    missing.append(attr)

            if len(missing) > 0:
                print(
                    (
                        "There were "
                        + str(len(missing))
                        + " missing attributes: "
                    )
                )
                print(missing)

        if "Committer Name" in attribs and "Committer Email" in attribs:
            self._commit_data["Person-ID"] = None
            self._commit_data = self._commit_data.apply(

# Path: config/config.py
# CONFIG = Config(dictionary)
# 
# Path: bigbang/utils.py
# def get_paths_to_files_in_directory(
#     directory: str, file_dsc: str = "*"
# ) -> List[str]:
# def get_paths_to_dirs_in_directory(
#     directory: str, folder_dsc: str = "*"
# ) -> List[str]:
# def labeled_blockmodel(g, partition):
# def repartition_dataframe(df, partition):
# def get_common_head(str1, str2, delimiter=None):
# def get_common_foot(str1, str2, delimiter=None):
# def remove_quoted(mess):
# def clean_message(mess):
# def add_freq(idx, freq=None):
# 
# Path: bigbang/analysis/entity_resolution.py
# def entity_resolve(row, emailCol, nameCol):
#     """Return a row with name and email by ID."""
# 
#     emailAddress = row[emailCol].upper()
#     emailAddress = emailAddress.replace(" AT ", "@")
# 
#     match = nameRegex.search(emailAddress)
#     name = None
# 
#     if match is not None:
#         name = match.group(0)  # unused info for now
#         emailAddress = emailAddress.replace(name, "")
#         name = name.replace("(", "")
#         name = name.replace(")", "")
#     if nameCol is not None:
#         name = row[nameCol].upper()
#     row["Person-ID"] = getID(name, emailAddress)
#     return row


# Path: bigbang/ingress/git_repo.py
from datetime import datetime
from time import mktime
from git import *
from git import Repo
from config.config import CONFIG
from bigbang import utils
from bigbang.analysis.entity_resolution import entity_resolve
import git
import networkx as nx
import numpy as np
import pandas as pd

        self.repo = None
        self.name = name

        if cache is None:
            self.repo = Repo(url)
            self.populate_data(ALL_ATTRIBUTES)
        else:
            cache = cache.apply(cache_fixer, axis=1)
            cache.set_index(cache["Time"])
            self._commit_data = cache

            missing = list()
            cols = self.commit_data.columns
            for attr in attribs:
                if attr not in cols and str(attr) not in cols:
                    missing.append(attr)

            if len(missing) > 0:
                print(
                    (
                        "There were "
                        + str(len(missing))
                        + " missing attributes: "
                    )
                )
                print(missing)

        if "Committer Name" in attribs and "Committer Email" in attribs:
            self._commit_data["Person-ID"] = None
            self._commit_data = self._commit_data.apply(

                lambda row: entity_resolve(