-
-
Notifications
You must be signed in to change notification settings - Fork 583
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
Fixed missing transformation errors when obstime
is None
#4267
Conversation
caad6c0
to
cd9ec45
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't fully understand why we need these checks and not some others, or why the errors aren't already being raised in other places.
What is the difference between these transforms and the ones where we copy from the target frame?
The idea is to always have the check when transforming between an Astropy frame and a SunPy frame, for when our frame has The HGS<->HCI checks are a bit different: it'll only error when The HEE<->GSE behavior should actually be analogous to HGS<->HCI, so I'll fix that. |
Okay, HEE<->GSE transformations are now fixed. Plus, I realized that there were unnecessary computations in those transformations, so I also simplified them. |
The transformations to/from SunPy 1.0 frames are fairly permissive when they encounter
obstime=None
for a frame and try to transfer it from the other frame in the transformation, or even theobserver
attribute if it's an observer-based frame. The behavior is no longer permissive if attempting to transform beyond that subgraph. (The permissive behavior was primarily motivated by ourobserver
frame attribute, but the specific bug there has been fixed by #4266, and the concept of under-definedSkyCoord
-less transformations may be going away in the future. This PR leaves this permissive behavior untouched.)The transformations to/from SunPy 1.1 frames (HEE, GSE, GEI, HCI) don't fully handle all situations with
obstime=None
, and weren't raising transformation errors. Some of the transformation output in edge cases could be outright wrong.This PR adds a bunch of transformation errors.