classification
Title: Availability of utimensat, futimens not checked correctly on macOS
Type: crash Stage:
Components: Cross-Build Versions: Python 3.7, Python 3.6, Python 3.5
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: Alex.Willmer, Peter Petrik, Peter Petrik2, jmr, ned.deily, ronaldoussoren
Priority: normal Keywords:

Created on 2017-09-27 06:23 by jmr, last changed 2018-11-20 07:34 by Peter Petrik2.

Messages (4)
msg303098 - (view) Author: Joshua Root (jmr) Date: 2017-09-27 06:23
The futimens and utimensat functions are available in High Sierra but not previous versions of macOS. Building against the 10.13 SDK and deploying to an earlier version will result in a crash when the dynamic linker can't find the symbols at runtime. Availability of the symbols needs to be checked at runtime before use.

This was originally reported in <https://trac.macports.org/ticket/54893>.
msg303386 - (view) Author: Ronald Oussoren (ronaldoussoren) * (Python committer) Date: 2017-09-30 02:06
This is true for other symbols as well, when deploying to older releases of macOS. 

I have added runtime checking for a number of symbols in the past, that could be extended to newer APIs.  

--
On the road, hence brief. 

Op 30 sep. 2017 om 09:17 heeft Terry J. Reedy <report@bugs.python.org> het volgende geschreven:

> 
> Change by Terry J. Reedy <tjreedy@udel.edu>:
> 
> 
> ----------
> components: +macOS
> nosy: +ned.deily, ronaldoussoren
> title: Availability of utimensat and futimens not checked correctly on macOS -> Availability of utimensat,futimens not checked correctly on macOS
> 
> _______________________________________
> Python tracker <report@bugs.python.org>
> <https://bugs.python.org/issue31601>
> _______________________________________
msg330010 - (view) Author: Joshua Root (jmr) Date: 2018-11-16 19:06
This isn't just a cross-build issue, or rather (depending on how you look at it) cross-builds are increasingly the norm due to Apple only providing a newer SDK on older OS versions. For example the latest version of Xcode available for 10.12 only comes with the 10.13 SDK.
msg330122 - (view) Author: Peter Petrik (Peter Petrik2) Date: 2018-11-20 07:34
This issue blocks QGIS distribution on MacOS for 10.11 and 10.12 releases, https://github.com/lutraconsulting/qgis-mac-packager/issues/22

I would like to know how much work is involved to fix the issue, possible whether there is a plan to fix it. Also we would appreciate quote & timeline for fix to info@lutraconsulting.co.uk, so we can consider to sponsor this fix. Thanks
History
Date User Action Args
2018-11-20 07:34:55Peter Petrik2setnosy: + Peter Petrik2
messages: + msg330122
2018-11-16 19:06:01jmrsetmessages: + msg330010
2018-11-16 08:07:25Peter Petriksetnosy: + Peter Petrik, Alex.Willmer

components: + Cross-Build, - Build, macOS
versions: + Python 3.7
2017-09-30 02:06:52ronaldoussorensetmessages: + msg303386
title: Availability of utimensat,futimens not checked correctly on macOS -> Availability of utimensat, futimens not checked correctly on macOS
2017-09-30 00:17:18terry.reedysetnosy: + ronaldoussoren, ned.deily

components: + macOS
title: Availability of utimensat and futimens not checked correctly on macOS -> Availability of utimensat,futimens not checked correctly on macOS
2017-09-27 06:23:40jmrcreate