Skip to content

Commit bfd2967

Browse files
committed
update mwalib to 2.0.0
1 parent d1558da commit bfd2967

File tree

3 files changed

+57
-51
lines changed

3 files changed

+57
-51
lines changed

Cargo.toml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
[package]
22
name = "marlu"
3-
version = "0.16.1"
3+
version = "0.17.0"
44
authors = [
55
"Christopher H. Jordan <christopherjordan87@gmail.com>",
66
"Dev Null <dev.null@curtin.edu.au>",
77
]
88
edition = "2021"
9-
rust-version = "1.65"
9+
rust-version = "1.85"
1010
license = "MPL-2.0"
1111
readme = "README.md"
1212
description = "Convenience Rust code that handles coordinate transformations, Jones matrices, I/O. for the Murchison Widefield Array (MWA) radio telescope. Previously known as mwa_rust_core"
@@ -57,7 +57,8 @@ fitsio = { version = "0.21.6", optional = true }
5757
fitsio-sys = { version = "~0.5", optional = true }
5858

5959
# "mwalib" feature
60-
mwalib = { version = "1.8.7", optional = true }
60+
#mwalib = { version = "1.8.7", optional = true }
61+
mwalib = { git = "https://github.com/MWATelescope/mwalib", branch = "bf_metafits_changes_vcs_read_size", optional = true }
6162

6263
# "ms" feature
6364
flate2 = { version = "1.0.13", optional = true }

RELEASES.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
<!-- markdownlint-disable=MD025 -->
22

3+
# Version 0.17.0 (2026-02-10)
4+
5+
- Bumped MSRV to 1.85
6+
- Updated mwalib to 2.0.x
7+
38
# Version 0.16.1 (2025-04-11)
49

510
- Fixed decode_uvfits_baseline bug (#36)

src/io/uvfits.rs

Lines changed: 48 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1203,8 +1203,8 @@ mod tests {
12031203
FitsFile,
12041204
};
12051205
use mwalib::{
1206-
_get_fits_col, _get_required_fits_key, _open_fits, _open_hdu, fits_open, fits_open_hdu,
1207-
get_fits_col, get_required_fits_key, CorrelatorContext,
1206+
_get_fits_col, _get_required_fits_key, fits_open, fits_open_hdu, get_fits_col,
1207+
get_required_fits_key, CorrelatorContext,
12081208
};
12091209
use ndarray::Array3;
12101210
use tempfile::NamedTempFile;
@@ -2834,56 +2834,56 @@ mod tests {
28342834
#[test]
28352835
fn test_encode_uvfits_baseline_256t() {
28362836
// test hand calculated edge cases
2837-
assert_eq!(encode_uvfits_baseline(1,1), 257);
2838-
assert_eq!(encode_uvfits_baseline(1,2), 258);
2839-
assert_eq!(encode_uvfits_baseline(1,255), 511);
2840-
assert_eq!(encode_uvfits_baseline(1,256), 67840);
2841-
assert_eq!(encode_uvfits_baseline(127,127), 32639);
2842-
assert_eq!(encode_uvfits_baseline(127,255), 32767);
2843-
assert_eq!(encode_uvfits_baseline(127,256), 325888);
2844-
assert_eq!(encode_uvfits_baseline(128,128), 32896);
2845-
assert_eq!(encode_uvfits_baseline(128,255), 33023);
2846-
assert_eq!(encode_uvfits_baseline(128,256), 327936);
2847-
assert_eq!(encode_uvfits_baseline(254,254), 65278);
2848-
assert_eq!(encode_uvfits_baseline(254,255), 65279);
2849-
assert_eq!(encode_uvfits_baseline(254,256), 585984);
2850-
assert_eq!(encode_uvfits_baseline(255,255), 65535);
2851-
assert_eq!(encode_uvfits_baseline(255,256), 588032);
2852-
assert_eq!(encode_uvfits_baseline(256,256), 590080);
2837+
assert_eq!(encode_uvfits_baseline(1, 1), 257);
2838+
assert_eq!(encode_uvfits_baseline(1, 2), 258);
2839+
assert_eq!(encode_uvfits_baseline(1, 255), 511);
2840+
assert_eq!(encode_uvfits_baseline(1, 256), 67840);
2841+
assert_eq!(encode_uvfits_baseline(127, 127), 32639);
2842+
assert_eq!(encode_uvfits_baseline(127, 255), 32767);
2843+
assert_eq!(encode_uvfits_baseline(127, 256), 325888);
2844+
assert_eq!(encode_uvfits_baseline(128, 128), 32896);
2845+
assert_eq!(encode_uvfits_baseline(128, 255), 33023);
2846+
assert_eq!(encode_uvfits_baseline(128, 256), 327936);
2847+
assert_eq!(encode_uvfits_baseline(254, 254), 65278);
2848+
assert_eq!(encode_uvfits_baseline(254, 255), 65279);
2849+
assert_eq!(encode_uvfits_baseline(254, 256), 585984);
2850+
assert_eq!(encode_uvfits_baseline(255, 255), 65535);
2851+
assert_eq!(encode_uvfits_baseline(255, 256), 588032);
2852+
assert_eq!(encode_uvfits_baseline(256, 256), 590080);
28532853
}
28542854

28552855
#[test]
28562856
fn test_decode_uvfits_baseline_256t() {
28572857
// Test hand calculated edge cases
2858-
assert_eq!(decode_uvfits_baseline(257), (1,1));
2859-
assert_eq!(decode_uvfits_baseline(258), (1,2));
2860-
assert_eq!(decode_uvfits_baseline(511), (1,255));
2861-
assert_eq!(decode_uvfits_baseline(67840), (1,256));
2862-
assert_eq!(decode_uvfits_baseline(32639), (127,127));
2863-
assert_eq!(decode_uvfits_baseline(32767), (127,255));
2864-
assert_eq!(decode_uvfits_baseline(325888), (127,256));
2865-
assert_eq!(decode_uvfits_baseline(32896), (128,128));
2866-
assert_eq!(decode_uvfits_baseline(33023), (128,255));
2867-
assert_eq!(decode_uvfits_baseline(327936), (128,256));
2868-
assert_eq!(decode_uvfits_baseline(65278), (254,254));
2869-
assert_eq!(decode_uvfits_baseline(65279), (254,255));
2870-
assert_eq!(decode_uvfits_baseline(585984), (254,256));
2871-
assert_eq!(decode_uvfits_baseline(65535), (255,255));
2872-
assert_eq!(decode_uvfits_baseline(588032), (255,256));
2873-
assert_eq!(decode_uvfits_baseline(590080), (256,256));
2858+
assert_eq!(decode_uvfits_baseline(257), (1, 1));
2859+
assert_eq!(decode_uvfits_baseline(258), (1, 2));
2860+
assert_eq!(decode_uvfits_baseline(511), (1, 255));
2861+
assert_eq!(decode_uvfits_baseline(67840), (1, 256));
2862+
assert_eq!(decode_uvfits_baseline(32639), (127, 127));
2863+
assert_eq!(decode_uvfits_baseline(32767), (127, 255));
2864+
assert_eq!(decode_uvfits_baseline(325888), (127, 256));
2865+
assert_eq!(decode_uvfits_baseline(32896), (128, 128));
2866+
assert_eq!(decode_uvfits_baseline(33023), (128, 255));
2867+
assert_eq!(decode_uvfits_baseline(327936), (128, 256));
2868+
assert_eq!(decode_uvfits_baseline(65278), (254, 254));
2869+
assert_eq!(decode_uvfits_baseline(65279), (254, 255));
2870+
assert_eq!(decode_uvfits_baseline(585984), (254, 256));
2871+
assert_eq!(decode_uvfits_baseline(65535), (255, 255));
2872+
assert_eq!(decode_uvfits_baseline(588032), (255, 256));
2873+
assert_eq!(decode_uvfits_baseline(590080), (256, 256));
28742874
}
28752875
}
28762876

28772877
#[test]
28782878
fn test_encode_decode_uvfits_all_baselines_128t() {
2879-
// Test all baselines can be encoded then decoded correctly
2879+
// Test all baselines can be encoded then decoded correctly
28802880
// MWAX 128T
2881-
let n_ants: usize= 128;
2882-
2881+
let n_ants: usize = 128;
2882+
28832883
for ant1 in 1..=n_ants {
28842884
for ant2 in ant1..=n_ants {
28852885
let bl = encode_uvfits_baseline(ant1, ant2);
2886-
let (a1,a2) = decode_uvfits_baseline(bl);
2886+
let (a1, a2) = decode_uvfits_baseline(bl);
28872887
assert_eq!(a1, ant1);
28882888
assert_eq!(a2, ant2);
28892889
}
@@ -2894,12 +2894,12 @@ fn test_encode_decode_uvfits_all_baselines_128t() {
28942894
fn test_encode_decode_uvfits_all_baselines_256t() {
28952895
// Test all baselines can be encoded then decoded correctly
28962896
// MWAX 256T
2897-
let n_ants: usize= 256;
2898-
2897+
let n_ants: usize = 256;
2898+
28992899
for ant1 in 1..=n_ants {
29002900
for ant2 in ant1..=n_ants {
29012901
let bl = encode_uvfits_baseline(ant1, ant2);
2902-
let (a1,a2) = decode_uvfits_baseline(bl);
2902+
let (a1, a2) = decode_uvfits_baseline(bl);
29032903
assert_eq!(a1, ant1);
29042904
assert_eq!(a2, ant2);
29052905
}
@@ -2910,12 +2910,12 @@ fn test_encode_decode_uvfits_all_baselines_256t() {
29102910
fn test_encode_decode_uvfits_all_baselines_264t() {
29112911
// Test all baselines can be encoded then decoded correctly
29122912
// MWAX 256T + 1 more receiver
2913-
let n_ants: usize= 264;
2914-
2913+
let n_ants: usize = 264;
2914+
29152915
for ant1 in 1..=n_ants {
29162916
for ant2 in ant1..=n_ants {
29172917
let bl = encode_uvfits_baseline(ant1, ant2);
2918-
let (a1,a2) = decode_uvfits_baseline(bl);
2918+
let (a1, a2) = decode_uvfits_baseline(bl);
29192919
assert_eq!(a1, ant1);
29202920
assert_eq!(a2, ant2);
29212921
}
@@ -2926,14 +2926,14 @@ fn test_encode_decode_uvfits_all_baselines_264t() {
29262926
fn test_encode_decode_uvfits_all_baselines_512t() {
29272927
// Test all baselines can be encoded then decoded correctly
29282928
// MWAX 512T (Phase 4(!))
2929-
let n_ants: usize= 512;
2930-
2929+
let n_ants: usize = 512;
2930+
29312931
for ant1 in 1..=n_ants {
29322932
for ant2 in ant1..=n_ants {
29332933
let bl = encode_uvfits_baseline(ant1, ant2);
2934-
let (a1,a2) = decode_uvfits_baseline(bl);
2934+
let (a1, a2) = decode_uvfits_baseline(bl);
29352935
assert_eq!(a1, ant1);
29362936
assert_eq!(a2, ant2);
29372937
}
29382938
}
2939-
}
2939+
}

0 commit comments

Comments
 (0)