# Version 0.16.0 (2024-11-13) - ✨ new features: - add `--van-vleck` to correct for legacy correlator quantization - ➕ update mwalib 1.8.2 via Marlu 0.15 - ➕ fitsio 0.21.6 # Version 0.15.1 (2024-09-29) - add read and write rate # Version 0.15.0 (2024-09-28) - add `--provided-chan-ranges` to fix #149 # Version 0.14.0 (2024-09-23) - 🐛 fix linking issues on macOS with aoflagger_sys 0.1.2 - ➕ update mwalib 1.5.0 via Marlu 0.14.0 - ➕ update shlex # Version 0.13.0 (2024-08-14) - 🐛 fix issues compiling on arm64: - update Marlu 0.13.0 # Version 0.12.0 (2024-06-27) - 🐛 bug fixes: - #152 default pfb gains should be cotter2014 for legacy correlator, not jake - 🙏 quality of life: - #150 implement antenna (tile) selection (`--sel-ants`) - ➕ dependencies: - update default aoflagger version in makefile and dockerfile # Version 0.11.0 (2024-06-19) - ➕ dependencies: - Marlu 0.11.0 - built ~0.7.3 # Version 0.10.0 (2023-08-11) - 🙏 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 # Version 0.9.2 (2023-07-18) - 🙏 quality of life: - update modtime when writing ms # Version 0.9.1 (2023-03-10) - 🙏 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 # Version 0.9.0 (2023-02-17) - ✨ 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 to `UT1UTC` in uvfits files. As this value has no effect on the rest of the visibility file, the `--ignore-dut1` flag is now useless. - 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 # Version 0.8.0 (2022-08-24) - ✨ new features: - use DUT1 functionality as part of Marlu 0.8.0 - ➕ dependencies: - use Marlu 0.8.0 - MSRV 1.63 # Version 0.7.0 (2022-08-04) - ⚡ 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) and `TILES` (unflagged tile information) HDUs - PFB gains are now borrowed instead of cloned - log library version info, and applied delay types - 🏗 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 # Version 0.6.4 (2022-05-04) - ✨ new features: - Automatic quack time flagging - CLI options for timestep flagging # Version 0.6.3 (2022-04-20) - ✨ new features: - --flag-edge-chans and --flag-edge-width for edge channel flagging # Version 0.6.2 (2022-04-11) - ✨ new features: - Automatic DC channel flagging for old correlator inputs - --flag-dc and --no-flag-dc control DC flagging explicitly # Version 0.6.1 (2022-04-04) - ➕ dependencies: - Use Marlu 0.6.1 # Version 0.6.0 (2022-03-24) - 🏗 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 # Version 0.5.2 (2022-03-17) - 🐛 bug fixes: - fix - ➕ dependencies: - Bump clap from 3.0.14 to 3.1.5 # Version 0.5.1 (2022-03-03) - ✨ new features: - [EOR-71] Correction of coarse pfb passband gains is enabled by default, use `--passband-gains none` to disable it. - 🙏 quality of life: - shows the total time elapsed at the end. # Version 0.5.0 (2022-02-15) - ✨ new features: - [EOR-40] Correction of digital gains is enabled by default, use `--no-digital-gains` to disable it. - 🐛 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 # Version 0.4.1 (2022-02-09) - ✨ 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 # Version 0.4.0 (2022-02-01) - 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 # Version 0.3.1 (2022-01-21) - expose optional Marlu features - fix thread 'main' panicked at '`flag-timesteps`. # Version 0.3.0 (2022-01-20) - [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 # Version 0.2.1 (2021-12-15) - upgrade ndarray and marlu for better ms writing performance. # Version 0.2.0 (2021-11-19) - Breaking CLI changes, most aoflagger subcommands moved to root - [EOR-4](https://github.com/MWATelescope/Birli/projects/1#card-73186083) use Marlu to write measurement sets - write some missing mandatory AIPS 117 fields to uvfits # Version 0.1.10 (2021-10-22) - add CLI flag to skip flagging - calculate the correct reference frequency for uvfits (issue #6) - extra logging for uvfits # Version 0.1.9 (2021-09-01) - [EOR-34] put aoflagger behind feature - [EOR-33] vis io traits - slightly faster uvfits # Version 0.1.8 (2021-08-26) - [EOR-32] replace aoflagger::imageset with `ndarray::Array3` wherever possible. - use `mwa_rust_core` for positional and Jones - use mwalib::get_fine_chan_freqs_hz_array # Version 0.1.7 (2021-08-09) - Bug fixes for uvfits output and geometric correction - Cotter emulation for validation of uvfits against cotter output # Version 0.1.6 (2021-07-22) - basically just testing that release automation is working - update all dependencies - more optimized docker image # Version 0.1.5 (2021-07-22) - [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 # Version 0.1.4 (2021-07-09) - [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 # Version 0.1.3 (2021-05-13) - Release was created to test a fix for docs.rs. # Version 0.1.2 (2021-05-05) - 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 - [EOR-21] quality of life features: - progress bars! - basic timing info for each stage - [EOR-20] automation and [documentation](doc/benchmark_results.md) of benchmarks - Public API is fully documented. - Use Rust 1.51 # Version 0.1.1 (2021-05-04) - 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 - 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