-
✨ new features:
- add
--van-vleck
to correct for legacy correlator quantization
- add
-
➕ update mwalib 1.8.2 via Marlu 0.15
-
➕ fitsio 0.21.6
- add read and write rate
- add
--provided-chan-ranges
to fix #149
- 🐛 fix linking issues on macOS with aoflagger_sys 0.1.2
- ➕ update mwalib 1.5.0 via Marlu 0.14.0
- ➕ update shlex
- 🐛 fix issues compiling on arm64:
- update Marlu 0.13.0
- 🐛 bug fixes:
- #152 default pfb gains should be cotter2014 for legacy correlator, not jake
- 🙏 quality of life:
- #150 implement antenna (tile) selection (
--sel-ants
)
- #150 implement antenna (tile) selection (
- ➕ dependencies:
- update default aoflagger version in makefile and dockerfile
- ➕ dependencies:
- Marlu 0.11.0
- built ~0.7.3
- 🙏 quality of life:
- uvfits are now written out with a second DATE and INTTIM
- ➕ dependencies:
- use Marlu 0.10.1
- use rust version 1.64
- 🙏 quality of life:
- update modtime when writing ms
- 🙏 quality of life:
- Fix #140 - observations which were scheduled with a contiguous band of coarse channels are written to a single file (with any missing channels flagged).
--sel-chan-ranges
can select individual coarse channels in addition to ranges- Fix #133 - print more details in impl Display for errors.
- Fix display of selected and flagged coarse channel table
- ✨ new features:
- support for non-contiguous coarse channel selections (picket fence!) 🎉
- 🙏 quality of life:
- Remove the
--ignore-dut1
flag- The DUT1 of an observation is now written as the
UT1UTC
key in a measurement set. It continues to be written toUT1UTC
in uvfits files. As this value has no effect on the rest of the visibility file, the--ignore-dut1
flag is now useless.
- The DUT1 of an observation is now written as the
- Clippy lints
- Update Marlu
- The ERFA C library is no longer needed, so all mentions of it and installations of it have been removed.
- Use a newer aoflagger_sys crate
- This allows for AOFLAGGER_INCLUDE_DIR and AOFLAGGER_LIB to be set and point to where aoflagger is installed, rather than searching in a default location
- report error messages properly, not as Rust-internal representation
- Remove the
- ✨ new features:
- use DUT1 functionality as part of Marlu 0.8.0
- ➕ dependencies:
- use Marlu 0.8.0
- MSRV 1.63
- ⚡ performance:
- Fix unnecessary allocation for smaller visibility chunks to improve memory performance
- better uvfits performance from marlu 0.7.0
- mwaf files are written in parallel
- 🙏 quality of life:
- write
history
metadata in ms and uvfits - mwaf files
- are overwritten if they already exist (previous versions simply panicked)
- can be written out when chunking the observation
- are now version 2.0 of the format
GPSTIME
->OBSID
(less ambiguous)- add
GPSSTART
(the centroid timestep of the first scan of flags) COTVER
->SOFTWARE
- remove
COTVDATE
- write
AO_VER
(AOFlagger version used) - write
AO_STRAT
(AOFlagger strategy file used) - write
CMDLINE
- add
CH_OCC
(channel occupancy),BL_OCC
(baseline occupancy) andTILES
(unflagged tile information) HDUs
- PFB gains are now borrowed instead of cloned
- log library version info, and applied delay types
- write
- 🏗 api changes:
- use array views for flagging
- mwaf files have a new interface
- ➕ dependencies:
- use Marlu 0.7.2
- use rust version 1.60
- use shlex for command line argument escaping
- ✨ new features:
- Automatic quack time flagging
- CLI options for timestep flagging
- ✨ new features:
- --flag-edge-chans and --flag-edge-width for edge channel flagging
- ✨ new features:
- Automatic DC channel flagging for old correlator inputs
- --flag-dc and --no-flag-dc control DC flagging explicitly
- ➕ dependencies:
- Use Marlu 0.6.1
- 🏗 api changes:
- refactor preprocessing into PreprocessingContext
- refactor context_to_jones_array into VisSelection::read_mwalib
- refactor flags into FlagContext
- refactor io ino IOContext
- refactor main into cli::BirliContext::{from_args, run}
- refactor pfb gains to take ScrunchType enum
- improve error handling in cli and main
- separate allocation and filling of vis, weights, flags
- bake flags into weights before writing for better performance
- move uvfits and selection into Marlu
- rename
--flag-antennae
to--flag-antennas
- ➕ dependencies:
- Use Marlu 0.6.0
- 🐛 bug fixes:
- fix #58
- ➕ dependencies:
- Bump clap from 3.0.14 to 3.1.5
- ✨ new features:
- [EOR-71] Correction of coarse pfb passband gains is enabled by default, use
--passband-gains none
to disable it.
- [EOR-71] Correction of coarse pfb passband gains is enabled by default, use
- 🙏 quality of life:
- shows the total time elapsed at the end.
- ✨ new features:
- [EOR-40] Correction of digital gains is enabled by default, use
--no-digital-gains
to disable it.
- [EOR-40] Correction of digital gains is enabled by default, use
- 🐛 bug fixes:
- fix [https://github.com/MWATelescope/Birli/issues/44](#44 - Can't apply calibration solutions to partial observation)
- ➕ dependencies:
- Bump Marlu from 0.4.0 to 0.5.0
- ✨ new features:
- --apply-di-cal applies direction independent calibration solutions
- read mwa ao cal calibration solution files
- 🙏 quality of life:
- add timing info to logs
- default to info log level
- 🏗 api changes:
- deprecate expand_flag_array, use add_dimension instead
- ➕ dependencies
- Bump crossbeam-utils from 0.8.6 to 0.8.7
- Bump clap from 3.0.13 to 3.0.14
- Bump approx from 0.5.0 to 0.5.1
- Bump crossbeam-utils from 0.8.5 to 0.8.6
- Bump tempfile from 3.2.0 to 3.3.0
- Preprocess data in timestep chunks based on maximum memory or number of timesteps.
- --time-sel selects only specific timestep indices.
- Log info about chunks, memory, build version.
- Use Rust 1.58 and 2021 edition
- expose optional Marlu features
- fix thread 'main' panicked at '
flag-timesteps
.
- [EOR-5] Spectral and temporal averaging.
- add untested options for basic flagging and phase centre configuration.
- display human-readable information how the input channels and timesteps will be processed.
- Update Marlu
- upgrade ndarray and marlu for better ms writing performance.
- Breaking CLI changes, most aoflagger subcommands moved to root
- EOR-4 use Marlu to write measurement sets
- write some missing mandatory AIPS 117 fields to uvfits
- add CLI flag to skip flagging
- calculate the correct reference frequency for uvfits (issue #6)
- extra logging for uvfits
- [EOR-34] put aoflagger behind feature
- [EOR-33] vis io traits
- slightly faster uvfits
- [EOR-32] replace aoflagger::imageset with
ndarray::Array3<Jones>
wherever possible. - use
mwa_rust_core
for positional and Jones - use mwalib::get_fine_chan_freqs_hz_array
- Bug fixes for uvfits output and geometric correction
- Cotter emulation for validation of uvfits against cotter output
- basically just testing that release automation is working
- update all dependencies
- more optimized docker image
- [EOR-3] generate uvfits file:
- weights, uvw coordinates and visibilities cross-matched with cotter in automated tests
- weights aren't yet affected by averaging
- Added Docker image
- [EOR-22] correct_cable_lengths
- [EOR-18] Implement updated mwalib timestep / coarse channel interface
- [EOR-28] flag antennas flagged in TILEDATA HDU
- [EOR-29] handle misaligned coarse channels, flag missing hdus
- Updates:
- mwalib = "0.8.3"
- bindgen = "0.58.1"
- testing:
- validate flagging output matches cotter exactly
- utilities for dumping fits files
- cotter-friendly metafits files
- other:
- refactor lib,flag_io into flags, corrections, io
- Release was created to test a fix for docs.rs.
- Release was created to test release automation.
- [EOR-19] optimizations:
- reducing
pin()
s. - parallelize allocating, loading and flagging
- use chunks_exact instead of chunks
- use Vec instead of BTreeMap where possible
- reducing
- [EOR-21] quality of life features:
- progress bars!
- basic timing info for each stage
- [EOR-20] automation and documentation of benchmarks
- Public API is fully documented.
- Use Rust 1.51
- Release was created to test docs.rs. Flagging with AOFlagger mostly works and seems to resemble
output from Cotter with some caveats:
- does not match for observations where not all coarse channels start at the same time because of MWATelescope/mwalib#22
- no optimization, so significantly slower.
- [EOR-6] CI/CD runs multi-platform tests and tracks coverage automatically
- [EOR-13] 95% test coverage using synthetic test data
- [EOR-14] Created CXX Bindings for AOFlagger
- [EOR-11] GPUFits files can be read into AOFlagger ImageSet objects
- [EOR-15] Writes to .mwaf flag file sets.
- [EOR-17] Implemented
birli aoflagger
command line interface - [EOR-20] CI/CD tracks benchmark results automatically