CAS-14759: Restore pbmask for cube standard gridder via `calcmask`
The previous performance optimization for the cube standard gridder
bypassed normalizeprimarybeam() on the master node to avoid a slow,
sequential plane-by-plane evaluation. However, this inadvertently skipped
the generation of the `mask0` subtable on the `.pb` image, causing the
pbmask to be missing from the dirty map.
This commit restores the mask creation on the master node by using
the `ia.calcmask()` tool. This preserves the majority
performance gain from the previous optimization while correctly restoring
the `pblimit`-based mask for downstream application.
Additional optimizations:
- Mask generation is skipped entirely if `pblimit < 0.0`, aligning with tclean logic
- Cleaned up redundant imports inside the makePB function
- Handled tool lifecycle with an explicit `_ia.done()` for safe memory management
Pull request #1043: CAS-14606
Merge in CASA/casa6 from CAS-14606 to master
* commit 'e2af0ec57f50d3edffed7dd5384465472326b4a5':
Add a check that an entire (sub-)table is empty (nrows=0)
Fix a bug in is_column_empty function and add tb.getvarcol-based data existence check for the subtables
Add test for data types, str, int, float
Access the first row only
Use tb.getvarcol to check if optional data columns in Main table have any data instead of tb.getcell
Pull request #1033: CAS-14704
Merge in CASA/casa6 from CAS-14704 to master
* commit 'd5adeb6db73246ebbb2e3e535e56a38139482f98': (34 commits)
add test_task_getjyperkalma to component map
Changes according to the NAOJ code review Refs #2870
Changes according to the NAOJ code review Refs #2869 #2870
Changes according to the NAOJ code review Refs #2868
Changes according to the NAOJ code review Refs #2866
Changes according to the NAOJ code review Refs #2865
Changes according to the NAOJ code review Refs #2864
Changes according to the NAOJ code review
Delete commented out lines
Fix bugs, add tests
Changes according to code review Refs #2858
Changes according to code review Refs #2858
Changes according to code review Refs #2846
Changes according to the code review #Refs 2851
Changes according to code review Refs #2843
Changes according to code review Refs #2860
Changes according to code review Refs #2859
Changes according to code review Refs #2857
Changes according to the code review #Refs 2854
Changes according to code review Refs #2853
...
AssertionError: False is not true
test_task_tclean.py:6675: in test_cube_standard_twofield
self.assertTrue(self.check_final(report1+report2+report3+report4))
E AssertionError: False is not true
AssertionError: False is not true
test_task_tclean.py:6675: in test_cube_standard_twofield
self.assertTrue(self.check_final(report1+report2+report3+report4))
E AssertionError: False is not true