Urgent.News

What's breaking now, across thousands of outlets.

Tech

Libghostty 1.0

Libghostty 1.0 has arrived, marking a significant milestone for the portable, high-performance C library used for terminal emulation. The 1.0 release signifies that both the library and the C Application Binary Interface (ABI) are now stable. Although libghostty was first announced about a year ago, the C API didn't exist then, and no other application was utilizing it. However, today, libghostty powers millions of end-users across hundreds of products, both free and commercial.

Since launching the Ghostty project in 2022, the most frequently asked question was "why?" The answer is provided by showcasing the broad industry impact libghostty has had. A notable example is JetBrains IDEs, where over 12.5 million active users now benefit from a libghostty-powered terminal after incorporating it into their products. Other projects such as Neovim, KDE, Vercel's Turborepo, devenv, Antithesis, Ghostel, and ghostty-web are also built on libghostty.

Libghostty adheres to semantic versioning and provides strict ABI compatibility guarantees, ensuring safe packaging for distributions and easy integration for program developers. The library boasts a strong, stable ABI, enabling future additions without disrupting existing functionality. It employs an opaque handle for objects, uses enum-keyed getters and setters for extensive features, and pinning of Enums to int on every compiler to maintain consistency.

The 1.0 release also brings proper build tooling, tarballs, dependency licensing manifests, and comprehensive documentation. Libghostty enjoys its own release cycle, separate from Ghostty the application, with its own tarballs containing all necessary files and dependencies. It is MIT licensed, with no copyleft code in the dependency tree, and supports a wide range of platforms and architectures.

Written by urgent.news from Lobsters's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at mitchellh.com →

More in Tech

SET SESSION AUTHORIZATION Changes More Than the Current Role

SET SESSION AUTHORIZATION Changes More Than the Current Role PostgreSQL exposes two identities in a session: the authenticated session user and the current user used for permission checks.

  • SET SESSION AUTHORIZATION alters both authenticated session user and current user identities.
  • Current user determines permission checks in PostgreSQL.
  • Only superuser can change session user to arbitrary name.

More from Friday 6 November →