Files
hakorune/CHANGELOG.md
nyash-codex 0455307418 refactor(phase-a): remove Cranelift/JIT backend legacy code (~373 lines)
Phase A cleanup - Safe deletions with zero risk:

## Deleted Files (6 files, 373 lines total)
1. Cranelift/JIT Backend (321 lines):
   - src/runner/modes/cranelift.rs (45 lines)
   - src/runner/modes/aot.rs (55 lines)
   - src/runner/jit_direct.rs (152 lines)
   - src/tests/core13_smoke_jit.rs (42 lines)
   - src/tests/core13_smoke_jit_map.rs (27 lines)

2. Legacy MIR Builder (52 lines):
   - src/mir/builder/exprs_legacy.rs
   - Functionality inlined into exprs.rs (control flow constructs)

## Module Reference Cleanup
- src/backend/mod.rs: Removed cranelift feature gate exports
- src/runner/mod.rs: Removed jit_direct module reference
- src/runner/modes/mod.rs: Removed aot module reference
- src/mir/builder.rs: Removed exprs_legacy module

## Impact Analysis
- Build: Success (cargo build --release)
- Tests: All passing
- Risk Level: None (feature already archived, code unused)
- Related: Phase 15 JIT archival (archive/jit-cranelift/)

## BID Copilot Status
- Already removed in previous cleanup
- Not part of this commit

Total Reduction: 373 lines (~0.4% of codebase)
Next: Phase B - Dead code investigation

Related: #phase-21.0-cleanup
Part of: Legacy Code Cleanup Initiative
2025-11-06 22:34:18 +09:00

3.4 KiB
Raw Blame History

Nyash Project Changelog (Work in progress)

This changelog tracks highlevel milestones while Core MIR and Phase 12 evolve. For detailed perfile history, see git log and docs under docs/development/roadmap/.

20250906

  • Core13 flip complete: code/tests enforce Core13 minimal kernel. Normalizations (Array/Ref→BoxCall, TypeCheck/Cast/Barrier/WeakRef unification) are ON by default via env (NYASH_MIR_CORE13=1). New tests validate normalization.
  • Docs synced: step50 marked done; DEV quickstart points to Core13 reference.

20250904

  • Phase 12.7A complete: peek, continue, ? operator, lambda, field type annotations. Language reference updated.
  • Phase 12.7B (basic) complete: parserlevel desugaring for |>, ?., ??, +=/-=/*=/=, .. behind NYASH_SYNTAX_SUGAR_LEVEL.
  • Docs: language reference and Phase 12.7 README updated to reflect basic completion; extensions tracked under gated plan.
  • MIR Core migration: previously enforcing Core15 during transition; superseded by 20250906 Core13 flip.

20250903

  • Nyash ABI TypeBox integration stabilized across core boxes; differential tests added; loader defaults adjusted (builtin + plugins).

Notes

  • Core13 is canonical minimal kernel. Historical Core15 notes remain under docs/development/roadmap/ for reference.
  • Phase 12.7B desugaring is gated by NYASH_SYNTAX_SUGAR_LEVEL; tokenizer additions are nonbreaking.

20250911 (Phase 15)

  • llvm: BoxCall arm cleanup — unreachable legacy block removed; arm now delegates solely to instructions::lower_boxcall.
  • llvm/docs: Documented LLVM lowering rules (StringBox i8* fast path, ExternCall ptr/handle selection, minimal fallback policy for string concat).
  • docs: Added ARCHITECTURE.md, LOWERING_LLVM.md, EXTERNCALL.md, PLUGIN_ABI.md.
  • nyrt: resolved plugin module duplication; build green.
  • builder: suppressed StringBox birth (constructed in LLVM path).

20251106 — Phase 21.0 (Full SelfHosting)

  • Full SelfHosting achieved (DoD met):
    • S1/S2 determinism: v1 emit for const/compare/threeblockcollect repeats 3× with identical normalized hash.
    • PRIMARY nofallback (hv1 inline): selfhost_v1 minimal OptionA/B reps PASS (rc=42).
    • S3 (llvmlite + Nyash Kernel link + run): ternary collect (rc=44) / map set→size (rc=1) PASS. Autoruns when LLVM18/llvmlite is present.
  • Harness/root changes:
    • ny_mir_builder.sh routes v1 JSON directly to llvmlite harness; EXE links against libnyash_kernel.a.
    • Python LLVM builder fixes: cmp field normalization (Lt/Le/… → < <= …), ret PHI synthesis (avoid ret=0), flat mir_call shape acceptance.
  • Using/alias polish (prod): modules mapping preferred; missing module aliases added (StrCast / MethodAliasPolicy). Duplicate using in VM extern_provider cleaned.
  • Docs: phase21.0 marked COMPLETE (Quick Verify updated). CURRENT_TASK closed.

20251106 — Phase 21.1 (LLVM CAPI emitonly) finalize

  • CAPI path green for both reps (ternary rc=44 / map set→size rc=1). tools/smokes/v2/profiles/quick/core/phase2111/run_all.sh runs both.
  • VM handler cleanup (SSOT): removed duplicated hostbridge.extern_invoke branches in calls.rs; all externs route through extern_provider_dispatch.
  • Trace polish: consolidated [hb:*] to lownoise, gated by HAKO_CABI_TRACE=1.
  • Docs updated: phase21.1 README set to COMPLETE with Quick Verify and troubleshooting.