from myspellchecker.utils.console import PipelineConsole
from myspellchecker.data_pipeline.reporter import PipelineReporter
# Create reporter
console = PipelineConsole()
reporter = PipelineReporter(console)
# Report pipeline progress
def run_pipeline(reporter):
total_steps = 4
# Step 1
reporter.report_step_start(1, total_steps, "Ingesting corpus")
reporter.report_progress("Reading file...")
reporter.report_info("Found 10,000 lines")
reporter.report_step_complete(1, total_steps, "Ingesting corpus", "1.2s")
# Step 2
reporter.report_step_start(2, total_steps, "Segmenting text")
reporter.report_progress("Processing...")
reporter.report_step_complete(2, total_steps, "Segmenting text", "5.3s")
# Step 3 (skipped)
reporter.report_step_skipped(3, total_steps, "POS Tagging", "No POS seed provided")
# Step 4
reporter.report_step_start(4, total_steps, "Building database")
reporter.report_progress("Creating tables...")
reporter.report_success("Database created successfully")
reporter.report_step_complete(4, total_steps, "Building database", "2.1s")