NOAA-PMEL / PyFerret

The PyFerret program and Python module from NOAA/PMEL
https://ferret.pmel.noaa.gov/Ferret/
The Unlicense
60 stars 22 forks source link

go fland crashes PyFerret #90

Open ryofurue opened 3 years ago

ryofurue commented 3 years ago

When I run this four-line code

let/units=degrees_east  xs = {40, 130,110}
let/units=degrees_north ys = {-20, 25, -10}
plot/vs/noax/hlimits=30E:140E/vlimits=30S:30N/line/thick=2/ov xs,ys
go fland 20, , , , , , axes

with the GO command, pyferret crashes on my MacBook Pro with Big Sur (macOS 11.4).

If you comment out the "go fland" command, the code works.

I paste the full session below.

I then updated both miniconda (conda update conda --yes; conda update --all --yes) and pyferret (conda create -n FERRET -c conda-forge pyferret ferret_datasets --yes) but the result was the same.

Ryo

$ pyferret
    NOAA/PMEL TMAP
    PyFerret v7.63 (optimized)
    Darwin 19.6.0 - 10/13/20
     9-Jun-21 13:20

yes? go pyferret-land-and-polygons.jnl
let/units=degrees_east  xs = {40, 130,110}
let/units=degrees_north ys = {-20, 25, -10}
plot/vs/noax/hlimits=30E:140E/vlimits=30S:30N/line/thick=2/ov xs,ys
go fland 20, , , , , , axes
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/local/Caskroom/miniconda/base/envs/FERRET/lib/python3.7/site-packages/pyferret/__init__.py", line 489, in init
    result = run()
  File "/usr/local/Caskroom/miniconda/base/envs/FERRET/lib/python3.7/site-packages/pyferret/__init__.py", line 905, in run
    retval = libpyferret._run(str_command)
RuntimeError:

**ERROR Ferret crash; signal = 11 (SIGSEGV)
Enter Ctrl-D to exit Python

>>>
ACManke commented 3 years ago

The first plot command has an /overlay qualifier. That should be an error. Instead it's leading us into some state where further commands crash the program.

with a non-vs plot there's this error, and I think the same should be happening thing for a plot/vs/over when there's no existing plot.

yes? let/units=degrees_east  xs = {40, 130,110}
yes? plot/over/line/thick=2 xs
 **ERROR: dimensions improperly specified: overlay is on a different axis