Repository navigation
Begin removal of analysisUtils - #402
Conversation
|
@e-koch I'm sorry about this |
ca392ae to
2546360
Compare
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #402 +/- ##
==========================================
- Coverage 12.63% 12.52% -0.12%
==========================================
Files 43 43
Lines 16696 16875 +179
Branches 3986 4004 +18
==========================================
+ Hits 2110 2113 +3
- Misses 14352 14528 +176
Partials 234 234
|
84eae6d to
a9132d1
Compare
39d9aaa to
a46cd79
Compare
a46cd79 to
8df22ec
Compare
e-koch
left a comment
There was a problem hiding this comment.
Thank you, Tom! This is going to simplify our testing and version support a lot.
Added a few comments on tracking which new functions are primarily from analysisUtils so we recall. And if we haven't already, we should include the analysisUtils license where relevant. (We could move all of the adopted analysisUtils functions into their own file; not as clean for the purpose of the functions but easier for credit and provenance).
Do we need any additional testing for consistency? Have you already handled that with local tests?
cae9000 to
32fc115
Compare
This PR starts the long-overdue removal of the analysisUtils dependency. Keeping this up-to-date is difficult, complicates tests, and makes keeping the pipeline transferable annoying. This first step removes the analysisUtils dependencies for everything except the SD pipeline. The reason the SD pipeline has been left out is because there are *a lot* of functions here that would need to be translated, both across the current version and the legacy pipeline. There's a decision to be made here about whether now is the time to deprecate the legacy pipeline; I think it is, but happy to hear opinions. In any case, the shared functions have been moved into utilsSingleDish, so it'll be super easy to rip it out in the future. Major change summary: - Removed the calls to au.createCasaTool(). Since we now use a unified CASA version, this is no longer needed. - Add a new custom estimate_synthesised_beam function. This has modifications to be better for large datasets by optionally using the first field in the dataset, and will loop over each observation ID to find a minimum beam size from each individual, concatenated observation. It's about twice as fast, and is quieter. - Add a new custom pick_cell_size function. This is a little different from the au equivalent. First, it'll always return the image size, and automatically pads for an FFT (we were actually doing this twice, in effect, so now the image sizes should be smaller). Second, it does not take in information about the target or the SPW, since we only ever call this at a point where we've already split out the dataset to a single target and window. - Add get_spw_info function, which is essentially a direct translation of the analysisUtils function, with a bit of tidying up - Add get_scans_for_spw function, which is essentially a direct translation of the analysisUtils function, with a bit of tidying up - Add get_science_spws function, which is essentially a direct translation of the analysisUtils function, with a bit of tidying up - Add get_chan_widths function, which is essentially a direct translation of the analysisUtils function, with a bit of tidying up - Add clear_pointing_table function, which is essentially a direct translation of the analysisUtils function, with a bit of tidying up - A couple of functions, get_sourcename and read_source_coordinates, have been moved from to casaLegacySingleDishRoutines to utilsSingleDish - Updated tests to remove those no longer needed Detailed changes: - Remove au.createCasaTool calls from casaCubeRoutines - Remove au.createCasaTool calls from casaFeatherRoutines - Remove au.createCasaTool calls from casaImagingRoutines - Replaced au.pickCellSize with pick_cell_and_im_size in casaImagingRoutines - Replaced au.ValueMapping call with get_spw_info in casaImagingRoutines - Remove au.createCasaTool calls from casaLegacySingleDishRoutines - Move get_sourcename and read_source_coordinates from casaLegacySingleDishRoutines to utilsSingleDish - Remove au.createCasaTool calls from casaMaskingRoutines - Remove au.createCasaTool calls from casaMosaicRoutines - Remove unused analysisUtils import from casaRoutineTests - Update imports for get_sourcename and read_source_coordinates in casaSingleDishALMAWrapper - Remove au.createCasaTool calls from casaVisRoutines - Add estimate_synthesised_beam function to casaVisRoutines - Add pick_cell_and_im_size function to casaVisRoutines - Add get_representative_freq function to casaVisRoutines - Add get_obs_ids function to casaVisRoutines - Add get_chan_widths function to casaVisRoutines - Add get_spw_info function to casaVisRoutines - Add get_scans_for_spw function to casaVisRoutines - Add get_science_spws function to casaVisRoutines - Add get_observatory_name function to casaVisRoutines - Add clear_pointing_table function to casaVisRoutines - Replace estimateSynthesizedBeam in clean_call - Remove unused analysisUtils import from handlerImaging - Remove au.createCasaTool calls from handlerImagingChunked - Remove au.createCasaTool calls from handlerTestImaging - Remove au.createCasaTool calls from utilsFieldSelection - Replaced getScienceSpws in utilsFieldSelection - Remove au.createCasaTool calls from utilsSingleDish - Remove au.createCasaTool calls from utilsTestImagingPlots - Update tests - Update CHANGELOG.md - For largely unchanged aU functions, point at Zenodo and the license
32fc115 to
935cb8b
Compare
e-koch
left a comment
There was a problem hiding this comment.
LGTM! Thanks for the updates, Tom!
Is this ready to merge from your end?
|
@e-koch Good to go my side! |
This PR starts the long-overdue removal of the analysisUtils dependency. Keeping this up-to-date is difficult, complicates tests, and makes keeping the pipeline transferable annoying. This first step removes the analysisUtils dependencies for everything except the SD pipeline.
The reason the SD pipeline has been left out is because there are a lot of functions here that would need to be translated, both across the current version and the legacy pipeline. There's a decision to be made here about whether now is the time to deprecate the legacy pipeline; I think it is, but happy to hear opinions.
In any case, the shared functions have been moved into utilsSingleDish, so it'll be super easy to rip it out in the future.
Major change summary:
Detailed changes: