#3682·SFML

Desired API breaks for SFML 4

Author: eXpl0it3rCreated Mar 18, 2026Updated Aug 6, 2026
Labelsfeature

Using SFML 3 and seeing how it's being used by others, reveals some limitations of the API that can only be fully fixed with the next major version of SFML. This issue should collect these observations.

Changes

  • Any sf::Time timeout = sf::Time::Zero should be replaced with a std::optional<sf::Time> timeout = std::nullopt
  • std::string sf::SoundRecorder::getDefaultDevice() should return a std::optional<std::string> instead of using empty string as surrogate

Deprecations

  • tbd

C++ Changes

  • See #3143