Skip to content

v0.28.5 - FlameWright API consistency improvements (2026-03-21)

What Changed?

This release improves consistency across the FlameWright module. The FlameWright constructor now uses the same (name, options) signature as FlameForge and AfterGlow. isUrl has been renamed to isUrlLike to more accurately reflect its string-based heuristic behavior.


What's New

Constructor Signature Unified: (name, options)

What it does: FlameWright now accepts name as a positional argument, matching the pattern used by FlameForge and AfterGlow.

How to use it:

TypeScript
// Before
const fw = new FlameWright({ name: "myValidator" });

// After
const fw = new FlameWright("myValidator");
const fw = new FlameWright("myValidator", { logLevel: "debug" });

isUrl renamed to isUrlLike

What it does: The function isUrl in FlameCombined (and FlameGuards) has been renamed to isUrlLike. It performs string-based checks only (startsWith, endsWith, contains) and does not validate URL syntax. The new name makes this limitation explicit.

How to use it:

TypeScript
// Before
FlameGuards.isUrl("https://example.com"); // true

// After
FlameGuards.isUrlLike("https://example.com"); // true
FlameGuards.isUrlLike("https://example.com", { startsWith: "https" }); // true
FlameGuards.isUrlLike("http://example.com", { startsWith: "https" }); // false

Added

  • docs/dev/patterns.md: New developer guide documenting the (name, options) constructor pattern used across the codebase.

Changed

  • FlameWright constructor signature changed from (options: FlameWrightOptions) to (name: string, options: FlameWrightOptions).
  • FlameWrightCoreOptions: replaced name?: string with strict?: boolean to align with FlameForgeCoreOptions.
  • isUrl renamed to isUrlLike in FlameCombined and FlameGuards.
  • Test comments in flamewright.flameguards.test.ts and flamewright.flameforge.test.ts translated from Japanese to English.

Fixed

  • Nothing.

Is It Safe to Upgrade?

  • Breaking Changes: Yes
  • Backward Compatible: No

Impact on existing users

FlameWright constructor — If you pass an options object with name directly, update the call:

TypeScript
// Before (breaks)
new FlameWright({ name: "myValidator" })

// After
new FlameWright("myValidator")

isUrlisUrlLike — Rename any direct usage of FlameGuards.isUrl or FlameCombined.isUrl:

TypeScript
// Before (breaks)
FlameGuards.isUrl(value)

// After
FlameGuards.isUrlLike(value)

Release Details

  • Date: 2026-03-21
  • Version: v0.28.5
  • gaslamp: -
  • pilotlamp: -
  • Files Changed: 15
  • Commits:
    • 78b838b refactor(flamewright): unify FlameWright constructor to (name, options) signature
    • 2eb9e2d refactor(flamewright): rename isUrl to isUrlLike in FlameCombined
    • f9d01ec test(flamewright): translate Japanese comments to English
    • 6073d10 docs(dev): add Design Patterns guide for constructor pattern
    • 5ea110f bump: version 0.28.4 → 0.28.5

Known Issues

  • None.

Next Steps

  • Complete FlameTorch validators for DataFrame and Expression types.
  • Investigate strict URL validation using the URL constructor for a future isUrl implementation.