Skip to content

Upgrade WCSLIB to 5.x -- without using it for SIP - #3878

Merged
nden merged 7 commits into
astropy:masterfrom
mdboom:wcs/upgrade-5.x-no-sip
Jun 25, 2015
Merged

nden merged 7 commits into
astropy:masterfrom
mdboom:wcs/upgrade-5.x-no-sip

Conversation

@mdboom

@mdboom mdboom commented Jun 23, 2015

Copy link
Copy Markdown
Contributor

This is a zero-regression workaround version of #3845 that doesn't shift to using wcslib for handling SIP. Instead, it parses the SIP keywords, as before, except it deletes the SIP keywords from the header before passing them along to wcslib, so everything happens as it did back in the SIP-unaware wcslib days. This buys us some time (and allows packagers to upgrade to wcslib 5.6 or later if they choose without breaking astropy) before wcslib is truly ready to be a replacement for all of the SIP functionality that astropy already has.

@mdboom mdboom added this to the v1.1.0 milestone Jun 23, 2015
@mdboom

mdboom commented Jun 23, 2015

Copy link
Copy Markdown
Contributor Author

@nden: You may want to try this instead. I think it's a lot lower risk than letting wcslib handle the SIP.

@mdboom

mdboom commented Jun 23, 2015

Copy link
Copy Markdown
Contributor Author

As far as I'm concerned, this is fine to merge once it's been reviewed.

@embray

embray commented Jun 23, 2015

Copy link
Copy Markdown
Member

Wow, that sounds like it was really annoying to deal with.

I wonder if it would be at all useful, for now, to have a flag somewhere (maybe even just hidden--not as part of the public API) to allow WCSLIB to handle SIP corrections, for testing purposes if nothing else.

@nden

nden commented Jun 24, 2015

Copy link
Copy Markdown
Contributor

@mdboom HST tests passed.

@mdboom

mdboom commented Jun 24, 2015

Copy link
Copy Markdown
Contributor Author

@embray: I think once wcslib's SIP support does everything we need (it's mainly just missing things like copying/pickling and round-tripping at this point) then it might make sense to have an option to use it or not. But I don't think there's much point for an option now since it's known to be broken.

@mdboom

mdboom commented Jun 24, 2015

Copy link
Copy Markdown
Contributor Author

And just another note: @eteq: This adds a test to ensure SIP and TPV agreement based on your report in #3845.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mdboom I read how TPV is defined here http://iraf.noao.edu/projects/ccdmosaic/tpv.html and just for my understanding - I'm wondering why this is a valid test, given that the order of operations is different (in the WCS paper language one is prior, the other sequent).

It is possible to convert from one type to the other. Assuming wcslib converts them internally, were the TPV coefficients in this test created from the SIP coefficients and so basically this tests the agreement between astropy.wcs.sip and wcslib sip? Or am I misunderstanding it?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is comparing two files from the same data source -- one with the polynomial in TPV form and one in SIP form. It is intended that they have the same transformation, even though the exact values in the coefficients are different due to the differences in conventions in TPV and SIP. It's testing agreement between astropy's SIP and wcslib's TPV on different headers that are meant to match. See @eteq's report here: #3845 (comment)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hit send too soon: Also, my understanding is TPV can be sequent or prior depending on how it's defined, and in the case of this file it is prior, as SIP always is.

@mdboom
mdboom force-pushed the wcs/upgrade-5.x-no-sip branch from 183cbdc to be09b26 Compare June 24, 2015 22:14
@nden

nden commented Jun 25, 2015

Copy link
Copy Markdown
Contributor

👍 for merging from me. @mdboom Do you want to restart Travis or is the failure a real problem?

@mdboom

mdboom commented Jun 25, 2015

Copy link
Copy Markdown
Contributor Author

I've restarted the failed Travis job... looks like an unrelated spurious error.

nden added a commit that referenced this pull request Jun 25, 2015
Upgrade WCSLIB to 5.x -- without using it for SIP
@nden
nden merged commit b11a52a into astropy:master Jun 25, 2015
@mdboom

mdboom commented Jun 25, 2015

Copy link
Copy Markdown
Contributor Author

🎉

@embray

embray commented Jun 26, 2015

Copy link
Copy Markdown
Member

👏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants