Hi Florent,
WISE has been a useful tool in the VLBI/AGN-jet-kinematics community, and I noticed it's been frozen at Python 2 for a while. I needed a working Python 3 install for some ongoing radio-astro work, so I went ahead and forked both wise and libwise into a single monorepo and ported them up to a current scientific stack: Python 3.11+, numpy 2.x, scipy 1.16, scikit-image ≥0.22, matplotlib ≥3.9, astropy ≥6, and PyQt5.
The fork is at https://github.com/etmeyer/wise-wavelets.
Status: the wise CLI runs the original 3C120 walkthrough end-to-end against MOJAVE data, the GUI viewers (view_features, plot_features, plot_sep_from_core, view_links) all render, and the unit suite passes at 51/8 (the skips are pre-existing upstream stubs).
Full porting log lives in MIGRATION_NOTES.md — pymorph → scikit-image, scipy ndimage submodule moves, numpy 2.x scalar aliases, matplotlib backend rename, PyQt4 → PyQt5, plus per-test triage.
License (GPL-2.0) is preserved and your original repos + authorship are credited in both READMEs.
Two small asks, neither obligatory:
Would you consider adding a one-line pointer in your wise and libwise READMEs (e.g. "For Python 3.11+, see eileen-meyer/wise-wavelets") so users hitting this repo first don't have to guess?
If you'd ever be willing to transfer the wisetool PyPI name once I cut a tagged release, happy to coordinate. Also totally fine if you'd rather keep it.
Thanks for writing the original tool — the wavelet decomposition approach has held up really well.
Hi Florent,
WISE has been a useful tool in the VLBI/AGN-jet-kinematics community, and I noticed it's been frozen at Python 2 for a while. I needed a working Python 3 install for some ongoing radio-astro work, so I went ahead and forked both wise and libwise into a single monorepo and ported them up to a current scientific stack: Python 3.11+, numpy 2.x, scipy 1.16, scikit-image ≥0.22, matplotlib ≥3.9, astropy ≥6, and PyQt5.
The fork is at https://github.com/etmeyer/wise-wavelets.
Status: the wise CLI runs the original 3C120 walkthrough end-to-end against MOJAVE data, the GUI viewers (view_features, plot_features, plot_sep_from_core, view_links) all render, and the unit suite passes at 51/8 (the skips are pre-existing upstream stubs).
Full porting log lives in MIGRATION_NOTES.md — pymorph → scikit-image, scipy ndimage submodule moves, numpy 2.x scalar aliases, matplotlib backend rename, PyQt4 → PyQt5, plus per-test triage.
License (GPL-2.0) is preserved and your original repos + authorship are credited in both READMEs.
Two small asks, neither obligatory:
Would you consider adding a one-line pointer in your wise and libwise READMEs (e.g. "For Python 3.11+, see eileen-meyer/wise-wavelets") so users hitting this repo first don't have to guess?
If you'd ever be willing to transfer the wisetool PyPI name once I cut a tagged release, happy to coordinate. Also totally fine if you'd rather keep it.
Thanks for writing the original tool — the wavelet decomposition approach has held up really well.