Opened 3 years ago

Last modified 5 weeks ago

#2071 new defect

SciTools IRIS 2.10 missing from Python3

Reported by: darkblueb Owned by: osgeolive@…
Priority: critical Milestone: OSGeoLive14.0
Component: OSGeoLive Keywords: python, IRIS, scitools
Cc: osgeolive@…

Description

the OSGeoLive version 12 based on Ubuntu Bionic (1804) currently installs Scitools IRIS via dot-deb packaging found here [0]

IRIS setup.py [1] "may be broken for Python3" in this environment per the packager Angelos Tzotsos. This ticket is a place to find a workaround or longer-term fix.

[0] https://launchpad.net/~gcpp-kalxas/+archive/ubuntu/iris

[1] https://github.com/SciTools/iris/blob/v2.1.x/setup.py

Change history (11)

comment:1 Changed 3 years ago by darkblueb

Phil Elson writes:

Thanks for letting us know. I’m sorry to say I can’t find the detail regarding the python 3 issue. 
If I were to guess though, I suspect the problem is that pyke forked itself and maintains two branches 
for its python 2 -> python 3 journey (don’t know why one would choose to do that). 

As a result, pyke for python 3 needs to come from a different source. 
To see how to work around that, the conda-forge build for this is done in 

https://github.com/conda-forge/pyke-feedstock/blob/master/recipe/meta.yaml#L12.

Hopefully my guess is on target, but if not, 
could you point me at the detail and I’ll try to help?
 
--

Philip Elson | Scientific Python Technical Lead
Analysis, Visualisation and Data Team (AVD)
Met Office  FitzRoy Road  Exeter  Devon  EX1 3PB  United Kingdom
Email: philip.elson@metoffice.gov.uk  Website: www.metoffice.gov.uk
Our magazine Barometer is now available online at http://www.metoffice.gov.uk/barometer/

comment:2 Changed 2 years ago by darkblueb

Priority: majornormal

12dev beta2

defer until after RC 12.0

comment:3 Changed 22 months ago by kalxas

Milestone: OSGeoLive12.0OSGeoLive13.0

Ticket retargeted after milestone closed

comment:4 Changed 19 months ago by darkblueb

open in o13 alpha2

comment:5 Changed 18 months ago by kalxas

Thank you for the information that there is a separate source for python3.

I am now trying to make a python3-pyke package.

comment:6 Changed 18 months ago by kalxas

Iris 2.2.1 has landed in our ppa.

python3-pyke has also been created, but python3-iris fails to build.

comment:7 Changed 18 months ago by kalxas

Milestone: OSGeoLive13.0OSGeoLive14.0

comment:8 Changed 5 weeks ago by kalxas

During the OSGeo Virtual Code Sprint we decided: we will try to package py3 version (pike etc), else we will include as py2 in VM. e-mail to project to ask about 20.04

comment:9 Changed 5 weeks ago by kalxas

Cc: osgeolive@… added
Priority: normalcritical

comment:11 Changed 5 weeks ago by kalxas

Current Iris build error:

Unable to create '/usr/lib/python3/dist-packages/pyke/krb_compiler/krbparser_tables.py'
[Errno 13] Permission denied: '/usr/lib/python3/dist-packages/pyke/krb_compiler/krbparser_tables.py'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/lib/python3/dist-packages/pyke/knowledge_engine.py", line 108, in __init__
    target_package.compile(self)
  File "/usr/lib/python3/dist-packages/pyke/target_pkg.py", line 285, in compile
    self.do_by_ext('compile',
  File "/usr/lib/python3/dist-packages/pyke/target_pkg.py", line 265, in do_by_ext
    return getattr(self, "%s_%s" % (prefix, ext))(filename, *args)
  File "/usr/lib/python3/dist-packages/pyke/target_pkg.py", line 298, in compile_krb
    return krb_compiler.compile_krb(rb_name, self.package_name,
  File "/usr/lib/python3/dist-packages/pyke/krb_compiler/__init__.py", line 114, in compile_krb
    ast = krbparser.parse(krbparser, filename)
  File "/usr/lib/python3/dist-packages/pyke/krb_compiler/krbparser.py", line 595, in parse
    scanner.init(scanner, debug, check_tables)
  File "/usr/lib/python3/dist-packages/pyke/krb_compiler/scanner.py", line 688, in init
    lexer = lex.lex(module=this_module, optimize=1,
  File "/usr/lib/python3/dist-packages/pyke/krb_compiler/ply/lex.py", line 1004, in lex
    lexobj.writetab(lextab,outputdir)
  File "/usr/lib/python3/dist-packages/pyke/krb_compiler/ply/lex.py", line 176, in writetab
    tf = open(filename,"w")
PermissionError: [Errno 13] Permission denied: '/usr/lib/python3/dist-packages/pyke/krb_compiler/scanner_tables.py'
error: command '/usr/bin/python3' failed with exit status 1
Note: See TracTickets for help on using tickets.