Skip to content

v0.67.1 - Rename FlamelessFrame to BareFrame (2026-04-05)

What Changed?

This release completes the architecture redesign by renaming FlamelessFrame to BareFrame. The new name clarifies the metaphor: BareFrame is schema-free data (bare, no type guards), while FlameFrame is schema-validated data (flame/torch shines light on types).

In GAS's typeless JavaScript environment, gaslamp's torch module brings light (runtime type safety) to the darkness of untyped data.


Naming Metaphor

BareFrame:

  • Schema-free DataFrame
  • No runtime type validation
  • Core data manipulation: filter, select, groupBy, pivot, etc.
  • Primary entry point for all operations

FlameFrame:

  • Schema-validated wrapper around BareFrame
  • Runtime type guards validate data at ingress/egress
  • Exposes validated rows in passed, invalid rows in failed
  • Validation gate only — no transformation methods

Torch module:

  • Brings clarity and safety to GAS's type-blind environment
  • Expression, BareFrame, FlameFrame, LazyFrame, AfterGlow logger work together
  • FlameWright type guards power the validation system

What's New

User Guide: BareFrame.pivot

Comprehensive guide for pivoting data from long format to wide format:

What it does:

BareFrame.pivot transforms data with many rows and few columns into data with few rows and many columns. Each unique value in a "columns" column becomes a new column header, and cell values come from a "values" column.

How to use it:

JavaScript
const wide = df.pivot({
  index: "product",      // rows = product names
  columns: "month",      // columns = month names
  values: "sales",       // cells = sales values
});

Documentation includes:

  • Comparison with manual nested-loop approach
  • Common patterns (sales by product, metrics comparison)
  • Aggregation with groupBy before pivot
  • Handling missing intersections (null filling)
  • Use case: heatmap data foundation
  • Error handling and practical workflow example

Added

  • docs/guides/pivot.md — Complete user guide for BareFrame.pivot method
  • Without/With gaslamp comparison
  • Understanding pivot parameters (index, columns, values)
  • Common patterns with examples
  • Aggregation before pivot (groupBy + sum pattern)
  • Missing intersection handling
  • Heatmap use case explanation
  • Practical workflow example

Changed

  • docs/guides/index.md — Added link to pivot guide
  • mkdocs.yml — Added pivot guide to navigation
  • CLAUDE.md:
  • Removed redundant "Module Interdependencies" section (superseded by architecture docs)
  • Removed "Allowed Dependencies" section (inverse of GAS Compatibility Requirements)
  • Removed detailed glab command examples (references ISSUES.md instead)
  • Removed verbose Release Notes Management (references Release Workflow Documentation)
  • Removed unnecessary directory entries (.specify, .opencode, .vscode)
  • Simplified "Common Gotchas" (removed redundant items about bundle format, type validation)
  • Clarified User/Claude split for release workflow
  • Updated docs/guides directory structure list to include pivot

Fixed

  • docs/guides/index.md — Reviewed and updated for accuracy
  • CLAUDE.md — Removed outdated/redundant items for clarity

Is It Safe to Upgrade?

  • Breaking Changes: No
  • Backward Compatible: Yes

This is a documentation-only release. No code changes affect existing functionality.


Release Details

  • Date: 2026-04-05
  • Version: v0.67.1
  • gaslamp: 127
  • pilotlamp: 85
  • Files Changed: 8 files (all documentation)
  • Commits (selected):
  • 0bc03021 docs(guides): add BareFrame.pivot user guide
  • edb85bb5 docs(guides/pivot): add heatmap use case explanation
  • c2dc6a4a docs(guides/pivot): add aggregation before pivot section
  • 289d6387 docs(CLAUDE.md): remove redundant sections to improve clarity
  • 341700e9 docs: update FlamelessFrame references to BareFrame in README and CLAUDE
  • f4b00de2 chore(release): bump version 0.67.0 → 0.67.1

Next Steps