#1144991 astrometry.net: FTBFS with swig 4.5.0

Package:
src:astrometry.net
Source:
src:astrometry.net
Submitter:
Rafael Laboissière
Date:
2026-08-21 08:27:01 UTC
Severity:
normal
Tags:
#1144991#5
Date:
2026-08-21 08:12:58 UTC
From:
To:
Dear Maintainer,

The astrometry.net package FTBFS with swig 4.5.0, which is currently in unstable. An excerpt of the build log is shown below.

This is due to the removal of the Python 2 compatibility macros in version 4.5.0. According to the SWIG authors, these macros were retained in the generated code (pyhead.swg) solely for user typemaps. Any typemap using these macros must be updated to call the Python 3 C API directly.

Best,

Rafael Laboissière

##### Build log excerpt

util_wrap.c: In function ‘broadcast_2to2i’:
util_wrap.c:5402:19: error: implicit declaration of function ‘PyInt_FromLong’; did you mean ‘PyLong_FromLong’? [-Wimplicit-function-declaration]
 5402 |             pok = PyInt_FromLong(i);
      |                   ^~~~~~~~~~~~~~
      |                   PyLong_FromLong
util_wrap.c:5402:17: error: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
 5402 |             pok = PyInt_FromLong(i);
      |                 ^
util_wrap.c: In function ‘_wrap_quadfile_get_stars’:
util_wrap.c:10981:21: error: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
10981 |       PyObject *o = PyInt_FromLong(arg3[i]);
      |                     ^~~~~~~~~~~~~~
util_wrap.c: In function ‘_wrap_healpix_get_neighbours’:
util_wrap.c:15496:21: error: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
15496 |       PyObject *o = PyInt_FromLong(arg2[i]);
      |                     ^~~~~~~~~~~~~~
util_wrap.c: In function ‘_wrap_healpix_rangesearch_xyz’:
util_wrap.c:15969:21: error: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
15969 |       PyObject *o = PyInt_FromLong(il_get(result, i));
      |                     ^~~~~~~~~~~~~~
util_wrap.c: In function ‘_wrap_healpix_rangesearch_xyz_approx’:
util_wrap.c:16021:21: error: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
16021 |       PyObject *o = PyInt_FromLong(il_get(result, i));
      |                     ^~~~~~~~~~~~~~
util_wrap.c: In function ‘_wrap_healpix_rangesearch_radec_approx’:
util_wrap.c:16081:21: error: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
16081 |       PyObject *o = PyInt_FromLong(il_get(result, i));
      |                     ^~~~~~~~~~~~~~
util_wrap.c: In function ‘_wrap_healpix_rangesearch_radec’:
util_wrap.c:16141:21: error: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
16141 |       PyObject *o = PyInt_FromLong(il_get(result, i));
      |                     ^~~~~~~~~~~~~~
util_wrap.c: In function ‘_wrap_healpix_region_search’:
util_wrap.c:16226:21: error: initialization of ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
16226 |       PyObject *o = PyInt_FromLong(il_get(result, i));
      |                     ^~~~~~~~~~~~~~
error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
make[3]: *** [Makefile:171: _util.cpython-314-x86_64-linux-gnu.so] Error 1
make[3]: Leaving directory '/home/rafael/automate/swig-4.5.0/tmp/astrometry.net-0.98+dfsg/util'
make[2]: *** [Makefile:148: pyutil] Error 2

#1144991#10
Date:
2026-08-21 08:25:31 UTC
From:
To:
I proposed a patch for fixing the issue as a merge request at Salsa:
https://salsa.debian.org/debian-astro-team/astrometry.net/-/merge_requests/2

Best,

Rafael Laboissière