Changelog

Reverse-chronological log of shipped work. Dates are merge/commit dates; PR numbers link to the merge that shipped each milestone. Sections under each release: Added / Changed / Fixed / Removed.

For what’s queued up next, see the roadmap; this file is the trail of how the current state got there.

0.9.0 — Kernel self-host with TCC (May 2026)

Version bump: 0.8.1 → 0.9.0. The bootable Multiboot 2 kernel ELF is now built end-to-end with our shipped TCC — host-side via ./build-kernel-tcc.sh, in-OS via the generated /apps/rebuild-kernel.sh (kernel-sh script driving /apps/tcc.elf once per source). Boot banner reports build origin (gcc-host / tcc-host / tcc-in-os). See the kernel rebuild guide.

Added

Changed

Open (handed off)

0.8.x — In-OS TCC milestone (May 2026)

Version bump: 0.7.x → 0.8.x. tcc.elf (TinyCC v0.9.27 cross-built against the Makar libc shim) ships on every ISO at /apps/tcc.elf. The sysroot (/usr/{include,lib} plus /usr/lib/tcc/) is auto-staged by build-tcc.sh.

Added

Fixed

0.7.0 — POSIX process model (PR #166)

Version bump: 0.6.0 → 0.7.0. fork+execve+wait4 is a significant capability layer — the rest of the userland roadmap (musl, dash, pipes, userland shell) now has the kernel-side foundation it needs.

Added — fork() + execve() + wait4() (slices 15-16)

POSIX process model on Makar. Detailed implementation walkthrough in internals §11; overview here.

Fixed

Changed

Added — signals + preemption hardening (PR #154, slices 8 + 9)

Changed (signals + preemption)

Removed (signals + preemption)

Added

Changed

Fixed

Removed

0.5.0 — 2026-05-14

#129. First tagged release.

Added

Changed

2026-05-13 — Test infrastructure

Changed

#125.

2026-05-12 — Keyboard hardening

Added

Fixed

#127.

2026-05-12 — Keyboard rewrite

Changed

Added

#124.

2026-05-08 — Preemptive tasking

Added

Fixed

#123.

2026-05-02 — FAT32 userspace fileops

Added

#120.

2026-05-02 — Multi-TTY

Added

#119.

2026-05-01 — Userspace

Added

#118.

2026-05-01 — Shell polish

Added

#117.

2026-04-30 — Build consolidation

Changed

#116.

2026-04-29 — HDD path + auto-release

Added

#114, #115.

2026-04-29 — VESA panes

Added

#113.

2026-04-26 — Display & I/O

Added

#110, #111, #112.

2026-04-25 — VMM + ring-3

Added

Fixed

#53.

2026-04-12 — Filesystem + name

Added

Changed

2026-04-11 — Multitasking + storage

Added

Changed

2026-04-12 — Memory + ACPI

Added

2026-04-09 — Rebirth

Changed

2025-01 — Single-commit hiatus

A drive-by “fix assembly comments.” commit while the rest of the codebase slept.

The project then sat largely dormant from 2020 through early 2026.

2020-08 — A brief return

Changed

Nothing shipped beyond scaffolding. Repo went quiet again after about a week.

2019-08 — First strokes

Added

The project was unnamed and the build was driven by a hand-rolled QEMU shell script. Repo went quiet after about a week.

Roadmap

What’s tracked but not shipped — see roadmap for canonical status and the issue tracker for everything else.

Long term: musl libc port → dash → in-kernel TCC for write-compile-run on bare metal. See Userland libc.