Files
RedBear-OS/local/recipes/libs/glib/source/docs/rationales.md
T
vasilito cee25393d8 fix: boot process improvements — dependency cycle, INIT_NOTIFY, probing loop, and log spam fixes
- Fix P15-8-init-cycle-detection.patch: replace visiting+error with seen+silent-skip
  to eliminate 11 false-positive 'dependency cycle detected' errors on shared deps
- Fix P0-daemon-fix-init-notify-unwrap.patch: remove eprintln! for missing
  INIT_NOTIFY (expected for oneshot_async services, ~7 daemons affected)
- Fix driver-manager hotplug loop: add PERMANENTLY_SKIPPED static set shared
  between hotplug handler and DriverConfig::probe() to stop infinite re-probing
  of Fatal/NotSupported/deferred-exhausted device+driver pairs (e.g. ided)
- Fix driver-manager log_timeline: suppress repeated EPIPE/ENOENT errors with
  AtomicI32 dedup and AtomicBool one-shot guards for boot timeline JSON
- Add driver-manager SIGTERM handler, ACPI bus registration, --status mode,
  driver reap loop, graceful shutdown, and reduced deferred retries (30→3)
2026-05-17 12:34:02 +03:00

718 B

This file documents various major decisions which affect GLib development, giving a brief rationale of each decision, plus a link to further discussion.

  • Compiler attributes: https://bugzilla.gnome.org/show_bug.cgi?id=113075#c46

    GLib uses GIR annotations instead of compiler attributes. They are tidier, already supported by GLib and GNOME tools, and accomplish the same task as compiler attributes. GLib does not provide macros for attributes like nonnull because it would not use them.

  • Main loop API:

    The ID-based mainloop APIs (g_idle_add, g_timeout_add, etc) are considered legacy, and new features (such as g_source_set_static_name) will only be added to the explicit GSource APIs.