midnight-commander: remove build workaround for macOS 10.13 (High Sie… #173306
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hello,
I'm the upstream maintainer of mc and now wondering how to proceed with nanosecond timestamps. The background is as follows:
We introduced support for nanosecond timestamps with
utimensat
years ago and only enabled it if OS supported it.This "worked" fine util macOS 10.13 High Sierra, when Apple introduced
utimensat
in a half-assed POSIX-incompatible way (apparently the name of the thest
structure members were likest_atimespec
instead ofst_atim
etc.). So the function was there, but our code couldn't use it and builds failed.We neither had macOS, nor the kernel was published, so we couldn't fix it and the workaround here was to disable
utimensat
by force even if it was available.I have now checked the builds on the latest version of macOS and they work, and also the nanosecond timestamps work, because apparently Apple fixed the POSIX compatibility somewhen along the way.
The current workaround is now causing data loss (file timestamps are always truncated to microseconds) for the users.
The problem is, I don't know when Apple fixed this. If the formula builds on Monterey and Ventura, then it will also work, but I don't have these systems. High Sierra is not supported for years.
Can we just remove this workaround?