python 2 check & cleaning

Brian Inglis Brian.Inglis@SystematicSw.ab.ca
Mon Jan 18 20:58:03 GMT 2021


On 2021-01-18 04:16, Marco Atzeri via Cygwin-apps wrote:
> On 18.01.2021 08:21, Brian Inglis wrote:
>> On 2021-01-17 22:33, Marco Atzeri via Cygwin-apps wrote:
>>> Could you please check your packages if they will work with
>>> preferred python3.8?
>>
>> @ units
>> ...
>> requires: cygwin findutils libreadline7 python3 python36 python36-requests
>> ...
>> depends2: cygwin, findutils, libreadline7, python36, python36-requests
>> build-depends: autoconf, binutils, coreutils, cygport, cygwin-devel, gawk, 
>> gcc-core, grep, libncurses-devel, libreadline-devel, perl_base, python3, 
>> python3-devel, python3-requests, sed, texinfo
>>
>> $ head -1 `which units_cur`
>> #!/usr/bin/python3.6m
>>
>> How can I ensure units depends2 and requires, and the script hash-bang uses 
>> only the generic python3, python3-devel, python3-requests like build-depends, 
>> and avoids using the "current" specific version 36/3.6m?

> python3-requests for the time being will pull python36-requests.
> 
> That is fine for your
>    #!/usr/bin/python3.6m
> 
> Cygport has hard coded the OBSOLETES, this is something
> we need to change in cygport:
> 
>  >>> python36-requests OBSOLETES: python3-requests

>> And how can I ensure that units_cur is tested using only python38 modules?
>> Will the hash-bang override the command line run python38 `which units_cur`?

> rebuilding from your source I had
> 
> units requires: cygwin findutils libreadline7 python38 python38-requests
> 
> It seems the "inherit python3" is pulling the current choice
> of my system
> 
> $ alternatives --display python3
> python3 - status is auto.
>   link currently points to /usr/bin/python3.8
> /usr/bin/python3.7 - priority 37
> /usr/bin/python3.6 - priority 36
> /usr/bin/python3.8 - priority 38
> Current `best' version is /usr/bin/python3.8.

Same on mine as of package release time.

I still have direct symlinks from installs:

$ llrt -go /bin/python{,[23]*}
-rwxr-xr-x  1 9.1K Apr 10  2020 /bin/python3.7m.exe*
lrwxrwxrwx  1   14 Apr 11  2020 /bin/python3.7 -> python3.7m.exe*
-rwxr-xr-x  1 9.1K May 23  2020 /bin/python2.7.exe*
-rwxr-xr-x  1 3.4K May 23  2020 /bin/python3.8-config*
-rwxr-xr-x+ 1 9.1K May 23  2020 /bin/python3.8.exe*
-rwxr-xr-x  1 3.4K Jun  8  2020 /bin/python3.6m-config*
-rwxr-xr-x  1 9.6K Jun  8  2020 /bin/python3.6m.exe*
lrwxrwxrwx  1   14 Jun 26  2020 /bin/python3.6 -> python3.6m.exe*
lrwxrwxrwx  1   13 Jun 26  2020 /bin/python -> python2.7.exe*
lrwxrwxrwx  1   13 Jun 26  2020 /bin/python2 -> python2.7.exe*
lrwxrwxrwx  1   17 Jun 26  2020 /bin/python3.6-config -> python3.6m-config*
lrwxrwxrwx  1   13 Jan  2 13:36 /bin/python3 -> python3.8.exe*
lrwxrwxrwx  1   16 Jan  2 13:39 /bin/python3-config -> python3.8-config*

Problem is if units goes quiet for a while, as it has sometimes for 2-3 years, 
averaging a release a year, it may require python3.X packages to stay around 
long after really required, even if obsoleted by many later releases, when it 
really just needs to depend on python3{,-requests}.
At the moment, python 3.6 has to stay around until the next units release!

I would rather not have to generate package releases per python release (or few) 
just for this, but I don't mind testing each.

Should I hack the build files next release to avoid resolving the symlinks and 
retain the base version?

[Units Version Release Dates

Version	  Released	Days
1.53    1997-01-14      183
1.54    1997-09-10      239
1.55    1999-07-30      688
1.74    2001-06-13      684
1.80    2002-06-17      369
1.85    2005-05-20     1068
1.86    2006-11-11      540
1.87    2007-09-26      319
1.88    2010-02-15      873
2.00    2012-06-28      864
2.01    2012-10-24      118
2.02    2013-07-11      260
2.10    2014-03-26      258
2.11    2014-04-02        7
2.12    2015-10-14      560
2.13    2016-06-21      251
2.14    2017-03-08      260
2.15    2017-10-23      229
2.16    2017-10-31        8
2.17    2018-06-25      237
2.18    2018-10-20      117
2.19    2019-05-31      223
2.20    2020-09-30      488
2.21    2020-11-15       46

    min 7  avg 370  max 1068]
-- 
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in binary units and prefixes, physical quantities in SI.]


More information about the Cygwin-apps mailing list