Допустим, я пишу приложение на Python и ему требуется кешировать некоторые данные между своими вызовами. Это именно кеш, а не настройки. В смысле, что их можно безболезненно удалить, просто следующий запуск приложения будет дольше.
Как мне определить, в какую папку стоит сохранять эти данные (это несколько файлов)?
Под Linux понятное дело можно сохранить куда-нибудь в ~/.cache/my-app-name, но хотелось бы более универсального решения, чтобы оно работало под всеми ОС.
Умеет ли Python сам по себе или с каким-нибудь модулем такое? Или только вручную определять ОС и генерировать путь к каталогу для кеша?
tempfile.mktemp не подходит, потому что он на многих Linux выдаст путь в /tmp, который находится на ram-диске и его содержимое теряется при перезагрузке. Я ничего не имею против пользователей, которые хотят так поступить с кешем, но всё это должно потребовать от них каких-то действий (например, тот же каталог ~/.cache придётся сделать ссылкой на каталог в /tmp, это не стандартное поведение ОС).