Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Numpy issue when running solve-field #317

Open
Banjoman02 opened this issue Nov 6, 2024 · 1 comment
Open

Numpy issue when running solve-field #317

Banjoman02 opened this issue Nov 6, 2024 · 1 comment

Comments

@Banjoman02
Copy link

Banjoman02 commented Nov 6, 2024

Running into a bit of an issue that came out ever since numpy released version 2.0.0

Running solve-field from the CLI always fails and returns with -1 every time I try running a plate solve.

This is the error message I keep getting:

 
(odl) mcampbell02@1311-mcampbell:~/projects/observatorydevicelibrary$ solve-field examples/test_fits_no_metadata.fits
Reading input file 1 of 1: "examples/test_fits_no_metadata.fits"...
Extracting sources...
simplexy: found 17084 sources.
Traceback (most recent call last):
File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
exec(code, run_globals)
File "/usr/lib/python3/dist-packages/astrometry/util/removelines.py", line 81, in
sys.exit(main())
File "/usr/lib/python3/dist-packages/astrometry/util/removelines.py", line 77, in main
return removelines(infile, outfile, xcol=opt.xcol, ycol=opt.ycol,
File "/usr/lib/python3/dist-packages/astrometry/util/removelines.py", line 54, in removelines
T.writeto(outfile)
File "/usr/lib/python3/dist-packages/astrometry/util/fits.py", line 529, in write_to
T = pyfits.BinTableHDU.from_columns(fc)
File "/home/mcampbell02/.local/lib/python3.10/site-packages/astropy/io/fits/hdu/table.py", line 150, in from_columns
hdu = cls(
File "/home/mcampbell02/.local/lib/python3.10/site-packages/astropy/io/fits/hdu/table.py", line 861, in init
from astropy.table import Table
File "/home/mcampbell02/.local/lib/python3.10/site-packages/astropy/table/init.py", line 6, in
from .column import Column, ColumnInfo, MaskedColumn, StringTruncateWarning
File "/home/mcampbell02/.local/lib/python3.10/site-packages/astropy/table/column.py", line 22, in
from ._column_mixins import _ColumnGetitemShim, _MaskedColumnGetitemShim
File "astropy/table/_column_mixins.pyx", line 1, in init astropy.table._column_mixins
ValueError: numpy.ufunc size changed, may indicate binary incompatibility. Expected 232 from C header, got 216 from PyObject
augment-xylist.c:591:backtick Failed to run command: /usr/bin/python3 -m astrometry.util.removelines /tmp/tmp.xyls.giVCoC /tmp/tmp.removelines.sNJi5u
ioutils.c:568:run_command_get_outputs Command failed: return value 1

I've rolled numpy back in my virtual environment to 1.26.4, which is also the latest version supported by astropy, but keep running in to the same problem.

Has anybody come up with a fix for this, and is there something I should try?

@dstndstn
Copy link
Owner

dstndstn commented Nov 7, 2024

Hi,

It looks like this is coming from the "from astropy.table import Table" line in the "removelines" step in solve-field... so you can probably recreate this bug without solve-field by running
python -c "from astropy.table import Table

You can avoid running that "removelines" step by adding this to your solve-field command:
solve-field --no-remove-lines --uniformize 0

(the --uniformize 0 drops another step that uses python code)

Also notice that the versions of astropy it is using is the one in your ~/.local/ directory -- not a virtualenv, but where stuff goes if you do a pip install --user.

You can look at the first line of the "removelines" script to see which python command it is running. That gets set when you install the astrometry.net package.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants