Releases: MWATelescope/mwalib
Releases · MWATelescope/mwalib
mwalib 1.8.2
1.8.2 12-Nov-2024
- Revert to published version of pyo3-stub-gen (and derive) to allow publish to crates.io.
Full Changelog: v1.8.1...v1.8.2
mwalib 1.8.1
1.8.1 12-Nov-2024
- Ensure only one version of pyo3-stub-gen-derive is used in the project.
Full Changelog: v1.8.0...v1.8.1
mwalib 1.8.0
1.8.0 11-Nov-2024
- mwalib now will detect and raise an error (
MwalibError::Fits.CfitsioIsNotReentrant
) if the CFITSIO library that mwalib is linked with has been built without the-D_REENTRANT
directive (github issue #82). - Expose the FITS BSCALE in image HDUs as a single value
bscale
inCorrelatorContext
(github issue #85).- For most Legacy MWA observations, this may be a value other than 1.0. For MWAX correlator this will always be 1.0.
- This is mainly of interest to EoR researchers who are trying to implement Van Vleck corrections.
- Python type stubs:
- Fixed pyo3 decorators to allow stub_gen to work properly / generate python stubs correctly.
- Used prerelease version of pyo3_stub_gen to ensure Chrono::FixedTimeOffset can have a stub generated in
MetafitsContext
.
Full Changelog: v1.7.2...v1.8.0
mwalib 1.7.2
1.7.2 8-Nov-2024
- Update to fitsio 0.21.6 - provides FitsFile.file_path() method.
- Reverted MWAFitsFile to FitsFile as the subclass is no longer required.
Full Changelog: v1.7.1...v1.7.2
mwalib 1.7.1
NOTE this release has been yanked. The MWAFitsFile changes are reverted in the latest release. Please use version >=1.7.2
Full Changelog: v1.7.0...v1.7.1
mwalib 1.7.0
NOTE this release has been yanked. The MWAFitsFile changes are reverted in the latest release. Please use version >=1.7.2
1.7.0 23-Oct-2024
- Bumped MSRV to 1.65.
- Update fitsio to 0.21 and fitsio-sys to 0.5. To make v0.21 work, a new struct, MWAFitsFile is used inplace of FitsFile, as FitsFile no longer carries the
filename
property which is needed by mwalib. - Removed Rust Report Card from README status badges. Looks like this service is abandonded.
- Added Python .pyi stub generation to provide mwalib Python users with type and docstring information. The mwalib.pyi should get baked into the python wheels released to github and Pypi. See
bin/README.md
for caveats and more details. - Added CI to test compilation against cfitsio 3.x and 4.x when not using the
cfitsio-static
feature.
Full Changelog: v1.6.0...v1.7.0
mwalib 1.6.0
1.6.0 18-Oct-2024
- Updated ndarray to 0.16
- Upgraded dependencies: clap to 0.4, pyo3 to 0.21
- Updated CI to use maturin actions for python wheel building
- Fixed test that was failing under Arm64
- Removed Python 3.8 support as it is now end of life
- Added tests for Python 3.13
- Removed tests for macos-12 as it will be unsupported by github actions by end of 2024
- Added tests for macos-15
Full Changelog: v1.5.0...v1.6.0
mwalib 1.5.0
1.5.0 20-Aug-2024
- Fixed potential bug with various flavours of metafits files because mwalib was making assumptions about the HDU index/position of each HDU. mwalib now uses HDU names to correctly identify the presence of, and read from, metafits files.
- Moved FITS table reading functions from rf_input to fits_read module. This changes some error types from RfInputError to FitsError.
- Added best calibration info to the output when you display a MetafitsContext or via the C function mwalib_metafits_context_display.
- Added signal chain correction table data to the MetafitsContext.
- The RFInput struct will expose a signal_chain_corrections_index which will be the index into the signal_chain_corrections vector or None.
- via FFI, a None for RfInput.signal_chain_corrections_index is translated as the constant MAX_RECEIVER_CHANNELS.
Full Changelog: v1.4.0...v1.5.0
mwalib 1.4.0
1.4.0 24-Jul-2024
- mwalib now exposes the calibration solution information in a metafits file (if present). When the metafits is generated by a call to the webservice, the metafits file will attempt to populate calibration solution information for the specified observation. The newest produced calibration solution from a calibrator with the same frequency channels and proximity in time will be added to the CALIBDATA hdu which is exposed by mwalib in the structs and attributes below. see: Metafits files Wiki article for more information about metafits files.
RfInput
struct now contains the following new fields. If calibration solution information is not present in the metafits they will beNone
.calib_delay
- Calibration delay in meterscalib_gains
- Calibration gains vector: 1 f32 per coarse channel. Channels are inMetafitsContext.course_chans
order.
- When calibration solution information is present, some values of
calib_delay
andcalib_gains
may be NaN. Make sure you understand how NaNs work in Rust if you will be using these columns! - Via C, if the calibration solution information is not present, the values will be NaN (or an array of NaNs in the case of
calib_gains
): MetafitsContext
struct now contains the following new fields.best_cal_fit_id
- Best calibration fit ID. If not present in the metafits it will beNone
; via C, the value will be 0.best_cal_obs_id
- Best calibration observation ID. If not present in the metafits it will beNone
; via C, the value will be 0.best_cal_code_ver
- Best calibration fit code version. If not present in the metafits it will beNone
; via C, the value will be an empty string.best_cal_fit_timestamp
- Best calibration fit timestamp. If not present in the metafits it will beNone
; via C, the value will be an empty string.best_cal_creator
- Best calibration fit creator. If not present in the metafits it will beNone
; via C, the value will be an empty string.best_cal_fit_iters
- Best calibration fit iterations. If not present in the metafits it will beNone
; via C, the value will be 0.best_cal_fit_iter_limit
- Best calibration fit iteration limit. If not present in the metafits it will beNone
; via C, the value will be 0.
- When populating
RfInput::has_whitening_filter
, mwalib will use the Whitening_Filter key/value if present in the metafits, instead of deducing it fromcable_flavour
. If whitening_filter is not present, the existing deduction logic will be used. MetafitsContext::deripple_applied
- modified mwalib to use DERIPPLE metafits key (it still supports DR_FLAG just in case it is an old metafits)- When using the
Display
trait ofMetafitsContext
or the C functionmwalib_metafits_context_display
, limit the printing of fine channels - for better readability. - Added simple Rust example "mwalib-print-context" which does what it says on the tin.
PR(s)
Full Changelog of commits: v1.3.3...v1.4.0
mwalib 1.3.3
1.3.3 10-May-2024
- Bumped MSRV to 1.64
- Updates dependencies
- Fixed some clippy lints
Full Changelog of commits: v1.3.2...v1.3.3