How to Report a FontForge Bug or Crash

This guide provides a straightforward walkthrough on how to properly document and report bugs or application crashes to the FontForge development team. You will learn where FontForge issues are tracked, what essential system and diagnostic information you need to collect, how to generate a crash backtrace, and how to submit a clear, actionable bug report that developers can resolve quickly.

1. Locate the Official Issue Tracker

FontForge tracks all software defects, feature requests, and crashes through its official GitHub repository. To begin, navigate to the FontForge GitHub Issues page at https://github.com/fontforge/fontforge/issues. You will need a free GitHub account to post a report.

2. Search for Existing Reports

Before opening a new ticket, check whether someone else has already reported the same problem:

  • Use the search bar on the Issues page.
  • Filter through both open and closed issues using relevant keywords, error messages, or the specific tool/feature that triggered the bug.
  • If you find an existing thread matching your problem, add a comment describing your setup and confirming that the issue persists, rather than opening a duplicate ticket.

3. Gather Necessary Information

A developer must be able to reproduce the bug to fix it. Collect the following details before writing your report:

  • FontForge Version: Check Help > About FontForge to get the exact version number or Git commit hash and release date.
  • Operating System: Specify your OS and version (e.g., Ubuntu 22.04, macOS Sonoma 14.4, Windows 11 64-bit).
  • Installation Method: Indicate how you installed FontForge (e.g., official installer, Homebrew, Flatpak, PPA, or compiled from source).
  • Font File Format: Note the format being used (such as SFD, TTF, or OTF).

4. Provide Reproduction Steps

Write clear, numbered instructions demonstrating how to recreate the bug from a fresh launch:

  1. Open FontForge.
  2. Open or create a specific font file.
  3. Select a specific menu item, tool, or glyph.
  4. Perform the exact action that triggers the unexpected behavior or crash.

Clearly state what you expected to happen versus what actually occurred. If the bug only happens with a particular file, attach a minimal test font (packaged in a .zip file) to the ticket.

5. Capture Crash Logs (For Crashes Only)

If FontForge crashes abruptly (a segmentation fault or sudden exit), a debugger backtrace is critical:

  • Linux / macOS (GDB or LLDB):
    1. Open a terminal and run gdb fontforge.
    2. Inside GDB, type run and press Enter.
    3. Recreate the crash inside FontForge.
    4. Return to the terminal and type bt full (backtrace).
    5. Copy the terminal output and paste it into your report inside code blocks (```).
  • Windows: Provide details from the Windows Event Viewer under Windows Logs > Application, noting the faulting module and exception code.

6. Submit the Issue

  1. On the FontForge GitHub Issues page, click New Issue.
  2. Select the bug report template if prompted.
  3. Enter a concise, descriptive title (e.g., "Crash when generating OpenType tables on macOS 14").
  4. Fill in the gathered details, reproduction steps, sample files, and backtrace.
  5. Click Submit new issue. Stay subscribed to notifications on the thread in case developers ask follow-up questions.