Большая часть моей ежедневной работы является разработка программного обеспечения для использования на машинах с разными версиями одного и того же программного обеспечения, как bash
, find
, и grep
. При обнаружении функции, которая может быть полезна, например, для упрощения кода, важно знать, доступна ли эта функция в самых старых установленных инструментах. Для критических вещей было бы также полезно узнать, была ли эта функция новой или существовала годами в самых старых установленных инструментах.
Как быстро ответить на этот вопрос авторитетно для инструментов Linux, особенно для GNU Core Utils? Некоторые возможности в порядке уменьшения точности:
- Бинарный бинарный поиск (sic) с запуском разных версий, конечно, является окончательным ответом, но, безусловно, занимает больше всего времени. Старые установки часто недоступны по соображениям безопасности.
- Чтение кода почти так же хорошо, но оно может занимать слишком много времени, если функция имеет неопределенное имя, имя не соответствует непосредственно именам переменных / функций / объектов или было реализовано до того, как было включено.
- Журналы изменений , если они доступны, обычно связывают изменения функций с версиями программного обеспечения.
- Журналы фиксации могут содержать подсказки, но не знают, в какую версию они будут включены.
- на страницах руководства редко упоминаются даты.
- То же самое относится и к Google , и вам также будет трудно исключить все неавторизованные источники.