v0.63.0 - BareFrame-First Refactoring (2026-04-04)¶
What Changed?¶
This release completes the BareFrame-first refactoring of FlameFrame.
FlameFrame is now a pure validation gate — it no longer provides factory shortcuts,
transformation methods, or delegating read methods.
All data operations are performed on BareFrame directly.
What's New¶
Main Feature: BareFrame-First Design for FlameFrame¶
What it does:
FlameFrame now has a single responsibility: schema validation.
Use BareFrame for all data operations, then pass the result to FlameFrame.from
to validate input or output data against a schema.
How to use it:
- Read data with
BareFrame.fromSheet(orfromArrays,fromColumns, etc.) - Validate input with
FlameFrame.from(df, schema) - Transform using
dfdirectly (orframe.toDataFrame()ifdfis out of scope) - Optionally re-validate output with
FlameFrame.from(result, schema) - Write with
frame.toSheet(sheet)
Code example:
JavaScript
const df = gaslamp.BareFrame.fromSheet(inputSheet);
const schema = {
name: gaslamp.FlameGuards.isString,
age: gaslamp.FlameGuards.isNumber,
};
// 1. Validate input
const { frame, errors } = gaslamp.FlameFrame.from(df, schema);
if (errors.hasErrors) {
errors.toDataFrame().toSheet(errorSheet);
return;
}
// 2. Transform using BareFrame
const seniors = df.filter(row => row.get("age") >= 60);
// 3. Validate output (optional) and write
const { frame: output } = gaslamp.FlameFrame.from(seniors, schema);
output.toSheet(outputSheet);
Added¶
- Nothing added.
Changed¶
- Nothing changed (all changes are removals).
Removed¶
FlameFrame.fromColumns— useBareFrame.fromColumns+FlameFrame.fromFlameFrame.fromRows— useBareFrame.fromRows+FlameFrame.fromFlameFrame.fromArrays— useBareFrame.fromArrays+FlameFrame.fromFlameFrame.withColumn— useframe.toDataFrame().withColumn(...)FlameFrame.rename— useframe.toDataFrame().rename(...)FlameFrame.length— useframe.toDataFrame().lengthFlameFrame.headers— useframe.toDataFrame().headersFlameFrame.shape— useframe.toDataFrame().shapeFlameFrame.toRows— useframe.toDataFrame().toRows()FlameFrame.toColumns— useframe.toDataFrame().toColumns()FlameFrame.toArrays— useframe.toDataFrame().toArrays()
Fixed¶
- Nothing fixed.
Is It Safe to Upgrade?¶
- Breaking Changes: Yes
- Backward Compatible: No
Users who call any of the removed methods will get a runtime error.
Migration pattern: replace frame.method(...) with frame.toDataFrame().method(...),
or reuse the original df variable when it is still in scope.
Release Details¶
- Date: 2026-04-04
- Version: v0.63.0
- gaslamp: 122
- pilotlamp: 80
- Files Changed: 10
- Commits:
f2733c50refactor(flameframe)!: remove delegating read methods and getters385f6daerefactor(flameframe)!: remove withColumn and rename transformation methods3ad4a82frefactor(flameframe)!: remove fromColumns/fromRows/fromArrays factory methods3f56b350docs(flameframe): update docstring examples to BareFrame-first pattern76739fafdocs(guides): update flameframe guidef734eb14docs(getting-started): update first-steps and practical-workflowsd9e08d85docs(getting-started): prefer original df over frame.toDataFrame()10d8c454docs(getting-started): prefer original df in first-stepsb3a3364bdocs(api): regenerate TypeDoc output2a095236docs(claude): document BareFrame-first design pattern
Known Issues¶
- None.
Next Steps¶
- Continue BareFrame-first adoption across user-facing guides and examples.