NEWS


BFHcharts 0.23.0

Nye features

BFHcharts 0.22.1

Behavior change

BFHcharts 0.22.0

Breaking changes

Bug fixes

BFHcharts 0.21.0

Nye features

Dependency bumps

BFHcharts 0.20.0

Nye features

Bug fixes (cycle 04 + 05 dual-review)

Cycle 04 (final-state branch-review, 2026-05-18) + cycle 05 (user-led audit efter cycle 04 fixes) identificerede 14 fund. Fixes:

Bug fixes (cycle 07 dual-review)

Cycle 07 (post-merge audit via BFHddl-integration, 2026-05-18) identificerede 4 fund:

Internal changes

Validation infrastructure

Test-suite

Refs

BFHcharts 0.19.0

Bug fixes

Breaking changes

Internt

BFHcharts 0.18.0

Nye features

Bug fixes

Nye features

Interne ændringer

BFHcharts 0.17.3

Bug fixes

BFHcharts 0.17.2

Bug fixes

Deprecated

BFHcharts 0.17.1

Production-readiness audit (cycle 01, 2026-05-10) drevet af dual-review-cycle-skill med Codex peer-review. 11 PRs merged til develop. Verdict: APPROVE for produktion (multi-tenant Connect Cloud

Bug fixes

Security

Documentation

Internal changes

BFHcharts 0.17.0

Breaking changes

Bug fixes

Nye features

BFHcharts 0.16.1

Security

Bug fixes

Internal changes

BFHcharts 0.16.0

Breaking changes

Nye features

Interne ændringer

Bug fixes

Yderligere interne aendringer (logo-conditional)

BFHcharts 0.15.0

Breaking changes

Bug fixes

Internal changes

BFHcharts 0.14.5

Internal changes

BFHcharts 0.14.4

Internal changes

BFHcharts 0.14.3

Breaking changes

Internal changes

BFHcharts 0.14.2

Breaking changes

Nye features

Bug fixes

Internal changes

BFHcharts 0.14.1

Bug fixes

BFHcharts 0.14.0

Nye features

BFHcharts 0.13.0

Breaking changes

Nye features

Bug fixes

Interne ændringer

BFHcharts 0.12.2

Interne ændringer

BFHcharts 0.12.1

Bug fixes

BFHcharts 0.12.0

Breaking changes

Forbedringer

Bug fixes

Interne ændringer

BFHcharts 0.11.1

Bug fixes

Dokumentation

BFHcharts 0.11.0

CI

Breaking changes

Forbedringer

Sikkerhed

Bug fixes

CI

Interne ændringer

Tests

API

Interne ændringer (modernization)

BFHcharts 0.10.5

Bug fixes

Interne aendringer

Sikkerhed

Dokumentation

BFHcharts 0.10.4

Interne aendringer

BFHcharts 0.10.1

Bug fixes

BFHcharts 0.10.0

Breaking changes

BFHcharts 0.9.0

Breaking changes

Nye features

BFHcharts 0.8.3

Nye features

Interne ændringer

Sikkerhed

BFHcharts 0.8.2

Breaking changes (internal API)

Interne ændringer

BFHcharts 0.8.1

Bug fixes

BFHcharts 0.8.0

Breaking changes

Bug fixes

BFHcharts 0.7.2

Nye features

BFHcharts 0.7.1

Bug fixes

BFHcharts 0.7.0

Nye features

result <- bfh_qic(data, x = date, y = value, chart_type = "i")

# Nyt (anbefalet): fyldestgørende stats inkl. outliers
stats <- bfh_extract_spc_stats(result)

# Gammelt: kun runs/crossings fra summary — bevares for bagudkompatibilitet
stats_summary_only <- bfh_extract_spc_stats(result$summary)

Bug fixes

Interne ændringer

BFHcharts 0.6.2

Forbedringer

Breaking changes

BFHcharts 0.6.0

Package Size Reduction

New Features

Example usage:

# Auto-generate analysis with AI (if BFHllm installed)
bfh_qic(data, x = month, y = infections, chart_type = "i") |>
  bfh_export_pdf("report.pdf",
    metadata = list(
      data_definition = "Antal infektioner pr. 1000 patientdage",
      target = 2.5
    ),
    auto_analysis = TRUE
  )

# Use standard texts only (no AI)
bfh_generate_analysis(result, use_ai = FALSE)

BFHcharts 0.5.1

New Features


BFHcharts 0.5.0

Breaking Changes

Internal Improvements


BFHcharts 0.4.1

Improvements


BFHcharts 0.4.0

New Features


BFHcharts 0.3.5

Performance Improvements

Significant performance optimizations for PDF export functionality, delivering 40-50% faster export times and 75% smaller temporary files.

High-Impact Optimizations

Performance Benchmarks

| Metric | Before (v0.3.4) | After (v0.3.5) | Improvement | |--------|-----------------|----------------|-------------| | Single PDF export | ~500-800ms | ~300-400ms | 40-50% faster | | Temp file size | ~15-25 MB | ~4-6 MB | 75% smaller | | Quarto check (cached) | ~50ms | ~2ms | 96% faster |

Implementation Details

Note: Visual QA confirms 150 DPI provides excellent quality for PDF output. Temporary files are automatically cleaned up after each export.


BFHcharts 0.3.4

Code Quality and Error Handling

This release improves internal code organization, error handling, and API clarity.

API Improvements

Error Handling Enhancements

Dead Code Removal

Testing

Impact: No breaking changes. Internal API changes only affect advanced users who directly call helper functions with :::.


BFHcharts 0.3.3

Security Hardening

IMPORTANT: This release addresses critical security vulnerabilities in PDF export functionality. Healthcare organizations using BFHcharts in production environments should update immediately.

Critical Path Validation

Input Validation Strengthening

Defense in Depth

Testing

Compliance: These changes strengthen BFHcharts for HIPAA/GDPR compliance requirements in healthcare environments.


BFHcharts 0.3.2

Bug Fixes

Improvements


BFHcharts 0.3.1

Bug Fixes

New Features

Improvements


BFHcharts 0.3.0

Breaking Changes

New Features

Export Functionality

S3 Class System

Typst Templates

Migration Guide (0.2.0 → 0.3.0)

Basic Usage (Plot Display)

If you only display plots in console/viewer, no changes needed:

# Works exactly the same in 0.3.0
bfh_qic(data, x = date, y = value, chart_type = "i")

Accessing the ggplot Object

If you need to customize the plot with ggplot2 layers:

# Before (0.2.0):
plot <- bfh_qic(data, x = date, y = value, chart_type = "i")
plot + labs(caption = "Source: EPJ")

# After (0.3.0):
result <- bfh_qic(data, x = date, y = value, chart_type = "i")
result$plot + labs(caption = "Source: EPJ")

Getting Summary Statistics

# Before (0.2.0):
result <- bfh_qic(data, x, y, chart_type = "i", print.summary = TRUE)
summary_stats <- result$summary

# After (0.3.0) - Recommended:
result <- bfh_qic(data, x, y, chart_type = "i")
summary_stats <- result$summary  # Always available

# After (0.3.0) - Legacy (with deprecation warning):
result <- bfh_qic(data, x, y, chart_type = "i", print.summary = TRUE)
summary_stats <- result$summary  # Still works but warns

Using return.data Parameter

# Backwards compatible - no changes needed
qic_data <- bfh_qic(data, x, y, chart_type = "i", return.data = TRUE)

New Export Workflows

# PNG export
bfh_qic(data, x, y, chart_type = "i", chart_title = "Infections") |>
  bfh_export_png("infections.png", width_mm = 200, height_mm = 120, dpi = 300)

# PDF export (requires Quarto CLI)
bfh_qic(data, x, y, chart_type = "i", chart_title = "Infections") |>
  bfh_export_pdf(
    "infections_report.pdf",
    metadata = list(
      hospital = "BFH",
      department = "Kvalitetsafdeling",
      analysis = "Signifikant fald observeret",
      data_definition = "Antal infektioner per måned"
    )
  )

System Requirements

Documentation


BFHcharts 0.2.0

Breaking Changes

Migration Guide

Update your code by replacing create_spc_chart with bfh_qic:

# Before (0.1.0):
plot <- create_spc_chart(
  data = my_data,
  x = date,
  y = value,
  chart_type = "i"
)

# After (0.2.0):
plot <- bfh_qic(
  data = my_data,
  x = date,
  y = value,
  chart_type = "i"
)

No other changes required - all parameters work exactly the same.

BFHcharts 0.1.0